docs(multitask): add TIMEOUT_LIFECYCLE.md and update reference docs#4186
docs(multitask): add TIMEOUT_LIFECYCLE.md and update reference docs#4186
Conversation
Documents the timeout lifecycle state machine, interrupt-preserve and continue-preserve timeout policies, workstream resumption, state file schema, log management cap, environment variables, and security controls (delegate allowlist, path sanitisation, shlex quoting). Updates reference.md Timeouts section to describe both policies and link to the new doc. Adds TIMEOUT_LIFECYCLE.md to the docs table in SKILL.md. No code changes — all 77 existing tests continue to pass. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…_LIFECYCLE.md completed is in CLEANUP_ELIGIBLE_LIFECYCLE_STATES — the table and prose paragraph had it wrong. Aligns with the frozenset at orchestrator.py:69-71. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…nd config docs - Required fields table: issue type now shows int|"TBD" with note about auto-create - Optional fields table: add timeout_policy and max_runtime with defaults - JSON config example: show the two optional timeout fields - Methods list: add max_runtime/timeout_policy kwargs to add() signature Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Repo Guardian - PassedAll 3 changed files are durable technical reference documentation. No ephemeral content detected.
No action required.
|
PR Triage ReportRisk: 🟢 Low | Priority: Low | Type: Documentation AssessmentAdds
Test coverage: 19 multitask/timeout tests pass. RecommendationLow risk; rebase required. Documentation-only changes with good test validation. Rebase to current main and merge.
|
Closes #4183
Summary
Retcon documentation for the multitask orchestrator timeout/recovery lifecycle, produced by the investigate-timeout-lifecycle + implement-defect-fixes workstreams.
Changes
interrupt-preserveandcontinue-preserve), workdir cleanup eligibility, the resumable state model specifying exactly what data is persisted, and session recovery instructions.timeout_policyandmax_runtimeto the workstream config table.Investigation findings
The investigation (ws-4181) confirmed:
max_runtime; fires viainterrupt-preservesending SIGTERM→SIGKILL then savingtimed_out_resumablestate.completed,failed_terminal, andabandonedare cleanup-eligible.PR stack validation (ws-4182)
Confirmed PRs #4074, #4075, #4076 are merged on main with no rebase conflicts. dep_check.py scoped import validation and timeout preservation logic are both present on HEAD.
Tests
All 19 multitask/timeout tests pass.