You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Severe latency + aborted streams on opencode-go (Console Go) — streams hang for minutes and fail with "other side closed" / "Endpoint is unavailable" #52215
I've been unable to work for most of the last day because requests through the built-in opencode-go provider hang for minutes and then abort. Full evidence below.
Environment
opencode 1.15.13 (npm global), Windows 11 x64, Brazil (UTC-3)
stream errors by hour (UTC) across 29/09 → 30/09: 14Z 1 · 18Z 2 · 19Z 3 · 20Z 8 · 21Z 5 · 22Z 4 · 23Z 13 · 00Z 6 · 01Z 6 · 02Z 14 · 03Z 6 — sustained all day, not a single blip.
Sample log lines
timestamp=2026-09-30T03:31:05.826Z level=ERROR message="stream error" providerID=opencode-go modelID=deepseek-v4.1-flash session.id=ses_... error.error="AI_APICallError: Cannot connect to API: other side closed (cause: SocketError: other side closed)"
timestamp=2026-09-30T03:36:08.554Z level=ERROR message="stream error" providerID=opencode-go modelID=deepseek-v4.1-flash session.id=ses_... error.error="ProviderHeaderTimeoutError: Provider response headers timed out after 300000ms"
timestamp=2026-09-30T03:25:50.675Z level=ERROR message="stream error" providerID=opencode-go modelID=deepseek-v4.1-flash session.id=ses_... error.error="AI_APICallError: Cannot connect to API: other side closed (cause: SocketError: other side closed)"
Wait measurement example: "message=stream providerID=opencode-go modelID=deepseek-v4.1-flash" at 03:31:08Z → next event 300 s later.
What I tried
Restarting opencode — same behavior before/after.
A different project/session — same behavior.
Switching opencode to the openrouter provider with the same models — works normally (fast responses, no aborts) while opencode-go fails. So this does not look like my network/ISP, and OpenRouter itself is reachable and fast.
Impact
Effectively unusable: minutes per response plus frequent aborts, for almost a full working day.
Request
Could you check the opencode-go / Console Go gateway (routing/health) for the last ~24 h, especially from South America — for deepseek-v4.1-flash and the free models? Is there an incident or a known issue? Any workaround besides using the OpenRouter provider?
I traced the Go chat route into the gateway handler. It forwards caller cancellation upstream and supports bounded provider failover, but that failover depends on the deployed model's fallback/sticky settings. The actual routing comes from deployment model configuration, rather than a checked-in mapping for deepseek-v4.1-flash.
The reported Endpoint is unavailable message is an upstream response, while DNS failures, socket resets, and the 300-second header timeout represent different failure points. This source inspection does not reproduce the incident or establish a gateway-code cause.
Could a maintainer correlate the supplied September 29–30 UTC timestamps/Brazil requests with the selected upstream endpoint and its health/status, and share the non-secret routing details for this model (whether fallback is configured and whether stickiness is strict or preferred)? Whether those requests never received headers or instead lost an established response stream would help distinguish routing/failover behavior from an upstream stream failure. The working OpenRouter comparison is useful, but may select a different upstream endpoint.
First of all, thank you very much for your response!
I have some important information to add:
I’m still having this problem; there are times when it gets worse and
others when it’s not as bad, but it’s hard to work this way.
What I’ve noticed is that some calls either don’t get answered or get
canceled. The duration varies—some calls stay on hold for quite a while
before being ended (“other side closed”), while others are ended more
quickly. However, once the call connects, it no longer freezes and stays
smooth throughout the call, even if it’s a long one.
Since this was really affecting my work and I didn’t find anyone else
reporting the same problem—at least not with the same severity—I thought
about using a different network, so I connected my PC via my cell phone’s
data connection instead of my fiber ISP. Immediately after that, everything
worked perfectly.
Clearly, there’s something related to the routing through the fiber ISP,
but it happens exclusively with calls from the Go and Zen models;
OpenRouter works without any issues. All my other services work fine, too.
I turned off the router for a while to refresh the IP address from the ISP,
but it didn’t help—even with a new IP, as long as I connect through my
fiber ISP, the problem persists.
This started happening on September 29, 2026. Before that, nothing like
this had ever happened; everything had always run smoothly and without any
problems.
Is there anything I can do to fix this? If you need more information, I’m
here to help.
Thanks
Em qua., 30 de set. de 2026 às 21:35, Dante ***@***.***>
escreveu:
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.
Activity
github-actions commentedon Sep 30, 2026
This issue might be a duplicate of existing issues. Please check:
Dante-dan commentedon Oct 1, 2026
I traced the Go chat route into the gateway handler. It forwards caller cancellation upstream and supports bounded provider failover, but that failover depends on the deployed model's fallback/sticky settings. The actual routing comes from deployment model configuration, rather than a checked-in mapping for
deepseek-v4.1-flash.The reported
Endpoint is unavailablemessage is an upstream response, while DNS failures, socket resets, and the 300-second header timeout represent different failure points. This source inspection does not reproduce the incident or establish a gateway-code cause.Could a maintainer correlate the supplied September 29–30 UTC timestamps/Brazil requests with the selected upstream endpoint and its health/status, and share the non-secret routing details for this model (whether fallback is configured and whether stickiness is strict or preferred)? Whether those requests never received headers or instead lost an established response stream would help distinguish routing/failover behavior from an upstream stream failure. The working OpenRouter comparison is useful, but may select a different upstream endpoint.
bstorm-solucoes commentedon Oct 1, 2026
thdxr commentedon Oct 11, 2026
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 𝕺𝖕𝖊𝖓𝕮𝖔𝖉𝖊