{"version":"2.1.228","anchor":"per-session-state-replaces-process-wide-singletons","canonical_anchor":"per-session-state-replaces-process-wide-singletons","heading":"Per-session state replaces process-wide singletons","tier":"internal","area":"Session State","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.228\/e\/per-session-state-replaces-process-wide-singletons","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.228","markdown":"### Per-session state replaces process-wide singletons\n\nDiagnostics, fallback history, shell hints and observer pairings are no longer shared between sessions in one process.\n\n**What**\n\nPending language-server diagnostics, the ask-Claude fallback exchange history, shell hint delivery, worktree resume refusals and agent-observer pairings all moved from process globals onto the session. Nothing changes for a single session, but these are no longer shared across sessions in one process.\n\n**Details**\n\n- Diagnostics are now looked up per session and the reset entry point was renamed to clear all state.\n- The old standalone history class was deleted; that history now hangs off the session.\n\n**Evidence**\n\n`LSP Diagnostics: Resetting all state`\n\n- Area: Session State\n- Tier: Under the hood\n- Useful: 2\/5\n- Signal: 2\/5"}