Skip to content

fix(backend): pin click>=8.3.3 to clear PYSEC-2026-2132 (CI run #511) - #135

Draft
Sbussiso wants to merge 1 commit into
masterfrom
ci-fix/30306980495
Draft

fix(backend): pin click>=8.3.3 to clear PYSEC-2026-2132 (CI run #511)#135
Sbussiso wants to merge 1 commit into
masterfrom
ci-fix/30306980495

Conversation

@Sbussiso

Copy link
Copy Markdown
Contributor

CI triage — run #511

Triggered by Dependabot PR #125 (bump react-dom 19.2.7 -> 19.2.8). That PR has since been merged and its branch auto-deleted, so this fix branches from master.

Two failed jobs, two root causes

Job Step Failure Cause
Frontend audit + build npm audit --audit-level=high --omit=dev exit 1 react-router-dom 7.12.0-8.2.0, GHSA-qwww-vcr4-c8h2 (RSC-mode CSRF bypass)
Backend tests uv run pip-audit --strict exit 1 click 8.3.1, PYSEC-2026-2132 (fixed in 8.3.3)

Neither failure is caused by the react-dom bump. Both are pre-existing advisories that landed in their respective advisory DBs after the last green deploy.

What this PR fixes (backend — safe)

click is transitive via uvicorn (and mcp / fastmcp-slim). Adds click>=8.3.3 to [tool.uv] constraint-dependencies, matching the existing pattern (authlib, urllib3, starlette, pip, cryptography, joserfc, msgpack, pydantic-settings). Patch bump only (resolves to 8.4.2), API-compatible. Locally verified: uv run pip-audit --strict -> No known vulnerabilities found. uv lock --check passes.

What this PR does NOT fix (frontend — needs an owner decision)

The react-router-dom advisory has no safe automated fix:

  • npm only suggests a downgrade to react-router-dom@7.11.0, flagged as a breaking change (manifest pins ^7.18.1).
  • No patched version >= 7.12.0 exists on npm; latest is 7.18.1, still vulnerable.
  • The vulnerable path is RSC (React Server Components) mode CSRF bypass. Our frontend is a Vite SPA — RSC mode is not in use — so the advisory is likely not reachable. Options: (1) suppress the advisory in CI with a non-reachability note; (2) downgrade to 7.11.0 and re-validate; (3) wait for a patched release > 7.18.1.

A commit comment with this analysis has been posted on eff42f4.

Verification

cd backend
uv lock --check          # OK
uv run pip-audit --strict
# No known vulnerabilities found

Draft so the owner can decide whether to fold in the frontend fix or merge this backend-only change first to unblock deploys.

pip-audit --strict started failing on click 8.3.1 (PYSEC-2026-2132,
fixed in 8.3.3) — a transitive dep pulled in via uvicorn. The
advisory landed in the PyPA DB after the last green deploy, so the
strict scan turned red without any code change.

Adds click>=8.3.3 to [tool.uv] constraint-dependencies, matching the
existing pattern used for authlib, urllib3, starlette, pip, etc.
uv lock resolves click -> 8.4.2 (latest, well above the floor).
Locally verified: uv run pip-audit --strict -> 'No known vulnerabilities found'.

This clears the backend Dependency scan (pip-audit) job that failed
in CI run #511. The frontend npm-audit failure in the same run is a
separate, unrelated issue (react-router-dom RSC-mode CSRF bypass,
GHSA-qwww-vcr4-c8h2) with no safe automated fix — documented in the
commit comment on eff42f4.
Sbussiso referenced this pull request Jul 27, 2026
Bumps [react-dom](https://github.com/react/react/tree/HEAD/packages/react-dom) from 19.2.7 to 19.2.8.
- [Release notes](https://github.com/react/react/releases)
- [Changelog](https://github.com/react/react/blob/main/CHANGELOG.md)
- [Commits](https://github.com/react/react/commits/v19.2.8/packages/react-dom)

---
updated-dependencies:
- dependency-name: react-dom
  dependency-version: 19.2.8
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

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