Pre-heat the oven to 200°C/400°F/Gas mark 6. Heat half of the oil and butter in a heavy-based casserole with a lid over a high heat. When the butter is foaming, tip in about a quarter of the beef and cook for 3-4 minutes. This should then be stirred regularly with a wooden spoon to seal in the flavour. Once this is completed transfer to a bowl with a slotted spoon and set aside. Repeat in batches until all of the meat has been browned, adding extra olive oil and butter as necessary.
Pour a quarter of the Guinness or stout into the casserole and de-glaze with a wooden spoon by scraping the caramelised meat residue from the base. Stir in the tomato puree and mix thoroughly to combine. Return the beef to the casserole with the rest of the Guinness, the stock, bay leaf, thyme, Worcester sauce and season to taste. Bring to the boil, then cover and place in the middle of the oven for 1 hour 45 minutes, stirring every half an hour or so.
Reduce the oven temperature to 180°C/350°F/Gas mark 4. Take the casserole out of the oven and stir in the mushrooms and onions or shallots, then return to the oven without the lid for 45 minutes until the meat and vegetables are completely tender and the liquid has nicely reduced. Place the celeriac and potato mash on warmed plates and ladle over the beef casserole. Garnish with the parsley and have a separate dish of the sprouting broccoli to serve.