Skip to contentNewRust Doctor now ships an MCP server and a Claude Code skill

Scoring

How Rust Doctor calculates health scores and when they are authoritative.

Rust Doctor scores five dimensions independently, then computes a weighted average from 0 to 100.

#Unique rules, not occurrences

A dimension loses points for each unique violated rule. Repeating the same rule across many locations increases the finding count but does not multiply its score penalty.

SeverityPenalty per unique rule
Error1.5
Warning0.75
Info0.25

Each dimension starts at 100 and is clamped between 0 and 100 after its rule penalties are applied.

#Dimension weights

DimensionWeightIncluded categories
Security2.0Security
Reliability1.5Correctness, error handling, async, framework
Maintainability1.0Architecture, style
Performance1.0Performance
Dependencies1.0Cargo, dependencies

#Completeness and authority

A numeric score is useful only with its analysis state. Rust Doctor marks the score non-authoritative when planned files were not analyzed or required checks did not complete. If no eligible Rust files exist, there is no meaningful score.

Use the score to prioritize investigation and track progress. Severity, evidence, suppressions, and project context remain part of the decision.