TaskUpdate/TaskList task IDs do not survive a session resume
Summary
After a session is resumed (e.g. via "Continue" / resuming an interrupted session), TaskUpdate on a task ID that was valid earlier in the same session returns Task not found. The task list appears to have re-listed with reset/renumbered IDs. Status updates queued for end-of-work then fail to land, so the work completes untracked.
Steps to reproduce
- In a session,
TaskCreateseveral tasks (IDs1–5). TaskUpdatesome of them toin_progress/completed— works fine.- The session is resumed (interruption, then "Continue from where you left off").
TaskUpdate {taskId: "5", status: "completed"}→Task not found.
Expected
Task IDs remain stable across a session resume; updates to previously-created task IDs land.
Actual
TaskUpdate returns Task not found for a task ID that was valid pre-resume; the task list appears renumbered/reset.
Impact
Minor / non-blocking, but end-of-session status reconciliation can't complete — the final task cannot be marked done, so the work finishes untracked.
Environment
- Claude Code (CLI), macOS (Darwin 25.5.0)
- Model: Opus 4.8 (1M context)
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗