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-72801

Missing-digit recovery measures the unknown from the left · case 01

Recovery succeeds only when the number length makes left and right parity agree.

Check-digit algorithms● Open access↗
FA-72802

Missing-digit recovery measures the unknown from the left · case 02

Recovery succeeds only when the number length makes left and right parity agree.

Check-digit algorithms◈ Members↗
FA-72803

Missing-digit recovery measures the unknown from the left · case 03

Recovery succeeds only when the number length makes left and right parity agree.

Check-digit algorithms◈ Members↗
FA-72804

Missing-digit recovery measures the unknown from the left · case 04

Recovery succeeds only when the number length makes left and right parity agree.

Check-digit algorithms◈ Members↗
FA-72805

Missing-digit recovery measures the unknown from the left · case 05

Recovery succeeds only when the number length makes left and right parity agree.

Check-digit algorithms◈ Members↗
FA-72806

Missing-digit recovery answers with two unknowns · case 01

Inputs with several unknown digits get a confident single answer.

Check-digit algorithms● Open access↗
FA-72807

Missing-digit recovery answers with two unknowns · case 02

Inputs with several unknown digits get a confident single answer.

Check-digit algorithms◈ Members↗
FA-72808

Missing-digit recovery answers with two unknowns · case 03

Inputs with several unknown digits get a confident single answer.

Check-digit algorithms◈ Members↗
FA-72809

Missing-digit recovery answers with two unknowns · case 04

Inputs with several unknown digits get a confident single answer.

Check-digit algorithms◈ Members↗
FA-72810

Missing-digit recovery answers with two unknowns · case 05

Inputs with several unknown digits get a confident single answer.

Check-digit algorithms◈ Members↗
FA-72811

Bank-slip mod 11 cycles weights 2 to 7 · case 01

Slips longer than six digits receive the wrong verifying digit.

Check-digit algorithms● Open access↗
FA-72812

Bank-slip mod 11 cycles weights 2 to 7 · case 02

Slips longer than six digits receive the wrong verifying digit.

Check-digit algorithms◈ Members↗
FA-72813

Bank-slip mod 11 cycles weights 2 to 7 · case 03

Slips longer than six digits receive the wrong verifying digit.

Check-digit algorithms◈ Members↗
FA-72814

Bank-slip mod 11 cycles weights 2 to 7 · case 04

Slips longer than six digits receive the wrong verifying digit.

Check-digit algorithms◈ Members↗
FA-72815

Bank-slip mod 11 cycles weights 2 to 7 · case 05

Slips longer than six digits receive the wrong verifying digit.

Check-digit algorithms◈ Members↗
FA-72816

Bank-slip mod 11 maps 10 and 11 to zero · case 01

Slips whose remainder is 0 or 1 get verifying digit 0, which is reserved.

Check-digit algorithms● Open access↗
FA-72817

Bank-slip mod 11 maps 10 and 11 to zero · case 02

Slips whose remainder is 0 or 1 get verifying digit 0, which is reserved.

Check-digit algorithms◈ Members↗
FA-72818

Bank-slip mod 11 maps 10 and 11 to zero · case 03

Slips whose remainder is 0 or 1 get verifying digit 0, which is reserved.

Check-digit algorithms◈ Members↗
FA-72819

Bank-slip mod 11 maps 10 and 11 to zero · case 04

Slips whose remainder is 0 or 1 get verifying digit 0, which is reserved.

Check-digit algorithms◈ Members↗
FA-72820

Bank-slip mod 11 maps 10 and 11 to zero · case 05

Slips whose remainder is 0 or 1 get verifying digit 0, which is reserved.

Check-digit algorithms◈ Members↗
FA-72821

NIE prefix letter is dropped instead of mapped · case 01

Y- and Z-series foreigner numbers get the wrong control letter (X happens to work).

Check-digit algorithms● Open access↗
FA-72822

NIE prefix letter is dropped instead of mapped · case 02

Y- and Z-series foreigner numbers get the wrong control letter (X happens to work).

Check-digit algorithms◈ Members↗
FA-72823

NIE prefix letter is dropped instead of mapped · case 03

Y- and Z-series foreigner numbers get the wrong control letter (X happens to work).

Check-digit algorithms◈ Members↗
FA-72824

NIE prefix letter is dropped instead of mapped · case 04

Y- and Z-series foreigner numbers get the wrong control letter (X happens to work).

Check-digit algorithms◈ Members↗
FA-72825

NIE prefix letter is dropped instead of mapped · case 05

Y- and Z-series foreigner numbers get the wrong control letter (X happens to work).

Check-digit algorithms◈ Members↗
FA-72826

DNI validation is case-sensitive · case 01

Numbers typed in lowercase are reported as mismatches or malformed.

Check-digit algorithms● Open access↗
FA-72827

DNI validation is case-sensitive · case 02

Numbers typed in lowercase are reported as mismatches or malformed.

Check-digit algorithms◈ Members↗
FA-72828

DNI validation is case-sensitive · case 03

Numbers typed in lowercase are reported as mismatches or malformed.

Check-digit algorithms◈ Members↗
FA-72829

DNI validation is case-sensitive · case 04

Numbers typed in lowercase are reported as mismatches or malformed.

Check-digit algorithms◈ Members↗
FA-72830

DNI validation is case-sensitive · case 05

Numbers typed in lowercase are reported as mismatches or malformed.

Check-digit algorithms◈ Members↗
FA-72831

ESR applies the carry table before adding the digit · case 01

Reference check digits disagree with the bank.

Check-digit algorithms● Open access↗
FA-72832

ESR applies the carry table before adding the digit · case 02

Reference check digits disagree with the bank.

Check-digit algorithms◈ Members↗
FA-72833

ESR applies the carry table before adding the digit · case 03

Reference check digits disagree with the bank.

Check-digit algorithms◈ Members↗
FA-72834

ESR applies the carry table before adding the digit · case 04

Reference check digits disagree with the bank.

Check-digit algorithms◈ Members↗
FA-72835

ESR applies the carry table before adding the digit · case 05

Reference check digits disagree with the bank.

Check-digit algorithms◈ Members↗
FA-72836

ESR returns the carry as the check digit · case 01

Only references with final carry 0 or 5 get the right check digit.

Check-digit algorithms● Open access↗
FA-72837

ESR returns the carry as the check digit · case 02

Only references with final carry 0 or 5 get the right check digit.

Check-digit algorithms◈ Members↗
FA-72838

ESR returns the carry as the check digit · case 03

Only references with final carry 0 or 5 get the right check digit.

Check-digit algorithms◈ Members↗
FA-72839

ESR returns the carry as the check digit · case 04

Only references with final carry 0 or 5 get the right check digit.

Check-digit algorithms◈ Members↗
FA-72840

ESR returns the carry as the check digit · case 05

Only references with final carry 0 or 5 get the right check digit.

Check-digit algorithms◈ Members↗
FA-72841

Bloom filter with double hashing: probe sequence skips the base probe · case 01

The filter sets bits at positions that another writer never probes, and base-hash bits are missing.

Probabilistic sketches● Open access↗
FA-72842

Bloom filter with double hashing: probe sequence skips the base probe · case 02

The filter sets bits at positions that another writer never probes, and base-hash bits are missing.

Probabilistic sketches◈ Members↗
FA-72843

Bloom filter with double hashing: probe sequence skips the base probe · case 03

The filter sets bits at positions that another writer never probes, and base-hash bits are missing.

Probabilistic sketches◈ Members↗
FA-72844

Bloom filter with double hashing: probe sequence skips the base probe · case 04

The filter sets bits at positions that another writer never probes, and base-hash bits are missing.

Probabilistic sketches◈ Members↗
FA-72845

Bloom filter with double hashing: probe sequence skips the base probe · case 05

The filter sets bits at positions that another writer never probes, and base-hash bits are missing.

Probabilistic sketches◈ Members↗
FA-72846

Bloom filter with double hashing: second hash is not forced odd · case 01

Bit layouts diverge from a conforming writer and, for power-of-two m, some items collapse onto few bits.

Probabilistic sketches● Open access↗
FA-72847

Bloom filter with double hashing: second hash is not forced odd · case 02

Bit layouts diverge from a conforming writer and, for power-of-two m, some items collapse onto few bits.

Probabilistic sketches◈ Members↗
FA-72848

Bloom filter with double hashing: second hash is not forced odd · case 03

Bit layouts diverge from a conforming writer and, for power-of-two m, some items collapse onto few bits.

Probabilistic sketches◈ Members↗
FA-72849

Bloom filter with double hashing: second hash is not forced odd · case 04

Bit layouts diverge from a conforming writer and, for power-of-two m, some items collapse onto few bits.

Probabilistic sketches◈ Members↗
FA-72850

Bloom filter with double hashing: second hash is not forced odd · case 05

Bit layouts diverge from a conforming writer and, for power-of-two m, some items collapse onto few bits.

Probabilistic sketches◈ Members↗
FA-72851

Bloom filter with double hashing: probe arithmetic does not wrap at 32 bits · case 01

A Python port disagrees with the 32-bit reference writer about which bits are set.

Probabilistic sketches● Open access↗
FA-72852

Bloom filter with double hashing: probe arithmetic does not wrap at 32 bits · case 02

A Python port disagrees with the 32-bit reference writer about which bits are set.

Probabilistic sketches◈ Members↗
FA-72853

Bloom filter with double hashing: probe arithmetic does not wrap at 32 bits · case 03

A Python port disagrees with the 32-bit reference writer about which bits are set.

Probabilistic sketches◈ Members↗
FA-72854

Bloom filter with double hashing: probe arithmetic does not wrap at 32 bits · case 04

A Python port disagrees with the 32-bit reference writer about which bits are set.

Probabilistic sketches◈ Members↗
FA-72855

Bloom filter with double hashing: probe arithmetic does not wrap at 32 bits · case 05

A Python port disagrees with the 32-bit reference writer about which bits are set.

Probabilistic sketches◈ Members↗
FA-72856

Bloom filter with double hashing: membership accepts a partial probe match · case 01

Items that were never inserted are reported present whenever one of their probe bits is set.

Probabilistic sketches● Open access↗
FA-72857

Bloom filter with double hashing: membership accepts a partial probe match · case 02

Items that were never inserted are reported present whenever one of their probe bits is set.

Probabilistic sketches◈ Members↗
FA-72858

Bloom filter with double hashing: membership accepts a partial probe match · case 03

Items that were never inserted are reported present whenever one of their probe bits is set.

Probabilistic sketches◈ Members↗
FA-72859

Bloom filter with double hashing: membership accepts a partial probe match · case 04

Items that were never inserted are reported present whenever one of their probe bits is set.

Probabilistic sketches◈ Members↗
FA-72860

Bloom filter with double hashing: membership accepts a partial probe match · case 05

Items that were never inserted are reported present whenever one of their probe bits is set.

Probabilistic sketches◈ Members↗
FA-72861

Bloom filter with double hashing: hash consumes code points instead of UTF-8 bytes · case 01

Non-ASCII keys map to different bits than in the reference writer, producing false negatives across implementations.

Probabilistic sketches● Open access↗
FA-72862

Bloom filter with double hashing: hash consumes code points instead of UTF-8 bytes · case 02

Non-ASCII keys map to different bits than in the reference writer, producing false negatives across implementations.

Probabilistic sketches◈ Members↗
FA-72863

Bloom filter with double hashing: hash consumes code points instead of UTF-8 bytes · case 03

Non-ASCII keys map to different bits than in the reference writer, producing false negatives across implementations.

Probabilistic sketches◈ Members↗
FA-72864

Bloom filter with double hashing: hash consumes code points instead of UTF-8 bytes · case 04

Non-ASCII keys map to different bits than in the reference writer, producing false negatives across implementations.

Probabilistic sketches◈ Members↗
FA-72865

Bloom filter with double hashing: hash consumes code points instead of UTF-8 bytes · case 05

Non-ASCII keys map to different bits than in the reference writer, producing false negatives across implementations.

Probabilistic sketches◈ Members↗
FA-72866

Bloom filter with double hashing: probe index reduced modulo m-1 · case 01

The last bit of the array is never set and every other probe lands on a shifted position.

Probabilistic sketches● Open access↗
FA-72867

Bloom filter with double hashing: probe index reduced modulo m-1 · case 02

The last bit of the array is never set and every other probe lands on a shifted position.

Probabilistic sketches◈ Members↗
FA-72868

Bloom filter with double hashing: probe index reduced modulo m-1 · case 03

The last bit of the array is never set and every other probe lands on a shifted position.

Probabilistic sketches◈ Members↗
FA-72869

Bloom filter with double hashing: probe index reduced modulo m-1 · case 04

The last bit of the array is never set and every other probe lands on a shifted position.

Probabilistic sketches◈ Members↗
FA-72870

Bloom filter with double hashing: probe index reduced modulo m-1 · case 05

The last bit of the array is never set and every other probe lands on a shifted position.

Probabilistic sketches◈ Members↗
FA-72871

Bloom filter sizing: bit count rounds down · case 01

The allocated bit array is one bit short and the realised false-positive rate exceeds the target.

Probabilistic sketches● Open access↗
FA-72872

Bloom filter sizing: bit count rounds down · case 02

The allocated bit array is one bit short and the realised false-positive rate exceeds the target.

Probabilistic sketches◈ Members↗
FA-72873

Bloom filter sizing: bit count rounds down · case 03

The allocated bit array is one bit short and the realised false-positive rate exceeds the target.

Probabilistic sketches◈ Members↗
FA-72874

Bloom filter sizing: bit count rounds down · case 04

The allocated bit array is one bit short and the realised false-positive rate exceeds the target.

Probabilistic sketches◈ Members↗
FA-72875

Bloom filter sizing: bit count rounds down · case 05

The allocated bit array is one bit short and the realised false-positive rate exceeds the target.

Probabilistic sketches◈ Members↗
FA-72876

Bloom filter sizing: bit formula divides by ln 2 instead of its square · case 01

Filters are sized far smaller than required for the requested false-positive rate.

Probabilistic sketches● Open access↗
FA-72877

Bloom filter sizing: bit formula divides by ln 2 instead of its square · case 02

Filters are sized far smaller than required for the requested false-positive rate.

Probabilistic sketches◈ Members↗
FA-72878

Bloom filter sizing: bit formula divides by ln 2 instead of its square · case 03

Filters are sized far smaller than required for the requested false-positive rate.

Probabilistic sketches◈ Members↗
FA-72879

Bloom filter sizing: bit formula divides by ln 2 instead of its square · case 04

Filters are sized far smaller than required for the requested false-positive rate.

Probabilistic sketches◈ Members↗
FA-72880

Bloom filter sizing: bit formula divides by ln 2 instead of its square · case 05

Filters are sized far smaller than required for the requested false-positive rate.

Probabilistic sketches◈ Members↗
FA-72881

Bloom filter sizing: probe count inverts the bits-per-item ratio · case 01

Filters use a single probe regardless of size, destroying the false-positive guarantee.

Probabilistic sketches● Open access↗
FA-72882

Bloom filter sizing: probe count inverts the bits-per-item ratio · case 02

Filters use a single probe regardless of size, destroying the false-positive guarantee.

Probabilistic sketches◈ Members↗
FA-72883

Bloom filter sizing: probe count inverts the bits-per-item ratio · case 03

Filters use a single probe regardless of size, destroying the false-positive guarantee.

Probabilistic sketches◈ Members↗
FA-72884

Bloom filter sizing: probe count inverts the bits-per-item ratio · case 04

Filters use a single probe regardless of size, destroying the false-positive guarantee.

Probabilistic sketches◈ Members↗
FA-72885

Bloom filter sizing: probe count inverts the bits-per-item ratio · case 05

Filters use a single probe regardless of size, destroying the false-positive guarantee.

Probabilistic sketches◈ Members↗
FA-72886

Bloom filter sizing: probe count may become zero · case 01

Very permissive targets produce a filter with zero probes that answers every query positively.

Probabilistic sketches● Open access↗
FA-72887

Bloom filter sizing: probe count may become zero · case 02

Very permissive targets produce a filter with zero probes that answers every query positively.

Probabilistic sketches◈ Members↗
FA-72888

Bloom filter sizing: probe count may become zero · case 03

Very permissive targets produce a filter with zero probes that answers every query positively.

Probabilistic sketches◈ Members↗
FA-72889

Bloom filter sizing: probe count may become zero · case 04

Very permissive targets produce a filter with zero probes that answers every query positively.

Probabilistic sketches◈ Members↗
FA-72890

Bloom filter sizing: probe count may become zero · case 05

Very permissive targets produce a filter with zero probes that answers every query positively.

Probabilistic sketches◈ Members↗
FA-72891

Bloom filter sizing: storage bytes round down · case 01

The byte buffer cannot hold the last partial byte of bits.

Probabilistic sketches● Open access↗
FA-72892

Bloom filter sizing: storage bytes round down · case 02

The byte buffer cannot hold the last partial byte of bits.

Probabilistic sketches◈ Members↗
FA-72893

Bloom filter sizing: storage bytes round down · case 03

The byte buffer cannot hold the last partial byte of bits.

Probabilistic sketches◈ Members↗
FA-72894

Bloom filter sizing: storage bytes round down · case 04

The byte buffer cannot hold the last partial byte of bits.

Probabilistic sketches◈ Members↗
FA-72895

Bloom filter sizing: storage bytes round down · case 05

The byte buffer cannot hold the last partial byte of bits.

Probabilistic sketches◈ Members↗
FA-72896

Bloom filter sizing: predicted false-positive rate uses inverted load · case 01

The reported false-positive rate is far too optimistic.

Probabilistic sketches● Open access↗
FA-72897

Bloom filter sizing: predicted false-positive rate uses inverted load · case 02

The reported false-positive rate is far too optimistic.

Probabilistic sketches◈ Members↗
FA-72898

Bloom filter sizing: predicted false-positive rate uses inverted load · case 03

The reported false-positive rate is far too optimistic.

Probabilistic sketches◈ Members↗
FA-72899

Bloom filter sizing: predicted false-positive rate uses inverted load · case 04

The reported false-positive rate is far too optimistic.

Probabilistic sketches◈ Members↗
FA-72900

Bloom filter sizing: predicted false-positive rate uses inverted load · case 05

The reported false-positive rate is far too optimistic.

Probabilistic sketches◈ 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 ↗