S5.1.1 Task 5.1

Turns 1-10: 96% Accuracy. Turns 31+: 58%. No Persistent Facts Block.

A research system’s coordinator accuracy declines steadily as conversations lengthen: 96% in the first 10 turns, 88% by turn 20, 71% by turn 30, 58% past turn 31. The system uses progressive summarization but no persistent facts block. Findings from early sub-agents are lost as later responses push them into summarized history.

The fix is architectural: a persistent Case Facts block placed in a fixed position in every prompt, outside the summarizable conversation history. This section holds critical values — amounts, dates, IDs, constraints, decisions — and survives context compression regardless of conversation length.

The Case Facts Pattern

=== CASE FACTS (DO NOT SUMMARIZE) ===
Customer: Jane Smith (CUS-2024-0312)
Order: #ORD-2024-0819, $127.50
Issue: Defective product, return requested
Deadline: 48-hour resolution (by Mar 31)
Constraints: Premium tier, expedited processing
Status: Awaiting return label generation
=========================================

The block is:

  • Fixed position — always at the same location in the prompt (beginning or system message), in a high-attention region
  • Protected — marked to survive summarization
  • Updated — as the conversation progresses, new facts are extracted and added
  • Structured — named fields, not narrative prose

Multi-Issue Tracking

Single-issue cases: 94% resolution. 4+ issue cases: 52% — with 41% of customers reporting “agent lost track entirely.”

The basic Case Facts block preserves identity and order info but does not distinguish between issues. The extension: a structured Issue Tracker.

=== ISSUE TRACKER ===
Issue 1: Defective headphones - RESOLVED (refund processed $49.99)
Issue 2: Missing charging cable - PENDING (replacement shipping)
Issue 3: Warranty registration failed - IN PROGRESS (tech team notified)
=====================

Each issue has its own status, resolution, and pending actions. The agent can scan this block to know exactly where each issue stands without reconstructing the history from summarized conversation turns.

Scratchpad Pattern for Long Sessions

A Claude Code session performing 40+ tool calls in a refactoring starts making changes that conflict with earlier decisions — renaming a function it already renamed. The conversation context has been compressed, and the earlier decision is lost.

A scratchpad file acts as a persistent facts store:

# Session Decisions
- Renamed getUserById → fetchUserProfile (auth/users.ts)
- Interface IUser → UserProfile (shared/types.ts)
- CONSTRAINT: Do NOT modify /auth/* (rewrite in progress by Team B)

The agent writes decisions and constraints to the file and reads it when needed. Unlike conversation history, the scratchpad is not subject to context compression.

Two-tier scratchpad for 200+ file migrations: When the scratchpad grows to 4,000+ tokens (15% of context budget), split into:

  1. Active Constraints (~500-1,000 tokens, always in prompt) — interface changes, naming conventions, cross-file dependencies still in effect
  2. Completed Decisions (file, read on demand) — historical decisions the agent references only when working on related files

Sub-Agent Structured Output

Sub-agents returning 3,000-token narratives fill the coordinator’s context after 4 responses. Structured outputs (~500 tokens) with key claims, citations, and confidence scores enable 10+ sub-agent responses within the same budget.

The persistent Research Synthesis block categorizes findings as:

  • Confirmed — supported by multiple sources
  • Contested — conflicting claims from different sources
  • Gaps — identified but unresearched areas

This gives the coordinator explicit awareness of finding reliability — not just what was found, but how trustworthy each finding is.

Pipeline Status for Multi-Agent Pipelines

For 100+ document processing with OCR → NLP → Validation stages, a Pipeline Status block tracks each document’s stage, results summary, and errors. Sub-agents return structured status updates; the coordinator maintains the unified view.

What Does Not Work

“Remember all details” instructions. Cannot override the summarization system. Summarization operates on conversation history at the system level — prompt instructions do not prevent compression.

Larger context windows. Delay the problem but introduce the lost-in-the-middle effect. Early requirements get buried in the center of a growing context where attention is weakest. The Case Facts block places critical information in a fixed, high-attention position regardless of context size.

Session splitting. Fragments context at segment boundaries. Passing only “final output” between segments discards reasoning, constraints, and intermediate decisions. A persistent scratchpad provides continuous awareness without fragmentation.


One-liner: Extract critical values into a persistent Case Facts block in a fixed prompt position — it survives context compression, prevents the 96% → 58% accuracy decline, and eliminates the #1 customer complaint of repeating information.