feat(cycle): premium cycle ring, BBT chart, and full read-state coverage

Finish the cycle web vertical's signature surfaces:

- Rebuild the cycle wheel to the wellness-ring premium signature — a
  clockwise clock-wipe that draws the phase arcs on from the 12-o'clock
  day-0 origin, a phase-tinted bloom on the active arc, the shared
  specular sheen, a day-number count-up, and a soft current-day marker
  halo. All on the wellness-tile surface, gated once per session and
  zeroed under prefers-reduced-motion.
- Add the basal-body-temperature chart to the predictions tab: the
  current-cycle BBT series with phase-tinted points, fertility signs in
  the tooltip, and an estimated-ovulation reference line (suppressed in
  raw-chart mode). Surface basalBodyTempC + ovulation-test + mucus on the
  calendar day DTO so the chart reads from the existing calendar load.
- Cover the read states the prediction/disclaimer surfaces were missing:
  pass the disclaimer to the predictions panel, render it on the calendar
  tab, add per-tab error + retry, and gate the settings spinner.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Marc-André BombeckandClaude Opus 4.8 committed 2026-06-06 13:09:00 +02:00
1 parent 4b10bdc5da
commit 31a14ce7bf
18 files changed
+906 -117

No files matched your search

+26
View File
@@ -5199,6 +5199,29 @@ components:
type: boolean
confidence:
type: number
basalBodyTempC:
anyOf:
- type: number
- type: "null"
ovulationTest:
anyOf:
- type: string
enum:
- NEGATIVE
- POSITIVE_LH_SURGE
- ESTROGEN_SURGE
- INDETERMINATE
- type: "null"
cervicalMucus:
anyOf:
- type: string
enum:
- DRY
- STICKY
- CREAMY
- WATERY
- EGG_WHITE
- type: "null"
required:
- date
- phase
@@ -5209,6 +5232,9 @@ components:
- flow
- hasSymptoms
- confidence
- basalBodyTempC
- ovulationTest
- cervicalMucus
additionalProperties: false
meta:
type: object