Pre-cook the lentils: Add lentils to a pot and cover with water by about 2 inches. Bring to a boil, reduce to a simmer, and cook until tender but not mushy, 18–22 minutes.
Drain and set aside.
Boil the potatoes: Place potatoes in a large pot, cover with cold water, and add a generous pinch of salt. Bring to a boil, then simmer until very tender, 12–15 minutes. Drain well.
Make the mash: Return potatoes to the pot.
Add vegan butter, most of the plant milk, and olive oil if using. Mash until smooth and creamy, adding more milk as needed. Season with salt and pepper.
Stir in nutritional yeast if using. Set aside.
Sauté the aromatics: Heat olive oil in a large skillet over medium heat. Add onion, carrots, and celery.
Cook, stirring, until softened and lightly golden, 7–9 minutes. Add mushrooms and cook until their moisture evaporates, 4–5 minutes. Stir in garlic and cook 30 seconds.
Build the flavor base: Stir in tomato paste and cook 1 minute to caramelize.
Add soy sauce, thyme, rosemary, smoked paprika, and black pepper. Mix well.
Add lentils and broth: Stir in the cooked lentils and vegetable broth. Bring to a gentle simmer and cook 3–5 minutes to meld flavors.
Taste and adjust salt.
Thicken the filling: Stir in the cornstarch slurry. Simmer 1–2 minutes until the sauce thickens to a rich gravy. If too thick, splash in more broth.
Fold in frozen peas and remove from heat.
Assemble: Preheat oven to 400°F (200°C). Spread the lentil mixture in a 9x13-inch baking dish (or similar). Top with dollops of mashed potatoes, then smooth with a spatula.
Use a fork to create ridges for extra crispness. Lightly brush or spray the top with oil.
Bake: Bake 20–25 minutes, until the edges bubble and the top is lightly golden. For deeper browning, broil 1–2 minutes, watching closely.
Rest and serve: Let the pie rest 10 minutes to set.
Sprinkle with parsley and serve warm.