v2.1.128 update silently destroys conversation history for pre-JSONL sessions
Resolved 💬 4 comments Opened May 7, 2026 by dadaburner-spec Closed Jul 16, 2026
Bug Summary
The v2.1.128 update (Mac desktop app) permanently deleted conversation messages from all sessions created before the JSONL storage format was introduced (~April 7, 2026). This is a destructive, unrecoverable data loss affecting months of work.
What happened
- Updated to Claude Code v2.1.128 on May 6, 2026
- All 43 session metadata files in
~/Library/Application Support/Claude/claude-code-sessions/were rewritten at 22:34 - The
messagesfield was set tonullin every session JSON file - Only sessions that already had
.jsonlfiles in~/.claude/projects/retained their conversation content (16 of 43) - 26 sessions spanning Feb 5 – Apr 4, 2026 lost ALL conversation history — many of which had ongoing activity through today
Impact
- 26 sessions appear completely empty in the Mac app sidebar — titles and metadata are intact, but all messages are gone
- These were active, long-running conversations with months of accumulated context, decisions, and conclusions
- No warning was given before the migration
- No backup was created of the old-format data before deletion
- The conversations cannot be resumed — the context is permanently lost from the app
Evidence
- All 43 session metadata files show
"messages": null(Python:json.load(f).get('messages')returnsNone) - File modification timestamps cluster at 22:34 May 6 (update time)
- 19 JSONL files exist in
~/.claude/projects/— these sessions still work - 26 sessions have no JSONL and no messages — their data existed only in the old JSON format and was destroyed
Expected behavior
A storage format migration should:
- Never delete data without creating a backup first
- Migrate ALL sessions to the new format, not just ones that already have JSONL files
- At minimum, warn the user that old sessions cannot be migrated and offer options
Environment
- macOS Sequoia (Darwin 25.3.0)
- Claude desktop app v1.6259.1
- Claude Code v2.1.128
- FileVault enabled
- APFS local snapshots exist but cannot be easily mounted programmatically due to FileVault
Recovery attempted
- Local APFS snapshot from May 1 exists but FileVault prevents programmatic mounting
- Time Machine external drive unavailable
- Session export hook (Dropbox transcripts) captured some conversations in markdown format, but these cannot be re-imported into the app
User impact statement
This destroyed months of carefully built conversation context across 26 active sessions. Long-running conversations where decisions, architecture, conclusions, and ongoing work were tracked are now empty shells. This is an unacceptable level of negligence for a data migration — there is no excuse for deleting user data without a backup step. This needs to be treated as a P0 data loss incident.
This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗