A third state, a reading that fails one condition, and three defects found by trying to issue it
gate/RESULT-RECOVERY.mdContents
Run: gate/issue_recovery.py →
gate/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.