Skip to content

fix(backend): pin click>=8.3.3 for PYSEC-2026-2132 (CI run #528) - #153

Draft
Sbussiso wants to merge 2 commits into
masterfrom
ci-fix/30854617998
Draft

fix(backend): pin click>=8.3.3 for PYSEC-2026-2132 (CI run #528)#153
Sbussiso wants to merge 2 commits into
masterfrom
ci-fix/30854617998

Conversation

@Sbussiso

@Sbussiso Sbussiso commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

What

Fixes the Backend tests / Dependency scan (pip-audit) failure from CI run #528.

(transitive via ) was flagged by PYSEC-2026-2132 (fixed in 8.3.3), failing .

Fix

Added a constraint-dependencies pin click>=8.3.3 in backend/pyproject.toml, following the existing pattern already used for authlib, urllib3, idna, starlette, cryptography, joserfc, msgpack, pydantic-settings, etc. Regenerated backend/uv.lock — uv resolves the constraint to 8.4.2 (latest compatible, within uvicorn's click range; patch/minor bump from the vulnerable 8.3.1).

Verification (local, sandbox)

  • pip-audit --strictNo known vulnerabilities found
  • ruff check .All checks passed
  • pytest -q699 passed

Not addressed here — Frontend audit failure

The same CI run also failed Frontend audit + build / npm audit on react-router-dom GHSA-qwww-vcr4-c8h2 (high — RSC-mode CSRF bypass). This is not fixed in this PR because no safe autonomous fix exists:

  • The advisory affects react-router-dom 7.12.0–8.2.0; the current ^7.18.2 (latest published) is in the affected range and no patched forward version has been released yet.
  • npm's only suggested fix is npm audit fix --force, which is a breaking downgrade to 7.11.0 (7 minor versions back on a core routing dependency) — not safe to apply autonomously.
  • The overrides field in package.json is used for transitive dep pins (postcss, js-cookie); there is no patched react-router-dom version to pin forward to, and pinning to 7.11.0 is the same breaking downgrade.

Reachability analysis: the advisory is specific to RSC / data-router mode (actions executing before a 400 response). This frontend uses the classic BrowserRouter + <Routes>/<Route> API exclusively — grep finds zero use of createBrowserRouter, RouterProvider, <Form>, useActionData, or useLoaderData in src/. The vulnerable path is therefore not reachable in this codebase. The npm audit --audit-level=high gate fails regardless because npm audit can't reason about reachability.

Recommendation for the frontend: either (a) wait for react-router to ship a patched release and bump, or (b) if the unreachable advisory is acceptable, relax the frontend audit gate to allow this specific advisory (e.g. npm audit --audit-level=high --omit=dev with an --allow- advisories/config exception), or (c) accept the 7.11.0 downgrade after manual testing. This is a human decision — left out of this automated CI fix.

base: master because the Dependabot branch dependabot/uv/backend/ruff-0.16.1 was squash-merged (PR #152, commit dfafc92) ~1 min before this CI run reported, so the ruff bump is already on master.

dependabot Bot and others added 2 commits August 3, 2026 21:26
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.16.0 to 0.16.1.
- [Release notes](https://github.com/astral-sh/ruff/releases)
- [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md)
- [Commits](astral-sh/ruff@0.16.0...0.16.1)

---
updated-dependencies:
- dependency-name: ruff
  dependency-version: 0.16.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
CI run #528 (30854617998) failed the 'Backend tests / Dependency scan
(pip-audit)' step: click 8.3.1 flagged by PYSEC-2026-2132 (fix in 8.3.3).
click is transitive via uvicorn. Added a constraint-dependencies pin
following the existing pattern (authlib, urllib3, starlette, etc.) and
regenerated uv.lock -- uv resolves the constraint to 8.4.2 (latest
compatible, within uvicorn's click range).

Verified locally: pip-audit --strict => 'No known vulnerabilities found',
ruff check clean, 699 tests pass.

Does NOT address the concurrent 'Frontend audit + build' failure
(react-router-dom GHSA-qwww-vcr4-c8h2). That advisory is RSC/data-router
CSRF; the frontend uses classic BrowserRouter + <Routes> and never
touches createBrowserRouter/RouterProvider/<Form>/useActionData, so
the vulnerable path is unreachable. No patched forward version exists
(latest 7.18.2 is in the affected range); npm's only fix is a breaking
downgrade to 7.11.0. Left for a human decision.
Sbussiso referenced this pull request Aug 3, 2026
Bumps [eslint](https://github.com/eslint/eslint) from 9.39.4 to 10.8.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Commits](eslint/eslint@v9.39.4...v10.8.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-version: 10.8.0
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Sbussiso referenced this pull request Aug 3, 2026
Bumps [eslint](https://github.com/eslint/eslint) from 9.39.4 to 10.8.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Commits](eslint/eslint@v9.39.4...v10.8.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-version: 10.8.0
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@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