From 6b6f140c42d2bd326644dabcd0786c33aa5f2376 Mon Sep 17 00:00:00 2001 From: Shakker Date: Fri, 1 May 2026 23:19:38 +0100 Subject: [PATCH] refactor: clean manifest catalog mapping --- src/agents/model-catalog.ts | 31 +++++++++++++------ .../tools/manifest-capability-availability.ts | 1 + 2 files changed, 22 insertions(+), 10 deletions(-) diff --git a/src/agents/model-catalog.ts b/src/agents/model-catalog.ts index 627ceeaa99f..e199c5c1a56 100644 --- a/src/agents/model-catalog.ts +++ b/src/agents/model-catalog.ts @@ -136,16 +136,27 @@ export function loadManifestModelCatalog(params: { const plan = planManifestModelCatalogRows({ registry: { plugins: eligiblePlugins }, }); - return plan.rows.map((row) => ({ - id: row.id, - name: row.name, - provider: row.provider, - ...(row.contextWindow ? { contextWindow: row.contextWindow } : {}), - ...(row.contextTokens && !row.contextWindow ? { contextWindow: row.contextTokens } : {}), - ...(typeof row.reasoning === "boolean" ? { reasoning: row.reasoning } : {}), - ...(row.input?.length ? { input: [...row.input] } : {}), - ...(row.compat ? { compat: row.compat } : {}), - })); + return plan.rows.map((row) => { + const entry: ModelCatalogEntry = { + id: row.id, + name: row.name, + provider: row.provider, + }; + const contextWindow = row.contextWindow ?? row.contextTokens; + if (contextWindow) { + entry.contextWindow = contextWindow; + } + if (typeof row.reasoning === "boolean") { + entry.reasoning = row.reasoning; + } + if (row.input?.length) { + entry.input = [...row.input]; + } + if (row.compat) { + entry.compat = row.compat; + } + return entry; + }); } export async function loadModelCatalog(params?: { diff --git a/src/agents/tools/manifest-capability-availability.ts b/src/agents/tools/manifest-capability-availability.ts index 01cd151b3ff..e9c580916c4 100644 --- a/src/agents/tools/manifest-capability-availability.ts +++ b/src/agents/tools/manifest-capability-availability.ts @@ -165,6 +165,7 @@ function metadataKeyForCapabilityContract( case "mediaUnderstandingProviders": return undefined; } + return undefined; } function normalizeBaseUrlForManifestGuard(value: string): string {