mirror of
https://github.com/MBombeck/HealthLog.git
synced 2026-11-11 05:42:19 +00:00
feat(cycle): exclude disturbed temperatures from the symptothermal engine
A fever, illness, alcohol or a late/short-sleep reading can fake or mask a temperature rise. Add a per-day `temperatureExcluded` flag on CycleDayLog (migration 0156): when set, the engine drops the reading from the cover-line baseline AND the shift evaluation, so a spike neither fabricates nor masks a rise (Sensiplan: the cover line is drawn over the last six unbracketed values). Wired end to end — schema + Prisma, the engine's `detectTempShift` filter, the Zod input/patch schemas, the day-log upsert (partial merge + change detection), the read DTO, the calendar/insights/coach selects, the backup round-trip, and the OpenAPI contract (a new boolean on the day-log and calendar-day DTOs for the iOS client). The log-day sheet gains a "mark reading as disturbed" toggle that appears once a temperature is entered, translated across all six locales. Citation: de.wikipedia "Symptothermale Methode"; myNFP "Temperaturkurve auswerten" — Störfaktor bracketing.
This commit is contained in:
1 parent
cd55c60fae
commit
4bfe9f11d7
27 files changed
+199
-7
No files matched your search
@@ -117,6 +117,8 @@ paths:
|
||||
type: number
|
||||
minimum: 30
|
||||
maximum: 45
|
||||
temperatureExcluded:
|
||||
type: boolean
|
||||
ovulationTest:
|
||||
type: string
|
||||
enum:
|
||||
@@ -252,6 +254,8 @@ paths:
|
||||
minimum: 30
|
||||
maximum: 45
|
||||
- type: "null"
|
||||
temperatureExcluded:
|
||||
type: boolean
|
||||
ovulationTest:
|
||||
anyOf:
|
||||
- type: string
|
||||
@@ -412,6 +416,8 @@ paths:
|
||||
type: number
|
||||
minimum: 30
|
||||
maximum: 45
|
||||
temperatureExcluded:
|
||||
type: boolean
|
||||
ovulationTest:
|
||||
type: string
|
||||
enum:
|
||||
@@ -6240,6 +6246,8 @@ components:
|
||||
anyOf:
|
||||
- type: number
|
||||
- type: "null"
|
||||
temperatureExcluded:
|
||||
type: boolean
|
||||
ovulationTest:
|
||||
anyOf:
|
||||
- type: string
|
||||
@@ -6333,6 +6341,7 @@ components:
|
||||
- flow
|
||||
- intermenstrualBleeding
|
||||
- basalBodyTempC
|
||||
- temperatureExcluded
|
||||
- ovulationTest
|
||||
- cervicalMucus
|
||||
- sexualActivity
|
||||
@@ -6647,6 +6656,8 @@ components:
|
||||
anyOf:
|
||||
- type: number
|
||||
- type: "null"
|
||||
temperatureExcluded:
|
||||
type: boolean
|
||||
ovulationTest:
|
||||
anyOf:
|
||||
- type: string
|
||||
@@ -6677,6 +6688,7 @@ components:
|
||||
- hasSymptoms
|
||||
- confidence
|
||||
- basalBodyTempC
|
||||
- temperatureExcluded
|
||||
- ovulationTest
|
||||
- cervicalMucus
|
||||
additionalProperties: false
|
||||
|
||||
Reference in new issue
Block a user