diff --git a/packages/pi-coding-agent/src/core/agent-session.ts b/packages/pi-coding-agent/src/core/agent-session.ts index c856e9229..bd7c00fe8 100644 --- a/packages/pi-coding-agent/src/core/agent-session.ts +++ b/packages/pi-coding-agent/src/core/agent-session.ts @@ -2553,7 +2553,7 @@ export class AgentSession { if (message.retryAfterMs !== undefined) { const cap = settings.maxDelayMs > 0 ? settings.maxDelayMs : Infinity; if (message.retryAfterMs > cap) { - // Server wants us to wait longer than our max — give up immediately + // Server wants us to wait longer than maxDelayMs — give up to let auto-mode handle recovery this._emit({ type: "auto_retry_end", success: false, diff --git a/packages/pi-coding-agent/src/core/settings-manager.ts b/packages/pi-coding-agent/src/core/settings-manager.ts index 8575dc08a..665b556b2 100644 --- a/packages/pi-coding-agent/src/core/settings-manager.ts +++ b/packages/pi-coding-agent/src/core/settings-manager.ts @@ -20,7 +20,7 @@ export interface RetrySettings { enabled?: boolean; // default: true maxRetries?: number; // default: 3 baseDelayMs?: number; // default: 2000 (exponential backoff: 2s, 4s, 8s) - maxDelayMs?: number; // default: 60000 (max server-requested delay before failing) + maxDelayMs?: number; // default: 300000 (max server-requested delay before failing) } export interface TerminalSettings { @@ -752,7 +752,7 @@ export class SettingsManager { enabled: this.getRetryEnabled(), maxRetries: this.settings.retry?.maxRetries ?? 3, baseDelayMs: this.settings.retry?.baseDelayMs ?? 2000, - maxDelayMs: this.settings.retry?.maxDelayMs ?? 60000, + maxDelayMs: this.settings.retry?.maxDelayMs ?? 300000, }; }