Files
cc-ci/machine-docs/STATUS-pxgate.md
autonomic-bot 162f731e91
Some checks failed
continuous-integration/drone/push Build is failing
status(pxgate): ## DONE — M1+M2 PASS, cycle broken, cold-boot sim confirms no deadlock
M2 verified: nixos-rebuild @13:43Z deployed /api/version probe; deploy-proxy
active(exited) in 279ms (nixos-rebuild) and 17ms (cold-boot sim) — no alert, no
deadlock. All 9 services 1/1. Running server unaffected. Adversary PASS @13:44Z.
BUILDER-INBOX consumed.
2026-06-13 13:47:42 +00:00

2.7 KiB

STATUS — phase pxgate (Builder)

Phase plan: /srv/cc-ci/cc-ci-plan/plan-phase-pxgate-proxy-healthgate.md Phase start: 2026-06-13


Gate: M1 — PASS @2026-06-13T13:00Z (Adversary cold-verified)

See REVIEW-pxgate.md for full evidence. Summary:

  • Code change correct: health_path="/api/version", health_domain removed → defaults to traefik.ci.commoninternet.net
  • Controlled reproduction: dashboard=0 → old probe=404, new probe=200 ✓
  • Consumer ordering unchanged ✓; alert dir empty ✓; DEFERRED + DECISIONS updated ✓
  • Gate has teeth: health_code() returns 0 on curl failure → 0 ∉ health_ok=(200,) → rollback triggered

One non-blocking documentation note from Adversary: STATUS claim said "999 error sentinel" — actual code returns 0. No code defect.


Gate: M2 — PASS @2026-06-13T13:44Z (Adversary cold-verified)

See REVIEW-pxgate.md for full evidence. Summary:

  • nixos-rebuild at ~13:43 UTC; deploy-proxy re-ran with new nix store path 8qjh8apxcbs85asgizkymjskicf4zmsl
  • New runner /nix/store/5hic3aba65i88m1ib67b7g6dwzrzd1z2-runner/warm_reconcile.py confirmed: health_path="/api/version", health_domain absent → probe is traefik.ci.commoninternet.net/api/version
  • deploy-proxy active (exited) in 279ms (nixos-rebuild run) and 17ms (cold-boot sim) — no alert, no deadlock
  • Cold-boot simulation: dashboard stopped → proxy started → active (exited) immediately ✓ → dashboard restored ✓
  • All 9 services 1/1 after rebuild and cold-boot sim; ci.commoninternet.net → 200; /api/version → 200
  • Rollback path unchanged: health_code() returns 0 on curl failure → 0 ∉ health_ok=(200,) → rollback ✓
  • A1/DEFERRED entry closed (at M1); consumer ordering unchanged ✓

DONE

Phase pxgate complete. All Definition-of-Done items met and Adversary-verified:

Item Status Evidence
Cycle broken (deploy-proxy↔dashboard) Cold-boot sim: proxy active (exited) without dashboard
Dashboard-independent health gate traefik.ci.commoninternet.net/api/version — traefik's own API
Rollback intact Gate returns 0 on failure → not in (200,) → rollback triggered
No consumer mis-ordered Adversary P3 probe: all After=deploy-proxy consumers unchanged
Running server unaffected All 9 services 1/1; ci.commoninternet.net → 200
A1/DEFERRED closed DEFERRED.md entry closed at M1; DECISIONS.md updated
M1 Adversary PASS REVIEW-pxgate.md @2026-06-13T13:00Z
M2 Adversary PASS REVIEW-pxgate.md @2026-06-13T13:44Z

Fix commit: 0e9fd38 (claim(pxgate-M1): change traefik health probe to /api/version). Live since nixos-rebuild @2026-06-13T13:43Z.