mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-07 14:51:24 +00:00
fix: codex and similar processes keep dying on pty, solved by refactoring process spawning (#14257)
* exec: clean up PTY resources on timeout and exit * cli: harden resume cleanup and watchdog stalled runs * cli: productionize PTY and resume reliability paths * docs: add PTY process supervision architecture plan * docs: rewrite PTY supervision plan as pre-rewrite baseline * docs: switch PTY supervision plan to one-go execution * docs: add one-line root cause to PTY supervision plan * docs: add OS contracts and test matrix to PTY supervision plan * docs: define process-supervisor package placement and scope * docs: tie supervisor plan to existing CI lanes * docs: place PTY supervisor plan under src/process * refactor(process): route exec and cli runs through supervisor * docs(process): refresh PTY supervision plan * wip * fix(process): harden supervisor timeout and PTY termination * fix(process): harden supervisor adapters env and wait handling * ci: avoid failing formal conformance on comment permissions * test(ui): fix cron request mock argument typing * fix(ui): remove leftover conflict marker * fix: supervise PTY processes (#14257) (openclaw#14257) (thanks @onutc)
This commit is contained in:
@@ -91,6 +91,34 @@ export type CliBackendConfig = {
|
||||
imageMode?: "repeat" | "list";
|
||||
/** Serialize runs for this CLI. */
|
||||
serialize?: boolean;
|
||||
/** Runtime reliability tuning for this backend's process lifecycle. */
|
||||
reliability?: {
|
||||
/** No-output watchdog tuning (fresh vs resumed runs). */
|
||||
watchdog?: {
|
||||
/** Fresh/new sessions (non-resume). */
|
||||
fresh?: {
|
||||
/** Fixed watchdog timeout in ms (overrides ratio when set). */
|
||||
noOutputTimeoutMs?: number;
|
||||
/** Fraction of overall timeout used when fixed timeout is not set. */
|
||||
noOutputTimeoutRatio?: number;
|
||||
/** Lower bound for computed watchdog timeout. */
|
||||
minMs?: number;
|
||||
/** Upper bound for computed watchdog timeout. */
|
||||
maxMs?: number;
|
||||
};
|
||||
/** Resume sessions. */
|
||||
resume?: {
|
||||
/** Fixed watchdog timeout in ms (overrides ratio when set). */
|
||||
noOutputTimeoutMs?: number;
|
||||
/** Fraction of overall timeout used when fixed timeout is not set. */
|
||||
noOutputTimeoutRatio?: number;
|
||||
/** Lower bound for computed watchdog timeout. */
|
||||
minMs?: number;
|
||||
/** Upper bound for computed watchdog timeout. */
|
||||
maxMs?: number;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
export type AgentDefaultsConfig = {
|
||||
|
||||
Reference in New Issue
Block a user