Combine kofta onion, chillies, ginger, garlic, salt, spices, and tomato purée in a food processor.
Blend into a smooth paste, add the lamb, and blend again briefly.
Stir in coriander and chill in the refrigerator for at least 1 hour.
Fry sauce onions, garlic, and ginger in ghee for 10 minutes until soft.
Add chilli powder and garam masala and cook for 30 seconds.
Incorporate chopped tomatoes and cook for 4 minutes until softened.
Add tomato purée, salt, sugar, stock, cinnamon, and bay leaves then simmer for 20 minutes.
Roll the chilled lamb mixture into approximately 24 small meatballs.
Remove whole spices from the sauce and blend until smooth using a stick blender.
Stir 200ml of water into the sauce and bring back to a simmer.
Add meatballs to the sauce and cook uncovered for 35 minutes until tender.
Serve meatballs with rice, yogurt, and fresh coriander.