Dependency Audit red since at least 2026-08-03: cryptography, aiohttp, and a react-router advisory with no fixed release #282
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The scheduled Dependency Audit workflow has failed on
mainon every run since at least 2026-08-03 (runs 640, 642, 643). All three jobs fail. These are genuine CVEs, not an infrastructure problem — the log was pulled rather than guessed at.Two are routine bumps. The third is not, and needs a decision.
1. Backend —
cryptography==48.0.1(3 CVEs)Latest on PyPI is 50.0.0, which clears all three. Note this is a two-major jump from 48.
cryptographyis used directly for AES-GCM at-rest secrets encryption (webapp/backend/requirements.txt:34) and is also a transitive dependency ofauthlib==1.7.2, so the OIDC path needs exercising, not just the settings encryption.2. Bot —
aiohttp==3.14.1(3 CVEs)Latest is 3.14.3, a patch bump that clears all three. Lowest-risk of the three items.
3. Frontend —
react-routerGHSA-qwww-vcr4-c8h2 (high) — no fixed release on our lineWe're on
react-router-dom@7.18.2, inside the range. Three things make this awkward:npm audit fix --forceproposes a downgrade to 7.11.0, flagged as breaking.react-router-domhas no fixed version at all. Itslatestdist-tag is7.18.2and no 8.x was ever published — in v8 the package was folded intoreact-routeritself. The fix,react-router@8.3.0, is only reachable by migrating offreact-router-dom. That is a framework migration, not a version bump.react-router-domwas bumped to 7.18.2 inb51223efour commits before this was noticed. Auto-merge is dutifully keeping us current inside a range with an unpatched high-severity advisory, and the audit job is the only thing saying so.Applicability — probably does not affect us
The advisory is specific to RSC mode. Quest Board's frontend is a plain Vite SPA with client-side routing; there is no React Server Components setup, no server-side route module rendering, and no
@vitejs/plugin-rsc. Grepping the frontend for RSC usage returns only false positives.So the exploit path most likely does not exist here. That is a judgment about applicability, not a claim the advisory is wrong, and it should be confirmed by someone reading the advisory in full before it is acted on.
Options
react-router@8.3.0(droppingreact-router-dom). Clears it properly, but it is a real migration with breaking changes across every route file.Option 1 looks right if the applicability read holds. Option 2 is the honest long-term answer and belongs in its own issue with its own testing.
Why this matters beyond the CVEs
A permanently-red scheduled job is worse than no job: it trains you to ignore the thing that would tell you about the next real vulnerability. Whatever is decided for item 3, the audit should end up green or explicitly suppressed — not left failing.
Acceptance
cryptographybumped and the full backend suite greenaiohttpbumped and the bot suite greenLabels: backend, bot, frontend