Route Failure Classifier (routing/failure-classifier.ts)

claude-code-router · packages/core/src/routing/failure-classifier.ts · typescript · MIT
ai, tag:routing, tag:fallback, tag:status, tag:retry, tag:classification

Classifies route failures and determines fallback behavior based on status codes

// Source: https://github.com/musistudio/claude-code-router | License: MIT | Copyright 2025 musistudio
// Provided via justclaw.it.com; keep this notice with the code.
import type { RouterFallbackMode } from "@ccr/core/contracts/app";

export type RouteFailureClass = "client" | "rate-limit" | "retryable" | "server";

export type RouteFailureDecision = {
  failureClass: RouteFailureClass;
  shouldFallback: boolean;
};

export function classifyRouteFailure(statusCode: number, mode: RouterFallbackMode): RouteFailureDecision {
  const failureClass = classifyStatus(statusCode);
  return {
    failureClass,
    shouldFallback: mode === "model-chain"
      ? statusCode >= 400
      : failureClass === "retryable" || failureClass === "rate-limit" || failureClass === "server"
  };
}

function classi

... (truncated -- full source via MCP)

See the full source, get the GitHub permalink, and search for more like it.

Get a free API key