Hard constraints
Hard constraints are rules that every valid roster must satisfy. A roster that violates any hard constraint is rejected entirely — the engine will not return it, even if it scores well on soft preferences.
If no roster can satisfy all hard constraints simultaneously, the engine returns an infeasible result with a list of the specific dates and rules that caused the conflict.
Assignment
Coverage
- Minimum shift coverage
- Maximum shift coverage
- Maximum working employees per day
- Date-range coverage overrides
- Regular shift assigned after core shifts
Leave
- Typed leave must be honored exactly
- Annual and comp-off only on requested dates
- Comp-off cannot exceed valid balance
- Leave capacity gate per day