overseer
ec7c8d4bc2
Coordinator polls the API snapshot and rebuilds the sensors' data
...
Feature 18: the shared coordinator's refresh pass now fetches
GET /api/v1/panel/snapshot through the NestQuestApiClient and
reconstructs the exact core dataclasses (NestQuestSnapshot,
ChildDaySnapshot, QuestInstanceView) the Feature 10 entities read, so
sensor.py and binary_sensor.py are untouched and every entity_id and
attribute payload keeps its shape.
Why: the integration becomes an API client of the NestQuest service
instead of a second reader of the SQLite file, and the panel cards and
the four blueprints keep working without changes.
- snapshot_from_api_payload maps the route's JSON back onto the
dataclasses field by field (state 'completed' -> 'done' so
instance_payload renders 'completed' again; counts, presence,
next_present, overdue, on_time, completed_at pass through verbatim;
due_date is stamped from today_iso, the only date the route serves).
- The panel payload omits missed instances (D-009), so
admin_instances can no longer carry missed rows — the admin surface
for missed quests is the PWA reading the API directly. Documented in
the module docstring and pinned by tests.
- An unconfigured panel token (the shipped default) gets a typed-error
stub instead of a construction crash: setup succeeds, the first
refresh fails cleanly, entities come up unavailable and HA's retry
cycle applies. Fetch failures log the typed error and mark the
entities unavailable while data keeps its last good snapshot.
- The runtime record registers before the first refresh so the refresh
path always finds the live entry state; the update interval and the
serialized forced-refresh behaviour are unchanged.
- Tests: a fixture snapshot drives the coordinator (stub client, no
network) asserting per-child values, household rollups, cycle day,
and the exact instance payload shape, plus unconfigured and
failed-fetch cases; DB-seeded tests ride a lazy local-snapshot
client through the same JSON path.
2026-09-23 06:02:26 -04:00
overseer
3ee4c99e5f
Merge pull request 'Dev - add in logos' ( #139 ) from dev into main
...
Reviewed-on: #139
2026-09-21 10:44:43 -04:00
overseer
d4ea552ad7
Merge pull request 'Upload files to "design/logos"' ( #138 ) from design/adding-logos into dev
...
Reviewed-on: #138
2026-09-21 10:44:12 -04:00
overseer
4e52e8dec8
Upload files to "design/logos"
2026-09-21 10:44:01 -04:00
overseer
ee1fae984a
Merge pull request 'Fix SensorDeviceClass.PERCENTAGE removed in HA 2025+' ( #137 ) from fix/sensor-device-class-percentage into main
...
Reviewed-on: #137
2026-09-21 10:02:34 -04:00
overseer
418fc69f36
Remove removed SensorDeviceClass.PERCENTAGE
2026-09-21 10:02:08 -04:00
overseer
b6b1ba65b4
Merge pull request 'Point HACS URLs at Maniacs-Mansion/NestQuest' ( #136 ) from fix/hacs-repo-urls into main
...
Reviewed-on: #136
2026-09-21 07:52:09 -04:00
overseer
37f7d25cd6
Point HACS URLs at Maniacs-Mansion/NestQuest
2026-09-21 07:47:52 -04:00
overseer
fe71d37bb0
Merge pull request 'Promote Feature 12 to main' ( #135 ) from dev into main
...
Reviewed-on: #135
2026-09-21 06:57:15 -04:00
overseer
edca25affa
Add the Lit card toolchain and auto-register the Lovelace bundle
2026-09-20 10:08:38 -04:00
overseer
a6d9ec927b
Merge pull request 'Release: Features 06, 07, 08 (2026-09-18)' ( #97 ) from release/2026-09-18-f06-f07-f08 into main
...
Reviewed-on: #97
2026-09-18 14:54:48 -04:00
overseer
bcdf03dac7
merge: origin/main into 0.5.0 release (keep 0.5.0 versions and notes)
2026-09-18 14:15:15 -04:00
overseer
52cbf33f33
release: advance version to 0.5.0 and add Features 06/07/08 release notes
2026-09-18 14:14:36 -04:00
overseer
c4fb2fbac5
Merge pull request 'Feature 08: Quest Completion and Event Log -> dev' ( #95 ) from feature/a526b715-1fd2-4688-9696-a7eeb45f1644-quest-completion-event-log into dev
2026-09-18 07:14:05 -04:00
overseer
0820544fce
Completion lifecycle tests (Feature 08, task 7) ( #94 )
2026-09-18 07:12:47 -04:00
overseer
318d77f443
Derive missed for past-due open instances (Feature 08, task 6) ( #93 )
2026-09-18 07:09:21 -04:00
overseer
2ec016ebfe
Compute was_on_time at completion (Feature 08, task 5) ( #92 )
2026-09-18 07:02:29 -04:00
overseer
c3495bb277
uncomplete_instance reversal event (Feature 08, task 4) ( #91 )
2026-09-18 06:52:42 -04:00
overseer
775a9906e7
complete_instance (Feature 08, task 3) ( #90 )
2026-09-18 06:47:45 -04:00
overseer
293efe9705
Derive instance state from latest event (Feature 08, task 2) ( #89 )
2026-09-18 06:35:50 -04:00
overseer
22797cbc7e
Completion business layer wrapping append-only DAO (Feature 08, task 1) ( #88 )
2026-09-18 06:31:01 -04:00
overseer
743703e943
Merge pull request 'Feature 07: Quest Instance Materialization -> dev' ( #85 ) from feature/4a35e972-4c72-405d-8331-ce0776176784-quest-instance-materialization into dev
2026-09-17 17:19:47 -04:00
overseer
6e32761b0c
Guard against stale due_time overwrite (Feature 07 fix) ( #87 )
2026-09-17 17:17:57 -04:00
overseer
3add2d2f48
Thread configured horizon_days (Feature 07 integration fix) ( #86 )
2026-09-17 17:07:10 -04:00
overseer
c001aca62d
End-to-end 28-day generation (Feature 07, task 10) ( #84 )
2026-09-17 16:38:56 -04:00
overseer
353d88e3af
Clamp start to today (no past instances) (Feature 07, task 9) ( #83 )
2026-09-17 16:12:08 -04:00
overseer
f6aad9d20f
HA-local timezone + DST boundary tests (Feature 07, task 8) ( #82 )
2026-09-17 16:06:41 -04:00
overseer
5706d8b7a6
Startup backfill + regenerate service (Feature 07, task 7) ( #81 )
2026-09-17 15:42:10 -04:00
overseer
be6367b600
Schedule the daily generation run at rollover (Feature 07, task 6) ( #80 )
2026-09-17 15:10:57 -04:00
overseer
ca26ced59f
Regenerate future instances on presence change (Feature 07, task 5) ( #79 )
2026-09-17 14:50:50 -04:00
overseer
2146531665
Regenerate future instances on definition change (Feature 07, task 4) ( #78 )
2026-09-17 14:24:22 -04:00
overseer
168bb7b2f1
Skip completed instances during materialization (Feature 07, task 3) ( #77 )
2026-09-17 14:09:42 -04:00
overseer
4544f78390
Three-run idempotency with stable instance ids (Feature 07, task 2) ( #76 )
2026-09-17 14:04:02 -04:00
overseer
9836a6f524
Core generation walk: assignees x windows fan-out with presence (Feature 07, task 1) ( #75 )
2026-09-17 14:01:20 -04:00
overseer
d6823a54bc
Merge pull request 'Feature 06: Quest Definitions and Assignment -> dev' ( #73 ) from feature/b61a578c-2139-486e-af46-77303a185386-quest-definitions-assignment into dev
2026-09-17 12:10:07 -04:00
overseer
fa40e21dc2
Fix feature-integration review findings F06-001 and F06-002 ( #74 )
2026-09-17 12:06:47 -04:00
overseer
e60a9892ff
Tests for the quest definition business layer (Feature 06, task 7) ( #72 )
2026-09-17 09:58:15 -04:00
overseer
1432dba74c
Quest definition query helpers for materialization (Feature 06, task 6) ( #71 )
2026-09-17 09:49:54 -04:00
overseer
1b6973efd3
Deactivate and reactivate a quest definition (Feature 06, task 5) ( #70 )
2026-09-17 09:40:15 -04:00
overseer
4606d7ddd0
Assign and unassign children on a quest definition (Feature 06, task 4) ( #69 )
2026-09-17 09:21:21 -04:00
overseer
802258d431
Edit a quest definition's metadata, schedule rule, and windows (Feature 06, task 3) ( #68 )
2026-09-17 09:06:11 -04:00
overseer
d9cdac87d7
Create a quest definition with rule, assignees, and windows (Feature 06, task 2) ( #67 )
2026-09-17 08:41:56 -04:00
overseer
cbd29f5ab7
Map ScheduleRule models to and from schedule_rules storage (Feature 06, task 1) ( #66 )
2026-09-17 08:11:19 -04:00
overseer
43a7a722b9
Merge pull request 'Release: Features 14, 03, 05 — quest model, children registry, presence engine (2026-09-15)' ( #65 ) from release/2026-09-15-f14-f03-f05 into main
...
Reviewed-on: #65
2026-09-16 08:01:05 -04:00
overseer
cdfb681f46
Merge pull request 'Dev' ( #44 ) from dev into main
...
Reviewed-on: #44
2026-09-14 21:36:40 -04:00
overseer
3ecca2d212
Merge pull request 'Feat/ui design tokens' ( #43 ) from feat/ui-design-tokens into dev
...
Reviewed-on: #43
2026-09-14 21:32:14 -04:00
overseer
30d103aefb
Upload files to "design/tokens"
2026-09-14 21:31:55 -04:00
overseer
658afec491
adding in design files
2026-09-14 21:31:32 -04:00
overseer
0637245d33
Merge pull request 'Release: Feature 04 — Recurrence Rule Engine (2026-09-14)' ( #34 ) from release/2026-09-14-f04-recurrence into main
...
Reviewed-on: #34
2026-09-14 15:14:22 -04:00
overseer
a30bafcb68
Merge pull request 'Release: Feature 02 — SQLite Data Layer (2026-09-14)' ( #24 ) from release/2026-09-14-f02-data-layer into main
...
Reviewed-on: #24
Reviewed-by: The Approver <19+approver_agent@code.cubecraftcreations.com >
Reviewed-by: The Reviewer <18+review_agent@code.cubecraftcreations.com >
2026-09-14 10:22:17 -04:00
overseer
5e65cde078
Merge pull request 'Release: Feature 01 — Integration Scaffold (2026-09-13)' ( #11 ) from release/2026-09-13-f01-scaffold into main
...
Reviewed-on: #11
2026-09-13 19:54:16 -04:00
overseer
ec888b6426
Merge pull request 'docs: add HACS repository metadata and developer setup docs' ( #3 ) from task/b1a42fd5-1911-4ee5-97ba-d4ab9da9d918-hacs-metadata-and-docs into feature/58fafd51-67e5-4691-8b37-cf0bb545207c-integration-scaffold
...
Reviewed-on: #3
2026-09-13 09:32:14 -04:00