Add potato chunks to a large pot of salted water and bring to a boil. Cook until knife tender, then drain in a colander and sit to steam dry until needed.
Meanwhile, in a large pan over medium heat add a drizzle of oil and add your sausages. Fry until nice and golden and cooked all the way through. Remove from pan and leave the fat. Slice sausages into chunks of 3-4 when ready.
Add in the onions and keep on a medium heat until they begin to brown. Lower heat and slowly caramelize the onions until they're nice and golden, stirring occasionally so they don't stick to the pan. Season with salt and pepper.
Once soft and golden, melt in 3 tbsp butter and bring heat back up to medium. Stir in 4 tbsp flour until a paste forms. Pour in 1/2cup/125ml red wine and stir until the paste reforms. Very gradually begin adding in 3cups/750ml beef stock, stirring as you go to ensure no lumps form.
Add 2 tbsp Worcestershire sauce, 1/2 tsp thyme and salt & pepper to taste. Allow to simmer until it's nice and thick, then stir in your sausages (that have been diced into 3 or 4 chunks). Pour into your baking dish and allow to rest so a 'skin' forms over top.
Mash your potatoes with 4 tbsp butter and 1/2cup/125ml milk. Stir in your cheese, mustard and seasoning to taste. Dollop by dollop add the mash to the sausages. I recommend working from the outside in and don't push down too hard or the gravy layer will become uneven. Use a fork to rough the top, then place on a baking tray (important because gravy will leak out!)
Pop in the oven at 200C/390F for 20mins, or until nice and golden on top. Allow to rest (important for it to keep shape) then serve up and enjoy!