documentation/audits/mockups-2026-10-11/
COMPARE.md the three directions side by side, measured the same way:
A current preview 12 req / 270 KB
M1 dashboard 68 req / 1012 KB (front page 1 660 px)
M2 hybrid 16 req / 150 KB (phone 3 057 px, the shortest)
plus three sentences each (good / risk / cost) and the risk I
think is real: a non-technical visitor may read M1 as somebody
else's account and look for a login.
SHARED-DESIGN.md REPORT ONLY, nothing built. M1 needed 260 CSS rules: 188 (72%)
copied from the controller UNCHANGED, 8 adapted, 64 new. It used
188 of the controller's 826 rules (23%). The 18 tokens are
already identical - verified by parsing both :root blocks, zero
differing values.
Recommends (a) a canonical felhom-ui.css plus a copy-drift gate,
over (b) serving the controller's stylesheet to the website -
and recommends NOT building it until a direction is chosen.
shots/ desktop and phone captures of all three, from the deployed pages
The finding that outranks the percentage, and the reason for the recommendation: a
component-level copy silently drops the element-level rules those components depend
on. The extractor copied every .sidebar/.content/.mobile-topbar rule and missed
"@media(max-width:768px){ body { flex-direction: column } }". Everything LOOKED
copied; the phone layout was broken in four measurable ways. Invisible to a diff,
invisible to review. A second instance the same evening: the drawer is gated on a
'js' class set by an inline script that was not copied either.
Register 129 -> 129 (one closed, one opened):
R-929 CLOSED - NOT A DEFECT. Measured from the catalog: 60 templates, minus
plant-it (abandoned) and wger (hidden) = 58 offered, exactly what the prose
says; the page's 59th card is FileBrowser carrying the single "Beepitett"
badge. Set difference both ways is empty. The premise was wrong on BOTH
halves. Rule kept: before filing a count disagreement, check whether the
counts are counting the same set.
R-932 OPEN - 8 catalog strings across 5 apps carry an em dash, and they render in
the controller's app page on every real box. Found because the mockups are
the first thing to show catalog copy on a website page. Lives in a repo this
session did not have in scope, so it is a row, not a fix.
documentation/backlog/
OPEN-ITEMS.md is the register of open work and the file to read first — it holds only what is
open, one row per item, every row with a category, a severity, a state and an owner (the layout is at its
top). CLOSED-ITEMS.md holds every finished row, compressed, with the commit that keeps its full text;
a row moves there in the same commit that closes it (scripts/closed_register_gate.py RULE 3).
ROADMAP.md holds intentions — features and spikes that do not exist yet — and ROADMAP-HISTORY.md
the shipped and killed ones. An R-n id is minted once and never reused.
The other files in this folder — verdict per file (2026-10-03 triage)
| File | Verdict |
|---|---|
SPEC-app-data-placement-2026-08-21.md |
KEEP — still referenced by open rows R-352 (placement still open) and R-368. |
SPEC-r85-phase4-5-2026-07-26.md |
KEEP as history — a spec of shipped work (R-85, agent v0.104.0). CONTEXT.md and architecture/00-capability-map.md link here. |
FOLLOWUP-nas-automount-guest-reboot-reassert.md |
FINISHED, kept in place — shipped in agent v0.84/v0.85 (CAMPAIGN-3). Not moved because CONTEXT.md, controller/network-storage-nas.md and felhom-controller/CONTEXT.md link to this path. |
Moved to documentation/archive/ on 2026-10-03 (finished; nothing open refers to them):
FIX-M18-NOTES.md— dump re-validation every 5 min. FIXED in controller v0.62.0 @f8afe5c(2026-06-14).FIX-M19-NOTES.md—deriveStackNamemisattribution edge. FIXED in controller v0.62.0 @6bab68b(2026-06-14).FOLLOWUP-golden-default-controller-tag.md— the golden baked a stale controller. FIXED in felhom-agent @ceca355(2026-07-03):build-golden.shv2.0.0 makes the controller tag a mandatory argument. Evidence:../audits/DRILL-golden-098-2026-07-03.md.DIAGNOSIS-f9-storage-registration-gap-2026-06-14.md— a read-only diagnosis of June 2026, superseded by the shipped F9 fixes (controllerCHANGELOG.mdcites it as history).
The archive also holds OPEN-ITEMS-narratives-2026-10-03.md: the campaign write-ups, rulings and ranking
paragraphs that sat between the register's tables until the triage, word for word.