[BUG] Teleported remote-control session unresumable: every message fails with 400 diagnostics.previous_message_id
Open 💬 0 comments Opened Jul 3, 2026 by pikuman83
Environment
- Claude Code version: 2.1.198
- Platform: win32 (Windows 11 Pro 10.0.26200), VS Code extension entrypoint
- Model: claude-fable-5
Description
A remote-control session (started from the mobile app, bridged to a local Claude Code process) was teleported to the local machine. The teleported session opens and shows its history, but every message sent to it fails with:
API Error: 400 diagnostics.previous_message_id: must be the `id` from a prior /v1/messages response (starts with `msg_`)
The error reproduces on every retry, so the session is permanently unrecoverable in place (the transcript on disk remains readable).
Reproduction
- Start a remote-control session from the mobile app against a local Claude Code process.
- Session hits the account session limit mid-run (
You've hit your session limit · resets ...appears as an assistant message in the transcript). - Teleport the session to the local machine (transcript gets
teleported-from+teleport-skipped-branchmeta entries; timestamps rewritten to teleport time). - Resume the teleported session locally and send any message → 400 above, every time.
Notes
- The teleported transcript's tail includes the synthetic "session limit" assistant message, which has no real
msg_id — presumably that is what gets sent asdiagnostics.previous_message_id. - Looks like the same class as closed issues #58427 and #59520 (synthetic assistant tail → invalid previous_message_id), but reproduced via the remote-control + session-limit + teleport path on 2.1.198.
Expected
Resuming a teleported session should skip/repair synthetic tail messages instead of sending an invalid previous_message_id, or at minimum offer a way to recover the session.