Make the dough. In a bowl, mix flour and salt. Rub in the oil with your fingers until the mixture feels sandy. Add water a little at a time and knead into a firm, smooth dough.
Cover and rest for 20–30 minutes.
Cook the potatoes. Boil diced potatoes in salted water until tender but not mushy, 8–10 minutes. Drain well and let steam-dry for a few minutes.
Sauté the aromatics. Heat 2 tablespoons oil in a pan over medium heat. Add cumin seeds, then onions.
Cook until soft and lightly golden. Stir in garlic, ginger, and green chilies; cook 1 minute.
Spice it up. Add turmeric, ground cumin, ground coriander, chili powder, and salt. Stir for 30 seconds until fragrant.
Add veggies. Tip in peas and carrots; cook 2–3 minutes until tender.
Add the potatoes and gently mash some of them to create a cohesive filling.
Finish the filling. Stir in garam masala, lemon juice, and cilantro. Taste and adjust salt or heat. Let the filling cool completely; a cool filling prevents soggy samosas.
Divide the dough. Roll the rested dough into a log and cut into 6–8 equal pieces.
Keep covered to prevent drying.
Roll and cut. Roll each piece into a ball, then into an oval about 6–7 inches long. Cut the oval in half to make two semi-circles.
Shape the cone. Take one semi-circle. Brush a little water along the straight edge.
Bring the two corners together to form a cone and press to seal.
Fill and seal. Spoon in the cooled filling, leaving space at the top. Brush the inside rim with water and press to seal, pinching firmly. Ensure there are no gaps.
Repeat with remaining dough and filling.
Fry method (crispiest). Heat oil in a deep pot to 325–340°F (165–170°C). Fry samosas in batches on medium heat until golden and crisp, about 8–10 minutes. Don’t rush; slower frying makes flakier crusts.
Bake method (lighter). Preheat oven to 400°F (200°C).
Place samosas on a lined tray, brush or spray with oil, and bake 18–22 minutes, flipping once, until golden.
Air-fry method (quick). Preheat air fryer to 370°F (188°C). Spray samosas with oil and air-fry 12–15 minutes, turning halfway, until crisp and browned.
Serve. Rest 5 minutes, then serve warm with chutneys and lemon wedges.