This website requires JavaScript.
b074a32c16
fix: atomic complete_instance check+append
task/complete-instance_1775b4aa
overseer
2026-09-18 06:46:49 -04:00
5e951935d9
feat: complete_instance no-op if already done
overseer
2026-09-18 06:40:22 -04:00
293efe9705
Derive instance state from latest event (Feature 08, task 2) (#89 )
overseer
2026-09-18 06:35:50 -04:00
5c7c07910a
feat: derive instance state from latest completion event
task/instance-state-from-latest-event_32b50fbe
overseer
2026-09-18 06:34:47 -04:00
22797cbc7e
Completion business layer wrapping append-only DAO (Feature 08, task 1) (#88 )
overseer
2026-09-18 06:31:01 -04:00
bf5503e6a5
feat: completion business layer wrapping append-only DAO
task/completion-business-layer_8c814a3d
overseer
2026-09-18 06:30:00 -04:00
743703e943
Merge pull request 'Feature 07: Quest Instance Materialization -> dev' (#85 ) from feature/4a35e972-4c72-405d-8331-ce0776176784-quest-instance-materialization into dev
overseer
2026-09-17 17:19:47 -04:00
6e32761b0c
Guard against stale due_time overwrite (Feature 07 fix) (#87 )
feature/4a35e972-4c72-405d-8331-ce0776176784-quest-instance-materialization
overseer
2026-09-17 17:17:57 -04:00
923cfb6993
fix: skip stale due_time overwrite in upsert_if_valid
task/guard-stale-due-time_f1ce072c
overseer
2026-09-17 17:16:56 -04:00
3add2d2f48
Thread configured horizon_days (Feature 07 integration fix) (#86 )
overseer
2026-09-17 17:07:10 -04:00
b274741b0c
fix: validate horizon_days before delete + wrapper forwarding tests (NQ-86-001, NQ-86-002)
task/thread-horizon-days_2d3c0792
overseer
2026-09-17 17:05:50 -04:00
8ab8260b33
test: prove configured horizon bounds generation (TEST-001)
overseer
2026-09-17 16:56:36 -04:00
0900a29220
feat: thread configured horizon_days through materialization + regeneration
overseer
2026-09-17 16:51:03 -04:00
c001aca62d
End-to-end 28-day generation (Feature 07, task 10) (#84 )
overseer
2026-09-17 16:38:56 -04:00
a0c3d21742
test: correct zero-change contract (distinct stamps, stable keys/ids)
task/end-to-end-generation_a3e67b25
overseer
2026-09-17 16:37:51 -04:00
6024eac529
test: independent explicit oracle + true zero-change + child-scoped override (NQ-84-01..04)
overseer
2026-09-17 16:34:14 -04:00
4d47a24a3d
test: end-to-end 28-day generation across six rule types
overseer
2026-09-17 16:22:37 -04:00
353d88e3af
Clamp start to today (no past instances) (Feature 07, task 9) (#83 )
overseer
2026-09-17 16:12:08 -04:00
57d354b54c
feat: clamp materialize start to today (no past instances)
task/no-past-instances_ba5fd5f0
overseer
2026-09-17 16:10:36 -04:00
f6aad9d20f
HA-local timezone + DST boundary tests (Feature 07, task 8) (#82 )
overseer
2026-09-17 16:06:41 -04:00
72043ae3cf
test: pin HA-local tz in DST tests so UTC-date bugs fail
task/ha-local-timezone_0d4d37de
overseer
2026-09-17 16:04:49 -04:00
20caf4c91b
fix: thread today through definition regen + fold=1 fall-back test (TZ-001, TZ-002)
overseer
2026-09-17 15:58:37 -04:00
d277d5816e
feat: HA-local date source end-to-end + DST boundary tests
overseer
2026-09-17 15:51:54 -04:00
5706d8b7a6
Startup backfill + regenerate service (Feature 07, task 7) (#81 )
overseer
2026-09-17 15:42:10 -04:00
ee9fc6da79
fix: register regenerate service at domain scope, remove on final unload
task/startup-backfill-service_95cbead8
overseer
2026-09-17 15:40:33 -04:00
386f9dc8b6
fix: async_remove service, HA-local today for no-past guard, setup cleanup (NQ-81-001..003)
overseer
2026-09-17 15:34:39 -04:00
0127362ebf
Backfill materialization at setup and expose regenerate service (Feature 07, task 7)
overseer
2026-09-17 15:20:18 -04:00
be6367b600
Schedule the daily generation run at rollover (Feature 07, task 6) (#80 )
overseer
2026-09-17 15:10:57 -04:00
3a15d8077b
fix: cancel both listeners independently on unload (NQ-80-001)
task/schedule-daily-run_3614e2ab
overseer
2026-09-17 15:09:17 -04:00
8bee1bbb41
fix: drop unsupported local kwarg from async_track_time_change (NQ-080-001, NQ-080-002)
overseer
2026-09-17 15:05:51 -04:00
6231344520
feat: schedule daily materialization run at day-rollover time
overseer
2026-09-17 15:02:08 -04:00
ca26ced59f
Regenerate future instances on presence change (Feature 07, task 5) (#79 )
overseer
2026-09-17 14:50:50 -04:00
09a0a08194
fix: regenerate_for_child is child-scoped (no cross-child refresh)
task/regenerate-for-child_f8d5c346
overseer
2026-09-17 14:49:46 -04:00
c1f0d6c27f
fix: single execution-date anchor across delete+rebuild (midnight race)
overseer
2026-09-17 14:45:13 -04:00
46ee78438c
docs: note schedule-delete/clear as a regenerate_for_child hook (NQ-79-001)
overseer
2026-09-17 14:32:04 -04:00
8eb23a3248
feat: regenerate_for_child with child-scoped future delete
overseer
2026-09-17 14:29:25 -04:00
2146531665
Regenerate future instances on definition change (Feature 07, task 4) (#78 )
overseer
2026-09-17 14:24:22 -04:00
b0fcf29f84
feat: regenerate_for_definition and wiring
task/regenerate-for-definition_a0b8b5f7
overseer
2026-09-17 14:22:12 -04:00
168bb7b2f1
Skip completed instances during materialization (Feature 07, task 3) (#77 )
overseer
2026-09-17 14:09:42 -04:00
0f43cb1651
feat: skip completed instances during materialization
task/skip-completed-instances_de5e8223
overseer
2026-09-17 14:08:12 -04:00
4544f78390
Three-run idempotency with stable instance ids (Feature 07, task 2) (#76 )
overseer
2026-09-17 14:04:02 -04:00
b360164dad
test: three-run idempotency with stable instance ids
task/materialize-idempotency_d6a47fcb
overseer
2026-09-17 14:03:06 -04:00
9836a6f524
Core generation walk: assignees x windows fan-out with presence (Feature 07, task 1) (#75 )
overseer
2026-09-17 14:01:20 -04:00
fac9f483ef
fix: store the snapshot due_time, not the live value (NQ-75-CR-002)
task/core-materialize-walk_fde0d4f5
overseer
2026-09-17 13:59:59 -04:00
6df3c72085
fix: atomic materialization upsert validates active/assignee/window (NQ-75-CR-001)
overseer
2026-09-17 13:50:38 -04:00
cc418a997c
fix: single coherent input snapshot and skip-invalidated-tuple (NQ-75-001, NQ-75-002)
overseer
2026-09-17 13:43:42 -04:00
b2ee502946
Implement core materialization walk (Feature 07)
overseer
2026-09-17 13:26:10 -04:00
d6823a54bc
Merge pull request 'Feature 06: Quest Definitions and Assignment -> dev' (#73 ) from feature/b61a578c-2139-486e-af46-77303a185386-quest-definitions-assignment into dev
overseer
2026-09-17 12:10:07 -04:00
fa40e21dc2
Fix feature-integration review findings F06-001 and F06-002 (#74 )
feature/b61a578c-2139-486e-af46-77303a185386-quest-definitions-assignment
overseer
2026-09-17 12:06:47 -04:00
d09ac91ade
test: race coverage for list_definitions_for_child and list_active_definitions (F74-002)
task/f06-integration-fixes_8c5cb85e
overseer
2026-09-17 12:04:50 -04:00
e7daecf970
Fix quest-definition query snapshot coherence and edit error field naming
overseer
2026-09-17 11:55:35 -04:00
e60a9892ff
Tests for the quest definition business layer (Feature 06, task 7) (#72 )
overseer
2026-09-17 09:58:15 -04:00
76d0d50297
Add full-lifecycle test proving quest-definition ops leave history untouched
task/quest-definition-tests_b55cdd5f
overseer
2026-09-17 09:53:42 -04:00
1432dba74c
Quest definition query helpers for materialization (Feature 06, task 6) (#71 )
overseer
2026-09-17 09:49:54 -04:00
1727e07a02
fix: ascending id order in list_definitions_for_child (NQ-71-001)
task/quest-definition-query-helpers_d1492847
overseer
2026-09-17 09:48:27 -04:00
7a9180dc23
Add quest-definition query helpers (list_active, list_for_child, list_firing_on)
overseer
2026-09-17 09:45:53 -04:00
1b6973efd3
Deactivate and reactivate a quest definition (Feature 06, task 5) (#70 )
overseer
2026-09-17 09:40:15 -04:00
dbbe044bef
test: seed pre-existing instance/history and add concurrency test (NQ-70-001, NQ-70-002)
task/deactivate-reactivate-definition_8668303a
overseer
2026-09-17 09:38:37 -04:00
6b17fb160f
Deactivate and reactivate a quest definition (Feature 06, task 5)
overseer
2026-09-17 09:31:45 -04:00
4606d7ddd0
Assign and unassign children on a quest definition (Feature 06, task 4) (#69 )
overseer
2026-09-17 09:21:21 -04:00
58f5ddab72
fix: return assignee roster within the lock (NQ-69-01)
task/assign-unassign-children_696b9b35
overseer
2026-09-17 09:17:35 -04:00
90671815ee
Add assign_child and unassign_child business layer (Feature 06, task 4)
overseer
2026-09-17 09:12:21 -04:00
802258d431
Edit a quest definition's metadata, schedule rule, and windows (Feature 06, task 3) (#68 )
overseer
2026-09-17 09:06:11 -04:00
50b0345e0e
fix: consistent edit snapshot and rollback coverage (CQ-01, CQ-02)
task/edit-quest-definition_b2175f99
overseer
2026-09-17 09:04:31 -04:00
a9e95d8303
Edit a quest definition's metadata, rule, and windows (Feature 06, task 3)
overseer
2026-09-17 08:54:03 -04:00
d9cdac87d7
Create a quest definition with rule, assignees, and windows (Feature 06, task 2) (#67 )
overseer
2026-09-17 08:41:56 -04:00
624cb7a53e
fix: name assignee_child_ids in child validation errors (NQ67-ERR-001)
task/create-quest-definition_707f724c
overseer
2026-09-17 08:39:47 -04:00
f478528c67
fix: require list for assignee_child_ids and windows (NQ67-001)
overseer
2026-09-17 08:35:55 -04:00
71fbbf20e4
fix: reject duplicates, return consistent snapshot, test post-write rollback (NQ-67-01..03)
overseer
2026-09-17 08:30:46 -04:00
7cb03237d8
Implement create_quest_definition business layer (Feature 06, task 2)
overseer
2026-09-17 08:22:51 -04:00
cbd29f5ab7
Map ScheduleRule models to and from schedule_rules storage (Feature 06, task 1) (#66 )
overseer
2026-09-17 08:11:19 -04:00
98e89f8b29
fix: reject invalid ScheduleRule storage shapes (review R66-001, R66-002)
task/map-schedule-rule-storage_6d2a7581
overseer
2026-09-17 08:09:09 -04:00
e92c79b211
feat: map ScheduleRule models to and from schedule_rules storage
overseer
2026-09-17 07:55:03 -04:00
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
overseer
2026-09-16 08:01:05 -04:00
b2f55ffb90
release: advance version to 0.4.0 and add Features 14/03/05 release notes
Joshua King
2026-09-15 19:05:37 -04:00
58b11b59cf
Merge pull request 'Feature 05: Presence and Custody Schedules -> dev' (#64 ) from feature/167e3565-704d-41c7-adf6-3b88ed266f78-presence-custody-schedules into dev
orchestrator-agent
2026-09-15 18:33:54 -04:00
9d21f29eea
Merge pull request 'Year-boundary and leap-year regression test for custody rotation (Feature 05, task 7)' (#63 ) from task/5841f120-parity-regression into feature/167e3565-704d-41c7-adf6-3b88ed266f78-presence-custody-schedules
feature/167e3565-704d-41c7-adf6-3b88ed266f78-presence-custody-schedules
dev_agent
2026-09-15 18:32:45 -04:00
fec607f039
Review fixes: correct 2015 anchor weekday and ISO rollover facts
task/5841f120-parity-regression
Joshua King
2026-09-15 18:31:38 -04:00
a18c0060e4
Review fix: extend the parity walk through the following January
Joshua King
2026-09-15 18:28:39 -04:00
20d7efb04b
Year-boundary and leap-year regression guard (Feature 05, task 7)
Joshua King
2026-09-15 18:25:32 -04:00
6551a87bd6
Merge pull request 'Provide a next-N-present-days preview function (Feature 05, task 6)' (#62 ) from task/7f0190c4-present-preview into feature/167e3565-704d-41c7-adf6-3b88ed266f78-presence-custody-schedules
dev_agent
2026-09-15 18:23:35 -04:00
e9dc0a1445
Test fix: week 0 runs Mon Jan 5 through Sun Jan 11
task/7f0190c4-present-preview
Joshua King
2026-09-15 18:20:42 -04:00
1bb0617471
Next-N-present-days preview (Feature 05, task 6)
Joshua King
2026-09-15 18:19:53 -04:00
221ab2c20b
Merge pull request 'Make overrides take precedence over the repeating pattern (Feature 05, task 5)' (#61 ) from task/6a1e14aa-override-precedence into feature/167e3565-704d-41c7-adf6-3b88ed266f78-presence-custody-schedules
dev_agent
2026-09-15 18:17:40 -04:00
bdf3513609
Test fix: build the frozen-snapshot engine on the caller's list
task/6a1e14aa-override-precedence
Joshua King
2026-09-15 18:16:40 -04:00
830d663a45
Test fix: tuples raise AttributeError for append, not TypeError
Joshua King
2026-09-15 18:15:13 -04:00
bff2f4ff5e
Review fix: freeze the engine's overrides snapshot
Joshua King
2026-09-15 18:13:48 -04:00
8f04d93363
Overrides take precedence over the pattern (Feature 05, task 5)
Joshua King
2026-09-15 18:12:16 -04:00
d9326deeb5
Merge pull request 'Implement presence overrides for holidays and swapped weeks (Feature 05, task 4)' (#60 ) from task/46a867a4-override-overlap into feature/167e3565-704d-41c7-adf6-3b88ed266f78-presence-custody-schedules
dev_agent
2026-09-15 18:08:07 -04:00
94f54523f9
Review fix: gate the override race test inside A's transaction
task/46a867a4-override-overlap
Joshua King
2026-09-15 18:06:44 -04:00
51b1388233
Fix: inverted ranges skip the overlap probe and hit the schema CHECK
Joshua King
2026-09-15 18:03:49 -04:00
744a40dcb5
Presence override overlap rejection naming the conflict (Feature 05, task 4)
Joshua King
2026-09-15 18:03:00 -04:00
e15648232f
Merge pull request 'Implement is_present with always-present default (Feature 05, task 3)' (#59 ) from task/5059d16c-is-present into feature/167e3565-704d-41c7-adf6-3b88ed266f78-presence-custody-schedules
dev_agent
2026-09-15 18:00:06 -04:00
6d48f433b7
Review fix: validate engine keys as child ids; every-day three-child walk
task/5059d16c-is-present
Joshua King
2026-09-15 17:58:51 -04:00
540f59a353
PresenceEngine with is_present and the always-present default (Feature 05, task 3)
Joshua King
2026-09-15 17:57:02 -04:00
ee994a3938
Merge pull request 'Implement anchor-date cycle position arithmetic (Feature 05, task 2)' (#58 ) from task/06cc4782-cycle-arithmetic into feature/167e3565-704d-41c7-adf6-3b88ed266f78-presence-custody-schedules
dev_agent
2026-09-15 17:55:21 -04:00
77c4db7b3c
Review fix: hardcode independently derived boundary expectations
task/06cc4782-cycle-arithmetic
Joshua King
2026-09-15 17:54:25 -04:00
5885d5e972
Anchor-date cycle position arithmetic (Feature 05, task 2)
Joshua King
2026-09-15 17:51:28 -04:00
7ae4018e59
Merge pull request 'Define the PresenceSchedule model with validation (Feature 05, task 1)' (#57 ) from task/ede1dc76-presence-model into feature/167e3565-704d-41c7-adf6-3b88ed266f78-presence-custody-schedules
dev_agent
2026-09-15 17:48:35 -04:00
cb3c347d61
Review fix: reject datetime anchors, freeze the pattern mapping
task/ede1dc76-presence-model
Joshua King
2026-09-15 17:46:30 -04:00