claude-code icon indicating copy to clipboard operation
claude-code copied to clipboard

[BUG] /rewind cannot restore the TODO list to the checkpoint state

Open nekohasekai opened this issue 3 months ago • 3 comments

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 restoring the entire state to a checkpoint, the TODO List is not modified, which may cause problems.

What Should Happen?

The TODO list is also saved to checkpoints and restored with /rewind

Error Messages/Logs


Steps to Reproduce

  1. Have the model perform a task that creates a TODO list.

Create todo list and pause: ☐ say hello world

⏺ Todo list created! I've added the task "Say hello world" in pending status. Let me know when you'd like me to proceed with it.

Todos ☐ Say hello world

  1. Execute /rewind to return to the point before the TODO list was created.
  2. The TODO list remains unchanged.

Claude Model

Sonnet (default)

Is this a regression?

I don't know

Last Working Version

No response

Claude Code Version

2.0.24

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

Terminal.app (macOS)

Additional Information

No response

nekohasekai avatar Oct 22 '25 08:10 nekohasekai

I get the same issue on the Bedrock API as well

niels-victor avatar Oct 28 '25 15:10 niels-victor

This issue has been inactive for 30 days. If the issue is still occurring, please comment to let us know. Otherwise, this issue will be automatically closed in 30 days for housekeeping purposes.

github-actions[bot] avatar Dec 08 '25 10:12 github-actions[bot]

Apologies for removing my last comment after it triggered GitHub Actions to remove the auto-close label. I was concerned as this amplifies prompt-injection risks since the TODO list is self-managed by Claude. I have since confirmed with Anthropic VDR (HackerOne report #3469847) that they view this behaviour as “a UX inconsistency rather than a security issue”, so it can be discussed publicly.

I still believe this is a valid bug and it persists in v2.0.72 (although it appears v2.0.73 is in the process of being released). In my case this bug/UI inconsistency has caused unexpected data loss: after rewinding, leaked /todos state caused Claude to repeat a step and delete the data it had just spent a long time generating so that the destination was available.

This bug is very simple to reproduce after starting a new session:

   ▐▛███▜▌   Claude Code v2.0.73
  ▝▜█████▛▘  Sonnet 4.5 · Claude Max
    ▘▘ ▝▝

  > Add a random item to your todo list.

  … Claude adds: "Organize digital photos by year"

  [rewind back to session start]

  > /todos
    ⎿  1 todo:
       ☐ Organize digital photos by year

As long as the session hasn’t run out of context, I’ve found it helps to ask Claude to confirm the TODO list has been cleared before rewinding.

Separately, the rewind feature also seems to have an issue where completed background tasks appear silently to claude in a stuck state after a rewind. I consider that less critical than /todos state leakage, but it may be similar enough to this issue that it doesn't warrant creating a second issue as it will likely become lost.

lnxd avatar Dec 19 '25 01:12 lnxd