The Verification Budget

What share of the work you ship have you actually read?

Outputs a week, honest minutes to check one, minutes you really spend. The rest is arithmetic.

Shipped with Episode 10

The decision it forces

Some of what goes out under our name this week was never read by a person. The question is how much, and whether that is the number we thought.

Paul Gibbons, a consultant who builds his own agents, on Episode 10, about pull requests waiting for him after a morning upstairs:

GitHub, I don't do this anymore. But when I first started, I would just click yeah, yeah, yeah, merge, merge, merge, merge, merge, merge, merge. And and then I I would often run it without permissions because I have attention issue.

He uses the tools too much to give everything the pass, he says, but the tendency is human: that looks pretty good. A friend of his used to call it good enough for government work, and that phrase is where this page starts:

it's one of these expressions people say. actually like if you think about it hard, it's actually kind of disgusting. It means, this isn't important enough for me to devote time verifying and seeing and like improving the quality of it. there's so much wrong with that.

The Verification Budget's filled panel: sixteen hours required against three spent, and the stamp reads coverage 18 percent.

To run it, use the calculator below, or copy the prompt into any model you already use.

The cost, in his numbers

Paul calls himself the glue that keeps the agents together: when one finishes something, he has half an hour or an hour or two hours of work to verify, approve and revise it. With five or ten of these things running, that's a day's work just validating what the agents did, which is why he says it isn't easy money.

Nobody on the episode multiplies those out. That is what this page adds, and it is the show's arithmetic rather than Paul's: outputs a week, times honest minutes to verify one properly, is the verification budget. Minutes actually spent, over that, is coverage. The number that comes out is the share of the work that got read.

One hedge of Paul's governs the whole thing, and it is why the calculator works one workflow at a time: nothing stupid happened, and he's in management consulting, not, as he put it, nuclear weapons. The bar is set by what the output is for. A row for draft social copy and a row for customer-facing pricing should not share a verdict, and the tool does not average them into one.

The fields

Field What goes in it Who fills it
name The workflow or agent, in the words you would use to a colleague you
outputs_per_week How many finished things it hands you in a week. A merge or approval log can count this machine, or you
minutes_to_verify_properly Honest minutes to check one the way you would defend to whoever it goes to you, and only you
verifier The person who does the checking. A name you
minutes_actually_spent Minutes a week that really go on it, not the minutes that should you
required_minutes Outputs times minutes each derived
coverage_pct Actual over required, capped at a hundred derived

There is no worked example on this page beyond the schematic one on its card. A filled budget is one team's confession, per workflow, with a name in the verifier column, and it is theirs.

The calculator

One row per workflow or agent. Four numbers each; the rest is arithmetic, done here, kept only in this browser.

WorkflowOutputs a weekMinutes to verify one properlyWho verifiesMinutes actually spent a weekRequiredCoverageRemove

"Properly" is the question, not "at all". The honest number is the one you would defend to the person the output goes to. Nothing here estimates it for you.

Coverage across everything: 0 percent

Outputs shipped unverified each week: 0

Hours a week to reach full coverage: 0

The verdict rule

Coverage is a number, and what it means is ours; each row gets its own, never an average. Paul's line about the expression is the standard we read it by: if the honest minutes would make the budget impossible, the work is either not important enough to verify or too important to ship unverified, and the calculator has just told us which conversation to have.

Fill that column with the number you would say out loud to the person the output goes to. Then look at the coverage column and stop arguing with it.

The number people flatter themselves about

minutes_to_verify_properly is the input the whole thing rests on and the one a model must never supply. "Properly" is the question, not "at all": the honest figure is what it would take to catch the thing that would embarrass us, not the time it takes to glance and nod. Paul's own account of the gap, on the same episode, was the better part of a day spent rewriting what the model wrote.

Run it with any model

If you would rather be interviewed than fill a table, this does the same arithmetic. It may count from a log; it may never guess the minutes.

Copy-paste prompt
Help me build a Verification Budget: one row per workflow or agent that hands me
finished work, so I can see what share of it actually gets read before it ships.

The arithmetic is fixed. Required minutes a week is outputs a week times honest
minutes to verify one properly. Coverage is minutes actually spent over
required, capped at 100 percent. You do the arithmetic; I supply every input.

INTERVIEW ME, three questions at a time, one workflow at a time.

1. name: the workflow or agent, in plain words.
2. outputs_per_week: how many finished things it hands me in a week. If I give
   you a merge log, approval log or ticket export, count from it and show the
   count. Otherwise ask me for my estimate and record that it is an estimate.
3. minutes_to_verify_properly: how long it takes to check one the way I would
   defend to the person it goes to. Ask me this WITHOUT suggesting a number, a
   range or a benchmark. If I say "a couple of minutes", ask me once what I
   would have to actually read or run to catch a wrong one, then record whatever
   I say.
4. verifier: the person who does the checking. A name, or null. A team name is
   null.
5. minutes_actually_spent: minutes a week that really go on it. If I answer with
   what should happen, ask for what does.

RULES YOU DO NOT BREAK
1. Never estimate minutes_to_verify_properly. It is the number the whole budget
   rests on and the one people flatter themselves about. If you fill it, the
   answer is comfortable and worthless.
2. Never combine rows into one verdict as if they were equal. Report coverage
   per row, then the totals, and say that the totals hide the difference between
   draft copy and customer-facing work.
3. Do not tell me a workflow is safe, risky, or fine. Coverage is a number; what
   it means is mine.
4. Do not ask for the contents of any output, any customer name, or any
   credential. Counts and minutes are enough.

OUTPUT
Valid JSON matching the schema verification-budget/v0.1 as published at
https://sigsub.show/takeaways/verification-budget/, then a table sorted by
coverage ascending, then one line each for: coverage across everything, outputs
shipped unverified each week, hours a week to reach full coverage.

What to check in the answer

It may do all of the arithmetic, and it may read a merge or approval log to count outputs. That is the part a spreadsheet does better than a person.

It may never estimate the minutes to verify one properly. That is the input the whole number rests on, and a model supplying it hands back the comfortable answer, which is the answer this page exists to take away.

The part that's not optional

Run it on the workflow with the most outputs first, not the one you are proudest of. Then put a name in the verifier column for every row, and notice which rows have the same name.

For builders

The answer format

Schema, verification-budget/v0.1
{
  "schema": "verification-budget/v0.1",
  "workflows": [
    {
      "name": "",
      "outputs_per_week": 0,
      "minutes_to_verify_properly": 0,
      "verifier": null,
      "minutes_actually_spent": 0,
      "required_minutes": 0,
      "coverage_pct": 0
    }
  ],
  "totals": {
    "coverage_pct": 0,
    "hours_to_full_coverage": 0,
    "unverified_outputs_per_week": 0
  }
}

The Copy JSON button above emits exactly this. It is the first machine-readable output of any takeaway on this site.

Report back

Ran this? Tell us what happened. What broke and what you changed are the useful parts, because that's how the next version gets better.

Email your report

Or write to hey@sigsub.show with Takeaway: verification-budget as the subject. It's a plain email: no form, no account, nothing tracked. Nothing you send appears here unless you say yes, and you choose how you're named.

Rather talk it through in public? Comment on the Sunday issue on Substack, the same issue on LinkedIn or the episode on YouTube. Those threads live on their platforms, under their rules; nothing from them runs on this page.