From 680dd161b40352c8f38f4ae2f1235f4d6389efe3 Mon Sep 17 00:00:00 2001 From: YeonGyu-Kim Date: Tue, 21 Apr 2026 13:29:49 +0900 Subject: [PATCH] fix(model-capabilities): bundle gpt-5.4-mini-fast caps Keep the supplemental OpenAI model available when the bundled snapshot omits it.\nMerge its capabilities at runtime so downstream model resolution can use it. Co-authored-by: Sisyphus --- .../model-capabilities/bundled-snapshot.ts | 11 +++++++++- .../supplemental-entries.ts | 20 +++++++++++++++++++ 2 files changed, 30 insertions(+), 1 deletion(-) create mode 100644 src/shared/model-capabilities/supplemental-entries.ts diff --git a/src/shared/model-capabilities/bundled-snapshot.ts b/src/shared/model-capabilities/bundled-snapshot.ts index 65644a8cf..18ffec737 100644 --- a/src/shared/model-capabilities/bundled-snapshot.ts +++ b/src/shared/model-capabilities/bundled-snapshot.ts @@ -1,5 +1,6 @@ import bundledModelCapabilitiesSnapshotJson from "../../generated/model-capabilities.generated.json" +import { SUPPLEMENTAL_MODEL_CAPABILITIES } from "./supplemental-entries" import type { ModelCapabilitiesSnapshot } from "./types" function normalizeSnapshot( @@ -8,7 +9,15 @@ function normalizeSnapshot( return snapshot as ModelCapabilitiesSnapshot } -const bundledModelCapabilitiesSnapshot = normalizeSnapshot(bundledModelCapabilitiesSnapshotJson) +const normalizedBundledSnapshot = normalizeSnapshot(bundledModelCapabilitiesSnapshotJson) + +const bundledModelCapabilitiesSnapshot: ModelCapabilitiesSnapshot = { + ...normalizedBundledSnapshot, + models: { + ...normalizedBundledSnapshot.models, + ...SUPPLEMENTAL_MODEL_CAPABILITIES, + }, +} export function getBundledModelCapabilitiesSnapshot(): ModelCapabilitiesSnapshot { return bundledModelCapabilitiesSnapshot diff --git a/src/shared/model-capabilities/supplemental-entries.ts b/src/shared/model-capabilities/supplemental-entries.ts new file mode 100644 index 000000000..197d88001 --- /dev/null +++ b/src/shared/model-capabilities/supplemental-entries.ts @@ -0,0 +1,20 @@ +import type { ModelCapabilitiesSnapshotEntry } from "./types" + +export const SUPPLEMENTAL_MODEL_CAPABILITIES: Record = { + "gpt-5.4-mini-fast": { + id: "gpt-5.4-mini-fast", + family: "gpt-mini", + reasoning: true, + temperature: false, + toolCall: true, + modalities: { + input: ["text", "image", "pdf"], + output: ["text"], + }, + limit: { + context: 400000, + input: 272000, + output: 128000, + }, + }, +}