Desktop rewind fails on conversation-only sessions: not on active chain (chain size 2/N)

Resolved 💬 6 comments Opened May 16, 2026 by pudDesign Closed Jun 18, 2026

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?

In Claude Desktop, rewinding to any message in a conversation-only session (no Edit/Write tool use) fails. Per the official checkpointing docs, "every user prompt creates a new checkpoint" — but rewind rejects all targets in conversation-only sessions.

Log signature in %APPDATA%\Roaming\Claude\logs\main.log:

[Rewind] target=<uuid> → assistantUuid=<uuid> not on active chain for <session> (chain size 2/N)

The "2" is constant regardless of N (observed N = 9, 117, 143).

Bisection (ruled out)

  • ✅ Standalone CLI (claude v2.1.131) rewinds correctly in the exact same folder
  • ✅ Sessions with Edit/Write tool use rewind correctly in Desktop
  • ❌ Brand new sessions, brand new folders, both C: and I: drives — all fail
  • Plugin hooks not the cause (only PostToolUse on Edit|Write registered; doesn't fire in failing sessions)
  • Cross-drive not the cause (same failure on C:)
  • Folder rename / migration not the cause (brand new folder fails identically)
  • No EXDEV/EPERM/ENOENT errors in main.log

Hypothesis

Desktop's LocalSessions.rewind validator builds an "active chain" of size 2 (latest user + assistant turn) when no file-history snapshot anchors exist, rejecting earlier messages as out-of-chain. The standalone CLI uses a different rewind path and is unaffected.

Possibly relevant

Cowork bridge state shows empty processedMessageUuids / pendingProcessedAcks arrays. If the active-chain definition requires Cowork-acknowledged messages, that could explain the constant chain size 2.

Environment details

  • Claude Desktop 1.7196.0.0 (Windows 11, MSIX install)
  • Bundled CLI: 2.1.138 (not directly testable — MSIX-sealed)
  • Standalone CLI: 2.1.131 (works correctly in same scenario)
  • Cowork / remote control enabled

What Should Happen?

Per the official checkpointing docs, every user prompt creates a new checkpoint, so rewinding to any earlier user message in a conversation-only session should succeed — matching the behavior of the standalone CLI (v2.1.131) in the same folder.

Error Messages/Logs

Steps to Reproduce

  1. Create a fresh empty folder.
  2. Open it in Claude Desktop and start a new session.
  3. Have a brief text-only exchange (3+ user messages, no file edits).
  4. Press Esc Esc, pick any earlier message.
  5. Observe: "Can't rewind to this message".

Claude Model

Opus

Is this a regression?

Yes, this worked in a previous version

Last Working Version

_No response_

Claude Code Version

2.1.138 (bundled in Claude Desktop 1.7196.0.0); also tested standalone 2.1.131

Platform

Anthropic API

Operating System

Windows

Terminal/Shell

Non-interactive/CI environment

Additional Information

_No response_

View original on GitHub ↗

This issue has 6 comments on GitHub. Read the full discussion on GitHub ↗