anthropics / anthropics/claude-code

Regression: sessions >30 days old lost history again after forced re-sign-in (previously fixed in 1.34493.0)

Open
#95,477 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

area:auth area:desktop bug data-loss has repro platform:macos regression
Dominant language
TypeScript
Stars
146k
Forks
23.8k
PR merge metrics
PR metrics pending

Description

Describe the bug
Local Claude Code session transcripts for several projects (user reports ~8) disappeared from the desktop app sidebar, apparently triggered by a forced re-sign-in. Only the most recently active project's session survived. This looks like a regression of a bug that was already fixed once.

This looks like a regression of a previously-fixed bug
The August 20, 2026 changelog (v1.34493.0) lists this exact fix:

"Fixed sessions you hadn't opened for 30 days or more losing their conversation history even though the app was in regular use."

That is precisely the reported symptom: projects untouched for 30+ days lost their history while the app was in active daily use for a different (recent) project.

Likely trigger: forced re-sign-in
The September 17, 2026 changelog (v2.2553.0) lists:

"Fixed turns failing with 'OAuth token has expired' hours into a session; the token is now renewed in the background, and when a fresh sign-in is genuinely required the app asks before sending and keeps your message."

The user was forced to re-sign in to the desktop app this morning, immediately after which the old sessions were gone. This suggests the re-auth flow itself (or a related code path) re-triggered the class of bug the August fix addressed, rather than that fix being durable.

Forensic evidence gathered directly on the affected machine

  • ~/.claude/.last-cleanup is timestamped 2026-09-18T22:06:27.146Z (= 2026-09-19 08:06 local AEST), matching the user's report of the re-sign-in / disappearance happening around 8:05am local time.
  • The ~/.claude directory itself (not just its contents) has a filesystem creation timestamp of 2026-09-19 08:06:15 local — i.e. it did not exist before that moment on this machine's disk. This is not "old files were cleaned out"; the whole directory was recreated from scratch at that instant.
  • ~/.claude.json (the top-level project registry, separate from the ~/.claude directory) still lists 3 project paths, but on disk ~/.claude/projects/ now only contains a directory (with .jsonl transcripts) for ONE of them — the one actively used yesterday evening. The other two registered projects have no transcript directory at all.
  • Local APFS snapshots were checked going back to September 7 (the oldest available on this machine) via mount_apfs -s <snapshot> -o ro /dev/disk3s5 <mountpoint>. The ~/.claude directory is absent in every one of these snapshots, including ones from well before this morning (yesterday 6:03pm, yesterday 7:53am, and September 7th). tmutil isexcluded confirms the path is not Time-Machine-excluded. This means either (a) the directory has never persisted locally for more than a very short window before being wiped again, or (b) something is actively preventing this directory's contents from surviving across whatever event happens at sign-in/session-expiry boundaries.
  • Actual project files unrelated to Claude Code (docs, csvs, etc.) on disk are untouched — this is chat-history loss only, not file loss.

Expected behavior
Per the intent of the August 20 fix, sessions should not lose their history regardless of how long they've been idle, and a forced/renewed sign-in should never cause local session data to be wiped or recreated from scratch.

Actual behavior
Multiple projects' full session/transcript history vanished, coincident with a forced re-sign-in, in a way that matches a previously-fixed bug.

Environment

  • Claude Desktop app, Code tab
  • macOS 14.0 (Build 23A344), Darwin 23.0.0
  • No ~/.claude/settings.json existed prior to this (cleanupPeriodDays was at its default of 30, desktopSessionCleanupPeriodDays at its default of 0/no-ceiling — neither should have caused this given the directory's own creation timestamp postdates any plausible sweep)

Impact
Permanent loss of Claude conversation history for multiple long-running projects (~8) the user relied on for continuity/context, some clearly over 30 days old, lost right after a forced re-authentication.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the forced re-sign-in flow and session cleanup or persistence paths, comparing the fixes documented in v1.34493.0 and v2.2553.0. Inspect ~/.claude, ~/.claude.json, ~/.claude/.last-cleanup, and the project transcript directories, then reproduce re-authentication with sessions idle for over 30 days. Done means old project transcripts remain available after sign-in.

Written by the indexing model from the issue text.

Assessment

Tech stack
macos, python
Domain
authentication, desktop
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.