style(agent): satisfy golines in retry classification

This commit is contained in:
李龙 0668001470 2026-03-16 09:10:30 +08:00 committed by Alix-007
parent c10a34604f
commit f026151ffb

View file

@ -1152,15 +1152,17 @@ func (al *AgentLoop) runLLMIteration(
isTransientProviderError := classifiedErr != nil && classifiedErr.Reason == providers.FailoverTimeout isTransientProviderError := classifiedErr != nil && classifiedErr.Reason == providers.FailoverTimeout
// Detect real context window / token limit errors, excluding network timeouts. // Detect real context window / token limit errors, excluding network timeouts.
isContextError := !isTimeoutError && !isTransientProviderError && (strings.Contains(errMsg, "context_length_exceeded") || isContextError := !isTimeoutError &&
strings.Contains(errMsg, "context window") || !isTransientProviderError &&
strings.Contains(errMsg, "maximum context length") || (strings.Contains(errMsg, "context_length_exceeded") ||
strings.Contains(errMsg, "token limit") || strings.Contains(errMsg, "context window") ||
strings.Contains(errMsg, "too many tokens") || strings.Contains(errMsg, "maximum context length") ||
strings.Contains(errMsg, "max_tokens") || strings.Contains(errMsg, "token limit") ||
strings.Contains(errMsg, "invalidparameter") || strings.Contains(errMsg, "too many tokens") ||
strings.Contains(errMsg, "prompt is too long") || strings.Contains(errMsg, "max_tokens") ||
strings.Contains(errMsg, "request too large")) strings.Contains(errMsg, "invalidparameter") ||
strings.Contains(errMsg, "prompt is too long") ||
strings.Contains(errMsg, "request too large"))
if (isTimeoutError || isTransientProviderError) && retry < maxRetries { if (isTimeoutError || isTransientProviderError) && retry < maxRetries {
backoff := time.Duration(retry+1) * 5 * time.Second backoff := time.Duration(retry+1) * 5 * time.Second