From 480ff18cf2ac2b132cbb35e8101ccb56f6c551bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Bombeck?= Date: Sat, 27 Jun 2026 16:37:35 +0200 Subject: [PATCH] chore(release): v1.22.0 --- CHANGELOG.md | 30 ++++++++++++++++++++++++++++++ docs/api/openapi.yaml | 2 +- package.json | 2 +- public/sw.js | 2 +- 4 files changed, 33 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7024dee0e..d44465030 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,36 @@ ## [Unreleased] +## [1.22.0] — 2026-06-27 — A Coach that speaks, remembers, and charts; richer narratives across the app + +A feature release. The Coach reads its replies aloud, can draw the metric it is discussing, remembers what you ask it to and resurfaces those reminders, and proposes checkups or measurement reminders you confirm inline. Insights and Coach assessments are rewritten for connected, motivating narratives instead of restated figures, and the daily read now folds in labs, preventive care, workouts, and glucose. Four additive migrations (`0195` hidden biomarkers, `0196` coach reminders, `0197` coach plan outcomes, `0198` AI settings); applied automatically on start — no operator action required. + +### Added + +- The Coach can read its replies aloud, and a reply can include a chart of the metric under discussion so the number has its trend alongside it. +- The Coach remembers things you ask it to keep and resurfaces a reminder when it comes due; a reminders list in settings shows what it is holding and lets you clear any of it. +- The Coach can propose a checkup or a measurement reminder, which you confirm inline before anything is saved. +- Hover a message to see the date and time it was sent. +- A configurable AI response timeout, and a separate optional provider dedicated to scanning lab documents. +- Steps now appear in Insights, and selecting a measurement type opens its insight. + +### Changed + +- Insight and Coach assessments are rewritten to connect signals into a motivating narrative rather than restate figures, with substantially expanded score summaries; generated text now renders in paragraphs and carries clearer "updated" timestamps — today with the time, yesterday, and a date for anything older. +- The daily read folds in labs, preventive care, workouts, and glucose, and correlations surface emerging signals over a recent window alongside more cross-signal links. +- The preventive-care area is now "Checkups", reached at `/checkups`; the German interface keeps "Vorsorge". +- Settings pages share one consistent layout, and the settings and admin sidebar stays pinned while the content scrolls. +- Lab biomarkers are a compact, editable list with hide and restore. +- Local AI servers stream their replies and honour the configurable timeout, so slower self-hosted models finish cleanly. + +### Fixed + +- The daily briefing and the insight trend no longer go blank when generation runs long. +- The blood-pressure "usual range" no longer shows a nonsensical band. +- A Coach notification now opens straight into the conversation it began. +- Insight headings drop the trailing info icon in favour of a short description. +- Lab values no longer link out to an article. + ## [1.21.4] — 2026-06-27 — Coach surface refinements A patch release. No migrations, no breaking changes. diff --git a/docs/api/openapi.yaml b/docs/api/openapi.yaml index 2e6074491..7036a58a8 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.21.4 + version: 1.22.0 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 348c30ddf..9c5bb7c9b 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "healthlog", - "version": "1.21.4", + "version": "1.22.0", "description": "Self-hosted personal-health-tracking PWA with Withings integration, AI insights, and doctor-report PDF export.", "license": "PolyForm-Noncommercial-1.0.0", "homepage": "https://healthlog.dev", diff --git a/public/sw.js b/public/sw.js index 9ac3bc7ea..069510dbe 100644 --- a/public/sw.js +++ b/public/sw.js @@ -36,7 +36,7 @@ try { // v1.4.38.4 → v1.4.42. Do not hand-edit; bump `package.json` and rebuild. const CACHE_VERSION = (typeof self !== "undefined" && self.__APP_VERSION__) || - /* @sw-version-fallback */ "v1.21.4"; + /* @sw-version-fallback */ "v1.22.0"; const STATIC_CACHE = `healthlog-static-${CACHE_VERSION}`; const PAGE_CACHE = `healthlog-pages-${CACHE_VERSION}`; // v1.18.6 — read-only data cache for a curated allowlist of safe GET `/api/*`