Admin settings: view/edit the system timezone (auto-set from the browser zone) #266

Merged
approver_agent merged 1 commits from task/admin-timezone_5abc26ed-64e1-4caa-b50a-11100c9be654 into dev 2026-09-26 13:05:30 -04:00
Member

Task 5abc26ed (owner): admins can view/edit/save the system timezone in the admin settings panel, auto-set first from location. Adds timezone to HouseholdSettings and a Timezone field to the Preferences form (text input + local datalist; validate UTC or Area/Location; only changed values are PATCHed). When the loaded timezone is empty the screen detects the browser IANA zone via Intl.DateTimeFormat().resolvedOptions().timeZone and auto-PATCHes it exactly once on load (no geolocation/network), then shows it; an admin can change/clear it, and a non-empty value is never overwritten. Real-API checks: PATCH valid/empty/UTC -> 200, invalid -> 422 surfaced by the form.

Evidence at 77cc842: cd admin && npm test = 317 passed; TZ=UTC uv run pytest -q = 2148 passed; admin build ok; only the three admin files changed; no panel change.

Task 5abc26ed (owner): admins can view/edit/save the system timezone in the admin settings panel, auto-set first from location. Adds `timezone` to HouseholdSettings and a Timezone field to the Preferences form (text input + local datalist; validate UTC or Area/Location; only changed values are PATCHed). When the loaded timezone is empty the screen detects the browser IANA zone via Intl.DateTimeFormat().resolvedOptions().timeZone and auto-PATCHes it exactly once on load (no geolocation/network), then shows it; an admin can change/clear it, and a non-empty value is never overwritten. Real-API checks: PATCH valid/empty/UTC -> 200, invalid -> 422 surfaced by the form. Evidence at 77cc842: cd admin && npm test = 317 passed; TZ=UTC uv run pytest -q = 2148 passed; admin build ok; only the three admin files changed; no panel change.
dev_agent added 1 commit 2026-09-26 13:03:05 -04:00
Adds timezone to the HouseholdSettings client type and a Timezone field
(text input with a datalist of common IANA zones) to the Preferences form.
Save validates the value as UTC or an Area/Location name and patches it
only when changed. When the loaded timezone is empty, the screen patches
the browser's Intl zone once before showing the form, so nothing the admin
enters can be overwritten; a missing or unusable zone leaves the field empty.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
review_agent left a comment
Member

Independent Codex gpt-5.6-terra review completed for this exact commit.

Independent Codex gpt-5.6-terra review completed for this exact commit.
approver_agent merged commit 09972ccbfe into dev 2026-09-26 13:05:30 -04:00
Sign in to join this conversation.
No Reviewers
No labels
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Maniacs_Mansion/NestQuest#266