[object Object]

← back to Thesetdecorator

backlog: mark loop #3 done (heading-order) + record audited-clean dimensions

1ec82e526904d6ba7e55edaa81898111847eff9e · 2026-06-03 09:08:19 -0700 · Steve

Files touched

Diff

commit 1ec82e526904d6ba7e55edaa81898111847eff9e
Author: Steve <steve@designerwallcoverings.com>
Date:   Wed Jun 3 09:08:19 2026 -0700

    backlog: mark loop #3 done (heading-order) + record audited-clean dimensions
---
 YOLO_BACKLOG.md | 19 ++++++++++++++++++-
 1 file changed, 18 insertions(+), 1 deletion(-)

diff --git a/YOLO_BACKLOG.md b/YOLO_BACKLOG.md
index e4b7571..3ac689f 100644
--- a/YOLO_BACKLOG.md
+++ b/YOLO_BACKLOG.md
@@ -51,11 +51,28 @@ reversible local commit** marked `[x]` w/ hash, then ScheduleWakeup ~1800s.
   prod-redirecting decorator.html, admin/utility (art-review, logo-agent, logo-variants,
   sent-to-exa). Each page exactly one canonical; zero site-wide dupes. CNCP win logged.
 
+## Done (cont.) — 2026-06-03 loop #3 (fresh-dimension audit: a11y structure)
+- [x] **heading-order skips (WCAG 1.3.1)** — `9f62c21` · DTD verdict **A** (Claude+Codex
+  2/2, Qwen errored). 8 pages skipped h1→h3; inserted a visually-hidden
+  `<h2 class="sr-only">` section heading before each card-grid/step container on games,
+  fancy-search, resources, unions, submit → existing h3 cards now correctly nested
+  h1→h2→h3. Zero visual change. Used sr-only on games.html too (not h3→h2 promote) since
+  games.css has no h2 rule. Left complex/admin pages (stories, union-talk, logo-variants).
+  Idempotent `scripts/heading-order-fix.py`. CNCP win logged.
+
 ### Audited clean (no action) — 2026-06-03
 - Broken internal links: **0**. · Grid empty-states: all present. · Focus styles:
   main.css covered. · OG/social, alt-text, decorator meta: done (above).
 - Per-page head audit: every page has lang, viewport, title. theme-color present on a
-  subset (cosmetic, not pursued). Favicon → fixed above. Canonical → in flight.
+  subset (cosmetic, not pursued). Favicon → fixed (loop #2). Canonical → fixed (loop #2).
+- **Duplicate IDs**: clean — the only hits are JS template-literal `id="${...}"` strings.
+- **Form labels/aria**: clean — all 6 forms have labels/aria ≥ input count.
+- **Skip-to-content link**: already present site-wide (`<a class="skip-link" href="#main">`
+  → `<main id="main">` landmark exists). No action.
+- **CLS / img width-height**: no safe action — hero is CSS-sized (`height:100vh`,
+  `object-fit:cover`, space reserved → no CLS); remaining dimensionless imgs are
+  JS-injected templates with unknown runtime intrinsic size (several already use
+  `width:100%`/`aspect-ratio`). Forcing static dims would regress, not help.
 
 ## Notes / queued-for-Steve (gated — do NOT auto-do)
 - (none yet)

← 9f62c21 TSD a11y: fix WCAG 1.3.1 heading-order skips (DTD verdict A)  ·  back to Thesetdecorator  ·  TSD SEO fix: dedupe canonical in renderWithSEO (DTD verdict 6c2469c →