Boil the peeled and cubed potatoes in a large pot of salted water until tender, approximately 15 minutes. Drain thoroughly.
Mash the potatoes with butter, milk, and half of the salt until smooth and creamy. Set aside.
Preheat the oven to 400°F (200°C).
In a large skillet, heat the olive oil over medium-high heat. Add the diced onions and carrots, sautéing until softened, about 5 minutes.
Add the ground beef to the skillet. Cook, breaking it apart with a spoon, until completely browned. Drain any excess fat.
Stir in the minced garlic and tomato paste, cooking for 1 minute until fragrant.
Sprinkle the flour over the meat mixture and stir continuously for 1 minute.
Pour in the beef broth, Worcestershire sauce, fresh thyme, remaining salt, and black pepper. Simmer for 5 minutes until the sauce thickens.
Stir the frozen peas into the mixture and immediately remove the skillet from the heat.
Transfer the meat filling to a 9x13-inch baking dish, spreading it into an even layer.
Spoon the mashed potatoes over the meat filling and spread them gently to the edges to seal the pie. Drag a fork across the top to create ridges.
Bake uncovered for 20 to 25 minutes, or until the filling is bubbling and the potatoes are golden brown. Let cool for 10 minutes before serving.