Releases: Kirvolque/reviewability
Releases · Kirvolque/reviewability
Reviewability 0.1.0 — First Stable Release
v0.1.0
First stable release.
A CI/CD quality gate that scores pull requests by how hard they are to review.
Catches diffs that are too large, too tangled, or too scattered to review safely — before they merge.
Highlights
- Scoring formula calibrated against ~2,000 PRs from 15 open-source repositories:
score = max(0, 1 − effective_size_ratio × (1 + scatter_factor)) - Movement detection — moved/renamed code is identified and excluded from the size penalty
- Three-level metrics — hunk, file, and overall diff analysis with configurable thresholds
- Quality gate with pass/fail exit codes for CI integration
- Single-file configuration via
reviewability.toml— all thresholds and limits in one place
Features
- 6 hunk-level metrics:
lines_changed,added_lines,removed_lines,context_lines,change_balance,is_likely_moved - 6 file-level metrics:
lines_changed,added_lines,removed_lines,hunk_count,max_hunk_lines,is_likely_moved - 10 overall metrics:
lines_changed,added_lines,removed_lines,files_changed,moved_lines,change_entropy,largest_file_ratio,scatter_factor,problematic_hunk_count,problematic_file_count - Configurable rules:
min_overall_score,max_problematic_hunks,max_problematic_files,max_file_hunk_count,max_files_changed,max_added_lines - Actionable recommendations with remediation guidance
--detailedflag for per-file and per-hunk breakdowns--from-stdinfor piping diffs directly-c/--configfor custom config paths- JSON output for easy integration with other tools
- Claude Code
/reviewabilityskill included
Install
pip install reviewabilityRequires Python 3.12+.
v0.1.0a1 — Initial alpha release
First public alpha of reviewability — a CI/CD quality gate that scores pull requests
by how hard they are to review.
What it does
Analyzes the structure of a diff (not the code itself) and computes a reviewability
score from 0.0 (hardest) to 1.0 (easiest). Fails the build when a diff is too large,
too tangled, or too scattered to review safely.
Key signals:
- Size — how much changed relative to the configured limit
- Churn — how interleaved adds and removes are within hunks
- Scatter — how evenly changes are spread across files
- Movements — relocated code is detected and excluded from scoring
Install
pip install reviewability==0.1.0a1
Usage
git diff HEAD~1 | reviewability --from-stdin
Output is JSON. Exit code 0 = pass, 1 = fail.