Skip to content

Build1 publisher3 min readPublished

The summarizer kept 3,000 tokens of failed diff. It dropped eleven words from turn 12

A dev.to account of a four-hour agent run shows compaction preserving an abandoned fix in full and losing the operator's correction. The long-context benchmarks in the same post say a bigger window would not have saved it.

The Engineer · Build desk

Illustration accompanying The summarizer kept 3,000 tokens of failed diff. It dropped eleven words from turn 12

What happened

  • After four hours the agent opened migrations/0014_add_index.sql for a third time, decided the index was missing, wrote it, ran the test and failed again.
  • The summarizer fired around turn 90 and its clean paragraph of accomplishments dropped the eleven-word turn-12 instruction that the index existed and the test was wrong.
  • On NoLiMa, where question and answer share almost no literal vocabulary, 10 of 12 models scored below half their own short-context baseline at 32,000 tokens.

Compiled by The EngineerSomething wrong?How this is made

Why it matters

  • constraint A larger window moves the degradation point without changing which tokens survive compaction, and the Chroma figure puts that point at a quarter of the advertised 200K.
  • decision Anyone running a summarizer has to decide explicitly whether operator instructions sit in the same eviction class as tool output, because token count alone will not favour eleven words.
  • exposure Teams that spent eval cycles maximizing semantic similarity in retrieval are the most exposed, given Chroma's finding that similar distractors cost more accuracy than random filler.
  • cost A dropped instruction is paid for twice: once in the tokens of the failed attempt still held in context, again in the turns spent re-fixing a file that was already fixed.

The turn-12 correction was a fact about the test suite: the index exists, the test is wrong [4]. The summarizer dropped it. The post describes the summary the agent got instead as immaculate, a clean paragraph about everything the agent had accomplished [3]. The agent then reopened the file for a third time [2].

In the writer's own runs, dumped at hour three and sorted by where each token came from, operator instruction is 6% of context, against 11% for retrieved source material and 8% for system prompt and tools; transcript is the remaining three quarters [10]. Transcript outweighs the instruction by about 12.5 to one [1]. Some of that transcript is not information at any density, including a 40,000-token npm test dump whose real failure sits on line 12 [11].

Every degradation number in the post is a measurement of somebody else's workload. Chroma's Context Rot report, dated July 14, 2025, ran 18 models including GPT-4.1, Claude 4, Gemini 2.5 and Qwen3, and found meaningful degradation at 50K tokens inside a 200K window, a quarter of the advertised size [8][3]. That figure carries over to an agent loop if your prompt at hour three is 50K tokens of mostly transcript. NoLiMa is the stricter test, because the question and the answer share almost no literal vocabulary, so string matching cannot rescue the model. At 32K tokens, 10 of 12 models scored below half their own short-context baseline. GPT-4o fell from 99.3% to 69.7%, about 70% of its own figure [12][13][2]. For that to apply to your agent, the lookup it needs has to be an inference; where the transcript repeats the filename verbatim, literal overlap is high and NoLiMa's setup is harder than the real task.

RULER, from NVIDIA in 2024, tested 17 long-context models across 13 tasks and found that near-perfect needle-in-a-haystack scores collapse once the task becomes multi-hop tracing or aggregation [9]. Asking whether a file has already been fixed is aggregation over a transcript.

Position is a separate variable. Liu et al. measured GPT-3.5-Turbo at 75.8% with the relevant document at the start of the context and 53.8% with it in the middle, below the 56.1% it managed closed-book, a deficit of 2.3 points against handing it no documents at all [14][4].

Anthropic's context engineering guidance, as the post quotes it, calls context "a finite resource with diminishing marginal returns" and says models have "an attention budget that gets stretched thin as you spend it" [16]. Attention creates n squared pairwise relationships for n tokens [15].

The retrieval finding is the expensive one. Chroma found that performance degrades faster when the needle and the question are semantically similar, and that even a single distractor measurably lowers accuracy [18]; five near-duplicate documents from a well-tuned retriever can do more damage than one returning junk [17]. The post says its worst agent runs were the ones with the best retrieval [22]. Of the similarity-maximizing layer built with several weeks of eval work, the writer wrote: "I had built a machine for manufacturing confusable distractors" [19].

The token split is self-reported, approximate, and from one person's sessions [10]. It still names the rule worth writing down: whether eleven words that constrain the task compete on token count with a diff the agent has already abandoned. In the run the post describes, the eleven words lost to 3,000 tokens [4][5].

What to watch

  • A Context Rot style run on real agent transcripts instead of needle tasks would test whether the 50K degradation point holds for tool output and stack traces.
  • A token-provenance audit published by a second team, since the 8/6/11 split is one operator's own sessions.
  • Whether agent frameworks expose a retention class that keeps operator instructions out of the summarizer's reach.
Loading claim ledger
Loading source directory links
Loading share composer
Loading topic controls
Loading related stories