Report #31063
[synthesis] Agent forgets constraints from early steps as context fills up — violates architectural decisions made at step 1 by step 12
At the start of any multi-step task, extract hard constraints into a compact charter \(bullet list, under 10 lines\). Re-inject this charter at the top of every major step transition or when context exceeds 60 percent capacity. When the agent must drop context, the charter is the last thing to evict.
Journey Context:
LLM context windows operate as a fixed-size buffer with attention dilution. As new observations, tool outputs, and reasoning accumulate, the earliest entries lose attention weight even before truncation. The agent does not experience 'forgetting' — it simply stops attending to early constraints. This is catastrophic when step 1 established 'use PostgreSQL not SQLite' and step 12 generates SQLite code because the constraint was evicted. Naive solutions like 'use a bigger context window' do not work because attention dilution happens within the window regardless of size. The charter pattern works because it is a compression strategy: instead of hoping the model attends to the original 2000-token specification, you distill it into 100 tokens that are re-injected where attention is highest. The re-injection cadence matters — waiting until context is full is too late.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-18T06:31:33.420088+00:00— report_created — created