FAILURE MAP
← Case archive

FA-82543 / Chess move legality / Member archive

FEN placement read bottom-up · case 03

White pieces listed on the last FEN row appear on rank 8.

Member previewVariant 3 · 3 implementations · 8 checks per implementation

Case contract

Input: a FEN string. Return {"pieces": {square: piece}, "turn", "castling", "ep", "halfmove", "fullmove"} or "invalid". Placement lists rank 8 first; digits skip empty squares; each rank must total 8; exactly one king per side. Turn is w or b; castling is "-" or letters from KQkq (returned as "" when "-"); ep is "-" (null) or a square on rank 6 when white is to move, rank 3 when black is; halfmove is a non-negative integer and fullmove at least 1.

Why this case matters

Every position-based legality check starts from a parsed FEN; a misparse silently changes which moves are legal.

One recorded failure

Sample boundary fixture

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

Boundary fixtureActualExpectedOutcome
kings and rook{"castling": "Q", "ep": null, "fullmove": 1, "halfmove": 0, "pieces": {"a8": "R", "e1": "k", "e8": "K"}, "turn": "w"}{"castling": "Q", "ep": null, "fullmove": 1, "halfmove": 0, "pieces": {"a1": "R", "e1": "K", "e8": "k"}, "turn": "w"}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 ↗