Preheat oven to 325°F (165°C).
Season beef cubes evenly with salt and pepper.
Heat olive oil in a large Dutch oven over medium-high heat.
Sear beef in batches until browned on all sides, approximately 3-4 minutes per side, then remove and set aside.
Reduce heat to medium and add onion, carrots, and celery to the pot; sauté for 6 minutes until softened.
Add garlic and tomato paste, stirring constantly for 2 minutes until the paste turns a deep brick red.
Pour in the red wine to deglaze the pot, scraping the bottom with a wooden spoon to release the fond.
Return the beef and any accumulated juices to the pot.
Add beef stock, rosemary sprigs, and bay leaves; bring to a light simmer.
Cover with a tight-fitting lid and transfer to the oven.
Braise for 2.5 to 3 hours until the beef is fork-tender.
Discard rosemary stems and bay leaves before serving.