Whisk the flour and salt together in a large bowl.
Add the ghee and rub it into the flour with your fingertips for 3-5 minutes, until a handful holds its shape when squeezed in your fist.
Add the water a little at a time and bring it together into a stiff, firm dough, kneading for only 1-2 minutes. Cover the dough with a damp towel and let it rest for 30 minutes.
Make the filling
Boil the potatoes for 15-20 minutes, until fork-tender. Peel and mash them lightly, leaving some chunks.
Heat 2 tablespoons of oil in a skillet over medium heat. Add the cumin and fennel seeds and cook for about 30 seconds, until they sputter. Add the ginger and green chili and sauté for 1 minute.
Add the potatoes, peas, ground coriander, chili powder, garam masala, amchur, and salt, and mix for 2-3 minutes. Stir in the cilantro and let the filling cool completely.
Shape the samosas
Divide the dough into 6 equal balls. Roll one ball into an 8-inch circle and cut it in half.
Brush the straight edge with water, bring the two corners together, and overlap the edges to form a cone. Press the seam to seal.
Fill the cone with 2-3 tablespoons of filling, leaving room at the top. Brush the open edge with water, pinch a small pleat at the back, and press firmly to seal. Repeat with the remaining dough and filling.
Fry
Heat the oil in a heavy-bottomed pan over medium-low heat. Test it with a small piece of dough, which should rise to the surface slowly.
Add 3-4 samosas and fry on low heat for 5-6 minutes without turning. Raise the heat to medium, turn the samosas, and fry until deep golden brown, 8-10 minutes in total.
Drain on paper towels. Let the oil cool slightly before frying the next batch, and serve hot.
Notes
Dough: Keep the dough stiff and knead it for only 1-2 minutes. Soft dough makes oily samosas, and overworked dough makes a hard crust.
Oil temperature: Blisters on the shell mean the oil is too hot. Start every batch on low heat.
Whole wheat flour: For a whole wheat version, use 1 cup all-purpose flour and 1 cup whole wheat flour (atta).
Vegan: Use neutral oil instead of ghee in the dough.
Air fryer: Preheat to 400°F for 2 minutes. Brush the samosas with oil on all sides and air fry for 12-15 minutes, flipping at 7 minutes.
Oven: Place the samosas on a lined baking sheet, brush or spray lightly with oil, and bake at 400°F (200°C) for 25-30 minutes, flipping halfway, until golden and crisp.
Freezing: Freeze shaped, uncooked samosas in a single layer on a tray until solid, then bag them. Fry straight from frozen, without thawing, at 320-340°F (160-170°C), allowing extra time and frying only a few at a time. Fried samosas can also be frozen once cool.
Reheating: Microwave for about 1 minute, then crisp in a 400°F oven or air fryer for a few minutes.
Make ahead: The filling keeps in the fridge for up to 2 days.