A third state, a reading that fails one condition, and three defects found by trying to issue it

Rendered from gate/RESULT-RECOVERY.md
Contents
  1. What I did
  2. The state does not behave, and the dispersion is signal
  3. Three defects, all found by attempting to issue
  4. Two rules that changed, and one concern left standing
  5. What I recommend next

Run: gate/issue_recovery.pygate/issue_recovery.json, reading NS-0027 Date: 2026-09-22.

What I did

The register has issued readings for two states and the mouse deposit records three. Recovery from isoflurane has sat in computed data since 2026-09-21 without a reading. I computed it under both implementations, attached the per-recording matched null that gate/RESULT-FLOOR.md recommended be made mandatory, and tried to issue it as a conformant record. The attempt is the method: a standard is tested by trying to satisfy it, and three defects surfaced in the trying.

Values come from four subjects of the six local files; the other two do not carry the state. Both implementations ran — the reference and the one written from spec/PCIST-1.0.md — agreeing at ICC(2,1) = 1.0000 with a worst relative difference of 0.00e+00 over sixteen cells.

The state does not behave, and the dispersion is signal

subject awake recovery recovery / awake clearance over own floor
521886 77.93 105.99 1.36 5.53×
521887 49.37 101.42 2.05 9.59×
543393 75.56 14.24 0.19 3.67×
543394 35.40 23.75 0.67 3.02×

Two animals recover to above their own awake value and two to well below it — a spread of 10.9×, where awake against isoflurane separates cleanly in every animal in the same deposit.

That dispersion is not the instrument. Every subject clears the floor measured on its own recording by 3.02× to 9.59×, against a median clearance of 1.90× for the anesthetized arm and a minimum there below 1. The low animals are not sitting on the floor; they are genuinely low. Recovery is not one state, and no scale with bands narrower than a decade could classify it.

The reading is issued at 61.35 with an interval of [0.00, 199.42] — wider than the value, floored at zero by arithmetic rather than by evidence. That is reported as the finding rather than tuned away. The summary on its face says the reading establishes that recovery is not one state and does not establish a level for it.

NS-0027 fails exactly one conformance condition, and it is the right one

It satisfies ten of the eleven conditions of §12 and fails condition 9 alone. The second implementation was written from spec/PCIST-1.0.md, and that annex was written from the reference implementation, so the pair shares an author — which §9.3.1 classes as dual_implementation_same_author and expressly does not accept.

I recommended the opposite yesterday: that building a second implementation would unblock conformance. It does not, and the register's own §9.3.1 already said why — a shared author is a shared assumption, and condition 9 exists for independence rather than for arithmetic. Agreement at ICC 1.0000 establishes that the specification is sufficient to reimplement the computation. It establishes nothing about independence and is not reported as interrater agreement.

What the reading changes is the shape of the ask. Condition 9 is now the only thing between this register and a conformant reading, which is a specific request to put to a third party — run spec/PCIST-1.0.md against spec/vectors/VECTORS-1.0.json and we both publish — rather than a general invitation to collaborate.

Three defects, all found by attempting to issue

1. A member was added to a closed set on a premise nobody checked. §3.3 said probe_linear was "the arrangement the register's two mouse readings were taken on." Every reading path in this repository reads acquisition/ElectricalSeriesEEG, the thirty-contact epidural surface array. The deposit files the register computes from contain one device, one electrode group, no units table, and every probe_vertical_position set to −1 — there is no shank probe in them. No reading was mislabeled, because NS-0006 and NS-0011 carry geometry: null from before the field existed. But the closed set was extended in 0.3.7 for an arrangement not in use, while the arrangement actually in use had no member at all. epidural_array is added in 0.4.3 and probe_linear is retained with its justification corrected.

2. The geometry set was closed in the document and never in the schema. §3.3 removed "or another named arrangement" in 0.3.7 precisely because free text in a mechanical decision lets two raters name the same array differently. The schema's geometry field remained type: string with a description that still contained that exact phrase, so any string validated. Closed now, as an enum.

3. METHOD required a field the schema rejected. 0.4.1 requires every reading to declare computation.spec_version. The schema's computation block set additionalProperties: false and did not list it, so from 0.4.1 to 0.4.4 no reading could carry the required field and validate. Both of these are the same failure in different places: a normative document and its machine-checkable form drifting apart, with nothing asserting they agree.

Two rules that changed, and one concern left standing

matched_null is now required on every perturbational reading, per the standing recommendation of gate/RESULT-FLOOR.md, with a rule that refuses any reading whose clearance over its own floor is at or below 1. §3.5 gained a non_uniform layout branch: the NeuroNexus array behind these readings is anatomically placed and has no pitch — fifteen sites per hemisphere over named cortical targets — so the declared figure is the median nearest-neighbour distance over the manufacturer's published coordinate table, with the table cited and the derivation never presented as a manufactured spec.

That branch also resolved the deposit's undeclared coordinate units. They are Allen CCF voxels at 25 µm, established by agreement with the manufacturer's coordinates — median nearest-neighbour 1.076 mm against 1.083 mm, 0.6% — and confirmed against a paper-stated maximum inter-electrode distance of 8.5 mm. The neighbouring scales are wrong by 2.5× either way.

The concern left standing is the interval rule itself. The base is the observed between-subject spread, which for four animals of one strain on one rig already contains whatever they differ by. §5 then multiplies that by species and instrumentation wideners, which are allowances for carrying a value outward to another species or rig. Applying them inside the interval conflates how much the quantity varies here with how far it may be carried elsewhere, and double-counts. NS-0011 has the same structure. The rule is applied as written, the resulting interval is published at its unhelpful width, and the concern is recorded rather than quietly fixed.

What I recommend next

Put condition 9 to a third party as the specific ask it has now become, because nothing the register does to itself can close it and everything else is closed.

Then settle the widener question before any band scale is drawn, because a scale whose anchors carry double-counted intervals inherits the error at every rung. The cleanest resolution is probably that wideners attach to a comparison rather than to a reading — the same logic that already exempts Type F contrasts, where shared confounds cancel — but that is a proposal, and it needs its own measurement rather than an argument.