Melt the butter in a saucepan over a medium heat and add the diced onion. Cook for 3 to 4 minutes, until softened. Remove from the heat and add the breadcrumbs, lemon zest, chopped herbs and seasoning. Allow to cool fully before using.
Preheat the oven to 200°C/gas mark 6.
Stuff the cavity of the chicken with the cold stuffing, then add half a lemon to keep the stuffing in place and for additional flavour. Place the chicken into a roasting tray. Loosen the skin and gently massage a little extra butter directly onto the breasts under the skin. Season with salt and pepper.
Roast the chicken in the oven for 15 to 20 minutes, then reduce the oven temperature to 170°C/gas mark 3 and cook for 1 hour more, until the juices from the chicken run clear. Remove from the oven and allow to rest for 5 minutes.
Meanwhile, place the carrots on a tray, drizzle with the olive oil and season with salt and pepper. Place in the oven with the chicken and roast for 30 to 40 minutes, until softened. Transfer to a blender or food processor and blitz until smooth. Add the butter, cumin and seasoning and pulse once more to combine. Set aside until needed.
While the chicken is resting, cook the leeks. Melt the butter in a pan over a medium heat, then add the leeks and white wine and season well with salt and pepper. Sauté the leeks, covering with a lid, for 3 to 4 minutes, until just softened.
Carve the chicken and serve with the carrot purée and confi t leeks and a few boiled potatoes if desired.