test / unit + widget + golden + a11y (push) Failing after 25s
test / integration_test (xvfb) (push) Has been skipped
test / bundle smoke (xvfb 5s) (push) Has been skipped
test / daemon subprocess + web WASM smoke (push) Has been skipped
test / dart doc (lib API) (push) Failing after 23s
The testable core of the stream-json pivot (D-77): StreamJsonSession drives a claude process in stream-json mode — parsing its line-delimited events into the existing ConversationItem / SessionStatus types (reusing parseTranscriptChunk, since stream-json assistant/user events share the transcript's message.content shapes), pulling permission-mode off the init event, and sending user input as stream-json over stdin (with a local echo so the user's own message renders immediately). The process is abstracted behind StreamJsonProcess so it unit-tests without spawning; the real ClaudeStreamJsonProcess wraps Process.start. Not yet wired into the pane — the claude_pane integration (replace the tmux/PTY spawn + TranscriptReader feed, route input through send) and live verification are the next step. T-165. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>