Pour the oil into an ovenproof casserole dish large enough to fit the shanks. Brown the lamb over a medium/high heat for 5-10 minutes. Remove the lamb and set aside.
Add the onion and carrot to the casserole and cook for 8-10 mins, or until starting to brown. Stir in the herbs and garlic and cook for 1 minute. Add the flour and tomato purée, season well then pour over the wine and stock. Return the lamb shanks to the pan. Bring to a simmer, cover with a lid and place in the oven for 1½-2 hrs, or until lamb is meltingly tender.
Remove the lamb from the sauce and set aside. Put pan back on the heat and bubble it down for about 15 mins until thickened slightly, remove the herbs and set aside.
Using 2 forks, take the lamb off the bone and pull apart into bite-sized pieces. Mix with enough sauce to generously coat the lamb and set aside.
Unroll the pastry and cut out 2 x 15cm/6" disc and 2 x 10cm/ 4" discs from each sheet.
Divide the cooled lamb mixture between the four larger pastry discs and spread over pastry leaving a 1-1.5cm border. Brush the border with beaten egg and place the smaller pastry discs on top of the filling. Bring up the sides of the base pastry to just cover the smaller pastry rims. Pinch the base pastry to seal and press gently onto 'lids'. Brush with beaten egg, make a small hole in the top of each lid, place on a lined baking sheet and bake for approximately 18-20 minutes, or until golden brown. Heat the remaining sauce and serve on the side.