FAILURE MAP
← Case archive

FA-94522 / Exam timetabling constraints / Member archive

Seating order sorts surnames case-sensitively · case 02

Lower-case surnames are seated after every capitalised surname.

Member previewVariant 2 · 3 implementations · 8 checks per implementation

Case contract

Candidates [id, surname, given, access flag], rooms [room, rows, cols]. Non-access candidates are sorted by case-folded surname, case-folded given name, then id, and take alternate seats (even row and even column indices) room by room in row-major order, labelled room-<row letter><column number>; candidates beyond the seats are UNSEATED. Access candidates go to SEP-1, SEP-2... in the same order. Return id -> seat.

Why this case matters

Seating plans are generated from the timetable's room allocation and must be deterministic and fair.

One recorded failure

Sample boundary fixture

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

Boundary fixtureActualExpectedOutcome
regression: surname casefold 1{"C05": "H0-A5", "C62": "SEP-1", "C75": "H0-A3", "C85": "H0-A1"}{"C05": "H0-A3", "C62": "SEP-1", "C75": "H0-A5", "C85": "H0-A1"}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 ↗