refactor(planning): consolidate plan observations in one module #282
Notifications
Due Date
No due date set.
Blocks
Depends on
#283 perf(planning): update plan observations incrementally
nessar/vac-optimizer
#280 test(planning): compare the engine against a frozen engine on random requests
nessar/vac-optimizer
Reference: nessar/vac-optimizer#282
Reference in new issue
Block a user
Parent
#279
What to build
Consolidate a plan's observations inside the planning core into one internal module: what the planning objectives see of a plan, namely time-off periods, work sequences, public-holiday weeks, leave-balance observations and the placement tie key. Candidate scoring, plan statistics and stable plan explanations read observations only through this module. This is a structure-only change: planning results and speed are unchanged. It is the prefactor that makes incremental observations a contained change.
Acceptance criteria
Blocked by
Done in PR #287 (
87d7206): plan observations live in src/app/services/plan-observations.ts. Structure-only; all seven scenarios byte-identical, protocol 262.0 s before and after. Details: docs/benchmark/issue-279.md.