Your agentic system maintains a long-running customer-support session. On turn 1, the customer mentions they've been a Premium member since 2019 and are calling about a damaged shipment of three items totaling $247. On turn 8, after the agent has gathered order details, looked up policies, and drafted a resolution, the agent proposes a refund of $150 — and confidently states the customer is a Standard member.
The conversation history is intact and the original membership detail is still in the context window.
What's the most likely cause?
Why did you pick that answer? Two or three sentences. The act of articulating it is what builds the judgment — not the click that follows.
This is the lost-in-the-middle effect, a well-documented failure mode where models reliably process the start and end of long inputs but may omit information from the middle. By turn 8, the original membership mention is buried under seven turns of intermediate tool calls and reasoning. The fix is structural: extract critical case facts (membership status, claim amount, key dates) into a persistent case facts block that's re-injected into each prompt at a salient position, rather than relying on the model to retrieve them from buried conversation history.
This sounds technical but is incoherent. The customer told the agent their membership status in turn 1 — no training data is involved in retrieving that fact. Students who pick A are reaching for "the model didn't know" explanations when the actual problem is "the model didn't attend."
There's no indication tools returned wrong data. Restricting tools wouldn't fix attention-position effects. This option captures the instinct to blame the most recently changed component rather than the structural property of long contexts.
Claude doesn't share state across sessions. Within a single session, there's no "other customer" to confuse this one with. This is an attractive distractor for students who imagine LLMs as databases that can leak between queries.