decide-where-a-model-is-needed
Measure what rules can extract from a corpus before paying a model to read all of it, and tell a rule that is weak from a corpus that is silent.
Procedure
- start start. Goes next to s1
- check Draw a sample that favours nothing. Goes on_fail to s9; next to s2
- action Measure the rule on that sample, RO (read-only). Goes on_fail to s9; next to s3
- decision Does it fire often and answer wrongly?. Goes if mostly_wrong to s4; if default to s5
- action Add the context that tells them apart, RO (read-only). Goes on_fail to s9; retry to s2; next to s5
- decision Is the coverage low, and why?. Goes if absent_from_text to s6; if default to s7
- action Publish what is true instead of a filter, RW (reversible-write). Goes on_fail to s9; next to s7
- action Label fifty by hand, both directions, RO (read-only). Goes on_fail to s9; next to s8
- action Sort the corpus, then run the cheap pass, RW (reversible-write), requires approval. Goes on_fail to s9; next to __end_success
- escalate Stop before the full run. Terminal
- end success. Terminal
Open the graph on its own page — larger, printable, and an address you can send.
Walk it without running it — you answer what your environment would answer, and the path, the capabilities, the approvals and the distance back to an undo come out of the document. Nothing executes; there is no Run button here and there will not be one.
Trust
T2 · attested 2026-10-11 · runbooks.directory
Nobody has attested this record. That is the ordinary case: T2 is what the catalog can check on its own, and T3 needs somebody to run the procedure and sign for it.
- Link liveness has not been checked: it needs a network and the catalog builds without one. Run
pnpm gates --onlinewhere there is one.
Steps
s1check — Draw a sample that favours nothings2action — Measure the rule on that sample (read-only)s3decision — Does it fire often and answer wrongly?s4action — Add the context that tells them apart (read-only)s5decision — Is the coverage low, and why?s6action — Publish what is true instead of a filter (reversible-write)s7action — Label fifty by hand, both directions (read-only)s8action — Sort the corpus, then run the cheap pass (reversible-write) — requires approvals9escalate — Stop before the full run
Capabilities
This is a privilege request. Check it against your own allowlist before running.
-
cli:psql— used by s1
Provenance
- Source
- https://runbooks.directory/r/std/decide-where-a-model-is-needed/source.md
- Fetched
- 2026-09-04
- Source last checked
- not since it was captured on 2026-09-04 — recorded as
current - Licence
- CC-BY-4.0
- How it got here
- Written by this catalog's maintainers and reviewed in full.
- Highest risk in this procedure
- reversible-write
Take it with you
- SKILL.md — the record as an Agent Skills file
- workflow.yaml — Open Workflow DSL 1.0.3, for a runner
- record.json — the catalog's own JSON
- graph.svg — the graph, standalone
Run it under supervision
Runs here, on your machine, under supervision: every step is proposed before it happens, an approval gate stops for you, and a failed expectation goes where the procedure says rather than on to the next step. Nothing is sent anywhere. To supervise an agent that is doing the work instead, runbooks hook sits in its tool-call path.
npx @runbooks/cli run std/decide-where-a-model-is-needed@1.0.0 --as "$(whoami)" \
--input corpus_table=<the table holding the documents to be read> \
--input field=<the field being extracted, one at a time>