01 - Preheat oven to 400°F (200°C).
02 - In a large skillet, heat olive oil over medium heat. Add onion, carrot, and celery. Sauté for 6–8 minutes until softened.
03 - Stir in garlic and cook for 1 minute. Add ground beef and cook, breaking it up, until browned.
04 - Mix in tomato paste, Worcestershire sauce, thyme, rosemary, salt, and pepper. Cook for 2 minutes.
05 - Sprinkle flour over the mixture and stir well. Add beef stock, bring to a simmer, and cook for 10 minutes until thickened. Stir in frozen peas, remove from heat.
06 - Boil potatoes in salted water for 15–20 minutes until fork-tender. Drain well.
07 - Mash potatoes with butter and warm milk until smooth. Fold in grated Cheddar until melted. Season with salt and pepper.
08 - Spoon the beef filling into a large baking dish. Spread Cheddar mash evenly on top, creating peaks with a fork.
09 - Bake for 25 minutes, or until top is golden and filling is bubbling. Let rest for 10 minutes before serving.