The catalogue side is app-catalog-felhom.eu b7f0f7c. Here: the evidence, the website, the register and the operator's view. Website - Two cards in the Otthon & Eletmod / Home & Lifestyle section of BOTH apps pages, with assets: grocy-logo.svg is grocy's own icon with its single fill made white like the other logos, lubelogger-logo.png is the app's own icon with its dark background dropped and the mark made white (the rule SparkyFitness's PNG follows), and six screenshots of each app's own UI with a household's own data, taken headless on the bench from the published template. - The app count moved 56 -> 58 in 15 places per language set, both languages, and the open-source tile 49 -> 51. Checked by asking the same patterns for the new number afterwards. marketing/facebook/COPY.md still says 56 and is NOT changed: the post it carries is already scheduled. Evidence - documentation/audits/new-apps-2026-10-10/ — FIT.md (checklist group 0 for all three, with the Hungarian-UI column), the bench and box transcripts, the memory samples, the screenshots and the gate runs. Register: 137 -> 139 rows, 2 opened, 0 closed. - R-926 after a remove-keeping-backups and restore, nobody has checked what the app page shows for an after_install app's generated password. Measured here: LubeLogger is safe (its login is derived from the environment at every start, the new password signs in, the data is back); grocy's install password still signs in from the restored database but the deployed environment no longer carries ADMIN_PASSWORD at all. Seven apps are in the class. - R-927 Monica, stopped at checklist 0.2 with the measurements, waiting on the operator. Gate scripts: the same console trap in nineteen of them and in repo_gates.py itself, where it ABORTED THE WHOLE RUNNER at the first gate — printing a non-ASCII character on this workstation's cp1250 console raised UnicodeEncodeError before the gate had decided anything, and reuse_refs_check.py died while printing a NOTE. All now reconfigure their own streams. Red-proof that the remaining script-test failures are not mine: test_due_checks_gate.py fails the same 5 of 42 with the change reverted.
2.8 KiB
Three new apps through the checklist (2026-10-10)
Brief: a fit check (NEW-APP-CHECKLIST.md group 0) for Grocy, LubeLogger and Monica, chosen from the
2026-10-10 PikaPods scan because no catalog app covers what they do; then build them one at a time, Grocy
first, each with the full 61-check record.
Architecture read: 09-update-architecture.md §3 decisions 13, 22, 42, 45–50, 57, 61 and §6.5 (the drill
catalog and the image store); 01-topology-and-trust.md (the tunnel carries HTTP only; §5 the setup gate);
07-backup-architecture.md (the backup classes and what the tier-1 unit holds). Register rows read first:
R-707 (first admin), R-741 (the install window), R-753 (the visitor's address), R-761 (the asset path).
Baselines: catalog b38aa923177db40bcb399546c625167fa029f025, felhom.eu a406efc7d52807398eacba39a3bb1e94355a9da7,
register 136 rows / highest R-925; controller on 9202 0.304.0.
Venues
- Bench — LXC 9401
upgrade-harnesson demo-hp, swap 0, 10 GiB.upgrade-test.py --moveper app with a from-birth cgroup sampler beside it (bench/). - Box — scratch guest 9202
demo-hp-scratch, also on demo-hp, on the DRILL catalog only. Per app: install with a stranger's poll and the sampler, the app's own checks, the guarded Update, remove keeping backups + restore, remove with data (box/). - Ladder — the single writer
upgrade-test.py --write-ladderfrom both verdicts.
A correction to the brief's reading: 9202 and the bench 9401 both live on demo-hp. felhom-pve
(demo-felhom) carries only guest 9201. Measured with pct list on both hosts.
Per app
| app | result | catalog commit | memory (peak anon / limit) | ladder step | notes |
|---|---|---|---|---|---|
| Grocy | published | b7f0f7c |
bench (swap 0) and box, in bench/ and box/grocy/ |
4.6.0 → 4.7.1 | two defects found and fixed before publishing: the controller refuses an after_install command containing $, and grocy's persisted config.php does not follow the image (a 4.6 → 4.7 update answered HTTP 500 on every page) |
| LubeLogger | published | b7f0f7c |
bench/ and box/lubelogger/ |
v1.7.2 → v1.7.3 | the image ships no login at all and hands a stranger the root role; the template turns authentication on from a generated password before the app's first byte |
| Monica | stop — checklist 0.2 | not built | — | — | no release of any kind in 17 months, no stable release in 29, the stable branch untouched since 2024-05-04, and upstream has announced that its hosted instance and all its data go away at the end of December 2026 ahead of a rewrite. The operator decides. |
The fit table, with every group-0 answer and the three measured risks, is FIT.md.
Teardown
Stated per layer in felhom.eu/REPORT-new-apps-2026-10-10.md.