Accessibility rule handbook metadata
- Rule
DET.A11Y.KS.PY_HASH_ATTRS· lanedeterministic· scopeks- Page status
- current
- page_version
7abf4e51ad1c979a435b9793e00416d87f01486e1485d969ae18a4d3c4eac4bb- generated_at
- 2026-05-28T05:09:12.000Z
- registry_fingerprint
b3797010c3ca988bb0d21d5e85d4efece0b9e83f311c2d4981ebbf402df7a7c2
Related WCAG success criteria
Indicative mapping for compliance reporting — not a conformance claim. Criteria: 4.1.2
How this rule is checked
Deterministic lane — scope ks. Detected by det-a11y-ks-*.check.js or the axe lane for WCAG-tagged violations.
- Harness:
auditor-tests/invoke-a11y-ruleset-harness.shon the Before fixture. - Audit:
analyze-website-a11y.mjs --only-deterministic-rule-ids DET.A11Y.KS.PY_HASH_ATTRS
Module: docs/design/a11y-audit/deterministic-a11y-rules.md#det-a11y-ks-py-hash-attrs. See Before / After below.
Purpose
Deterministic accessibility check (ks scope).
Passing signals
- DOM and/or repo signals satisfy the rule implementation in
tools/website-a11y-auditor. - For axe-backed WCAG criteria, use
--lanes axe,detwith an appropriate--standardpreset.
Failing signals
- Auditor emits a finding with
ruleIdDET.A11Y.KS.PY_HASH_ATTRSon the crawled URL. - Harness:
auditor-tests/invoke-a11y-ruleset-harness.sh DET.A11Y.KS.PY_HASH_ATTRSexpects ≥1 finding on the Before fixture.
Before example
Before (failing example)
Py Hash Attrs
KS visual hash markers are missing or mismatched.
Rule: DET.A11Y.KS.PY_HASH_ATTRS · scope: ks
After example
After (passing example)
Py Hash Attrs (remediated)
hash and data-ks-hash match on governed roots.
Deterministic accessibility check (ks scope).
Evidence and remediation
- Reproduce with
analyze-website-a11y.mjs --only-deterministic-rule-ids DET.A11Y.KS.PY_HASH_ATTRSwhen lane is deterministic. - Apply the After markup pattern (or fix generator source for KS rules).
- Re-run harness or audit until the rule is clean on the target URL.
Related rules
- See deterministic-a11y-rules.md
DET.A11Y.GENERIC.LANG— Root html must declare lang.
Related WCAG
- WCAG 4.1.2 —
wcag/2.2/sc/4.1.2-name-role-value.md