Skip to content

feat(calibration): accessibility runtime + redundant encoding + figure contracts - #15

Merged
lostlight530 merged 8 commits into
mainfrom
calibration/2026-08-23-a11y-ci-final
Aug 23, 2026
Merged

lostlight530 merged 8 commits into
mainfrom
calibration/2026-08-23-a11y-ci-final

Conversation

@lostlight530

@lostlight530 lostlight530 commented Aug 23, 2026

Copy link
Copy Markdown
Owner

2026-08-23 full calibration

Executable follow-up to today's Round 4 scientific-integrity/provenance closure, based on the latest main.

Accessibility runtime

  • add top-level accessibility recipe schema: alt_text, long_description, require_alt_text, redundant_encoding, series_styles, adjacent_pairs
  • add core/accessibility.py and sci-render-kit/a11y@1
  • emit <figure>.a11y.json with text alternatives, actual colors, non-color cues, declared adjacency, and explicit conformance_claim: false

WCAG-scoped runtime rules

  • SC 1.1.1 support: required short text alternative
  • SC 1.4.1 support: required non-color redundant encoding for supported multi-series figures
  • SC 1.4.11 / G209 support: check explicitly declared actually-adjacent series pairs
  • retain legacy all-palette-pairs adjacency as a clearly labelled stricter project policy

Matplotlib architecture

  • preserve the mature renderer/provenance implementation as backends/matplotlib_base.py
  • keep public matplotlib_adapter.py as the accessibility-aware compatibility layer
  • preserve direct-script repo-root import bootstrap
  • render marker / line-style / hatch cues and accessibility metadata where supported
  • keep R/Observable redundant-series behavior explicitly Not Integrated until actually wired

Maintenance model

Local checks remain available through make test when useful, but they are not an automated merge gate. No GitHub Actions workflow is added by this PR.

The Round 4 research contract, backend truth rules, and RO-Crate 1.3 proposed-only boundary remain active.

@lostlight530 lostlight530 changed the title feat(calibration): accessibility runtime + redundant encoding + CI-backed figure contracts feat(calibration): accessibility runtime + redundant encoding + figure contracts Aug 23, 2026
@lostlight530
lostlight530 merged commit ef69559 into main Aug 23, 2026
@lostlight530
lostlight530 deleted the calibration/2026-08-23-a11y-ci-final branch August 23, 2026 02:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant