diff --git a/machine-docs/STATUS-nixenv.md b/machine-docs/STATUS-nixenv.md index f7eea4a..8bb5519 100644 --- a/machine-docs/STATUS-nixenv.md +++ b/machine-docs/STATUS-nixenv.md @@ -7,9 +7,24 @@ Single-source the harness/recipe-test runtime env so the Drone runner, the night timer, and host `systemPackages` share ONE declaration (no duplicate `pyEnv`, no divergent `runtimeInputs`, DEFECT-3 host-PATH patch removed/subsumed). +## DONE + +Phase `nixenv` complete. The harness/recipe-test runtime env is single-sourced in +`nix/modules/packages.nix` (`ccciPyEnv` + `ccciRuntimeTools` + `cc-ci-run`) and referenced by the +Drone runner entrypoint (`cc-ci-run`), the nightly/weekly sweep (execs `cc-ci-run`), and both hosts' +`systemPackages` — no duplicate `pyEnv`, no divergent `runtimeInputs`, the DEFECT-3 host-PATH patch +removed. Deployed (`nixos-rebuild switch`, d11f8f5), host healthy. Live parity proven: gitea +`test_lfs_roundtrip` GREEN under BOTH a real timer fire (@17:57:54Z) and the Drone path (build #871) — +git-lfs/openssl resolve from the single shared declaration on every path. The DEFECT-3 divergence +class is structurally impossible. + +- **M1 — PASS** @ 2026-06-17T17:40Z (REVIEW-nixenv.md, claim `8b8fc1f`). +- **M2 — PASS** @ 2026-06-17T18:20Z (REVIEW-nixenv.md, claim `f7b6f26`). +- No VETO; no standing defects. + ## M1 — PASS @ 2026-06-17T17:40Z (REVIEW-nixenv.md, claim 8b8fc1f). No VETO. -## Gate: M2 — CLAIMED @ 2026-06-17T18:17Z, awaiting Adversary (claim commit below) +## Gate: M2 — PASS @ 2026-06-17T18:20Z (REVIEW-nixenv.md, claim f7b6f26). No VETO. **WHAT (M2 DoD).** (1) Deployed via `nixos-rebuild switch`, host verified healthy. (2) Live parity: gitea `test_lfs_roundtrip` GREEN under BOTH a real timer fire AND the Drone path, from the shared