Desktop app forces re-login shortly after auto-update / next restart
Environment
- OS: CachyOS Linux (Arch-based), KDE Plasma
- Claude desktop app version: 2.2553.13
- Claude Code (Code tab) version: 2.1.280
- Auth env: CLAUDE_CODE_SDK_HAS_HOST_AUTH_REFRESH=1 (host-managed auth refresh)
Summary
Twice now, being forced to log in to Claude Code again has directly followed an app auto-update, always after the app is next relaunched/restarted (not immediately after the update itself).
Occurrence 1 - 2026-09-16
- App auto-updated 2.1.270 -> 2.1.274 at 2026-09-16 20:02:54 PDT (per ~/.claude/.last-update-result.json).
- ~/.claude/.credentials.json was rewritten within 13 seconds of that update timestamp (20:02:41 PDT), consistent with the update flow touching/resetting the credential file.
Occurrence 2 - 2026-09-22
- App auto-updated 2.1.275 -> 2.1.280 at 2026-09-22 20:14:07 PDT (new version unpacked under ~/.config/Claude/claude-code/2.1.280/).
- System was rebooted at 2026-09-22 20:39:26 PDT, about 25 minutes later.
- On first launch after reboot, Claude Code required a fresh login, even though nothing else about the account/session had changed.
Pattern
In both cases the forced re-login was preceded by an auto-update shortly before the app was next started fresh (via restart or reboot). No other trigger (clock skew, network change, suspend/resume) was found to correlate - clock was NTP-synced, and only this one device/session was affected each time; other logged-in sessions on other devices were unaffected.
Suspected cause
Since CLAUDE_CODE_SDK_HAS_HOST_AUTH_REFRESH=1 indicates the desktop host manages the auth/refresh handshake for Code tab sessions, it seems plausible that an update swaps in a new host binary/session context whose auth refresh does not cleanly carry over the previous session state, so the first launch after the update+restart treats the session as logged out.
Ask
Could the update process be invalidating/rotating the stored auth/session token, or failing to carry over the refreshed token into the new version's expected storage location/format?