Preheat the oven to 160C/320F/Gas Mark 3.
Heat the oil in a large casserole dish over a medium-high heat.
Add the onion, fennel and a pinch of salt; fry gently for 5 minutes until soft, then add the garlic and fry for 5 minutes more.
Add the dates and harissa and fry for another 1 minute, then tip in the tomatoes, breaking up any large pieces, and the stock.
Bring to a simmer, then add the lamb to the pan.
Cover with a lid and place the casserole dish in the oven for 1 hour.
Uncover and cook for 45 minutes more, then stir in the beans and cook uncovered for a final 45 minutes, ensuring all of the meat is fully cooked and fork soft/tender.
Stand for 15 minutes allowing to cool slightly.
Served best the next day.