Place the tomatoes, onion, garlic, and guajillo chiles in a medium-sized saucepan with ½ cup water, and simmer, covered, until the tomatoes start to burst, about 6-8 minutes.
While the tomatoes are cooking, heat the oil in a large pot over medium-high heat, and place the beef cubes inside in a single layer. Don't touch them for 2-3 minutes until nicely browned, then flip and cook on all other sides until brown.
Place the cooked tomatoes, onion, garlic, chiles, chicken bouillon, cilantro, salt, and pepper in the blender, and blend until smooth. Pour over the brown beef and add the bay leaf. Bring to boil, reduce the heat, and simmer, covered, for 30-40 minutes, or until the meat is fork-soft.
Add the cubed potatoes and sliced carrots and simmer until firm-tender, about 8 minutes.
Mix in the mushrooms and cook for 3-5 minutes more until soft. Check the seasoning and add more salt, if needed. Serve with freshly cooked white rice.