Prep the ingredients: Pat the beef dry with paper towels and season with salt and pepper. Chop the onion, mince the garlic, and cut the veggies into bite-size pieces.
Brown the beef: Heat oil in a large pot or Dutch oven over medium-high.
Sear the beef in batches so it browns, not steams. About 3–4 minutes per side. Transfer browned beef to a plate.
Soften aromatics: Reduce heat to medium.
Add onion and celery with a pinch of salt. Cook 4–5 minutes until softened. Stir in garlic and tomato paste; cook 30 seconds until fragrant.
Build the broth: Return beef and juices to the pot.
Add diced tomatoes, beef broth, Worcestershire (or coconut aminos), thyme, oregano, smoked paprika, bay leaf, and a few grinds of pepper. Stir well.
Simmer the base: Bring to a gentle boil, then reduce to a simmer. Cover partially and cook 35–45 minutes, until beef is tender.
Skim any foam if needed.
Add the vegetables: Stir in cauliflower, green beans, zucchini, and bell pepper (and cabbage if using). Simmer uncovered 12–15 minutes, until vegetables are tender but not mushy.
Finish and balance: Remove bay leaf. Stir in apple cider vinegar or lemon juice.
Taste and adjust salt, pepper, and spices. Add a pinch of red pepper flakes if you like heat.
Serve: Ladle into bowls and garnish with chopped fresh parsley. For extra richness, swirl in a teaspoon of olive oil or a pat of butter.