fix(backend): pin click>=8.3.3 for PYSEC-2026-2132 (CI run #528) - #153
Draft
Sbussiso wants to merge 2 commits into
Draft
fix(backend): pin click>=8.3.3 for PYSEC-2026-2132 (CI run #528)#153Sbussiso wants to merge 2 commits into
Sbussiso wants to merge 2 commits into
Conversation
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>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
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-dependenciespinclick>=8.3.3inbackend/pyproject.toml, following the existing pattern already used forauthlib,urllib3,idna,starlette,cryptography,joserfc,msgpack,pydantic-settings, etc. Regeneratedbackend/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 --strict→ No known vulnerabilities found ✅ruff check .→ All checks passed ✅pytest -q→ 699 passed ✅Not addressed here — Frontend audit failure
The same CI run also failed Frontend audit + build / npm audit on
react-router-domGHSA-qwww-vcr4-c8h2 (high — RSC-mode CSRF bypass). This is not fixed in this PR because no safe autonomous fix exists: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 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.overridesfield inpackage.jsonis 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 —grepfinds zero use ofcreateBrowserRouter,RouterProvider,<Form>,useActionData, oruseLoaderDatainsrc/. The vulnerable path is therefore not reachable in this codebase. Thenpm audit --audit-level=highgate 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=devwith 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: masterbecause the Dependabot branchdependabot/uv/backend/ruff-0.16.1was squash-merged (PR #152, commit dfafc92) ~1 min before this CI run reported, so the ruff bump is already on master.