autonomic-bot
a044abb298
feat(2w): W0.6 unpinned warm reconciler + WC1.2 safety gate + WC1.1 scaffold
runner/warm_reconcile.py (python, packaged into nix store, replaces bash
reconcile): UNPIN keycloak (deploy latest published version TAG; recipe fetched
at runtime -> D8 closure byte-identical). WC1.2 pre-deploy safety gate (runs
FIRST): major recipe/app-version bump OR releaseNotes manual-migration marker
-> hold-on-current + alert sentinel (no deploy churn). WC1.1 health-gated
upgrade-with-rollback: record last-good -> [keycloak: undeploy->warmsnap.snapshot
->deploy latest] -> health-gate -> commit-or-(restore+redeploy-prior+alert).
Alerts = /var/lib/ci-warm/alerts/*.json (Builder loop relays). current version
read from abra TYPE=<recipe>:<version>. CCCI_SKIP_FETCH test hook.
+8 unit tests for the version gate (56 unit pass).
Proven on cc-ci: nixos-rebuild switch -> warm-keycloak.service runs the python
reconciler -> noop-healthy (system 0-failed, /realms/master=200). WC1.2 holds
proven live: MAJOR bump -> held-major (keycloak untouched); minor+manual-
migration notes -> held-manual-migration (alert carries notes); no deploy churn.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-05-29 00:42:02 +01:00
..
2026-05-28 03:12:04 +01:00
2026-05-28 16:28:45 +01:00
2026-05-28 10:19:44 +01:00
2026-05-28 07:46:34 +01:00
2026-05-28 00:19:48 +01:00
2026-05-28 17:23:40 +01:00
2026-05-28 07:46:34 +01:00
2026-05-28 23:26:02 +01:00
2026-05-28 23:26:02 +01:00
2026-05-28 15:54:42 +01:00
2026-05-28 07:46:34 +01:00
2026-05-28 17:39:36 +01:00
2026-05-29 00:42:02 +01:00
2026-05-28 17:25:25 +01:00
2026-05-28 21:25:27 +01:00
2026-05-28 02:55:58 +01:00