Files
oh-my-opencode/src/tools/delegate-task/timing.ts
T
YeonGyu-Kim 6d5175b9b0 fix(delegate-task): extend default sync poll timeout to 30 minutes
Keep synchronous subagent runs from timing out after 10 minutes when no explicit override is configured.

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-03-12 01:14:26 +09:00

47 lines
1.9 KiB
TypeScript

let POLL_INTERVAL_MS = 1000
let MIN_STABILITY_TIME_MS = 10000
let STABILITY_POLLS_REQUIRED = 3
let WAIT_FOR_SESSION_INTERVAL_MS = 100
let WAIT_FOR_SESSION_TIMEOUT_MS = 30000
const DEFAULT_POLL_TIMEOUT_MS = 30 * 60 * 1000
let MAX_POLL_TIME_MS = DEFAULT_POLL_TIMEOUT_MS
let SESSION_CONTINUATION_STABILITY_MS = 5000
export const DEFAULT_SYNC_POLL_TIMEOUT_MS = DEFAULT_POLL_TIMEOUT_MS
export function getDefaultSyncPollTimeoutMs(): number {
return MAX_POLL_TIME_MS
}
export function getTimingConfig() {
return {
POLL_INTERVAL_MS,
MIN_STABILITY_TIME_MS,
STABILITY_POLLS_REQUIRED,
WAIT_FOR_SESSION_INTERVAL_MS,
WAIT_FOR_SESSION_TIMEOUT_MS,
MAX_POLL_TIME_MS,
SESSION_CONTINUATION_STABILITY_MS,
}
}
export function __resetTimingConfig(): void {
POLL_INTERVAL_MS = 1000
MIN_STABILITY_TIME_MS = 10000
STABILITY_POLLS_REQUIRED = 3
WAIT_FOR_SESSION_INTERVAL_MS = 100
WAIT_FOR_SESSION_TIMEOUT_MS = 30000
MAX_POLL_TIME_MS = DEFAULT_POLL_TIMEOUT_MS
SESSION_CONTINUATION_STABILITY_MS = 5000
}
export function __setTimingConfig(overrides: Partial<ReturnType<typeof getTimingConfig>>): void {
if (overrides.POLL_INTERVAL_MS !== undefined) POLL_INTERVAL_MS = overrides.POLL_INTERVAL_MS
if (overrides.MIN_STABILITY_TIME_MS !== undefined) MIN_STABILITY_TIME_MS = overrides.MIN_STABILITY_TIME_MS
if (overrides.STABILITY_POLLS_REQUIRED !== undefined) STABILITY_POLLS_REQUIRED = overrides.STABILITY_POLLS_REQUIRED
if (overrides.WAIT_FOR_SESSION_INTERVAL_MS !== undefined) WAIT_FOR_SESSION_INTERVAL_MS = overrides.WAIT_FOR_SESSION_INTERVAL_MS
if (overrides.WAIT_FOR_SESSION_TIMEOUT_MS !== undefined) WAIT_FOR_SESSION_TIMEOUT_MS = overrides.WAIT_FOR_SESSION_TIMEOUT_MS
if (overrides.MAX_POLL_TIME_MS !== undefined) MAX_POLL_TIME_MS = overrides.MAX_POLL_TIME_MS
if (overrides.SESSION_CONTINUATION_STABILITY_MS !== undefined) SESSION_CONTINUATION_STABILITY_MS = overrides.SESSION_CONTINUATION_STABILITY_MS
}