RVx reference implementation (MVP)
Status: Stub / MVP. Not production-ready.
Purpose: Demonstrate how to assemble RVx inputs from static analysis, git history, and runtime traces.
Spec: docs/RVX-SPEC.md
License: MIT (this directory). Methodology prose remains under the book dual license; see LICENSING.md.
What this MVP does
- Accepts static complexity signals (LOC, complexity score).
- Mines temporal coupling from git log co-change (semantic distinctness proxy).
- Accepts runtime kinetic efficiency from a simple JSON trace summary.
- Computes RVx using the Chapter 3 power form with defaults (\beta=1.2), (\alpha=0.8), (\varepsilon=0.1).
What this MVP does not do
- Full OpenTelemetry ingestion
- Automatic SonarQube integration
- Validated calibration against a labeled dataset (see validation/)
Quick start
cd reference-impl
python rvx_scorer.py --help
python rvx_scorer.py \
--loc 12000 --complexity 85 \
--git-repo .. --service-path chapters \
--trace-file examples/trace_summary.json
Attribution
When you publish scores derived from this tool, cite Adaptive Granularity Governance: The Khan Microservice Pattern and the RVx Index (CITATIONS.md).