v0.57.0
Every change carries its evidence

The open-source release, 0.57.0, reads every merged change as a Change Record with an evidence checklist, and checks changes against a local policy. On repowise.dev the PR bot puts that checklist in its pull request comment, Code Health reads clearly on repositories of any size, and Spring, Astro and MassTransit join the graph.
Keep Pro at $15 a month
On repowise.dev.
Paid plans go up later in November, and Pro moves from $15 to $20 a month. Subscribe to Pro before the change and you keep $15 for as long as your subscription stays active: private repositories, push-triggered sync, full git history and monthly AI credits, at today's price. See pricing.
Evidence on every pull request
On repowise.dev.
The PR bot's comment gains an Evidence section, a collapsed table with one row per item: components touched, declared owners from CODEOWNERS and the component catalog, reaching tests, health delta and AI provenance. Each row says ok, look or unknown, names the basis it rests on, and reads as one plain sentence. An item the bot cannot gather on a pull request reads "not known" with its reason. Declared owners are quoted, so a row never pings anyone. The checklist is on by default and follows the comment's verbosity setting, so a compact comment leaves it out.
Code Health you can read at any size
The map is drawn on canvas with zoom, pan and a Fit control. Files are circle-packed by folder inside each module, dots sit in the five score bands, and "Draw more" reaches 8,000 files, with vendored and generated files behind a toggle. Click a file and a drawer opens on its score, one plain sentence and the top three issues with their vital signs, next to one primary action. The trend chart has a hover and keyboard readout and a list of the files that moved most.
Every language is served by default. A language whose layer is still being measured carries a Preview badge, with its latest hand-judged measurement in the tooltip, and health findings ship normally on Java, C# and C, each measured at 92.5% or more correct or debatable on a blind sample. Git-history markers such as ownership and churn on production files move out of the default defect lists and are counted as history. They still feed scores and the work queue. A repository headline prints a band such as "Excellent" once at least half of its code files were analysed, and says "analysed N of M code files" whenever some were left out.
Spring, Astro and MassTransit support
- Spring routes link to their handler methods across
@GetMapping,@RequestMappingand the rest, in Java and Kotlin. On three Spring sample applications, route edges go from 0 to 33, all hand-checked correct. - Spring Data and MyBatis calls inside Java loops are flagged as database I/O. On one Spring Boot application the performance list grows from 5 to 16 rows, 10 of the 11 new rows judged real costs.
- Astro is indexed at the Full tier: frontmatter and every
<script>body parse as TypeScript, components become calls, and pages undersrc/pagesare entry points. - MassTransit publishers and consumers link C# and VB.NET services by message type.
- Dart call receivers are typed from fields, parameters and locals (979 to 1,086 call edges on a public Flutter sample), Swift gets a complexity map, and Pascal performance loops say whether they grow with the data.
- Refactoring plans carry test commands for Go, Rust, JVM, Ruby and C#.
repowise parses 27 languages to a full AST, 14 of them at the Full tier, with 41 on the language ladder.
Also on repowise.dev
- The dead code tab leads with what is safe to delete, with the flagged count as a second sentence.
- Commits read as agent, human-attested or unknown, and a commit with no marker reads unknown. An AI share is the agent share of commits with a known source, shown with its coverage, and is withheld below 30% coverage.
get_answergrades its confidence on whether the top hit covers the question, and retrieval detail sits behindinclude=["diagnostics"].
Change Records, rebuilt from git
Open-source release.
Every first-parent commit of HEAD becomes a Change Record: a PR, MR, Gerrit
change or lone commit, with its category and provenance. Each record carries an
evidence checklist (components, declared owners, suggested reviewers, reaching
tests, contracts and consumers in other repositories, decisions crossed, health
delta, provenance with coverage and diff size rank) and its outcomes, read from
explicit links only: a later revert, a fix that names it as the cause, and how
many of its files received fixes within 30 days. The local Commits page groups
commits By commit, By change or Events, and repowise changes show prints a
record, with an in-toto export.
Change policy and evidence packs
Open-source release.
repowise check runs the rules in .repowise/policies.yaml against any change
and writes a table, JSON, SARIF 2.1.0 or JUnit XML, exiting 1 when a fail rule
fires. A condition whose evidence is unavailable is reported as not evaluated.
repowise report writes an assessment per repository or workspace, a change
evidence pack for a period (90 days by default) and a component inventory, in
JSON with Markdown, HTML and CSV renderers. repowise suspects takes an error,
a stack trace or an issue and ranks the recent changes to read first, with the
evidence for each.
Charts in chat
On repowise.dev and in the local dashboard.
Ask chat for a chart and it draws one in a single call from the repository's own data: files, findings, health trend, coverage, dead code, dependencies and layers, plus changes in the local dashboard. Each chart names its basis and the commit it was read at, opens as a table with one click, and can be redrawn as another kind. Every figure in an answer is checked against that turn's tool results, and one the check cannot find is underlined.
Models from Settings
Open-source release.
Settings take a model from the provider's live list or any typed id, and a base URL for LM Studio or another OpenAI-compatible server on your machine needs no key. After a minor upgrade the dashboard opens What's new once.
Also in the open-source release
- Components follow the Backstage model, compare declared owners with the last 90 days of activity, and export package usage as CycloneDX 1.6.
- Opt-in edit capture for Claude Code, Codex and Cursor records the lines an
agent wrote as content hashes, and
repowise attribution backfillbinds past commits from local transcripts. - REST, MCP HTTP and webhooks authenticate to a principal with repository and tool scope, and installed plugins extend named seams.
- In workspace mode, MCP sends a path or symbol to the repository that owns it,
and
repo="all"answers with partial results. - Gitea and Forgejo push webhooks sync.
- Git history reads the newest 5,000 commits by default.
- A
get_change_riskfinding drill-down returns in under a second, and warmrepowise suspectscalls drop from about 6 s to under 1 s.
Upgrading
pip install --upgrade repowise
The first repowise update after upgrading re-reads git history, re-parses and
re-scores once, with no model calls, and builds the Change Records. An existing
index keeps its commit_limit, and commit_limit: 5000 in config.yaml reads
the wider window. On repowise.dev, each repository re-computes its scores once
on its next index, and the new Code Health views fill in from there.
Thank you
This release includes work from 39 contributors outside the core team.
- @ozenyunus35#3463, #3465, #3673, #3674, #3675, #3677, #3778, #3782, #3783, #3785, #3811
- @Aman-goel-04#3073, #3074, #3143, #3407, #3483, #3519, #3537, #3706, #3721, #3831
- @rishu685#3518, #3563, #3567, #3577, #3586, #3627, #3702
- @ybai08#3450, #3472, #3474, #3522, #3589
- @cestercian#3538, #3539, #3578
- @Imad2702#3662, #3713
- @PragalvaXFREZ#3560, #3561
- @aazminu#3841
- @AlaminSaifullah#3479
- @am1rqr#3521
- @arnavsx3#3631
- @ASVLCII#3587
- @coffeehorn#3797
- @ColumbusLabs#3622
- @dev-ploy#3695
- @Enard52#3794
- @Fire162#3339
- @h55n#3705
- @harisawan-bit#3576
- @hirawat-ll#3572
- @KeuqS#3748
- @kocaemre#3608
- @Kumar-Abhimanyu#3420
- @Laex#3517
- @MadalinNov#3070
- @MohitBareja16#3652
- @nightious#3164
- @ningkexin96#3475
- @PHJ2000#3848
- @RinZ27#3768
- @SatvikMishra08#3155
- @Soham05Hanchate#3575
- @Sriram-PR#3866
- @Susheonnn#3626
- @ump45nose#3417
- @X77seven#3696
- @ynaamane#3764
- @Yushu-Li#3842
- @z2Ace0107#3570
Run this release on your repo.
Index a repository free and see what this release finds in it. Rolling it out to a team? We will walk you through it.