Changes: Preserve incomplete work and blocker metadata for S00-012. This checkpoint does not mark implementation accepted. Validation: Session ended with status blocked. Blocker: Submit-transition descendant regression fails: repeated stop_process_tree after parent reap raises EPERM at os.killpg; launch OSError handling then attempts invalid escalation from review state. Task: S00-012 Agent: auto-ci-cd-28868645424b Role: ci-cd Action: claim Status: blocked Task title: Fix runner prompt delivery after partial stdin timeout
31 lines
1.9 KiB
JSON
31 lines
1.9 KiB
JSON
{
|
|
"title": "Fix repeated runner cleanup after a submitted parent is reaped",
|
|
"reason": "Submit-transition descendant regression fails: repeated stop_process_tree after parent reap raises EPERM at os.killpg; launch OSError handling then attempts invalid escalation from review state.",
|
|
"reproduction": "python3 -m unittest discover -s tests/tooling -p test_automation.py -v; test_submit_transition_stops_source_writing_descendant errors. In-memory trace: first cleanup returns parent -15; repeated cleanup raises PermissionError at runner.py:340. Evidence: state/evidence/S00-012-auto-ci-cd-28868645424b.md",
|
|
"role": "ci-cd",
|
|
"reviewer_role": "qa",
|
|
"scope": [
|
|
"scripts/runner.py",
|
|
"tests/tooling/test_automation.py"
|
|
],
|
|
"outcome": "Reliable repeated lifecycle cleanup after submit with a reaped parent and SIGTERM-ignoring descendant, preserving actual process-tree termination and valid workflow state.",
|
|
"steps": [
|
|
"Read S00-012 evidence and preserved descendant regressions.",
|
|
"Reproduce repeated cleanup EPERM in the supplied execution harness without launching a model.",
|
|
"Correct only the repeated-cleanup lifecycle failure; retain fail-closed handling for inaccessible live descendants and terminal/deadline monitoring.",
|
|
"Run descendant, delayed stdin and existing lifecycle checks plus make check; record evidence and submit."
|
|
],
|
|
"acceptance": [
|
|
"Submit-transition descendant regression completes without invalid escalation or delayed source writes.",
|
|
"Timeout and terminal-transition paths terminate descendants, including SIGTERM-ignoring children.",
|
|
"Repeated cleanup does not hide a failure to terminate a live process; stdin delivery and prompt budgets remain intact."
|
|
],
|
|
"checks": [
|
|
"Both preserved descendant regressions.",
|
|
"Delayed-reader UTF-8/EOF, timeout, transition, scope and fresh-session runner checks.",
|
|
"make check"
|
|
],
|
|
"depends_on": [],
|
|
"requires_user_input": false
|
|
}
|