In a dutch oven (or a large oven proof pot) over medium heat, add the mushrooms. No need for oil or anything yet. Don't crowd the pot, so you may need to do the mushrooms in 2 batches.
Cook them down for about 10 - 12 minutes or until they've released most their water and have some good browning on them. Stir occasionally, then set aside and reserve.
Add a little olive oil and the pearl onions if using. Oh and to peel them, I had the best luck by cutting off the top and root, then microwaving them for about 1 minute. Once they are cool enough to handle, the skins should peel off pretty easily.
Cook the pearl onions for about 6 - 8 minutes or until they soften a bit and get some color. Reserve and set aside with the mushrooms.
Add in the vegan butter and let it melt. Then add in the diced onions and carrots. Stirring occasionally, cook those down for about 10 - 12 minutes or until they have softened and the onions get translucent.
Add in the minced garlic and cook for 1 minute. Then add in the tomato paste, nutritional yeast and mushroom seasoning. Stir to combine.
Add in the flour and stir to combine. Cook for 1 minute to get rid of the raw flour flavor.
Next add in the vegan beef or veggie broth and red wine. Stir to combine. Then add in the reserved mushrooms, onions and soy curls. Toss in the thyme and bay leaves. Taste and adjust for seasoning.
Cover the pot with a lid and add it to an oven preheated to 350 F / 175 C for 45 minutes.
Remove the pot, and check the thickness. If it's feeling a little thin, add the cornstarch slurry, stir and cover and return to the oven for 15 more minutes.
Remove from the oven, let it cool for 10 minutes, then serve with mashed potatoes and enjoy!