Skip to content

Releases: umutgungorr/repopulse

v1.0.0 - Flagship Git Forensic Health & Knowledge Silo Audit Engine

Choose a tag to compare

@umutgungorr umutgungorr released this 14 Oct 19:45

🩺 RepoPulse v1.0.0 — Official Flagship Release

RepoPulse is a zero-dependency CLI and GitHub Marketplace Action that mines native Git logs in <20ms to detect single-author knowledge silos (bus factor), pinpoint architectural bug hotspots, uncover temporal co-change coupling, and compute an objective 0–100 codebase health score.

🌟 Key Highlights

  • Zero Dependencies: Pure Python standard library (no GitPython, no Pandas, no Rich, instant <20ms startup).
  • Cross-Platform Git Mining: Native git log --numstat --date=iso --pretty=format:... --no-merges extraction with UTF-8 character recovery, rename normalization, and binary file filtering.
  • Bus Factor & Knowledge Concentration: Computes authorship distribution per file and flags single-point-of-failure files ($\ge 75%$ single author).
  • Architectural Hotspots Engine: Correlates revision change frequency with net churn lines ($\log(1 + \text{churn}) \times \sqrt{\text{LOC}}$) to identify high-risk bug magnets.
  • Temporal Coupling Matrix: Measures co-change frequencies between file pairs to expose hidden architectural dependencies (with automatic bulk commit filtering).
  • Composite Health Scoring: Calculates an objective 0–100 codebase health score and assigns letter grades (A, B, C, D, F).
  • Terminal, Markdown & JSON Formatters: Colorized ANSI dashboards with visual score meters, PR-ready Markdown cards, and machine-readable JSON.
  • CLI Commands: repopulse audit, repopulse busfactor, repopulse hotspots, repopulse coupling.
  • GitHub Marketplace Composite Action: uses: umutgungorr/repopulse@v1 with --fail-under PR quality gate and automatic $GITHUB_STEP_SUMMARY publishing.

📦 Installation & Usage

Run instantly via uvx:

uvx repopulse audit
uvx repopulse busfactor
uvx repopulse hotspots
uvx repopulse coupling
uvx repopulse audit --fail-under 80

Install via pip:

pip install repopulse

Or drop into your CI pipeline:

- name: Git Forensic Health Audit
  uses: umutgungorr/repopulse@v1
  with:
    fail-under: 80
    summary: 'true'