Career Pathways

Accessibility Notes

Target: WCAG 2.2 Level AA.

Last reviewed against production evidence commit b1fcd7a: 2026-09-02.

September 17, 2026 Accessibility Improvements

  • The footer and accessibility page link directly to the OEDIT accessibility statement for reporting problems and requesting accommodations; existing CDLE contacts remain available.
  • Keyboard focus uses a navy outline with a white inner ring. Text fields and selects have darker borders, the homepage search placeholder is darker, and the accessibility reporting heading is visible against its navy background.
  • Clearing search or filters preserves focus. Removing a filter returns focus to its original control, loading more careers focuses the first new result, and moving the pointer away does not close a submenu containing keyboard focus.
  • Local verification passed 12 representative routes in axe, 12 launch-source checks, 39 focused accessibility/launch tests, and all 11 browser acceptance scenarios, including the new focus and contrast regressions. TypeScript and focused lint completed without errors.

This is targeted remediation and automated browser evidence. It does not replace human keyboard-usability or screen-reader acceptance, and it is not a new full-sitemap conformance claim. Earlier production baselines below remain historical evidence.

Implemented In Current Surface

  • Industry, pathway, and occupation pages use semantic sections and visible headings.
  • Industry cards and occupation cards are keyboard-focusable links.
  • Tag definitions are rendered as visible content on occupation pages and as title-supported labels on pathway cards.
  • Approved launch templates include a skip link targeting #main-content.
  • Search inputs expose explicit accessible names.
  • Region selection uses a labeled select, labeled ZIP entry, and explicit fallback message.
  • External resource links are keyboard reachable and visible.
  • Color is not the only carrier for tag meaning; labels and definitions are present.

Automated Browser Acceptance

These checks use Playwright and Chromium. They are repeatable engineering evidence, not human keyboard-usability or screen-reader acceptance.

  • PASS: Keyboard-only path through skip link, industry, tabs, career detail, and external training resource.
  • PASS: Required feedback state and focus placement.
  • PASS: ARIA radio-group arrow-key behavior.
  • PASS: Approved public routes at 320px and 640px widths.
  • PASS: WCAG text-spacing stress and reduced-motion behavior.
  • PASS: Browser accessibility-tree landmarks, headings, and control names.

Lightweight Automated Coverage

Launch-source command:

npm run accessibility:launch-routes

Scope:

  • /
  • /career-pathways
  • /industries/aerospace
  • /industries/construction
  • /careers/10
  • /resources
  • /feedback
  • /accessibility
  • /methodology
  • /docs/mvp/accessibility-notes
  • /privacy
  • /industries/manufacturing/mfg-l4-spec

Historical evidence from June 19, 2026:

  • Command completed with exit code 0.
  • The checker passed all 7 approved public launch evidence routes.
  • The checker verifies source-level coverage for one main landmark, at least one page-level heading, skip-link/main-target pairing, image alt text, and accessible names for links, buttons, and inputs.
  • The checker intentionally stays source-based and dependency-free so it can run quickly without starting the full Next.js app.
  • /analytics/readiness is intentionally excluded from this launch accessibility scope while /analytics/* remains outside the public production boundary.

Current source evidence from August 28, 2026:

  • The launch-source command completed with exit code 0 for all 11 repository-defined public evidence routes.
  • The focused source contracts passed 17 of 17 checks.

Full browser WCAG command, with the local app running:

npm run accessibility:wcag-aa

Historical browser evidence from June 19, 2026:

  • Browser-based axe coverage completed with exit code 0 against http://127.0.0.1:3000.
  • The checker audited 835 sitemap and seed routes for WCAG 2.1 A/AA rules.
  • The checker now prints progress during long route sweeps, uses domcontentloaded plus a settle delay for streamed Next.js pages, and retries failed routes under lighter concurrency before declaring a route inaccessible.

The August 28, 2026 production baseline at commit b9f77b2 passed 675 of 675 discovered public routes with WCAG 2.1 and 2.2 Level A/AA axe tags. The September 2 production revalidation passed all 671 routes discovered in that deployment.

Production acceptance command:

ACCESSIBILITY_BASE_URL=https://www.mycoloradojourney.gov npm run accessibility:acceptance

September 2 production result: AUTOMATED PASS — 8 of 8 browser acceptance scenarios.

Release Status

SOURCE AND AUTOMATED BROWSER PASS. The current source checker covers 12 public routes. Human VoiceOver/Safari acceptance remains a release gate; use the [human screen-reader acceptance kit](../oit/human-screen-reader-acceptance-kit.md) to record it.

Feedback