{"version":"2.1.234","anchor":"cleanup-asks-the-storage-layer-whether-a-path-exists","canonical_anchor":"cleanup-asks-the-storage-layer-whether-a-path-exists","heading":"Cleanup asks the storage layer whether a path exists","tier":"internal","area":"Internals","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.234\/e\/cleanup-asks-the-storage-layer-whether-a-path-exists","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.234","markdown":"### Cleanup asks the storage layer whether a path exists\n\nCleanup asks the storage layer whether paths exist rather than touching the filesystem directly.\n\n**What**\n\nSession, history, task, debug and file-history cleanup no longer inspect the filesystem directly when the newer storage layer is active; they ask it whether each path is absent, a link, a directory or something else, and fall back to a direct filesystem check only when it has no answer.\n\n**Details**\n\n- The storage handle is now passed through cleanup, plugin caching, CLAUDE.md include checks, MCP client teardown and the resume picker.\n- Whether the new branch runs is decided by the build-wide storage-v5 check; otherwise the previous filesystem path is used unchanged.\n\n**Evidence**\n\n`fileHistory`\n\n- Area: Internals\n- Tier: Under the hood\n- Useful: 1\/5\n- Signal: 2\/5"}