Commit Graph

2 Commits

Author SHA1 Message Date
admin 4ea211f67f REPORT: Part 5 FAILED — the package never creates /etc/felhom. NOT PUBLISHED
The Terminal-UI interactive install ran to completion from the release image and gave 3 of 4
required observables:
  1 package installed      PASS  ii felhom-bootstrap 1.26.0
  2 unit enabled           PASS  wants-symlink present; postinst enabled it from the chroot
  3 unit FIRED first boot  PASS  journal shows PAIRING mode, registering unclaimed appliance
  4 box wants a claim code FAIL

/etc/felhom/ does not exist on the installed system, so felhom-bootstrap.sh cannot write the
appliance token (:431) or the pairing code (:435), and the hub poll then 401s forever. The box can
never finish pairing and the customer never sees a claim code.

ROOT CAUSE, mine: stub-first-boot.sh opened with 'install -d -m 0755 /etc/felhom /usr/local/sbin'.
This task correctly dropped the env FILE from the package and dropped the DIRECTORY with it.
felhom-bootstrap.sh uses /etc/felhom for its runtime state (token, pairing code, .bootstrap-done).

WHY THE GATE MISSED IT: G9 proves the packaged script is byte-identical to HEAD, and it is. I
verified the payload files and never the directory the payload writes into — a check that proves
the thing present and not the thing it depends on. Added as G13.

The fix is one line and is deliberately NOT applied: a failing Part 5 stops the task, and proving a
fix needs both installs re-run.

Also recorded: 'qm set --scsi0 ... --boot order=scsi0;ide2' silently yields boot: order=net0;ide2,
so a COMPLETED install looked like a machine sitting in the installer. Set --boot separately.

Nothing uploaded; R2 credentials never read. Teardown complete: VMs purged, spike5 storage removed,
demo-hp back to 6.6G, drill-r50 and 9201 untouched. Hub-side: no appliance object was created
(searched /, /hosts, /configs for the hostname — zero hits), so R-131 gains no row.
2026-07-31 18:16:20 +02:00
admin 246036605a REPORT: universal ISO built and gated — NOT PUBLISHED (Part 5 incomplete)
Publication is gated on Part 5 (two interactive installs proving delivery end-to-end). Neither was
carried to completion, so nothing was uploaded. Per the task: stopping is the good outcome.

BUILT: felhom-installer-1.26.0-pve9.2-1.iso
  sha256 24977bafd24d73262745fc1b3040939469c9b23b87ead927a8af86de73044a90, 1705322496 bytes.

GATE (Part 6) against that exact file: G1-G10 PASS, G11/G12 not run (nothing published).
  G5 by ENUMERATION vs the stock PVE ISO: exactly four added paths — three felhomtheme files and
  /proxmox/packages/felhom-bootstrap_1.26.0_all.deb. G9: the packaged felhom-bootstrap.sh is
  byte-identical to repo HEAD. No .rootpw.txt is emitted at all, which is G2's own evidence.

PROVEN in Part 5 before stopping: the image boots to the branded TWO-ENTRY release menu and the
  Terminal-UI entry reaches the stock PVE installer. NOT proven: package installed, unit enabled,
  unit fired, box asking for a claim code — on either entry. The Graphical entry was never driven.
  Reporting partial observables would be the LastRun-class error this arc has corrected three times.

R2 credentials were never read, never used, never echoed; no rclone/aws config was created.

Teardown complete: VMs purged, scratch storage spike5 removed, demo-hp back to 6.6G, drill-r50 and
9201 untouched, hub-side nothing created (verified by fetching the customer list).
2026-07-31 16:53:29 +02:00