mirror of
https://github.com/MBombeck/HealthLog.git
synced 2026-11-12 14:16:12 +00:00
merge(oura): real sleep timeline, SpO2, sleep score, temperature deviation, contributors + reconcile
# Conflicts: # docs/api/openapi.yaml # messages/de.json # messages/en.json # messages/es.json # messages/fr.json # messages/it.json # messages/pl.json # prisma/schema.prisma # src/components/measurements/measurement-list-meta.ts # src/lib/__tests__/measurement-type-enum-coverage.test.ts # src/lib/insights/chart-tokens.ts # src/lib/measurements/__tests__/apple-health-mapping.test.ts # src/lib/measurements/categories.ts # src/lib/personal-records/pr-direction.ts # src/lib/validations/measurement.ts
This commit is contained in:
commit
2736e23092
26 files changed
+873
-50
No files matched your search
@@ -0,0 +1,20 @@
|
||||
-- v1.17.1 — Oura coverage completion (additive).
|
||||
--
|
||||
-- Two new `measurement_type` enum values so the Oura sync can store signals it
|
||||
-- already fetches (or now fetches) but had no home for:
|
||||
--
|
||||
-- 1. `SLEEP_SCORE` — Oura's headline 0–100 Sleep Score from the
|
||||
-- `daily_sleep` collection (distinct from the per-stage `sleep` detail).
|
||||
-- Kept apart from the WHOOP `SLEEP_PERFORMANCE` / `SLEEP_EFFICIENCY`
|
||||
-- sub-scores so two vendors' headline numbers never share a bucket.
|
||||
-- 2. `BODY_TEMPERATURE_DEVIATION` — Oura's nightly body-temperature deviation
|
||||
-- from the user's personal baseline (`daily_readiness.temperature_deviation`),
|
||||
-- a SIGNED °C offset (illness / luteal-phase / stress signal). It is NOT an
|
||||
-- absolute reading, so it cannot share the BODY_TEMPERATURE /
|
||||
-- SKIN_TEMPERATURE / WRIST_TEMPERATURE absolute-temperature buckets.
|
||||
--
|
||||
-- Purely-additive: two enum extensions, no backfill, no existing row touched,
|
||||
-- no new tables or columns. Both stored as `source = OURA`.
|
||||
|
||||
ALTER TYPE "measurement_type" ADD VALUE IF NOT EXISTS 'SLEEP_SCORE';
|
||||
ALTER TYPE "measurement_type" ADD VALUE IF NOT EXISTS 'BODY_TEMPERATURE_DEVIATION';
|
||||
@@ -784,6 +784,18 @@ enum MeasurementType {
|
||||
// each device-native value keeps its own bucket and native scale.
|
||||
ANS_CHARGE // score — Polar Nightly Recharge `ans_charge`. The HRV-based autonomic-nervous-system charge (typically ~-10..+10 around the personal baseline; higher = more recovered). Descriptive, not a clinical assessment.
|
||||
CARDIO_LOAD // score — Polar Training Load Pro `cardio_load`. The session/day cardiovascular load (TRIMP-lineage strain). Distinct from WHOOP DAY_STRAIN (0–21) and the COMPUTED STRAIN_SCORE so the device-native value never shares a bucket.
|
||||
// ── v1.17.1 — Oura coverage completion (additive) ──
|
||||
// Oura's headline 0–100 Sleep Score from the `daily_sleep` collection
|
||||
// (distinct from the per-stage `sleep` detail). Stored as `source = OURA`,
|
||||
// unit `score`. Kept apart from SLEEP_PERFORMANCE / SLEEP_EFFICIENCY (WHOOP
|
||||
// sub-scores) so two vendors' headline numbers never share a bucket.
|
||||
SLEEP_SCORE // score (0–100) — Oura `daily_sleep.score`. Per-night sleep quality headline.
|
||||
// Oura nightly body-temperature deviation from the user's personal baseline
|
||||
// (`daily_readiness.temperature_deviation`), in °C. NOT an absolute
|
||||
// temperature — a signed offset (illness / luteal-phase / stress signal),
|
||||
// so it cannot share the BODY_TEMPERATURE / SKIN_TEMPERATURE / WRIST_TEMPERATURE
|
||||
// absolute-reading buckets. Plausible band is small and centred on 0.
|
||||
BODY_TEMPERATURE_DEVIATION // celsius (signed deviation) — Oura `daily_readiness.temperature_deviation`.
|
||||
|
||||
@@map("measurement_type")
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user