Prep the potatoes: Peel if you like, then dice into small, even cubes (about 1/2 inch). Rinse and pat dry so they brown better.
Brown the beef: Heat oil in a large skillet over medium-high.
Add the ground beef, season with salt and pepper, and cook until browned, breaking it up as it cooks. Spoon off excess fat if needed, leaving about a tablespoon.
Sauté aromatics: Add onion and cook until translucent, 3–4 minutes. Stir in garlic and jalapeño or chipotle and cook 30–60 seconds until fragrant.
Add spices: Sprinkle in cumin and oregano.
Toast briefly to bring out flavor. Add the bay leaf.
Build the sauce: Stir in tomato sauce (and tomato paste if using). Add 1/2 cup broth or water to loosen.
Bring to a simmer.
Cook the potatoes: Add diced potatoes (and carrot if using). Stir, cover, and reduce heat to medium-low. Simmer 12–18 minutes, stirring occasionally, until potatoes are tender.
Add a splash more liquid if it looks dry.
Finish with peas: Stir in peas and cook 2–3 minutes more. Taste and adjust salt, pepper, and heat.
Garnish and serve: Remove bay leaf. Stir in chopped cilantro and a squeeze of lime.
Serve with warm tortillas or over rice.