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.234 ·

Next-generation storage is pinned to one decision per process

The new storage layer's on/off decision is now made once per process, and the backend is still an empty stub.

Nothing to try yet No documentation found In Development
JSON All of v2.1.234
Nothing to try yetTier: how much it should matter to you
1Useful: my rating, 1 to 5
3Signal: worth watching, 1 to 5
Storage BackendArea: what it touches
In DevelopmentKind: in v2.1.234,
In DevelopmentSection of the release

tengu_hover_rest is pinned once per process; the backend it selects is an empty stub, so no path is taken.

What

The gate that decides whether Claude Code uses its new storage layer, an internal flag named tengu_hover_rest, was previously consulted at each use. It is now read once and pinned for the lifetime of the process, and roughly two dozen storage paths were re-guarded so they check that pin rather than simply acting on a backend handle being passed in. The backend itself is an empty stub in this build, so none of these paths can actually be taken.

Details
  • The gate defaults to off, so unmodified installs keep the existing file-based storage.
  • A non-boolean value logs "tengu_hover_rest served a ${typeof e}, not a boolean; treating it as off" and is treated as off.
  • A later read that disagrees with the pinned answer logs "tengu_hover_rest read ${String(e)} at a second pin in this process; keeping the first decision" and the first answer stands.
  • Re-guarded call sites include the auth cache read and delete, plugin marketplace, registry and manifest caches, skills cache, skill and SKILL.md reads, skill writes, the auto-updater lock, transcript cleanup and sidecars, session order, group files and session pins, memory and context loading, agent dispatch writes and mailbox files, task-list writes, quota state, logout, and the message queue swap.
  • A stray backend handle can no longer half-activate the new path, and a mid-process flag flip can no longer split one session between the old file paths and the new ones.
  • The factory that would construct the new backend returns nothing unconditionally in this build, so no new-format storage is created and no session can run on it regardless of the gate.
Evidence

tengu_hover_rest read ${String(e)} at a second pin in this process; keeping the first decision, tengu_hover_rest, keeping the first decision, at a second pin in this process; keeping the first decision, read ${String(e)} at a second pin in this process; keeping the first decision

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

Read from
Names in the bundletengu_hover_rest
Feature flag
tengu_hover_rest Off in both readings

The flag server returned off for the account this site reads and for the anonymous baseline. A reading of off cannot rule out a rollout these two readings sit outside of.

This account: off · anonymous baseline: off · compiled default in v2.1.234: off

Read once, for one account on one subscription tier, against v2.1.234. It isn't a statement about your account. What a flag value here can and cannot tell you

What has happened since
Flag reading moved The flag server now returns off for tengu_hover_rest, read as this account. A reading is one sample. Claude Code evaluates its flags remotely, so no client sees the targeting rule behind a value and this says nothing about your account.
Flag reading moved The flag server now returns nothing at all, having stopped carrying it for tengu_hover_rest, read as this account. A reading is one sample. Claude Code evaluates its flags remotely, so no client sees the targeting rule behind a value and this says nothing about your account.

See this across every release →

See this entry in the whole of v2.1.234 →

Feedback