mirror of
https://github.com/MBombeck/HealthLog.git
synced 2026-11-12 06:06:10 +00:00
Closes the loop between the hero strip's "Ask the coach" /
suggested-prompt chips and the Coach drawer:
- `<HeroStrip>` gains an `onAskCoach` prop. When supplied, the
"Ask the coach" button drops its disabled state + Coming-soon
tooltip and clicking calls the handler. Older parents that
haven't adopted the drawer still get the disabled affordance —
no breaking change.
- `<SuggestedPrompts>`'s `onPick` already routed up via
`onPickPrompt`; the page wires it to a setter that pre-fills the
drawer's input AND opens it in the same tick.
- `/insights` owns `coachOpen` + `coachPrefill` state. The drawer
mounts with `key={prefill ?? "blank"}` so the lazy `useState`
initialiser fires fresh on every chip transition, sidestepping
the `react-hooks/set-state-in-effect` rule.
Tests:
- Updates the hero-strip ratchet to allow either disabled (no
handler) or enabled (handler supplied) states.
- Adds three guards under `insights-polish.test.ts` that pin the
page-side wiring (CoachDrawer import, hero handler hook-up,
state ownership).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>