02-controller-module-map.md "The app page" gains the layout rules [DESIGN] — one column of one width, a section is a hairline not a card, a box means something (blue = the app is waiting for you, amber = something is risky, nothing else), the hero is not a box, and a success is not a banner. Plus the asset-tag rule: every shell's stylesheet address is derived from the BUILD, not the version, because the origin sends no validator and a cached copy can therefore only expire or be addressed differently. 09-update-architecture.md gains §0 [DESIGN]: a version number is pushed once. It belongs at the TOP of that document because everything below it compares versions — the floor moves a box by comparing a number, the button offers the highest tag, and a box re-pulls a tag only when the tag changes. Two images under one number is therefore not untidiness; it is a box running the wrong code that can never be told. R-1080 filed and closed: 0.315.0 was pushed three times from three different commits. Closed rather than left open because no box is stranded — exactly one guest ran it and it ran the registry's current digest, and the floor was 0.314.0 so nothing else could have taken it. audits/app-page-2026-10-15b/P0/ carries the measurement and its honest caveat: the stale Cloudflare object is no longer reproducible, because the first probe of the session forced its revalidation. What is shown is every precondition, the proof an aged entry existed (cf-cache-status EXPIRED), and the elimination of the only other candidate. The six stylesheet bodies are reduced to their sizes, sha256s and rule counts — one 99 KB file does not need six copies in git to make the point. .claude/rules/unprompted-work.md item 6, all four versioned copies: a version number is pushed once, stated as a FACT about what the build now enforces rather than as a new rule. STATUS: the operator's one look, through the public address. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0117kRTSgs3rJWUFGxyoWN6Y
12 KiB
STATUS — what works, what's broken, what's next
Ready for the first real tester (Tester-2): yes. Tester 2 (a laptop) is off; nothing was sent to it.
Updated 2026-10-15 (evening). Agent 0.156.1 + its bundle on all three boxes; controller 0.316.0 built (the app page in one column; a version number can now only be pushed once); 0.314.0 is still the floor since 13:11 UTC — raised by CC with its own token after all three test boxes ran it (the first release with no golden; vouched golden 0.313.0); hub 0.153.0 (access tokens — CC uses its own token now, not your password). Open items: see documentation/backlog/OPEN-ITEMS.md. Older notes, day by day:
documentation/backlog/STATUS-HISTORY.md. Reports: REPORT-night-2026-10-14.md, REPORT-immich-rollout-2026-10-14.md, REPORT-seo-felho-tarhely-2026-10-14.md, REPORT-immich-repair-2026-10-14.md, REPORT-power-cut-fixes-2026-10-14.md, REPORT-night-power-2026-10-13.md, REPORT-poweroff.md.
What works
-
The N100 is the lived-in box (since 2026-10-15): used like a household's box, changed only through the product. qBittorrent, Prowlarr, Sonarr and Radarr are installed and linked by the box; films never go off-site (checked before any download). Its diary:
documentation/lived-in/n100.md. -
A restored app comes back exactly as safe as it was at the backup: closed to strangers until its first account is made (0.314.0, proven on the scratch box). A box on a test build now moves with the floor (Tester 1 did, by itself). The box claims Plex again (demo-hp's Plex claimed through the dashboard, 2026-10-15). A brand-new box from the public installer updated itself to the floor 3 minutes after it was linked (test box, since removed).
-
Scripts use the hub with a scoped token, not your password (hub 0.153.0): CC sets the floor with its own token; no token can see a secret, delete anything, or send, make or show a household's password or link. Your new hub password is yours alone (changed 2026-10-15).
-
Every public name of the three test boxes answers only over https: plain http gets a 301 to the same https address, and browsers are told to remember it for one day (29 names checked, 2026-10-14 night).
-
Media apps work together on one drive: a download reaches Sonarr/Radarr as one file, no copy; the download apps see only their own folder (live catalog, proven on demo-hp).
-
A power cut in the middle of a backup no longer blocks later backups: the box removes the half-written backup at start-up (proven with a real cut on demo-hp, on all three boxes now).
-
After a power cut, Immich repairs the photos the cut left broken, by itself, and the app page lists any lost photo (proven with a real cut on demo-hp: 41 of 41 repaired; on all three boxes now). An Immich update cannot switch it off quietly: the catalog refuses an untested Immich version.
-
A household can switch the machine off; the hub holds alarms for 14 days and clears the state by itself (N100).
-
A real power cut on demo-hp: it started by itself after all 8 cuts of the night (with the BIOS set), every app back in ~4 min; stale and recovered mails true and paired.
-
A page for people searching „felhő tárhely" is live (/sajat-felho-tarhely, /en/own-cloud-storage): what cloud storage is, what to do when Google or iCloud fills up, a five-year cost table with prices read 2026-10-14, and who should NOT buy this.
-
The machine estimator is public (/gepigeny, /en/sizing), with figures from two machines (N100 and HP t740; raised only, 2026-10-14).
-
65 apps in the catalog. New today: Prowlarr — you enter your download sources once, and Sonarr and Radarr get them, linked by the box with no button (the website lists 63 apps — R-1036). OS updates, the kernel lane too, run at night.
-
The hub is closed again after the 2026-10-12 security review; one box cannot read another's data.
-
Felhom runs in a virtual machine on OpenMediaVault 8, tried on an exact copy of the first outside tester's box: install, bind, claim, apps, backup, and back by itself after an OMV restart. The Hungarian guide for him is
documentation/pilot/GUIDE-omv-kvm-hu.md; open: one-disk Jellyfin (R-1068), NAS films for Jellyfin (R-1071, yours), no disk health in a VM (R-1073, yours). Waits on you: send the guide; delete test customer Tester4 in the hub.
What is broken
- Several root-level weaknesses wait on your four decisions below (R-954, R-971, R-982, R-985).
- DooPlex: a failed disk with its alarms silenced (R-934); CI jobs still get lost (R-887); something sets the shared checkout to „bare" (R-935); a Longhorn volume at 91 %.
- Tester 2 has never made an off-site check (R-862). The scratch box cannot read the drill catalog (R-992).
What we work on
- The power-cut findings still open (R-1004, R-1005, R-1010, R-1012, R-1013).
- Media apps on every drive (R-1023): live with the 0.313.0 floor — every drive in every media app, a new drive made ready by the box, a pulled drive loses nothing, a safe removal lets go first and the drive comes back by itself.
Waiting on you — decide
| # | Row | Question | Pick | The other option costs | If you do nothing | Blocked |
|---|---|---|---|---|---|---|
| D1 | R-954 | Change every box's break-glass root password, since we cannot see if the old key was used? | Yes — about one hour, one box at a time, through the vault | Accept: no work, a password that may have been read stays valid | the old root passwords stay; if they were read, they still open the boxes from the LAN or console | — |
| D2 | R-971 | Should the box refuse a catalog change that asks for dangerous container rights? | Yes — an allow-list on the box (one controller release) | Keep trusting the catalog repo: whoever can push to it reaches every box | a catalog push keeps reaching every box's apps with no check | — |
| D3 | R-985 | „Zero-knowledge": change the wording, or remove the operator's root reach to the key? | Change the wording now; revisit after the first sale | Remove the reach: a design change to break-glass | the promise stays stronger than the product | the website text |
| D4 | R-982 | Root SSH with a password from the LAN? | No — key only; the password stays for the console | Keep it: anyone on the household network can try it | the host keeps accepting root password logins from the LAN | — |
| D5 | R-993 (R-991) | Approve the minimum machine (audits/sizing-2026-10-13/SIZING.md §5: x86-64, 4 cores, 8 GB, 256 GB SSD)? |
Approve | Change it: one edit | no hardware page; a buyer with a Raspberry Pi can still download the installer | the hardware page |
| D6 | R-992 | The scratch box cannot read the private drill catalog: give it a read-only login, or make that copy readable? | A read-only login | Readable copy: the drill catalog becomes public | every new-app test needs hand-staging | new-app tests |
| D7 | R-990, R-989 | Rule yes / no / later on the forum ideas (audits/forum-research-2026-10-12/FELHOM.md §5) and the selfh.st ideas (audits/selfhst-survey-2026-10-12/FELHOM.md §6) |
— | — | nothing changes; the research ages | — |
| D8 | R-206 | Install DooPlex's Docker settings from git (restarts Docker), and prune the build cache weekly: yes or no? | Yes, in a quiet window | — | a rebuild of DooPlex still has the settings in git | — |
| D9 | R-1062 | The N100's USB drive is also its whole-box backup drive. Split it in two anyway? | No — keep one drive; the lived-in box keeps its nightly whole-box backup | Split: the box loses its local whole-box backup (or add a second drive first) | it stays one drive; multi-drive tests stay on Tester 1 | — |
| D10 | R-1079 | Storage that knows its physical disks (architecture/16-storage-physical-identity.md §12, six questions D1–D6): a same-disk second copy, „unknown" disks (VMs), the one-disk internal place and its reserve, old one-disk boxes, partitions, NAS films |
D1 (a) no same-disk copy · D2 (a) never count unknown · D3 (a) internal place, reserve max(16 GiB, 10 %) · D4 (a) a plain sentence · D5 (a) installer only · D6 (a) separate | Other picks: more space spent on false copies, or films inside the whole-box copies | One-disk boxes keep refusing media apps; VM boxes keep counting same-disk copies | the build task |
Waiting on you — do
- Nézd meg az AdventureLog és a Plex oldalát a demo-hp-n, a rendes címén (
felhom.enkisfelhom.hu). Az alkalmazás oldala mostantól egy hasábban van: egy szélesség, vékony vonalak a szakaszok között, aláhúzott fül, és doboz csak ott, ahol az alkalmazás vár rád (kék) vagy ahol valami kockázatos (sárga). A „sikeres frissítés" sáv kis szürke sorrá vált a név alatt. Ha nem nézed meg: a felület él, csak senki nem látta még böngészőben. - Nézd meg az új alkalmazás oldalt a demo-hp-n (egy telepített és egy nem telepített app). Egy alkalmazás mostantól egy oldal négy füllel (Beállítások · Adatok és mentés · Útmutató · Napló), az Indítás/Újraindítás/Leállítás a „Működés" kártyán van, és a „Vissza" az alkalmazáshoz visz, nem a listához. Mondd meg, jó-e így az elrendezés. Ha nem nézed meg: a felület él, csak senki nem látta még böngészőben — a robot a DooPlexen nem tud kattintani.
- The N100 sheet (about 30 minutes):
documentation/audits/n100-lived-in-2026-10-15/SHEET.md— install Plex and claim it, make the admins in Prowlarr/Sonarr/Radarr, add your download sources in Prowlarr, add one show and one film. Then say „done". If not: the media apps wait, safe behind their gate. - Delete the test customer „Tester3” in the hub (browser only). Its test box is already gone and switched off on purpose, so no alarm is coming. If not: a dead test customer stays in your list.
- Hub 0.153.0 (your rulings 13:20 + R-1059 „A"): no token can resend a claim code, create or edit a customer, make a passphrase or a link, or re-issue an off-site password. Live since 13:39 (checked with CC's token: all six refused).
- Remove the test server „plex-k6” from your Plex account (plex.tv → Settings → Authorized Devices). The claim test passed and the server is gone from Tester 1. If not: a dead server stays listed in your Plex apps.
- System poster needs a refresh: every public name answers only over https (http → 301).
- Leftovers moved out of the shared checkout to
/mnt/5_hdd/felhom.eu/leftovers/2026-10-14/(nothing deleted): the Facebookfirst-post/folder is not in git — keep, commit or delete it. The rest is already in git. If not: it just stays there. - The media tests on Tester 1 are finished — results in
REPORT-night-2026-10-14.md. Say „tear it down" when you want Tester 1 back to normal (R-1022; now three test drives and a throwaway Plex). - Ask Google to index the new page: Search Console → URL-ellenőrzés →
https://felhom.eu/sajat-felho-tarhely→ „Indexelés kérése". If not: the page may sit unseen, and the 11 November / 9 December checks (R-1035) read zero for a reason that is not the page. - N100 BIOS: read „After Power Loss" (the HP's „Previous State" made it start after 8 of 8 cuts). HP BIOS: „Bypass F1 Prompt on Configuration Changes" → Enable.
- Pull the failed disk Z6A07P2G (R-934; the twin Z6A070XZ is
/mnt/3_hdd). If not: its alarms return on 11 November. - Hub master key into the password manager, then
shred -uthe key file (security review 2026-10-12, in the history). - 12 reused homelab logins to rotate, and the repo-visibility decision (R-925, P1).
- Before the first paying customer: Tandoor permission (R-789); a lawyer for the licence list (R-802) and the terms (R-813); SparkyFitness (R-784 — its author replied on 2026-10-13); print the break-glass sheet (R-923).
- Smaller: pin the first Facebook post (R-917); Tester 2's bootstrap (R-862); look at the uncommitted
deny-list edit inhomelab-manifests/.claude/settings.json; the rest of „Your own tasks" (T6–T19) is in the history, 2026-10-10.