diff --git a/documentation/pilot/RUNBOOK-publish-0.85-0.120-2026-07-12.md b/documentation/pilot/RUNBOOK-publish-0.85-0.120-2026-07-12.md index 8eee222..099c00f 100644 --- a/documentation/pilot/RUNBOOK-publish-0.85-0.120-2026-07-12.md +++ b/documentation/pilot/RUNBOOK-publish-0.85-0.120-2026-07-12.md @@ -1,11 +1,11 @@ # RUNBOOK results — publish train agent 0.85.0 + golden 0.120.0 + floor (fleet half; Peti parked) (2026-07-12) **Class:** publish/signing runbook (GL-1 pattern) — the CAMPAIGN-3 wave fleet train. -**Status:** Fleet half **COMPLETE** — Phases 0/A/B/C done, Phase F **env floor** moved + verified. -Phase D/E/G (Peti `peti-felhom-86d37d`, sajatfelhom.hu) **PARKED**: his server is offline (dead fan) -as of this date, so no op was signed for it — the MinAgent-0.81 gate protects him automatically until -he returns. One remaining fleet step is the operator's: save the **DB global floor** to 0.120.0 (last). -No credential or signature-key material in this doc. +**Status:** Fleet half **COMPLETE** — Phases 0/A/B/C done, Phase F floor moved + verified on **both** +sources (env GitOps + DB hub_settings, aligned at 0.120.0). Phase D/E/G (Peti `peti-felhom-86d37d`, +sajatfelhom.hu) **DEFERRED — no ETA**: his server is offline (dead fan) with no known return date, so +no op was signed for it. The MinAgent-0.81 gate protects him automatically whenever he does return; +the fleet is not waiting on him. No credential or signature-key material in this doc. ## The operator values (saved in the hub Day-0 manifest — UI-confirmed byte-identical) @@ -16,7 +16,7 @@ GOLDEN_VERSION=0.120.0 GOLDEN_SHA256=f7d7d02c76b49891719df9cf68624c9ae193e438e2a3a63b948a2a9d12887596 MIN_AGENT=0.81.0 FLOOR (env, GitOps 0eb9dc2)=0.120.0 ← live in the pod -FLOOR (DB hub_settings)=0.113.0 ← operator saves 0.120.0 LAST (effective floor until then) +FLOOR (DB hub_settings)=0.120.0 ← operator-saved 11:19:43Z (hub-logged); effective floor = 0.120.0 ``` ## Gate outcomes (Phase 0) @@ -73,19 +73,20 @@ share yet (F12 fix is latent-protective for him). **0.120.0** (commit `0eb9dc2`), ArgoCD hard-refresh + deliberate sync → **Synced/Healthy**, hub rolled out, **live pod `printenv` == 0.120.0**. Demo: no churn (already 0.120.0). -**DB global floor (operator, LAST):** NOT moved by CC — it is the operator's `hub_settings` save and -takes precedence + acts immediately (the 9-minute-skew lesson: save it last). **Until the operator -saves 0.120.0 there, the fleet's EFFECTIVE floor remains 0.113.0** (DB wins over the env fallback). -Blast radius of the save is zero online boxes (demo already 0.120; Peti offline), and it is required -so Peti reaches 0.120 after his agent lands. +**DB global floor (operator, LAST):** saved by Viktor to **0.120.0** at **11:19:43Z** — hub log +`Global controller-version floor set to "0.120.0"` (store write-path). DB wins over env, so the +fleet's **effective floor is now 0.120.0**, aligned with the env fallback. Blast radius was zero +online boxes (demo already 0.120; Peti offline). When Peti returns and his agent reaches ≥0.81, this +floor lands his controller at 0.120 automatically. ## Deviations from the letter of the runbook -1. **Peti offline at train time** → the entire Peti arc (D/E/G) parked; only the fleet artifacts - (A–C) + env floor (F-fleet) ran. No skew risk: his box is gated (agent 0.79 < MinAgent 0.81). -2. **DB floor left at 0.113.0 by CC** (operator-only + saved-last). Consequence to remember: the - effective floor is still 0.113.0 until the operator saves — env 0.120.0 is only the fallback. No - live impact given the fleet shape, but Peti's eventual 0.120 hinges on this save. +1. **Peti offline at train time, no return ETA** → the entire Peti arc (D/E/G) deferred indefinitely; + only the fleet artifacts (A–C) + floor (F) ran. The fleet does not wait on him — his box is gated + (agent 0.79 < MinAgent 0.81) and the floor lands him whenever he returns + updates his agent. +2. **Floor moved cleanly on both sources this train** (env first via GitOps, then the operator's DB + save last per the 9-minute-skew rule) — no transient skew, unlike the 0.81/0.113 train where the + UI floor save acted before the agent op. Aligned at 0.120.0. ## Security notes @@ -103,10 +104,10 @@ so Peti reaches 0.120 after his agent lands. | Golden 0.120.0 published + anon-fetchable + sha-verified | ✅ `f7d7d02c…887596` (612 309 180 B) | | Hub manifest vouches both (MinAgent 0.81.0) | ✅ UI-confirmed | | Env floor 0.120.0 (GitOps `0eb9dc2`) | ✅ Synced/Healthy, live pod verified | -| DB global floor 0.120.0 | ⏳ **operator — save LAST** (effective floor 0.113.0 until then) | +| DB global floor 0.120.0 | ✅ operator-saved 11:19:43Z (hub-logged); effective floor 0.120.0, aligned with env | | Demo: unchanged (0.120.0 / 0.85.0) | ✅ no churn | | Drill VM | ✅ reverted to virgin; `~/drill/bake-0.120.0.log` retained | -| Peti agent 0.85 + controller 0.120 | ⏸ **PARKED — box offline (dead fan)**; gate holds him at 0.113 until his agent lands | +| Peti agent 0.85 + controller 0.120 | ⏸ **DEFERRED — box offline (dead fan), no ETA**; fleet not waiting; gate holds him at 0.113 until his agent lands | | Phase E journal group on Peti's host | ⏸ with his return (LOW — no NAS share yet) | | G1 delete Peti temp Git Sync creds | ⏸ with his return | | Hub bearer key rotation | ⏳ operator — see Security notes |