mirror of
https://github.com/router-for-me/CLIProxyAPI.git
synced 2026-02-03 04:50:52 +08:00
feat(config): supplement missing default aliases during antigravity migration
This commit is contained in:
@@ -122,6 +122,23 @@ func migrateFromOldField(configFile string, root *yaml.Node, rootMap *yaml.Node,
|
|||||||
newAliases[channel] = converted
|
newAliases[channel] = converted
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// For antigravity channel, supplement missing default aliases
|
||||||
|
if antigravityEntries, exists := newAliases["antigravity"]; exists {
|
||||||
|
// Build a set of already configured model names (upstream names)
|
||||||
|
configuredModels := make(map[string]bool, len(antigravityEntries))
|
||||||
|
for _, entry := range antigravityEntries {
|
||||||
|
configuredModels[entry.Name] = true
|
||||||
|
}
|
||||||
|
|
||||||
|
// Add missing default aliases
|
||||||
|
for _, defaultAlias := range defaultAntigravityAliases() {
|
||||||
|
if !configuredModels[defaultAlias.Name] {
|
||||||
|
antigravityEntries = append(antigravityEntries, defaultAlias)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
newAliases["antigravity"] = antigravityEntries
|
||||||
|
}
|
||||||
|
|
||||||
// Build new node
|
// Build new node
|
||||||
newNode := buildOAuthModelAliasNode(newAliases)
|
newNode := buildOAuthModelAliasNode(newAliases)
|
||||||
|
|
||||||
|
|||||||
@@ -114,6 +114,23 @@ func TestMigrateOAuthModelAlias_ConvertsAntigravityModels(t *testing.T) {
|
|||||||
if !strings.Contains(content, "gemini-3-pro-high") {
|
if !strings.Contains(content, "gemini-3-pro-high") {
|
||||||
t.Fatal("expected gemini-3-pro-preview to be converted to gemini-3-pro-high")
|
t.Fatal("expected gemini-3-pro-preview to be converted to gemini-3-pro-high")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Verify missing default aliases were supplemented
|
||||||
|
if !strings.Contains(content, "gemini-3-pro-image") {
|
||||||
|
t.Fatal("expected missing default alias gemini-3-pro-image to be added")
|
||||||
|
}
|
||||||
|
if !strings.Contains(content, "gemini-3-flash") {
|
||||||
|
t.Fatal("expected missing default alias gemini-3-flash to be added")
|
||||||
|
}
|
||||||
|
if !strings.Contains(content, "claude-sonnet-4-5") {
|
||||||
|
t.Fatal("expected missing default alias claude-sonnet-4-5 to be added")
|
||||||
|
}
|
||||||
|
if !strings.Contains(content, "claude-sonnet-4-5-thinking") {
|
||||||
|
t.Fatal("expected missing default alias claude-sonnet-4-5-thinking to be added")
|
||||||
|
}
|
||||||
|
if !strings.Contains(content, "claude-opus-4-5-thinking") {
|
||||||
|
t.Fatal("expected missing default alias claude-opus-4-5-thinking to be added")
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestMigrateOAuthModelAlias_AddsDefaultIfNeitherExists(t *testing.T) {
|
func TestMigrateOAuthModelAlias_AddsDefaultIfNeitherExists(t *testing.T) {
|
||||||
|
|||||||
@@ -1221,7 +1221,7 @@ func (e *AntigravityExecutor) buildRequest(ctx context.Context, auth *cliproxyau
|
|||||||
payload = []byte(strJSON)
|
payload = []byte(strJSON)
|
||||||
}
|
}
|
||||||
|
|
||||||
if strings.Contains(modelName, "claude") || strings.Contains(modelName, "gemini-3-pro-preview") {
|
if strings.Contains(modelName, "claude") || strings.Contains(modelName, "gemini-3-pro-high") {
|
||||||
systemInstructionPartsResult := gjson.GetBytes(payload, "request.systemInstruction.parts")
|
systemInstructionPartsResult := gjson.GetBytes(payload, "request.systemInstruction.parts")
|
||||||
payload, _ = sjson.SetBytes(payload, "request.systemInstruction.role", "user")
|
payload, _ = sjson.SetBytes(payload, "request.systemInstruction.role", "user")
|
||||||
payload, _ = sjson.SetBytes(payload, "request.systemInstruction.parts.0.text", systemInstruction)
|
payload, _ = sjson.SetBytes(payload, "request.systemInstruction.parts.0.text", systemInstruction)
|
||||||
|
|||||||
Reference in New Issue
Block a user