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.227,
Internal ChangesSection of the release
What
Across dozens of subsystems, loose file-scope variables were moved onto single state objects or small classes, covering terminal capability detection, plugin and marketplace caches, skills loading, git directory lookups, org policy status, the teammate mailbox, agent observer pairings, computer-use state, voice recording, the global config cache and child-process tracking. Behaviour is meant to be identical; the point is that this state can now be reset per run rather than living for the life of the process.
Details
Some memoised dynamic imports were deliberately de-memoised back to a plain promise each time.
Terminal backends such as tmux and iTerm are now cached singletons instead of being rebuilt on every call, and settings-file parse caches are held per store rather than process-wide.
Evidence
VoiceRecorderState.reset() called while a recording is live; call stopRecording() first, AA.shouldAutoEnable, synchronizedOutputSupported
Strings lifted out of the shipped bundle, so the claim above can be checked against them.