chore(release): v1.32.9 — Coach Guard II (grounding ledger + action ladder)

The Coach output guard now tracks the numbers it was shown across the whole
conversation, so a figure carried forward or grounded in a goal, a schedule,
or a reference band stops being marked unverified, while an invented one is
still caught and a fabricated risk number now blocks in six languages.
This commit is contained in:
Marc-André Bombeck committed 2026-07-23 22:50:03 +02:00
1 parent 9c95e713d2
commit 6333d4d989
4 files changed
+28 -4

No files matched your search

+25 -1
View File
@@ -2,7 +2,31 @@
## [Unreleased]
## [1.32.8] — 2026-07-23
## [1.32.9] — 2026-07-23
The Coach output guard now remembers the numbers you were actually shown across
a whole conversation, so figures you legitimately carry forward stop getting
marked unverified while an invented one still gets caught.
- **A figure from earlier in the chat is no longer flagged when you bring it
back up.** The guard now keeps a running record of every number the Coach was
given this turn and in earlier turns, plus your goal figures, your medication
doses, and the reference bands it was shown. A value it can trace to one of
those is left alone even a few turns later. A value the Coach only wrote in an
earlier reply is never trusted on that basis, so a number that once slipped
through cannot quietly become authoritative later.
- **An educational sentence keeps its numbers.** A line that states a general
guideline, like the note that adults usually need seven to nine hours of
sleep, is recognised as a reference and left intact instead of having its
numbers stripped. This works in every supported language.
- **A dose you are actually on reads as a restatement, a different one does
not.** When the Coach says to keep taking a dose, the reminder is allowed only
when the amount matches a dose on your schedule. A wrong maintenance amount, or
any wording that nudges the dose up or down, is still held back.
- **Fabricated risk numbers are caught in more languages.** The screen that
blocks an invented clinical risk figure or a named risk-engine result now
reads French, Spanish, Italian, and Polish to the same depth it already read
English and German, including a percentage written out in words.
Health records written through the app now carry where they came from, and a
HealthKit sync can say what set it off.
+1 -1
View File
@@ -1,7 +1,7 @@
openapi: 3.1.0
info:
title: HealthLog API
version: 1.32.8
version: 1.32.9
description: >-
Self-hosted personal-health-tracking PWA — public API surface for the iOS native client and external ingest.
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "healthlog",
"version": "1.32.8",
"version": "1.32.9",
"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",
+1 -1
View File
@@ -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.32.8";
/* @sw-version-fallback */ "v1.32.9";
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/*`