01 - Heat oil in a large Dutch oven over medium-high heat. Season beef with salt and pepper, brown in batches until well seared, then remove and set aside.
02 - Add onion, carrots, and celery to the same pot. Cook for 5 minutes until softened, then stir in garlic and cook for an additional minute.
03 - Stir in tomato paste and cook for 2 minutes. Sprinkle flour over vegetables and stir to coat evenly.
04 - Gradually pour in beef broth and red wine, scraping up browned bits from the bottom. Return the beef to the pot, then add thyme, rosemary, and bay leaves.
05 - Bring mixture to a simmer, cover, and cook on low heat for 1.5 hours until beef is tender and sauce has thickened.
06 - Remove bay leaves, stir in frozen peas, and adjust seasoning with salt and pepper. Allow filling to cool to room temperature.
07 - Combine flour and salt in a bowl. Cut in cold butter until mixture resembles coarse crumbs. Gradually add ice water, mixing lightly until dough forms. Divide into two discs, wrap, and chill for 30 minutes.
08 - Preheat oven to 400°F. Roll out one dough disc to line a 9-inch pie dish. Fill with cooled beef mixture. Roll out second disc to cover pie, trim edges, crimp to seal, cut slits for steam, then brush with beaten egg.
09 - Bake for 35 to 40 minutes until crust is golden brown. Allow to rest slightly before serving.