Scoring
score = 100 - Σ severity_weight(flag) + bonuses
grade =
score >= 85 ? "A"
: score >= 70 ? "B"
: score >= 55 ? "C"
: score >= 40 ? "D"
: "F"
A grade is not a guarantee. The scanner is a fast first-pass filter that surfaces the obvious footguns. A contract can score an A and still have novel logic bugs that require manual review. The verdict text from Claude is intentionally direct about this when warranted.