fix(sensor): preserve Claude transcript content and incremental updates - #130
Open
barisozbas wants to merge 1 commit into
Open
barisozbas wants to merge 1 commit into
barisozbas wants to merge 1 commit into
Conversation
Recover complete JSONL records conservatively, preserve mixed text and tool results, correlate results with exact tool invocations, and distinguish child sessions. Track content changes so incremental capture includes resumed turns. Add synthetic parser and observer regression coverage and document limitations.
This was referenced Sep 19, 2026
barisozbas
marked this pull request as ready for review
September 19, 2026 12:55
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Recover complete JSONL records conservatively, preserve mixed text and tool
results, correlate results with exact tool invocations, and distinguish child
sessions. Track content changes so incremental capture includes resumed turns.
Add synthetic parser and observer regression coverage and document limitations.
String/text-block messages, mixed user text and tool results, repeated identical
tool calls, malformed records, child-session identity, and appended turns now have
regression coverage. Subagent discovery includes nested
subagentsdirectoriesdocumented in Claude Code.
What type of PR is this?
Related issue: None; parser maintenance. Complements #38 without implementing
its tool classification, MCP attribution, or error-status changes.
Why? Valid recorded content could be omitted or attributed to the wrong tool
invocation, and local incremental capture could skip resumed Claude sessions.
Test Plan
and in-memory exporters. Ruff and whitespace checks pass.
Potential risks: Child-session IDs now include the agent identifier; downstream
consumers should use the recorded parent relationship. All recorded branches remain
in file order; this is not an active-branch reconstruction. Existing truncation is
unchanged. Native Windows/macOS/Linux installations were not end-to-end tested.
Revert Plan
Revert this commit to restore the previous parsing and incremental behavior;
previously written normalized session files are not automatically removed.