fix(model): treat quota errors as rate limits

This commit is contained in:
CI
2026-01-05 19:16:38 +01:00
committed by Peter Steinberger
parent c627efce3e
commit d9cdf3b8ac
2 changed files with 12 additions and 1 deletions

View File

@@ -26,6 +26,14 @@ describe("isRateLimitAssistantError", () => {
expect(isRateLimitAssistantError(msg)).toBe(true);
});
it("detects quota exceeded messages", () => {
const msg = asAssistant({
errorMessage:
"You exceeded your current quota, please check your plan and billing details. For more information on this error, read the docs: https://platform.openai.com/docs/guides/error-codes/api-errors.",
});
expect(isRateLimitAssistantError(msg)).toBe(true);
});
it("returns false for non-error messages", () => {
const msg = asAssistant({
stopReason: "end_turn",

View File

@@ -117,7 +117,10 @@ export function isRateLimitAssistantError(
if (!msg || msg.stopReason !== "error") return false;
const raw = (msg.errorMessage ?? "").toLowerCase();
if (!raw) return false;
return /rate[_ ]limit|too many requests|429/.test(raw);
return (
/rate[_ ]limit|too many requests|429/.test(raw) ||
raw.includes("exceeded your current quota")
);
}
function extractSupportedValues(raw: string): string[] {