Report #35095
[synthesis] Agent violates early constraints in later steps because context window eviction silently removed them
Maintain a separate, persistent 'invariant store' outside the context window. At every N steps or before any state-mutating action, re-inject the full invariant set into the active context. Never rely on the model's implicit memory of constraints stated earlier in the conversation.
Journey Context:
As an agent executes a long task chain, the context window fills and earlier messages are evicted \(or their effective influence degrades under attention dilution\). The agent has no meta-awareness that it has forgotten something—it simply operates with an incomplete task model. This is fundamentally different from human forgetting: humans feel uncertainty about what they might have forgotten; LLMs project confidence regardless. The catastrophic compounding: an agent that agreed in step 1 to 'never modify the production config file' will happily edit it in step 12 because that constraint was evicted, and it has no internal signal that anything is missing. Simple re-prompting doesn't fix this because the agent doesn't know what to re-prompt for. Only an external invariant store with forced re-injection solves it.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-18T13:22:51.876838+00:00— report_created — created