fix(backend): clear pip-audit --strict (click/cryptography/pip CVEs) - #210
Draft
Sbussiso wants to merge 1 commit into
Draft
fix(backend): clear pip-audit --strict (click/cryptography/pip CVEs)#210Sbussiso wants to merge 1 commit into
Sbussiso wants to merge 1 commit into
Conversation
Run #32779432581 (Test & Deploy) failed on the "Dependency scan
(pip-audit)" step with 5 known vulnerabilities in 3 packages:
click 8.3.1 PYSEC-2026-2132 -> fix 8.3.3
cryptography 48.0.1 PYSEC-2026-3552 -> fix 50.0.0
cryptography 48.0.1 PYSEC-2026-3553 -> fix 49.0.0
cryptography 48.0.1 PYSEC-2026-3554 -> fix 49.0.0
pip 26.1.2 PYSEC-2026-3721 -> fix 26.2
All three are transitive; none are imported directly by app code.
click (via uvicorn) and pip (pulled in only by pip-audit itself;
not shipped in the app image) clear with simple constraint bumps.
cryptography is the non-trivial one: clerk-backend-api 6.x caps
cryptography <49.0.0, so PYSEC-2026-3552/3553/3554 cannot be cleared
without bumping clerk-backend-api 6 -> 7 (which widens the cap to
<51.0.0). The five clerk methods this app calls --
authenticate_request, organizations.{update,list,
get_billing_subscription}, organization_memberships.list -- all
exist unchanged on 7.0.0. Validated locally by reproducing the exact
CI sequence (uv sync --extra dev -> ruff check -> uv run pip-audit
--strict -> pytest):
- ruff: all checks passed
- pip-audit --strict: No known vulnerabilities found
- pytest: 699 passed
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.
CI failure: run #32779432581 — Test & Deploy ❌
The Dependency scan (pip-audit) step of the
Test & Deployworkflow failed with5 known vulnerabilities in 3 packages:Triggered on branch
dependabot/npm_and_yarn/frontend/vite-8.2.2(PR #198, since merged tomaster).Root cause
All three packages are transitive; none are imported directly by app code.
uvicorn(the only package in the tree that depends on it).pip-audititself (the dev-time scanner) to resolve deps;--strictthen audits pip. It is not shipped in the app image.clerk-backend-api/authlib/pyjwt. This is the non-trivial one:clerk-backend-api6.x pinscryptography <49.0.0, so PYSEC-2026-3552/3553/3554 cannot be cleared without bumpingclerk-backend-api6 → 7 (which widens the cap to<51.0.0, allowing cryptography 50.0.0).Fix
clerk-backend-api>=5.0.6→>=7.0.0(direct dep bump — the only path to cryptography 50.0.0).cryptography>=50.0.0,click>=8.3.3, bumppip>=26.1.2→>=26.2.uv lockregenerated →clerk-backend-api 7.0.0,cryptography 50.0.0,click 8.4.2,pip 26.2.1.Safety of the clerk 6 → 7 major bump
The five
clerkmethods this app actually calls all exist unchanged on 7.0.0:clerk.authenticate_requestclerk.organizations.updateclerk.organizations.listclerk.organizations.get_billing_subscriptionclerk.organization_memberships.listThe full backend test suite covers these call sites.
Local validation (reproduced the exact CI sequence)
All three CI-relevant steps pass; the failing
pip-audit --strictstep is now green.Notes
cryptographyadvisories are surfaced by pip-audit on transitive presence; the vulnerable code paths may not be reachable by this app, but--strictfails the build on their mere presence in the resolved tree.— Hermes coder CI triage (run 32779432581)