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
In some organizations, LLM limits are configured for a one-minute window rather than a long-term quota. When the provider returns HTTP 400 with a JSON detail containing rate limit exceeded, OpenCode currently treats the response as a terminal processing failure instead of retrying the request.
This stops the current session even though the request may succeed after the one-minute limit window resets.
Steps to reproduce
Configure an organization-managed LLM provider with a one-minute request or token limit.
Send a prompt until the provider limit is reached.
Receive an HTTP 400 response with a JSON body containing a detail field whose value is rate limit exceeded.
Observe that OpenCode stops processing instead of entering the existing retry flow.
Expected behavior
OpenCode should retry this provider-specific HTTP 400 rate-limit response using the existing retry flow, while keeping generic HTTP 400 client errors non-retryable.
The behavior should be opt-in per provider because HTTP 400 rate-limit responses are non-standard:
Activity
github-actions commentedon Aug 3, 2026
This issue might be a duplicate of or related to existing issues. Please check:
fix(opencode): gate provider 400 rate limit retries behind opt-in flag
github-actions commentedon Oct 3, 2026
To stay organized issues are automatically closed after 60 days of no activity. If the issue is still relevant please open a new one.