Repository navigation
ci,workspace: enforce the cargo-deny advisories check and add dependency review - #15110
avi-starkware wants to merge 1 commit into
Conversation
Dependency Review✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.OpenSSF Scorecard
Scanned Files
|
5f41e54 to
a04417c
Compare
a04417c to
c74378d
Compare
c74378d to
5939a35
Compare
PR SummaryMedium Risk Overview The A new Reviewed by Cursor Bugbot for commit a72f91f. Bugbot is set up for automated code reviews on this repo. Configure here. |
|
There hasn't been any activity on this pull request recently, and in order to prioritize active work, it has been marked as stale. |
5939a35 to
356a865
Compare
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 356a865. Configure here.
| # Only fail on unmaintained crates that are direct dependencies of a workspace crate. An | ||
| # unmaintained transitive dependency cannot be acted on here: it is the intermediate crate that | ||
| # has to drop or replace it first. | ||
| unmaintained = "workspace" |
There was a problem hiding this comment.
Unmaintained scope skips direct dependencies
Medium Severity
unmaintained = "workspace" matches only workspace member crates, not their direct dependencies. External crates are the transitive scope, so unmaintained advisories on direct deps such as paste and bincode are dropped. The new blocking advisories gate therefore never fails on an unmaintained third-party crate.
Reviewed by Cursor Bugbot for commit 356a865. Configure here.
356a865 to
3c8d3df
Compare
3c8d3df to
e391102
Compare
e391102 to
7cd2a51
Compare
0ba2cc3 to
88d1595
Compare
88d1595 to
ea20bdf
Compare
217d6a9 to
585711b
Compare
…ncy review The advisories check now fails CI instead of only warning, and it no longer carries the optimize_ci skip condition, which was letting stacked pull requests past it. Each advisory that cannot be resolved today is listed in the deny.toml ignore list with a reason naming the dependency that holds the vulnerable version back. The licenses check still rejects the GPL-3.0 rhexdump and the bans check still reports starknet_proof_verifier's versionless git dependency, while sources passes; the three keep running non-blocking in a separate step until the first two are decided. A dependency review workflow comments the dependency changes of a pull request on the pull request itself in warn-only mode, so it never fails the check. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
585711b to
a72f91f
Compare
|
Artifacts upload workflows: |


Makes the advisories check an honest gate and delivers the "comment on the PR" behaviour:
main.ymlcargo-denyjob: no longer behindoptimize_ci(a lockfile scan needs no build, and the Graphite optimizer was skipping it on stacked PRs). Split into a blockingcargo deny check advisoriesstep and acontinue-on-errorlicenses bans sourcesstep:licensesstill rejects the GPL-3.0rhexdump,bansstill reportsstarknet_proof_verifier's versionless git dependency (both need a decision, not a config edit), andsourcespasses. Job name unchanged, so merge-gatekeeper still sees it.deny.toml:unmaintained = "workspace"(transitive unmaintained crates are not actionable here) and one{ id, reason }ignore entry per remaining advisory, each naming the dependency that holds the version back.dependency_review.yml:actions/dependency-review-actionv4.9.0 (SHA-pinned) withcomment-summary-in-pr: alwaysandwarn-only: true. Requires the repo's Dependency graph (already on — alerts exist).Cargo.lock:libz-sys1.1.22 → 1.1.31 for RUSTSEC-2026-0418 (build script leaks environment variables), published after the check above was first green; nothing else moves.Verified:
cargo deny check advisories→advisories ok; full check →advisories ok, bans FAILED, licenses FAILED, sources ok(bans= the single deliberatestarknet_proof_verifierwildcard finding from #15115;licenses=rhexdumpGPL + 7unlicensedstwo-circuits crates, see #15111); actionlint clean on the new workflow. Re-run onmain; the ignore list now also covers RUSTSEC-2026-0367/0368/0369 (zip 0.6, held by cairo-vm 3.2.0) RUSTSEC-2026-0387 (crypto-bigint 0.5, held by elliptic-curve 0.13), and RUSTSEC-2026-0391/0398/0403 (zstd 0.13 / zstd-safe 7, a direct dependency whose fix needs the semver-breaking zstd 0.14.3).🤖 Generated with Claude Code