Season the beef cubes generously with salt and pepper, then toss with flour until lightly coated.
Heat olive oil in a large Dutch oven or heavy-bottomed pot over medium-high heat until shimmering. Working in batches, sear the beef for 2-3 minutes per side until deep brown. Transfer to a plate and set aside.
Reduce heat to medium and add onions to the same pot, scraping up the flavorful brown bits from the bottom. Cook for 3-4 minutes until translucent, then add garlic and cook for 30 seconds until fragrant.
Add celery and carrots, cooking for another 5 minutes until they begin to soften.
Add tomato paste and cook, stirring constantly for 1 minute to caramelize. Pour in the red wine, scraping the bottom of the pot to release any remaining browned bits. Let the wine reduce by half (about 3-4 minutes).
Add beef broth, Worcestershire sauce, bay leaves, thyme, and rosemary.
Return the beef to the pot along with any accumulated juices. Add the potatoes and mushrooms, ensuring everything is submerged.
Bring to a boil, then reduce heat to maintain a gentle simmer. Cover and cook for 1.5-2 hours, stirring occasionally, until the beef is fork-tender.
In the last 10 minutes of cooking, stir in the frozen peas. Taste and adjust seasoning if needed.
Remove bay leaves, garnish with fresh parsley, and serve piping hot in warmed bowls.