Place a heavy-bottomed frying pan over a medium-high heat. Season the lamb all over, then place in the pan and caramelise on all sides. Meanwhile, bring the chicken stock to the boil in a separate pan.
When the lamb is nicely browned all over, transfer it to a large oven dish and pour the stock in over the top. Roast in the oven for 3 hours until the meat is falling off the bone, then remove from the oven and turn the heat up to 180°C/gas mark 4.
Meanwhile, prepare the base and the potatoes. Place the potatoes into a saucepan and cover with cold water. Bring to the boil and simmer until the potatoes are just tender, then drain the potatoes and leave to cool.
Cut the potatoes into 3mm slices. Melt the butter gently in another saucepan, then pour over the potatoes and stir gently to coat the slices in melted butter.
Cut the aubergine into wedges and fry on all sides in a dash of oil in a hot pan. When the aubergine slices are nicely caramelised, remove from the heat and reserve for later.
Finely slice the red onions and garlic and sweat in a large saucepan with a splash of oil over a medium heat. Stir in the preserved lemon, rosemary and paprika and cook for another minute. Add the white wine and reduce by two-thirds, then add the tinned plum tomatoes and the leftover stock from the lamb. Reduce the sauce until it's a nice thick consistency – you don't want it to be too wet.
Once the lamb is cool enough to handle, remove the bone and roughly shred into chunks. Add the meat to the tomato base and check for seasoning.
Pour the tomato and lamb into an ovenproof dish along with the aubergine wedges. Arrange the potato slices neatly over the top of the hotpot and season with salt and pepper.
Bake the hotpot for 1 hour, turning the dish around after half an hour to get a nice even colour on the potatoes.
Pulled lamb, reserved lemon, aubergine and tomato hotpot By Emily Watkins