Files
felhom.eu/REPORT-storage-identity-buildA-2026-10-15.md
T
admin 314308b4aa
gates / gates (push) Successful in 6m44s
storage identity build A: 16 accepted + §13 build status; D14; close R-1072/R-1074/R-1075; open R-1083/R-1084; live evidence
The operator ruled D1-D6 as recommended. Build A shipped (agent v0.157.0, controller v0.317.0 MinAgent 0.157.0,
hub v0.154.0): live on Tester 1 (unknown/vm, the "cannot check" notice, copies made not counted), demo-hp and
the N100 (proven, different, unchanged). NAS notice and the no-drive sentence are unit-proven only.
STATUS: D10 removed; vouch agent 0.157.0 and rule on R-1082 added. Poster: the Tier-2 line, text only.

Claude-Session: https://claude.ai/code/session_012qRErfCoiTkvDK9N5XHbzb
2026-10-15 21:49:38 +02:00

61 lines
4.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# REPORT — storage identity, build A: honest backup copies (2026-10-15)
Brief: „Storage identity, build A — honest backup copies (D1, D2, D4)". Design: `documentation/architecture/16-storage-physical-identity.md`
(now ACCEPTED; §13 = what was built). Evidence: `documentation/audits/storage-identity-buildA-2026-10-15/README.md`.
Method: endpoint level (no browser on DooPlex) — the agent's local API with the guest's token, the dashboard pages and
the Tier-2 endpoint the buttons call, the hub's database with its WAL.
## What shipped
| Component | Version | What | State |
|---|---|---|---|
| agent | v0.157.0 | every storage place: `kind`, `physical_disks`, `identity` + reason, in `GET /disks` and the hub report; `POST /disks/same-disk` | released; on Tester 1, demo-hp, N100 by signed jobs; **not vouched** |
| controller | v0.317.0 (MinAgent 0.157.0) | Tier-2 and the one-copy notice ask the agent (same → no copy; unknown → made, not counted, „cannot check" sentence; a NAS never counts and never hides the notice; an older agent keeps the old rule); the no-drive install sentence with a link | pushed; on the three test boxes by per-box floors; global floor still 0.314.0 |
| hub | v0.154.0 | stores the fields; the host page shows „Physical disk" and „Identity" | deployed |
## What the household sees
- **Tester 1 (a VM):** „A Felhom nem tudja ellenőrizni, hogy a második meghajtó valóban másik lemez-e…”. The copies are
made; each app says it is not counted as a second copy.
- **demo-hp and N100 (real disks):** nothing changed. Copies counted, no notice.
- **The no-drive sentence** („Ehhez az alkalmazáshoz egy adattároló kell. A Meghajtók oldalon adhatsz hozzá egyet.”):
unit-proven only; no one-disk box was at hand.
- **A NAS keeps the notice:** unit-proven only; the scratch box cannot reach its agent (R-1083).
## Register
Rows before: 170 · after: 170 · opened 3 · closed 3.
- Closed: R-1072 (fully — the brief expected half), R-1074, R-1075.
- Narrowed: R-1068 (the sentence built; the internal place waits for build B), R-1079 (build A shipped).
- Opened: R-1082 (the drives page offers `/mnt/sys_drive`, which the design rejects — yours), R-1083 (scratch box 9202
has no local API, so agent features cannot be tested there), R-1084 (the whole-box backup offer promises disk-failure
protection without checking the disk).
## Claims in the brief or the design that were wrong
1. „Never offer `sys_drive`" (16 §11): the drives page still offers it (R-280) → R-1082, for the operator.
2. „R-1072's half": all of R-1072 closed — the other sentence was already informal.
3. Live NAS proof on a scratch box: 9202 has no `local_api`, so no box could show it → R-1083.
4. 16 §3 „compute at start and on hot-plug": the build computes on every read instead; a swapped disk still never keeps an
old verdict.
5. The baselines in the brief had moved (another session released controller 0.316.1–0.316.4 meanwhile); build A sits on 0.316.4.
## Documents changed
`16-storage-physical-identity.md` (status, §12 ruled, §13 new) · capability map row **D14** (PARTIAL) + detail ·
`OPEN-ITEMS.md` / `CLOSED-ITEMS.md` · `STATUS.md` (D10 removed; one shipped line; two „do" items) · **system poster: text
only** — the Tier-2 line in `felhom-system-poster.facts.md` and the same text in `felhom-system-poster.html`.
## Waits on the operator
1. Vouch agent 0.157.0 and its bundle. Then CC raises the global floor to 0.317.0 / MinAgent 0.157.0 and clears the
three per-box floors. If not: every other box stays on 0.314.0 and its old rule.
2. Rule on R-1082 (hide `/mnt/sys_drive` on the drives page, or keep it until build B).
3. A build B task file (internal place, partitions, installer; the D3 space check).
## Teardown
Machine: the three test boxes stay on 0.317.0 (per-box floors); 9202 back on 0.314.0. Host: helper script removed from
demo-hp, felhom-pve, Tester 1's host. Hub: three per-customer floors (to clear after the global floor). Secrets: the
scratch password and token files deleted; none in any commit.