Set default max attempts to 3 and use the common variable (#18209)

This commit is contained in:
Sehoon Shon
2026-02-03 12:47:13 -05:00
committed by GitHub
parent b84585d0c8
commit e1bd1d239f
2 changed files with 8 additions and 3 deletions

View File

@@ -18,7 +18,11 @@ import type {
} from '@google/genai';
import { toParts } from '../code_assist/converter.js';
import { createUserContent, FinishReason } from '@google/genai';
import { retryWithBackoff, isRetryableError } from '../utils/retry.js';
import {
retryWithBackoff,
isRetryableError,
DEFAULT_MAX_ATTEMPTS,
} from '../utils/retry.js';
import type { ValidationRequiredError } from '../utils/googleQuotaErrors.js';
import type { Config } from '../config/config.js';
import {
@@ -621,7 +625,7 @@ export class GeminiChat {
onRetry: (attempt, error, delayMs) => {
coreEvents.emitRetryAttempt({
attempt,
maxAttempts: availabilityMaxAttempts ?? 10,
maxAttempts: availabilityMaxAttempts ?? DEFAULT_MAX_ATTEMPTS,
delayMs,
error: error instanceof Error ? error.message : String(error),
model: lastModelToUse,

View File

@@ -18,6 +18,7 @@ import { getErrorStatus, ModelNotFoundError } from './httpErrors.js';
import type { RetryAvailabilityContext } from '../availability/modelPolicy.js';
export type { RetryAvailabilityContext };
export const DEFAULT_MAX_ATTEMPTS = 3;
export interface RetryOptions {
maxAttempts: number;
@@ -40,7 +41,7 @@ export interface RetryOptions {
}
const DEFAULT_RETRY_OPTIONS: RetryOptions = {
maxAttempts: 3,
maxAttempts: DEFAULT_MAX_ATTEMPTS,
initialDelayMs: 5000,
maxDelayMs: 30000, // 30 seconds
shouldRetryOnError: isRetryableError,