fix(pi-embedded-helpers): classify exact unknown-no-details error as unknown

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
engineer
2026-04-12 13:58:08 -07:00
committed by Altay
parent 1898b2093f
commit 005cb450e1
2 changed files with 13 additions and 0 deletions

View File

@@ -684,6 +684,12 @@ describe("classifyFailoverReason", () => {
).toBeNull();
});
it("classifies OpenAI Responses unknown-no-details message as unknown", () => {
const message = "Unknown error (no error details in response)";
expect(classifyFailoverReason(message)).toBe("unknown");
expect(isFailoverErrorMessage(message)).toBe(true);
});
it("classifies provider-scoped generic upstream messages", () => {
expect(classifyFailoverReason("An unknown error occurred", { provider: "anthropic" })).toBe(
"timeout",

View File

@@ -668,6 +668,10 @@ function isOpenRouterKeyLimitExceededError(raw: string, provider?: string): bool
);
}
function isExactUnknownNoDetailsError(raw: string): boolean {
return normalizeOptionalLowercaseString(raw)?.trim() === "unknown error (no error details in response)";
}
function classifyFailoverClassificationFromMessage(
raw: string,
provider?: string,
@@ -737,6 +741,9 @@ function classifyFailoverClassificationFromMessage(
if (isCloudCodeAssistFormatError(raw)) {
return toReasonClassification("format");
}
if (isExactUnknownNoDetailsError(raw)) {
return toReasonClassification("unknown");
}
if (isTimeoutErrorMessage(raw)) {
return toReasonClassification("timeout");
}