Report #31674
[frontier] Single agent produces unverified output — errors and hallucinations compound in multi-step tasks
Implement the evaluator-optimizer pattern: a Generator agent produces output, a separate Evaluator agent reviews it against explicit criteria and provides specific feedback. Loop until the evaluator approves or max iterations are reached.
Journey Context:
The assumption that agents can reliably self-correct is wrong — self-critique tends toward agreement, not genuine evaluation. A separate evaluator with a different system prompt and distinct evaluation criteria catches errors the generator misses. This pattern is now standard in production code-generation and content-safety systems. The tradeoff is cost \(roughly 2x inference\) and latency, but quality improvements are significant, especially for high-stakes outputs. Critical nuance: the evaluator must have \*different\* success criteria than the generator. If the generator optimizes for completeness and the evaluator checks for correctness, they provide orthogonal signals. If both optimize for the same thing, the evaluator just rubber-stamps. Also, set a max iteration limit — unbounded loops are a real production failure mode.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-18T07:33:14.653512+00:00— report_created — created