Finely chop the onion and garlic.
In a large pot heat some oil and cook the lamb pieces for a few minutes until they change colour. Transfer them to a plate.
Add more oil to the pan and gently fry the onion and garlic until soft. Put the lamb back, add the spices and tomato purée then pour over the wine (if used). Cook for a couple of minutes until the jus reduces by half.
Add the carrot (halved), pepper, chilli and chopped tomatoes. Pour in the stock, enough to cover everything well. Season with salt and pepper, add the bay leaf and bring to the boil.
Turn down the heat and gently simmer for about an hour until the lamb is tender, the veggies are soft and the sauce is thick and silky. Add the parsley for the last ten minutes of cooking.
Serve with your chosen side dish.