Skip to content

feat: Add design principles checklist to UI verification workflow#2349

Merged
marcusquinn merged 2 commits intomainfrom
feature/ui-design-principles
Feb 26, 2026
Merged

feat: Add design principles checklist to UI verification workflow#2349
marcusquinn merged 2 commits intomainfrom
feature/ui-design-principles

Conversation

@marcusquinn
Copy link
Owner

@marcusquinn marcusquinn commented Feb 26, 2026

Summary

  • Add comprehensive design principles checklist to workflows/ui-verification.md as enforceable quality gates
  • Covers typography, layout, interaction, colour, information architecture, and Mom Test usability
  • Each principle includes a concrete rule and a specific verification method (Playwright, screenshot, code review)

Design Principles Added

Typography & Readability (7 rules)

  • Max 740px paragraph width, min 16px text size, max 3 font families
  • Font weight hierarchy, adequate line-height (1.4+), letter spacing, widow/orphan control

Layout & Spacing (6 rules)

  • Consistent spacing scale, adequate padding, consistent alignment/sizing
  • Logo clear space, graceful responsive adjustment for varying content

Interaction & Accessibility (6 rules)

  • 44x44px minimum touch targets, visible hover/rollover states
  • Bold underlined coloured links in paragraphs, meaningful alt/title attributes
  • Information-relevant icons, scroll wheel behaviour (no hijacking/trapping)

Colour & Theming (3 rules)

  • Conventional informational colour coding sympathetic to brand
  • Text highlighting that works in both light and dark modes
  • Brand logos in nav link to home page

Information Architecture (2 rules)

  • Clear visual hierarchy via layout, size, weight (not colour alone)
  • Standard hierarchical naming conventions for extensibility

Usability — Mom Test (6 principles)

  • Clarity, simplicity, consistency, feedback, discoverability, forgiveness
  • S1/S2 failures are blockers — must fix before task completion

Testing

  • Markdown lint: 0 errors
  • No code changes — agent instruction document only

Summary by CodeRabbit

  • Documentation
    • Added a Design Principles Checklist to the UI verification docs, covering typography, layout/spacing, interaction/accessibility, color/theming, information architecture, and usability.
    • Checklist also appears alongside the existing verification guidance to ensure visibility during reviews.
    • Integrated design-principle checks into the verification workflow, including spot-checks (paragraph width, text size, touch targets) and severity reporting for violations.

Add comprehensive design quality gates covering typography (max 740px
paragraph width, min 16px text, 3 font family limit, line/letter spacing),
layout (consistent padding/alignment/sizing, logo clear space, graceful
responsive), interaction (44px touch targets, hover states, bold underlined
links, meaningful alt/title, scroll wheel behaviour), colour (informational
coding, dual-mode highlighting, logo home link), information architecture
(visual hierarchy, naming conventions), and Mom Test usability evaluation.
@gemini-code-assist
Copy link

Warning

You have reached your daily quota limit. Please wait up to 24 hours and I will start processing your requests again!

@github-actions github-actions bot added the enhancement Auto-created from TODO.md tag label Feb 26, 2026
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Feb 26, 2026

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between ffc1991 and 66bd55d.

📒 Files selected for processing (1)
  • .agents/workflows/ui-verification.md

Walkthrough

Added a Design Principles Checklist to the UI verification doc, duplicated the checklist placement, and integrated design-principles checks into workflow steps (notably steps 8 and 9). Expanded Quick Verification (Minimal) with paragraph width, text size, and touch-target spot-checks; minor wording updates throughout.

Changes

Cohort / File(s) Summary
UI Verification Documentation
.agents/workflows/ui-verification.md
Inserted a comprehensive Design Principles Checklist (typography, layout, interaction/accessibility, color/theming, information architecture, usability). Duplicated checklist placement, updated full workflow wording to "6 steps + design principles", added step 8 directive to check applicable design principles, and step 9 requirement to report violations with severity. Expanded Quick Verification (Minimal) with paragraph width, text size, touch targets spot-checks. Minor wording adjustments across verification and skip guidance sections.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

Poem

✨ Checklists bloom in careful light,
Typography, spacing, colors bright,
Steps extended, principles in view,
A clearer path for what to do —
UI checks now sing anew. 🎨

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title directly and accurately reflects the main change: adding a design principles checklist to the UI verification workflow documentation.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch feature/ui-design-principles

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions
Copy link

🔍 Code Quality Report

�[0;35m[MONITOR]�[0m Code Review Monitoring Report

�[0;34m[INFO]�[0m Latest Quality Status:
SonarCloud: 0 bugs, 0 vulnerabilities, 90 code smells

�[0;34m[INFO]�[0m Recent monitoring activity:
Thu Feb 26 02:27:30 UTC 2026: Code review monitoring started
Thu Feb 26 02:27:31 UTC 2026: SonarCloud - Bugs: 0, Vulnerabilities: 0, Code Smells: 90

📈 Current Quality Metrics

  • BUGS: 0
  • CODE SMELLS: 90
  • VULNERABILITIES: 0

Generated on: Thu Feb 26 02:27:33 UTC 2026


Generated by AI DevOps Framework Code Review Monitoring

@augmentcode
Copy link

augmentcode bot commented Feb 26, 2026

🤖 Augment PR Summary

Summary: Expands the UI verification workflow with an enforceable design-principles checklist to standardize visual/UX quality gates.

Changes:

  • Adds a structured checklist covering typography, layout/spacing, interaction/accessibility, colour/theming, information architecture, and Mom Test usability.
  • Updates Quick Verification guidance to include a design-principles spot-check alongside screenshots/console/contrast checks.
  • Updates Build+ integration notes to explicitly require checking principles and reporting any violations with severity.
Technical Notes: Verification methods emphasize Playwright audits, screenshot evidence, and code-review checks.

🤖 Was this summary useful? React with 👍 or 👎

Copy link

@augmentcode augmentcode bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review completed. 4 suggestions posted.

Fix All in Augment

Comment augment review to trigger a new review at any time.

|-----------|------|---------------|
| **Maximum paragraph width** | No paragraph text wider than 740px (approximately 75 characters per line) | Inspect `max-width` on text containers; screenshot at desktop-lg to confirm text does not stretch edge-to-edge |
| **Minimum text size** | Body text minimum 16px (1rem). No text below 14px except legal footnotes or captions | Playwright `evaluate()` to check computed `font-size` on all text elements |
| **Font family limit** | Maximum 3 font families: (1) headings/titles, (2) body/buttons/forms/blockquotes, (3) code/monospace | Inspect computed `font-family` values across the page; flag any fourth family |
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The Minimum text size rule says body text is minimum 16px, but then allows text down to 14px for footnotes/captions; that’s internally inconsistent and may be hard to enforce as a “quality gate” without clarifying the exception.

Severity: low

Fix This in Augment

🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.

| Principle | Rule | How to verify |
|-----------|------|---------------|
| **Finger-friendly touch targets** | All interactive elements minimum 44x44px touch target (WCAG 2.5.8). Adequate spacing between adjacent targets to prevent mis-taps | Playwright `evaluate()` to measure element bounding boxes on mobile device emulation |
| **Hover/rollover state changes** | All clickable elements must have a visible hover state change (colour, underline, shadow, scale) to signal interactivity | Playwright `hover()` + screenshot comparison; verify visual change on buttons, links, cards |
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The touch target reference looks mismatched: WCAG 2.2 SC 2.5.8 “Target Size (Minimum)” is 24×24 CSS px, while 44×44 is typically tied to WCAG 2.5.5 (AAA) / platform guidance; the citation here may mislead reviewers.

Severity: medium

Fix This in Augment

🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.

| **Hover/rollover state changes** | All clickable elements must have a visible hover state change (colour, underline, shadow, scale) to signal interactivity | Playwright `hover()` + screenshot comparison; verify visual change on buttons, links, cards |
| **Link text styling in paragraphs** | Links within paragraph text must be bold, underlined, and use a distinct colour to be identifiable without relying on colour alone | Inspect computed styles on `<a>` elements within `<p>` tags; verify `font-weight`, `text-decoration`, and `color` differ from surrounding text |
| **Meaningful alt and title attributes** | All images must have descriptive `alt` text. Include relevant brand and subject keywords for SEO. Decorative images use `alt=""`. Interactive elements should have `title` attributes where helpful for screen readers | Playwright `evaluate()` to audit all `<img>` elements for `alt`; flag empty or generic values like "image" or "photo" |
| **Information-relevant icons** | Icons should reinforce meaning, not decorate. Every icon should be understandable without its label, or be paired with a text label | Visual check; verify icons match their associated action or content |
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This guidance may be misleading for accessibility: title attributes aren’t reliably announced by screen readers, and recommending SEO keywords in alt text can encourage non-descriptive alt content (alt is primarily for users of assistive tech).

Severity: low

Fix This in Augment

🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.

### Usability (Mom Test)

After all technical checks pass, evaluate the page against the Mom Test heuristic (see `seo/mom-test-ux.md`):

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The referenced path seo/mom-test-ux.md doesn’t match the repo location (.agents/seo/mom-test-ux.md), so the link/instruction may be broken for anyone following the workflow.

Severity: medium

Fix This in Augment

🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.

- Clarify 14px text exception is supplementary text only, not a contradiction
- Fix touch target WCAG reference: 44px is Apple/Google HIG + WCAG 2.5.5 AAA,
  24px is WCAG 2.5.8 AA minimum -- aim for 44, never below 24
- Prioritise accessibility over SEO in alt text guidance, recommend aria-label
  over title attribute (inconsistent screen reader support)
- All three points raised by Augment code review
@github-actions
Copy link

🔍 Code Quality Report

�[0;35m[MONITOR]�[0m Code Review Monitoring Report

�[0;34m[INFO]�[0m Latest Quality Status:
SonarCloud: 0 bugs, 0 vulnerabilities, 90 code smells

�[0;34m[INFO]�[0m Recent monitoring activity:
Thu Feb 26 02:31:11 UTC 2026: Code review monitoring started
Thu Feb 26 02:31:12 UTC 2026: SonarCloud - Bugs: 0, Vulnerabilities: 0, Code Smells: 90

📈 Current Quality Metrics

  • BUGS: 0
  • CODE SMELLS: 90
  • VULNERABILITIES: 0

Generated on: Thu Feb 26 02:31:14 UTC 2026


Generated by AI DevOps Framework Code Review Monitoring

@sonarqubecloud
Copy link

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Nitpick comments (1)
.agents/workflows/ui-verification.md (1)

308-309: Define one severity rubric for all checklist violations.

Line 329 requires severity reporting, but only the Mom Test section defines S1/S2 blocking criteria. Add a compact severity matrix for the full checklist so reviews stay consistent and automatable.

Also applies to: 329-329

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.agents/workflows/ui-verification.md around lines 308 - 309, Add a compact,
single severity rubric covering all checklist violations (not just the Mom Test)
by defining S1/S2/S3 levels and examples for each checklist item type and
placing the matrix near the existing "severity reporting" text; update the Mom
Test section to reference this global "severity matrix" and ensure any checklist
rules that previously implied S1/S2 link to the unified rubric so reviews are
consistent and machine-readable.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In @.agents/workflows/ui-verification.md:
- Around line 278-279: Replace the current "title attribute" guidance under
"Meaningful alt and title attributes" with accessible-name guidance: remove
recommending use of title for screen readers and instead instruct authors to
ensure interactive elements have a programmatic accessible name via visible
text, aria-label, or aria-labelledby; update the Playwright audit step (the
existing evaluate() check) to verify the computed accessible name for
interactive elements and images (not just the presence of a title), and flag
empty/generic names like "image" or "photo" as well as missing
aria-label/aria-labelledby/visible text.

---

Nitpick comments:
In @.agents/workflows/ui-verification.md:
- Around line 308-309: Add a compact, single severity rubric covering all
checklist violations (not just the Mom Test) by defining S1/S2/S3 levels and
examples for each checklist item type and placing the matrix near the existing
"severity reporting" text; update the Mom Test section to reference this global
"severity matrix" and ensure any checklist rules that previously implied S1/S2
link to the unified rubric so reviews are consistent and machine-readable.

ℹ️ Review info

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 0093828 and ffc1991.

📒 Files selected for processing (1)
  • .agents/workflows/ui-verification.md

@marcusquinn marcusquinn merged commit 60095dc into main Feb 26, 2026
14 of 15 checks passed
@marcusquinn marcusquinn deleted the feature/ui-design-principles branch March 3, 2026 03:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement Auto-created from TODO.md tag

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant