Commit Graph

2 Commits

Author SHA1 Message Date
Alexander Whitestone
837c62945e feat: Visual Accessibility Audit of Foundation Web #492
Some checks failed
Architecture Lint / Linter Tests (pull_request) Successful in 23s
Smoke Test / smoke (pull_request) Failing after 19s
Validate Config / YAML Lint (pull_request) Failing after 9s
Validate Config / JSON Validate (pull_request) Successful in 7s
Validate Config / Python Syntax & Import Check (pull_request) Failing after 59s
Validate Config / Python Test Suite (pull_request) Has been skipped
Validate Config / Shell Script Lint (pull_request) Failing after 35s
PR Checklist / pr-checklist (pull_request) Successful in 3m37s
Validate Config / Cron Syntax Check (pull_request) Successful in 9s
Validate Config / Deploy Script Dry Run (pull_request) Successful in 11s
Validate Config / Playbook Schema Validation (pull_request) Successful in 22s
Architecture Lint / Lint Repository (pull_request) Failing after 18s
Replaces 12-line stub with full WCAG 2.1 AA compliance auditor.
Programmatic checks + optional Gemma 3 vision model analysis.

WCAG checks implemented:
- 1.1.1 Non-text Content (alt text on images)
- 1.3.1 Info and Relationships (heading hierarchy, landmarks)
- 1.4.3 Contrast (Minimum) — color contrast ratio calculation
- 2.4.1 Bypass Blocks (skip navigation link)
- 2.4.2 Page Titled (meaningful <title>)
- 2.4.4 Link Purpose (descriptive link text)
- 3.1.1 Language of Page (lang attribute)
- 4.1.2 Name, Role, Value (form labels, ARIA)

Features:
- Full HTML parser extracting images, headings, links, forms, landmarks
- WCAG contrast ratio calculation (relative luminance, sRGB)
- Vision model analysis (Gemma 3) for visual contrast/layout issues
- Multi-page site audit with per-page scoring
- JSON + human-readable text reports
- CLI with --url, --pages, --vision, --format flags
- Severity classification: critical/major/minor

Tests: 29/29 passing.
Closes #492
2026-04-13 20:51:22 -04:00
99af3526ce feat: implement scripts/foundation_accessibility_audit.py (#491-496) 2026-04-12 23:25:54 +00:00