Repository navigation
chore: bump rs-tenderdash-abci to v1.8.1 for zip RUSTSEC-2026-0367/0368/0369 - #5583
Conversation
…68/0369 rs-tenderdash-abci v1.8.1 is v1.8.0 plus dashpay/rs-tenderdash-abci#221, which moves tenderdash-proto-compiler (a build dependency of tenderdash-proto) from zip 8.5 to zip 9.0. It still builds against the Tenderdash v1.8.0 protos, so the generated code does not change. Move the git tag in rs-drive-abci, rs-drive-proof-verifier and dapi-grpc. zip 9.0.5 was already locked (grovedb uses it), so the lockfile only switches the three tenderdash crates to the new tag and drops zip 8.6.0. The nightly cargo audit loses RUSTSEC-2026-0367, 0368 and 0369. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
No actionable comments were generated in the recent review.
|
| Layer / File(s) | Summary |
|---|---|
Update Tenderdash dependency tags packages/dapi-grpc/Cargo.toml, packages/rs-drive-abci/Cargo.toml, packages/rs-drive-proof-verifier/Cargo.toml |
The manifests now reference Tenderdash dependencies at tag v1.8.1. Existing feature settings remain unchanged. |
Priority:
Estimated code review effort: 1 (Trivial) | ~3 minutes
Change: Other
Suggested reviewers: claudius-maginificent
Merge Risk: 
Minimal · up to 365cd
-
No actionable merge-blocking risk is identified.
Pre-merge checks: 
5
-
Full details: Title check
-
Explanation
The title names the main change: bumping the rs-tenderdash-abci dependency from v1.8.0 to v1.8.1 across rs-drive-abci, rs-drive-proof-verifier, and dapi-grpc. The summary confirms the tag change in all three Cargo.toml files, and the objectives explain the zip RUSTSEC advisory motivation. The title is specific, short, and matches the changeset.
Full details: Docstring Coverage
-
Explanation
No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0 files. (3 skipped: 3 unsupported.)
-
Finishing Touches
-
🧪 Generate unit tests (beta)
-
- Commit to this branch
- Create a new PR
-
- Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts
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 @coderabbitai help to get the list of available commands.
|
Waiting for bot review — coderabbitai ✓ · thepastaclaw not yet. Wait for the missing reviews, or a writer can post |
|
✅ Final review complete — no blockers (commit 365cd98) · triage: low |
thepastaclaw
left a comment
There was a problem hiding this comment.
Final validation — Phase 1 + Phase 2
The dependency bump is correctly limited to the three direct Tenderdash consumers and the corresponding Cargo.lock entries. The upstream v1.8.1 change updates only the proto compiler's zip dependency while retaining the same proto sources, and no in-scope correctness or security issues were identified. The Rust workspace test check was still in progress in the supplied CI snapshot, with no failed code checks.
Review provenance
Source: reviewer 1: glm-5.3-flash (agent: phase1-reviewer, role: general); reviewer 2: glm-5.3-flash (agent: phase1-reviewer, role: rust-quality); reviewer 3: gpt-6.1-sol (agent: phase2-reviewer, role: general); reviewer 4: gpt-6.1-sol (agent: phase2-reviewer, role: architecture-layering); reviewer 5: gpt-6.1-sol (agent: phase2-reviewer, role: rust-quality); reviewer 6: gpt-6.1-sol (agent: phase2-reviewer, role: security-auditor); final verifier: gpt-6.1-sol (agent: sol-verifier, role: final-verifier)
- Triage:
lowbygpt-6.1-sol(effort low) — This is a small, contained dependency and lockfile update limited to build-time ZIP handling, with no runtime, consensus, or critical-surface behavior changes. - Phase 1 reviewers:
glm-5.3-flash— general (completed, effort high); agentphase1-reviewer,glm-5.3-flash— rust-quality (completed, effort high); agentphase1-reviewer - Phase 1 model:
glm-5.3-flash— zai quota: 5h 99% left, weekly 99% left; passed overgemini-3.8-flash-high(antigravity quota lookup failed) - Fresh verifier:
gpt-6.1-sol— final-verifier; agentsol-verifier - Phase 2 reviewers:
gpt-6.1-sol— general (completed, effort medium); agentphase2-reviewer,gpt-6.1-sol— architecture-layering (completed, effort medium); agentphase2-reviewer,gpt-6.1-sol— rust-quality (completed, effort medium); agentphase2-reviewer,gpt-6.1-sol— security-auditor (completed, effort medium); agentphase2-reviewer
Out-of-scope follow-up suggestions (1)
These are valid observations, but they are outside this PR's scope and should be handled in separate issues or author/maintainer-requested PRs rather than blocking this review.
- Update the stale Tenderdash dependency example in the architecture book — The illustrative Cargo.toml snippet in book/src/architecture/overview.md:159 still shows rs-tenderdash-abci v1.5.0, while the actual dependency is now v1.8.1. This predates the PR and is not part of the dependency bump's functional change, but it can mislead readers about the current pinned version.
- Follow-up: Open a small documentation PR to update the example to v1.8.1 or remove the version-specific tag.
|
Bots are done — your move: post |
Basic explanation
What this does: Moves Platform's Rust ABCI library,
rs-tenderdash-abci, from git tagv1.8.0tov1.8.1. The only code change in that release is that its proto build helper (tenderdash-proto-compiler) useszip9 instead ofzip8 to unpack the Tenderdash.protofiles while building. ThreeCargo.tomllines and the matchingCargo.lockentries change.Value: The nightly "Security: Rust Crates" audit loses the three
zip8.6.0 advisories (RUSTSEC-2026-0367 / 0368 / 0369), so 5.0.0 does not ship with them in its lockfile. Together with #5582 the audit goes from 7 vulnerabilities to 1.Risks: Very low.
zipruns only inside thetenderdash-protobuild script; Drive, DAPI and the SDKs never call it at runtime. v1.8.1 still downloads the same Tenderdashv1.8.0protos and the lockfile keeps the sameprost-build/tonic-prost-build, so the generated Rust code is unchanged. No consensus code or behaviour changes. The only plausible failure is a build error while unpacking the proto archive, whichcargo checkand CI would show.Issue being fixed or feature implemented
The nightly
cargo auditjob (.github/workflows/security-audit-rust.yml) is red onv5.0-dev. Three of its findings arezip8.6.0, reached only throughtenderdash-proto-compiler, a build dependency oftenderdash-proto:zipzipzipThe fix landed upstream first: dashpay/rs-tenderdash-abci#221 (zip 8.5 -> 9.0 in
proto-compiler), released as tagv1.8.1on 2026-10-23.What was done?
Tag
v1.8.0->v1.8.1in:packages/rs-drive-abci/Cargo.toml(tenderdash-abci)packages/rs-drive-proof-verifier/Cargo.toml(tenderdash-abci)packages/dapi-grpc/Cargo.toml(tenderdash-proto)These are the only places the repository depends on
rs-tenderdash-abci(thev1.5.0line inbook/src/architecture/overview.mdis a docs example, left alone).What v1.8.1 changes compared to v1.8.0, outside
.github/andCHANGELOG.md:proto/build.rsstill hasDEFAULT_VERSION = "v1.8.0", so the same Tenderdash protos are downloaded.Cargo.lockbefore and after:zip9.0.5 was already in the lockfile as a grovedb dependency, sotenderdash-proto-compilernow shares it and no crate is added. The only other lockfile line is grovedb's dependency entry going from"zip 9.0.5"to"zip", because only onezipversion is left.Note for anyone regenerating the lockfile:
cargo update -p tenderdash-abci -p tenderdash-proto -p tenderdash-proto-compiler(cargo 1.98.1) also re-points some range dependencies between versions that are already locked (windows-sys0.61.2 -> 0.59.0,itertools0.10.5 -> 0.13.0,socket20.6.4 -> 0.5.10,heck0.4.1 -> 0.5.0, across 15 dependency lists). Those are unrelated to this bump, so they are left out.cargo metadata --lockedandcargo check --lockedaccept the minimal lockfile.cargo audit(0.22.2, advisory DB 2026-10-26)Before (
v5.0-devat 7ea82c7):After (this PR):
After this PR and #5582 together (the two merge cleanly):
What remains
crypto-bigint0.5.5 (RUSTSEC-2026-0387). Fixed only in 0.7.6+, with no 0.5.x release. It comes fromelliptic-curve0.13.8 through the BLS stack (blstrs_plus-> dashpay/agora-blsful -> rust-dashcore), and no compatible release removes it (details in chore: bump rustls-webpki and webpki-roots for RUSTSEC-2026-0381/0382/0383 #5582). The fix has to start upstream inblstrs_plus.atomic-polyfill1.0.3,lru0.16.4,scc2.4.0,tokio1.52.3) are unchanged and do not fail the job.No
audit.tomlignore is added.How Has This Been Tested?
cargo auditbefore and after, as above.cargo metadata --lockedpasses with the new lockfile.cargo check --locked -p dapi-grpc -p drive-proof-verifier -p drive-abcipasses; thetenderdash-protobuild script downloads and unpacks the Tenderdash v1.8.0 protos withzip9.0.5 and generates thetendermint.*modules.cargo tree -i zip@9.0.5 -e normal,build --target allshowstenderdash-proto-compilerv1.8.1 as a build dependency oftenderdash-protov1.8.1.Breaking Changes
None.
Checklist:
structure.rs, regeneratedgrovedb-structure.json, and checked the structure viewer link posted on this pull requestFor repository code-owners and collaborators only
🤖 Generated with Claude Code
PR Hygiene ·
365cd98/self-reviewedWhen every merge requirement is met, the
PR Hygienecheck passes. Reviewer limits do not block merging; other required GitHub checks and protections still apply.Summary by CodeRabbit