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
{{ message }}
Repository navigation
Commit e0282d0
Browse filesBrowse the repository at this point in the historyBrowse files
Sensor status: distinguish end-of-life and transient comms errors
Two related fixes to how the Libre 3 patch status drives the sensor pill:
- Sensor end-of-life (patch errorData 5/6, sensorEnded) now shows as
"Expired" rather than "Sensor failed". Both still require replacement and
mark the CGM inoperable, but a normal end is no longer labeled a failure.
Carries the reason through a persisted sensorEndedNormally flag so the
lifecycle resolves .expired vs .failed.
- A code-7 "transmission error" is a transient comms fault, not a terminal
replace condition (the sensor keeps producing valid glucose). It no longer
latches the sensor inoperable or stops Loop; instead it surfaces a soft,
retractable "Check sensor" notice that clears when the sensor reports
healthy again. Terminal replace (code 8, terminated) is unchanged.
LocalizedString("Your FreeStyle Libre 3 sensor has stopped working and needs to be replaced to resume CGM readings.",comment:"Sensor failure alert body"))
369
+
LocalizedString("Your FreeStyle Libre 3 sensor has stopped working and needs to be replaced to resume CGM readings.",comment:"Sensor failure alert body"),
LocalizedString("Loop is having trouble communicating with your FreeStyle Libre 3 sensor. CGM readings may pause briefly and should resume automatically. No action is needed unless this keeps happening.",comment:"Sensor check alert body (transient transmission error)"),
381
+
.active)
360
382
case.checkSensor,.none,.unknown:
361
-
// Transient or cleared — don't alert; retract any standing one.
383
+
// Other transient/cleared states — don't alert; retract any standing one.
0 commit comments