The application timezone is now only ever set by an admin saving it:
- API: drop adopt_reported_timezone; the panel household clock reads the
stored settings only and ignores any timezone request header.
- Integration: stop reporting Home Assistant's time_zone in an
X-NestQuest-Timezone header (snapshot, completion and SSE requests).
- Admin app: remove the browser-zone detection and the automatic PATCH
on load; the timezone field stays a manual control.
- Remove the timezone_configured marker from the core settings, the
settings store and the admin settings API. A stored document that
still carries the key loads harmlessly (unknown keys are ignored).
Tests replace the adoption expectations with proofs that a panel
timezone header never changes the stored settings, a fresh install's
empty zone stays empty with no settings write, the admin settings carry
no timezone_configured, and a manual admin timezone PATCH persists.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The setup except path closes the database; the coordinator created
above it now shuts down first so no listener can fire against the
closed connection. Regression test included.
One refresh pass builds the whole entity snapshot: active children,
today's instances with derived open/done/missed states, per-child
presence via the PresenceEngine (records converted to model objects),
rollup counts, and the custody cycle day. Interval configurable via
the new update_interval option, default five minutes.