Heat the oil in a big frying pan on medium heat and sweat off the onion for 5 minutes.
Remove the onions from the pan, turn up the heat and add the beef, break up and brown for 5 minutes.
Add the onions back to the pan with the beef stock, tomato puree and Worcestershire sauce. Stir and bring to a simmer, cover and cook for 40 mins. I used my Le Creuset pan for this whole process.
Boil your potatoes until soft, and ready to be mashed.
Remove from the heat and drain your potatoes. Mash with the butter and milk. Add in the spring onions and season with the salt and pepper mixing all in to smooth creamy mash.
Preheat the oven to 180°C/170°C fan /350°F/Gas Mark 4.
Transfer your beef to a pyrex dish or any oven proof dish, taste and season with salt and pepper. Top the meat with the mash and smooth over with a fork.
Cook for about 25-30 minutes depending on your oven, ideally the mash should have slightly browning on top.
Take out of the oven and serve.