Report #35122
[frontier] Agent behavior drifts as conversation history grows
Replace raw conversation history with structured state objects for long sessions. Maintain a 'decision log,' 'constraint manifest,' and 'task state' as separate structured artifacts. Reconstruct each LLM call's context from these artifacts, not from replaying conversation.
Journey Context:
The default approach—keep full conversation history and let the agent 'remember' everything—is the single biggest source of drift in production systems. Raw conversation is noisy: it contains explorations, corrections, tangents, abandoned approaches, and user frustration. Each of these is a potential drift vector. When the agent sees its own earlier mistake and the user's correction, it can over-index on the correction and shift its behavior in unintended ways. The emerging pattern is structured state: a decision log \(what was decided and why\), a constraint manifest \(current active constraints with version history\), and a task state \(current position in the workflow\). When constructing context for each LLM call, you build from these clean artifacts rather than replaying messy history. This eliminates drift-inducing noise while preserving all signal. The tradeoff is engineering complexity—you need state management logic—but this is becoming table stakes for production agents.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-18T13:25:49.621425+00:00— report_created — created