79 days of continuous Oura data. 67 days pre-intervention baseline. 8 days post-ruxolitinib. 11 core analysis modules plus a roadmap appendix. A CausalImpact model that returns a statistically significant treatment signal (see causal inference report for current p-values).
The model detected a statistically significant change in the biometric signal after March 16. It cannot tell us why.
Ruxolitinib started March 16. Hepatitis E was diagnosed March 18. Two days apart. At day 8, we cannot separate the two.
| Signal | Pre-rux (67 days) | Post-rux (8 days) | Could be rux? | Could be HEV? |
|---|---|---|---|---|
| Temperature deviation | +0.07 C | -0.16 C | Yes (immunosuppression) | Yes (acute viral fever resolving) |
| Sleep HR | 85.0 bpm | 81.8 bpm | Yes (reduced inflammation) | Yes (acute phase resolving) |
| Resting HR (readiness) | 79.1 bpm | 84.2 bpm | No (went up, not down) | Yes (HEV-driven tachycardia) |
| HRV (RMSSD) | 9.2 ms | 10.1 ms | Marginal (still severely depressed) | Unclear |
The resting HR went up after ruxolitinib, not down. That is more consistent with acute HEV infection than with JAK inhibitor response. The temperature drop could be either. The HRV change is within noise at these sample sizes.
Time. HEV is acute. It resolves in weeks. Ruxolitinib is sustained. If the signals persist and strengthen at day 28 (~April 13), it is ruxolitinib. If they fade, it was HEV. We cannot know before then.
There is one shortcut: Oura has the answer now. Their cohort contains users on ruxolitinib without HEV. Comparing those users' autonomic trajectories against this patient's would resolve the confound immediately. That comparison is impossible with N=1. It is trivial at cohort scale.
Ring received March 23. First full night: March 24. One night of data.
| Metric | Subject A (36M, post-HSCT) | Family Control (61F, healthy) | What it means |
|---|---|---|---|
| Resting HR | 79-84 bpm | 56-68 bpm | 20+ bpm gap. Subject A's autonomic system is measurably damaged. |
| HRV (RMSSD) | 9-10 ms | TBD (collecting) | Population median: 49 ms. Subject A is at the 1st percentile. Family control will likely be near normal. |
| Age | 36 | 61 | The 61-year-old has a healthier heart rate than the 36-year-old. That is the disease signal. |
| Genetics | ~50% shared genome | Same genetic background eliminates inherited autonomic traits as confounders. | |
One night. The contrast is already visible. The 61-year-old family control rests at 56-68 bpm. The 36-year-old subject, 28 months post-transplant, rests at 79-84 bpm. That gap is not genetic. It is disease.
36M. Same age as Subject A. Post-stroke with neurovascular autonomic damage. Has worn an Oura Ring intermittently — 34 nights over 2 years. That is not enough for meaningful analysis.
Starting now: nightly wear. Once we have 30+ consecutive nights, the same 11-module pipeline runs on his data. No code changes. Different config file, different OAuth token, same analyses.
Subject A has immune-mediated autonomic damage (GVHD, 10 organ systems). Subject B has neurovascular autonomic damage (post-stroke). Both are 36M. Same hardware, same software, different pathology.
If the autonomic signatures separate — different HRV patterns, different sleep architecture, different circadian disruption — that is evidence that a consumer ring can distinguish between disease types, not just detect "something is wrong."
| Phase | Timeline | What |
|---|---|---|
| v1.0 | Now | Single-patient: 79 days, 8 days post-rux, 11 core modules. HEV confound unresolved. |
| v1.1 | Continuous (resolves ~April 13) | Reports update daily. Day 28 is when HEV vs. ruxolitinib separates statistically. Watch the numbers change. |
| v2.0 | April | Healthy family control (61F). 30+ nights. Same pipeline, same genetics, no disease. |
| v2.1 | April-May | Post-stroke control (36M). 30+ consecutive nights. Different pathology, same age. |
| v3.0 | Q2 2026 | Multi-user comparison: GVHD vs. stroke vs. healthy. Between-subjects CausalImpact. |
Same intervention window, three physiologies. Does ruxolitinib produce a detectable autonomic signal only in the immune-mediated patient? The controls make this answerable.
Mother and son, ~50% shared genome. Baseline HRV, sleep architecture, circadian patterns. What is inherited and what is disease?
Immune-mediated (GVHD) vs. neurovascular (post-stroke). Different damage, same ring, same pipeline. Do the signatures separate?
Any Oura user, any condition. Config file + OAuth token = full 11-module analysis. Open source.
This pipeline runs in 193 seconds on a single patient. Config file + OAuth token is all it needs. If your cohort contains even 50 users on ruxolitinib, you can validate or falsify every finding on this site in an afternoon. The code is MIT-licensed. The confound table above tells you exactly which comparisons resolve which questions.