STReEF (ds005448): the register's first external check on an absolute value
gate/RESULT-STREEF.mdContents
Run 2026-09-19 / 2026-09-20. Code:
gate/streef.py (grids) and gate/streef_seeg.py
(depth electrodes), both reusing gate/prios.py against a
repointed gate/prios_io. Output:
gate/streef.json, gate/streef_seeg.json.
Every value in this document is the declared-departure window, [15, 300] ms, the column every issued reading uses. See defect 4.
Question or issue resolved
Whether the register's awake intracranial value is a property of the method or a property of the one cohort it came from.
NS-0012 issues that value at 32.26 on the strength of seven patients at a single center. Nothing in the register tested it against anyone else's patients, and an absolute value that has only ever been computed once is indistinguishable from an artifact of the hospital that produced it. The published literature brackets the figure but does not test it, because it does not use this pipeline.
STReEF supplies a second cohort at a different center under the same protocol and geometry, which makes the comparison a test rather than an illustration. What that test required, and the four defects in the reading code it exposed on the way, are below.
The result
NS-0012 issues the register's awake intracranial value as 32.26, interval 18.46 - 46.06, from seven PRIOS patients at one center. Nothing in the register tested whether that is a property of the method or a property of that cohort.
STReEF's grid arm is three patients at a different center, computed by the identical pipeline, under the identical protocol (SPESclin, monophasic, 0.2 Hz), on the identical geometry (subdural grid), at a single current (8 mA):
| n cells | Mean | Median | SD | |
|---|---|---|---|---|
| STReEF grids, 2-trial floor | 75 | 35.83 | 33.48 | 16.37 |
| STReEF grids, all trials | 75 | 37.32 | 34.52 | 14.30 |
| PRIOS at 8 mA, 2-trial floor | 220 | 29.97 | 26.95 | 12.14 |
| PRIOS at 8 mA, matched | 220 | 31.14 | 29.40 | 13.22 |
| NS-0012 as issued (currents pooled) | 269 | 32.26 | 29.92 | 13.8 |
35.83 falls well inside NS-0012's interval of 18.46 to 46.06. The absolute value replicates on an independent cohort.
The comparison is like-for-like on the four things now known to move
this quantity: geometry is grid in both (METHOD 3.3); protocol is
SPESclin in both, which matters by roughly 2x
(gate/RESULT-CHOCS.md); current is held at 8 mA in both,
which matters by up to 5.4x (METHOD 2.1); and the 2-trial-floor rows are
compared against PRIOS's 2-trial-floor rows, because NS-0012 is matched
down to the two trials its propofol arm carries.
STReEF measures about 20% above PRIOS at matched current and trial count. That difference is not established:
| Cohort | Per-patient medians |
|---|---|
| STReEF | 29.54, 34.89, 35.44 |
| PRIOS | 21.49, 25.17, 26.35, 28.03, 31.25, 49.32, 54.16 |
Mann-Whitney on patient medians gives p = 0.52, and at three patients against seven the smallest attainable p is 0.017, so this test could not have shown a difference of any size. What the table does show is that STReEF's three patients fall inside PRIOS's range, and that PRIOS's own between-patient spread — a factor of 2.5, from 21.49 to 54.16 — is wider than the gap between the cohort centers. The between-patient term dominates the between-cohort term.
Four defects this deposit exposed in the reading code
1. Annotation classification.
period_annotations rejected every non-stimulation
annotation carrying electrodes_involved_onset = all. In
ds004370 that is correct — its only such annotations are
artefact, seizure and
burst suppression, all of which mean the data is bad. In
ds005448 the vocabulary also includes eyes, and those
annotations tile the entire recording as contiguous
eye-state spans. Every trial overlapped one. The whole deposit computed
to zero cells and raised nothing.
Fixed by classifying rather than assuming: REJECT_TYPES
for annotations meaning bad data, STATE_TYPES for
annotations describing the subject, and a raise on any type in neither.
Control: ds004370 still yields zero state spans.
electrodes_involved_onset also takes the value
diffuse in ds005448, which the old code would have parsed
as a channel name. Added to GLOBAL_ELECTRODES.
2. No single-state path. contrasts
paired awake only against propofol, so a deposit with one state produced
no rows at all. Added a single-state path that emits
unmatched and floor2 variants and deliberately
does not emit a matched variant, since
there is nothing to match against.
3. Mixed geometry inside one deposit. ds005448 is
not one cohort. STREEF01 through STREEF05 record from subdural grids;
STREEF06 through STREEF13 record from depth electrodes.
The first run used CHANNEL_TYPES = {"ECOG"} for all
thirteen, which matched no channel at all in the last eight.
Those eight subjects reported 25 cells sampled in the
rejection record and produced zero rows, because cell eligibility is
decided from the events table before any channel filter applies. A count
of what was sampled sat beside a count of nothing computed and neither
contradicted the other.
Fixed in prios.load_subject, which now refuses any
subject whose constant channel set falls below MIN_CHANNELS
and names both the channel types present and the types requested. The
per-cell MIN_CHANNELS test that already existed could not
catch this: it skipped each cell individually and never reported that it
had skipped all of them.
Controls: with {"ECOG"} requested, STREEF06 now raises
and names SEEG; with {"SEEG"} it loads 53 channels;
STREEF01 is unaffected at 104; PRIOS01 is unaffected at 38.
The two arms are computed separately and stay separate. Under METHOD 3.3 an absolute value from depth electrodes may not be set beside one from a grid without a stated warrant.
4. A column named for the wrong thing. Each row
carries two PCIst values: the documented [0, 300] ms response window,
and the declared departure [15, 300] ms that excludes the amplifier
saturation. The departure is the one every issued reading uses. The
documented one was called pcist and the
departure pcist_departure, so the
plainly-named column was the one that must never be cited — and on PRIOS
it runs about 16 points high, because the saturation it contains is
itself complex signal.
An analysis in this session read pcist, compared 55.50
against NS-0012's interval, and concluded STReEF had failed to
replicate. On the correct column the same cells give 35.83 and
replicate. The wrong column did not look wrong. It looked like a
finding.
pcist is now pcist_documented. There is no
longer a column whose name invites being taken for the real one, and any
stale reader fails with KeyError rather than returning a
contaminated number.
The sleep finding, and the correction to it
ds005448 carries 924 stimulation trials delivered during annotated sleep, in STREEF03 and STREEF04, in the same runs as those patients' awake trials. On its face that is a within-patient wake-versus-sleep intracranial contrast sitting in a deposit nobody had opened.
It cannot be built as a paired contrast, and the reason is structural.
| Patient | Channels | Awake sites / trials | Sleep sites / trials | Shared sites | Usable cells |
|---|---|---|---|---|---|
| STREEF03 | 61 | 11 / 51 | 51 / 253 | 0 | 0 |
| STREEF04 | 47 | 22 / 101 | 80 / 390 | 4 | 3 |
SPESclin walks through electrode pairs sequentially across roughly fifty minutes. A patient who falls asleep partway through is stimulated at one set of sites awake and a different set asleep. State and site are confounded by the protocol. In STREEF03 the two sets do not intersect at all.
Three cells in one patient will not support a contrast reading, and issuing one would mean comparing PCIst across different stimulation sites while calling the difference a state effect. That is what METHOD 3 exists to prevent.
Added to the pre-admission checklist. Where a state change occurs during a sequential-site protocol rather than between sessions, check that the site sets intersect before treating it as a contrast. A within-patient state change is not automatically a within-site state change.
The depth-electrode arm
STREEF06 through STREEF13 are eight patients recorded on depth electrodes, at 1 and 2 mA, under the same SPESclin protocol. Computed separately, as METHOD 3.3 requires.
| Patients | Cells | Mean | Median | SD | |
|---|---|---|---|---|---|
| STReEF depth, 2-trial floor | 8 | 200 | 26.47 | 24.23 | 14.33 |
| STReEF depth, all trials | 8 | 200 | 28.43 | 25.20 | 16.54 |
Per-patient medians run 19.5 to 34.1 — a factor of 1.75, against the grid cohorts' 2.5. One cell of 200 returned zero.
What the four cohorts say together
The register now holds four independently computed awake intracranial cohorts. Held to the 2-trial floor and the declared-departure window, and broken out by the two things that move the quantity most:
| Geometry | Cohort | mA | Patients | Cells | Median | Mean |
|---|---|---|---|---|---|---|
| grid | PRIOS (ds004370) | 2 | 2 | 10 | 20.91 | 21.58 |
| grid | PRIOS (ds004370) | 4 | 4 | 45 | 32.84 | 36.34 |
| grid | PRIOS (ds004370) | 8 | 7 | 220 | 26.95 | 29.97 |
| grid | STReEF grids (ds005448) | 8 | 4 | 78 | 33.55 | 35.66 |
| depth | CHOCS SPESclin (ds003848) | 2 | 2 | 45 | 16.36 | 20.25 |
| depth | STReEF depth (ds005448) | 1 | 4 | 32 | 24.03 | 27.02 |
| depth | STReEF depth (ds005448) | 2 | 8 | 167 | 24.23 | 26.36 |
Three things follow, and only the first is solid.
The grid replication holds. At 8 mA, the only current where two grid cohorts meet, PRIOS gives 26.95 and STReEF 33.55. Both sit inside NS-0012's issued interval.
Two depth cohorts at the same current, protocol and geometry differ by about 1.5x. CHOCS SPESclin gives 16.36 at 2 mA and STReEF depth gives 24.23, with every methodological variable this project knows about held constant. The difference is between deposits — different centers, different patients, different electrode manufacturers and montages. Two patients against eight settles nothing, but it sets a floor on how precise any absolute intracranial value can claim to be: the between-cohort term is not small.
Geometry does not obviously dominate that term. METHOD 3.3 bars comparing absolute values across geometries, adopted as a precaution before any evidence bore on it. This is the first evidence. At 2 mA the grid value, 20.91, falls between the two depth values, 16.36 and 24.23. Whatever separates grid from depth is not larger than what separates two depth cohorts from each other.
That is not a reason to drop 3.3. The 2 mA grid figure rests on ten cells in two patients; current and geometry are confounded across the whole table, since the grid cohorts stimulate at 4-8 mA and the depth cohorts at 1-2 mA; and a rule that keeps incomparable things apart costs nothing when it turns out they were comparable. It is a reason to record that the restriction is precautionary rather than demonstrated, and to revisit it when a deposit stimulates both geometries at a common current.
One further pattern is visible and should not be read as a finding: PRIOS's grid values run 20.91 at 2 mA, 32.84 at 4 mA and 26.95 at 8 mA — the inverted U that METHOD 2.1 describes from mouse data, appearing in human cortex. It is fully confounded with patient composition, because two patients contribute at 2 mA, four at 4 mA and seven at 8 mA. Testing it needs a within-patient current sweep, which this deposit can support and nothing here has attempted.
Limitations, stated
- Three patients in the grid arm, not thirteen. Five are grids; STREEF03 contributes no single-state cells and STREEF04 went down the contrast path.
- One current. Every STReEF grid cell is at 8 mA, so the comparison against PRIOS is anchored at 8 mA and says nothing about the rest of the range. NS-0012 itself pools 2, 4 and 8 mA, so the headline 32.26 and the 8 mA figure of 31.14 are not the same quantity; both are given above.
- The 20% gap is untested, not absent. Three patients against seven cannot reject equality, and the test reported is underpowered by construction.
- The depth-electrode arm is a separate cohort and is not included in any figure in "The result" above. It is reported in its own section below.
- The depth arm's two current levels, 1 mA and 2 mA, returned medians of 24.03 and 24.20. That is not evidence that intensity does not matter; it is a narrow range at the high end, where METHOD 2.1's inverted U is flat.
sleep-wake transitionis kept separate fromsleepthroughout. It is by construction the ambiguous period and is not treated as a state for contrast purposes.- A trial is assigned to sleep only when its whole window falls inside a sleep span. Trials straddling a boundary keep the task's state.