1090 observed = 1082 in situ + 2 under driver + 6 driver redundant. The 2 under driver were never observed until an agent built a way to reach them, so the unobserved count moved from 1202 to 1200. Measured on visidata at commit 1d8a6fc
These functions were genuinely observed by a baseline, making the corresponding driver redundant. The unit’s provenance is observed_in_situ. The driver file is kept as a record of the path that was built.
10 drivers were measured against this evidence file. 2 promoted · 6 made redundant by a baseline · 2 refused. The table shows only classes that occurred.
| Refusal class | Count |
|---|---|
| line_not_a_call_site | 1 |
| no_call_site | 1 |
| Driver | Refusal class | Reason |
|---|---|---|
| visidata.aggregators.stdev | line_not_a_call_site | line 93 of 'target/visidata/visidata/aggregators.py' is not a call site: the cited line does not call stdev; the parser finds no such call there. Correct the '# call site:' comment in the driver file. |
| visidata.path.vstat | no_call_site | no '# call site:' comment; a driver must declare where the function is reached in production so the claim can be checked |
ibm/granite-4-h-small on watsonx.ai Runtime, called by
tools/wx_draft_driver.py, drafted a driver for functions nothing
had been seen to execute. The model's output goes through the same gate as
our own: the driver must run, coverage must confirm the body executed, and
the declared call site is parsed to confirm the function is called there.
Not counted. The two accepted drivers are not folded into the published evidence. They were drafted hours before submission and no human has reviewed the fixtures they build. Promoting them would move never_observed from 1200 to 1198 on an unreviewed model draft, which is the shape of claim this project argues against.
The two accepted drafts ship in drivers-candidates/ as candidates,
and every figure elsewhere on this page excludes them.
Everything above measures a codebase. This measures the tool. Each of
79 rows is a real edit payload, carrying no line number, built from a
function in this evidence file and run against the shipped hook as a
subprocess. Reproduce it with
tools/ab_gate.py --seed 11.
The denominator. 82 functions were sampled and 3 were dropped for having no line unique within their file. That exclusion is not neutral: an ambiguous anchor is exactly the case the hook refuses, so the 79 below are the locatable subset rather than a random one. Read the rates against that.
--strict,
37 were stopped:
every one had never been observed, and
0 observed functions were stopped
by mistake.What this is not. These are scripted edits, not a live agent. Nothing here shows a model changing its mind. It shows that the control fires on every edit it is given, places each one without a line number, and separates the code with no execution record from the rest without a single false stop. Whether an agent then behaves differently is a claim this run does not make.
And what it lets through. When an edit cannot
be placed at all, --strict exits 0 and the edit proceeds. Not
knowing which function is being edited is not evidence that it is unobserved,
so the gate fails open by design. That is the first way past it, it is not
hypothetical, and it belongs on this page next to the stop count rather than in
a source comment.