/** * @license * Copyright 2025 Google LLC * SPDX-License-Identifier: Apache-2.0 */ import { TerminalQuotaError, RetryableQuotaError, } from '../utils/googleQuotaErrors.js'; import { ModelNotFoundError } from '../utils/httpErrors.js'; import type { FailureKind } from './modelPolicy.js'; export function classifyFailureKind(error: unknown): FailureKind { if (error instanceof TerminalQuotaError) { return 'terminal'; } if (error instanceof RetryableQuotaError) { return 'transient'; } if (error instanceof ModelNotFoundError) { return 'not_found'; } return 'unknown'; }