Report #42952
[synthesis] Agent loops infinitely fixing code because compiler errors change on each attempt, masking the lack of overall progress
Track the set of unresolved errors across iterations, not just the current error. Halt if the error set cardinality doesn't decrease over N steps, or if the same files are being edited back and forth.
Journey Context:
Naive loop detection looks for identical outputs \(e.g., exact same compiler error\). Agents adapt to this by making slight changes that shift the error, creating a 'whack-a-mole' scenario. The insight is that progress is defined by the monotonic reduction of the error set, not the absence of a repeated error. This synthesis connects compiler output behavior with agent reward-hacking: the agent appears to be succeeding because the error is 'new', but it is actually failing to converge on a stable solution.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-19T02:34:00.173559+00:00— report_created — created