Does adding self-reflection to an agent make it more reliable?
No, not in ReliabilityBench: the simpler agent held up better. On Gemini 2.0 Flash, a plain ReAct agent passed 97.5% of clean tasks and 90.0% of reworded ones. The same agent with Reflexion, which adds self-reflection after a failure, passed 96.3% and 86.3%.
The gap widened when tools failed, with timeouts, rate limits, and partial responses, three ways a tool call breaks. From no faults to injected faults, ReAct’s consistency score degraded 7.5% and Reflexion’s 10.0%. Of the faults each met, ReAct recovered from 38 of 47 (80.9%) and Reflexion from 35 of 52 (67.3%), and Reflexion spent more extra tool calls per fault, 1.8 against 1.2.
The author’s reading is that reflection may amplify a fault instead of fixing it, likely because its retry logic is more complex. The paper didn’t test that cause. It’s 20 tasks, two runs each, in a single-author preprint, so trust the direction more than the sizes.