From ba62fb772e4597dce6d25385c4fc116ba45ccbcb Mon Sep 17 00:00:00 2001 From: damienrj Date: Mon, 19 Oct 2026 14:46:58 -0700 Subject: [PATCH] Show Gemini 4 Argon in model picker --- .../lib/modelRecommendations.test.ts | 28 +++++++++++++++++++ .../providers/lib/modelRecommendations.ts | 4 +++ 2 files changed, 32 insertions(+) diff --git a/src/features/providers/lib/modelRecommendations.test.ts b/src/features/providers/lib/modelRecommendations.test.ts index 14120e2d1..fda90a50f 100644 --- a/src/features/providers/lib/modelRecommendations.test.ts +++ b/src/features/providers/lib/modelRecommendations.test.ts @@ -14,6 +14,9 @@ describe("modelRecommendations", () => { expect(normalizedGooseModelDisplayName("goose-gemini-3-5-flash")).toBe( "Gemini Flash 3.5", ); + expect(normalizedGooseModelDisplayName("goose-gemini-4-argon")).toBe( + "Gemini 4 Argon", + ); expect(normalizedGooseModelDisplayName("goose-gpt-6-astra")).toBe( "GPT-6 Astra", ); @@ -125,6 +128,31 @@ describe("modelRecommendations", () => { ); }); + it("offers discovered Gemini 4 Argon with its official name", () => { + const [googleModel] = providerModelOptionsFromIds("google", [ + "gemini-4-argon", + ]); + expect(googleModel).toEqual( + expect.objectContaining({ + id: "gemini-4-argon", + displayName: "Gemini 4 Argon", + recommended: true, + }), + ); + + const [gooseModel] = providerModelOptionsFromIds("databricks_v2", [ + "goose-gemini-4-argon", + ]); + expect(gooseModel).toEqual( + expect.objectContaining({ + id: "goose-gemini-4-argon", + displayName: "Gemini 4 Argon", + recommended: true, + featured: true, + }), + ); + }); + it("does not feature or rank generic custom provider models", () => { const options = providerModelOptionsFromIds("block_openai_compatible", [ "z-model", diff --git a/src/features/providers/lib/modelRecommendations.ts b/src/features/providers/lib/modelRecommendations.ts index d716fa790..fab819641 100644 --- a/src/features/providers/lib/modelRecommendations.ts +++ b/src/features/providers/lib/modelRecommendations.ts @@ -87,6 +87,10 @@ export function normalizedGooseModelDisplayName(id: string): string | null { return null; } + if (id === "goose-gemini-4-argon") { + return "Gemini 4 Argon"; + } + if (parsed.familyTokens[0] === "gpt") { return [ `GPT-${parsed.version.join(".")}`,