feat(backends): add retry/backoff controls for external CLI execution

This commit is contained in:
William Valentin
2026-02-17 09:49:06 -08:00
parent 1f3d35726b
commit 4400bdfcc9
5 changed files with 64 additions and 8 deletions
+6 -6
View File
@@ -19,7 +19,7 @@ describe('createConfiguredExternalBackend', () => {
...base,
backends: {
...base.backends,
codex: { enabled: true, path: '/usr/bin/codex', args: [], timeout_ms: 120000 },
codex: { enabled: true, path: '/usr/bin/codex', args: [], timeout_ms: 120000, retries: 0, retry_delay_ms: 300 },
},
};
const backend = createConfiguredExternalBackend(cfg);
@@ -31,7 +31,7 @@ describe('createConfiguredExternalBackend', () => {
...base,
backends: {
...base.backends,
gemini: { enabled: true, path: '/usr/bin/gemini', args: [], timeout_ms: 120000 },
gemini: { enabled: true, path: '/usr/bin/gemini', args: [], timeout_ms: 120000, retries: 0, retry_delay_ms: 300 },
},
};
const backend = createConfiguredExternalBackend(cfg);
@@ -43,8 +43,8 @@ describe('createConfiguredExternalBackend', () => {
...base,
backends: {
...base.backends,
codex: { enabled: true, path: '/usr/bin/codex', args: [], timeout_ms: 120000 },
gemini: { enabled: true, path: '/usr/bin/gemini', args: [], timeout_ms: 120000 },
codex: { enabled: true, path: '/usr/bin/codex', args: [], timeout_ms: 120000, retries: 0, retry_delay_ms: 300 },
gemini: { enabled: true, path: '/usr/bin/gemini', args: [], timeout_ms: 120000, retries: 0, retry_delay_ms: 300 },
},
};
const configured = createConfiguredExternalBackends(cfg);
@@ -59,8 +59,8 @@ describe('createConfiguredExternalBackend', () => {
backends: {
...base.backends,
default: 'gemini' as const,
codex: { enabled: true, path: '/usr/bin/codex', args: [], timeout_ms: 120000 },
gemini: { enabled: true, path: '/usr/bin/gemini', args: [], timeout_ms: 120000 },
codex: { enabled: true, path: '/usr/bin/codex', args: [], timeout_ms: 120000, retries: 0, retry_delay_ms: 300 },
gemini: { enabled: true, path: '/usr/bin/gemini', args: [], timeout_ms: 120000, retries: 0, retry_delay_ms: 300 },
},
};
const configured = createConfiguredExternalBackends(cfg);