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

Verhoeff composes the dihedral product in the wrong order · case 01

Numbers containing reflections produce wrong check digits.

Check-digit algorithms● Open access↗
FA-72402

Verhoeff composes the dihedral product in the wrong order · case 02

Numbers containing reflections produce wrong check digits.

Check-digit algorithms◈ Members↗
FA-72403

Verhoeff composes the dihedral product in the wrong order · case 03

Numbers containing reflections produce wrong check digits.

Check-digit algorithms◈ Members↗
FA-72404

Verhoeff composes the dihedral product in the wrong order · case 04

Numbers containing reflections produce wrong check digits.

Check-digit algorithms◈ Members↗
FA-72405

Verhoeff composes the dihedral product in the wrong order · case 05

Numbers containing reflections produce wrong check digits.

Check-digit algorithms◈ Members↗
FA-72406

Damm looks up the digit row instead of the interim row · case 01

Most generated check digits disagree with the Damm reference.

Check-digit algorithms● Open access↗
FA-72407

Damm looks up the digit row instead of the interim row · case 02

Most generated check digits disagree with the Damm reference.

Check-digit algorithms◈ Members↗
FA-72408

Damm looks up the digit row instead of the interim row · case 03

Most generated check digits disagree with the Damm reference.

Check-digit algorithms◈ Members↗
FA-72409

Damm looks up the digit row instead of the interim row · case 04

Most generated check digits disagree with the Damm reference.

Check-digit algorithms◈ Members↗
FA-72410

Damm looks up the digit row instead of the interim row · case 05

Most generated check digits disagree with the Damm reference.

Check-digit algorithms◈ Members↗
FA-72411

Damm processes digits right to left · case 01

Check digits only match for palindromic payloads.

Check-digit algorithms● Open access↗
FA-72412

Damm processes digits right to left · case 02

Check digits only match for palindromic payloads.

Check-digit algorithms◈ Members↗
FA-72413

Damm processes digits right to left · case 03

Check digits only match for palindromic payloads.

Check-digit algorithms◈ Members↗
FA-72414

Damm processes digits right to left · case 04

Check digits only match for palindromic payloads.

Check-digit algorithms◈ Members↗
FA-72415

Damm processes digits right to left · case 05

Check digits only match for palindromic payloads.

Check-digit algorithms◈ Members↗
FA-72416

Damm rejects space-grouped references · case 01

References printed in groups of digits return None.

Check-digit algorithms● Open access↗
FA-72417

Damm rejects space-grouped references · case 02

References printed in groups of digits return None.

Check-digit algorithms◈ Members↗
FA-72418

Damm rejects space-grouped references · case 03

References printed in groups of digits return None.

Check-digit algorithms◈ Members↗
FA-72419

Damm rejects space-grouped references · case 04

References printed in groups of digits return None.

Check-digit algorithms◈ Members↗
FA-72420

Damm rejects space-grouped references · case 05

References printed in groups of digits return None.

Check-digit algorithms◈ Members↗
FA-72421

ISBN-10 weights start at nine · case 01

Correct ISBNs are rejected and some typos are accepted.

Check-digit algorithms● Open access↗
FA-72422

ISBN-10 weights start at nine · case 02

Correct ISBNs are rejected and some typos are accepted.

Check-digit algorithms◈ Members↗
FA-72423

ISBN-10 weights start at nine · case 03

Correct ISBNs are rejected and some typos are accepted.

Check-digit algorithms◈ Members↗
FA-72424

ISBN-10 weights start at nine · case 04

Correct ISBNs are rejected and some typos are accepted.

Check-digit algorithms◈ Members↗
FA-72425

ISBN-10 weights start at nine · case 05

Correct ISBNs are rejected and some typos are accepted.

Check-digit algorithms◈ Members↗
FA-72426

ISBN-10 validates the weighted sum modulo ten · case 01

X-terminated and many digit-terminated ISBNs are judged incorrectly.

Check-digit algorithms● Open access↗
FA-72427

ISBN-10 validates the weighted sum modulo ten · case 02

X-terminated and many digit-terminated ISBNs are judged incorrectly.

Check-digit algorithms◈ Members↗
FA-72428

ISBN-10 validates the weighted sum modulo ten · case 03

X-terminated and many digit-terminated ISBNs are judged incorrectly.

Check-digit algorithms◈ Members↗
FA-72429

ISBN-10 validates the weighted sum modulo ten · case 04

X-terminated and many digit-terminated ISBNs are judged incorrectly.

Check-digit algorithms◈ Members↗
FA-72430

ISBN-10 validates the weighted sum modulo ten · case 05

X-terminated and many digit-terminated ISBNs are judged incorrectly.

Check-digit algorithms◈ Members↗
FA-72431

ISBN-10 removes only the first hyphen · case 01

Hyphenated ISBNs are reported malformed.

Check-digit algorithms● Open access↗
FA-72432

ISBN-10 removes only the first hyphen · case 02

Hyphenated ISBNs are reported malformed.

Check-digit algorithms◈ Members↗
FA-72433

ISBN-10 removes only the first hyphen · case 03

Hyphenated ISBNs are reported malformed.

Check-digit algorithms◈ Members↗
FA-72434

ISBN-10 removes only the first hyphen · case 04

Hyphenated ISBNs are reported malformed.

Check-digit algorithms◈ Members↗
FA-72435

ISBN-10 removes only the first hyphen · case 05

Hyphenated ISBNs are reported malformed.

Check-digit algorithms◈ Members↗
FA-72436

ISBN-13 conversion keeps the ISBN-10 check character · case 01

Converted numbers end with the old mod-11 check (sometimes X) instead of an EAN check digit.

Check-digit algorithms● Open access↗
FA-72437

ISBN-13 conversion keeps the ISBN-10 check character · case 02

Converted numbers end with the old mod-11 check (sometimes X) instead of an EAN check digit.

Check-digit algorithms◈ Members↗
FA-72438

ISBN-13 conversion keeps the ISBN-10 check character · case 03

Converted numbers end with the old mod-11 check (sometimes X) instead of an EAN check digit.

Check-digit algorithms◈ Members↗
FA-72439

ISBN-13 conversion keeps the ISBN-10 check character · case 04

Converted numbers end with the old mod-11 check (sometimes X) instead of an EAN check digit.

Check-digit algorithms◈ Members↗
FA-72440

ISBN-13 conversion keeps the ISBN-10 check character · case 05

Converted numbers end with the old mod-11 check (sometimes X) instead of an EAN check digit.

Check-digit algorithms◈ Members↗
FA-72441

ISBN-13 conversion weights the prefix digit by three · case 01

Converted ISBN-13 numbers fail barcode scanners.

Check-digit algorithms● Open access↗
FA-72442

ISBN-13 conversion weights the prefix digit by three · case 02

Converted ISBN-13 numbers fail barcode scanners.

Check-digit algorithms◈ Members↗
FA-72443

ISBN-13 conversion weights the prefix digit by three · case 03

Converted ISBN-13 numbers fail barcode scanners.

Check-digit algorithms◈ Members↗
FA-72444

ISBN-13 conversion weights the prefix digit by three · case 04

Converted ISBN-13 numbers fail barcode scanners.

Check-digit algorithms◈ Members↗
FA-72445

ISBN-13 conversion weights the prefix digit by three · case 05

Converted ISBN-13 numbers fail barcode scanners.

Check-digit algorithms◈ Members↗
FA-72446

ISBN-13 conversion accepts an invalid ISBN-10 · case 01

Mistyped ISBN-10 values are converted into valid-looking ISBN-13 numbers.

Check-digit algorithms● Open access↗
FA-72447

ISBN-13 conversion accepts an invalid ISBN-10 · case 02

Mistyped ISBN-10 values are converted into valid-looking ISBN-13 numbers.

Check-digit algorithms◈ Members↗
FA-72448

ISBN-13 conversion accepts an invalid ISBN-10 · case 03

Mistyped ISBN-10 values are converted into valid-looking ISBN-13 numbers.

Check-digit algorithms◈ Members↗
FA-72449

ISBN-13 conversion accepts an invalid ISBN-10 · case 04

Mistyped ISBN-10 values are converted into valid-looking ISBN-13 numbers.

Check-digit algorithms◈ Members↗
FA-72450

ISBN-13 conversion accepts an invalid ISBN-10 · case 05

Mistyped ISBN-10 values are converted into valid-looking ISBN-13 numbers.

Check-digit algorithms◈ Members↗
FA-72451

GTIN weights are aligned from the left · case 01

GTIN-13 numbers fail while GTIN-8, -12 and -14 still validate.

Check-digit algorithms● Open access↗
FA-72452

GTIN weights are aligned from the left · case 02

GTIN-13 numbers fail while GTIN-8, -12 and -14 still validate.

Check-digit algorithms◈ Members↗
FA-72453

GTIN weights are aligned from the left · case 03

GTIN-13 numbers fail while GTIN-8, -12 and -14 still validate.

Check-digit algorithms◈ Members↗
FA-72454

GTIN weights are aligned from the left · case 04

GTIN-13 numbers fail while GTIN-8, -12 and -14 still validate.

Check-digit algorithms◈ Members↗
FA-72455

GTIN weights are aligned from the left · case 05

GTIN-13 numbers fail while GTIN-8, -12 and -14 still validate.

Check-digit algorithms◈ Members↗
FA-72456

GTIN validator rejects GTIN-8 and GTIN-14 · case 01

Short-format and case-level codes are reported malformed.

Check-digit algorithms● Open access↗
FA-72457

GTIN validator rejects GTIN-8 and GTIN-14 · case 02

Short-format and case-level codes are reported malformed.

Check-digit algorithms◈ Members↗
FA-72458

GTIN validator rejects GTIN-8 and GTIN-14 · case 03

Short-format and case-level codes are reported malformed.

Check-digit algorithms◈ Members↗
FA-72459

GTIN validator rejects GTIN-8 and GTIN-14 · case 04

Short-format and case-level codes are reported malformed.

Check-digit algorithms◈ Members↗
FA-72460

GTIN validator rejects GTIN-8 and GTIN-14 · case 05

Short-format and case-level codes are reported malformed.

Check-digit algorithms◈ Members↗
FA-72461

GTIN check digit uses the raw remainder · case 01

Nearly every valid code is rejected.

Check-digit algorithms● Open access↗
FA-72462

GTIN check digit uses the raw remainder · case 02

Nearly every valid code is rejected.

Check-digit algorithms◈ Members↗
FA-72463

GTIN check digit uses the raw remainder · case 03

Nearly every valid code is rejected.

Check-digit algorithms◈ Members↗
FA-72464

GTIN check digit uses the raw remainder · case 04

Nearly every valid code is rejected.

Check-digit algorithms◈ Members↗
FA-72465

GTIN check digit uses the raw remainder · case 05

Nearly every valid code is rejected.

Check-digit algorithms◈ Members↗
FA-72466

GTIN sum includes the check digit · case 01

Codes are validated against a sum that already contains the digit being checked.

Check-digit algorithms● Open access↗
FA-72467

GTIN sum includes the check digit · case 02

Codes are validated against a sum that already contains the digit being checked.

Check-digit algorithms◈ Members↗
FA-72468

GTIN sum includes the check digit · case 03

Codes are validated against a sum that already contains the digit being checked.

Check-digit algorithms◈ Members↗
FA-72469

GTIN sum includes the check digit · case 04

Codes are validated against a sum that already contains the digit being checked.

Check-digit algorithms◈ Members↗
FA-72470

GTIN sum includes the check digit · case 05

Codes are validated against a sum that already contains the digit being checked.

Check-digit algorithms◈ Members↗
FA-72471

IBAN rearrangement swaps country code and check digits · case 01

Every correct IBAN is reported invalid.

Check-digit algorithms● Open access↗
FA-72472

IBAN rearrangement swaps country code and check digits · case 02

Every correct IBAN is reported invalid.

Check-digit algorithms◈ Members↗
FA-72473

IBAN rearrangement swaps country code and check digits · case 03

Every correct IBAN is reported invalid.

Check-digit algorithms◈ Members↗
FA-72474

IBAN rearrangement swaps country code and check digits · case 04

Every correct IBAN is reported invalid.

Check-digit algorithms◈ Members↗
FA-72475

IBAN rearrangement swaps country code and check digits · case 05

Every correct IBAN is reported invalid.

Check-digit algorithms◈ Members↗
FA-72476

IBAN letters convert from one instead of ten · case 01

IBANs containing bank-code letters are rejected.

Check-digit algorithms● Open access↗
FA-72477

IBAN letters convert from one instead of ten · case 02

IBANs containing bank-code letters are rejected.

Check-digit algorithms◈ Members↗
FA-72478

IBAN letters convert from one instead of ten · case 03

IBANs containing bank-code letters are rejected.

Check-digit algorithms◈ Members↗
FA-72479

IBAN letters convert from one instead of ten · case 04

IBANs containing bank-code letters are rejected.

Check-digit algorithms◈ Members↗
FA-72480

IBAN letters convert from one instead of ten · case 05

IBANs containing bank-code letters are rejected.

Check-digit algorithms◈ Members↗
FA-72481

IBAN accepts unknown countries of any length · case 01

Identifiers from unsupported countries and truncated IBANs get a mod-97 verdict.

Check-digit algorithms● Open access↗
FA-72482

IBAN accepts unknown countries of any length · case 02

Identifiers from unsupported countries and truncated IBANs get a mod-97 verdict.

Check-digit algorithms◈ Members↗
FA-72483

IBAN accepts unknown countries of any length · case 03

Identifiers from unsupported countries and truncated IBANs get a mod-97 verdict.

Check-digit algorithms◈ Members↗
FA-72484

IBAN accepts unknown countries of any length · case 04

Identifiers from unsupported countries and truncated IBANs get a mod-97 verdict.

Check-digit algorithms◈ Members↗
FA-72485

IBAN accepts unknown countries of any length · case 05

Identifiers from unsupported countries and truncated IBANs get a mod-97 verdict.

Check-digit algorithms◈ Members↗
FA-72486

IBAN print format keeps interior spaces · case 01

IBANs copied in groups of four are reported malformed.

Check-digit algorithms● Open access↗
FA-72487

IBAN print format keeps interior spaces · case 02

IBANs copied in groups of four are reported malformed.

Check-digit algorithms◈ Members↗
FA-72488

IBAN print format keeps interior spaces · case 03

IBANs copied in groups of four are reported malformed.

Check-digit algorithms◈ Members↗
FA-72489

IBAN print format keeps interior spaces · case 04

IBANs copied in groups of four are reported malformed.

Check-digit algorithms◈ Members↗
FA-72490

IBAN print format keeps interior spaces · case 05

IBANs copied in groups of four are reported malformed.

Check-digit algorithms◈ Members↗
FA-72491

IBAN validity expects remainder zero · case 01

Every valid IBAN fails and certain wrong ones pass.

Check-digit algorithms● Open access↗
FA-72492

IBAN validity expects remainder zero · case 02

Every valid IBAN fails and certain wrong ones pass.

Check-digit algorithms◈ Members↗
FA-72493

IBAN validity expects remainder zero · case 03

Every valid IBAN fails and certain wrong ones pass.

Check-digit algorithms◈ Members↗
FA-72494

IBAN validity expects remainder zero · case 04

Every valid IBAN fails and certain wrong ones pass.

Check-digit algorithms◈ Members↗
FA-72495

IBAN validity expects remainder zero · case 05

Every valid IBAN fails and certain wrong ones pass.

Check-digit algorithms◈ Members↗
FA-72496

IBAN accepts check digits 00 and 01 · case 01

An IBAN whose check digits are the out-of-range aliases 00 or 01 is accepted.

Check-digit algorithms● Open access↗
FA-72497

IBAN accepts check digits 00 and 01 · case 02

An IBAN whose check digits are the out-of-range aliases 00 or 01 is accepted.

Check-digit algorithms◈ Members↗
FA-72498

IBAN accepts check digits 00 and 01 · case 03

An IBAN whose check digits are the out-of-range aliases 00 or 01 is accepted.

Check-digit algorithms◈ Members↗
FA-72499

IBAN accepts check digits 00 and 01 · case 04

An IBAN whose check digits are the out-of-range aliases 00 or 01 is accepted.

Check-digit algorithms◈ Members↗
FA-72500

IBAN accepts check digits 00 and 01 · case 05

An IBAN whose check digits are the out-of-range aliases 00 or 01 is accepted.

Check-digit algorithms◈ 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 ↗