Understand the failure.
Verify the repair.
Small, reproducible software failures. The broken implementation, the fix that didn’t work, and the one that passed—preserved together.
Explore the cases ↓How results are verified ↗WHAT THE ARCHIVE CONTAINS
100840 executable cases. 20168 are open.
Every case records the implementation that fails, the fix that did not work, and the repair that passed its checks—with recorded outputs and source hashes. This release adds 100840 cases across 20168 failure mechanisms and 254 domains.
The open tier gives you the failure and the unsuccessful fix for one case in every mechanism. The remaining 80672 cases, 5 variants per mechanism, are member-only: the verified repair, its recorded checks, and the full fixture suite are held in the member archive. Read the methodology ↗
A RECORD OF WHAT WENT WRONG
Browse the archive / 100840
Promotion triggered one rank early · case 01
A white pawn arriving on the seventh rank is expanded into promotion moves, while the eighth rank is not.
Promotion triggered one rank early · case 02
A white pawn arriving on the seventh rank is expanded into promotion moves, while the eighth rank is not.
Promotion triggered one rank early · case 03
A white pawn arriving on the seventh rank is expanded into promotion moves, while the eighth rank is not.
Promotion triggered one rank early · case 04
A white pawn arriving on the seventh rank is expanded into promotion moves, while the eighth rank is not.
Promotion triggered one rank early · case 05
A white pawn arriving on the seventh rank is expanded into promotion moves, while the eighth rank is not.
Only queen promotions are generated · case 01
Underpromotion to rook, bishop or knight is never offered.
Only queen promotions are generated · case 02
Underpromotion to rook, bishop or knight is never offered.
Only queen promotions are generated · case 03
Underpromotion to rook, bishop or knight is never offered.
Only queen promotions are generated · case 04
Underpromotion to rook, bishop or knight is never offered.
Only queen promotions are generated · case 05
Underpromotion to rook, bishop or knight is never offered.
En passant looks for the victim on the target square · case 01
Every en passant capture is rejected because the target square is empty.
En passant looks for the victim on the target square · case 02
Every en passant capture is rejected because the target square is empty.
En passant looks for the victim on the target square · case 03
Every en passant capture is rejected because the target square is empty.
En passant looks for the victim on the target square · case 04
Every en passant capture is rejected because the target square is empty.
En passant looks for the victim on the target square · case 05
Every en passant capture is rejected because the target square is empty.
Horizontal pin through two pawns missed · case 01
With king and enemy rook on the fifth rank and only the two pawns between them, en passant is allowed.
Horizontal pin through two pawns missed · case 02
With king and enemy rook on the fifth rank and only the two pawns between them, en passant is allowed.
Horizontal pin through two pawns missed · case 03
With king and enemy rook on the fifth rank and only the two pawns between them, en passant is allowed.
Horizontal pin through two pawns missed · case 04
With king and enemy rook on the fifth rank and only the two pawns between them, en passant is allowed.
Horizontal pin through two pawns missed · case 05
With king and enemy rook on the fifth rank and only the two pawns between them, en passant is allowed.
Black en passant rejected on its fifth rank · case 01
A black pawn on d4 cannot capture en passant on e3.
Black en passant rejected on its fifth rank · case 02
A black pawn on d4 cannot capture en passant on e3.
Black en passant rejected on its fifth rank · case 03
A black pawn on d4 cannot capture en passant on e3.
Black en passant rejected on its fifth rank · case 04
A black pawn on d4 cannot capture en passant on e3.
Black en passant rejected on its fifth rank · case 05
A black pawn on d4 cannot capture en passant on e3.
Any diagonal step accepted while an ep square exists · case 01
With ep on d6, a pawn capturing diagonally onto an empty f6 is treated as en passant.
Any diagonal step accepted while an ep square exists · case 02
With ep on d6, a pawn capturing diagonally onto an empty f6 is treated as en passant.
Any diagonal step accepted while an ep square exists · case 03
With ep on d6, a pawn capturing diagonally onto an empty f6 is treated as en passant.
Any diagonal step accepted while an ep square exists · case 04
With ep on d6, a pawn capturing diagonally onto an empty f6 is treated as en passant.
Any diagonal step accepted while an ep square exists · case 05
With ep on d6, a pawn capturing diagonally onto an empty f6 is treated as en passant.
Rook on a diagonal treated as a discovered checker · case 01
En passant is rejected because a rook sits on a diagonal from the king.
Rook on a diagonal treated as a discovered checker · case 02
En passant is rejected because a rook sits on a diagonal from the king.
Rook on a diagonal treated as a discovered checker · case 03
En passant is rejected because a rook sits on a diagonal from the king.
Rook on a diagonal treated as a discovered checker · case 04
En passant is rejected because a rook sits on a diagonal from the king.
Rook on a diagonal treated as a discovered checker · case 05
En passant is rejected because a rook sits on a diagonal from the king.
Queenside castling through a piece on b1 · case 01
White castles long with a knight still on b1.
Queenside castling through a piece on b1 · case 02
White castles long with a knight still on b1.
Queenside castling through a piece on b1 · case 03
White castles long with a knight still on b1.
Queenside castling through a piece on b1 · case 04
White castles long with a knight still on b1.
Queenside castling through a piece on b1 · case 05
White castles long with a knight still on b1.
Queenside castling forbidden when b1 is attacked · case 01
A rook attacking b1 prevents white from castling long.
Queenside castling forbidden when b1 is attacked · case 02
A rook attacking b1 prevents white from castling long.
Queenside castling forbidden when b1 is attacked · case 03
A rook attacking b1 prevents white from castling long.
Queenside castling forbidden when b1 is attacked · case 04
A rook attacking b1 prevents white from castling long.
Queenside castling forbidden when b1 is attacked · case 05
A rook attacking b1 prevents white from castling long.
Black castling checks white's rights letter · case 01
Black may castle kingside when only white holds the K right, and is refused with its own q right.
Black castling checks white's rights letter · case 02
Black may castle kingside when only white holds the K right, and is refused with its own q right.
Black castling checks white's rights letter · case 03
Black may castle kingside when only white holds the K right, and is refused with its own q right.
Black castling checks white's rights letter · case 04
Black may castle kingside when only white holds the K right, and is refused with its own q right.
Black castling checks white's rights letter · case 05
Black may castle kingside when only white holds the K right, and is refused with its own q right.
Castling with a knight in the rook corner · case 01
White castles kingside with a knight or an enemy rook on h1.
Castling with a knight in the rook corner · case 02
White castles kingside with a knight or an enemy rook on h1.
Castling with a knight in the rook corner · case 03
White castles kingside with a knight or an enemy rook on h1.
Castling with a knight in the rook corner · case 04
White castles kingside with a knight or an enemy rook on h1.
Castling with a knight in the rook corner · case 05
White castles kingside with a knight or an enemy rook on h1.
Pawn attacks on castling squares looked up backwards · case 01
A black pawn on h2 attacking g1 does not stop white from castling.
Pawn attacks on castling squares looked up backwards · case 02
A black pawn on h2 attacking g1 does not stop white from castling.
Pawn attacks on castling squares looked up backwards · case 03
A black pawn on h2 attacking g1 does not stop white from castling.
Pawn attacks on castling squares looked up backwards · case 04
A black pawn on h2 attacking g1 does not stop white from castling.
Pawn attacks on castling squares looked up backwards · case 05
A black pawn on h2 attacking g1 does not stop white from castling.
Shielded sliders still veto castling · case 01
A rook behind a white pawn on the f-file stops white from castling kingside.
Shielded sliders still veto castling · case 02
A rook behind a white pawn on the f-file stops white from castling kingside.
Shielded sliders still veto castling · case 03
A rook behind a white pawn on the f-file stops white from castling kingside.
Shielded sliders still veto castling · case 04
A rook behind a white pawn on the f-file stops white from castling kingside.
Shielded sliders still veto castling · case 05
A rook behind a white pawn on the f-file stops white from castling kingside.
King retreats along the checking line · case 01
A king on e4 checked by a rook on e8 may step back to e3.
King retreats along the checking line · case 02
A king on e4 checked by a rook on e8 may step back to e3.
King retreats along the checking line · case 03
A king on e4 checked by a rook on e8 may step back to e3.
King retreats along the checking line · case 04
A king on e4 checked by a rook on e8 may step back to e3.
King retreats along the checking line · case 05
A king on e4 checked by a rook on e8 may step back to e3.
King denied diagonal steps · case 01
A king cannot step from e4 to f5.
King denied diagonal steps · case 02
A king cannot step from e4 to f5.
King denied diagonal steps · case 03
A king cannot step from e4 to f5.
King denied diagonal steps · case 04
A king cannot step from e4 to f5.
King denied diagonal steps · case 05
A king cannot step from e4 to f5.
King refuses captures and lands on friends · case 01
The king may move onto its own pawn but not capture an undefended enemy pawn.
King refuses captures and lands on friends · case 02
The king may move onto its own pawn but not capture an undefended enemy pawn.
King refuses captures and lands on friends · case 03
The king may move onto its own pawn but not capture an undefended enemy pawn.
King refuses captures and lands on friends · case 04
The king may move onto its own pawn but not capture an undefended enemy pawn.
King refuses captures and lands on friends · case 05
The king may move onto its own pawn but not capture an undefended enemy pawn.
Kings allowed to touch orthogonally · case 01
A white king may step to e5 directly below the black king on e6.
Kings allowed to touch orthogonally · case 02
A white king may step to e5 directly below the black king on e6.
Kings allowed to touch orthogonally · case 03
A white king may step to e5 directly below the black king on e6.
Kings allowed to touch orthogonally · case 04
A white king may step to e5 directly below the black king on e6.
Kings allowed to touch orthogonally · case 05
A white king may step to e5 directly below the black king on e6.
King captures a defended piece · case 01
The king takes a pawn on e5 that is protected by another pawn.
King captures a defended piece · case 02
The king takes a pawn on e5 that is protected by another pawn.
King captures a defended piece · case 03
The king takes a pawn on e5 that is protected by another pawn.
King captures a defended piece · case 04
The king takes a pawn on e5 that is protected by another pawn.
King captures a defended piece · case 05
The king takes a pawn on e5 that is protected by another pawn.
Knights below the king are invisible · case 01
The king may step next to a knight that attacks the square from below.
Knights below the king are invisible · case 02
The king may step next to a knight that attacks the square from below.
Knights below the king are invisible · case 03
The king may step next to a knight that attacks the square from below.
Knights below the king are invisible · case 04
The king may step next to a knight that attacks the square from below.
Knights below the king are invisible · case 05
The king may step next to a knight that attacks the square from below.
Diagonal pins are never detected · case 01
A knight pinned by a bishop against its king is allowed to jump away.
Diagonal pins are never detected · case 02
A knight pinned by a bishop against its king is allowed to jump away.
Diagonal pins are never detected · case 03
A knight pinned by a bishop against its king is allowed to jump away.
Diagonal pins are never detected · case 04
A knight pinned by a bishop against its king is allowed to jump away.
Diagonal pins are never detected · case 05
A knight pinned by a bishop against its king is allowed to jump away.
INSPECTABLE BY DESIGN
Every result has a runnable source.
Runnable implementations with recorded outputs, source hashes, and explicit contracts. Related variants share a failure mechanism and belong together in evaluation splits.
Read the methodology ↗