1Place the potatoes in a pot, cover with cold water, and bring to a boil over medium-high heat. Turn the heat to medium-low, and boil the potatoes until tender, about 25 minutes; drain.
2Stir the vegan mayonnaise, soy milk, olive oil, vegan cream cheese, and salt into the potatoes, and mash with a potato masher until smooth and fluffy. Set the potatoes aside.
3Preheat oven to 400 degrees F (200 degrees C), and spray a 2-quart baking dish with cooking spray.
4Heat the vegetable oil in a large skillet over medium heat, and cook and stir the onion, carrots, celery, frozen peas, and tomato until softened, about 10 minutes. Stir in the Italian seasoning, garlic, and pepper.
5Reduce the heat to medium-low, and crumble the vegetarian ground beef substitute into the skillet with the vegetables. Cook and stir, breaking up the meat substitute, until the mixture is hot, about 5 minutes.
6Spread the vegetarian meat substitute mixture into the bottom of the baking dish, and top with the mashed potatoes, smoothing them into an even layer. Sprinkle the potatoes with the shredded soy cheese.
7Bake in the preheated oven until the cheese is melted and slightly browned and the casserole is hot, about 20 minutes.
Aluminum foil helps keep food moist, ensures it cooks evenly, keeps leftovers fresh, and makes clean-up easy.
Mashed potato layer:
5 russet potatoes, peeled and cut into 1-inch cubes
1/2 cup vegan mayonnaise
1/2 cup soy milk
1/4 cup olive oil
3 tablespoons vegan cream cheese substitute (such as Tofutti ®)