Skip to main content

Track P: Accessibility & Internationalization

Priority: MEDIUM — Required for EU expansion (Y2) and enterprise deals Agent: accessibility-testing-specialist, localization-specialist Sprint Range: S4-S10 Reference: docs/operations/68-user-experience-journeys.md (WCAG 2.1 AA), docs/operations/66-operational-readiness.md (i18n architecture)


Status Summary

Progress: 0% (0/18 tasks)

SectionTitleStatusTasks
P.1WCAG 2.1 AA CompliancePending0/5
P.2Internationalization (i18n) FrameworkPending0/4
P.3Localization (l10n) PipelinePending0/4
P.4Regional Data ResidencyPending0/3
P.5Accessibility Testing AutomationPending0/2

P.1: WCAG 2.1 AA Compliance

Sprint: S4-S5 | Priority: P1 | Depends On: A.1, C.1 Goal: Full WCAG 2.1 AA audit, semantic HTML, contrast compliance, keyboard navigation

  • P.1.1: Audit existing UI for WCAG compliance
    • Automated: axe-core on all pages
    • Manual: keyboard navigation, screen reader compatibility
    • Gap report: severity and remediation priority
  • P.1.2: Implement semantic HTML and ARIA patterns
    • Landmarks: main, nav, aside, footer
    • ARIA labels: on all interactive elements
    • Live regions: for dynamic content updates
  • P.1.3: Ensure color and contrast compliance
    • Normal text: contrast ratio >= 4.5:1
    • Large text: contrast ratio >= 3:1
    • Color independence: never sole information conveyor (icons + text + color)
    • Dark mode: separate contrast audit
  • P.1.4: Implement keyboard navigation
    • Full coverage: all functionality accessible via keyboard
    • Focus indicators: visible 2px blue outline (per doc 68)
    • Skip links: skip-to-content links
    • Tab order: matches visual order
  • P.1.5: Build accessibility statement
    • Statement: public accessibility statement page
    • Limitations: known limitations and remediation timeline
    • Contact: information for accessibility issues

P.2: Internationalization (i18n) Framework

Sprint: S6-S7 | Priority: P1 | Depends On: C.1 Goal: String externalization, locale-aware formatting, RTL support, and developer tooling

  • P.2.1: Implement string externalization
    • Format: ICU MessageFormat for all UI strings
    • Files: JSON translation files per locale
    • Context: annotations for translators
    • Exception: audit trail strings remain English (FDA requirement per doc 66)
  • P.2.2: Build locale-aware formatting
    • Date/time: Intl.DateTimeFormat with timezone support
    • Numbers/currency: Intl.NumberFormat per locale
    • Measurement: configurable per tenant
  • P.2.3: Implement RTL (Right-to-Left) support
    • CSS: logical properties (start/end vs. left/right)
    • Bidirectional: text handling
    • Mirroring: UI mirroring for RTL locales
  • P.2.4: Create i18n developer tooling
    • Lint: no hardcoded strings in components
    • CI: missing translation detection
    • Testing: pseudo-localization (accented characters, elongated strings)

P.3: Localization (l10n) Pipeline

Sprint: S8-S9 | Priority: P2 | Depends On: P.2 Goal: Translation management, initial locale support, and QA process

  • P.3.1: Set up translation management system
    • Integration: Crowdin, Lokalise, or Phrase
    • Extraction: source string extraction from codebase
    • Memory: translation memory for consistency
  • P.3.2: Implement initial locale support
    • Locales: en-US (default), en-GB, de-DE, fr-FR, ja-JP, pt-BR
    • Priority: EU languages first (Y2 market entry per doc 66)
    • Quality: professional translation for compliance-critical content
  • P.3.3: Build locale switching mechanism
    • User-level: locale preference
    • Tenant-level: default locale
    • Detection: browser locale detection with override
  • P.3.4: Create localization QA process
    • Screenshot review: per locale
    • Layout verification: text expansion/contraction
    • Context validation: by native speakers

P.4: Regional Data Residency

Sprint: S8 | Priority: P1 | Depends On: E.2, N.2 Goal: Multi-region data isolation with cross-region access controls

  • P.4.1: Implement multi-region data isolation
    • Configuration: tenant-level data residency
    • US: us-central1 (primary, deployed)
    • EU: europe-west1 (required for GDPR per doc 66)
    • Encryption: region-specific keys via Cloud KMS
  • P.4.2: Build cross-region access controls
    • Routing: API routing based on tenant region
    • Logging: cross-region access logging and alerting
    • Minimization: data transfer minimization
  • P.4.3: Create regional compliance validation
    • Rules: per-region regulatory rule engine
    • Reporting: data residency compliance reporting
    • Audit: annual third-party audit support

P.5: Accessibility Testing Automation

Sprint: S10 | Priority: P2 | Depends On: P.1 Goal: Automated a11y testing in CI and ongoing accessibility program

  • P.5.1: Integrate automated a11y testing in CI
    • axe-core: on every PR (zero critical violations gate)
    • Lighthouse: accessibility audit (score >90)
    • Visual regression: for focus indicators
  • P.5.2: Establish ongoing accessibility program
    • Quarterly audit: by WCAG-certified reviewer
    • User testing: with assistive technology users
    • Champions: accessibility champion program (1 engineer per team)

Updated: 2026-02-14 Compliance: CODITECT Track Nomenclature Standard (ADR-054)