Skip to content

fix(stream): fail idle-escape turn with diagnostic instead of silent completion - #159

Merged
LeXwDeX merged 4 commits into
mainfrom
dev
Aug 1, 2026
Merged

fix(stream): fail idle-escape turn with diagnostic instead of silent completion#159
LeXwDeX merged 4 commits into
mainfrom
dev

Conversation

@LeXwDeX

@LeXwDeX LeXwDeX commented Aug 1, 2026

Copy link
Copy Markdown
Owner

Fixes the idle-escape in RunStreamTransport.poll to fail a turn with a diagnostic error instead of silently reporting it as a successful empty turn when the server never starts a drain. Also raises the threshold from 2s to 10s. Companion cleanup in workflows.ts drops the config.name → title fallback that conflated two distinct concepts.

Fixes the only verified finding from the post-merge review (H3 mechanism confirmed, failure-mode quality upgraded). C1 (worker.fatal postMessage) was empirically disproved — see PR #158 body for the 3/3 Bun worker reproduction.

CI: Typecheck + Unit Tests + E2E (linux + windows) gates apply.

LeXwDeX and others added 3 commits August 1, 2026 09:37
…completion

The idle-escape threshold in RunStreamTransport.poll resolved the turn's
deferred as success after 8 consecutive idle reads, reporting a turn that
never ran as an ordinary empty success — a silent wrong answer worse than
the hang the escape exists to break. Fail the deferred with a diagnostic
error instead, scoped to this turn only (state.fault would poison every
later prompt on the transport). Also raise the threshold from 8 to 40
ticks (2s → 10s) to widen the margin over the admission-to-busy latency.

workflows.ts: drop the config.name → title fallback. name is a config
field distinct from Entry.name (the filename); using it as a title
fallback conflated two concepts and made the title source ambiguous.
fix(stream): fail idle-escape turn with diagnostic instead of silent completion
The previous dev run's Unit Tests (linux) hung at the HttpAPI Exerciser
worktree.create step and was cancelled; the cancelled conclusion is
blocking PR #159's merge into main even though the PR's own CI passed
all required checks. Empty commit to force a fresh green run.
chore(ci): retrigger dev CI to clear stale cancelled check
@LeXwDeX
LeXwDeX merged commit e8b4149 into main Aug 1, 2026
15 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant