chore(security): drop unused vendored solana-program-test lockfile#33
Conversation
…ar advisories The osv-scanner job flagged 10 advisories in vendor/solana-program-test/ Cargo.lock that the main workspace already resolved (#31) but the vendored dev-only test harness still pins: - openssl 0.10.74 — 8 GHSAs (main workspace on 0.10.80) - rustls-webpki 0.103.6 — RUSTSEC-2026-0104 (new alias; main on 0.103.13+) - tar 0.4.44 — GHSA-3pv8-6f4r-ffg2 (main on 0.4.46) These are reported under GHSA/newer-RUSTSEC ids not covered by the existing RUSTSEC entries, so they are listed explicitly with rationale. The vendor is a dev-dependency only; on-chain BPF bytecode ships none of it. Re-vendoring solana-program-test from a newer Solana release is the real fix. Verified locally: `osv-scanner scan source --lockfile=vendor/ solana-program-test/Cargo.lock --config=...` → "No issues found".
📝 WalkthroughWalkthroughThis PR updates the OSV-Scanner configuration for the vendored ChangesOSV-Scanner Configuration
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~5 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Code Review
This pull request adds several vulnerability exclusions to the osv-scanner.toml configuration for the vendored solana-program-test dependency. The reviewer suggests a more robust alternative: deleting the unused Cargo.lock file inside the vendored directory. Since Cargo ignores internal lockfiles of path dependencies, removing it will eliminate the false-positive vulnerability reports entirely, allowing you to delete the osv-scanner.toml file and avoid maintaining this ignore list.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
…s CVEs Supersedes the ignore-list approach in the previous commit, per gemini-code-assist review on #33. solana-program-test is a [patch.crates-io] *path* dependency, so Cargo resolves it through the root Cargo.lock and never reads vendor/solana-program-test/Cargo.lock. That nested lockfile is unused by the build, yet osv-scanner treated its directory as a separate scan project and reported false positives (openssl 0.10.74, rustls-webpki 0.103.6, tar 0.4.44) already patched in the root lockfile (openssl 0.10.80, rustls-webpki 0.103.13, tar 0.4.46 via #31). Delete the unused vendor/solana-program-test/Cargo.lock and its companion osv-scanner.toml, matching sibling vendored crates vendor/solana-invoke and vendor/solana-keypair, which ship no lockfile. Removes the false-positive source entirely instead of maintaining an ever-growing ignore list. Verified: osv-scanner scan source --recursive --config=osv-scanner.toml . -> "No issues found".
Follow-up to #32. With the
securityworkflow running again, itsosv-scannerjob surfaced 10 advisories invendor/solana-program-test/Cargo.lock(openssl 0.10.74, rustls-webpki 0.103.6, tar 0.4.44).Root cause: the nested lockfile is unused
solana-program-testis a[patch.crates-io]path dependency (Cargo.toml:54). Cargo resolves it through the rootCargo.lockand never readsvendor/solana-program-test/Cargo.lock. The root lockfile already carries the patched versions (openssl 0.10.80, rustls-webpki 0.103.13, tar 0.4.46 — via #31), so every advisory osv-scanner reported from the nested file is a false positive.Fix (per @gemini-code-assist review)
Initially I added the advisory IDs to the vendor ignore-list. Gemini correctly pointed out the cleaner fix: delete the unused nested lockfile and its
osv-scanner.tomlentirely. This:vendor/solana-invokeandvendor/solana-keypair, which ship no lockfile,Verification
cargo metadataresolves unchanged. RootCargo.lockconfirmed pinning openssl 0.10.80 / rustls-webpki 0.103.13 / tar 0.4.46.