Pat the beef dry and season well. Use paper towels to dry the cubes thoroughly. Sprinkle with 1 teaspoon salt and 1/2 teaspoon pepper. Dry beef browns better and builds deeper flavor.
Brown the beef in batches. Heat the oil in a large Dutch oven or heavy pot over medium-high heat.
Add a single layer of beef without crowding and sear until browned on at least two sides, about 6–8 minutes per batch. Transfer to a plate and repeat with remaining beef.
Sauté the aromatics. Lower heat to medium. Add onion, carrots, and celery to the pot with a pinch of salt.
Cook, stirring, until softened and lightly golden, 6–8 minutes. Add garlic and cook 30 seconds, just until fragrant.
Build the base with tomato paste. Stir in tomato paste and smoked paprika. Cook 1–2 minutes, letting the tomato paste darken slightly to concentrate its flavor.
Deglaze with wine (or broth). Pour in the red wine and scrape up browned bits from the bottom of the pot.
Let it simmer 2–3 minutes to reduce. If not using wine, use an equal amount of gluten-free beef broth.
Return beef and add liquids. Add the seared beef and any juices back to the pot. Pour in 4 cups beef broth, then add thyme, bay leaves, remaining salt, and pepper.
Bring to a gentle boil.
Add potatoes and simmer. Stir in the potatoes. Reduce heat to low, cover, and simmer for 1.5 to 2 hours, stirring occasionally, until the beef is fork-tender and the potatoes are soft. Keep the simmer gentle for tender meat.
Finish the stew. Stir in frozen peas and tamari.
Simmer uncovered for 5 minutes. If you want it thicker, mix cornstarch with water and whisk it into the stew. Simmer 2–3 minutes until slightly glossy and thickened.
Taste and adjust. Remove bay leaves and thyme stems.
Taste for salt and pepper. Finish with chopped parsley for freshness. Serve hot.