devreports catalog NEW-badge visual regression (parked 2026-05-14 EOD)

DARE.CO.UK · PARKED SKETCH · 2026-05-18

Mirrored from ~/.claude/.../memory/project_devreports_new_badge_regression_parked.md. This is a design sketch parked for future build — read for context, not as a current deliverable.

Catalog rows on devreports.dare.co.uk lost the red-dot NEW indicator and reverted to a “new” pill style; the markup still emits but the CSS rendering changed; small visual fix queued for tomorrow morning before audrey stand-up


Dan flagged 2026-05-14 evening end-of-day: the devreports catalog at https://devreports.dare.co.uk has reverted to a “new” pill alert style instead of the previous red-dot indicator on freshly-published rows.

What I confirmed before parking: - The markup is still emitted — <span class="new-badge" aria-label="new"> appears in the current catalog HTML (per cf-access -s | grep) - The render logic at ~/bin/dare_dev_reports_publish.py:474 is unchanged structurally - So the regression is on the CSS / styling side, not on the data / emit side

Where the CSS lives (to investigate tomorrow): - The catalog page’s <style> block is built in dare_dev_reports_publish.py (look around line 377 — the comment block mentions NEW signals freshness) - OR shared CSS in seo_render_html.py if catalog imports from there - Likely cause: a CSS rule for .new-badge { background, border-radius, etc. } either got reverted by a recent edit, OR a more-specific selector elsewhere is overriding it

Investigation 2026-05-14 evening (after parking): I dug in further before bed. Headlessly screenshotted the actual cf-access-fetched catalog HTML and the red dots ARE rendering correctly — 57 dots, one per recent report row, exactly per the CSS spec (6px × 6px, border-radius: 50%, accent colour). No competing pill-style CSS rule exists in the live HTML. The implementation matches the design intent.

Conclusion: the “regression” Dan saw is almost certainly stale browser cache. Recommended action when revisiting: hard-refresh (⌘+Shift+R) on https://devreports.dare.co.uk/. If dots appear after hard-refresh, no code change needed; close this memo as a false alarm. If dots STILL appear as a pill after hard-refresh, the surface to investigate is browser-specific CSS injection or an extension, not the code.

Original suspect commits I checked anyway (clean): - ~/bin/dare_dev_reports_publish.py (touched several times: pattern additions, REPORT_PATTERNS rows, etc.) — no CSS changes - ~/bin/seo_render_html.py (touched today for anchor enricher + HOVER_PREVIEW_CSS extraction) — .new-badge rule at line 198 is the canonical 6px-dot definition; unchanged from prior days

Resume: tomorrow morning before the audrey stand-up. Small visual fix, ~5-10 min: 1. git log -p ~/bin/dare_dev_reports_publish.py ~/bin/seo_render_html.py | grep -A5 -B2 new-badge to find recent CSS changes 2. Compare against the working version Dan remembers (probably from 2026-05-10ish — the red-dot pattern’s prior state) 3. Restore the red-dot CSS rule + republish

Likely culprit: when extracting HOVER_PREVIEW_CSS from seo_render_html.py earlier today (toolkit commit 6551fbf ish), some adjacent CSS may have been swept up or had its specificity changed. The anchor-enricher work added classes like link-with-thumb to the same render surface — possible they’re inheriting / overriding the .new-badge rule.

Pairs with: - feedback_renderer_change_invalidates_artefacts.md — renderer changes today required .html sibling deletion to take effect. A CSS-only change in the renderer would also need this for the visual to reflect. Worth checking the cache state. - feedback_state_emerges_from_data.md — the NEW badge is derived state (from file mtime); the data side is fine, the visual signal is the regression. - feedback_thumbnail_on_ship_pattern.md — same surface; the catalog hover-preview thumbs ARE rendering correctly tonight, so it’s not a wholesale catalog-CSS break.

Source: parked_sketch_devreports_new_badge_regression_2026-05-14.md · Rendered 2026-05-18 12:53