Skip to content
SkyRosterBook a working session

Rule catalogue · Data integrity

Assignments already worked cannot be reassigned

Breaking it rewrites a shift somebody has already worked, so the roster stops matching what actually happened.

Applies
when the month's roster is built
Enforcement
Hard: never broken
Who sets it
Fixed in the product
Roster style
no-rotation (day-by-day)

verifiedCompiled from the product source on 12 September 2026

What data integrity rules protect

Not every rule is about people. This family holds the structural invariants: an assignment cannot exist in two places at once, history cannot be rewritten, a swap has to be aligned on both sides. They are mostly fixed in code rather than configurable, because they are not policy choices. They are the difference between a roster and a spreadsheet that looks like one.