Skip to content

A11y engine pre prod 1100 - #286

Open
chikara1608 wants to merge 2 commits into
mainfrom
a11y_engine_pre_prod_1100
Open

A11y engine pre prod 1100#286
chikara1608 wants to merge 2 commits into
mainfrom
a11y_engine_pre_prod_1100

Conversation

@chikara1608

Copy link
Copy Markdown
Collaborator

<< Describe the changes >>

Closes:

chikara1608 and others added 2 commits August 4, 2026 20:01
* chore(deps): security bumps — postcss, shell-quote (AXE-3900/AXE-3901)

Pins two vulnerable transitive dev dependencies via package.json
`overrides`, so the fixes survive lockfile regeneration rather than
living only in the lock.

  shell-quote  1.8.4 -> 1.10.0   GHSA-395f-4hp3-45gv  (AXE-3901)
  postcss      -> 8.5.25 floor   GHSA-6g55-p6wh-862q  (AXE-3900)

Impact scope: a11y-critical (dependency tree only — no rule or module
behaviour changes).

No runtime exposure: axe-core declares no `dependencies`, so neither
package ships in the published bundle.
  shell-quote <- npm-run-all (build scripts)
  postcss     <- @csstools/css-syntax-patches-for-csstree <- cssstyle <- jsdom

Adding the postcss override let npm re-resolve that subtree, which
refreshed @csstools/css-syntax-patches-for-csstree 1.0.14 -> 1.1.7
(in-range for cssstyle's ^1.0.14). That version no longer depends on
postcss, so postcss and nanoid drop out of the tree altogether. The
override is retained as a floor guard in case any future dependency
reintroduces postcss.

Also refreshed in-range and dev-only: css-tree 3.1.0 -> 3.2.1,
mdn-data 2.12.2 -> 2.27.1.

lockfileVersion 2 preserved (--lockfile-version=2).

Verified: `npm ci --dry-run` clean; jsdom computed-style smoke test passes
on the bumped css-tree.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

* chore(deps): security overrides for ip-address and socket.io-parser (AXE-3943, AXE-3944)

- ip-address: override to >=10.4.0 (GHSA-mwp4-54f8-5fhr, SSRF via octal decoding)
- socket.io-parser: override to >=4.2.7 (GHSA-2m8v-j782-fhvr, memory exhaustion)

---------

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-authored-by: Sunny Sethi <sunny.se@browserstack.com>
A detached/inert node (mutation re-scan, or a <template>/shadow subtree)
yields an empty computed *-color. colorjs throws "Empty color reference"
on it, and that uncaught abort takes down the whole in-page Type-B data
collection (and cascades to subsequent Workflow-Analyser steps).

Guard parseString: treat a blank/non-string value as transparent instead
of throwing. Genuinely-transparent colors (rgba(0,0,0,0)) still parse
normally; only empty (== a non-rendered node) is short-circuited, so no
element that a rule actually scores changes verdict.

Adds parseString specs for empty / whitespace / non-string input.

Co-authored-by: Aaryan Choudhary <aaryan24092005@gmail.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-authored-by: Aaryan Choudhary <76112295+Aaryan430@users.noreply.github.com>
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