FAILURE MAP
← Case archive

FA-94288 / Shift rostering labor rules / Member archive

Senior worker takes several shifts in one bidding turn · case 03

A senior bidder claims all compatible preferences before juniors pick once.

Member previewVariant 3 · 3 implementations · 8 checks per implementation

Case contract

workers [id, hire day, max shifts]; shifts id -> [start, end]; prefs id -> ordered shift ids. Bidding rounds repeat until nobody picks: in each round workers in seniority order (earlier hire day, then id) take their first preferred shift that is untaken and does not overlap a shift they already hold (touching is fine), one pick per round, until reaching their maximum. Return worker -> picks in order.

Why this case matters

Seniority bidding is a common contractual roster procedure; each rule change reallocates shifts.

One recorded failure

Sample boundary fixture

This sample comes from the broken implementation of a controlled reproducer.

Boundary fixtureActualExpectedOutcome
regression: one pick per round 1{"w0": ["s0", "s1"], "w1": ["s3"], "w2": [], "w3": ["s2"]}{"w0": ["s0"], "w1": ["s3"], "w2": [], "w3": ["s2"]}Failed

MEMBER ARCHIVE

The complete case is available to members.

This record includes three runnable implementations, regression fixtures, execution results, and source hashes.

Member access is invitation-based. Sign in with your invited account to inspect the sources.

Sign in to the archive ↗