ci: add cargo-deny config, fix workspace license - #3
Conversation
- Bootstrap deny.toml with license allowlist + advisory ignores - Add license = MIT to workspace.package (was missing) - Add license.workspace = true to all 27 crate manifests - Ignore transitive unmaintained (bincode, yaml-rust, paste, rustls-pemfile) - Ignore transitive vulns (hickory-proto, rustls-webpki) via aws-sdk/reqwest Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
Warning You have reached your daily quota limit. Please wait up to 24 hours and I will start processing your requests again! |
|
CodeAnt AI is reviewing your PR. Thanks for using CodeAnt! 🎉We're free for open-source projects. if you're enjoying it, help us grow by sharing. Share on X · |
|
Warning Rate limit exceeded
To keep reviews running without waiting, you can enable usage-based add-on for your organization. This allows additional reviews beyond the hourly cap. Account admins can enable it under billing. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Pro Run ID: 📒 Files selected for processing (28)
✨ Finishing Touches🧪 Generate unit tests (beta)
✨ Simplify code
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. Review rate limit: 0/1 reviews remaining, refill in 32 minutes and 51 seconds.Comment |
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 3 potential issues.
Bugbot Autofix is ON, but it could not run because the branch was deleted or merged before autofix could start.
Reviewed by Cursor Bugbot for commit ca2a7f8. Configure here.
| - uses: taiki-e/upload-rust-binary-action@v1 | ||
| with: | ||
| token: ${{ secrets.GITHUB_TOKEN }} | ||
| tool: cargo-deny |
There was a problem hiding this comment.
Wrong GitHub Action used to install cargo-deny
High Severity
The workflow uses taiki-e/upload-rust-binary-action@v1, which is for building and uploading Rust binaries to GitHub Releases — not for installing tools. It doesn't accept a tool input. The correct action for installing cargo-deny is taiki-e/install-action@v2. As written, this step will either error out or silently not install cargo-deny, causing the subsequent cargo deny check step to fail with "command not found."
Reviewed by Cursor Bugbot for commit ca2a7f8. Configure here.
|
|
||
|
|
||
| [workspace.package] | ||
| license = "MIT" |
There was a problem hiding this comment.
Workspace license contradicts actual LICENSE file
High Severity
The workspace declares license = "MIT", but the repository's LICENSE file is Apache-2.0. This mismatch propagates to all 25 crates via license.workspace = true, causing every published crate to advertise an incorrect license. This creates a legal inconsistency between what the metadata declares and the actual license terms in the repository.
Reviewed by Cursor Bugbot for commit ca2a7f8. Configure here.
| "Unlicense", | ||
| "CDLA-Permissive-2.0", | ||
| "GPL-3.0-only", | ||
| "GPL-3.0-or-later", |
There was a problem hiding this comment.
GPL-3.0 allowed in permissively-licensed project's deny config
Medium Severity
The license allowlist includes GPL-3.0-only and GPL-3.0-or-later, which are copyleft licenses incompatible with the project's own permissive license (MIT per Cargo.toml, Apache-2.0 per LICENSE). This defeats the purpose of cargo-deny license checking — a GPL dependency could be added without being flagged, creating a legal incompatibility where the project can't be distributed under its declared permissive license.
Reviewed by Cursor Bugbot for commit ca2a7f8. Configure here.
|
CodeAnt AI finished reviewing your PR. |
- Bootstrap deny.toml with license allowlist + advisory ignores - Add license = MIT to workspace.package (was missing) - Add license.workspace = true to all 27 crate manifests - Ignore transitive unmaintained (bincode, yaml-rust, paste, rustls-pemfile) - Ignore transitive vulns (hickory-proto, rustls-webpki) via aws-sdk/reqwest Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>


User description
Summary
Test plan
🤖 Generated with Claude Code
Note
Low Risk
Low risk: changes are limited to CI policy enforcement and Cargo manifest metadata, with no runtime code or dependency behavior changes.
Overview
Adds
cargo-denyenforcement to CI via a new GitHub Actions workflow that runscargo deny checkon pushes/PRs tomain.Introduces a repo-wide
deny.toml(license allowlist + RustSec advisory ignore list) and standardizes licensing by settinglicense = "MIT"at the workspace level and inheriting it across all crate manifests vialicense.workspace = true.Reviewed by Cursor Bugbot for commit ca2a7f8. Bugbot is set up for automated code reviews on this repo. Configure here.
CodeAnt-AI Description
Add Cargo Deny checks and standardize workspace licensing
What Changed
main, so license and advisory issues are caught before mergeImpact
✅ Earlier detection of license problems✅ Fewer merge-time security policy failures✅ Consistent license metadata across crates🔄 Retrigger CodeAnt AI Review
Details
💡 Usage Guide
Checking Your Pull Request
Every time you make a pull request, our system automatically looks through it. We check for security issues, mistakes in how you're setting up your infrastructure, and common code problems. We do this to make sure your changes are solid and won't cause any trouble later.
Talking to CodeAnt AI
Got a question or need a hand with something in your pull request? You can easily get in touch with CodeAnt AI right here. Just type the following in a comment on your pull request, and replace "Your question here" with whatever you want to ask:
This lets you have a chat with CodeAnt AI about your pull request, making it easier to understand and improve your code.
Example
Preserve Org Learnings with CodeAnt
You can record team preferences so CodeAnt AI applies them in future reviews. Reply directly to the specific CodeAnt AI suggestion (in the same thread) and replace "Your feedback here" with your input:
This helps CodeAnt AI learn and adapt to your team's coding style and standards.
Example
Retrigger review
Ask CodeAnt AI to review the PR again, by typing:
Check Your Repository Health
To analyze the health of your code repository, visit our dashboard at https://app.codeant.ai. This tool helps you identify potential issues and areas for improvement in your codebase, ensuring your repository maintains high standards of code health.