From 7b2a6b303b7e26b522314413bbea258ad8453dd4 Mon Sep 17 00:00:00 2001 From: Rajath M R Date: Fri, 26 Jun 2026 15:18:20 +0530 Subject: [PATCH 01/13] AXE-3625: Add defaultCategory to Phase 2 bulk-review rules Wire seven axe-core rules to their Phase 2 bulk-review categories via metadata.defaultCategory (reference data only; no rule logic change): aria-hidden-focus -> aria-hidden aria-valid-attr-value -> aria-attributes bypass -> bypass-blocks css-orientation-lock -> orientation duplicate-id-aria -> duplicate-ids identical-links-same-purpose -> link-consistency video-caption -> media-captions Co-Authored-By: Claude Opus 4.8 (1M context) --- lib/rules/aria-hidden-focus.json | 1 + lib/rules/aria-valid-attr-value.json | 1 + lib/rules/bypass.json | 1 + lib/rules/css-orientation-lock.json | 1 + lib/rules/duplicate-id-aria.json | 1 + lib/rules/identical-links-same-purpose.json | 1 + lib/rules/video-caption.json | 1 + 7 files changed, 7 insertions(+) diff --git a/lib/rules/aria-hidden-focus.json b/lib/rules/aria-hidden-focus.json index afb1ad8fd..d149e7900 100755 --- a/lib/rules/aria-hidden-focus.json +++ b/lib/rules/aria-hidden-focus.json @@ -17,6 +17,7 @@ ], "actIds": ["6cfa84"], "metadata": { + "defaultCategory": "aria-hidden", "description": "Ensure aria-hidden elements are not focusable nor contain focusable elements", "help": "ARIA hidden element must not be focusable or contain focusable elements", "needsReviewConfidence": 49.99 diff --git a/lib/rules/aria-valid-attr-value.json b/lib/rules/aria-valid-attr-value.json index ac92598e2..dc39253c3 100644 --- a/lib/rules/aria-valid-attr-value.json +++ b/lib/rules/aria-valid-attr-value.json @@ -13,6 +13,7 @@ ], "actIds": ["6a7281"], "metadata": { + "defaultCategory": "aria-attributes", "description": "Ensure all ARIA attributes have valid values", "help": "ARIA attributes must conform to valid values", "needsReviewConfidence": 49.99 diff --git a/lib/rules/bypass.json b/lib/rules/bypass.json index 02666d9da..b05b74210 100644 --- a/lib/rules/bypass.json +++ b/lib/rules/bypass.json @@ -20,6 +20,7 @@ ], "actIds": ["cf77f2", "047fe0", "b40fd1", "3e12e1", "ye5d6e"], "metadata": { + "defaultCategory": "bypass-blocks", "description": "Ensure each page has at least one mechanism for a user to bypass navigation and jump straight to the content", "help": "Page must have means to bypass repeated blocks", "needsReviewConfidence": 49.99 diff --git a/lib/rules/css-orientation-lock.json b/lib/rules/css-orientation-lock.json index 06bc7d426..ed134b978 100644 --- a/lib/rules/css-orientation-lock.json +++ b/lib/rules/css-orientation-lock.json @@ -16,6 +16,7 @@ ], "actIds": ["b33eff"], "metadata": { + "defaultCategory": "orientation", "description": "Ensure content is not locked to any specific display orientation, and the content is operable in all display orientations", "help": "CSS Media queries must not lock display orientation", "violationConfidence": 90, diff --git a/lib/rules/duplicate-id-aria.json b/lib/rules/duplicate-id-aria.json index 1c900c3dd..d3921ff55 100644 --- a/lib/rules/duplicate-id-aria.json +++ b/lib/rules/duplicate-id-aria.json @@ -16,6 +16,7 @@ "reviewOnFail": true, "actIds": ["3ea0c8"], "metadata": { + "defaultCategory": "duplicate-ids", "description": "Ensure every id attribute value used in ARIA and in labels is unique", "help": "IDs used in ARIA and labels must be unique", "needsReviewConfidence": 49.99 diff --git a/lib/rules/identical-links-same-purpose.json b/lib/rules/identical-links-same-purpose.json index afde13c5e..cba1facec 100644 --- a/lib/rules/identical-links-same-purpose.json +++ b/lib/rules/identical-links-same-purpose.json @@ -8,6 +8,7 @@ "tags": ["cat.semantics", "wcag2aaa", "wcag249"], "actIds": ["b20e66"], "metadata": { + "defaultCategory": "link-consistency", "description": "Ensure that links with the same accessible name serve a similar purpose", "help": "Links with the same name must have a similar purpose", "needsReviewConfidence": 49.99 diff --git a/lib/rules/video-caption.json b/lib/rules/video-caption.json index b0297ddb0..98f23d092 100644 --- a/lib/rules/video-caption.json +++ b/lib/rules/video-caption.json @@ -17,6 +17,7 @@ ], "actIds": ["eac66b"], "metadata": { + "defaultCategory": "media-captions", "description": "Ensure