The closed-hypothesis ledger.
The un-spun score, and the discipline that earned it.
Everywhere else on this site the findings are translated. Here they aren't. This is the research layer's honest floor: how the work was kept honest, exactly what the crash tests scored, and where the full, un-abridged record lives. Nothing here is softened for the reader.
Five gates every result passed
- 1
Pre-registration before data
Each hypothesis has a locked write-up, fixed before the outcome was seen; any change spawns a versioned successor. The crash definition itself was fixed once, so every verdict is comparable.
- 2
Fresh-session peer review
Every pre-registration, verdict, and method choice is drafted in one session and reviewed cold in a different one, document-only, so the reviewer can't be swayed by how it was written.
- 3
Audit-before-push privacy gate
An automated scan for names, emails, and dated raw values must pass before any commit. Nothing dated or personal ships, only aggregates.
- 4
Single-pool primacy
Verdicts run on the whole pool of all 29 crashes, with a permutation null and bootstrap confidence intervals. Any difference over time ships as a number with wide error, never as a per-era verdict.
- 5
Honest verdict categories
Every result uses the same labels (supported, not-supported, rejected, inconclusive) and a not-supported result is published exactly as readily as a supported one.
The crash tests, un-spun
The seven pre-registered crash-discrimination tests, each with its single-pool verdict and its real usability numbers. The base rate is 2.11% (29 crashes in 1,372 days), so even a good signal has a low precision; usability and reality are different axes. A signal can catch most crash lead-ups and still not be a real finding. One caveat carries into this table: HA11, the U-dip, is really the circulation pattern Wiggers reads as orthostatic, so its "not supported" means "not a crash signal", which is expected, not a failed prediction.
| Signal | What it measures | Verdict | Catches | Stays quiet | Lift |
|---|---|---|---|---|---|
| HA07d | Sleep-stress variability (stdev delta) | Supported | 88.0% | 31.7% | 1.28× |
| HA11 | Within-day U-dip count | Not supported | 58.3% | 58.5% | 1.39× |
| HA06b | Resting-HR z-score | Not supported | 61.5% | 45.1% | 1.12× |
| HA07c | Sleep-stress mean delta | Not supported | 60.0% | 50.8% | 1.21× |
| HA01b | Exertion-class lead-up | Not supported | 82.1% | 23.0% | 1.06× |
| HA10 | Morning body-battery peak z | Not supported | 76.9% | 27.1% | 1.05× |
| H02b | Per-minute stress-spike count | Not supported | 50.0% | 53.5% | 1.07× |
Of seven pre-registered crash tests, one is supported; six are not. That is the un-spun score, and publishing the six is exactly the point.
n=1 throughout: every number is one person's data, the confidence intervals are wide (29 crashes) and reported, not hidden, and nothing here generalises beyond this body. The retired train/validate split survives only as a descriptive overlay: a number, not a narrative.
The un-abridged record
Beyond these seven, the full closed-hypothesis ledger (every hypothesis, its pre-registration, method, statistics, and caveats, including the refuted and the underpowered) lives in the open research repository:
- The hypothesis registry: the full ledger ↗
- The methodology folder: the pre-registration discipline + the single-pool reframe ↗
- The fresh-session peer reviews ↗
- The conventions: the role split and the rigor gates ↗
The field guide translates. This layer doesn't, and the gap between them, kept honest, is the whole point of showing the work.