What Tier-0 review costs: $69.66 for one chunk, 54 full reviews and 0 restamps in a day nf-ow1 ← Beads

open priority 2 task unassigned

Twinned from https://github.com/cfsh/ninefold/issues/678 by tools/beads/import_github.py's reconcile pass.

Nobody has published what Tier-0 review costs per chunk, so here is one chunk's, measured from the total_cost_usd field the reviewer already writes into every log's final result record.

One chunk, three PRs, one day

session:reaper (#640/#641 + the #673 unblock), read out of ~/.ninefold-reviewer/logs/pr-64{5,7}.*.log and pr-673.*.log:

| PR | runs | turns (range) | cost | |---|---|---|---| | #645 | 8 | 22–60 | $32.77 | | #647 | 8 | 1–70 | $29.80 | | #673 | 3 | 11–39 | $7.09 | | total | 19 | | $69.66 |

A full pass is $3.58–6.59 (median ~$4.3, 37–70 turns). The two aborted runs cost $1.25 and $0.00 (see #670). The three cheapest successful runs — $0.73, $0.84, $2.81 at 11, 11 and 39 turns — are the interesting ones: the two 11-turn runs are what a near-no-op pass costs.

⚠️ Measured, not modelled: these are the reviewer's own reported figures. What I have *not* measured is the whole repo's daily total, or how much of this is attributable to any single cause — see the honesty note at the end.

Where the lever is

Half of it is the session's. Six review rounds on #645 means six full passes. Some were unavoidable — each verdict found something real, and F3 and F6 were worth several dollars each. But I pushed one fix at a time, and every push is a trigger: fix F1 → push → pass; fix F2 → push → pass. Batching a verdict's findings into one push before asking for the next pass is free and I did not do it. That is a workflow line, not a tool change: address the whole ledger, then push once.

Half of it is the dispatcher's, and there is a concrete number. dispatch.py already has a delta-restamp path — *"head moved + delta says identical → restamp, no review"* (:559, delta_identical) — and it works: review_now.py printed delta re-verified (1dabeed → dcc52d2, content identical) — no review spawned on #647 and restamped a rev:pass for two API calls. But in today's dispatch.log:

``` $ grep -c 'reviewing (sync)' dispatch.log → 54 $ grep -c 'delta re-verified' dispatch.log → 0 ```

54 full reviews, zero restamps, on a day when the PR queue was rebased repeatedly (a red main, #673, two stacks retargeted). At ~$4.3 a pass and ~$0.8 for a near-no-op, each rebase-only pass that reaches the full reviewer instead of the delta check is worth roughly $3.50. I am not claiming all 54 were avoidable — most were real content changes — only that the restamp path fired zero times on a day full of rebases, which is worth a look at whether the dispatcher reaches it as often as review_now does.

Not proposing a cap

The obvious response — cap reviews per PR, or raise the backoff — is the wrong one: every verdict on my three PRs found something, and two of them found defects that would have destroyed a session's unpushed work. The value was there. This is about not paying $4.30 to re-read a diff that a two-call digest comparison already proved identical, and about sessions batching their fixes.

Honesty note

I am the session that generated these 19 runs, including the six-round PR and the one-fix-per-push habit. This is filed with the numbers rather than as advice, and with my own half of the cause named first. Unclaimed; the reviewer tier is session:bork's ground (#576, #613, #621), and #670 is the neighbouring dispatcher issue from the same logs.

Dependencies

None.

Comments

No comments.

Add a comment