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
Row retirement processes events in arrival order · case 01
Out-of-order logs expire or count the wrong errors.
Row retirement processes events in arrival order · case 02
Out-of-order logs expire or count the wrong errors.
Row retirement processes events in arrival order · case 03
Out-of-order logs expire or count the wrong errors.
Row retirement processes events in arrival order · case 04
Out-of-order logs expire or count the wrong errors.
Row retirement processes events in arrival order · case 05
Out-of-order logs expire or count the wrong errors.
LT peeling stops after one pass · case 01
Symbols that become degree one late in the list are never used.
LT peeling stops after one pass · case 02
Symbols that become degree one late in the list are never used.
LT peeling stops after one pass · case 03
Symbols that become degree one late in the list are never used.
LT peeling stops after one pass · case 04
Symbols that become degree one late in the list are never used.
LT peeling stops after one pass · case 05
Symbols that become degree one late in the list are never used.
LT peeling copies the symbol value without removing resolved neighbours · case 01
Resolved source values are wrong whenever the releasing symbol had degree above one.
LT peeling copies the symbol value without removing resolved neighbours · case 02
Resolved source values are wrong whenever the releasing symbol had degree above one.
LT peeling copies the symbol value without removing resolved neighbours · case 03
Resolved source values are wrong whenever the releasing symbol had degree above one.
LT peeling copies the symbol value without removing resolved neighbours · case 04
Resolved source values are wrong whenever the releasing symbol had degree above one.
LT peeling copies the symbol value without removing resolved neighbours · case 05
Resolved source values are wrong whenever the releasing symbol had degree above one.
LT peeling releases only original degree-one symbols · case 01
Higher-degree symbols are never peeled, leaving many sources unresolved.
LT peeling releases only original degree-one symbols · case 02
Higher-degree symbols are never peeled, leaving many sources unresolved.
LT peeling releases only original degree-one symbols · case 03
Higher-degree symbols are never peeled, leaving many sources unresolved.
LT peeling releases only original degree-one symbols · case 04
Higher-degree symbols are never peeled, leaving many sources unresolved.
LT peeling releases only original degree-one symbols · case 05
Higher-degree symbols are never peeled, leaving many sources unresolved.
CRC correction never considers the CRC byte · case 01
Frames whose CRC byte took the hit are declared uncorrectable.
CRC correction never considers the CRC byte · case 02
Frames whose CRC byte took the hit are declared uncorrectable.
CRC correction never considers the CRC byte · case 03
Frames whose CRC byte took the hit are declared uncorrectable.
CRC correction never considers the CRC byte · case 04
Frames whose CRC byte took the hit are declared uncorrectable.
CRC correction never considers the CRC byte · case 05
Frames whose CRC byte took the hit are declared uncorrectable.
CRC correction presets the register to all ones · case 01
Clean frames are reported corrupted or "corrected" into different payloads.
CRC correction presets the register to all ones · case 02
Clean frames are reported corrupted or "corrected" into different payloads.
CRC correction presets the register to all ones · case 03
Clean frames are reported corrupted or "corrected" into different payloads.
CRC correction presets the register to all ones · case 04
Clean frames are reported corrupted or "corrected" into different payloads.
CRC correction presets the register to all ones · case 05
Clean frames are reported corrupted or "corrected" into different payloads.
LLR quantizer floors negative half values · case 01
Negative samples are quantised one step less reliable than positive samples of equal magnitude.
LLR quantizer floors negative half values · case 02
Negative samples are quantised one step less reliable than positive samples of equal magnitude.
LLR quantizer floors negative half values · case 03
Negative samples are quantised one step less reliable than positive samples of equal magnitude.
LLR quantizer floors negative half values · case 04
Negative samples are quantised one step less reliable than positive samples of equal magnitude.
LLR quantizer floors negative half values · case 05
Negative samples are quantised one step less reliable than positive samples of equal magnitude.
LLR quantizer saturates to the unsigned range · case 01
Large samples produce LLRs outside the decoder word size.
LLR quantizer saturates to the unsigned range · case 02
Large samples produce LLRs outside the decoder word size.
LLR quantizer saturates to the unsigned range · case 03
Large samples produce LLRs outside the decoder word size.
LLR quantizer saturates to the unsigned range · case 04
Large samples produce LLRs outside the decoder word size.
LLR quantizer saturates to the unsigned range · case 05
Large samples produce LLRs outside the decoder word size.
RS erasure recovery flips the Lagrange denominator · case 01
Recovered symbols are wrong whenever k - 1 is odd.
RS erasure recovery flips the Lagrange denominator · case 02
Recovered symbols are wrong whenever k - 1 is odd.
RS erasure recovery flips the Lagrange denominator · case 03
Recovered symbols are wrong whenever k - 1 is odd.
RS erasure recovery flips the Lagrange denominator · case 04
Recovered symbols are wrong whenever k - 1 is odd.
RS erasure recovery flips the Lagrange denominator · case 05
Recovered symbols are wrong whenever k - 1 is odd.
RS erasure recovery lets a conflicting duplicate overwrite a share · case 01
A corrupted duplicate share silently replaces the good one.
RS erasure recovery lets a conflicting duplicate overwrite a share · case 02
A corrupted duplicate share silently replaces the good one.
RS erasure recovery lets a conflicting duplicate overwrite a share · case 03
A corrupted duplicate share silently replaces the good one.
RS erasure recovery lets a conflicting duplicate overwrite a share · case 04
A corrupted duplicate share silently replaces the good one.
RS erasure recovery lets a conflicting duplicate overwrite a share · case 05
A corrupted duplicate share silently replaces the good one.
RS erasure recovery counts duplicate shares toward k · case 01
Too few distinct shares are accepted and interpolation uses fewer points than needed.
RS erasure recovery counts duplicate shares toward k · case 02
Too few distinct shares are accepted and interpolation uses fewer points than needed.
RS erasure recovery counts duplicate shares toward k · case 03
Too few distinct shares are accepted and interpolation uses fewer points than needed.
RS erasure recovery counts duplicate shares toward k · case 04
Too few distinct shares are accepted and interpolation uses fewer points than needed.
RS erasure recovery counts duplicate shares toward k · case 05
Too few distinct shares are accepted and interpolation uses fewer points than needed.
RS erasure recovery evaluates data at zero-based points · case 01
Recovered data is shifted by one position and includes a value at x = 0.
RS erasure recovery evaluates data at zero-based points · case 02
Recovered data is shifted by one position and includes a value at x = 0.
RS erasure recovery evaluates data at zero-based points · case 03
Recovered data is shifted by one position and includes a value at x = 0.
RS erasure recovery evaluates data at zero-based points · case 04
Recovered data is shifted by one position and includes a value at x = 0.
RS erasure recovery evaluates data at zero-based points · case 05
Recovered data is shifted by one position and includes a value at x = 0.
Burst capability ignores symbol boundary straddling · case 01
Quoted burst capability is too large by up to one symbol.
Burst capability ignores symbol boundary straddling · case 02
Quoted burst capability is too large by up to one symbol.
Burst capability ignores symbol boundary straddling · case 03
Quoted burst capability is too large by up to one symbol.
Burst capability ignores symbol boundary straddling · case 04
Quoted burst capability is too large by up to one symbol.
Burst capability ignores symbol boundary straddling · case 05
Quoted burst capability is too large by up to one symbol.
Burst capability rounds the symbol correction up · case 01
Codes with an odd number of parity symbols are credited with an extra correctable symbol.
Burst capability rounds the symbol correction up · case 02
Codes with an odd number of parity symbols are credited with an extra correctable symbol.
Burst capability rounds the symbol correction up · case 03
Codes with an odd number of parity symbols are credited with an extra correctable symbol.
Burst capability rounds the symbol correction up · case 04
Codes with an odd number of parity symbols are credited with an extra correctable symbol.
Burst capability rounds the symbol correction up · case 05
Codes with an odd number of parity symbols are credited with an extra correctable symbol.
Burst capability reports a burst for a code that corrects nothing · case 01
A single-parity code is credited with a non-positive or one-bit burst capability.
Burst capability reports a burst for a code that corrects nothing · case 02
A single-parity code is credited with a non-positive or one-bit burst capability.
Burst capability reports a burst for a code that corrects nothing · case 03
A single-parity code is credited with a non-positive or one-bit burst capability.
Burst capability reports a burst for a code that corrects nothing · case 04
A single-parity code is credited with a non-positive or one-bit burst capability.
Burst capability reports a burst for a code that corrects nothing · case 05
A single-parity code is credited with a non-positive or one-bit burst capability.
Chase combining saturates after every addition · case 01
Retransmissions that disagree strongly are combined with the wrong sign or magnitude.
Chase combining saturates after every addition · case 02
Retransmissions that disagree strongly are combined with the wrong sign or magnitude.
Chase combining saturates after every addition · case 03
Retransmissions that disagree strongly are combined with the wrong sign or magnitude.
Chase combining saturates after every addition · case 04
Retransmissions that disagree strongly are combined with the wrong sign or magnitude.
Chase combining saturates after every addition · case 05
Retransmissions that disagree strongly are combined with the wrong sign or magnitude.
Chase combining decides zero LLRs as bit 0 · case 01
Positions with no information are reported as confident zeros.
Chase combining decides zero LLRs as bit 0 · case 02
Positions with no information are reported as confident zeros.
Chase combining decides zero LLRs as bit 0 · case 03
Positions with no information are reported as confident zeros.
Chase combining decides zero LLRs as bit 0 · case 04
Positions with no information are reported as confident zeros.
Chase combining decides zero LLRs as bit 0 · case 05
Positions with no information are reported as confident zeros.
Weight distribution skips the zero message · case 01
The histogram totals 2^k - 1 and weight 0 is missing.
Weight distribution skips the zero message · case 02
The histogram totals 2^k - 1 and weight 0 is missing.
Weight distribution skips the zero message · case 03
The histogram totals 2^k - 1 and weight 0 is missing.
Weight distribution skips the zero message · case 04
The histogram totals 2^k - 1 and weight 0 is missing.
Weight distribution skips the zero message · case 05
The histogram totals 2^k - 1 and weight 0 is missing.
Weight distribution combines rows with OR · case 01
Codeword weights are inflated when rows overlap.
Weight distribution combines rows with OR · case 02
Codeword weights are inflated when rows overlap.
Weight distribution combines rows with OR · case 03
Codeword weights are inflated when rows overlap.
Weight distribution combines rows with OR · case 04
Codeword weights are inflated when rows overlap.
Weight distribution combines rows with OR · case 05
Codeword weights are inflated when rows overlap.
Weight distribution takes the minimum row weight as the distance · case 01
Minimum distance is overstated when a combination of rows is lighter than every row.
Weight distribution takes the minimum row weight as the distance · case 02
Minimum distance is overstated when a combination of rows is lighter than every row.
Weight distribution takes the minimum row weight as the distance · case 03
Minimum distance is overstated when a combination of rows is lighter than every row.
Weight distribution takes the minimum row weight as the distance · case 04
Minimum distance is overstated when a combination of rows is lighter than every row.
Weight distribution takes the minimum row weight as the distance · case 05
Minimum distance is overstated when a combination of rows is lighter than every row.
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 ↗