{"version":"2.1.232","anchor":"session-storage-passed-explicitly-instead-of-reached-for-glo","canonical_anchor":"session-storage-passed-explicitly-instead-of-reached-for-glo","heading":"Session storage passed explicitly instead of reached for globally","tier":"internal","area":"Sessions","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.232\/e\/session-storage-passed-explicitly-instead-of-reached-for-glo","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.232","markdown":"### Session storage passed explicitly instead of reached for globally\n\nSession storage is now passed explicitly through review, fork, compaction, team memory and config writes.\n\n**What**\n\nA wide set of call paths now receive the session storage handle as an argument rather than picking it up from ambient state: session review and fork, building compaction attachments, transcript copy, team-memory push and pull, skill partition checks, MCP pending-server prompts, message enqueue, theme and mode dialogs, and config setters such as the code-review effort write.\n\n**Details**\n\n- The tracker that watches whether the session file is writable moved onto the session store and is now handed to the pull-request link recorder instead of read from a module global.\n- The module-level project-session accessor, along with the process `exit` handler it registered, was removed.\n\n**Evidence**\n\n`storageV5`\n\n- Area: Sessions\n- Tier: Under the hood\n- Useful: 1\/5\n- Signal: 2\/5"}