[BUG] TODO list persists after /rewind instead of being restored to checkpoint state

Resolved 💬 4 comments Opened Mar 31, 2026 by FelixRuiGao Closed May 6, 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?

After using /rewind to restore the conversation to a previous checkpoint, the TODO list is not reverted to its state at that checkpoint. Instead, the TODO items created after the checkpoint continue to persist, causing confusion and potential issues (e.g., Claude may repeat tasks it had already completed before the rewind).

This is a known issue previously reported in #10095, which was auto-closed due to inactivity without being fixed. The problem still exists in the latest version.

What Should Happen?

The TODO list should be saved as part of the checkpoint state and fully restored when using /rewind. After rewinding, the TODO list should reflect the exact state it was in at the selected checkpoint — any TODO items created after that checkpoint should be removed.

Error Messages/Logs

Steps to Reproduce

  1. Start a new Claude Code session
  2. Ask Claude to perform a task that creates a TODO list (e.g., "Create a todo list and add a task: say hello world")
  3. Observe the TODO list is created with the task item
  4. Use /rewind to return to the point before the TODO list was created
  5. Observe that the TODO list still persists with the items from after the checkpoint, instead of being cleared/restored

Claude Model

Sonnet (default)

Is this a regression?

No, this never worked

Last Working Version

_No response_

Claude Code Version

2.1.88

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

Terminal.app (macOS)

Additional Information

This is a resubmission of #10095 (auto-closed due to inactivity) and #10597 (closed as duplicate). The bug has never been fixed.

Core issue: After /rewind, the TODO list still contains items created after the checkpoint — essentially "future" state that the agent should not be aware of at that point in the conversation. This causes confusion for the agent: it sees a TODO list filled with information it has no context for (since the conversation has been rewound), leading to unpredictable behavior such as making incorrect assumptions about the current state of the task.

View original on GitHub ↗

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