feat(planning): make optimization rules composable
Evaluate explicit, ordered optimization configurations through one shared planner model. Add six editable presets, durable one-time legacy migration, and consistent completed and cancelled plan provenance. Include functional regressions and the agreed trace-removal and benchmark follow-up specs. Performance acceptance remains in #78 under unchanged gates. Refs: #70, #71, #72, #73, #74, #75, #76, #77, #78
This commit is contained in:
1 parent
209bf05f36
commit
6811142299
45 files changed
+8795
-3075
No files matched your search
@@ -41,10 +41,11 @@ describe('leave planner benchmark protocol', () => {
|
||||
String(rttRule.startDate) <= String(cpRule.endDate),
|
||||
).toBe(true);
|
||||
const chain = scenarios.find((scenario) => scenario.name === 'chained earned entitlements');
|
||||
expect(chain?.request.rules?.map((rule) => rule.id)).toEqual([
|
||||
'wednesday-holidays',
|
||||
'thursday-consumer',
|
||||
]);
|
||||
expect(
|
||||
chain?.request.rules
|
||||
?.filter(({ type }) => type !== 'optimization')
|
||||
.map((rule) => rule.id),
|
||||
).toEqual(['wednesday-holidays', 'thursday-consumer']);
|
||||
|
||||
const browserWindow = globalThis.window;
|
||||
vi.stubGlobal('window', undefined);
|
||||
|
||||
Reference in new issue
Block a user