For the beef filling: Heat a large skillet over medium heat. Add ground beef, onion, carrot and garlic. Cook for about 8-10 minutes, stirring occasionally, until beef is browned and veggies are soft. Add garlic and cook for one more minute. Add tomato paste, worcestershire, rosemary, salt, pepper, and ketchup. Stir until combined.
Next, add the red wine and chicken stock to the beef mixture. Cook over a low simmer for about 8-10 minutes, stirring occasionally. Most of the sauce should cook down into the beef mixture. When finished, remove from heat.
In the meantime, prep the mashed potatoes: Peel and cube russet potatoes. Place the potatoes in a medium sized saucepan and cover with water. Bring water to a boil and cook potatoes until soft, about 8 minutes. Drain and transfer potatoes to a large bowl.
Preheat oven to 375 degrees.
Using a potato masher, mash the potatoes. Add 1 egg yolk, 1/4 cup parmesan cheese, butter, milk, salt and pepper and mix to combine. Mashed potatoes should be smooth and fluffy.
In an 8x8 baking dish (or any baking dish that is similar in size), pour the ground beef mixture evenly along the bottom. Next, evenly spread mashed potatoes right on top of the beef mixture. Sprinkle with remaining 1/4 cup parmesan cheese.
Bake in the oven for 18-20 minutes or until golden on top.
Let cool for about 5 mins and serve! Enjoy!