Claude-Session: https://claude.ai/code/session_012qRErfCoiTkvDK9N5XHbzb
3.1 KiB
REPORT — v0.318.0: the internal data place, partitions, an honest whole-box backup offer, sys_drive never offered (2026-10-16)
Written in ASD-STE100 Simplified Technical English. Design read first: felhom.eu architecture/16-storage-physical-identity.md
(§4–§6, §9, §13), 07-backup-architecture.md §6, 09-update-architecture.md (MinAgent). Task: storage identity build B
(operator rulings D3–D5; sizes ruled 2026-10-16). Agent counterpart: felhom-agent v0.158.1.
1. Baselines
controller 123d2d5 (v0.317.0) → a43d042 + 36da408 = v0.318.0. MinAgent 0.157.0 (no new agent endpoint; the internal
place and the partitions appear only when agent ≥ 0.158.1 reports them).
2. What changed
web/internal_place.go: an agent row of kindinternal→ GuestAttach on one tick, register on the next (kind internal, default when the household has none, label in the box's language);refuseInternalLifecycleon eject/decommission/wipe.web/backup_target_offer.go(R-1084):offerRelationFor— proven different → the promise; unproven →backup.target.offer_unproven; same disk → no offer; older agent → today's offer. The internal place is never offered.web/attach_sources.go(R-1082):withoutSystemVolumehides the system data volume by device.web/agent_disk_handlers.go,storage_handlers.go, templates: partitions in the wizards; a disk with a registered part offers only its free parts (format onlyformattable, use only filesystem parts);deviceBacksRegisteredrefuses the whole disk (409).- Locales:
storage.belso_tarhely,storage.belso_tarhely_magyarazat,storage_wizard.resz_n,err.web.belso_tarhely_eletciklus,err.web.meghajto_hasznalatban_formazas,backup.target.offer_unproven.
3. Tests and red-proofs
internal_place_test.go (5), stacks d4 (a media app's HDD_PATH lands on the internal place; the folder is never created so no
compose can run), r1084_offer_identity_test.go (6), r1082_sysdrive_hidden_test.go (3), partitions_test.go (5). Each was seen
failing by a compiling mutation (a non-compiling mutation was once read as „not caught" and redone). Four i18n parity
fixtures refreshed (diff = only the new lines). go test ./... and controller_gates.py --fast: green.
4. Live proof
Method: endpoint level (the dashboard requests) on a fresh one-disk scratch VM (512 GB, installer 1.33.0, golden 0.318.0):
the internal place registered as the default drive by itself; Jellyfin deployed with DOMAIN + SUBDOMAIN only → 202, healthy,
/media on the place; partitions: part 1 formatted, part 2 used, the whole disk refused (409); the backup offer on a VM
without the disk-failure promise; the attach list without /mnt/sys_drive. Tester 1, demo-hp and the N100 run 0.318.0 by the
floor. Evidence: felhom.eu audits/storage-identity-buildB-2026-10-15/live/.
11. Observations
- FILED: R-1094 — the whole-disk refusal sentence says „Csak a szabad részét formázhatod", untrue while another part is mounted.
- FILED: R-1093 — an empty part asks for the typed confirmation (the agent's probe reads the parent's partition table).