From 25bed4262c0fead27113098dd1b962e1846fbf2b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Bombeck?= Date: Fri, 5 Jun 2026 22:27:27 +0200 Subject: [PATCH] =?UTF-8?q?chore(release):=20v1.13.2=20=E2=80=94=20honest?= =?UTF-8?q?=20weekly-med=20compliance,=20correct=20sleep=20average,=20calm?= =?UTF-8?q?er=20wellness=20scores?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Rolling-cadence (weekly GLP-1 injection) compliance now reconstructs the full per-cycle history across the window instead of counting only the next-due dose, so a faithful injection history reads an honest rate, not a 0%/100% flip; adds a per-medication currentCycle state (on_track/due/missed/none) for a non-scary card. - Sleep average reads from the de-duplicated per-night reconstruction (bare ASLEEP + granular stages no longer double-count → no impossible ~20 h); night reconstruction hardened against an empty-segment throw. - Wellness-score tiles redesigned: gentle card-toned surface (was a saturated slab), a larger thinner custom SVG ring with a soft per-score gradient, renamed "Your health scores", fully legible in light + dark. Co-Authored-By: Claude Opus 4.8 (1M context) --- CHANGELOG.md | 11 +++++++++++ docs/api/openapi.yaml | 2 +- package.json | 2 +- 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4476063e4..b22fac5bf 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,17 @@ ## [Unreleased] +## [1.13.2] — 2026-06-05 — honest weekly-med compliance, correct sleep average, calmer wellness scores + +### Fixed + +- **Weekly injections (and other "every N days" medications) report honest adherence.** A rolling-cadence medication — the typical weekly GLP-1 injection — only ever counted its single next-due dose, so the rate flipped between a meaningless 100% and a hard 0% on a single dose and ignored a faithful history of shots. Compliance now reconstructs the full per-cycle history across the window: every logged dose counts, a genuinely skipped cycle reads as one miss, and the current cycle that simply hasn't come due yet no longer drags the number to zero. A new per-medication "current cycle" state (on track / due today / overdue / no cycles yet) lets the card show "next dose in N days" instead of a scary 0%. +- **The sleep average is correct again.** When a device wrote both a combined "asleep" block and the detailed light/deep/REM breakdown for the same night, the average double-counted them and could show an impossible figure (e.g. ~20 h). The average now reads from the de-duplicated per-night totals. The night-detail reconstruction is also hardened so it never errors on an unusual night. + +### Changed + +- **The wellness scores look calmer and clearer.** The "Your health scores" tiles (renamed from the old label) now use a gentle, card-toned surface instead of a heavy saturated slab, and each score draws a larger, thinner ring with a soft single-colour gradient tuned per score (readiness greener, sleep bluer, recovery and strain turquoise). The number and band stay fully legible in both light and dark themes. + ## [1.13.1] — 2026-06-05 — wellness rings show the real score ### Fixed diff --git a/docs/api/openapi.yaml b/docs/api/openapi.yaml index fd805f6a9..498df2d86 100644 --- a/docs/api/openapi.yaml +++ b/docs/api/openapi.yaml @@ -1,7 +1,7 @@ openapi: 3.1.0 info: title: HealthLog API - version: 1.13.1 + version: 1.13.2 description: >- Self-hosted personal-health-tracking PWA — public API surface for the iOS native client and external ingest. diff --git a/package.json b/package.json index 9c0991674..13715e11a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "healthlog", - "version": "1.13.1", + "version": "1.13.2", "description": "Self-hosted personal-health-tracking PWA with Withings integration, AI insights, and doctor-report PDF export.", "license": "AGPL-3.0-only", "homepage": "https://healthlog.dev",