Report #74683
[frontier] Single long session causes compounding drift with no recovery mechanism
Segment long tasks into bounded sessions of 15-25 turns each. At session boundaries, extract structured state \(task progress, decisions made, files modified—not raw conversation\) and start a fresh session with the full system prompt plus extracted state. This resets the context window while preserving progress.
Journey Context:
The most reliable way to prevent drift is to never let sessions get long enough for drift to compound. Session segmentation treats context windows like memory: you would not let a process run forever without garbage collection. The critical design choice is what state to carry between sessions: raw conversation history would carry the drift, so you must extract structured state into a clean format. The new session starts with the full system prompt plus this structured state, giving you a 'clean restart' without losing work. People commonly resist this pattern because it adds complexity to the orchestration layer and requires defining a state schema. But teams running agents in production have learned that 50\+ turn sessions are unreliable regardless of other mitigations—the drift is not a bug you can patch but a fundamental property of how attention works over long contexts. The state extraction step also has a hidden benefit: it forces you to define what progress looks like, which makes the agent's work more legible and debuggable. This pattern is being adopted as standard practice by production teams in 2025.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-21T07:57:09.027133+00:00— report_created — created