[BUG] --resume fails on Windows with Google Drive mapped drives — CWD resolves to C:\Windows instead of actual path
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
When running Claude Code from a Google Drive virtual/mapped drive (H:\) on Windows, claude --resume <session-id> silently fails and returns to the shell prompt with no output. The --resume picker also doesn't show any previous sessions.
Root cause: Claude Code resolves the CWD to C:\Windows instead of the actual Google Drive path (H:\Shared drives\App\Power Optimisation Rules and Logic). This causes:
- New sessions are stored in the
C--Windowsproject directory instead ofH--Shared-drives-App-Power-Optimisation-Rules-and-Logic - 2.
--resumelooks in the wrong project directory and can't find old sessions - 3. The
sessions-index.jsonin the correct directory is never read
Evidence from JSONL transcripts:
- Old sessions (v2.1.44):
"cwd":"H:\\Shared drives\\App\\Power Optimisation Rules and Logic"— correct - - New sessions (v2.1.47):
"cwd":"C:\\Windows"— incorrect, despite PowerShell prompt showingH:\Shared drives\App\Power Optimisation Rules and Logic>
This is a regression — sessions created with v2.1.44 from the same path worked correctly. The path resolution changed between v2.1.44 and v2.1.47.
Related to #24140 (Windows + network drive path resolution issues).
What Should Happen?
claude --resume <session-id>should find and resume sessions created from Google Drive mapped drives- 2. Claude Code should resolve the CWD to the actual mapped drive path (e.g.,
H:\Shared drives\...) rather than falling back toC:\Windows - 3. New sessions should be stored in the same project directory as old sessions when launched from the same path
- 4. The
--resumepicker should show all previous sessions for the project
Error Messages/Logs
Steps to Reproduce
- Have Google Drive for Desktop installed with a mapped drive letter (e.g.,
H:\) - 2. Open PowerShell and
cdto a project on the Google Drive:cd "H:\Shared drives\App\Power Optimisation Rules and Logic" - 3. Run
claudeand have a conversation, then/exit— note the session ID shown - 4. Run
claude --resume <session-id>from the same directory - 5. Observe: silent failure, returns to shell prompt with no output
- 6. Run
claude --resume(no ID) to open the picker - 7. Observe: only very recent sessions appear, not previous ones
Key detail: This worked correctly on v2.1.44. The regression occurs on v2.1.47 (or between those versions). Old sessions have correct CWD in their JSONL, new sessions show C:\Windows.
Verification: Check ~/.claude/projects/ — you'll find:
H--Shared-drives-App-.../*.jsonl— old sessions (correct, created by v2.1.44)- -
C--Windows/*.jsonl— new sessions (wrong, created by v2.1.47)
Claude Model
None
Is this a regression?
Yes, this worked in a previous version
Last Working Version
2.1.44
Claude Code Version
2.1.47
Platform
Anthropic API
Operating System
Windows
Terminal/Shell
PowerShell
Additional Information
Environment:
- Windows 11 Pro 10.0.26200
- - Google Drive for Desktop (provides virtual H:\ drive)
- - - PowerShell in Windows Terminal
- - - - Claude Code v2.1.44 (worked) → v2.1.47 (broken)
Impact: All previous sessions (28 in this project) become inaccessible via --resume. The JSONL transcript files still exist on disk at ~/.claude/projects/H--Shared-drives-App-Power-Optimisation-Rules-and-Logic/ but Claude Code now looks in ~/.claude/projects/C--Windows/ because it resolves the Google Drive virtual path incorrectly.
Likely root cause: The Node.js process.cwd() or path resolution logic changed between v2.1.44 and v2.1.47 in a way that doesn't properly handle Windows virtual/mapped drives (Google Drive File Stream). The drive letter H:\ is no longer resolved to the actual path, and falls back to C:\Windows.
Workaround attempted: Manually copying session index entries from the old project directory to the new one. This did not work — the --resume picker still only shows sessions created by the new version.
This issue has 6 comments on GitHub. Read the full discussion on GitHub ↗