Preheat the oven to 400˚F (200˚C).
Pierce each potato several times with a fork. Place them in a large mixing bowl and drizzle with olive oil, tossing to coat. Sprinkle salt on top, then toss again until evenly coated. Transfer the potatoes to a baking sheet, then bake for 45-60 minutes (depending on the size of your potatoes), until a knife inserted into the potato meets no resistance. Set aside until they are cool enough to handle.
Increase the oven heat to broil.
In a medium skillet over medium heat, add butter. Add the onions and carrots and cook for 5-8 minutes, stirring often, until the onion is translucent.
Add in the ground beef and use a spatula to break it into small pieces. Cook until no longer pink, then add in the garlic, tomato paste, Worcestershire sauce, bouillon, thyme, rosemary and salt and pepper and stir until well incorporated.
Stir in the flour and cook for 2 more minutes. Deglaze with the wine, scraping up any bits stuck to the bottom of the pan, and let it simmer for 1 minute before adding in the peas and beef broth. Stir well and bring to a simmer, cooking for 10-12 minutes, until the mixture has thickened slightly. (It should still be saucy, but not soupy.)
Cut each potato in half lengthwise, then scoop out the filling, leaving a ¼-inch border around the edges and bottom of each potato.
Use a ricer (or potato masher) to mash the potato flesh in a medium sized bowl, then stir in the butter, milk, Parmesan and salt until well combined. Transfer the mashed potatoes to a piping bag with a star tip. (If you don't have one, you can just spoon the potatoes right on top of the filling.)
Spoon the ground beef filling into each potato skin, filling to the top.
Pipe mashed potato atop each potato half, then place on the middle rack of your oven. Broil until the potatoes are golden brown on top (ours took between 10-15 minutes, but keep a close eye on them as every oven is different!).