Cargo-Crap: Finding Untested Complexity in AI-Generated Rust Code
The article discusses the creation of cargo-crap, a tool designed to assess the safety of changing AI-generated Rust code. It introduces the Change Risk Anti-Patterns (CRAP) metric, which combines cyclomatic complexity and test coverage to identify risky code. The tool aims to provide measurable checks around the complexity introduced by AI agents in software development.
- ▪Cargo-crap is an open-source tool that identifies complex and poorly tested functions in Rust code.
- ▪The CRAP metric combines cyclomatic complexity and test coverage to highlight code that is risky to change.
- ▪The tool serves as a guardrail for AI-assisted Rust development, making untested complexity visible.
Opening excerpt (first ~120 words) tap to expand
May 13, 2026 12 min read cargo-crap: Finding Untested Complexity in AI-Generated Rust Code v0.2.0 cargo-crap is open source. Try it, star it, or read the docs. GitHub crates.io docs.rs Rust makes many bugs impossible. Memory safety. Thread safety. Ownership. Lifetimes. Exhaustive matching. Strong types. But Rust cannot answer one essential maintenance question: Is this code safe to change? A function can compile perfectly and still be risky to touch. It can have too many branches, too many special cases, too many hidden paths, and not enough tests to give you confidence. This is why I built cargo-crap is a Rust tool that finds functions that are both complex and poorly tested by calculating the Change Risk Anti-Patterns (CRAP) metric.
…
Excerpt limited to ~120 words for fair-use compliance. The full article is at Minikin.