Repository navigation
Fix preflight readiness cancellation tests on slow hosts - #120
Conversation
The independent eight-second wait expired before the actual emitter started. Preserve the atomic readiness marker and real session-cleanup assertions, using bounded readiness and cleanup intervals within the fixture budget. Keep the synthetic emitter alive until cancellation and permanently delay SIGHUP readiness to expose the old deadline reliably. Validation: original wait fails one delayed-start control at readiness; full Python suite 61/61; five consecutive delayed-start cleanup controls 5/5. Independent static review found no blocking defect. This measures cleanup behavior, not host performance. Closes #116.
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
|
The account paying for this security review has reached its Codex usage limits. The payer can check the Codex usage dashboard. For personal accounts, using credits requires enabling “Use credits for security reviews” in Code review settings. If you do not manage the paying account, contact this repository's admins. |
|
Reviewed head Exact-head CI completed successfully (one workflow, one test job), and the PR is clean. Source scope is the synthetic process-level test harness; solver behavior is unchanged. |
Cancellation tests could fail before the synthetic oracle emitter published its PID because a separate eight-second readiness deadline expired on a busy host. Wait for the existing atomic readiness marker within a shared, bounded fixture budget, leaving time for cleanup. The emitter stays alive long enough that natural completion cannot satisfy the cancellation check.
The SIGHUP control deliberately delays PID publication for nine seconds, making the previous gate fail at the intended readiness assertion. The corrected full Python suite passes 61/61, and five consecutive delayed-start cleanup controls pass. Each still asserts the real child session is empty before fallback cleanup, and the failure receipt records the actual signal. This is a deterministic startup-delay calibration, not a performance measurement.
Closes #116.