Skip to content
SkyRosterBook a working session

Rule catalogue · Data integrity

A swap stays inside one published roster

Breaking it exchanges shifts belonging to two different rosters, which leaves neither of them internally consistent.

Applies
when someone asks to exchange a shift
Enforcement
Hard: never broken
Who sets it
Fixed in the product
Roster style
published baseline (shift exchange)

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.