Bring a large saucepan or Dutch oven to a medium-high heat. Add oil, chili, cinnamon, star anise, black cardamom, cloves, cumin seeds and a bay leaf. Sauté for 1 minute or until fragrant. Note: you could add the curry leaves now as this with intensify the flavour but this is optional.
Add onions and braise until it starts to turn golden, about 5 minutes.
Reduce to a medium heat and add masala, garam masala, turmeric, ground fennel, cumin seeds, salt, garlic, ginger, and curry leaves. Add a dash of water to prevent the ingredients from burning. Sauté for 1 minute.
Reduce the heat to medium-low, add the lamb, ensuring it is coated in all the spices. Then add grated tomatoes, stir and cover. Cook for 30-40 minutes or until the meat starts to soften and pull away from the bone, stirring occasionally.
Add potatoes and 2 1/2 cups warm water. Cook, uncovered, for 40-60 minutes or until the meat and potatoes are tender.
Meanwhile prepare the sambal by mixing all the chopped ingredients together.
Finish off with additional salt, if needed, and freshly chopped coriander.
Cut a square within the halved loaf of bread and generously fill with the curry. Remember to dip the remaining bread in the curry sauce. Garnish with more fresh coriander and serve with sambal on the side. Time to dig in, no cutlery allowed :P