Event-rich temporal CSI — HAVOK event-locking: a shape-wrong positive
Session 01KZEV7Z3033B0B7ATMS6VPK0V · campaign c-csi-temporal-events · 10 coupled
exp-csi-crowd runs (2 floors x 5 seeds, 2.4 GHz, native-Metal lane) + 1 preflight probe.
Executive summary
The corpus this campaign existed to build works: every run delivered 555–597 CSI frames at 0.5 s and 53–117 usable occupancy-change events, against a parent corpus that yielded zero usable events. The ingress-burst failure mode is fixed. On that corpus the pre-registered HAVOK test returns a weak, statistically positive, but shape-wrong result, and the honest verdict is neither the campaign's positive nor its kill line.
Across the seven gate-passing runs the mean per-run z is 1.44, 95% t CI [0.84, 2.04] — excluding zero, so the declared kill line does not fire. But only 3 of 7 runs reach p <= 0.05 individually, and the mechanism's signature is absent: the event-triggered forcing curve sits ~1.25x above the permutation null uniformly across the entire +-2 s window, with no concentration at lag 0 (12439: 1.258 vs a 1.359 null band; 16157: 1.232 vs 1.409 — lag 0 is inside the band on both floors). A uniform offset is what nonstationarity produces. The intermittently-forced-linear mechanism predicts a peak at the event; that peak is not there.
This must not be read as "claim A vindicated." The most defensible reading is that occupancy level, not occupancy change, modulates forcing amplitude on ray-traced CSI.
Method in plain language
Each run drives 16 agents through a real floor plan on staggered arrival/departure schedules, ray-traces the resulting WiFi channel every 0.5 s, and asks one question: when somebody enters or leaves, does the residual "forcing" coordinate of a linear time-delay model of the channel jump? The jump is scored against 2000 random circular shifts of the same event times (per-run one-sided permutation p), then aggregated across runs with a t interval. Every analysis constant (embedding depth q=60, +-4-frame window, 2000 permutations, Gavish-Donoho rank, one-sided direction) was fixed on 2026-08-07 before this corpus existed.
Per-criterion results
- Corpus gate — FAIL (7/10). Frames and event counts pass on all ten with wide margin; three runs miss only the distribution sub-clause (25.6–26.4% of events in one 30 s window vs a 25% ceiling). A marginal miss, but pre-registered is pre-registered.
- Primary (claim A) — met by the letter. Mean z = 1.44 [0.84, 2.04] on the 7 gate-passing runs; 1.29 [0.86, 1.72] on all ten; 1.33 [0.46, 2.20] on the 5 runs that also pass the framing gate. All three intervals exclude 0.
- Secondary (specificity) — FAIL. The required lag-0 peak is absent on both floors; the curve is flat across the window (-2 s ~= lag 0).
- Kill line — did not fire. Its stated trigger (CI covering 0) is not met.
What it means
The campaign repaired the corpus defect it was built to repair, and in doing so converted a blocked test into an interpretable one. The answer is that the intermittently-forced reading does not survive contact with ray-traced physics in the form PUB-4 states it: the scripted synthetic stream reached z = 3.45 with a visible lag-0 peak on 26 events; here, with 3–4x more events, ray-traced physics yields half the z and no peak. PUB-4's claim A is therefore not supported as a forcing mechanism, while the residual uniform elevation is a real, separate observation (occupancy-level modulation of forcing amplitude) that would need its own pre-registration to claim.
Caveats (binding)
- In-silico only. Ray-traced physics, sim-authored crowds, one band, two floor plans.
- The framing gate fails on two runs (12439-s2, s3: reconstruction R^2 = 0.13, -0.10, Gavish-Donoho rank collapsed to its floor of 3) — claim A is formally moot there, and s3 carries one of the strongest z values. Restricting to both gates leaves n = 5.
- The effect is not stable in embedding depth: q=40 gives z = 1.98 [1.39, 2.58]; q=80 gives 1.32 [0.73, 1.90] (labelled sensitivity, not verdicts).
- The room-crossing secondary event stream is blocked by construction (0 usable events on all ten: the pre-registered loader requires two consecutive samples both inside assigned rooms, and crossings pass through unassigned door thresholds). The loader was left untouched; this is neither a corpus defect nor evidence either way.
- The DMDc leg (claim B) remains dead and out of scope — negative on the synthetic coupled stream and both parent real runs (2026-08-07 pre-registration).
- Critic step inlined by the supervisor. The adversarial reading above (uniform-offset
vs event-locking, framing-gate failures, q-instability) was produced with the analysis and
is recorded here rather than as a separate
criticism.md.
Recommended next step
Do not re-run this test on a bigger corpus expecting the peak to appear — the corpus is not the constraint any more. Either (a) pre-register the level-modulation observation as its own claim, or (b) close PUB-4's claim A as unsupported on ray-traced CSI and let the real AX210/Pi5 captures (IP-106) arbitrate, where genuine hardware nonstationarity and true entry/exit timestamps are both available.