Desktop app: chat scrollback permanently truncated at a fixed mid-conversation point after app restart (session JSONL intact)
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 closing and reopening the Claude Code desktop app, the chat view for a long session always starts rendering from the same fixed mid-conversation message. Everything before that point is not visible and there is no way to scroll or load earlier history. New messages continue to append normally. The truncation point does NOT move as the conversation grows and is identical across multiple app restarts.
What I verified on disk:
- The session JSONL (
~/.claude/projects/<project-slug>/<session-id>.jsonl) is complete: 1,184 records, all messages present including the ones the UI no longer shows. - There are NO
summary/compact_boundaryrecords in the file — the render cutoff does not correspond to any marker in the session log. - The first message the UI renders corresponds to record ~844 of 1,184 — an ordinary user message; adjacent records are ordinary queue-operation / stop_hook_summary entries.
- So this appears to be app-side view/resume state (Electron storage), not session-file corruption or context compaction.
Context that may matter: session spans 3 days, ~135 user/assistant messages, heavy subagent/background-task usage, several MCP servers connecting/disconnecting during the session, and the app was quit at least once while background shells were still running.
What Should Happen?
Full transcript scrollback after app restart, or an affordance to load earlier history — the data exists intact in the session JSONL.
Error Messages/Logs
Steps to Reproduce
- Run a long multi-day session in the desktop app (hundreds of messages, background bash tasks and subagents running).
- Quit the desktop app while the session still has running background shells; reopen the app and resume the same session.
- Observe: chat scrollback starts at a fixed mid-conversation message; all earlier messages are missing from the view.
- Quit and reopen again: the view starts at the exact same message (fixed point; does not shift as new messages are added).
Session ID in case telemetry helps: e69a4590-ed0a-4bc9-b3dc-a6c2b2eea026
Claude Model
Other
Is this a regression?
I don't know
Last Working Version
_No response_
Claude Code Version
2.1.226 (Claude Code)
Platform
Anthropic API
Operating System
macOS
Terminal/Shell
Other
Additional Information
Workarounds tried: regenerated a readable transcript from the JSONL manually (works — confirms no data loss); claude --resume from the project directory in the terminal as an alternate render path. Happy to provide the JSONL record-type breakdown privately if useful.