71 lines
4.7 KiB
Markdown
71 lines
4.7 KiB
Markdown
# REPORT — the day of 2026-10-22: the family's mail list, the swap check (D28 = A), the Tester 2 hand-over
|
|
|
|
**Operator rulings (11:42):** D28 = A; agent 0.162.0 vouched (read back: hub `artifact_agent_version` 0.162.0, 07:57
|
|
UTC); Tester 2's laptop used our installer; Tester 2 off, no date. Design read: `08-alarm-ladder.md`,
|
|
`05-hub-architecture.md`, `03-host-agent.md`. Baselines: controller `08fa440d`, agent `2d5840ba`, felhom.eu `a9283741`.
|
|
|
|
## Four lines
|
|
|
|
1. **Mail list fix live** on the hub (0.165.0) and on Tester 1, demo-hp and demo-felhom (controller 0.339.0, global
|
|
floor). A box with no list of its own now adopts the family's list from the hub; a default never overwrites it.
|
|
2. **One family list restored: demo-felhom** (13 events, from the hub's 00:00 UTC snapshot; this morning's release had
|
|
made it 17). After the release demo-felhom adopted it; all six hub rows equal the snapshot.
|
|
3. **Swap warning rule:** none, or below 90 % of min(the guests' swap, 8 GB). The two morning alarms cleared at the next
|
|
report (demo-hp 11:04, demo-felhom 11:09 UTC), no mail. No agent change.
|
|
4. **Hand-over list:** `documentation/pilot/TESTER2-handover.md`, linked from STATUS.
|
|
|
|
## Versions, digests, CI
|
|
|
|
| | version | digest | CI (commit → job) |
|
|
|---|---|---|---|
|
|
| hub | 0.165.0, DEPLOYED (operator yes; only `Deployment/hub` synced, manifest `25dae2f5`) | `sha256:c6180fb79a2ff7d5546a704c68b634b9207afb0a0ecd524c74b0310434532537` | `5ae5984c` → 2207 success; `25dae2f5` → 2208 success |
|
|
| controller | 0.339.0-rc.1 (9202) | `sha256:7d4c88528b50adeb891e409cf50343f44fb168a84e890d42864b8124f3051fdd` | `add310c` → 2206 success |
|
|
| controller | 0.339.0, released, global floor (MinAgent 0.158.1) | `sha256:fee71aafceb4a7d5f24ae4a6a273a8d51eb26e0550fe9d12d4d86955f6a343a8` | `fc5a20f` → 2209 success |
|
|
|
|
Agent: no change. Evidence: `documentation/audits/day-2026-10-22/` (rows before, the restore, rows after, the release
|
|
on the three boxes, https-only).
|
|
|
|
## What was built
|
|
|
|
- **Hub:** `customer_notifications.household_saved` — set only by the household's own save (`source: household`),
|
|
never cleared; any other push over a marked list → `{"status":"kept"}` (an older controller's push with neither
|
|
address nor clear counts as not the household's — that is 0.338.0's default push); `GET /api/v1/preferences`
|
|
(customer-scoped); one-time backfill (written after creation → a box wrote it): Tester-2 false, Tester4 false,
|
|
demo-felhom / demo-hp / tester-1 / `_resend-rotation-test` true. `host_swap_short` by the new rule.
|
|
- **Controller:** start-up — a saved list as before (R-922); none saved → read the hub, adopt a household's, else push
|
|
the default once and save it; unreadable hub → nothing. The swap sentence by the same rule.
|
|
- **Contract:** one case table in both repos, byte-identical, each run by a Go test; `scripts/host_swap_rule_gate.py`
|
|
with 4 decoys (`test_host_swap_rule_gate.py`).
|
|
- **Red-proofs seen failing:** hub A / A-legacy / C (refusal removed), the swap table and the clear (morning rule), the
|
|
backfill (marking off); controller A / B / unreadable hub (0.338.0's rule), the empty-list test (getter restored),
|
|
the swap table (morning rule).
|
|
|
|
## Rows
|
|
|
|
Before 178, after 178. Opened 2: R-1199 (reopened), R-1217 (demo-hp's hub list has 3 app events its page does not
|
|
show — P4). Closed 2: R-1199, R-1216.
|
|
|
|
## Observations
|
|
|
|
- An empty saved list read back as the 17 defaults (Tester 1, demo-hp) — **NOT-A-FINDING: fixed in this session**
|
|
(size rule; controller CHANGELOG „Fixed without a row").
|
|
- The add-only seeds re-added a just-switched-off mail on a new box's second start — **NOT-A-FINDING: fixed in this
|
|
session** (same entry).
|
|
- demo-hp: hub mails 3 app events the page does not show — **FILED: R-1217**.
|
|
- The cleared swap alarms sent no mail (`host_swap_ok` is info) — **NOT-A-FINDING: the ladder sends no operator mail
|
|
for an info clear; the event row is the record.**
|
|
- A docstring test refused my first push (`9c.` is not a gate-list number) — **NOT-A-FINDING: my numbering; fixed
|
|
before the push.**
|
|
- The safety check blocked one `sh -c` with a temp-file removal; rewritten with no file to remove — **NOT-A-FINDING:
|
|
nothing was run.**
|
|
- 9202 has no hub link, so the rc there proved start-up only — **NOT-A-FINDING: the mail path was proven on the three
|
|
test boxes through the floor.**
|
|
|
|
## Teardown
|
|
|
|
- **Machine:** nothing created. 9202 now runs 0.339.0-rc.1 (the scratch box; the floor moves it at its next report if
|
|
it reports — it has no hub link, so set it by hand next time it is needed).
|
|
- **Host:** the three test boxes on controller 0.339.0 — intended.
|
|
- **Hub:** one row written (demo-felhom's restored list, through `POST /api/v1/preferences`); global floor 0.339.0;
|
|
no per-customer floor left.
|