Visual regression coverage
Tracks which Koder UI surfaces have shipped the four-category visual-regression suite mandated by meta/docs/stack/specs/develop/visual-regression-tdds.kmd § R1. CI release engineering blocks any release whose row here isn't green.
Registry — Visual regression coverage
A row per Koder UI surface (module × surface kind). Each row tracks which of the four categories has a passing suite at the R2 viewport matrix.
Categories
| Col | Meaning |
|---|---|
| ✅ | Suite exists, runs in CI, passes at last invocation |
| ⚠ | Suite exists but has known failing rows / TODO bodies |
| ❌ | No suite exists |
| n/a | Category does not apply (e.g. C/D for non-UI surfaces) |
Tools column lists the audit binaries each row depends on.
Coverage
| Module | Surface | A — overflow | B — chrome | C — proportion | D — collision | Tools | Last audit |
|---|---|---|---|---|---|---|---|
tools/design-gen |
web (templ) | ❌ | ❌ | ⚠ (clamp-floor reports 5 violations — #099) | ❌ | css |
2026 |
services/foundation/id/app/web |
web (flutter) | ❌ | ❌ | ❌ | ❌ | overflow-audit | — |
services/foundation/id/app/mobile |
flutter mobile | ❌ | ❌ | ❌ | ❌ | golden_toolkit | — |
services/foundation/id/app/desktop |
flutter desktop | ❌ | ❌ | n/a | n/a | golden_toolkit | — |
products/horizontal/kruze/app/desktop |
flutter desktop | ❌ | ❌ | n/a | n/a | golden_toolkit | — |
products/horizontal/kruze/app/mobile |
flutter mobile | ❌ | ❌ | ❌ | ❌ | golden_toolkit | — |
engines/sdk/koder_kit (consumer surfaces) |
flutter | ❌ | ❌ | ❌ | ❌ | golden_toolkit (per consumer) | — |
engines/sdk/koder_kit_gtk |
gtk4/adwaita | ❌ | n/a | ✅ (AdwSwitchRow off/on goldens distinguish state — KKGTK-002 R2 closed) | ❌ | grim + md5sum (compositor screencopy) | 2026 |
products/dev/eye/app/android |
android native | ❌ | ❌ | ❌ | ❌ | Compose UI Test | — |
Initial seed at registry creation (2026
0522 with #087). The automation that turns ✅ into reality lives in/k-test-gen-visual(per-module). When a row goes ✅ at last audit, paste the date in the rightmost column.
Onboarding a new surface
When a new Koder UI surface ships:
- Author runs
/k-test-gen-visual <módulo>to scaffold the suite. - Row appended here with status ❌ → ⚠ → ✅.
koder-spec-audit(registries lint) enforces that every UImodule discoverable per § R4 has a row.
/k-housekeepnightly runskoder-overflow-auditper row andupdates the last-audit column.
Status fields
- *ast audit* ISO date of the most recent
koder-overflow-auditrun against the surface.
- *ools* which audit binaries the row depends on. Multiple binaries
separated by
+.
Cross-references
- Parent spec:
meta/docs/stack/specs/develop/visual-regression-tdds.kmd /k-test-gen-visualskill:meta/context/commands/k-test-gen-visual.md- Audit binaries:
dev/koder-tools/cmd/koder-css-audit/(#085)dev/koder-tools/koder-overflow-audit/(#086)
- Open follow-ups:
tools/design-gen#099— 5 clamp-floor violations on base.csstools/design-gen#057— sidebar dvh + topbar gear bugs