From e596a7ca33c62e9a573a869e561fc414de8c1743 Mon Sep 17 00:00:00 2001 From: Alex Alaniz Date: Thu, 19 Mar 2026 11:35:49 -0400 Subject: [PATCH] Agents: keep provider normalization shared --- src/agents/model-selection.ts | 72 +++-------------------------------- 1 file changed, 6 insertions(+), 66 deletions(-) diff --git a/src/agents/model-selection.ts b/src/agents/model-selection.ts index 289d9d53290..acc29a32bf9 100644 --- a/src/agents/model-selection.ts +++ b/src/agents/model-selection.ts @@ -16,6 +16,12 @@ import { DEFAULT_MODEL, DEFAULT_PROVIDER } from "./defaults.js"; import type { ModelCatalogEntry } from "./model-catalog.js"; import { normalizeGoogleModelId } from "./model-id-normalization.js"; import { splitTrailingAuthProfile } from "./model-ref-profile.js"; +import { + findNormalizedProviderKey, + findNormalizedProviderValue, + normalizeProviderId, + normalizeProviderIdForAuth, +} from "./provider-id.js"; const log = createSubsystemLogger("model-selection"); @@ -35,72 +41,6 @@ function normalizeAliasKey(value: string): string { return value.trim().toLowerCase(); } -export function normalizeProviderId(provider: string): string { - const normalized = provider.trim().toLowerCase(); - if (normalized === "z.ai" || normalized === "z-ai") { - return "zai"; - } - if (normalized === "opencode-zen") { - return "opencode"; - } - if (normalized === "opencode-go-auth") { - return "opencode-go"; - } - if (normalized === "qwen") { - return "qwen-portal"; - } - if (normalized === "kimi" || normalized === "kimi-code" || normalized === "kimi-coding") { - return "kimi"; - } - if (normalized === "bedrock" || normalized === "aws-bedrock") { - return "amazon-bedrock"; - } - // Backward compatibility for older provider naming. - if (normalized === "bytedance" || normalized === "doubao") { - return "volcengine"; - } - return normalized; -} - -/** Normalize provider ID for auth lookup. Coding-plan variants share auth with base. */ -export function normalizeProviderIdForAuth(provider: string): string { - const normalized = normalizeProviderId(provider); - if (normalized === "volcengine-plan") { - return "volcengine"; - } - if (normalized === "byteplus-plan") { - return "byteplus"; - } - return normalized; -} - -export function findNormalizedProviderValue( - entries: Record | undefined, - provider: string, -): T | undefined { - if (!entries) { - return undefined; - } - const providerKey = normalizeProviderId(provider); - for (const [key, value] of Object.entries(entries)) { - if (normalizeProviderId(key) === providerKey) { - return value; - } - } - return undefined; -} - -export function findNormalizedProviderKey( - entries: Record | undefined, - provider: string, -): string | undefined { - if (!entries) { - return undefined; - } - const providerKey = normalizeProviderId(provider); - return Object.keys(entries).find((key) => normalizeProviderId(key) === providerKey); -} - export function modelKey(provider: string, model: string) { const providerId = provider.trim(); const modelId = model.trim();