Skip to content

Provider stream dies silently mid-run after a tool batch (GLM-5.3 via nvidia, 1.18.34) — session hangs forever, no error #53083

Closed as not planned

Description

@ospsmedia

Description

Provider stream silently dies mid-run (after a tool batch), leaving the session running forever with no error. Two clean repros, same evening, same signature.

Environment

  • opencode 1.18.34 (latest release, opencode serve on port 4096, WSL2 Ubuntu 22 on Windows 11)
  • Provider: nvidia (NVIDIA NIM), model z-ai/glm-5.3
  • Client: custom harness consuming the HTTP API + SSE /event stream (session created via POST /session, prompt via POST /session/{id}/prompt_async, events via GET /event)

Signature (identical in both repros):

  1. Session works normally for several steps — each assistant step with tool calls (bash/read/glob) completes in seconds, tool results stream back, message.part.updated events flow.
  2. Then a step issues a small tool batch (2 calls: read + bash). One tool result returns (bash completes — ✓ event arrives). The other (read) stays pending.
  3. From that moment: zero events, zero parts, no error, no retry. The session stays "running" indefinitely. No stream error in the log, nothing.
  4. Server-side POST /session/{id}/abort recovers it; the next prompt in the same session (or a new session) goes through fine — every retry so far has succeeded.

Repro 1 (2026-10-03 20:49 → 21:19 local): 4 steps in 18 s, then the described tool batch at +2 min, then 28 minutes of silence until our 30-min watchdog aborted it. Aborted read part shows "Tool execution aborted" only after the abort.

Repro 2 (21:49 → 21:57): 3 steps in ~2 min, same batch shape, 6.5 min of silence when we cancelled manually.

Relevant observations

Ask

  • Enforce an inter-chunk / first-chunk timeout on the provider stream and terminate the session turn with a hard error instead of hanging silently.
  • Or expose a way to detect a dead stream from the event stream, so clients can self-heal without a fixed timeout guess.

Happy to provide DB part timelines (we have precise per-part timestamps for both repros) if useful.

Plugins

None.

OpenCode version

1.18.34

Steps to reproduce

  1. opencode serve (1.18.34) with a GLM-5.3 model (provider nvidia).
  2. Drive it via the HTTP API: create session, prompt_async, consume GET /event.
  3. Issue a broad discovery-style prompt (ours: "where were we in the project?" / "list all objects in the project") that triggers multi-step tool use including parallel read+bash.
  4. Observe: activity flows, then a tool batch where one result returns and the other never does; no further events arrive; session stays busy indefinitely.

Screenshot and/or share link

N/A (headless client; can provide part timelines from opencode.db on request)

Operating System

Linux (WSL2 Ubuntu 22.04 on Windows 11)

Terminal

N/A (HTTP API client)

Activity

  1. github-actions commented on Oct 4, 2026

    @github-actions
    Contributor

    This issue may overlap with or be related to existing reports of silent stream stalls:

    • #43007: proxy gateway SSE stream hangs silently with zero chunks.
    • #48675: provider stream stalls with no chunks, timeout, retry, or error during a run.
    • #37580: silently dropped SSE stream leaves sessions/subagents hanging indefinitely.
    • #33028: the next model stream hangs indefinitely after a quick bash tool call.
    • #49880: GLM-family reasoning-stream hang; its reported busy-loop behavior differs, but the model-stream symptom may be related.
  2. thdxr commented on Oct 11, 2026

    @thdxr
    Member

    Thanks for the report! OpenCode 2.0 is now out and development is focused on V2, so we're closing issues filed against OpenCode 1. Please upgrade (opencode upgrade --major, details: https://anoma.ly/notes/opencode-2-0), and if this is still relevant on 2.0, reopen this issue or open a new one with your 2.0 version.

    — from 𝕺𝖕𝖊𝖓𝕮𝖔𝖉𝖊

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

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions