summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorSellers Crisp <[email protected]>2025-12-14 12:46:14 -0500
committerGitHub <[email protected]>2025-12-14 11:46:14 -0600
commit92948ed8a49a2701ffa353c93a271a66e9637f99 (patch)
treeec40a7659074ec0c98ccdf08a4707a7a0678c29b
parent6d412d8872adda1e059f284bc591d3928eebeef5 (diff)
downloadopencode-92948ed8a49a2701ffa353c93a271a66e9637f99.tar.gz
opencode-92948ed8a49a2701ffa353c93a271a66e9637f99.zip
feat: add server_error, rate_limit, and no_kv_space retry logic to accommodate Foundry API issues (#5527)
Co-authored-by: Aiden Cline <[email protected]>
-rw-r--r--packages/opencode/src/session/retry.ts6
1 files changed, 6 insertions, 0 deletions
diff --git a/packages/opencode/src/session/retry.ts b/packages/opencode/src/session/retry.ts
index 3cabacdb8..c53bb926a 100644
--- a/packages/opencode/src/session/retry.ts
+++ b/packages/opencode/src/session/retry.ts
@@ -68,6 +68,12 @@ export namespace SessionRetry {
if (json.code === "Some resource has been exhausted") {
return "Provider is overloaded"
}
+ if (json.type === "error" && json.error?.code?.includes("rate_limit")) {
+ return "Rate Limited"
+ }
+ if (json.error?.message?.includes("no_kv_space") || (json.type === "error" && json.error?.type === "server_error")) {
+ return "Provider Server Error"
+ }
} catch {}
}