Session transcript missing for local session, despite commits landing and no retention policy explaining it
Description
A local session that did real work (created a git branch, made commits) has no recoverable transcript — neither in the session-search index nor in the raw ~/.claude/projects/<project>/*.jsonl files on disk.
Context
- A feature branch has commits from a specific date/time, with commit messages that read as AI-authored (consistent with a Claude Code session) — so a transcript should exist.
search_session_transcripts(session-mgmt MCP) only turns up later sessions that reference the branch name viagit log/git reflogoutput (i.e., other sessions listing branches) — never the originating session itself.- Direct grep across all
*.jsonlfiles under the relevant~/.claude/projects/<project>/directory (plus worktree-scoped project dirs) for the branch name, a commit hash, and the known timestamp window returned zero matches. - No
cleanupPeriodDaysoverride is set in~/.claude/settings.jsonor~/.claude.json(default is 30 days), and the session was only ~3 days old, so retention cleanup doesn't explain the gap.
Expected
Every session that performs file/git operations should produce a durable transcript file under ~/.claude/projects/<project>/, recoverable via session search, for at least the default retention window.
Actual
Transcript for the session is unrecoverable — neither indexed nor present on disk — even though the work it produced (git commits) exists and confirms the session ran.
Possible causes worth checking
- Transcript write not flushed/persisted before process exit (crash, force-quit, etc.)
- Session run through a different client/device where transcripts aren't synced to this machine's local
~/.claude/projects/ - Silent file loss/corruption not surfaced to the user
Happy to provide more diagnostic detail privately if useful — omitting specific project/branch/file names here since this is a public tracker.
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗