Files
felhom.eu/STATUS.md
T
admin af2d103880 REPORT + STATUS: gate enforcement session, hub v0.87.0 live
REPORT overwritten per the standing rule; every red-proof, the core.hooksPath probe's four
measured outcomes, Scenario C's refusal-and-bypass, the hub deployment and the live Setup-tab
read are recorded there, plus three observations and two deliberate deviations from the spec
(a comment-only edit to felhom-host-install.sh, and __pycache__ in .gitignore).

STATUS: the 'check that needs a person to remember it' line is rewritten — the checks now run
themselves before every push, with both honest limits stated in plain words; and one entry
records the thirteen-check cleanup and the deleted installer version number.
2026-08-02 15:37:19 +02:00

4.6 KiB

STATUS — what works, what's broken, what's next

Updated 2026-08-02.

A view, not a source. documentation/backlog/OPEN-ITEMS.md is the authority on open work; this page restates part of it in plain words, and nothing may exist only here. Not CONTEXT.md, which is technical state written for Claude Code — keep the two separate. Maintenance: update at the end of every session in which something shipped, broke, or was decided. One screen; cut items rather than extend it.

What works right now

A blank machine boots the Felhom disc, installs itself unattended, and is claimed by the customer, who sets their own password. They install apps from a catalogue of fifty-three, share files over the home network, and open apps from a launcher or a shared link. Backups run on their own to three places — the machine's drive, a second drive, and an encrypted off-site copy — and a customer can restore files and app data from the drive alone. Proven end to end on real hardware.

What's broken

After a power cut, an app can stay switched off — and nothing says so. The machine looks for apps that didn't come back, but looks too early and never again. In one case it decides the customer switched it off deliberately, so it isn't even counted as down. (R-157)

The off-site copy can be erased by the machine that made it — the credential that writes it can also delete it. A daily snapshot is armed as a stopgap, and we have never restored from that copy. (R-95, R-87)

Three apps out of fifty-three kept their data where backups never looked. They reported healthy; the data would vanish on the next update. Two are fixed, the third is now clear to fix because it is installed nowhere. (R-156)

Local backups get 20 GB while apps get 50 GB. An app that outgrows the smaller space stops being backed up locally — and the off-site copy is made from the local one, so that stops too. Nothing is lost: the last good copy is kept intact. (R-163)

When that happens, only one page says so — no email, no alert. The page that answers "is this app backed up?" is the one that stays silent. (R-158)

The checks that catch this still can't stop a change on their own — but they now try. Every repository has one command that runs all of its checks, and it runs by itself before every push, so a push carrying a broken check is refused rather than reported. Two limits are real: it has to be switched on once in each copy of the code, and it can be skipped on purpose. The version that can be neither is a build server, which we do not have yet. (R-29, R-161, R-168)

What we're working on

  • Now: the last app whose data was never saved; today's decisions written down.
  • Next: merging the small backup partition into the large one, with the drive-filling warning and the backup-failure alert in the same step.
  • After: rebuilding how the machine records whether an app is meant to be running.

Waiting on you

  • How a new version reaches a machine. Pushing the installer publishes it — half a minute later every new machine downloads it, with no staging and no way back but another push. And publishing is a step we remember rather than one the release performs, forgotten twice: a fix can be live here and still not reach a new machine. Nothing is installing today, so this is the cheapest moment to settle both. (R-110, R-115)
  • A job, not a decision: the hub password needs changing. A diagnostic command printed it into a session log; nothing suggests anyone else saw it. (R-132)

Changed since last update

  • 2026-08-02 — Fixed: thirteen mechanical checks had built up across the four repositories and nothing ran most of them. Two were failing quietly, one since 14 July; neither did harm, but nothing would have said so. Both fixed; every repository now has one command that runs all its checks, and it runs automatically before every push. One of the two was the setup page claiming the installer was version 1.19.0 while machines got 1.22.0 — the number is now gone rather than corrected, because the page cannot know it: the installer is fetched fresh each run, so any number there is a guess. A check refuses to let one be added back.
  • 2026-08-02 — Decided: the 20 GB backup partition goes away and shares space with app data. That changes the disk layout, so it happens before any machine is installed outside the house.
  • 2026-08-02 — Decided: only this machine and the tester's box are protected; every other box, demo boxes included, may be broken or reinstalled freely. Two of the three apps that never saved their data are fixed; this page created.