Peel and chop the potatoes. Cover them with cold water, season generously with salt and then bring it to the boil. Simmer until tender, then drain them and leave to steam dry.
Mash the potatoes, then add the butter and milk then stir until it’s smooth. Taste for seasoning. Stir in the mustard then generously season, mashing a little more if needed and set aside
Preheat the oven to 200C (fan).
Meanwhile, heat the oil in the pan and fry the sausages until they are browned all over and cooked all the way through. Remove from pan and place in a deep oven dish.
In the same pan, add the butter and heat on a medium heat until the butter has melted, add the sliced onions and cook until they start to caramelise, around 5-10 minutes.
Add the garlic and cook for a minute, then sprinkle in the flour. Stir well and cook for a further minute.
Pour in the beef stock, then bring it to the boil, stirring often, until it starts to thicken.
Add the tomato puree, Worcestershire sauce, thyme, bay leaves and marmite and then taste for seasoning. Pour the onion gravy over the sausages.
Spoon the mash over the top of the sausages, then smooth it over. Scatter the cheese over the top, then bake for 25-30mins it until it’s golden and bubbling.
Serve with extra gravy and some vegetables.