mirror of
https://github.com/MBombeck/HealthLog.git
synced 2026-11-08 12:32:43 +00:00
Three `pillStateFor` implementations disagreed with each other, so the same ledger state painted red on one card and amber on the next, on one page. All three are gone; the client projects the server verdict once. Red now means "your action fixes this" and nothing else. A transient upstream failure carries the warning tone: telling a user to reconnect against a 503 sends them clicking at something they cannot repair, and the detail belongs in the inline error line anyway. Three new pill states carry the rest — no recent data, sync stopped, waiting for first data. Per-metric freshness has been computed on every status call since v1.27.30 and rendered nowhere. Every connected card now opens a disclosure listing each data type the connection has delivered and how long ago, with a quiet one flagged. Collapsed by default so a 25-type card keeps its shape, but the collapsed summary already names the count, or the signal hides behind a click. A type a provider never delivered simply is not listed. The panel iterates the envelope and renders a plain status row for every configured entry no card claims. That is the structural half: a connection can no longer be running, failing and absent from the page at once. Apple Health drops its bespoke badge for the shared pill, gains the divider and body inset every sibling carries, and says something when a week has passed with nothing arriving. Nightscout reads the envelope instead of its own status round-trip. The OAuth card uses the shared error primitive, all nine cards carry the divider testid, and the four original connectors gain the "view your data" link the newer ones already had.