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

Odd-length all-digit data starts in set C · case 01

A three-digit quantity is encoded as a pair in C plus a switch to B for its last digit.

Barcode symbology encoding● Open access↗
FA-79402

Odd-length all-digit data starts in set C · case 02

A three-digit quantity is encoded as a pair in C plus a switch to B for its last digit.

Barcode symbology encoding◈ Members↗
FA-79403

Odd-length all-digit data starts in set C · case 03

A three-digit quantity is encoded as a pair in C plus a switch to B for its last digit.

Barcode symbology encoding◈ Members↗
FA-79404

Odd-length all-digit data starts in set C · case 04

A three-digit quantity is encoded as a pair in C plus a switch to B for its last digit.

Barcode symbology encoding◈ Members↗
FA-79405

Odd-length all-digit data starts in set C · case 05

A three-digit quantity is encoded as a pair in C plus a switch to B for its last digit.

Barcode symbology encoding◈ Members↗
FA-79406

Code 128 switches to set C for four digits in mid-data · case 01

Symbols grow when a four-digit run sits between letters, because two switch characters cost more than the pairs save.

Barcode symbology encoding● Open access↗
FA-79407

Code 128 switches to set C for four digits in mid-data · case 02

Symbols grow when a four-digit run sits between letters, because two switch characters cost more than the pairs save.

Barcode symbology encoding◈ Members↗
FA-79408

Code 128 switches to set C for four digits in mid-data · case 03

Symbols grow when a four-digit run sits between letters, because two switch characters cost more than the pairs save.

Barcode symbology encoding◈ Members↗
FA-79409

Code 128 switches to set C for four digits in mid-data · case 04

Symbols grow when a four-digit run sits between letters, because two switch characters cost more than the pairs save.

Barcode symbology encoding◈ Members↗
FA-79410

Code 128 switches to set C for four digits in mid-data · case 05

Symbols grow when a four-digit run sits between letters, because two switch characters cost more than the pairs save.

Barcode symbology encoding◈ Members↗
FA-79411

Trailing four-digit runs stay in set B · case 01

Serial numbers ending in four or five digits produce longer symbols than necessary.

Barcode symbology encoding● Open access↗
FA-79412

Trailing four-digit runs stay in set B · case 02

Serial numbers ending in four or five digits produce longer symbols than necessary.

Barcode symbology encoding◈ Members↗
FA-79413

Trailing four-digit runs stay in set B · case 03

Serial numbers ending in four or five digits produce longer symbols than necessary.

Barcode symbology encoding◈ Members↗
FA-79414

Trailing four-digit runs stay in set B · case 04

Serial numbers ending in four or five digits produce longer symbols than necessary.

Barcode symbology encoding◈ Members↗
FA-79415

Trailing four-digit runs stay in set B · case 05

Serial numbers ending in four or five digits produce longer symbols than necessary.

Barcode symbology encoding◈ Members↗
FA-79416

Odd digit run enters set C without peeling a digit · case 01

A seven-digit run ends with a lone digit that forces another switch back to B.

Barcode symbology encoding● Open access↗
FA-79417

Odd digit run enters set C without peeling a digit · case 02

A seven-digit run ends with a lone digit that forces another switch back to B.

Barcode symbology encoding◈ Members↗
FA-79418

Odd digit run enters set C without peeling a digit · case 03

A seven-digit run ends with a lone digit that forces another switch back to B.

Barcode symbology encoding◈ Members↗
FA-79419

Odd digit run enters set C without peeling a digit · case 04

A seven-digit run ends with a lone digit that forces another switch back to B.

Barcode symbology encoding◈ Members↗
FA-79420

Odd digit run enters set C without peeling a digit · case 05

A seven-digit run ends with a lone digit that forces another switch back to B.

Barcode symbology encoding◈ Members↗
FA-79421

Set C pairs a digit with a following letter · case 01

Data such as "1234567A" produces a set C segment containing "7A".

Barcode symbology encoding● Open access↗
FA-79422

Set C pairs a digit with a following letter · case 02

Data such as "1234567A" produces a set C segment containing "7A".

Barcode symbology encoding◈ Members↗
FA-79423

Set C pairs a digit with a following letter · case 03

Data such as "1234567A" produces a set C segment containing "7A".

Barcode symbology encoding◈ Members↗
FA-79424

Set C pairs a digit with a following letter · case 04

Data such as "1234567A" produces a set C segment containing "7A".

Barcode symbology encoding◈ Members↗
FA-79425

Set C pairs a digit with a following letter · case 05

Data such as "1234567A" produces a set C segment containing "7A".

Barcode symbology encoding◈ Members↗
FA-79426

Code 128 set A shifts control characters into the digit range · case 01

A GS separator encoded in set A decodes as "=", corrupting GS1 data.

Barcode symbology encoding● Open access↗
FA-79427

Code 128 set A shifts control characters into the digit range · case 02

A GS separator encoded in set A decodes as "=", corrupting GS1 data.

Barcode symbology encoding◈ Members↗
FA-79428

Code 128 set A shifts control characters into the digit range · case 03

A GS separator encoded in set A decodes as "=", corrupting GS1 data.

Barcode symbology encoding◈ Members↗
FA-79429

Code 128 set A shifts control characters into the digit range · case 04

A GS separator encoded in set A decodes as "=", corrupting GS1 data.

Barcode symbology encoding◈ Members↗
FA-79430

Code 128 set A shifts control characters into the digit range · case 05

A GS separator encoded in set A decodes as "=", corrupting GS1 data.

Barcode symbology encoding◈ Members↗
FA-79431

Set A accepts lowercase letters · case 01

Lowercase text planned into set A decodes as control characters.

Barcode symbology encoding● Open access↗
FA-79432

Set A accepts lowercase letters · case 02

Lowercase text planned into set A decodes as control characters.

Barcode symbology encoding◈ Members↗
FA-79433

Set A accepts lowercase letters · case 03

Lowercase text planned into set A decodes as control characters.

Barcode symbology encoding◈ Members↗
FA-79434

Set A accepts lowercase letters · case 04

Lowercase text planned into set A decodes as control characters.

Barcode symbology encoding◈ Members↗
FA-79435

Set A accepts lowercase letters · case 05

Lowercase text planned into set A decodes as control characters.

Barcode symbology encoding◈ Members↗
FA-79436

Code A and Code B switch characters are exchanged · case 01

Switching from C to B decodes as a switch to A, so lowercase letters decode as control codes.

Barcode symbology encoding● Open access↗
FA-79437

Code A and Code B switch characters are exchanged · case 02

Switching from C to B decodes as a switch to A, so lowercase letters decode as control codes.

Barcode symbology encoding◈ Members↗
FA-79438

Code A and Code B switch characters are exchanged · case 03

Switching from C to B decodes as a switch to A, so lowercase letters decode as control codes.

Barcode symbology encoding◈ Members↗
FA-79439

Code A and Code B switch characters are exchanged · case 04

Switching from C to B decodes as a switch to A, so lowercase letters decode as control codes.

Barcode symbology encoding◈ Members↗
FA-79440

Code A and Code B switch characters are exchanged · case 05

Switching from C to B decodes as a switch to A, so lowercase letters decode as control codes.

Barcode symbology encoding◈ Members↗
FA-79441

SHIFT encodes its character in the current set · case 01

A lowercase letter shifted inside set A comes out as a control code.

Barcode symbology encoding● Open access↗
FA-79442

SHIFT encodes its character in the current set · case 02

A lowercase letter shifted inside set A comes out as a control code.

Barcode symbology encoding◈ Members↗
FA-79443

SHIFT encodes its character in the current set · case 03

A lowercase letter shifted inside set A comes out as a control code.

Barcode symbology encoding◈ Members↗
FA-79444

SHIFT encodes its character in the current set · case 04

A lowercase letter shifted inside set A comes out as a control code.

Barcode symbology encoding◈ Members↗
FA-79445

SHIFT encodes its character in the current set · case 05

A lowercase letter shifted inside set A comes out as a control code.

Barcode symbology encoding◈ Members↗
FA-79446

Set C accepts pairs containing spaces · case 01

A space-padded quantity is encoded as a digit pair value because int() ignores whitespace.

Barcode symbology encoding● Open access↗
FA-79447

Set C accepts pairs containing spaces · case 02

A space-padded quantity is encoded as a digit pair value because int() ignores whitespace.

Barcode symbology encoding◈ Members↗
FA-79448

Set C accepts pairs containing spaces · case 03

A space-padded quantity is encoded as a digit pair value because int() ignores whitespace.

Barcode symbology encoding◈ Members↗
FA-79449

Set C accepts pairs containing spaces · case 04

A space-padded quantity is encoded as a digit pair value because int() ignores whitespace.

Barcode symbology encoding◈ Members↗
FA-79450

Set C accepts pairs containing spaces · case 05

A space-padded quantity is encoded as a digit pair value because int() ignores whitespace.

Barcode symbology encoding◈ Members↗
FA-79451

Leading FNC1 is emitted without a start character · case 01

GS1 symbols begin with value 102 and no start code, so scanners reject them.

Barcode symbology encoding● Open access↗
FA-79452

Leading FNC1 is emitted without a start character · case 02

GS1 symbols begin with value 102 and no start code, so scanners reject them.

Barcode symbology encoding◈ Members↗
FA-79453

Leading FNC1 is emitted without a start character · case 03

GS1 symbols begin with value 102 and no start code, so scanners reject them.

Barcode symbology encoding◈ Members↗
FA-79454

Leading FNC1 is emitted without a start character · case 04

GS1 symbols begin with value 102 and no start code, so scanners reject them.

Barcode symbology encoding◈ Members↗
FA-79455

Leading FNC1 is emitted without a start character · case 05

GS1 symbols begin with value 102 and no start code, so scanners reject them.

Barcode symbology encoding◈ Members↗
FA-79456

Code 39 width adds a gap after the stop character · case 01

Label layout reserves one extra narrow module, pushing the symbol into the right quiet zone.

Barcode symbology encoding● Open access↗
FA-79457

Code 39 width adds a gap after the stop character · case 02

Label layout reserves one extra narrow module, pushing the symbol into the right quiet zone.

Barcode symbology encoding◈ Members↗
FA-79458

Code 39 width adds a gap after the stop character · case 03

Label layout reserves one extra narrow module, pushing the symbol into the right quiet zone.

Barcode symbology encoding◈ Members↗
FA-79459

Code 39 width adds a gap after the stop character · case 04

Label layout reserves one extra narrow module, pushing the symbol into the right quiet zone.

Barcode symbology encoding◈ Members↗
FA-79460

Code 39 width adds a gap after the stop character · case 05

Label layout reserves one extra narrow module, pushing the symbol into the right quiet zone.

Barcode symbology encoding◈ Members↗
FA-79461

Code 39 width omits the start and stop characters · case 01

Printed symbols are wider than the layout box and get clipped.

Barcode symbology encoding● Open access↗
FA-79462

Code 39 width omits the start and stop characters · case 02

Printed symbols are wider than the layout box and get clipped.

Barcode symbology encoding◈ Members↗
FA-79463

Code 39 width omits the start and stop characters · case 03

Printed symbols are wider than the layout box and get clipped.

Barcode symbology encoding◈ Members↗
FA-79464

Code 39 width omits the start and stop characters · case 04

Printed symbols are wider than the layout box and get clipped.

Barcode symbology encoding◈ Members↗
FA-79465

Code 39 width omits the start and stop characters · case 05

Printed symbols are wider than the layout box and get clipped.

Barcode symbology encoding◈ Members↗
FA-79466

Standard Code 39 silently upper-cases lowercase input · case 01

Case-sensitive part numbers scan back in capitals without any error.

Barcode symbology encoding● Open access↗
FA-79467

Standard Code 39 silently upper-cases lowercase input · case 02

Case-sensitive part numbers scan back in capitals without any error.

Barcode symbology encoding◈ Members↗
FA-79468

Standard Code 39 silently upper-cases lowercase input · case 03

Case-sensitive part numbers scan back in capitals without any error.

Barcode symbology encoding◈ Members↗
FA-79469

Standard Code 39 silently upper-cases lowercase input · case 04

Case-sensitive part numbers scan back in capitals without any error.

Barcode symbology encoding◈ Members↗
FA-79470

Standard Code 39 silently upper-cases lowercase input · case 05

Case-sensitive part numbers scan back in capitals without any error.

Barcode symbology encoding◈ Members↗
FA-79471

Full ASCII Code 39 leaves $ % + / unescaped · case 01

A price such as "$5" decodes in full ASCII readers as a control character.

Barcode symbology encoding● Open access↗
FA-79472

Full ASCII Code 39 leaves $ % + / unescaped · case 02

A price such as "$5" decodes in full ASCII readers as a control character.

Barcode symbology encoding◈ Members↗
FA-79473

Full ASCII Code 39 leaves $ % + / unescaped · case 03

A price such as "$5" decodes in full ASCII readers as a control character.

Barcode symbology encoding◈ Members↗
FA-79474

Full ASCII Code 39 leaves $ % + / unescaped · case 04

A price such as "$5" decodes in full ASCII readers as a control character.

Barcode symbology encoding◈ Members↗
FA-79475

Full ASCII Code 39 leaves $ % + / unescaped · case 05

A price such as "$5" decodes in full ASCII readers as a control character.

Barcode symbology encoding◈ Members↗
FA-79476

Full ASCII control escapes are shifted by one letter · case 01

A tab encodes as $J (line feed) and data separators become the wrong control codes.

Barcode symbology encoding● Open access↗
FA-79477

Full ASCII control escapes are shifted by one letter · case 02

A tab encodes as $J (line feed) and data separators become the wrong control codes.

Barcode symbology encoding◈ Members↗
FA-79478

Full ASCII control escapes are shifted by one letter · case 03

A tab encodes as $J (line feed) and data separators become the wrong control codes.

Barcode symbology encoding◈ Members↗
FA-79479

Full ASCII control escapes are shifted by one letter · case 04

A tab encodes as $J (line feed) and data separators become the wrong control codes.

Barcode symbology encoding◈ Members↗
FA-79480

Full ASCII control escapes are shifted by one letter · case 05

A tab encodes as $J (line feed) and data separators become the wrong control codes.

Barcode symbology encoding◈ Members↗
FA-79481

Code 39 accepts a 4:1 wide ratio · case 01

Symbols printed with an out-of-range ratio are wider than planned and fail grading.

Barcode symbology encoding● Open access↗
FA-79482

Code 39 accepts a 4:1 wide ratio · case 02

Symbols printed with an out-of-range ratio are wider than planned and fail grading.

Barcode symbology encoding◈ Members↗
FA-79483

Code 39 accepts a 4:1 wide ratio · case 03

Symbols printed with an out-of-range ratio are wider than planned and fail grading.

Barcode symbology encoding◈ Members↗
FA-79484

Code 39 accepts a 4:1 wide ratio · case 04

Symbols printed with an out-of-range ratio are wider than planned and fail grading.

Barcode symbology encoding◈ Members↗
FA-79485

Code 39 accepts a 4:1 wide ratio · case 05

Symbols printed with an out-of-range ratio are wider than planned and fail grading.

Barcode symbology encoding◈ Members↗
FA-79486

EAN-13 right quiet zone uses the left width · case 01

Retail labels reserve four extra modules on the right and overflow narrow shelf strips.

Barcode symbology encoding● Open access↗
FA-79487

EAN-13 right quiet zone uses the left width · case 02

Retail labels reserve four extra modules on the right and overflow narrow shelf strips.

Barcode symbology encoding◈ Members↗
FA-79488

EAN-13 right quiet zone uses the left width · case 03

Retail labels reserve four extra modules on the right and overflow narrow shelf strips.

Barcode symbology encoding◈ Members↗
FA-79489

EAN-13 right quiet zone uses the left width · case 04

Retail labels reserve four extra modules on the right and overflow narrow shelf strips.

Barcode symbology encoding◈ Members↗
FA-79490

EAN-13 right quiet zone uses the left width · case 05

Retail labels reserve four extra modules on the right and overflow narrow shelf strips.

Barcode symbology encoding◈ Members↗
FA-79491

Add-on width counts only the digit characters · case 01

Magazine labels with EAN-5 add-ons are laid out too narrow and the add-on is clipped.

Barcode symbology encoding● Open access↗
FA-79492

Add-on width counts only the digit characters · case 02

Magazine labels with EAN-5 add-ons are laid out too narrow and the add-on is clipped.

Barcode symbology encoding◈ Members↗
FA-79493

Add-on width counts only the digit characters · case 03

Magazine labels with EAN-5 add-ons are laid out too narrow and the add-on is clipped.

Barcode symbology encoding◈ Members↗
FA-79494

Add-on width counts only the digit characters · case 04

Magazine labels with EAN-5 add-ons are laid out too narrow and the add-on is clipped.

Barcode symbology encoding◈ Members↗
FA-79495

Add-on width counts only the digit characters · case 05

Magazine labels with EAN-5 add-ons are laid out too narrow and the add-on is clipped.

Barcode symbology encoding◈ Members↗
FA-79496

Add-on gap is added on top of the main right quiet zone · case 01

Symbols with add-ons are wider than the allowed label area.

Barcode symbology encoding● Open access↗
FA-79497

Add-on gap is added on top of the main right quiet zone · case 02

Symbols with add-ons are wider than the allowed label area.

Barcode symbology encoding◈ Members↗
FA-79498

Add-on gap is added on top of the main right quiet zone · case 03

Symbols with add-ons are wider than the allowed label area.

Barcode symbology encoding◈ Members↗
FA-79499

Add-on gap is added on top of the main right quiet zone · case 04

Symbols with add-ons are wider than the allowed label area.

Barcode symbology encoding◈ Members↗
FA-79500

Add-on gap is added on top of the main right quiet zone · case 05

Symbols with add-ons are wider than the allowed label area.

Barcode symbology encoding◈ 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 ↗