# IR-69 close-out finding — author reconciliation (todlando, 2026-08-29)

Reconciling `EMISSION-RESIDUAL-CENSUS-FINDING.md` (doyle) with an independently written
meter. Measured at `ec6da9b0` (== `origin/main` at the time of writing), file blobs read
straight out of the sha rather than the worktree.

**Method, so the agreement counts for something:** I wrote the counter from the *description*
of the predicate, not from doyle's script — same intent (`eprintln!` whose format literal
starts with an UPPERCASE token followed by `:` or a space; classification by brace-tracked
`cfg(test)`-module containment), independent implementation. Two meters agreeing is evidence;
two runs of one meter would not have been.

## 1. The cli.rs blind spot — CONFIRMED, figure-for-figure

| claim | doyle | my meter |
|---|---|---|
| cli.rs length | 39118 | 39118 |
| first module-opening `#[cfg(test)]` | 3007, closes 3164 | 3007, closes 3164 |
| TOKEN-shaped shipping sites | 338 | **338** |
| of those, inside a test module | 0 | **0** |
| first / last shipping site | 3945 / ~24251 | **3945 (`INVALID_ID`) / 24251 (`ERROR`)** |
| shipping sites before line 3007 | 0 | **0** |

So the mechanism stands exactly as written: the generator stopped at the first
module-opening `#[cfg(test)]` and never scanned 3164–39118, and the "zero sites before 3007"
fact is what makes total blindness past the cut the only reading consistent with a census that
credited the whole `spt` crate 194 sites.

**Two refinements my meter adds:**

- **Separator split: 332 colon-form, 6 space-form.** The sealed census's predicate was
  TOKEN-colon, so **332 of the 338 fall inside the census's own predicate** — i.e. they are
  misses by *its* definition, not just by a wider one. The remaining 6 are the space family and
  are only in scope under the wider predicate. That distinction matters for how the follow-on
  request is scoped, and for what the generator fix owes.
- **Range count: I find 8 module-level `cfg(test)` ranges, doyle's write-up says 7.** The extra
  is `(24411, 39120)` — the trailing test module that runs to EOF. It changes nothing (in-test
  count is 0 either way, and every one of the 338 sits below 24411), but it is a live meter
  difference and should not be left as a silent discrepancy between two records of the same
  measurement.

## 2. `daemon.rs:2768` `SELECTION_PROBE` — site CONFIRMED, membership NOT

The site exists verbatim at `ec6da9b0` (`eprintln!("SELECTION_PROBE {}", probe.render());`),
space family. Whether it was one of the sealed 10 space-family candidates or a miss is
**unverifiable from where I sit** — that answer lives in the sealed artifact, and I am not
going to reconstruct it from memory and call it a measurement. Reconcile against the artifact.

## 3. `delivery.rs:149,313` — doyle's POST-CUT-MINTED read is RIGHT, and the authors are MINE

Confirmed, attributed, and the mechanism is narrower than "main moved":

- At the census cut `4d6007ac`, delivery.rs held **three** such sites (lines 111, 182, 604).
  The census saw those three, and `cfb9d9f8` converted them to `emit_line_err!`.
- **`9ec181e9` (my W3, #239) added a new `eprintln!("IO_SINK_WARN:…")`** in
  `publish_boundary_io` — I wrote it by copying `publish_state_io`, its unconverted sibling.
- **`2e71652a` (my W2, #238) added a new `eprintln!("DISPATCH_RESULTS_WARN:…")`** the same way.
- At `cfb9d9f8` both forms therefore coexist in one file: converted at 174/245, raw at 149/313.
  The conversion pick knew the three sites its snapshot contained and had no way to know about
  the two I minted on top of them.

So this is not census blindness and not general churn — it is **two lanes copying a sibling
that was still pre-conversion at the moment they copied it**, landing under a conversion
composed from an older snapshot. Same seam `pick-audit` flagged on the delivery.rs busy arm.

⚠ **A method trap worth carrying, because it nearly gave me the wrong answer:**
`git log -S'<TOKEN>' -- <file>` on both of these returns commits from **2026-08-27**, both
ancestors of the cut — which reads as "pre-cut, therefore a census miss". That is wrong.
`-S` answers *when did this STRING first appear in this file*, not *when did this SITE appear*;
for a duplicated pattern it returns the ORIGINAL every time. What settled it was diffing my own
commits (`git show <sha> -- <file> | grep '^+.*TOKEN'`) and reading the file at the conversion
sha to see both forms side by side.

## 4. Dispositions — agreed, with one addition

- IR-69 stays OPEN with the addendum. Agreed.
- Residual wave as a new board request. Agreed; scope it **332 colon-form + 6 space-form** in
  cli.rs rather than a flat 338, and have the generator fix state what module-close resumption
  it can now under-scan (the entry's own rule that a narrowing owes a measurement of its new
  blind spot).
- Enforcement at the seam over another snapshot. Agreed, and §3 is the argument FOR it: a
  snapshot census cannot see a site that does not exist yet, and two of the residuals were
  minted by lanes that landed between the census and its conversion. A lint denying bare
  `eprintln!` TOKEN-shapes in shipping code would have caught mine at build time.
- **Addition: the two delivery.rs sites are mine and I will convert them**, as a thin lane or
  folded into whoever takes the residual wave — gater's call. They are not a stop-ship (the
  shipped tree is behaviourally identical; `emit_line_err!` and `eprintln!` both write the same
  line to stderr), but leaving an author's own residue for someone else's wave is the wrong
  default.
