Accountability benchmark

Check the math
behind three numbers.

The three published accountability figures come from RepoOps's own code run over a committed synthetic fixture: the same fixture in, the same numbers out, recorded in a checked-in results file. The fixture is not a customer, and none of these is a real-world rate.

docs/benchmarks/accountability-results.json / fixture accountability-v1Synthetic fixture
Defects attributed75%

9 of 12 seeded defects traced to the session that caused them, at the proof-counting confidence bands.

Recurrences prevented100%

12 of 12 known bugs blocked at the pre-merge gate, out of 20 review findings. The label is the benchmark's metric name; on a fixture built so the gate sees every seeded recurrence, it is a property of the fixture, not a rate to expect on a live repo.

Measured spend saved$24.55

The tracked session cost the blocked recurrences would have re-run: 6 priced, 2 unpriced (no cost signal), across 12 prevention events. Read from the committed results file, never estimated.

Synthetic, reproducible fixture: 8 sessions, 12 seeded defects, 8 lessons and 20 review findings, as the results file describes it. The numbers come from running RepoOps's shipped accountability code paths over that fixture, not from a re-implementation and not from a customer. Reproduce with node scripts/bench-accountability.mjs.

01

What the benchmark runs

It loads the documented fixture, a synthetic repo of sessions, commits, defects and fixes, and runs the real accountability code paths over it: the git-blame attribution in lib/causal-correlator.mjs, the pre-merge recurrence gate in lib/review/prevention-recorder.mjs, and the savings join in lib/continuity/cost-attribution.mjs. It runs inside a throwaway temporary brain, so it never touches real data.

02

What each number counts

Attribution accuracy is how many seeded defects traced to the seeded session at the exact or strong band. Recurrence prevented is how many known bugs the pre-merge gate blocked, out of the review findings it saw. Measured spend saved is the tracked cost of the session that first produced each blocked defect, joined one event at a time; an event with no tracked cost counts as unpriced, never averaged.

03

Your own numbers

Install the app and repoops bench runs the same metrics over your own git history, telemetry and brain, from a terminal. Measuring is local: no account, no network, nothing sent. The contribute flag signs you in and sends the headline numbers to your team dashboard. A repo with no RepoOps telemetry gets git attribution today and the other two figures once telemetry is connected.

See how it works
What the output looks like

One command, one readable table.

Inside the repo, npm run bench:accountability prints this table and writes the committed results file. The figures above are held to that file by a parity check in CI, so the page and the file cannot disagree without failing the build.

bashSample transcript
$ npm run bench:accountability

[bench] RepoOps accountability benchmark (fixture: accountability-v1)
[bench] ----------------------------------------------------------
[bench] Attribution accuracy : 9/12 = 75%  (bands: exact 3, strong 6, weak 1, none 2)
[bench] Recurrence prevented : 12/12 = 100%  (of 20 review findings)
[bench] Measured $ saved     : $24.55  (priced 6, unpriced 2, of 12 prevention events)
[bench] ----------------------------------------------------------
[bench] wrote docs/benchmarks/accountability-results.json
Start with one question

What happened in this change?

Follow an example from the instruction to the verified fix, then install RepoOps and open your own.

Method, and where each figure comes from

Method

Attribution runs lib/causal-correlator.mjs (correlateDefect) and lib/causal-link.mjs (bandFromAnalysis) over the fixture sessions and a constructed git blame. A defect counts as attributed when it traces to the seeded session at the exact or strong band, the proof-counting bands in metrics.md.

Prevention runs lib/review/prevention-recorder.mjs (recordPreventions) and lib/triage-ranker.mjs (score) over the diff-review findings against the promoted lessons. A blocked recurrence is a prevention event recorded by the real path.

Savings run the lib/continuity/cost-attribution.mjs join: prevention event, to the lesson's source causal link, to that link's session, to the session's tracked cost. An event whose source session has no tracked cost is unpriced.

The harness is scripts/bench-accountability.mjs and the results file is docs/benchmarks/accountability-results.json. The desktop app ships the same metrics as repoops bench; every command it ships with is listed at /docs/cli.