From a833800b7a516011e77f52b3e50f5e9e69e84cb3 Mon Sep 17 00:00:00 2001 From: Ali Saad <59366979+aliihsaad@users.noreply.github.com> Date: Wed, 22 Jul 2026 15:01:26 +0200 Subject: [PATCH] fix(routing): rank duplicate model ids; make Google discovery not allowlist-bound MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Two related catalog/routing defects surfaced while adding the new Google models. 1. Cross-provider model_id collision. resolveRoutableModel matched on model_id with no platform filter and took a bare .get(), so whichever row had the lowest id won. An aggregator's auto-discovered duplicate (disabled/paid) could shadow a perfectly routable model — 'gemma-4-31b-it' resolved to a disabled BazaarLink row and reported "Model is disabled" even though Google's copy was enabled with keys. Candidates are now ranked: enabled first, then providers holding a usable key, then free, then id. 2. Google discovery was allowlist-bound. GOOGLE_FREE_CHAT_MODELS gated which models the scout could return, so every newly released Google model was structurally invisible. classifyGoogleModel() now surfaces an unrecognised chat model DISABLED and marked paid — visible for review, unable to auto-route or spend — while confirmed-free ids still auto-enable. gemini-3.6-flash and gemini-3.5-flash-lite added to the confirmed-free map. V18 disables the Google Gemma rows: reachable now that the collision is fixed, but it answers with raw chain-of-thought, which is poor behaviour for a model in the auto-route chain. Disabled, not deleted; operators can turn it on. Verified live: gemma-4-31b-it routes to google/gemma-4-31b-it (was 'disabled'), and gemini-3.6-flash / 3.5-flash-lite / 2.5-flash still answer via /v1. 235/235. --- server/dist/db/index.d.ts.map | 2 +- server/dist/db/index.js | 18 ++++ server/dist/db/index.js.map | 2 +- server/dist/services/model-scout.d.ts | 19 ++++ server/dist/services/model-scout.d.ts.map | 2 +- server/dist/services/model-scout.js | 50 +++++++++-- server/dist/services/model-scout.js.map | 2 +- .../src/__tests__/lib/resolve-model.test.ts | 90 +++++++++++++++++++ .../__tests__/services/google-scout.test.ts | 45 ++++++++++ server/src/db/index.ts | 21 +++++ server/src/lib/resolve-model.ts | 18 +++- server/src/services/model-scout.ts | 56 ++++++++++-- 12 files changed, 310 insertions(+), 15 deletions(-) create mode 100644 server/src/__tests__/lib/resolve-model.test.ts create mode 100644 server/src/__tests__/services/google-scout.test.ts diff --git a/server/dist/db/index.d.ts.map b/server/dist/db/index.d.ts.map index bb5a9bf..7459d44 100644 --- a/server/dist/db/index.d.ts.map +++ b/server/dist/db/index.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/db/index.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAWtC,wBAAgB,KAAK,IAAI,QAAQ,CAAC,QAAQ,CAKzC;AAED,wBAAsB,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAmDxE;AAijDD,wBAAgB,gBAAgB,IAAI,MAAM,CAIzC;AAED,wBAAgB,oBAAoB,IAAI,MAAM,CAK7C"} \ No newline at end of file +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/db/index.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAWtC,wBAAgB,KAAK,IAAI,QAAQ,CAAC,QAAQ,CAKzC;AAED,wBAAsB,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAoDxE;AAqkDD,wBAAgB,gBAAgB,IAAI,MAAM,CAIzC;AAED,wBAAgB,oBAAoB,IAAI,MAAM,CAK7C"} \ No newline at end of file diff --git a/server/dist/db/index.js b/server/dist/db/index.js index 1b79c0b..0e57ff8 100644 --- a/server/dist/db/index.js +++ b/server/dist/db/index.js @@ -46,6 +46,7 @@ export async function initDb(dbPath) { migrateModelsV15(db); migrateModelsV16(db); migrateModelsV17(db); + migrateModelsV18(db); seedModelCapabilities(db); // Must follow seedModelCapabilities — that is where the image rows are seeded. flagPaidGoogleModels(db); @@ -1418,6 +1419,23 @@ function migrateModelsV17(db) { }); apply(); } +/** + * V18 (July 2026): retire the Google Gemma rows. + * + * Gemma 4 is free on the Gemini API and — now that the cross-provider model_id + * collision in resolveRoutableModel is fixed — genuinely reachable. It is still + * disabled by default because it answers by emitting raw chain-of-thought + * ("The user said 'say ok'. The user wants me to output...") rather than the + * answer, which is poor behaviour for a model sitting in the auto-route + * fallback chain. Operators can enable it from the dashboard. + * + * Rows are disabled, never deleted. A fresh install never seeds them, so this + * only affects databases that briefly had them enabled. + */ +function migrateModelsV18(db) { + const disable = db.prepare("UPDATE models SET enabled = 0 WHERE platform = 'google' AND model_id IN ('gemma-4-31b-it', 'gemma-4-26b-a4b-it')"); + disable.run(); +} /** * Mark Google models that have no free tier (verified 2026-07-22 against * ai.google.dev pricing — image generation reads "Not available" in the Free diff --git a/server/dist/db/index.js.map b/server/dist/db/index.js.map index 4148eef..12d1673 100644 --- a/server/dist/db/index.js.map +++ b/server/dist/db/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/db/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/db/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/server/dist/services/model-scout.d.ts b/server/dist/services/model-scout.d.ts index 0cb7135..49cf133 100644 --- a/server/dist/services/model-scout.d.ts +++ b/server/dist/services/model-scout.d.ts @@ -26,6 +26,25 @@ export interface DiscoveredModelResult { skippedKnownCount: number; insertedModelIds: number[]; } +export type GoogleModelVerdict = { + include: false; +} | { + include: true; + displayName: string; + enabledByDefault: boolean; + isFree: boolean; +}; +/** + * Decide what to do with a Google model returned by /v1beta/models. + * + * Google's list endpoint carries no pricing, so we cannot classify cost the way + * we do for providers that publish it. Instead of the old behaviour — a + * hardcoded allowlist that made every newly released model structurally + * invisible — an unrecognised chat model is now surfaced DISABLED and marked + * paid. It shows up in the dashboard for review and can never auto-route or + * spend until an operator confirms it. + */ +export declare function classifyGoogleModel(modelId: string, apiDisplayName?: string): GoogleModelVerdict; type DiscoveredModelCapability = 'chat' | 'vision' | 'video'; interface OpenAICompatModelListEntry { id?: string; diff --git a/server/dist/services/model-scout.d.ts.map b/server/dist/services/model-scout.d.ts.map index ad34ed0..686e7c8 100644 --- a/server/dist/services/model-scout.d.ts.map +++ b/server/dist/services/model-scout.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"model-scout.d.ts","sourceRoot":"","sources":["../../src/services/model-scout.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"model-scout.d.ts","sourceRoot":"","sources":["../../src/services/model-scout.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/server/dist/services/model-scout.js b/server/dist/services/model-scout.js index 2f65644..7306504 100644 --- a/server/dist/services/model-scout.js +++ b/server/dist/services/model-scout.js @@ -15,14 +15,51 @@ const CATALOG_SYNC_PLATFORMS = new Set([ ]); const MAX_DISCOVERED_PER_PLATFORM = 100; const GOOGLE_MODELS_API_BASE = 'https://generativelanguage.googleapis.com/v1beta'; +/** Google chat models confirmed free on the Gemini API (ai.google.dev pricing: + * Free Tier column reads "Free of charge"). These auto-enable on discovery. */ const GOOGLE_FREE_CHAT_MODELS = new Map([ + ['gemini-3.6-flash', 'Gemini 3.6 Flash'], ['gemini-3.5-flash', 'Gemini 3.5 Flash'], + ['gemini-3.5-flash-lite', 'Gemini 3.5 Flash-Lite'], ['gemini-3-flash-preview', 'Gemini 3 Flash Preview'], ['gemini-2.5-pro', 'Gemini 2.5 Pro'], ['gemini-2.5-flash', 'Gemini 2.5 Flash'], ['gemini-3.1-flash-lite', 'Gemini 3.1 Flash-Lite'], ['gemini-2.5-flash-lite', 'Gemini 2.5 Flash-Lite'], ]); +/** Model families that are not chat completions — discovering them would only + * add catalog noise (embeddings need provider support; video/music/robotics + * are different surfaces entirely). */ +const GOOGLE_NON_CHAT_PATTERN = /embedding|^veo-|^lyria-|^imagen|robotics|computer-use|deep-research|antigravity|^nano-banana/i; +/** + * Decide what to do with a Google model returned by /v1beta/models. + * + * Google's list endpoint carries no pricing, so we cannot classify cost the way + * we do for providers that publish it. Instead of the old behaviour — a + * hardcoded allowlist that made every newly released model structurally + * invisible — an unrecognised chat model is now surfaced DISABLED and marked + * paid. It shows up in the dashboard for review and can never auto-route or + * spend until an operator confirms it. + */ +export function classifyGoogleModel(modelId, apiDisplayName) { + const knownFree = GOOGLE_FREE_CHAT_MODELS.get(modelId); + if (knownFree) { + return { + include: true, + displayName: apiDisplayName ?? knownFree, + enabledByDefault: true, + isFree: true, + }; + } + if (GOOGLE_NON_CHAT_PATTERN.test(modelId)) + return { include: false }; + return { + include: true, + displayName: apiDisplayName ?? modelId, + enabledByDefault: false, + isFree: false, + }; +} function isZeroPrice(value) { if (value == null) return false; @@ -64,15 +101,18 @@ async function discoverGoogleModels(apiKey, knownSet) { continue; if (!entry.supportedGenerationMethods?.includes('generateContent')) continue; - const displayName = GOOGLE_FREE_CHAT_MODELS.get(modelId); - if (!displayName) + const verdict = classifyGoogleModel(modelId, entry.displayName); + if (!verdict.include) continue; discoveries.push({ platform: 'google', modelId, - displayName: entry.displayName ?? displayName, - enabledByDefault: true, - capabilities: ['chat', 'vision', 'video'], + displayName: verdict.displayName, + enabledByDefault: verdict.enabledByDefault, + isFree: verdict.isFree, + // Vision/video are only claimed for models we have actually confirmed; + // an unrecognised model gets plain chat until an operator reviews it. + capabilities: verdict.enabledByDefault ? ['chat', 'vision', 'video'] : ['chat'], }); } return discoveries; diff --git a/server/dist/services/model-scout.js.map b/server/dist/services/model-scout.js.map index 2a9db5d..803b87a 100644 --- a/server/dist/services/model-scout.js.map +++ b/server/dist/services/model-scout.js.map @@ -1 +1 @@ -{"version":3,"file":"model-scout.js","sourceRoot":"","sources":["../../src/services/model-scout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAGxD,MAAM,iBAAiB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,aAAa;AA+BvD,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAW;IAC/C,aAAa;IACb,QAAQ;IACR,YAAY;IACZ,MAAM;IACN,aAAa;IACb,UAAU;IACV,YAAY;CACb,CAAC,CAAC;AAEH,MAAM,2BAA2B,GAAG,GAAG,CAAC;AACxC,MAAM,sBAAsB,GAAG,kDAAkD,CAAC;AAElF,MAAM,uBAAuB,GAAG,IAAI,GAAG,CAAiB;IACtD,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IACxC,CAAC,wBAAwB,EAAE,wBAAwB,CAAC;IACpD,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IACpC,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IACxC,CAAC,uBAAuB,EAAE,uBAAuB,CAAC;IAClD,CAAC,uBAAuB,EAAE,uBAAuB,CAAC;CACnD,CAAC,CAAC;AA2BH,SAAS,WAAW,CAAC,KAAyB;IAC5C,IAAI,KAAK,IAAI,IAAI;QAAE,OAAO,KAAK,CAAC;IAChC,OAAO,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AAC7B,CAAC;AAED;+EAC+E;AAC/E,MAAM,UAAU,yBAAyB,CAAC,KAAsE;IAC9G,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IAC1F,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IACxB,MAAM,UAAU,GAAG,CAAC,KAAK,CAAC,cAAc,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACzF,IAAI,CAAC,UAAU;QAAE,OAAO,KAAK,CAAC;IAC9B,MAAM,OAAO,GAAG,KAAK,CAAC,YAAY,EAAE,iBAAiB,IAAI,CAAC,MAAM,CAAC,CAAC;IAClE,OAAO,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,OAAO,IAAI,CAAC,KAAK,OAAO,CAAC,CAAC;AACxF,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAiC;IAC3D,MAAM,eAAe,GAAG,KAAK,CAAC,YAAY,EAAE,gBAAgB,IAAI,EAAE,CAAC;IACnE,IAAI,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC;QAAE,OAAO,IAAI,CAAC;IACtF,OAAO,KAAK,CAAC,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;AAChF,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAiC;IAC3D,MAAM,eAAe,GAAG,KAAK,CAAC,YAAY,EAAE,gBAAgB,IAAI,EAAE,CAAC;IACnE,IAAI,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC;QAAE,OAAO,IAAI,CAAC;IACtF,OAAO,KAAK,CAAC,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;AAChF,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,MAAc,EAAE,QAAqB;IACvE,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,sBAAsB,eAAe,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC9F,IAAI,CAAC,GAAG,CAAC,EAAE;QAAE,OAAO,EAAE,CAAC;IAEvB,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAA6B,CAAC;IACzD,MAAM,WAAW,GAA+B,EAAE,CAAC;IAEnD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;QACtC,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;QACrD,IAAI,CAAC,OAAO,IAAI,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;YAAE,SAAS;QAChD,IAAI,CAAC,KAAK,CAAC,0BAA0B,EAAE,QAAQ,CAAC,iBAAiB,CAAC;YAAE,SAAS;QAE7E,MAAM,WAAW,GAAG,uBAAuB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACzD,IAAI,CAAC,WAAW;YAAE,SAAS;QAE3B,WAAW,CAAC,IAAI,CAAC;YACf,QAAQ,EAAE,QAAQ;YAClB,OAAO;YACP,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,WAAW;YAC7C,gBAAgB,EAAE,IAAI;YACtB,YAAY,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC;SAC1C,CAAC,CAAC;IACL,CAAC;IAED,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,SAAiB;IAC5D,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;IAEnB,MAAM,KAAK,GAAG,EAAE,CAAC,OAAO,CAAC;;;;;;;GAOxB,CAAC,CAAC,GAAG,CAAC,SAAS,CASH,CAAC;IAEd,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO;YACL,SAAS;YACT,QAAQ,EAAE,SAAqB;YAC/B,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,OAAO;YACf,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACrC,SAAS,EAAE,uBAAuB;YAClC,iBAAiB,EAAE,KAAK;SACzB,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAoB,CAAC;IAC5C,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC;IAE/B,sCAAsC;IACtC,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;QAC1C,OAAO;YACL,SAAS;YACT,QAAQ;YACR,OAAO;YACP,MAAM,EAAE,SAAS;YACjB,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACrC,SAAS,EAAE,gDAAgD;YAC3D,iBAAiB,EAAE,KAAK;SACzB,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,EAAG,EAAE,KAAK,CAAC,QAAS,CAAC,CAAC;IACxE,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;IAEvC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO;YACL,SAAS;YACT,QAAQ;YACR,OAAO;YACP,MAAM,EAAE,OAAO;YACf,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACrC,SAAS,EAAE,oCAAoC,QAAQ,EAAE;YACzD,iBAAiB,EAAE,KAAK;SACzB,CAAC;IACJ,CAAC;IAED,IAAI,CAAC;QACH,kEAAkE;QAClE,mEAAmE;QACnE,MAAM,aAAa,GAAG,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QAEjE,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,cAAc,CAAC,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE;YACxE,UAAU,EAAE,CAAC;YACb,WAAW,EAAE,CAAC;SACf,CAAC,CAAC;QAEH,mDAAmD;QACnD,MAAM,KAAK,GAAsB;YAC/B,SAAS;YACT,QAAQ;YACR,OAAO;YACP,MAAM,EAAE,MAAM;YACd,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACrC,iBAAiB,EAAE,IAAI;SACxB,CAAC;QAEF,EAAE,CAAC,OAAO,CAAC;;;;;;;;KAQV,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAE1F,OAAO,KAAK,CAAC;IAEf,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,IAAI,MAAM,GAAgC,OAAO,CAAC;QAClD,IAAI,iBAAiB,GAAG,KAAK,CAAC;QAE9B,kCAAkC;QAClC,MAAM,OAAO,GAAG,GAAG,CAAC,OAAiB,CAAC;QAEtC,IAAI,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,OAAO,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YAC9E,MAAM,GAAG,cAAc,CAAC;YACxB,iBAAiB,GAAG,IAAI,CAAC,CAAC,8CAA8C;QAC1E,CAAC;aAAM,IAAI,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,OAAO,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YACpF,MAAM,GAAG,YAAY,CAAC;QACxB,CAAC;aAAM,IAAI,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YAChE,MAAM,GAAG,OAAO,CAAC;QACnB,CAAC;QAED,MAAM,KAAK,GAAsB;YAC/B,SAAS;YACT,QAAQ;YACR,OAAO;YACP,MAAM;YACN,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACrC,SAAS,EAAE,OAAO;YAClB,iBAAiB;SAClB,CAAC;QAEF,EAAE,CAAC,OAAO,CAAC;;;;;;;;KAQV,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI,EAAE,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAEnH,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;mEACmE;AACnE,MAAM,UAAU,uBAAuB,CAAC,EAA4B;IAClE,MAAM,QAAQ,GAAG,cAAc,CAAC,EAAE,CAAC,CAAC;IACpC,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC;8CACoB,QAAQ,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE;GAC5E,CAAC,CAAC,GAAG,EAAsB,CAAC;IAC7B,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AAC7B,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,OAAO,GAAG,IAAI;IACjD,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;IACnB,MAAM,GAAG,GAAG,uBAAuB,CAAC,EAAE,CAAC,CAAC;IACxC,OAAO,CAAC,GAAG,CAAC,yBAAyB,GAAG,CAAC,MAAM,YAAY,CAAC,CAAC;IAC7D,MAAM,OAAO,GAAwB,EAAE,CAAC;IAExC,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;QACrB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,sBAAsB,CAAC,EAAE,CAAC,CAAC;YAChD,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACrB,OAAO,CAAC,GAAG,CAAC,gBAAgB,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,OAAO,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;YAEpF,oDAAoD;YACpD,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;gBAChB,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;YACjD,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,gDAAgD,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,gCAAgC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,yBAAyB,CAAC,CAAC;IACxI,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB;IACrC,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;IACnB,MAAM,WAAW,GAA+B,EAAE,CAAC;IAEnD,MAAM,SAAS,GAAG,EAAE,CAAC,OAAO,CAAC;;GAE5B,CAAC,CAAC,GAAG,EAA4B,CAAC;IAEnC,KAAK,MAAM,EAAE,QAAQ,EAAE,IAAI,SAAS,EAAE,CAAC;QACrC,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAoB,CAAC,CAAC;QACnD,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CAAC;;;;KAIzB,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAwE,CAAC;QAExF,IAAI,CAAC,MAAM;YAAE,SAAS;QAEtB,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;QACzE,MAAM,WAAW,GAAG,EAAE,CAAC,OAAO,CAAC,gDAAgD,CAAC,CAAC,GAAG,CAAC,QAAQ,CAA2B,CAAC;QACzH,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;QAE3D,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAC1B,IAAI,CAAC;gBACH,WAAW,CAAC,IAAI,CAAC,GAAG,MAAM,oBAAoB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;YACpE,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,IAAI,CAAC,gDAAgD,EAAE,GAAG,CAAC,CAAC;YACtE,CAAC;YACD,SAAS;QACX,CAAC;QAED,IAAI,CAAC,QAAQ,IAAI,OAAQ,QAAgB,CAAC,OAAO,KAAK,QAAQ;YAAE,SAAS;QAEzE,MAAM,OAAO,GAAI,QAAgB,CAAC,OAAiB,CAAC;QAEpD,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,SAAS,EAAE;gBAC3C,OAAO,EAAE,EAAE,eAAe,EAAE,UAAU,MAAM,EAAE,EAAE;aACjD,CAAC,CAAC;YAEH,IAAI,CAAC,GAAG,CAAC,EAAE;gBAAE,SAAS;YAEtB,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAA6C,CAAC;YAEzE,mEAAmE;YACnE,mEAAmE;YACnE,uEAAuE;YACvE,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;gBAC9B,iBAAiB,CAAC,EAAE,EAAE,QAAoB,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAA+E,CAAC,CAAC;YAC/I,CAAC;YAED,IAAI,qBAAqB,GAAG,CAAC,CAAC;YAC9B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC;gBACpC,IAAI,CAAC,KAAK,CAAC,EAAE;oBAAE,SAAS;gBACxB,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;oBAAE,SAAS;gBAErC,uEAAuE;gBACvE,oEAAoE;gBACpE,0DAA0D;gBAC1D,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,EAAE,MAAM,IAAI,IAAI,IAAI,KAAK,CAAC,OAAO,EAAE,UAAU,IAAI,IAAI,CAAC;gBACtF,MAAM,cAAc,GAAG,UAAU;uBAC5B,WAAW,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;gBAClF,MAAM,YAAY,GAAG,2CAA2C,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,EAAE,IAAI,KAAK,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,IAAI,cAAc,CAAC;gBAE3H,IAAI,QAAQ,KAAK,YAAY,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC;oBAAE,SAAS;gBAE7E,MAAM,aAAa,GAAG,YAAY,IAAI,sBAAsB,CAAC,GAAG,CAAC,QAAoB,CAAC,CAAC;gBACvF,IAAI,CAAC,aAAa;oBAAE,SAAS;gBAE7B,MAAM,YAAY,GAAgC,CAAC,MAAM,CAAC,CAAC;gBAC3D,IAAI,QAAQ,KAAK,YAAY,IAAI,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC3D,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC9B,CAAC;gBACD,IAAI,QAAQ,KAAK,YAAY,IAAI,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC3D,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC7B,CAAC;gBAED,WAAW,CAAC,IAAI,CAAC;oBACf,QAAQ,EAAE,QAAoB;oBAC9B,OAAO,EAAE,KAAK,CAAC,EAAE;oBACjB,WAAW,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,EAAE;oBACnC,gBAAgB,EAAE,YAAY;oBAC9B,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI;oBAC1C,YAAY;iBACb,CAAC,CAAC;gBAEH,qBAAqB,EAAE,CAAC;gBACxB,IAAI,qBAAqB,IAAI,2BAA2B;oBAAE,MAAM;YAClE,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC,0CAA0C,QAAQ,GAAG,EAAE,GAAG,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IAED,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B;IAC/C,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;IACnB,MAAM,UAAU,GAAG,MAAM,iBAAiB,EAAE,CAAC;IAE7C,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO;YACL,UAAU,EAAE,EAAE;YACd,QAAQ,EAAE,EAAE;YACZ,YAAY,EAAE,EAAE;YAChB,aAAa,EAAE,CAAC;YAChB,iBAAiB,EAAE,CAAC;YACpB,gBAAgB,EAAE,EAAE;SACrB,CAAC;IACJ,CAAC;IAED,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACrC,MAAM,eAAe,GAAG,eAAe,GAAG,EAAE,CAAC;IAE7C,MAAM,WAAW,GAAG,EAAE,CAAC,OAAO,CAAC;;;;;;GAM9B,CAAC,CAAC;IAEH,MAAM,cAAc,GAAG,EAAE,CAAC,OAAO,CAAC;;;;GAIjC,CAAC,CAAC;IAEH,MAAM,cAAc,GAAG,EAAE,CAAC,OAAO,CAAC;;;GAGjC,CAAC,CAAC;IAEH,MAAM,kBAAkB,GAAG,EAAE,CAAC,OAAO,CAAC;;;GAGrC,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,EAAE,CAAC,OAAO,CAAC;;;GAGhC,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,EAAE,CAAC,OAAO,CAAC;;GAE7B,CAAC,CAAC;IAEH,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,oEAAoE,CAAC,CAAC,GAAG,EAA0B,CAAC;IAC3H,IAAI,YAAY,GAAG,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC;IACpC,MAAM,QAAQ,GAA+B,EAAE,CAAC;IAChD,MAAM,gBAAgB,GAAa,EAAE,CAAC;IACtC,MAAM,YAAY,GAA+B,EAAE,CAAC;IAEpD,MAAM,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE;QAC7B,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACnC,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,OAAO,CAA+B,CAAC;YACrG,IAAI,QAAQ,EAAE,CAAC;gBACb,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC7B,SAAS;YACX,CAAC;YAED,MAAM,gBAAgB,GAAG,GAAG,CAAC;YAC7B,MAAM,SAAS,GAAG,GAAG,CAAC;YACtB,MAAM,UAAU,GAAG,eAAe,CAAC,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,WAAW,EAAE,gBAAgB,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;YACnH,MAAM,OAAO,GAAG,SAAS,CAAC,gBAAgB,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAE7D,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,CAC5B,SAAS,CAAC,QAAQ,EAClB,SAAS,CAAC,OAAO,EACjB,SAAS,CAAC,WAAW,EACrB,gBAAgB,EAChB,SAAS,EACT,OAAO,EACP,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,iBAAiB,EACjB,IAAI,EACJ,OAAO,EACP,SAAS,CAAC,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CACnC,CAAC;YAEF,IAAI,MAAM,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;gBACzB,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC7B,SAAS;YACX,CAAC;YAED,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;YACjD,cAAc,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,SAAS,CAAC,CAAC;YACzF,cAAc,CAAC,GAAG,CAAC,SAAS,EAAE,YAAY,EAAE,EAAE,OAAO,CAAC,CAAC;YACvD,kBAAkB,CAAC,GAAG,CAAC,SAAS,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;YAC5D,qEAAqE;YACrE,wEAAwE;YACxE,KAAK,MAAM,UAAU,IAAI,IAAI,GAAG,CAAC,SAAS,CAAC,YAAY,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;gBACrE,aAAa,CAAC,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;YACpD,CAAC;YAED,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACzB,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACnC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,EAAE,CAAC;IAEL,OAAO;QACL,UAAU;QACV,QAAQ;QACR,YAAY;QACZ,aAAa,EAAE,QAAQ,CAAC,MAAM;QAC9B,iBAAiB,EAAE,YAAY,CAAC,MAAM;QACtC,gBAAgB;KACjB,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAC/B,EAA4B,EAC5B,QAAkB,EAClB,OAAmF;IAEnF,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAY,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9E,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CACrB,kEAAkE,CACnE,CAAC,GAAG,CAAC,QAAQ,CAA6D,CAAC;IAE5E,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,MAAM,OAAO,GAAG,EAAE,CAAC,OAAO,CAAC,mEAAmE,CAAC,CAAC;IAChG,MAAM,OAAO,GAAG,EAAE,CAAC,OAAO,CAAC,mEAAmE,CAAC,CAAC;IAEhG,MAAM,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE;QAC7B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACxC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,IAAI,GAAG,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;oBACtB,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;oBACpC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACjC,CAAC;gBACD,SAAS;YACX,CAAC;YACD,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,EAAE,MAAM,IAAI,IAAI,IAAI,QAAQ,CAAC,OAAO,EAAE,UAAU,IAAI,IAAI,CAAC;YAC5F,MAAM,IAAI,GAAG,UAAU;mBAClB,WAAW,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,WAAW,CAAC,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YACxF,IAAI,UAAU,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;gBAC7C,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACpC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAChC,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IACH,EAAE,EAAE,CAAC;IAEL,IAAI,UAAU,CAAC,MAAM;QAAE,OAAO,CAAC,IAAI,CAAC,gBAAgB,QAAQ,8BAA8B,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACnH,IAAI,WAAW,CAAC,MAAM;QAAE,OAAO,CAAC,IAAI,CAAC,gBAAgB,QAAQ,iCAAiC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACxH,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC;AACrC,CAAC;AAED,2BAA2B;AAE3B,IAAI,eAAe,GAA0C,IAAI,CAAC;AAElE,MAAM,UAAU,eAAe;IAC7B,IAAI,eAAe;QAAE,OAAO;IAC5B,OAAO,CAAC,GAAG,CAAC,sCAAsC,iBAAiB,GAAG,KAAK,WAAW,CAAC,CAAC;IAExF,8CAA8C;IAC9C,aAAa,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,oCAAoC,EAAE,GAAG,CAAC,CAAC,CAAC;IAEvF,eAAe,GAAG,WAAW,CAAC,GAAG,EAAE;QACjC,aAAa,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,GAAG,CAAC,CAAC,CAAC;IAC3F,CAAC,EAAE,iBAAiB,CAAC,CAAC;AACxB,CAAC;AAED,KAAK,UAAU,aAAa;IAC1B,MAAM,SAAS,GAAG,MAAM,2BAA2B,EAAE,CAAC;IACtD,IAAI,SAAS,CAAC,aAAa,GAAG,CAAC,EAAE,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,2BAA2B,SAAS,CAAC,UAAU,CAAC,MAAM,sBAAsB,SAAS,CAAC,aAAa,kBAAkB,CAAC,CAAC;IACrI,CAAC;IACD,MAAM,cAAc,EAAE,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,cAAc;IAC5B,IAAI,eAAe,EAAE,CAAC;QACpB,aAAa,CAAC,eAAe,CAAC,CAAC;QAC/B,eAAe,GAAG,IAAI,CAAC;IACzB,CAAC;AACH,CAAC"} \ No newline at end of file +{"version":3,"file":"model-scout.js","sourceRoot":"","sources":["../../src/services/model-scout.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/server/src/__tests__/lib/resolve-model.test.ts b/server/src/__tests__/lib/resolve-model.test.ts new file mode 100644 index 0000000..17b9ee8 --- /dev/null +++ b/server/src/__tests__/lib/resolve-model.test.ts @@ -0,0 +1,90 @@ +import { describe, it, expect, beforeAll, beforeEach } from 'vitest'; +import { initDb, getDb } from '../../db/index.js'; +import { resolveRoutableModel } from '../../lib/resolve-model.js'; +import { setFreeOnlyMode } from '../../lib/app-settings.js'; + +function insertModel(row: { + platform: string; + modelId: string; + enabled: number; + isFree: number; +}) { + return getDb().prepare(` + INSERT INTO models ( + platform, model_id, display_name, intelligence_rank, speed_rank, size_label, + monthly_token_budget, context_window, enabled, is_free + ) VALUES (?, ?, ?, 50, 50, 'Medium', 'test', 128000, ?, ?) + `).run(row.platform, row.modelId, `${row.platform} ${row.modelId}`, row.enabled, row.isFree) + .lastInsertRowid as number; +} + +describe('resolveRoutableModel with duplicate model ids across providers', () => { + beforeAll(() => { + process.env.ENCRYPTION_KEY = '0'.repeat(64); + initDb(':memory:'); + }); + + beforeEach(() => { + const db = getDb(); + db.prepare("DELETE FROM models WHERE model_id LIKE 'dup-%'").run(); + db.prepare("DELETE FROM api_keys WHERE platform IN ('google', 'bazaarlink')").run(); + setFreeOnlyMode(db, true); + }); + + it('prefers the enabled row over a disabled row inserted earlier', () => { + const db = getDb(); + // The shadowing row is inserted FIRST so it has the lower id — the old + // implementation used a bare `.get()` and always picked this one. + insertModel({ platform: 'bazaarlink', modelId: 'dup-chat', enabled: 0, isFree: 0 }); + const googleId = insertModel({ platform: 'google', modelId: 'dup-chat', enabled: 1, isFree: 1 }); + + const resolution = resolveRoutableModel(db, 'dup-chat'); + expect(resolution.kind).toBe('ok'); + expect(resolution.kind === 'ok' && resolution.id).toBe(googleId); + }); + + it('prefers a provider that actually has a configured key', () => { + const db = getDb(); + const noKeyId = insertModel({ platform: 'bazaarlink', modelId: 'dup-keyed', enabled: 1, isFree: 1 }); + const keyedId = insertModel({ platform: 'google', modelId: 'dup-keyed', enabled: 1, isFree: 1 }); + db.prepare(` + INSERT INTO api_keys (platform, label, encrypted_key, iv, auth_tag, status, enabled, created_at) + VALUES ('google', 'k', 'x', 'y', 'z', 'healthy', 1, datetime('now')) + `).run(); + + const resolution = resolveRoutableModel(db, 'dup-keyed'); + expect(resolution.kind).toBe('ok'); + expect(resolution.kind === 'ok' && resolution.id).toBe(keyedId); + expect(resolution.kind === 'ok' && resolution.id).not.toBe(noKeyId); + }); + + it('prefers the free row over a paid duplicate while free-only mode is on', () => { + const db = getDb(); + insertModel({ platform: 'bazaarlink', modelId: 'dup-priced', enabled: 1, isFree: 0 }); + const freeId = insertModel({ platform: 'google', modelId: 'dup-priced', enabled: 1, isFree: 1 }); + + const resolution = resolveRoutableModel(db, 'dup-priced'); + expect(resolution.kind).toBe('ok'); + expect(resolution.kind === 'ok' && resolution.id).toBe(freeId); + }); + + it('still reports disabled when every duplicate is disabled', () => { + const db = getDb(); + insertModel({ platform: 'bazaarlink', modelId: 'dup-off', enabled: 0, isFree: 1 }); + insertModel({ platform: 'google', modelId: 'dup-off', enabled: 0, isFree: 1 }); + + expect(resolveRoutableModel(db, 'dup-off').kind).toBe('disabled'); + }); + + it('still reports paid_blocked when every duplicate is paid and free-only is on', () => { + const db = getDb(); + insertModel({ platform: 'bazaarlink', modelId: 'dup-paid', enabled: 1, isFree: 0 }); + insertModel({ platform: 'google', modelId: 'dup-paid', enabled: 1, isFree: 0 }); + + expect(resolveRoutableModel(db, 'dup-paid').kind).toBe('paid_blocked'); + }); + + it('still reports not_found for an unknown id', () => { + expect(resolveRoutableModel(getDb(), 'dup-nope').kind).toBe('not_found'); + }); +}); diff --git a/server/src/__tests__/services/google-scout.test.ts b/server/src/__tests__/services/google-scout.test.ts new file mode 100644 index 0000000..c289ef9 --- /dev/null +++ b/server/src/__tests__/services/google-scout.test.ts @@ -0,0 +1,45 @@ +import { describe, it, expect } from 'vitest'; +import { classifyGoogleModel } from '../../services/model-scout.js'; + +describe('classifyGoogleModel', () => { + it('auto-enables models confirmed free on the Gemini API', () => { + for (const id of ['gemini-2.5-flash', 'gemini-2.5-pro', 'gemini-3.6-flash', 'gemini-3.5-flash-lite']) { + const verdict = classifyGoogleModel(id); + expect(verdict.include, `${id} should be discoverable`).toBe(true); + if (!verdict.include) continue; + expect(verdict.enabledByDefault, `${id} should be enabled`).toBe(true); + expect(verdict.isFree, `${id} should be free`).toBe(true); + } + }); + + it('still surfaces an unknown Gemini model, but disabled and paid so it can never auto-spend', () => { + // The whole point: a model Google ships tomorrow must not be invisible. + const verdict = classifyGoogleModel('gemini-4.0-ultra', 'Gemini 4.0 Ultra'); + expect(verdict.include).toBe(true); + if (!verdict.include) return; + expect(verdict.enabledByDefault).toBe(false); + expect(verdict.isFree).toBe(false); + expect(verdict.displayName).toBe('Gemini 4.0 Ultra'); + }); + + it('skips non-chat model families that would only add catalog noise', () => { + for (const id of [ + 'gemini-embedding-001', + 'veo-3.1-generate-preview', + 'lyria-3-pro-preview', + 'imagen-4.0-generate', + 'gemini-robotics-er-1.6-preview', + 'gemini-2.5-computer-use-preview-10-2025', + 'deep-research-pro-preview-12-2025', + ]) { + expect(classifyGoogleModel(id).include, `${id} should be skipped`).toBe(false); + } + }); + + it('falls back to the model id when Google reports no display name', () => { + const verdict = classifyGoogleModel('gemini-9.9-experimental'); + expect(verdict.include).toBe(true); + if (!verdict.include) return; + expect(verdict.displayName).toBe('gemini-9.9-experimental'); + }); +}); diff --git a/server/src/db/index.ts b/server/src/db/index.ts index f3aac98..5aca986 100644 --- a/server/src/db/index.ts +++ b/server/src/db/index.ts @@ -52,6 +52,7 @@ export async function initDb(dbPath?: string): Promise { migrateModelsV15(db); migrateModelsV16(db); migrateModelsV17(db); + migrateModelsV18(db); seedModelCapabilities(db); // Must follow seedModelCapabilities — that is where the image rows are seeded. flagPaidGoogleModels(db); @@ -1621,6 +1622,26 @@ function migrateModelsV17(db: Database.Database) { apply(); } +/** + * V18 (July 2026): retire the Google Gemma rows. + * + * Gemma 4 is free on the Gemini API and — now that the cross-provider model_id + * collision in resolveRoutableModel is fixed — genuinely reachable. It is still + * disabled by default because it answers by emitting raw chain-of-thought + * ("The user said 'say ok'. The user wants me to output...") rather than the + * answer, which is poor behaviour for a model sitting in the auto-route + * fallback chain. Operators can enable it from the dashboard. + * + * Rows are disabled, never deleted. A fresh install never seeds them, so this + * only affects databases that briefly had them enabled. + */ +function migrateModelsV18(db: Database.Database) { + const disable = db.prepare( + "UPDATE models SET enabled = 0 WHERE platform = 'google' AND model_id IN ('gemma-4-31b-it', 'gemma-4-26b-a4b-it')", + ); + disable.run(); +} + /** * Mark Google models that have no free tier (verified 2026-07-22 against * ai.google.dev pricing — image generation reads "Not available" in the Free diff --git a/server/src/lib/resolve-model.ts b/server/src/lib/resolve-model.ts index 00a473f..bc1f378 100644 --- a/server/src/lib/resolve-model.ts +++ b/server/src/lib/resolve-model.ts @@ -19,10 +19,26 @@ export function resolveRoutableModel( modelId: string, requiredCapability?: string | null, ): Resolution { + // The same model_id can exist on several providers (e.g. an aggregator's + // auto-discovered `gemma-4-31b-it` alongside Google's own). A bare `.get()` + // returned whichever row had the lowest id, so a disabled/paid duplicate + // could shadow a perfectly routable one. Rank the candidates instead: + // enabled first, then providers that actually have a usable key, then free. const row = db.prepare(` - SELECT m.id, m.enabled AS model_enabled, m.is_free + SELECT m.id, m.enabled AS model_enabled, m.is_free, + COUNT(ak.id) AS key_count FROM models m + LEFT JOIN api_keys ak + ON ak.platform = m.platform + AND ak.enabled = 1 + AND ak.status != 'invalid' WHERE m.model_id = ? + GROUP BY m.id + ORDER BY (m.enabled = 1) DESC, + (COUNT(ak.id) > 0) DESC, + (m.is_free = 1) DESC, + m.id ASC + LIMIT 1 `).get(modelId) as { id: number; model_enabled: number; is_free: number } | undefined; if (!row) return { kind: 'not_found' }; diff --git a/server/src/services/model-scout.ts b/server/src/services/model-scout.ts index 88baf35..56bd646 100644 --- a/server/src/services/model-scout.ts +++ b/server/src/services/model-scout.ts @@ -49,8 +49,12 @@ const CATALOG_SYNC_PLATFORMS = new Set([ const MAX_DISCOVERED_PER_PLATFORM = 100; const GOOGLE_MODELS_API_BASE = 'https://generativelanguage.googleapis.com/v1beta'; +/** Google chat models confirmed free on the Gemini API (ai.google.dev pricing: + * Free Tier column reads "Free of charge"). These auto-enable on discovery. */ const GOOGLE_FREE_CHAT_MODELS = new Map([ + ['gemini-3.6-flash', 'Gemini 3.6 Flash'], ['gemini-3.5-flash', 'Gemini 3.5 Flash'], + ['gemini-3.5-flash-lite', 'Gemini 3.5 Flash-Lite'], ['gemini-3-flash-preview', 'Gemini 3 Flash Preview'], ['gemini-2.5-pro', 'Gemini 2.5 Pro'], ['gemini-2.5-flash', 'Gemini 2.5 Flash'], @@ -58,6 +62,45 @@ const GOOGLE_FREE_CHAT_MODELS = new Map([ ['gemini-2.5-flash-lite', 'Gemini 2.5 Flash-Lite'], ]); +/** Model families that are not chat completions — discovering them would only + * add catalog noise (embeddings need provider support; video/music/robotics + * are different surfaces entirely). */ +const GOOGLE_NON_CHAT_PATTERN = + /embedding|^veo-|^lyria-|^imagen|robotics|computer-use|deep-research|antigravity|^nano-banana/i; + +export type GoogleModelVerdict = + | { include: false } + | { include: true; displayName: string; enabledByDefault: boolean; isFree: boolean }; + +/** + * Decide what to do with a Google model returned by /v1beta/models. + * + * Google's list endpoint carries no pricing, so we cannot classify cost the way + * we do for providers that publish it. Instead of the old behaviour — a + * hardcoded allowlist that made every newly released model structurally + * invisible — an unrecognised chat model is now surfaced DISABLED and marked + * paid. It shows up in the dashboard for review and can never auto-route or + * spend until an operator confirms it. + */ +export function classifyGoogleModel(modelId: string, apiDisplayName?: string): GoogleModelVerdict { + const knownFree = GOOGLE_FREE_CHAT_MODELS.get(modelId); + if (knownFree) { + return { + include: true, + displayName: apiDisplayName ?? knownFree, + enabledByDefault: true, + isFree: true, + }; + } + if (GOOGLE_NON_CHAT_PATTERN.test(modelId)) return { include: false }; + return { + include: true, + displayName: apiDisplayName ?? modelId, + enabledByDefault: false, + isFree: false, + }; +} + interface GoogleModelListResponse { models?: Array<{ name?: string; @@ -123,15 +166,18 @@ async function discoverGoogleModels(apiKey: string, knownSet: Set): Prom if (!modelId || knownSet.has(modelId)) continue; if (!entry.supportedGenerationMethods?.includes('generateContent')) continue; - const displayName = GOOGLE_FREE_CHAT_MODELS.get(modelId); - if (!displayName) continue; + const verdict = classifyGoogleModel(modelId, entry.displayName); + if (!verdict.include) continue; discoveries.push({ platform: 'google', modelId, - displayName: entry.displayName ?? displayName, - enabledByDefault: true, - capabilities: ['chat', 'vision', 'video'], + displayName: verdict.displayName, + enabledByDefault: verdict.enabledByDefault, + isFree: verdict.isFree, + // Vision/video are only claimed for models we have actually confirmed; + // an unrecognised model gets plain chat until an operator reviews it. + capabilities: verdict.enabledByDefault ? ['chat', 'vision', 'video'] : ['chat'], }); }