01 - Place the potato chunks in a large pot and cover with salted water. Bring to a boil and cook until the potatoes are very tender, approximately 15 to 20 minutes. Drain the potatoes thoroughly and return them to the pot. Add milk, butter, salt, and pepper, then mash until smooth and creamy. Cover to keep warm.
02 - While the potatoes are cooking, heat 1 tablespoon of vegetable oil in a large skillet over medium heat. Add the halal sausages and cook, turning occasionally, until they are browned on all sides and cooked through, about 15 to 20 minutes. Transfer the cooked sausages to a plate and keep them warm.
03 - In the same skillet used for the sausages, add 2 tablespoons of butter and 1 tablespoon of vegetable oil. Add the thinly sliced onions and a pinch of salt. Cook over medium-low heat, stirring periodically, until the onions are softened and caramelized to a golden brown, which takes about 10 to 12 minutes.
04 - Sprinkle the all-purpose flour over the sautéed onions and stir well to combine. Cook for 1 to 2 minutes, allowing the flour to fully absorb the fats and cook slightly.
05 - Gradually pour the beef or vegetable stock into the skillet while continuously stirring to prevent lumps. Stir in the Worcestershire sauce and Dijon mustard. Bring the mixture to a simmer and cook for 5 to 7 minutes, stirring frequently, until the gravy achieves a rich, thick consistency. Season with salt and pepper to taste.
06 - Arrange the cooked sausages atop generous portions of the creamy mashed potatoes. Spoon the rich onion gravy generously over the sausages and potatoes, and serve immediately.