Decide quest-log overdue from the panel's own local clock
The kids' Quest Log rendered OVERDUE from the API's per-instance `overdue` flag, which is computed on whatever wall clock the API resolves for the household. When that clock is UTC (HA `time_zone` UTC, a pre-0.9.6 API/integration, or a stored zone adopted over), an 8:15 AM quest reads OVERDUE at 7:15 AM America/New_York. The card now marks an open quest overdue when its `due_time` wall time has arrived on the panel browser's local clock (`_now`, a reactive state ticking every 60 s; `>=` so it flips on the due minute). With no `due_time` a quest is never overdue, matching the API's rule. The API's `overdue` field is unchanged for admin and automation consumers; the card simply no longer reads it. The jsdom quest-log harness can now pin the clock (`now`) and fire the card's own clock tick at later instants (`advance_to`), and the Python helper sets the node process `TZ`. Task: fd1093b5-e6ae-47e6-aee9-1e8f5ee74e3f Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in: