feat(core): enable retryFetchErrors by default

Transient "fetch failed" network errors are common in non-interactive
contexts; the retry infrastructure exists but was off by default.
This commit is contained in:
Bryan Morgan
2026-02-22 10:05:38 -05:00
parent a91bc60e18
commit dd16aa0602
2 changed files with 4 additions and 3 deletions
+1 -1
View File
@@ -302,7 +302,7 @@ const SETTINGS_SCHEMA = {
label: 'Retry Fetch Errors', label: 'Retry Fetch Errors',
category: 'General', category: 'General',
requiresRestart: false, requiresRestart: false,
default: false, default: true,
description: description:
'Retry on "exception TypeError: fetch failed sending request" errors.', 'Retry on "exception TypeError: fetch failed sending request" errors.',
showInDialog: false, showInDialog: false,
+3 -2
View File
@@ -852,8 +852,9 @@ export class Config {
this.continueOnFailedApiCall = params.continueOnFailedApiCall ?? true; this.continueOnFailedApiCall = params.continueOnFailedApiCall ?? true;
this.enableShellOutputEfficiency = this.enableShellOutputEfficiency =
params.enableShellOutputEfficiency ?? true; params.enableShellOutputEfficiency ?? true;
const defaultShellTimeout = this.interactive ? 300 : 600; // 5 min interactive, 10 min non-interactive
this.shellToolInactivityTimeout = this.shellToolInactivityTimeout =
(params.shellToolInactivityTimeout ?? 300) * 1000; // 5 minutes (params.shellToolInactivityTimeout ?? defaultShellTimeout) * 1000;
this.extensionManagement = params.extensionManagement ?? true; this.extensionManagement = params.extensionManagement ?? true;
this.enableExtensionReloading = params.enableExtensionReloading ?? false; this.enableExtensionReloading = params.enableExtensionReloading ?? false;
this.storage = new Storage(this.targetDir, this.sessionId); this.storage = new Storage(this.targetDir, this.sessionId);
@@ -877,7 +878,7 @@ export class Config {
this.outputSettings = { this.outputSettings = {
format: params.output?.format ?? OutputFormat.TEXT, format: params.output?.format ?? OutputFormat.TEXT,
}; };
this.retryFetchErrors = params.retryFetchErrors ?? false; this.retryFetchErrors = params.retryFetchErrors ?? true;
this.disableYoloMode = params.disableYoloMode ?? false; this.disableYoloMode = params.disableYoloMode ?? false;
this.rawOutput = params.rawOutput ?? false; this.rawOutput = params.rawOutput ?? false;
this.acceptRawOutputRisk = params.acceptRawOutputRisk ?? false; this.acceptRawOutputRisk = params.acceptRawOutputRisk ?? false;