FAILURE MAP

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 ↗
100840Executable case variants
20168Distinct failure mechanisms
302520Executed implementations
20168Open-access cases

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

Python · Standard library
REFERENCEFAILURE MECHANISMDOMAINACCESS
FA-67001

Level crossing warning timeline: crossing proving point · case 01

A four-quadrant crossing is proven before its exit barriers are down.

Railway interlocking logic● Open access↗
FA-67002

Level crossing warning timeline: crossing proving point · case 02

A four-quadrant crossing is proven before its exit barriers are down.

Railway interlocking logic◈ Members↗
FA-67003

Level crossing warning timeline: crossing proving point · case 03

A four-quadrant crossing is proven before its exit barriers are down.

Railway interlocking logic◈ Members↗
FA-67004

Level crossing warning timeline: crossing proving point · case 04

A four-quadrant crossing is proven before its exit barriers are down.

Railway interlocking logic◈ Members↗
FA-67005

Level crossing warning timeline: crossing proving point · case 05

A four-quadrant crossing is proven before its exit barriers are down.

Railway interlocking logic◈ Members↗
FA-67006

Level crossing warning timeline: obstacle confirmation · case 01

The protecting signal clears although the obstacle detector never confirmed the crossing empty.

Railway interlocking logic● Open access↗
FA-67007

Level crossing warning timeline: obstacle confirmation · case 02

The protecting signal clears although the obstacle detector never confirmed the crossing empty.

Railway interlocking logic◈ Members↗
FA-67008

Level crossing warning timeline: obstacle confirmation · case 03

The protecting signal clears although the obstacle detector never confirmed the crossing empty.

Railway interlocking logic◈ Members↗
FA-67009

Level crossing warning timeline: obstacle confirmation · case 04

The protecting signal clears although the obstacle detector never confirmed the crossing empty.

Railway interlocking logic◈ Members↗
FA-67010

Level crossing warning timeline: obstacle confirmation · case 05

The protecting signal clears although the obstacle detector never confirmed the crossing empty.

Railway interlocking logic◈ Members↗
FA-67011

Level crossing warning timeline: warning time reference · case 01

The road warning time is overstated.

Railway interlocking logic● Open access↗
FA-67012

Level crossing warning timeline: warning time reference · case 02

The road warning time is overstated.

Railway interlocking logic◈ Members↗
FA-67013

Level crossing warning timeline: warning time reference · case 03

The road warning time is overstated.

Railway interlocking logic◈ Members↗
FA-67014

Level crossing warning timeline: warning time reference · case 04

The road warning time is overstated.

Railway interlocking logic◈ Members↗
FA-67015

Level crossing warning timeline: warning time reference · case 05

The road warning time is overstated.

Railway interlocking logic◈ Members↗
FA-67016

Level crossing warning timeline: sighting margin · case 01

The crossing is judged safe although the driver cannot see the signal clear in time.

Railway interlocking logic● Open access↗
FA-67017

Level crossing warning timeline: sighting margin · case 02

The crossing is judged safe although the driver cannot see the signal clear in time.

Railway interlocking logic◈ Members↗
FA-67018

Level crossing warning timeline: sighting margin · case 03

The crossing is judged safe although the driver cannot see the signal clear in time.

Railway interlocking logic◈ Members↗
FA-67019

Level crossing warning timeline: sighting margin · case 04

The crossing is judged safe although the driver cannot see the signal clear in time.

Railway interlocking logic◈ Members↗
FA-67020

Level crossing warning timeline: sighting margin · case 05

The crossing is judged safe although the driver cannot see the signal clear in time.

Railway interlocking logic◈ Members↗
FA-67021

Overlap timed release: timer expiry boundary · case 01

The overlap stays locked at the exact moment the timer expires.

Railway interlocking logic● Open access↗
FA-67022

Overlap timed release: timer expiry boundary · case 02

The overlap stays locked at the exact moment the timer expires.

Railway interlocking logic◈ Members↗
FA-67023

Overlap timed release: timer expiry boundary · case 03

The overlap stays locked at the exact moment the timer expires.

Railway interlocking logic◈ Members↗
FA-67024

Overlap timed release: timer expiry boundary · case 04

The overlap stays locked at the exact moment the timer expires.

Railway interlocking logic◈ Members↗
FA-67025

Overlap timed release: timer expiry boundary · case 05

The overlap stays locked at the exact moment the timer expires.

Railway interlocking logic◈ Members↗
FA-67026

Overlap timed release: timer start latch · case 01

A bobbing berth track circuit keeps pushing the overlap release back.

Railway interlocking logic● Open access↗
FA-67027

Overlap timed release: timer start latch · case 02

A bobbing berth track circuit keeps pushing the overlap release back.

Railway interlocking logic◈ Members↗
FA-67028

Overlap timed release: timer start latch · case 03

A bobbing berth track circuit keeps pushing the overlap release back.

Railway interlocking logic◈ Members↗
FA-67029

Overlap timed release: timer start latch · case 04

A bobbing berth track circuit keeps pushing the overlap release back.

Railway interlocking logic◈ Members↗
FA-67030

Overlap timed release: timer start latch · case 05

A bobbing berth track circuit keeps pushing the overlap release back.

Railway interlocking logic◈ Members↗
FA-67031

Overlap timed release: berth clear cancellation · case 01

The overlap is released after the train has already left the berth.

Railway interlocking logic● Open access↗
FA-67032

Overlap timed release: berth clear cancellation · case 02

The overlap is released after the train has already left the berth.

Railway interlocking logic◈ Members↗
FA-67033

Overlap timed release: berth clear cancellation · case 03

The overlap is released after the train has already left the berth.

Railway interlocking logic◈ Members↗
FA-67034

Overlap timed release: berth clear cancellation · case 04

The overlap is released after the train has already left the berth.

Railway interlocking logic◈ Members↗
FA-67035

Overlap timed release: berth clear cancellation · case 05

The overlap is released after the train has already left the berth.

Railway interlocking logic◈ Members↗
FA-67036

Overlap timed release: overrun blocking · case 01

The overlap is released while the train stands in it.

Railway interlocking logic● Open access↗
FA-67037

Overlap timed release: overrun blocking · case 02

The overlap is released while the train stands in it.

Railway interlocking logic◈ Members↗
FA-67038

Overlap timed release: overrun blocking · case 03

The overlap is released while the train stands in it.

Railway interlocking logic◈ Members↗
FA-67039

Overlap timed release: overrun blocking · case 04

The overlap is released while the train stands in it.

Railway interlocking logic◈ Members↗
FA-67040

Overlap timed release: overrun blocking · case 05

The overlap is released while the train stands in it.

Railway interlocking logic◈ Members↗
FA-67041

Absolute block bell-code working: clearing point condition · case 01

Line clear is given while the clearing point beyond the home signal is fouled.

Railway interlocking logic● Open access↗
FA-67042

Absolute block bell-code working: clearing point condition · case 02

Line clear is given while the clearing point beyond the home signal is fouled.

Railway interlocking logic◈ Members↗
FA-67043

Absolute block bell-code working: clearing point condition · case 03

Line clear is given while the clearing point beyond the home signal is fouled.

Railway interlocking logic◈ Members↗
FA-67044

Absolute block bell-code working: clearing point condition · case 04

Line clear is given while the clearing point beyond the home signal is fouled.

Railway interlocking logic◈ Members↗
FA-67045

Absolute block bell-code working: clearing point condition · case 05

Line clear is given while the clearing point beyond the home signal is fouled.

Railway interlocking logic◈ Members↗
FA-67046

Absolute block bell-code working: departure authority · case 01

A second train entering an occupied block raises no alarm.

Railway interlocking logic● Open access↗
FA-67047

Absolute block bell-code working: departure authority · case 02

A second train entering an occupied block raises no alarm.

Railway interlocking logic◈ Members↗
FA-67048

Absolute block bell-code working: departure authority · case 03

A second train entering an occupied block raises no alarm.

Railway interlocking logic◈ Members↗
FA-67049

Absolute block bell-code working: departure authority · case 04

A second train entering an occupied block raises no alarm.

Railway interlocking logic◈ Members↗
FA-67050

Absolute block bell-code working: departure authority · case 05

A second train entering an occupied block raises no alarm.

Railway interlocking logic◈ Members↗
FA-67051

Absolute block bell-code working: tail lamp check · case 01

The block is released although the train arrived without its tail lamp.

Railway interlocking logic● Open access↗
FA-67052

Absolute block bell-code working: tail lamp check · case 02

The block is released although the train arrived without its tail lamp.

Railway interlocking logic◈ Members↗
FA-67053

Absolute block bell-code working: tail lamp check · case 03

The block is released although the train arrived without its tail lamp.

Railway interlocking logic◈ Members↗
FA-67054

Absolute block bell-code working: tail lamp check · case 04

The block is released although the train arrived without its tail lamp.

Railway interlocking logic◈ Members↗
FA-67055

Absolute block bell-code working: tail lamp check · case 05

The block is released although the train arrived without its tail lamp.

Railway interlocking logic◈ Members↗
FA-67056

Absolute block bell-code working: cancel scope · case 01

Cancelling a block with a train in it frees the section.

Railway interlocking logic● Open access↗
FA-67057

Absolute block bell-code working: cancel scope · case 02

Cancelling a block with a train in it frees the section.

Railway interlocking logic◈ Members↗
FA-67058

Absolute block bell-code working: cancel scope · case 03

Cancelling a block with a train in it frees the section.

Railway interlocking logic◈ Members↗
FA-67059

Absolute block bell-code working: cancel scope · case 04

Cancelling a block with a train in it frees the section.

Railway interlocking logic◈ Members↗
FA-67060

Absolute block bell-code working: cancel scope · case 05

Cancelling a block with a train in it frees the section.

Railway interlocking logic◈ Members↗
FA-67061

ATP braking curve supervision: safety margin · case 01

The permitted speed is supervised against the danger point rather than the margin-reduced target.

Railway interlocking logic● Open access↗
FA-67062

ATP braking curve supervision: safety margin · case 02

The permitted speed is supervised against the danger point rather than the margin-reduced target.

Railway interlocking logic◈ Members↗
FA-67063

ATP braking curve supervision: safety margin · case 03

The permitted speed is supervised against the danger point rather than the margin-reduced target.

Railway interlocking logic◈ Members↗
FA-67064

ATP braking curve supervision: safety margin · case 04

The permitted speed is supervised against the danger point rather than the margin-reduced target.

Railway interlocking logic◈ Members↗
FA-67065

ATP braking curve supervision: safety margin · case 05

The permitted speed is supervised against the danger point rather than the margin-reduced target.

Railway interlocking logic◈ Members↗
FA-67066

ATP braking curve supervision: line speed ceiling · case 01

The permitted speed exceeds the line speed far from the target.

Railway interlocking logic● Open access↗
FA-67067

ATP braking curve supervision: line speed ceiling · case 02

The permitted speed exceeds the line speed far from the target.

Railway interlocking logic◈ Members↗
FA-67068

ATP braking curve supervision: line speed ceiling · case 03

The permitted speed exceeds the line speed far from the target.

Railway interlocking logic◈ Members↗
FA-67069

ATP braking curve supervision: line speed ceiling · case 04

The permitted speed exceeds the line speed far from the target.

Railway interlocking logic◈ Members↗
FA-67070

ATP braking curve supervision: line speed ceiling · case 05

The permitted speed exceeds the line speed far from the target.

Railway interlocking logic◈ Members↗
FA-67071

ATP braking curve supervision: permitted speed rounding · case 01

The permitted speed is one km/h above the braking curve.

Railway interlocking logic● Open access↗
FA-67072

ATP braking curve supervision: permitted speed rounding · case 02

The permitted speed is one km/h above the braking curve.

Railway interlocking logic◈ Members↗
FA-67073

ATP braking curve supervision: permitted speed rounding · case 03

The permitted speed is one km/h above the braking curve.

Railway interlocking logic◈ Members↗
FA-67074

ATP braking curve supervision: permitted speed rounding · case 04

The permitted speed is one km/h above the braking curve.

Railway interlocking logic◈ Members↗
FA-67075

ATP braking curve supervision: permitted speed rounding · case 05

The permitted speed is one km/h above the braking curve.

Railway interlocking logic◈ Members↗
FA-67076

ATP braking curve supervision: intervention precedence · case 01

A train far over the curve only gets a warning.

Railway interlocking logic● Open access↗
FA-67077

ATP braking curve supervision: intervention precedence · case 02

A train far over the curve only gets a warning.

Railway interlocking logic◈ Members↗
FA-67078

ATP braking curve supervision: intervention precedence · case 03

A train far over the curve only gets a warning.

Railway interlocking logic◈ Members↗
FA-67079

ATP braking curve supervision: intervention precedence · case 04

A train far over the curve only gets a warning.

Railway interlocking logic◈ Members↗
FA-67080

ATP braking curve supervision: intervention precedence · case 05

A train far over the curve only gets a warning.

Railway interlocking logic◈ Members↗
FA-67081

ATP braking curve supervision: warning threshold boundary · case 01

A train running exactly at the warning margin is warned.

Railway interlocking logic● Open access↗
FA-67082

ATP braking curve supervision: warning threshold boundary · case 02

A train running exactly at the warning margin is warned.

Railway interlocking logic◈ Members↗
FA-67083

ATP braking curve supervision: warning threshold boundary · case 03

A train running exactly at the warning margin is warned.

Railway interlocking logic◈ Members↗
FA-67084

ATP braking curve supervision: warning threshold boundary · case 04

A train running exactly at the warning margin is warned.

Railway interlocking logic◈ Members↗
FA-67085

ATP braking curve supervision: warning threshold boundary · case 05

A train running exactly at the warning margin is warned.

Railway interlocking logic◈ Members↗
FA-67086

Movement authority end computation: scan start · case 01

The train is given no authority because its own section blocks the scan.

Railway interlocking logic● Open access↗
FA-67087

Movement authority end computation: scan start · case 02

The train is given no authority because its own section blocks the scan.

Railway interlocking logic◈ Members↗
FA-67088

Movement authority end computation: scan start · case 03

The train is given no authority because its own section blocks the scan.

Railway interlocking logic◈ Members↗
FA-67089

Movement authority end computation: scan start · case 04

The train is given no authority because its own section blocks the scan.

Railway interlocking logic◈ Members↗
FA-67090

Movement authority end computation: scan start · case 05

The train is given no authority because its own section blocks the scan.

Railway interlocking logic◈ Members↗
FA-67091

Movement authority end computation: blocking section boundary · case 01

The authority extends through the blocking section.

Railway interlocking logic● Open access↗
FA-67092

Movement authority end computation: blocking section boundary · case 02

The authority extends through the blocking section.

Railway interlocking logic◈ Members↗
FA-67093

Movement authority end computation: blocking section boundary · case 03

The authority extends through the blocking section.

Railway interlocking logic◈ Members↗
FA-67094

Movement authority end computation: blocking section boundary · case 04

The authority extends through the blocking section.

Railway interlocking logic◈ Members↗
FA-67095

Movement authority end computation: blocking section boundary · case 05

The authority extends through the blocking section.

Railway interlocking logic◈ Members↗
FA-67096

Movement authority end computation: length cap reference · case 01

The authority is cut short of max_ma_m ahead of the train.

Railway interlocking logic● Open access↗
FA-67097

Movement authority end computation: length cap reference · case 02

The authority is cut short of max_ma_m ahead of the train.

Railway interlocking logic◈ Members↗
FA-67098

Movement authority end computation: length cap reference · case 03

The authority is cut short of max_ma_m ahead of the train.

Railway interlocking logic◈ Members↗
FA-67099

Movement authority end computation: length cap reference · case 04

The authority is cut short of max_ma_m ahead of the train.

Railway interlocking logic◈ Members↗
FA-67100

Movement authority end computation: length cap reference · case 05

The authority is cut short of max_ma_m ahead of the train.

Railway interlocking logic◈ Members↗

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 ↗