Preheat oven to 400°F. Place mushrooms in a food processor and pulse until evenly ground.
Heat olive oil in a large skillet over medium heat. When hot add onions and mushrooms. Cook, stirring occasionally, until mushrooms have given up moisture and onions are translucent, about 7-10 minutes. Add garlic and cook briefly until fragrant.
While mushrooms are cooking, place ground beef, egg, bread crumbs, Dijon, salt, and pepper in a medium bowl.
When mushroom mixture is done cooking, add to the bowl and mix everything together until evenly combined. Place meat mixture on cutting board and shape into a 12-inch log.
Wrap meatloaf in prosciutto. Try to cover as much of the exterior as possible but don’t worry if some small areas are exposed.
On a floured surface, roll out puff pastry to a 14x14-inch square. Place meatloaf along one edge of the puff pastry. Hold the edge of the puff pastry against the meatloaf and roll to wrap in pastry. Stop rolling when the meatloaf is covered in pastry, avoiding significant overlap.
Use a paring knife to cut off the excess pastry (reserve for decorating, if desired). Pinch the seem closed, wetting fingers as need to help seal the pastry together. Trim excess pastry off the ends of the loaf and pinch seems closed.
Place meatloaf seem-down on a sheet pan. If desired, cut excess pastry into strips or desired shapes and place on top of meatloaf (for a lattice top, cut pastry into 8 roughly 4-inch strips and place strips, overlapping, across the meatloaf, firmly tucking the ends underneath to seal). Poke several holes through the puff pastry with a paring knife.
In a small bowl beat together egg and heavy cream or milk. Brush the top and sides of the meatloaf Wellington with egg wash.
Bake for 30-35 minutes until deeply and evenly golden-brown, and at least 160°F internal temperature.
Allow meatloaf to rest for about 5-10 minutes before slicing. Serve with mashed potatoes or colcannon.