Parboil the potatoes: Boil the baby potatoes in salted water for 15 minutes, or until tender. Drain, let them cool until easy to handle, then peel the skins off.
Shallow-fry the potatoes: Heat rapeseed oil in a large saucepan. Add the turmeric and garam masala, stir to bloom the spices, then add the potatoes. Fry until golden, stirring regularly for even color. Remove the potatoes and place on a kitchen towel to absorb any excess oil.
Toast the seeds: In a frying pan, toast the fennel seeds and cumin seeds for 2-3 minutes until fragrant. Grind into a powder (or leave whole if preferred).
Start the gravy: Heat 2 tbsp rapeseed oil in a large saucepan. Add the onion and salt and cook over medium heat until translucent. Add the grated garlic and ginger and cook for 1-2 minutes until fragrant.
Build the sauce: Stir in the chopped tomatoes, chili powder, cardamom, toasted fennel and cumin, and brown sugar. Pour in the water and add the bay leaves. Bring to a boil.
Add yoghurt + potatoes: Stir in the coconut yoghurt, then add the fried potatoes. Simmer over low to medium heat for 25-35 minutes, until the gravy has thickened and the potatoes are tender and coated in sauce.
Finish and serve: Remove from the heat (and fish out the bay leaves if you like). Garnish with fresh coriander and serve hot with naan or rice.