How to Make It
Preheat oven to 425°F.
Cover potatoes with cold water in a large pot. Bring to a boil, reduce to a simmer and cook until tender when pierced with a fork, 20 to 25 minutes. Drain and return to pot. Add warm milk and butter; mash until creamy. Season with 1½ teaspoons of the salt and several grinds pepper.
Heat 1 tablespoon of the oil in a large skillet over medium-high. Add beef and cook undisturbed, until browned on bottom, about 4 minutes. Add ½ teaspoon of the salt. Continue cooking, breaking up pieces with a wooden spoon, until browned all over, about 5 minutes. Using a slotted spoon, transfer beef to a bowl. Wipe out skillet.
Using same skillet, heat 1 tablespoon of the oil over medium-high. Add mushrooms and ½ teaspoon salt; cook undisturbed until golden, about 3 minutes. Add thyme and continue to cook, stirring occasionally, until golden all over, about 2 minutes. Transfer to bowl with beef.
Using same skillet, heat remaining tablespoon oil over medium. Add onion, celery, and garlic; cook until golden, stirring occasionally, 5 to 6 minutes. Return meat and mushroom mixture to skillet and add tomato paste; cook, stirring constantly, about 1 minute. Add stock and remaining ½ teaspoon salt; simmer until slightly thickened, 7 to 8 minutes.
Stir in carrots, peas, and Worcestershire; cook until peas are crisp-tender, 3 to 4 minutes. Transfer mixture to a 9 x 13-inch (or 3-qt) baking dish. Spoon then gently spread mashed potatoes on top.
Set baking dish on a rimmed baking sheet. Bake until filling is bubbling and top is golden in spots, 18 to 22 minutes. Let stand 15 minutes before serving.