Merge pull request #3382 from sususu98/dev

fix: scope antigravity credits fallback gate
This commit is contained in:
Luis Pater
2026-05-21 02:52:49 +08:00
committed by GitHub
2 changed files with 95 additions and 14 deletions
+11 -14
View File
@@ -1247,7 +1247,7 @@ func (m *Manager) Execute(ctx context.Context, providers []string, req cliproxye
}
}
if lastErr != nil {
if shouldAttemptAntigravityCreditsFallback(m, lastErr, normalized) {
if hasAntigravityProvider(normalized) && shouldAttemptAntigravityCreditsFallback(m, lastErr, normalized) {
if resp, ok := m.tryAntigravityCreditsExecute(ctx, req, opts); ok {
return resp, nil
}
@@ -1313,7 +1313,7 @@ func (m *Manager) ExecuteStream(ctx context.Context, providers []string, req cli
}
}
if lastErr != nil {
if shouldAttemptAntigravityCreditsFallback(m, lastErr, normalized) {
if hasAntigravityProvider(normalized) && shouldAttemptAntigravityCreditsFallback(m, lastErr, normalized) {
if result, ok := m.tryAntigravityCreditsExecuteStream(ctx, req, opts); ok {
return result, nil
}
@@ -3707,6 +3707,15 @@ type creditsCandidateEntry struct {
provider string
}
func hasAntigravityProvider(providers []string) bool {
for _, p := range providers {
if strings.EqualFold(strings.TrimSpace(p), "antigravity") {
return true
}
}
return false
}
func shouldAttemptAntigravityCreditsFallback(m *Manager, lastErr error, providers []string) bool {
status := statusCodeFromError(lastErr)
log.WithFields(log.Fields{
@@ -3717,18 +3726,6 @@ func shouldAttemptAntigravityCreditsFallback(m *Manager, lastErr error, provider
if m == nil || lastErr == nil {
return false
}
if len(providers) > 0 {
hasAntigravity := false
for _, p := range providers {
if strings.EqualFold(strings.TrimSpace(p), "antigravity") {
hasAntigravity = true
break
}
}
if !hasAntigravity {
return false
}
}
cfg, _ := m.runtimeConfig.Load().(*internalconfig.Config)
if cfg == nil || !cfg.QuotaExceeded.AntigravityCredits {
return false