01 - Whisk flour and salt in a large bowl. Cut in cold butter using a pastry blender until the mixture resembles coarse crumbs. Gradually add ice water, mixing until the dough just comes together. Divide in half, form into disks, wrap in plastic, and refrigerate for at least 1 hour.
02 - Season the beef cubes generously with salt and pepper. Heat olive oil in a Dutch oven over medium-high heat. Sear the beef in batches to ensure proper browning on all sides, then remove and set aside.
03 - Add the onion, garlic, carrots, and celery to the same pot. Cook over medium heat, stirring occasionally, until the vegetables are softened, about 5-7 minutes.
04 - Stir in the tomato paste and cook for 1 minute to deepen the flavor. Sprinkle the flour over the vegetables and cook for another minute, stirring constantly to cook out the raw flour taste.
05 - Return the browned beef to the pot. Pour in the beef broth, red wine, and Worcestershire sauce. Add the thyme and bay leaf. Bring the mixture to a boil, then reduce heat to low, cover, and simmer for 1 hour or until the beef is tender.
06 - Stir in the frozen peas and cook for an additional 5 minutes. Remove the bay leaf and discard. Allow the filling to cool completely to room temperature to prevent a soggy bottom crust during baking.
07 - Preheat the oven to 400°F. On a floured surface, roll out one pastry disk and fit it into a 9-inch pie dish, trimming the excess overhang. Spoon the cooled beef filling into the crust.
08 - Roll out the second pastry disk and drape it over the filling. Trim the edges, seal the top and bottom crusts together, and crimp the edges. Cut several slits in the top crust to vent steam. Brush the surface with the beaten egg.
09 - Place the pie on a baking sheet to catch drips. Bake for 40-45 minutes, or until the crust is golden brown and the filling is bubbling. Allow the pie to stand for 15 minutes before slicing.