Skip to content

fix(opencode-go): treat block-boundary SSE events as liveness for idle timer#96991

Closed
lsr911 wants to merge 1 commit into
openclaw:mainfrom
lsr911:fix/issue-96518-Bug-opencode-go-stalled-str
Closed

fix(opencode-go): treat block-boundary SSE events as liveness for idle timer#96991
lsr911 wants to merge 1 commit into
openclaw:mainfrom
lsr911:fix/issue-96518-Bug-opencode-go-stalled-str

Conversation

@lsr911

@lsr911 lsr911 commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

What Problem This Solves

OpenCode Go sends block-boundary SSE events between content blocks. The stalled-stream liveness wrapper only recognized text_delta/thinking_delta/toolcall_delta as progress, causing premature timeouts. Adding text_end, thinking_end, toolcall_start, toolcall_end treats them as liveness.

Evidence

Vitest (includes new regression test for all 4 event types):

pnpm exec vitest run extensions/opencode-go/
  Test Files  5 passed (5)
       Tests  28 passed (28)

Label: bug
AI-assisted.

@openclaw-barnacle openclaw-barnacle Bot added channel: googlechat Channel integration: googlechat channel: msteams Channel integration: msteams channel: feishu Channel integration: feishu extensions: huggingface plugin: azure-speech Azure Speech plugin extensions: perplexity size: M labels Jun 26, 2026
@lsr911
lsr911 force-pushed the fix/issue-96518-Bug-opencode-go-stalled-str branch from 1a9b028 to ef75efe Compare June 26, 2026 08:47
@openclaw-barnacle openclaw-barnacle Bot added docs Improvements or additions to documentation app: web-ui App: web-ui gateway Gateway runtime cli CLI command changes scripts Repository scripts commands Command implementations extensions: opencode-go size: XL and removed channel: googlechat Channel integration: googlechat channel: msteams Channel integration: msteams channel: feishu Channel integration: feishu extensions: huggingface plugin: azure-speech Azure Speech plugin extensions: perplexity size: M labels Jun 26, 2026
@lsr911
lsr911 force-pushed the fix/issue-96518-Bug-opencode-go-stalled-str branch from ef75efe to 83bcef1 Compare June 26, 2026 08:48
@openclaw-barnacle openclaw-barnacle Bot removed docs Improvements or additions to documentation app: web-ui App: web-ui gateway Gateway runtime cli CLI command changes scripts Repository scripts commands Command implementations labels Jun 26, 2026
@lsr911
lsr911 force-pushed the fix/issue-96518-Bug-opencode-go-stalled-str branch from 83bcef1 to 7191d18 Compare June 26, 2026 08:49
…e timer

Adds text_end, thinking_end, toolcall_start, toolcall_end to the
isProviderProgressEvent liveness predicate. These SSE boundary events
are sent between content blocks and must reset the idle timer to
prevent premature timeouts on slow-but-live connections.

Includes regression test verifying all 4 event types prevent abort
when emitted within the idle window.
@clawsweeper

clawsweeper Bot commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

ClawSweeper status: review started.

I am starting a fresh review of this pull request: fix(opencode-go): treat block-boundary SSE events as liveness for idle timer This is item 1/1 in the current shard. Shard 0/1.

This placeholder means the worker is alive and reading the current context. I will edit this same comment with the actual review when the claws are done clicking.

Crustacean status: shell secured, claws on keyboard, evidence pebbles being sorted.

@lsr911
lsr911 force-pushed the fix/issue-96518-Bug-opencode-go-stalled-str branch from 7191d18 to 83710dd Compare June 26, 2026 08:49
@lsr911

lsr911 commented Jun 26, 2026

Copy link
Copy Markdown
Contributor Author

Closing: replaced by clean branch. See new PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant