fix: add Gemini/Google provider support to AI Bridge session page (#26374)

Fixes https://github.com/coder/internal/issues/1576
This commit is contained in:
Marcin Tojek
2026-06-15 16:27:36 +02:00
committed by GitHub
parent 1b9745c311
commit c50cef5ae1
6 changed files with 118 additions and 3 deletions
@@ -655,6 +655,9 @@ func ResolveModelWithProviderHint(modelName, providerHint string) (provider stri
if isChatModelForProvider(fantasyopenai.Name, normalized) {
return fantasyopenai.Name, modelName, nil
}
if isChatModelForProvider(fantasygoogle.Name, normalized) {
return fantasygoogle.Name, modelName, nil
}
return "", "", xerrors.Errorf("unknown model %q", modelName)
}
@@ -11,6 +11,7 @@ import (
"charm.land/fantasy"
fantasyanthropic "charm.land/fantasy/providers/anthropic"
fantasybedrock "charm.land/fantasy/providers/bedrock"
fantasygoogle "charm.land/fantasy/providers/google"
fantasyopenai "charm.land/fantasy/providers/openai"
fantasyopenaicompat "charm.land/fantasy/providers/openaicompat"
fantasyopenrouter "charm.land/fantasy/providers/openrouter"
@@ -1622,6 +1623,34 @@ func TestResolveModelWithProviderHint(t *testing.T) {
wantProvider: fantasyvercel.Name,
wantModel: "claude-4-5-sonnet",
},
{
name: "BareGeminiModelResolvesToGoogle",
modelName: "gemini-3.5-flash",
providerHint: "",
wantProvider: fantasygoogle.Name,
wantModel: "gemini-3.5-flash",
},
{
name: "BareGemmaModelResolvesToGoogle",
modelName: "gemma-3-27b",
providerHint: "",
wantProvider: fantasygoogle.Name,
wantModel: "gemma-3-27b",
},
{
name: "GoogleHintWithGeminiModel",
modelName: "gemini-2.5-pro",
providerHint: fantasygoogle.Name,
wantProvider: fantasygoogle.Name,
wantModel: "gemini-2.5-pro",
},
{
name: "CanonicalGoogleRefResolvesToGoogle",
modelName: "google/gemini-3.5-flash",
providerHint: "",
wantProvider: fantasygoogle.Name,
wantModel: "gemini-3.5-flash",
},
}
for _, tt := range tests {