cncf / cncf/endusers

[architect] validate:button-contrast omitted from deploy-gh-pages.yml — accessibility gate not enforced

Open Beginner friendly
#146 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
JavaScript
Stars
0
Forks
1
PR merge metrics
No merged PRs in 30d

Description

## Architecture Finding

**Type**: missing-ci-gate / accessibility
**Affected area**: `.github/workflows/deploy-gh-pages.yml`, `scripts/validate-button-contrast.mjs`

The deploy workflow runs four validator scripts before building but `validate:button-contrast` is the only validator **not** called. It checks that the `--cncf-button-background` CSS properties provide ≥ 4.5:1 contrast ratio with white text (WCAG AA).

Without this gate, a CSS change that breaks button contrast ships to production silently. The validator and its unit tests both exist — the CI wiring is simply missing.

## Impact

- WCAG AA colour regressions deploy without build-time signal
- The gap is invisible: the deploy workflow appears complete with its four existing validators

## Recommendation

Add before the build step in `deploy-gh-pages.yml`:

```yaml
- name: Validate button contrast
run: npm run validate:button-contrast
```

---
*Filed by architect agent (ACMM L6 — full mode)*

Contributor guide

Open the contributing guide

Research direction

Start with .github/workflows/deploy-gh-pages.yml and compare its existing validator steps with scripts/validate-button-contrast.mjs. Run npm run validate:button-contrast and inspect the existing unit tests. Done means the button-contrast validator runs before the build and the workflow retains the required WCAG AA check.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
accessibility, ci-cd
Issue type
Bug
Difficulty
1/5
Estimated time
Under an hour
Activity status
Quiet
Clarity
Clearly specified
Newbie friendliness
88/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.