Prick the potatoes in a few places with a fork and place them in a large saucepan or Dutch oven filled with enough water to cover them by 1 in [2.5 cm]. Stir in 1 tsp salt. Bring the water to a boil over high heat, lower the heat to maintain a simmer, and cook until the potatoes are fork-tender, about 15 minutes. Don’t overcook the potatoes. Remove, drain, and keep aside to cool. Set the saucepan aside.
While the potatoes cook, in a small saucepan over medium-low heat, whisk the yogurt with ½ cup [120 ml] water. Bring to a simmer. Cook, whisking often, until the liquid reduces by half its volume, 6 to 8 minutes.
Heat a small skillet over medium-high heat. Add the cashews, green cardamom, cloves, cinnamon, black cardamom, star anise, and 1 bay leaf and toast until fragrant, about 1 minute. Stir in the ginger, immediately remove the pan from the heat, and transfer the spices to a high-speed blender or a food processor fitted with a blade attachment. Add the yogurt mixture, onion, garlic, Kashmiri chilli powder, turmeric, and ¼ cup [60 ml] water and blend until silky smooth.
In the large saucepan over medium-low heat, melt the ghee. Add the remaining bay leaf and sauté until fragrant, about 1 minute. Stir in the spice paste mixture and cook over low heat until the mixture thickens, loses most of the water, and the fat separates, 12 to 15 minutes. Stir in 2 cups [480 ml] water, followed by the potatoes and kasoori methi. Bring to a boil, lower the heat to maintain a simmer, and cook partially covered with a lid until the liquid thickens, 25 to 30 minutes. Stir often to prevent scorching. It’s not the end of the world if the potatoes break but be gentle when stirring. Remove from the heat. Taste and season with salt. Serve hot or warm.
Leftovers can be stored in an airtight container in the refrigerator for up to 4 days.