Trim and discard the cauliflower leaves. Turn the cauliflower upside-down on a chopping board and use your knife to carefully cut out the stalk and core, leaving a cavity – the florets should still be holding together.
Bring a large pan of salted water to the boil. Submerge the cauliflower and cook for 7 mins, then remove with two slotted spoons and set aside to steam dry. Add the kale to the pan and cook for a min or so until wilted. Drain, then run under cold water to cool. Squeeze out the excess liquid and roughly chop.
To make a linseed ‘egg’ (this will bind the stuffing together), mix the ground linseed with 3 tbsp water and set aside for 5-10 mins until gluey. Meanwhile, heat 2 tbsp oil in a frying pan, add the onion and a pinch of salt, and cook until softened, then stir in the remaining stuffing ingredients, including the kale, and cook for a min or so more. Remove from the heat and season, then put in a blender with 150ml water and the linseed egg and blitz to a thick purée. Transfer to a piping bag.
Pipe the stuffing mixture into every nook and cranny of the cauliflower, getting in as much of the purée as you can – see our tip below. Transfer to a baking tray lined with parchment. Can be made up to this point in the morning and kept in the fridge.
Heat oven to 200C/180C fan/gas 6. Mix the remaining chestnuts with the breadcrumbs and some seasoning. Spoon the remaining oil all over the cauliflower, then pat on the breadcrumb chestnut mix. Roast for 45 mins until golden brown and tender (place under a hot grill for the last part of cooking time if it needs to crisp-up). Serve with any crisp bits that have fallen onto the baking tray.