Qualify 8.1.3 with hardened release evals - #58
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: ccc10c1ef6
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| const exited = new Promise<void>((resolve) => | ||
| child.once("exit", () => resolve()), | ||
| ); | ||
| signalProcessTree(child, "SIGTERM"); |
There was a problem hiding this comment.
Reap descendants before terminating the wrapper
On Linux containers where the detached wrapper owns a child process, sending SIGTERM to the entire process group kills the wrapper before it can wait for and reap that child. The child can consequently remain as a zombie, and the later polling and SIGKILL cannot remove it because this process is not its parent; the function then returns after its deadlines with the PID still present. This is reproducible with the newly added bun test tests/eval-reporting.test.ts, whose detached-wrapper test fails at the child-PID assertion, and repeated eval runs can accumulate these entries. Terminate descendants before the wrapper or otherwise arrange for them to be reaped before returning.
Useful? React with 👍 / 👎.
Summary
8.1.3and hardens release qualification around repository-owned sampling, durable failed-attempt evidence, bounded environment reserves, and independent bundle regrading..flow/results.xmlpath and gives Bun the complete JUnit command.Session v5 and the public command/tool surface are unchanged.
Release qualification
10327962026-08-29T03-22-04-307Z.v2xai/grok-4.6andopenai/gpt-5.6-solsha256:5e2ae6de646ec35e8fa6e9ec77e949cb56a8a16f50aa399b381eff6bd7f59b47The exact-artifact Grok canary passed all six derived checks with one manager/reviewer lineage, named broad JUnit evidence, completed closure, and runtime identity bound to version 8.1.3 plus the measured plugin entry. Its record is
sha256:4940dc0c7c0e9836f67237c934865c40e115eb12f44a12f7b1888baabd6140b9.Qualification bundle
qb1-521ae36e04b02367f7610caeed95db2edf9e10cc0339a16765f767ef22b18b76independently regrades toVERIFIED. A final evidence scrub removed unnecessary encrypted provider reasoning and project-linkage metadata before sealing. The committed evidence contains no raw session handles, credentials, real host paths, or symlinks.Verification
bun run check: 642 passed, 1 intentional non-live skipbun run replay: 13/13 cassettes reproducedbun run smoke:live: 14/14 passed on OpenCode 1.18.6bun run eval:canary -- verify ... --mode strict:VERIFIEDrelease:metadata: exact bundle independently regraded and verifiedFinal multi-model review found no release-blocking qualification or release-readiness issue. The valid privacy finding was fixed by resealing the same canary session with stricter evidence redaction.