Preheat the oven to 200°C (180°C fan / Gas Mark 6). Place a baking tray in the oven to heat up — this ensures the base of the pie cooks through and the pastry does not go soggy.
Make the pastry: Mix the flour and salt in a large bowl. Add the chilled, cubed butter and, using your fingertips, rub the fat into the flour until the mixture resembles fine breadcrumbs. Gradually add the cold water, stirring it in with a palette knife. When the dough starts to come together, knead it briefly until it forms a smooth ball. Wrap in cling film and let it rest in the fridge for 20 minutes.
Cook the aromatics: Heat the olive oil in a large saucepan over a medium heat. Add the finely chopped onion and cook gently for 4–6 minutes until softened. Stir in the crushed garlic and cook for a further minute.
Brown the beef: Increase the heat slightly and add the minced beef. Cook for 5–6 minutes, breaking up the meat with a wooden spoon, until browned all over with no pink remaining.
Build the gravy: Stir in the 2 tablespoons of plain flour and cook for a couple of minutes to remove the raw flour taste. Pour in the beef stock, then add the tomato purée, HP brown sauce, Worcestershire sauce, and the cubed potatoes.
Simmer and cool: Stir well and simmer gently for 10 minutes until the sauce has slightly thickened and potatoes have begun to soften. Season generously with salt and pepper, stir in the fresh parsley, and remove from the heat. Leave the filling to cool completely before assembling the pie.
Assemble the pie: Lightly flour a work surface. Divide the pastry in two, roll out one half, and use it to line a 35cm x 25cm pie dish or roasting tin. Spoon the completely cooled meat and potato filling into the pastry case.
Top and seal: Roll out the remaining pastry to create the lid. Place it on top, pressing the edges together firmly to seal. Trim any excess pastry, crimp the edges with a fork, and brush the top generously with the egg and milk glaze. Make two small slits in the centre to allow steam to escape.
Bake: Place the pie dish onto the preheated baking tray in the oven. Bake for 35–40 minutes until the pastry is crisp and deeply golden. Let it rest for 5-10 minutes before slicing. Serve with buttery greens and extra gravy.