docs: rulings 7 and 8 shipped and proven live (R-470/R-472/R-475 CLOSED); R-477..R-480 opened
gates / gates (push) Successful in 21s

Hub v0.112.0 serves a floor above the golden with a declared MinAgent;
controller v0.239.0 reached both demo boxes by that floor in 14 s and 15 s
and updates on any backup tier. 09 §3 decisions 7 and 8, §6/§6.1; 07 §6
line; capability map row; STATUS items 15/16 done and the cadence line
corrected; CONTEXT; register: R-470/R-472/R-475 compressed to CLOSED-ITEMS
(full text at 2f5d3af), R-477..R-480 opened, R-474 reproduced a third
time. OPEN-ITEMS 431689 -> 432156 bytes, CLOSED-ITEMS 118051 -> 120598.
Evidence: documentation/audits/rulings-r472-r475-2026-09-13/.
This commit is contained in:
2026-09-13 17:54:23 +02:00
parent 2f5d3af6f9
commit 681c3d6a6d
25 changed files with 735 additions and 71 deletions
+31 -26
View File
@@ -1,35 +1,40 @@
# REPORT — update arc slice 4 documents, and a correction to this morning's golden-cadence page (2026-09-13)
# REPORT — two rulings: the floor carries a release without a golden, and every backup counts (2026-09-13)
*Overwritten each session. Nothing durable lives only here — every finding below has a register row.
The implementation report is `felhom-controller/REPORT.md`.*
The controller report is `felhom-controller/REPORT.md`.*
> **The Update button is a guarded job, shipped as controller v0.237.0–v0.238.1 and proven live on
> demo-hp.** This repo carries its documents: `09-update-architecture.md` §6.1, the register, the
> capability map, ROADMAP, CONTEXT and STATUS. **It also carries a correction to what this repo said
> this morning:** under the weekly golden cadence a release does NOT reach the fleet by floor.
> **Both rulings are shipped and proven live.** Hub v0.112.0 serves a floor above the vouched golden
> when the release's MinAgent is declared with it. Controller v0.239.0 reached both demo boxes by that
> floor alone, in 14 s and 15 s, and lets an app update on any backup tier.
## What changed here
- `documentation/architecture/09-update-architecture.md` — slice 4 SHIPPED; §6.1 describes the sequence
as shipped, the two knobs, the abort decision (not built, by measurement), the v0.238.1 finding and
the live proof; §8.6 closed.
- `documentation/backlog/OPEN-ITEMS.md` — **R-448, R-443, R-439 CLOSED** and compressed to
`CLOSED-ITEMS.md`; **R-472..R-476 opened**; R-469 unblocked, not lifted. 214 open / 174 closed;
431 689 bytes, from 439 828.
- `documentation/architecture/00-capability-map.md` — "Update is GUARDED" row, PROVEN-LIVE, citing
`audits/slice4-2026-09-13/`.
- `documentation/backlog/ROADMAP.md` — slice 4 collapsed.
- `documentation/audits/slice4-2026-09-13/` — live evidence, red-proof outputs, gate results.
- `STATUS.md` — item 14 (plain words), items 15 and 16 (two operator decisions).
- **The correction.** `RUNBOOK-manual-build.md` §4.2, `STATUS.md`, `CONTEXT.md`, R-468's row and the
`golden_currency_gate.py` docstring said a release still reaches the demo boxes by floor in about
20 seconds between bakes. **The hub holds a floor above the vouched golden**, so that is false. Each
now says so and points at R-472. `scripts/CHANGELOG.md` records it.
- **Hub v0.112.0** (`f181efd`, deployed by `2f5d3af` + ArgoCD sync; Synced/Healthy, image 0.112.0).
Declared MinAgent stored beside both floors; `ResolveManagedFloor` uses it above the golden; both
forms refuse a floor above the golden without it (`floor_needs_min_agent`); Hosts badge and a
`managed floor SERVED … from <source>` log. Vouch path and R-120 gate untouched.
- **Runbooks:** `publish-train-rules.md` rule 1; `RUNBOOK-manual-build.md` §3 "Raise the floor to a
release with no golden" and the §4.2 correction resolved.
- **Architecture:** `09-update-architecture.md` §3 decisions 7 and 8, §6 and §6.1; `05-hub-architecture.md`
§5; `07-backup-architecture.md` §6; capability map "Update is GUARDED" row.
- **Register:** R-470, R-472, R-475 closed and compressed; R-477..R-480 opened; R-474 re-confirmed.
- **Evidence:** `documentation/audits/rulings-r472-r475-2026-09-13/` (live 01–10, red-proofs).
- `STATUS.md` items 15 and 16 rewritten as done; the cadence correction line fixed. `CONTEXT.md` updated.
## Numbering note
§3 already held a decision 6 from this morning, so the two new rulings are numbered 7 and 8 rather than 6 and 7.
## Negative control
An undeclared floor above the golden no longer reaches the hold: the form refuses it first (303
`floor_needs_min_agent`, floor still 0.236.0, hub WARN). The hold itself for that shape is proven by
test C and its red-proof.
## Observations
1. **The golden cadence and the hub's floor rule contradict each other.** **FILED: R-472.**
2. **The glance catalog template crash-loops on a fresh install.** **FILED: R-473.**
3. **App removal with "delete backups" leaves the recovery unit and Tier-2 copy.** **FILED: R-474.**
4. **The update precondition is Tier-2-only.** **FILED: R-475.**
5. **The Mentések page dates a copy by its manifest, which lags the data.** **FILED: R-476.**
1. **The update's Tier-3 lookup takes its full 15 s bound and logs a misleading size WARN.** FILED: R-477
2. **A leftover unit from a removed install counts as a reinstall's fresh Tier-1 copy.** FILED: R-478
3. **A Tier-1 route back restores settings only for a bind-data app.** FILED: R-479
4. **The card keeps the failure sentence after a successful restore.** FILED: R-480
5. **Removal with `remove_backups` left units and prefs again.** FILED: R-474