Scoring Methodology
Score range
Section titled “Score range”Each check returns a numeric score in the range 0.0 to 1.0.
Harnix displays these as percentages:
1.0: 100%0.75: 75%0.0: 0%
Status mapping
Section titled “Status mapping”Per-check statuses are derived from percentage thresholds:
✓ pass: >= 75%△ partial: >= 25%, < 75%✗ fail: < 25%
Overall score
Section titled “Overall score”The current CLI computes overall score as the arithmetic mean of all evaluated checks:
overall = sum(check scores) / number of evaluated checksSkipped and inapplicable checks are excluded from the evaluated set.
Qualitative bands
Section titled “Qualitative bands”The overall percentage maps to one of these labels:
0to25: Poor26to50: Needs Improvement51to75: Good76to100: Excellent
Tier weighting
Section titled “Tier weighting”Each check has an assigned tier that influences its contribution to the overall score:
| Tier | Weight | Description |
|---|---|---|
| critical | 3 | Essential signals that must be present for reliable agent and human usage |
| important | 2 | Significant signals that improve readiness but are not blockers |
| nice-to-have | 1 | Supplementary signals that indicate mature repository practices |
The overall score is computed as a weighted average:
overall = sum(check_score × tier_weight) / sum(tier_weight)This means critical checks have three times the influence of nice-to-have checks on the final score.
Recommendation ranking
Section titled “Recommendation ranking”Top recommendations prioritize:
- Check tier (
critical, thenimportant, thennice-to-have) - Lower score within the same tier
This ordering ensures the most impactful improvements are surfaced first in the console output and reports.