Skip to content

fix(deps): force tinypool to a patched major in docs - #692

Open
krishnaGajabi wants to merge 1 commit into
mainfrom
fix/critical-dependabot-advisories
Open

krishnaGajabi wants to merge 1 commit into
mainfrom
fix/critical-dependabot-advisories

Conversation

@krishnaGajabi

@krishnaGajabi krishnaGajabi commented Oct 30, 2026 •

Copy link
Copy Markdown
Contributor

Closes the three critical Dependabot alerts on docs/ that have no automated fix.

alert package fix
GHSA-5gmw-xhrv-c9v3, GHSA-85c8-ppgw-ccpr tinypool 1.1.1 override to ^2.1.2
GHSA-jqcg-44mw-7w3h proxy-addr 2.0.7 lockfile bump to 2.0.8

Why tinypool needs an override. It is reachable only through @docusaurus/core, which
declares tinypool: ^1.0.2. There is no patched 1.x release — the fixes are in 2.1.1 and
2.1.2 — so Dependabot cannot raise this one on its own.

Upstream will not backport it, and that is worth reading before reviewing. The request was
filed as meta/docusaurus#12584 and closed as not planned, with two backport PRs (#12585,
#12758) closed alongside it. The maintainers' reasoning is that these advisories assume
tinypool sandboxes worker code, which Docusaurus does not rely on — its SSG workers already run
with full host privileges, so the advisory grants no access that a plugin or any other
build-time dependency does not already have.

So this override is closing an audit finding, not an exploitable hole in this site. It is
still worth taking: it is the only way these three alerts go away while we are on Docusaurus 3,
and main upstream is already on tinypool 2.x, so the override simply lands early where v4
will arrive anyway.

Why the major bump is safe. tinypool 2.0.0's only breaking change is dropping Node 18
(fix!: drop Node 18 support). docs/package.json already requires Node >= 22, and
.github/workflows/* and docs/netlify.toml both pin Node 24.

Verified with a clean npm ci and docusaurus build on Node 24.22.2 / npm 11.19.1 —
[SUCCESS] Generated static files in "build".

Deliberately left out, since Dependabot already has them open:

tinypool 1.1.1 comes in through @docusaurus/core and is affected by
GHSA-5gmw-xhrv-c9v3 and GHSA-85c8-ppgw-ccpr, prototype pollution gadgets
that reach code execution through worker options. There is no patched
1.x -- the fixes are in 2.1.1 and 2.1.2 -- and @docusaurus/core still
declares ^1.0.2 at 3.10.2, so an override is the only way to take them.

tinypool 2.0.0 changes nothing but the supported Node floor, which this
package already clears: it asks for Node >= 22, and the workflows and
Netlify both build on 24.

Also takes proxy-addr 2.0.8 for GHSA-jqcg-44mw-7w3h, which express
already allows within its declared ~2.0.7.

Signed-off-by: krishnaGajabi <gajbikrishna23@gmail.com>
@krishnaGajabi
krishnaGajabi marked this pull request as ready for review October 30, 2026 07:45
@krishnaGajabi
krishnaGajabi requested a review from a team as a code owner October 30, 2026 07:45

This branch has not been deployed

No deployments
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