summaryrefslogtreecommitdiffhomepage
path: root/packages/api
diff options
context:
space:
mode:
authorAdam Malczewski <[email protected]>2026-05-29 14:24:55 +0900
committerAdam Malczewski <[email protected]>2026-05-29 14:24:55 +0900
commitaa230050f4edb7bfc8d3e4d59d95c68c36264b41 (patch)
treeee9c4b4d2087618f41bf7bdcaed6a145fc0f0125 /packages/api
parent520c9e30cc58b40d3b1ee9e7895f003c4f873206 (diff)
downloaddispatch-aa230050f4edb7bfc8d3e4d59d95c68c36264b41.tar.gz
dispatch-aa230050f4edb7bfc8d3e4d59d95c68c36264b41.zip
fix: refresh agent config on send; widen fallback retry detection
- Refresh agent config from API before sending a message so edits in AgentBuilder (changed keyId/modelId/agentModels) take effect immediately on existing tabs instead of using stale snapshots - Broaden isRetryable check to also match 'usage limit' and 'exhausted' so fallback keys are actually tried on quota errors
Diffstat (limited to 'packages/api')
-rw-r--r--packages/api/src/agent-manager.ts4
1 files changed, 3 insertions, 1 deletions
diff --git a/packages/api/src/agent-manager.ts b/packages/api/src/agent-manager.ts
index 88503f3..9ed2f51 100644
--- a/packages/api/src/agent-manager.ts
+++ b/packages/api/src/agent-manager.ts
@@ -1248,7 +1248,9 @@ export class AgentManager {
const isRetryable =
attemptError.includes("status=429") ||
attemptError.toLowerCase().includes("rate limit") ||
- attemptError.toLowerCase().includes("rate_limit");
+ attemptError.toLowerCase().includes("rate_limit") ||
+ attemptError.toLowerCase().includes("usage limit") ||
+ attemptError.toLowerCase().includes("exhausted");
if (isRetryable && this.modelRegistry && tabAgent.keyId) {
this.modelRegistry.markKeyExhausted(tabAgent.keyId, attemptError);