From d7d2ad566af778b1d315616bbea8b8a3c4dd2191 Mon Sep 17 00:00:00 2001 From: Joseph Magly <1159087+jmagly@users.noreply.github.com> Date: Sat, 15 Aug 2026 23:58:56 -0400 Subject: [PATCH] docs: record Windows checkpoint repair evidence --- .aiwg/testing/gate3-increment-4-report.md | 41 ++++++++++++++++------- 1 file changed, 29 insertions(+), 12 deletions(-) diff --git a/.aiwg/testing/gate3-increment-4-report.md b/.aiwg/testing/gate3-increment-4-report.md index e8e8453..504fbc9 100644 --- a/.aiwg/testing/gate3-increment-4-report.md +++ b/.aiwg/testing/gate3-increment-4-report.md @@ -4,34 +4,37 @@ Date: 2026-08-15 Exact base: `c1b34503ddd3cb797e5d70671c47afcabfe73832` Exact core implementation/mutation head: `9da022e6f3bc73d17fd31d4da70b42e3ca052ba2` +Windows durability repair commit: +`2771dd42cacec3e137804f0ba0e1b12c5d611c0d` Delivery head: the containing documentation and Windows-CI commit, resolved with `git rev-parse HEAD` Canonical merge: pending -Status: PASS locally; hosted Windows contract, exact-head audit, and merge pending +Status: PASS locally; repaired hosted Windows contract, exact-head audit, and +merge pending ## Results | Gate | Result | |---|---| -| Focused checkpoint/policy contracts | 176 passed in 6.08s at the exact core head; the delivery-head portability-policy selection also passed 176 tests in 6.36s | -| Mandatory CPU matrix | Exact core head — Python 3.10: 1,878 passed in 88.21s; Python 3.11: 1,878 passed in 80.63s. Exact delivery head — Python 3.12: 1,877 passed, 2 expected xfails in 45.49s. Nine conditional tests were deselected on each interpreter | -| Repository coverage | 76.60% statements / 63.25% branches before; 76.77% / 63.55% after | -| Mature CPU scope | 93.12% statements / 82.60% branches before; 93.19% / 82.85% after | -| Changed executable lines | 138/138 (100%) against the exact base on Python 3.12 | +| Focused checkpoint/policy contracts | 176 passed in 6.08s at the exact core head; the repaired delivery tree passed 180 tests in 6.47s | +| Mandatory CPU matrix | Exact core head — Python 3.10: 1,878 passed in 88.21s; Python 3.11: 1,878 passed in 80.63s. Repaired delivery tree — Python 3.12: 1,881 passed, 2 expected xfails in 54.51s. Nine conditional tests were deselected on each interpreter | +| Repository coverage | 76.60% statements / 63.25% branches before; 76.77% / 63.56% after | +| Mature CPU scope | 93.12% statements / 82.60% branches before; 93.20% / 82.86% after | +| Changed executable lines | 143/143 (100%) against the exact base on Python 3.12 | | Touched production modules | 2/2 pass exact-base line and branch no-regression | -| Persistence seam | `persistence_contracts.py`: 100% statements and 100% branches (166 statements, 58 branches) | +| Persistence seam | `persistence_contracts.py`: 100% statements and 100% branches (171 statements, 60 branches) | | Abliteration runtime | 50.82% statements / 38.03% branches before; 50.91% / 38.03% after | | Selective mutation | 1,614/1,827 killed (88.34%); 208 survived; 5 timed out; 0 no-test, suspicious, skipped, interrupted, or segfault results | -| Changed persistence mutation | 229/229 killed; 0 survived or timed out | +| Changed persistence mutation | Exact core head: 229/229 killed. Repaired delivery tree: 233/233 killed; 0 survived or timed out | | Mutation runtime | 920.27s; 1,121,616 KiB maximum parent RSS; required-target guard passed | | Repeatability | 493 tests passed in each of three file orders/hash seeds; 33.832s total; no flake candidates or consistent failures | | Package | sdist and wheel built; metadata, contents, isolated import, version, module entry point, and console entry point passed on Python 3.12 | | Supply chain | Pinned `uv 0.12.4` lock, all-extras import, Gitleaks, Python 3.10–3.12 vulnerability audits, wheel-bound CycloneDX SBOM, and license policy passed | -| Windows portability | A focused Python 3.12 hosted job now blocks on checkpoint atomicity, persistence, and pipeline contracts and retains JUnit evidence; first exact-head result pending | +| Windows portability | The first hosted lane correctly blocked delivery after exposing `os.O_RDONLY` as an invalid Windows `_commit`/`fsync` handle (23 failed, 62 passed). The repaired selector uses `O_RDWR | O_BINARY` on Windows and `O_RDONLY` elsewhere; second exact-head result pending | The mandatory Python lanes remain below the 240-second policy budget. The final -Python 3.12 test time measured 10.08s faster than the exact-base 55.57s while -adding 47 passing tests. The slowest Python 3.12 test remains the existing +Python 3.12 test time measured 1.06s faster than the exact-base 55.57s while +adding 51 passing tests. The slowest Python 3.12 test remains the existing offline model save/reload slice at 5.364s; no new checkpoint test exceeds an owned duration budget. @@ -67,6 +70,11 @@ owned duration budget. by an unverified CI comment: a focused `windows-latest` lane executes the checkpoint contracts with the locked Python 3.12 environment and retained JUnit evidence. +9. Regular-file durability uses a platform-specific descriptor contract. POSIX + retains a read-only descriptor, while Windows requests the writable binary + descriptor required by its C-runtime `_commit` implementation. Pure flag + selection, descriptor use, and close-on-failure behavior are regression- and + mutation-tested independently of the host platform. ## Defects and mutants detected @@ -77,6 +85,11 @@ parent-sync/rollback observability. The repaired exact-target campaign killed all generated persistence mutants. The final complete campaign preserved that 229/229 result while exceeding the immutable aggregate 85% floor. +The first repair attempt exposed three Linux-equivalent mutation survivors +because `os.O_BINARY` is absent on POSIX. Refactoring the flag selector to take +the platform binary flag explicitly made the Windows behavior independently +observable; the repaired campaign killed all 233 persistence mutants. + The full fault-injection suite also detects partial directory trees, unsafe or missing shards, symlinked artifacts, file-fsync failure, concurrent commit interleavings, incomplete rollback, cleanup-warning suppression, stale staging @@ -86,6 +99,8 @@ ownership, and offload-directory ownership loss. - Exact delivery-head Python 3.12 coverage/JUnit/trend evidence: `/tmp/obliteratus-gate3-item4-final-JlA1k3/` +- Repaired delivery-tree Python 3.12 coverage/JUnit evidence: + `/tmp/obliteratus-gate3-item4-windows-fix-final-tZIqbG/` - Exact-base Python 3.12 coverage/JUnit evidence: `/tmp/obliteratus-gate3-item4-base-2uZEXr/` - Python 3.10 and 3.11 coverage/JUnit evidence: @@ -95,6 +110,8 @@ ownership, and offload-directory ownership loss. `/tmp/obliteratus-gate3-item4-repeat-H23MdN/` - Exact core-head mutation evidence: `/tmp/obliteratus-gate3-item4-mutation-PVKKOL/` +- Repaired delivery-tree persistence mutation: 233/233 killed from prepared + local `mutants/` evidence; hosted aggregate quality-depth evidence pending - Python 3.10/3.11 and quality-depth normalized trends: `/tmp/obliteratus-gate3-item4-trends-lrrEjF/` - Package evidence: @@ -118,7 +135,7 @@ a checkpoint portability contract, not a claim that accelerator, MPS, MLX, network, download, remote, or operator-UI execution is supported by this increment. -Delivery requires the containing commit to be pushed, pass the first hosted +Delivery requires the containing commit to be pushed, pass the repaired hosted Windows checkpoint run and all existing required checks, be audited at its exact final SHA with no unresolved review thread, and be rebase merged before item 5 begins.