Follow Discord
Sweep 22 Oct 2026 · 04:32Z Build v2.1.308 527 read Stable v2.1.308 Latest v2.1.308 Next v2.1.308 Feeds RSS JSON llms.txt llms-full.txt Unofficial

Claude Code v2.1.229 ·

Per-session tool state stops caches leaking between sessions

Caches now live per session, so parallel sessions in one process stop contaminating each other.

Under the hood Improvements
JSON All of v2.1.229
Under the hoodTier: how much it should matter to you
3Useful: my rating, 1 to 5
3Signal: worth watching, 1 to 5
Session StateArea: what it touches
ImprovementsKind: in v2.1.229,
ImprovementsSection of the release
What

Caches that were previously process-wide now live in a per-session store: the WebFetch URL and domain-check caches, the send-file duplicate set, Bash working-directory tracking, the alias-probe fired set, plus per-host containers holding plugin sync state, the keybinding writer, the diagnostics manager and the binary-check cache. In a process running more than one session at once (SDK, runner, cowork) these no longer bleed across sessions.

Details
  • The store is created with the session context and carried through context construction, forking and agent spawn.
  • Disposing a session installs a fresh store rather than clearing shared maps.
Evidence

toolState: this.toolState, toolState

Strings lifted out of the shipped bundle, so the claim above can be checked against them.

See this entry in the whole of v2.1.229 →

Feedback