[BUG] HEAVY EVICTION TO CONTEXT MANAGEMENT (CLAUDE CODE UNUSABLE)

Resolved 💬 3 comments Opened Apr 26, 2026 by santolmoko-star Closed May 28, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

Hello,
Claude code is unusable for real development task, the SDK (which i believe) always prune / evict context midtask.
i will not try to explain too much.
SUMMARY:
For Real Development Task e.g. Analyze codebase (discover), feature suggestion, bug fixing etc.
LLM Requires Context Chain and Reasoning chain to be effective even in long running task.
Whats Happen: SDK Always PRUNE important context e.g. readed files, important user message (non tool calls) during midtask. So in the End Model will forgot this important context and it will become a destructive ai that can destroy your codebase and hallucinate (what is the current task).

The PRUNING IS HEAVY, even the Latest last 2 message is prune (remove entirely).
THIS IS A JOKE DESIGN ( NO OFFENSE) not a CONTEXT MANAGEMENT.

READ THE example logs:
i have analyzed the request before going to Anthropic API.
SDK is Confirmed doing this Joke context management. makes CLAUDE CODE UNUSABLE FOR REAL TASK,
PLEASE DONT DESIGN CLAUDE CODE FOR SNAKE GAMES AND FLAFFY BIRD CREATION ONLY.
LETS US USE ATLEAST THE 150k CONTEXT BEFORE COMPACTION!!

Note im complaining first here in GITHUB for actionable actions and constructive replies.
i dont want to use X platform to advertise this joke management system.

TAKE NOTE

THIS COMPLAIN IS NOT ABOUT CONTEXT COMPACTION IM FULLY AWARE ITS AROUND 150-155k CONTEXT.
THE ISSUE IS TRIGGERING EVEN IN 50-70-90k range total token context.

What Should Happen?

Prioritize removing Older Message not NEWER, because even NEW MESSAGE RELATED TO CURRENT TASK ARE EVICTED. MUCH BETTER LET USE USE THE full 150K CONTEXT BEFORE COMPACTION.

Error Messages/Logs

============================================================
DUMP vs JSONL ANALYSIS
============================================================
Dump file:  tools/proxy-logs/00044-2026-04-25T13-41-27-639Z.json
Jsonl file: session-dump.jsonl
Dump request URL: /v1/messages?beta=true
Dump body size:   200910 bytes

Wire messages:  73
Jsonl turns:    151
Matched (wire → jsonl): 41
Unmatched wire (no jsonl twin): 32
Evicted from jsonl: 110

Surviving jsonl indices (sorted asc):
  7
  9
  11
  13
  15
  17
  19
  22..23  (2 turns)
  27
  29
  32
  35
  37
  39
  42
  87
  113
  125..137  (13 turns)
  141..150  (10 turns)
  (total in jsonl: 151)

Gaps (evicted ranges):
  [0..6] (7 turns evicted) — head (before first surviving turn)
  [8..8] (1 turns evicted) — middle
  [10..10] (1 turns evicted) — middle
  [12..12] (1 turns evicted) — middle
  [14..14] (1 turns evicted) — middle
  [16..16] (1 turns evicted) — middle
  [18..18] (1 turns evicted) — middle
  [20..21] (2 turns evicted) — middle
  [24..26] (3 turns evicted) — middle
  [28..28] (1 turns evicted) — middle
  [30..31] (2 turns evicted) — middle
  [33..34] (2 turns evicted) — middle
  [36..36] (1 turns evicted) — middle
  [38..38] (1 turns evicted) — middle
  [40..41] (2 turns evicted) — middle
  [43..86] (44 turns evicted) — middle
  [88..112] (25 turns evicted) — middle
  [114..124] (11 turns evicted) — middle
  [138..140] (3 turns evicted) — middle

Wire messages (index, role, blockTypes, bytes, hash, jsonlIdx):
  W  0  user       [text,text,text,text]     6050B  8f63a8b89441  → JEVICTED-MATCH-FAIL
  W  1  assistant  [thinking,text,tool_use]      891B  1a93d9ff5360  → JEVICTED-MATCH-FAIL
  W  2  user       [tool_result]      186B  54aa47f6ddab  → JEVICTED-MATCH-FAIL
  W  3  assistant  [thinking,tool_use]      904B  df37e40ac9b7  → JEVICTED-MATCH-FAIL
  W  4  user       [tool_result]      134B  17dca17b09a8  → J  7
  W  5  assistant  [tool_use]      216B  ddb249661d9c  → JEVICTED-MATCH-FAIL
  W  6  user       [tool_result]      694B  37f5a4c4c163  → J  9
  W  7  assistant  [tool_use]      355B  9847af7b14c2  → JEVICTED-MATCH-FAIL
  W  8  user       [tool_result]    10221B  4b68ad765b8b  → J 11
  W  9  assistant  [tool_use]      238B  b278e5ed43fa  → JEVICTED-MATCH-FAIL
  W 10  user       [tool_result]      239B  ee592e688b2e  → J 13
  W 11  assistant  [tool_use]      905B  6fd418454509  → JEVICTED-MATCH-FAIL
  W 12  user       [tool_result]      871B  bc8f3f12005d  → J 15
  W 13  assistant  [tool_use]      740B  40386f3ebe3c  → JEVICTED-MATCH-FAIL
  W 14  user       [tool_result]      201B  e16933f09a4e  → J 17
  W 15  assistant  [tool_use]      348B  5e9f36e05752  → JEVICTED-MATCH-FAIL
  W 16  user       [tool_result]     1203B  18decbb28337  → J 19
  W 17  assistant  [tool_use]      730B  2e90bbee1b8b  → JEVICTED-MATCH-FAIL
  W 18  user       [tool_result]      983B  089f1efb8144  → JEVICTED-MATCH-FAIL
  W 19  assistant  [text]     2185B  a167e562ada0  → J 22
  W 20  user       [text]      160B  e8d2327e6871  → J 23
  W 21  assistant  [thinking,text,tool_use]     1944B  12b2a44a5900  → JEVICTED-MATCH-FAIL
  W 22  user       [tool_result]      311B  f62c1f5a1e7e  → J 27
  W 23  assistant  [tool_use]      747B  406f44919754  → JEVICTED-MATCH-FAIL
  W 24  user       [tool_result]     1816B  0d3114cf7298  → J 29
  W 25  assistant  [thinking,tool_use]     2052B  d37c01d242d1  → JEVICTED-MATCH-FAIL
  W 26  user       [tool_result]     1813B  4a1cf98edec6  → J 32
  W 27  assistant  [thinking,tool_use]     1859B  34d78ca5dabd  → JEVICTED-MATCH-FAIL
  W 28  user       [tool_result]      731B  d467b9b555f3  → J 35
  W 29  assistant  [tool_use]      832B  30feba0620a1  → JEVICTED-MATCH-FAIL
  W 30  user       [tool_result]      156B  27778a9a0e01  → J 37
  W 31  assistant  [tool_use]      296B  4bd97836d306  → JEVICTED-MATCH-FAIL
  W 32  user       [tool_result]      149B  131e24761f8b  → J 39
  W 33  assistant  [thinking,text]     2799B  8d09ae87f70e  → JEVICTED-MATCH-FAIL
  W 34  user       [text]      114B  f20bee3689a6  → J 42
  W 35  assistant  [thinking,text,tool_use]     2091B  1c34cef300ef  → JEVICTED-MATCH-FAIL
  W 36  user       [tool_result]      642B  b47de0dee345  → JEVICTED-MATCH-FAIL
  W 37  assistant  [tool_use]      314B  19ca1b912449  → JEVICTED-MATCH-FAIL
  W 38  user       [tool_result]      154B  bfa34c460b41  → J 87
  W 39  assistant  [tool_use]      276B  c01ffc27a709  → JEVICTED-MATCH-FAIL
  W 40  user       [tool_result]      154B  467135be105b  → J113
  W 41  assistant  [tool_use]      297B  2b608419a4c4  → JEVICTED-MATCH-FAIL
  W 42  user       [tool_result]      154B  2bab9481726e  → J125
  W 43  assistant  [text]      274B  3c57c6b47dd1  → J126
  W 44  user       [text]      105B  275ed121f783  → J127
  W 45  assistant  [text]      431B  3df97a8ffe5e  → J128
  W 46  user       [text]       87B  4111beaef325  → J129
  W 47  assistant  [text]      515B  68dbdfd8a1dc  → J130
  W 48  user       [text]       72B  8b5facd918e5  → J131
  W 49  assistant  [text]      113B  4608b6bb3932  → J132
  W 50  user       [text]     2843B  7256c6b3d8b4  → J133
  W 51  assistant  [text]     1188B  7cf7c381b39c  → J134
  W 52  user       [text]      107B  e25d2e4c1a11  → J135
  W 53  assistant  [text]      342B  fb3ebd6310e4  → J136
  W 54  user       [text]      136B  6190605f5d54  → J137
  W 55  assistant  [thinking,text]     1863B  451774d24972  → JEVICTED-MATCH-FAIL
  W 56  user       [text,text,text]     1171B  de9897ccdd41  → JEVICTED-MATCH-FAIL
  W 57  assistant  [text]      816B  9a07fe53fa59  → J141
  W 58  user       [text]      127B  c775ee1e4998  → J142
  W 59  assistant  [text]      547B  3a87b3e49c4b  → J143
  W 60  user       [text]     1098B  d671346b3aed  → J144
  W 61  assistant  [text]     1527B  95a521a7d3a3  → J145
  W 62  user       [text]      523B  9e3d2e582e53  → J146
  W 63  assistant  [text]     1144B  727651628110  → J147
  W 64  user       [text]      596B  ad655e26a37c  → JEVICTED-MATCH-FAIL
  W 65  assistant  [text]      806B  e4e1ee3d7acc  → J148
  W 66  user       [text]      125B  904db91187f4  → J149
  W 67  assistant  [text]      967B  5e0362614db0  → J150
  W 68  user       [text,text]     1174B  f776b5a7a53e  → JEVICTED-MATCH-FAIL
  W 69  assistant  [thinking,text]     5111B  7a1d7266fac1  → JEVICTED-MATCH-FAIL
  W 70  user       [text]      291B  a277fb1d6772  → JEVICTED-MATCH-FAIL
  W 71  assistant  [thinking,text]     2987B  42d03e312dff  → JEVICTED-MATCH-FAIL
  W 72  user       [text]      977B  fdcab7f4e833  → JEVICTED-MATCH-FAIL

Jsonl turns (index, role, blockTypes, bytes, hash, status):
  J  0  user       [text]       91B  978c4e1da1d7  EVICTED
  J  1  assistant  [thinking]      661B  4ad0eadf9c7a  EVICTED
  J  2  assistant  [text]      132B  8ed8bbc2bf1f  EVICTED
  J  3  assistant  [tool_use]      189B  e1cc56ec1043  EVICTED
  J  4  user       [tool_result]      158B  9b3b9df10d62  EVICTED
  J  5  assistant  [thinking]      454B  4a59aae8ae70  EVICTED
  J  6  assistant  [tool_use]      509B  9b7dd9403039  EVICTED
  J  7  user       [tool_result]      134B  17dca17b09a8  SENT
  J  8  assistant  [tool_use]      243B  2dc3a7e1d671  EVICTED
  J  9  user       [tool_result]      694B  37f5a4c4c163  SENT
  J 10  assistant  [tool_use]      382B  ca165e744759  EVICTED
  J 11  user       [tool_result]    10221B  4b68ad765b8b  SENT
  J 12  assistant  [tool_use]      265B  eb490187e2bd  EVICTED
  J 13  user       [tool_result]      239B  ee592e688b2e  SENT
  J 14  assistant  [tool_use]      932B  d04d045ec1f8  EVICTED
  J 15  user       [tool_result]      871B  bc8f3f12005d  SENT
  J 16  assistant  [tool_use]      767B  dd41c3c99268  EVICTED
  J 17  user       [tool_result]      201B  e16933f09a4e  SENT
  J 18  assistant  [tool_use]      375B  c6104cccf0c6  EVICTED
  J 19  user       [tool_result]     1203B  18decbb28337  SENT
  J 20  assistant  [tool_use]      757B  882db0ef42be  EVICTED
  J 21  user       [tool_result]      495B  a12721606224  EVICTED
  J 22  assistant  [text]     2185B  a167e562ada0  SENT
  J 23  user       [text]      160B  e8d2327e6871  SENT
  J 24  assistant  [thinking]      824B  f8b8e47ef7e8  EVICTED
  J 25  assistant  [text]      108B  7dc05299ffd4  EVICTED
  J 26  assistant  [tool_use]     1103B  e6c9055f4df3  EVICTED
  J 27  user       [tool_result]      311B  f62c1f5a1e7e  SENT
  J 28  assistant  [tool_use]      774B  4e85cfa6856f  EVICTED
  J 29  user       [tool_result]     1816B  0d3114cf7298  SENT
  J 30  assistant  [thinking]     1066B  b8b6021fe092  EVICTED
  J 31  assistant  [tool_use]     1045B  bbf539180d97  EVICTED
  J 32  user       [tool_result]     1813B  4a1cf98edec6  SENT
  J 33  assistant  [thinking]     1073B  f328458b1f3c  EVICTED
  J 34  assistant  [tool_use]      845B  4ba03004ec41  EVICTED
  J 35  user       [tool_result]      731B  d467b9b555f3  SENT
  J 36  assistant  [tool_use]      859B  a5a458482d65  EVICTED
  J 37  user       [tool_result]      156B  27778a9a0e01  SENT
  J 38  assistant  [tool_use]      323B  778509fe05f0  EVICTED
  J 39  user       [tool_result]      149B  131e24761f8b  SENT
  J 40  assistant  [thinking]     1670B  4c08f4a938df  EVICTED
  J 41  assistant  [text]     1161B  1671c5ce5b1f  EVICTED
  J 42  user       [text]      114B  f20bee3689a6  SENT
  J 43  assistant  [thinking]     1781B  ae54cfa43974  EVICTED
  J 44  assistant  [text]       97B  08da219b8064  EVICTED
  J 45  assistant  [tool_use]      304B  589d8aee99d6  EVICTED
  J 46  user       [text]      108B  9cf77576cb83  EVICTED
  J 47  assistant  [thinking]      845B  db39235b511d  EVICTED
  J 48  assistant  [tool_use]      302B  cc59e31917ee  EVICTED
  J 49  user       [tool_result]     7053B  db604f20e5be  EVICTED
  J 50  assistant  [tool_use]      253B  5662014f215e  EVICTED
  J 51  user       [tool_result]   149661B  c35bcffa107a  EVICTED
  J 52  assistant  [thinking]     4643B  f14123b9cf41  EVICTED
  J 53  assistant  [text]     1726B  b3de7e09457c  EVICTED
  J 54  user       [text]     2789B  a2cc262bbda6  EVICTED
  J 55  assistant  [thinking]     1195B  d4596c9688ca  EVICTED
  J 56  assistant  [text]      120B  8da471be841f  EVICTED
  J 57  assistant  [tool_use]     1153B  7c785039fb2e  EVICTED
  J 58  user       [tool_result]      263B  f43fe9d585bf  EVICTED
  J 59  assistant  [tool_use]      235B  7e1e35ead1bf  EVICTED
  J 60  user       [tool_result]      182B  4525141ab054  EVICTED
  J 61  assistant  [tool_use]      237B  6f18f95a2a5f  EVICTED
  J 62  user       [tool_result]      183B  79413a52f807  EVICTED
  J 63  assistant  [tool_use]      295B  b2ffe2bfc873  EVICTED
  J 64  user       [tool_result]      182B  1bf7f99678ae  EVICTED
  J 65  assistant  [tool_use]      253B  e3eb4a824fcd  EVICTED
  J 66  user       [tool_result]      230B  b1a4a2b11bec  EVICTED
  J 67  assistant  [tool_use]      296B  7a19d4cd9e1f  EVICTED
  J 68  user       [tool_result]      302B  262c9a19d254  EVICTED
  J 69  user       [tool_result]      154B  cc01d76025a0  EVICTED
  J 70  assistant  [tool_use]      288B  eca7d61d87e3  EVICTED
  J 71  assistant  [tool_use]      341B  35a930f8b6a8  EVICTED
  J 72  user       [tool_result]      478B  a3b3086e87ff  EVICTED
  J 73  assistant  [tool_use]      394B  af92af0dd3c0  EVICTED
  J 74  user       [tool_result]     1790B  cfcf5442fe34  EVICTED
  J 75  assistant  [tool_use]      248B  9bee4b735b22  EVICTED
  J 76  user       [tool_result]      129B  985046db06d9  EVICTED
  J 77  assistant  [tool_use]     2111B  6c1f96e1e83c  EVICTED
  J 78  user       [tool_result]      906B  58f09989df75  EVICTED
  J 79  assistant  [tool_use]     1125B  25084ec7e246  EVICTED
  J 80  user       [tool_result]      960B  02b691e980ea  EVICTED
  J 81  assistant  [tool_use]     1405B  344da883bc5d  EVICTED
  J 82  user       [tool_result]      892B  905bf1cca532  EVICTED
  J 83  assistant  [tool_use]     1540B  ab516d85ac0e  EVICTED
  J 84  user       [tool_result]      781B  ebc1419253d9  EVICTED
  J 85  assistant  [thinking]      739B  1fca48519dc5  EVICTED
  J 86  assistant  [text]     2914B  7e8e8f6d0554  EVICTED
  J 87  user       [tool_result]      154B  bfa34c460b41  SENT
  J 88  assistant  [tool_use]      303B  0c1fb95b4009  EVICTED
  J 89  user       [text]       86B  ce9aea56a05e  EVICTED
  J 90  assistant  [text]       80B  70ead0a3cf44  EVICTED
  J 91  user       [text]       76B  f1af23bf7b02  EVICTED
  J 92  assistant  [thinking]     2134B  7f79fa6bcfa7  EVICTED
  J 93  assistant  [text]      192B  d17b405150a7  EVICTED
  J 94  assistant  [tool_use]     1030B  79bbaa859f02  EVICTED
  J 95  user       [tool_result]      783B  9f1e50210c89  EVICTED
  J 96  assistant  [thinking]      830B  db7679dfc573  EVICTED
  J 97  assistant  [text]      235B  a4c9073d132e  EVICTED
  J 98  assistant  [tool_use]      674B  4946194e553e  EVICTED
  J 99  user       [tool_result]      168B  c61b540782c5  EVICTED
  J100  assistant  [tool_use]      856B  b2edf26332e6  EVICTED
  J101  user       [tool_result]      172B  ef63c0f1061c  EVICTED
  J102  assistant  [tool_use]      501B  c1809d670199  EVICTED
  J103  user       [tool_result]     1090B  ec2186efb30c  EVICTED
  J104  assistant  [thinking]     1274B  11c6926142a3  EVICTED
  J105  assistant  [tool_use]     1152B  aa1c4f51d79d  EVICTED
  J106  user       [tool_result]      188B  2632fed89fec  EVICTED
  J107  assistant  [tool_use]      891B  143c052bc68d  EVICTED
  J108  user       [tool_result]      148B  c9fc0ddce4f0  EVICTED
  J109  assistant  [tool_use]      977B  4a1776c595fc  EVICTED
  J110  user       [tool_result]      162B  8a36a391ba5d  EVICTED
  J111  assistant  [thinking]     1933B  ce60af9b176b  EVICTED
  J112  assistant  [text]     1127B  75be309f73c2  EVICTED
  J113  user       [tool_result]      154B  467135be105b  SENT
  J114  assistant  [tool_use]      324B  74fafb0cfd12  EVICTED
  J115  user       [text]       86B  ce9aea56a05e  EVICTED
  J116  assistant  [text]       80B  70ead0a3cf44  EVICTED
  J117  user       [text]       77B  5cc4ffa0c262  EVICTED
  J118  assistant  [thinking]     2584B  e4a4b419d53d  EVICTED
  J119  assistant  [text]     1291B  00966e828ccc  EVICTED
  J120  user       [text]      102B  4f038c5cfe3d  EVICTED
  J121  assistant  [text]      604B  071a7010ed8a  EVICTED
  J122  user       [text]      121B  0737aaa8829c  EVICTED
  J123  assistant  [thinking]     1999B  56df6ce2a2a1  EVICTED
  J124  assistant  [text]      392B  da2af9607bda  EVICTED
  J125  user       [tool_result]      154B  2bab9481726e  SENT
  J126  assistant  [text]      274B  3c57c6b47dd1  SENT
  J127  user       [text]      105B  275ed121f783  SENT
  J128  assistant  [text]      431B  3df97a8ffe5e  SENT
  J129  user       [text]       87B  4111beaef325  SENT
  J130  assistant  [text]      515B  68dbdfd8a1dc  SENT
  J131  user       [text]       72B  8b5facd918e5  SENT
  J132  assistant  [text]      113B  4608b6bb3932  SENT
  J133  user       [text]     2843B  7256c6b3d8b4  SENT
  J134  assistant  [text]     1188B  7cf7c381b39c  SENT
  J135  user       [text]      107B  e25d2e4c1a11  SENT
  J136  assistant  [text]      342B  fb3ebd6310e4  SENT
  J137  user       [text]      136B  6190605f5d54  SENT
  J138  assistant  [thinking]     1313B  ab7844254015  EVICTED
  J139  assistant  [text]      582B  8a9dd4186b08  EVICTED
  J140  user       [text]      368B  b80f1b63e1ae  EVICTED
  J141  assistant  [text]      816B  9a07fe53fa59  SENT
  J142  user       [text]      127B  c775ee1e4998  SENT
  J143  assistant  [text]      547B  3a87b3e49c4b  SENT
  J144  user       [text]     1098B  d671346b3aed  SENT
  J145  assistant  [text]     1527B  95a521a7d3a3  SENT
  J146  user       [text]      523B  9e3d2e582e53  SENT
  J147  assistant  [text]     1144B  727651628110  SENT
  J148  assistant  [text]      806B  e4e1ee3d7acc  SENT
  J149  user       [text]      125B  904db91187f4  SENT
  J150  assistant  [text]      967B  5e0362614db0  SENT

Steps to Reproduce

try a real development workflow,(ANALYZE CODEBASE->MULTIPLE QUESTION->CLAUDE ITSELF READS THE FILES and see CLAUDE become a goldfish soon.

EXPECTED CURRENT TOTAL CONTEXT DURING THE PRUNING: AROUND 70-90k context, or if some tool result/user message is large enough for the pruning condition.

Claude Model

Other

Is this a regression?

I don't know

Last Working Version

_No response_

Claude Code Version

latest

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

Terminal.app (macOS)

Additional Information

_No response_

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗