fix(opencode): retry xAI capacity stream errors (#43640)

Co-authored-by: rekram1-node <rekram1-node@users.noreply.github.com>
This commit is contained in:
opencode-agent[bot]
2026-08-20 09:29:30 -05:00
committed by GitHub
parent b155b15694
commit 71d08e94d5
4 changed files with 35 additions and 0 deletions
+7
View File
@@ -144,6 +144,13 @@ export function parseStreamError(input: unknown): ParsedStreamError | undefined
responseBody,
}
}
return {
type: "api_error",
message: typeof body?.error?.message === "string" ? body.error.message : "Server error.",
isRetryable: true,
responseBody,
}
}
export type ParsedAPICallError =
+1
View File
@@ -37,6 +37,7 @@ const RETRYABLE_MESSAGE_PATTERNS = [
/terminated|fetch failed|failed to fetch|network error|upstream connect|connection error|connection refused|connection lost|socket connection was closed|socket hang up|reset before headers|getaddrinfo|enotfound|eai_again|econnrefused|econnreset|etimedout/i,
/^timeout$|\b(?:request|response|connection|network|stream|read) (?:timeout|timed out|time out)\b/i,
/try your request again|retry your request|resource exhausted|resource_exhausted/i,
/\btry again (?:later|in\b)|\b(?:currently|temporarily) at capacity\b/i,
]
function cap(ms: number) {