Skip to content

P8 scheduler: deadline risk uses exact deadline and arrival instants - #19

Merged
aaneyasabharwal merged 1 commit into
fix/prototype-flawsfrom
task/p8-scheduling-correctness
Nov 14, 2026
Merged

aaneyasabharwal merged 1 commit into
fix/prototype-flawsfrom
task/p8-scheduling-correctness

Conversation

@aaneyasabharwal

Copy link
Copy Markdown
Owner

The workflow floored the deadline to a whole forecast hour, and the engine measured a window in the arrival slot from the start of that hour:

  • a window ending 32 min before the deadline was treated as having zero slack (50 % miss risk at cv > 0) and rejected (over-conservative);
  • an immediate start was measured up to an hour early, understating its risk. The floor masked this: fixing the deadline alone would have recommended a window with ~34 % true risk under a 5 % tolerance.

Fix: fractional deadline and an arrival offset (arrivalOffsetHours) so P(miss) uses the true slack. Whole-hour inputs (benchmark replays) are unchanged. 6 regression tests (both cases, the deterministic 1-minute boundary, whole-hour behaviour, validation); methodology documented. CI 4/4 green.

Not merged, not deployed; main untouched.

🤖 Generated with Claude Code

…s [P8]

The workflow floored the deadline to a whole forecast hour and the engine
measured a window in the arrival slot from the start of that hour:
- a window ending 32 min before the deadline was treated as having zero
  slack (50 % miss risk at cv > 0) and was rejected (over-conservative);
- an immediate start was measured up to an hour early, so its risk was
  understated. The floor masked this; fixing the deadline alone would have
  recommended a window with ~34 % true risk under a 5 % tolerance.

Now the deadline is fractional and the arrival slot carries its offset
(arrivalOffsetHours), so P(miss) uses the true slack. Whole-hour inputs
(benchmark replays) are unchanged. Regression tests for both cases, the
deterministic boundary (1 min early/late), whole-hour behaviour and input
validation. Methodology documented.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
@aaneyasabharwal
aaneyasabharwal merged commit 50a268f into fix/prototype-flaws Nov 14, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant