Add a drizzle of oil to a large pan over medium-high heat. Add the onion, carrot, mushrooms and garlic and sweat it all down until it softens and starts to lightly colour.
Add the beef and fry until browned all over, breaking it up with your wooden spoon as you go.
Stir in the tomato puree then add the wine. Simmer for a few mins to allow the beef to soak it up, then pour in the beef stock.
Stir in the Worcestershire sauce, gravy granules, thyme and rosemary and bring to a simmer.
Turn the heat to low and simmer for around 20-25 minutes until the gravy is nice and thick. Adjust seasoning if needed then leave to cool for 10-15 mins.
Peel and dice the potatoes in chunks, then add to a large pot of heavily salted cold water. Bring to a boil and cook the potatoes until fork tender.
Drain and give them a shake, then leave them in the colander for 5 minutes to allow moisture to escape (watery potatoes = sloppy mash).
Add the potatoes back to the pot and mash with the butter, cream/milk, cheese, nutmeg and salt & pepper.
Preheat the oven to 190C/375F.
Slice 12x 10cm/4" circles from the pastry. Grease the tin holes then place in the pastry, ensuring you gently press it against the tin, creating 12 'cups'.
Spoon in the filling then top with the mash.
Bake in the oven for 25-30 minutes, or until the mash is golden and crisp with the filling starting to leak around the edges.
The pastry should also be deep golden and crisp.
Rest for 5 mins then carefully scoop them out and enjoy!
