You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Flash-drained nights (R24) carry no actigraphy, so per-minute activity is ~0
and Cole-Kripke is inert — calcSleep runs HR-only in practice. The fixed
1.15*rhr awake-override mis-fired against resting_hr, which is a 5th-percentile
sleep FLOOR: normal/REM sleep HR runs well above it, so the override flagged
whole nights awake and collapsed real sleep to ~1 minute (seen in prod on v3).
Anchor the awake/asleep cutoff to the window's own depressed-HR level (10th
percentile of worn HR, floored at resting_hr) so detection no longer hinges on
the fragile RHR floor. Add an absolute 1.5*rhr backstop so the opposite failure
mode — a flat, elevated, motion-inert sedentary-awake window — can't be
manufactured into a full night. Regression tests cover both modes; 234 pass.
The durable fix remains restoring R24 actigraphy (accel -> activity); noted.
0 commit comments