789bbd1c8f
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01PSK5g6qYLknKj8u3QAFEr6
2.1 KiB
2.1 KiB
felhom.eu — task reports
Overwrite this file with a summary of the most recent task only (uniform with the other repos; not cumulative). The cumulative hub history lives in hub/CHANGELOG.md; the scripts history lives in scripts/CHANGELOG.md.
NAS verify-before-commit — felhom.eu share (host-install v1.13.0 + feature doc) — 2026-07-11
Part of the cross-repo task (agent v0.81.0 + controller v0.113.0, both LIVE on the demo;
full task-wide record incl. red-proofs + the A–E live-validation transcripts:
felhom-controller/REPORT.md). This repo's commit: 27e2fb0.
scripts/felhom-host-install.shv1.13.0 — the agent-user setup addsfelhom-agentto thesystemd-journalgroup (idempotentusermod -aG): the verify pipeline classifies mount failures from an UNPRIVILEGEDjournalctlread; group membership instead of a sudoers grant. Existing installs:usermod -aG systemd-journal felhom-agent && systemctl restart felhom-agent— applied to the demo host (felhom-pve) during this task's live validation; Peti's box gets it only when the NAS feature reaches him. Also fixed: the header still said v1.11.0 whileSCRIPT_VERSIONwas 1.12.0 (the 1.12.0 bump had no changelog entry either) — both now 1.13.0.- NEW
documentation/controller/network-storage-nas.md— the authoritative network-storage feature doc (none existed; the knowledge lived only in the two spike docs): the locked recipes (incl.retry=0+ its evidence), the verify pipeline, the §8 mount-truth table, the Q4 error taxonomy (with the mergednfs_exporthonesty rule), the protocol-honest NAS-side recipes (SMB plain-user; NFS map-all-users vs full-fidelityanonuid=<uid+100000>), Route A caveats incl. the operator-facing "chmod succeeds and persists" nuance, and the open items (Q1c restart-window test, appliance pass).
No hub/website/manifest changes; nothing to deploy from this repo (the script ships via the Day-0 supply chain on the operator's publish decision — NOT triggered by this task).