Repository navigation
fix: bump claude-code-headless for stale-flow watchdog - #38
Merged
Merged
Conversation
Picks up Juliusolsson05/claude-code-headless#5, which adds a 30s watchdog to ClaudeProxyAdapter.activeStreamingFlowId. Without that fix, a single severed SSE stream pins the active-flow lock forever and every subsequent flow gets emitted as flow_ignored — the renderer's semantic phase never transitions out of `submitting` so the live "Sending..." indicator pins on a ghost turn. Captured in debug bundle 2026-05-01T10-07-21-3357bfc7: a stuck flow held the lock for 14+ hours before being noticed. JSONL fallback kept the feed working (new turns rendered) but the live indicator was permanently stuck on a mid-response cutoff. Submodule-only bump — no cc-shell code changes. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2 tasks
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
Submodule pointer bump that pulls in Juliusolsson05/claude-code-headless#5 — the 30s watchdog on `ClaudeProxyAdapter.activeStreamingFlowId`.
Why
`activeStreamingFlowId` is the proxy's active-flow lock. It's set on first SSE chunk and was only released by an explicit `response-end` transport event. If the SSE stream is severed mid-response (network blip, proxy disconnect), no `response-end` arrives, the lock stays held forever, every later flow gets `flow_ignored`, and the renderer's live "Sending…" indicator pins on a ghost turn that never finalizes.
Captured in debug bundle `~/.config/cc-shell/debug-bundles/2026-05-01T10-07-21-3357bfc7`:
JSONL fallback kept the feed itself working (new turns rendered), but every semantic phase event was being silently dropped.
What this PR contains
Just the submodule bump. Zero cc-shell source changes.
The actual code fix is in the headless PR.
Merge order
Merge headless#5 first. This PR points at a commit on a fix branch in the headless repo; merging this before #5 lands would point cc-shell at a non-main commit.
Test plan
🤖 Generated with Claude Code