7585097f26
gates / gates (push) Successful in 4m29s
Register 131 -> 134 (R-909 Apps card header, fixed on main; R-910 retake the website's dashboard pictures after tomorrow's release; R-911 storage-unavailable banner stays Hungarian on English pages). Evidence: before (0.303.0) / after (0.304.0-layout.rc2) pictures and measurements on scratch 9202, red proofs, fixture diff. 9202 is back on 0.303.0. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012qRErfCoiTkvDK9N5XHbzb
89 lines
6.0 KiB
Markdown
89 lines
6.0 KiB
Markdown
# REPORT — three dashboard layout fixes (2026-10-08)
|
||
|
||
> `REPORT-dashboard-layout.md`, not `REPORT.md`: other sessions work in `felhom.eu` and `felhom-controller` today. The
|
||
> controller's own `REPORT.md` and `CONTEXT.md` were left to the session that owns them; the controller `CHANGELOG.md`
|
||
> carries this work.
|
||
|
||
Baseline: controller `main` = `05e12921` (2026-10-08 10:25), fleet 0.303.0, scratch 9202 on 0.303.0.
|
||
Read first: controller `CLAUDE.md` + `.claude/rules/`, `felhom-ui-design`, `10-localisation.md` §1 and §2.3 (the parity
|
||
fixtures: a deliberate change is recorded by deleting the fixture, re-writing it with `-update-i18n-golden`, and
|
||
measuring that the diff is exactly the change — `CHANGELOG.md` v0.250.0 / v0.255.0 precedent).
|
||
|
||
| Part | What | State |
|
||
|---|---|---|
|
||
| A | Apps card header: logo + name (+ address) over a wrapping tags row; logo top-aligned; address one line, ellipsis, full in `title` | **Done on main** (`d5f2e47`, fixtures `e37e9b5`) — R-909 |
|
||
| B | R-907: the Launcher header wraps on a phone | **Done on main** (`d5f2e47`) |
|
||
| B+ | Found live: a banner's link ran past a phone screen and had no colour; fixed in the session (small) | **Done on main** (`423b6d3`) |
|
||
| C | R-906: the overflow counted after the page filter | **Done on main** (`d5f2e47`) |
|
||
| D | Red tests, fixtures, test build on 9202, before/after pictures, 9202 put back | **Done** |
|
||
| E | Register, CHANGELOG, STATUS | **Done** |
|
||
|
||
**Register:** before **131**, after **134**, opened **3** (R-909, R-910, R-911), closed **0**. R-906 and R-907 moved to
|
||
„VERIFY — fixed on main, ships with tomorrow's controller release".
|
||
|
||
## Red tests (`documentation/audits/dashboard-layout-2026-10-08/red-proofs.txt`)
|
||
|
||
Mutation for all three: `stacks.html`, `style.css` and `handlers.go` put back to `05e12921`, tests from `423b6d3`.
|
||
|
||
| Test | Failure line (excerpt) |
|
||
|---|---|
|
||
| `TestStackCardHeaderLayout` | `hu card 0: want the title row, then a .stack-tags row (title 13, tags -1)` (16 cards, hu + en); `.stack-detail-header must stack the title row over the tags … justify-content: space-between`; `.stack-title-row must align the logo to the top of the name … align-items: center`; `style.css has no top-level ".stack-title-text" rule` |
|
||
| `TestR907_PageHeaderWrapsOnAPhone` | `the phone block must let .page-header wrap`; `the share button's text must stay whole …`; `the phone block lacks \.alert-banner \{[^}]*flex-wrap: wrap` (+2); `.alert-link must take the banner's colour …` |
|
||
| `TestR906_OverflowCountsOnlyThisPagesBannerAlerts` | `/launcher: an overflow line is shown, but this page shows no more than one banner alert` and `/launcher: 0 warning banners, want 1 (the hub-off warning)` — on /launcher, /stacks, /backups, /monitoring, /launcher?lang=en, /stacks?lang=en |
|
||
|
||
`TestR906_CapStillCountsBannerAlerts` pins that the cap still works (six banner alerts → five + „+ 1").
|
||
|
||
## Re-captured fixtures (`e37e9b5`, its own commit)
|
||
|
||
`stacks_full`, `stacks_unhealthy_stop`, `stacks_install_interrupted` — because the Apps card's MARKUP changed (a wrapper,
|
||
an address span + `title`, a tags row), not its words. Measured (`fixture-diff.txt`): each = its predecessor with
|
||
exactly the template change applied, byte-for-byte, 3 of 3; visible text identical. No other fixture moved;
|
||
`TestI18nParity` and `TestI18nEnglishPages` green. **Hungarian: not one string changed.** New English text: none.
|
||
Note: `d5f2e47` alone fails `TestI18nParity` on those three; both commits went in one push and CI ran the tip.
|
||
|
||
## Live (9202 only; `documentation/audits/dashboard-layout-2026-10-08/README.md`)
|
||
|
||
Headless Chrome inside 9202; English by `?lang=en` (the household setting never changed). Test tags
|
||
`0.304.0-layout.rc1` and `.rc2` (pre-release tags, never a release, never a floor).
|
||
|
||
| | before (0.303.0) | after (rc2 = `423b6d3`) |
|
||
|---|---|---|
|
||
| Banner | „+ 5 további figyelmeztetés" alone, every page | three real warnings, no overflow line |
|
||
| Launcher, 390 px | page 425 px wide, share button right edge 424 | page 390, button 16–217, own line |
|
||
| Apps, 390 px | page 519 px wide | 390 |
|
||
| Apps: name under a tag | Paperless-ngx (en, 1440) | 0 of 61 cards, all four runs |
|
||
| Apps: logo vs name top | three values (-5, 9, 21 px) | one value (-3) |
|
||
|
||
The rc1 run found the banner overflow (B+ above): the phone pages were still 481 / 472 px wide. Fixed, rc2 built, run
|
||
again. Pictures: `before/` and `after/` — Launcher, Apps (+ three cards: installed with two tags, not installed,
|
||
built-in), Backups; hu and en; 1440 and 390 px.
|
||
|
||
**9202 put back:** `0.303.0` restored from a copy, healthy; both test images removed; work folder and session file
|
||
gone (shredded on both sides). demo-hp host: only `pct list`, `pct exec 9202`, `pct push 9202`. Not touched: 9201,
|
||
demo-felhom, Tester 1, Tester 2, the hub, the website.
|
||
|
||
**One side effect, said plainly:** `build.sh --push` also moves the registry's `:latest` tag to the last build (rc2).
|
||
Nothing in the fleet runs `:latest` (only the legacy compose files name it); tomorrow's release build moves it again.
|
||
|
||
## Files at their pushed commits
|
||
|
||
- Controller `d5f2e47`: `controller/internal/web/alerts.go`, `handlers.go`, `templates/stacks.html`,
|
||
`templates/style.css`, `dashboard_layout_test.go` (new), `r906_overflow_test.go` (new), `CHANGELOG.md`, `REUSE.md`.
|
||
- Controller `e37e9b5`: the three parity fixtures.
|
||
- Controller `423b6d3`: `templates/style.css`, `dashboard_layout_test.go`, `CHANGELOG.md`.
|
||
- felhom.eu: `OPEN-ITEMS.md`, `STATUS.md`, this report, the audit folder — the next commit.
|
||
|
||
**CI by commit (controller):** run 1561 = `e37e9b50` (carries `d5f2e47`) **success**; run 1562 = `423b6d34` **success**.
|
||
|
||
`unproven.py --summary`: not walked 35 of 55 — unchanged.
|
||
|
||
## Waits for tomorrow's release
|
||
|
||
- Release the controller (it carries R-899 and R-304 too). Then R-906, R-907, R-909 are read back on a box and closed.
|
||
- R-910: after the release reaches demo-hp, retake the website's dashboard pictures (the Apps picture shows the old card).
|
||
- R-911 (new, P4): the „data storage not reachable" banner stays Hungarian on English pages.
|
||
|
||
## Decision for you
|
||
|
||
None.
|