BLINK CONFIRMATION
Why a blink needs more than one frame
A small eyelid coefficient can come from distance, angle, noise, or one-eye movement. Lumi checks the timing of both eyes and uses an eye-aspect-ratio signal to confirm weaker distant-face changes. A long closure is not counted as a series of blinks.
When sensing confidence drops, the status changes to “unavailable” and the no-blink reminder pauses until a usable signal returns.
What “screen time” means inside Lumi
Lumi does not inspect screen content. A screen interval means monitoring is active and the app has a usable presence signal. That makes it a practical local activity measure, not a claim about attention, productivity, gaze direction, or the exact distance between your eyes and the display.
How stand-up events avoid obvious false positives
The posture signal first learns a stable seated baseline. A completed rise can end a seated interval and count as standing up. Sudden tracking loss, sideways departure, or an unavailable camera ends the interval differently and is not promoted into a successful stand-up event.
The app intentionally avoids judging whether your blink rate, posture, or screen time is medically healthy. It stores events so you can review your own rhythm.
What persists for 30 days
The timeline is stored in IndexedDB in the renderer profile. It keeps event timestamps and paired interval identifiers, then removes records older than 30 days. Raw frames, face landmark arrays, mouth-opening sequences, and posture calibration coordinates are not saved.