Understanding results

codqual speaks a few different vocabularies — a severity, a verdict, a status — and they are easy to confuse. This page explains what each one means and how the scores are built.

Severity, verdict, and status

Three separate scales do three separate jobs. Severity rates a single finding; a PR verdict gates a whole pull request; an issue status tracks where a problem stands over time. They never substitute for one another.

Vocabulary Values What it measures
Severity high · medium · low How serious a single finding is.
PR verdict pass · warn · fail The gate for a whole pull request.
Issue status open · wont_fix · false_positive · resolved · merged The lifecycle of a tracked issue over time.

A PR verdict is derived from severity: any high-severity finding makes the verdict fail; any medium or low finding makes it warn; a clean diff passes. A pull request gets a verdict, never a 0–100 score — a score is a whole-repository signal.

Issues, findings, and observations

A finding is what a single scan produced. An observation is one scan's sighting of a problem. An issue is the durable record codqual tracks across scans — it gathers the observations of the same problem over time, so you can watch it appear, persist, and get resolved.

Setting an issue's status

You can set three statuses by hand: open, won't fix, and false positive. Use won't fix when a problem is real but accepted or not worth fixing. Use false positive when the finding is simply wrong — this also feeds team-level suppression, so the same finding stops reappearing.

Resolved is automatic. codqual sets it when a scan no longer observes the issue; you cannot set it by hand.

Merged means an issue was absorbed into another and left behind as a tombstone. To merge, select two or more issues, choose Merge, and pick the surviving issue. There is a short undo window right after.

Health score

A full scan scores each repository from 0 to 100. The bands:

Score Band
0–39Critical
40–69Needs work
70–89Good
90–100Excellent

Maturity

Maturity is a separate, longer-term view: a 25-check rubric across five dimensions — Maintainability, Correctness & Confidence, Architecture & Scalability, Reliability & Operability, and Security & Compliance.

Each check is pass, partial, fail, or not evaluated. Not evaluated strictly means the evaluator did not run this scan — never that your repository lacks the practice.

A dimension's score is its earned points (a pass is 1, a partial is 0.5) divided by its evaluated checks, times 100. The overall maturity score is the average of the dimensions that were scored.

Overall Tier
<30Getting started
30–49Building habits
50–69Consistent
70–89Advanced
90–100Expert

PR reviews never change the maturity score — only full scans do.