Under the hoodTier: how much it should matter to you
2Useful: my rating, 1 to 5
3Signal: worth watching, 1 to 5
Session StateArea: what it touches
Internal ChangesKind: in v2.1.238,
Internal ChangesSection of the release
What
State that used to live in loose module-level variables and React context is now held per session in a single object, covering things like whether the main loop is busy, terminal focus, feedback notices, project onboarding, push reachability, lost MCP authentication and changed skills. This makes tearing down and restoring a session coherent, and changes nothing you can see.
Details
Call sites read from the container instead of context, for example the main-loop-busy check.
Many bare module-level maps and sets were replaced with lazily created per-session holders.
Failures restoring a session are logged with "session rehydrator threw: ".
Evidence
session rehydrator threw:
Strings lifted out of the shipped bundle, so the claim above can be checked against them.