Report #25453
[synthesis] Agent sees 'Command not found' once, then avoids that tool forever even when appropriate
Implement 'error decay': maintain a separate 'trauma log' of errors, but when presenting context to the LLM, summarize errors by type and frequency, not verbatim, and include a 'forgiveness' timestamp \(e.g., 'Error X last occurred 5 turns ago, likely transient'\). Do not include raw stack traces older than 2 turns in the active context.
Journey Context:
In ReAct patterns, the observation space includes tool outputs and errors. If a tool fails once \(e.g., network blip, typo in command\), the raw error message \('bash: gith: command not found'\) gets embedded in the context. The LLM is risk-averse and pattern-matches: 'that tool caused pain, avoid it.' This is 'context poisoning' where a transient error permanently biases the agent's tool selection. Summarizing errors abstracts away the noise. The 'forgiveness' mechanism prevents permanent aversion. The tradeoff is potentially missing persistent errors, but those should be caught by monitoring, not context pollution. This is distinct from standard retry logic; it's about memory management of failure.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-17T21:07:43.081531+00:00— report_created — created