mirror of
https://github.com/MBombeck/HealthLog.git
synced 2026-11-08 20:42:43 +00:00
`scoreBasis` rides the composite, the dashboard snapshot's flattened hero block and the daily digest's score. It says how many distinct areas of health the number counted, how many the method recommends, which tier that lands in, and whether any counted pillar was a physiological measurement. Optional everywhere, because two of the three surfaces are served out of a cache and a payload written before this release cannot grow a field. The snapshot and digest blocks have taken six additive fields this way already; this is the seventh. Resolved on the server for the same reason `configured` is. Counting `composition` client-side would get it wrong more often than right — three of the seven pillars share the cardiometabolic area, so a three-pillar score can rest on one. One shared component, `HealthScoreBasis`, declared once in the insights schema module and referenced from the other two registry modules, rather than three inline copies that drift the first time the block gains a field. Declared through the assigning `.meta()` form: a bare `.meta()` statement registers an instance nothing references, and the id then never becomes a component. The composite's `insufficient` reason narrows to the single value `no_usable_data` and says so in the published description. That field is an open string in the document, so the change is additive on the wire even though the value space shrank. The score-config 422 description drops the two retired reasons and states plainly that the empty selection is now the only refusal, so a client does not keep a three-area rule of its own in front of a write that no longer has one.
2.3 MiB
2.3 MiB