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

Treasure dead-end finder: Doors and chasms become treasure spots · case 01

Treasure spawns on doors or over chasms.

Procedural level generation constraints● Open access↗
FA-86602

Treasure dead-end finder: Doors and chasms become treasure spots · case 02

Treasure spawns on doors or over chasms.

Procedural level generation constraints◈ Members↗
FA-86603

Treasure dead-end finder: Doors and chasms become treasure spots · case 03

Treasure spawns on doors or over chasms.

Procedural level generation constraints◈ Members↗
FA-86604

Treasure dead-end finder: Doors and chasms become treasure spots · case 04

Treasure spawns on doors or over chasms.

Procedural level generation constraints◈ Members↗
FA-86605

Treasure dead-end finder: Doors and chasms become treasure spots · case 05

Treasure spawns on doors or over chasms.

Procedural level generation constraints◈ Members↗
FA-86606

Treasure dead-end finder: Chasms count as exits · case 01

Cells beside a chasm are not recognized as dead ends.

Procedural level generation constraints● Open access↗
FA-86607

Treasure dead-end finder: Chasms count as exits · case 02

Cells beside a chasm are not recognized as dead ends.

Procedural level generation constraints◈ Members↗
FA-86608

Treasure dead-end finder: Chasms count as exits · case 03

Cells beside a chasm are not recognized as dead ends.

Procedural level generation constraints◈ Members↗
FA-86609

Treasure dead-end finder: Chasms count as exits · case 04

Cells beside a chasm are not recognized as dead ends.

Procedural level generation constraints◈ Members↗
FA-86610

Treasure dead-end finder: Chasms count as exits · case 05

Cells beside a chasm are not recognized as dead ends.

Procedural level generation constraints◈ Members↗
FA-86611

Treasure dead-end finder: Isolated cells count as dead ends · case 01

Treasure is placed in sealed pockets the player cannot reach.

Procedural level generation constraints● Open access↗
FA-86612

Treasure dead-end finder: Isolated cells count as dead ends · case 02

Treasure is placed in sealed pockets the player cannot reach.

Procedural level generation constraints◈ Members↗
FA-86613

Treasure dead-end finder: Isolated cells count as dead ends · case 03

Treasure is placed in sealed pockets the player cannot reach.

Procedural level generation constraints◈ Members↗
FA-86614

Treasure dead-end finder: Isolated cells count as dead ends · case 04

Treasure is placed in sealed pockets the player cannot reach.

Procedural level generation constraints◈ Members↗
FA-86615

Treasure dead-end finder: Isolated cells count as dead ends · case 05

Treasure is placed in sealed pockets the player cannot reach.

Procedural level generation constraints◈ Members↗
FA-86616

Treasure dead-end finder: Treasure placed on the exit · case 01

The exit tile is reported as a treasure dead end.

Procedural level generation constraints● Open access↗
FA-86617

Treasure dead-end finder: Treasure placed on the exit · case 02

The exit tile is reported as a treasure dead end.

Procedural level generation constraints◈ Members↗
FA-86618

Treasure dead-end finder: Treasure placed on the exit · case 03

The exit tile is reported as a treasure dead end.

Procedural level generation constraints◈ Members↗
FA-86619

Treasure dead-end finder: Treasure placed on the exit · case 04

The exit tile is reported as a treasure dead end.

Procedural level generation constraints◈ Members↗
FA-86620

Treasure dead-end finder: Treasure placed on the exit · case 05

The exit tile is reported as a treasure dead end.

Procedural level generation constraints◈ Members↗
FA-86621

Perfect maze validator: Diagonal passages validate · case 01

Mazes with diagonal openings pass validation.

Procedural level generation constraints● Open access↗
FA-86622

Perfect maze validator: Diagonal passages validate · case 02

Mazes with diagonal openings pass validation.

Procedural level generation constraints◈ Members↗
FA-86623

Perfect maze validator: Diagonal passages validate · case 03

Mazes with diagonal openings pass validation.

Procedural level generation constraints◈ Members↗
FA-86624

Perfect maze validator: Diagonal passages validate · case 04

Mazes with diagonal openings pass validation.

Procedural level generation constraints◈ Members↗
FA-86625

Perfect maze validator: Diagonal passages validate · case 05

Mazes with diagonal openings pass validation.

Procedural level generation constraints◈ Members↗
FA-86626

Perfect maze validator: Reversed duplicate passages are missed · case 01

A passage listed both ways is reported as a loop.

Procedural level generation constraints● Open access↗
FA-86627

Perfect maze validator: Reversed duplicate passages are missed · case 02

A passage listed both ways is reported as a loop.

Procedural level generation constraints◈ Members↗
FA-86628

Perfect maze validator: Reversed duplicate passages are missed · case 03

A passage listed both ways is reported as a loop.

Procedural level generation constraints◈ Members↗
FA-86629

Perfect maze validator: Reversed duplicate passages are missed · case 04

A passage listed both ways is reported as a loop.

Procedural level generation constraints◈ Members↗
FA-86630

Perfect maze validator: Reversed duplicate passages are missed · case 05

A passage listed both ways is reported as a loop.

Procedural level generation constraints◈ Members↗
FA-86631

Perfect maze validator: Union links cells instead of roots · case 01

Connected mazes are reported as loops or disconnected.

Procedural level generation constraints● Open access↗
FA-86632

Perfect maze validator: Union links cells instead of roots · case 02

Connected mazes are reported as loops or disconnected.

Procedural level generation constraints◈ Members↗
FA-86633

Perfect maze validator: Union links cells instead of roots · case 03

Connected mazes are reported as loops or disconnected.

Procedural level generation constraints◈ Members↗
FA-86634

Perfect maze validator: Union links cells instead of roots · case 04

Connected mazes are reported as loops or disconnected.

Procedural level generation constraints◈ Members↗
FA-86635

Perfect maze validator: Union links cells instead of roots · case 05

Connected mazes are reported as loops or disconnected.

Procedural level generation constraints◈ Members↗
FA-86636

Perfect maze validator: Uncompressed parents counted as roots · case 01

Fully connected mazes are reported disconnected.

Procedural level generation constraints● Open access↗
FA-86637

Perfect maze validator: Uncompressed parents counted as roots · case 02

Fully connected mazes are reported disconnected.

Procedural level generation constraints◈ Members↗
FA-86638

Perfect maze validator: Uncompressed parents counted as roots · case 03

Fully connected mazes are reported disconnected.

Procedural level generation constraints◈ Members↗
FA-86639

Perfect maze validator: Uncompressed parents counted as roots · case 04

Fully connected mazes are reported disconnected.

Procedural level generation constraints◈ Members↗
FA-86640

Perfect maze validator: Uncompressed parents counted as roots · case 05

Fully connected mazes are reported disconnected.

Procedural level generation constraints◈ Members↗
FA-86641

Boss room selection: Doors are one-way · case 01

Rooms behind doors listed backwards are never considered for the boss.

Procedural level generation constraints● Open access↗
FA-86642

Boss room selection: Doors are one-way · case 02

Rooms behind doors listed backwards are never considered for the boss.

Procedural level generation constraints◈ Members↗
FA-86643

Boss room selection: Doors are one-way · case 03

Rooms behind doors listed backwards are never considered for the boss.

Procedural level generation constraints◈ Members↗
FA-86644

Boss room selection: Doors are one-way · case 04

Rooms behind doors listed backwards are never considered for the boss.

Procedural level generation constraints◈ Members↗
FA-86645

Boss room selection: Doors are one-way · case 05

Rooms behind doors listed backwards are never considered for the boss.

Procedural level generation constraints◈ Members↗
FA-86646

Boss room selection: Distance equals discovery order · case 01

The last discovered room becomes the boss even if close to start.

Procedural level generation constraints● Open access↗
FA-86647

Boss room selection: Distance equals discovery order · case 02

The last discovered room becomes the boss even if close to start.

Procedural level generation constraints◈ Members↗
FA-86648

Boss room selection: Distance equals discovery order · case 03

The last discovered room becomes the boss even if close to start.

Procedural level generation constraints◈ Members↗
FA-86649

Boss room selection: Distance equals discovery order · case 04

The last discovered room becomes the boss even if close to start.

Procedural level generation constraints◈ Members↗
FA-86650

Boss room selection: Distance equals discovery order · case 05

The last discovered room becomes the boss even if close to start.

Procedural level generation constraints◈ Members↗
FA-86651

Boss room selection: Ties choose the highest room id · case 01

Equal-distance candidates pick the wrong boss room.

Procedural level generation constraints● Open access↗
FA-86652

Boss room selection: Ties choose the highest room id · case 02

Equal-distance candidates pick the wrong boss room.

Procedural level generation constraints◈ Members↗
FA-86653

Boss room selection: Ties choose the highest room id · case 03

Equal-distance candidates pick the wrong boss room.

Procedural level generation constraints◈ Members↗
FA-86654

Boss room selection: Ties choose the highest room id · case 04

Equal-distance candidates pick the wrong boss room.

Procedural level generation constraints◈ Members↗
FA-86655

Boss room selection: Ties choose the highest room id · case 05

Equal-distance candidates pick the wrong boss room.

Procedural level generation constraints◈ Members↗
FA-86656

Boss room selection: Start room becomes the boss · case 01

Isolated starts put the boss in the spawn room.

Procedural level generation constraints● Open access↗
FA-86657

Boss room selection: Start room becomes the boss · case 02

Isolated starts put the boss in the spawn room.

Procedural level generation constraints◈ Members↗
FA-86658

Boss room selection: Start room becomes the boss · case 03

Isolated starts put the boss in the spawn room.

Procedural level generation constraints◈ Members↗
FA-86659

Boss room selection: Start room becomes the boss · case 04

Isolated starts put the boss in the spawn room.

Procedural level generation constraints◈ Members↗
FA-86660

Boss room selection: Start room becomes the boss · case 05

Isolated starts put the boss in the spawn room.

Procedural level generation constraints◈ Members↗
FA-86661

Wall autotile bitmask: North bit samples the south neighbour · case 01

Wall tops render as if the wall continued below.

Procedural level generation constraints● Open access↗
FA-86662

Wall autotile bitmask: North bit samples the south neighbour · case 02

Wall tops render as if the wall continued below.

Procedural level generation constraints◈ Members↗
FA-86663

Wall autotile bitmask: North bit samples the south neighbour · case 03

Wall tops render as if the wall continued below.

Procedural level generation constraints◈ Members↗
FA-86664

Wall autotile bitmask: North bit samples the south neighbour · case 04

Wall tops render as if the wall continued below.

Procedural level generation constraints◈ Members↗
FA-86665

Wall autotile bitmask: North bit samples the south neighbour · case 05

Wall tops render as if the wall continued below.

Procedural level generation constraints◈ Members↗
FA-86666

Wall autotile bitmask: Floors look like isolated pillars · case 01

Floor cells receive the isolated-wall sprite.

Procedural level generation constraints● Open access↗
FA-86667

Wall autotile bitmask: Floors look like isolated pillars · case 02

Floor cells receive the isolated-wall sprite.

Procedural level generation constraints◈ Members↗
FA-86668

Wall autotile bitmask: Floors look like isolated pillars · case 03

Floor cells receive the isolated-wall sprite.

Procedural level generation constraints◈ Members↗
FA-86669

Wall autotile bitmask: Floors look like isolated pillars · case 04

Floor cells receive the isolated-wall sprite.

Procedural level generation constraints◈ Members↗
FA-86670

Wall autotile bitmask: Floors look like isolated pillars · case 05

Floor cells receive the isolated-wall sprite.

Procedural level generation constraints◈ Members↗
FA-86671

Wall autotile bitmask: Mask keeps only the last neighbour · case 01

Wall corners use straight-wall sprites.

Procedural level generation constraints● Open access↗
FA-86672

Wall autotile bitmask: Mask keeps only the last neighbour · case 02

Wall corners use straight-wall sprites.

Procedural level generation constraints◈ Members↗
FA-86673

Wall autotile bitmask: Mask keeps only the last neighbour · case 03

Wall corners use straight-wall sprites.

Procedural level generation constraints◈ Members↗
FA-86674

Wall autotile bitmask: Mask keeps only the last neighbour · case 04

Wall corners use straight-wall sprites.

Procedural level generation constraints◈ Members↗
FA-86675

Wall autotile bitmask: Mask keeps only the last neighbour · case 05

Wall corners use straight-wall sprites.

Procedural level generation constraints◈ Members↗
FA-86676

Wall autotile bitmask: Doors and chasms connect walls · case 01

Walls visually merge into doorways.

Procedural level generation constraints● Open access↗
FA-86677

Wall autotile bitmask: Doors and chasms connect walls · case 02

Walls visually merge into doorways.

Procedural level generation constraints◈ Members↗
FA-86678

Wall autotile bitmask: Doors and chasms connect walls · case 03

Walls visually merge into doorways.

Procedural level generation constraints◈ Members↗
FA-86679

Wall autotile bitmask: Doors and chasms connect walls · case 04

Walls visually merge into doorways.

Procedural level generation constraints◈ Members↗
FA-86680

Wall autotile bitmask: Doors and chasms connect walls · case 05

Walls visually merge into doorways.

Procedural level generation constraints◈ Members↗
FA-86681

Decoration scatter with quadrant quota: Scatter spacing uses Manhattan distance · case 01

Props cluster diagonally closer than the radius.

Procedural level generation constraints● Open access↗
FA-86682

Decoration scatter with quadrant quota: Scatter spacing uses Manhattan distance · case 02

Props cluster diagonally closer than the radius.

Procedural level generation constraints◈ Members↗
FA-86683

Decoration scatter with quadrant quota: Scatter spacing uses Manhattan distance · case 03

Props cluster diagonally closer than the radius.

Procedural level generation constraints◈ Members↗
FA-86684

Decoration scatter with quadrant quota: Scatter spacing uses Manhattan distance · case 04

Props cluster diagonally closer than the radius.

Procedural level generation constraints◈ Members↗
FA-86685

Decoration scatter with quadrant quota: Scatter spacing uses Manhattan distance · case 05

Props cluster diagonally closer than the radius.

Procedural level generation constraints◈ Members↗
FA-86686

Decoration scatter with quadrant quota: Odd maps get a third quadrant column · case 01

Quotas are bypassed along the last column of odd-width maps.

Procedural level generation constraints● Open access↗
FA-86687

Decoration scatter with quadrant quota: Odd maps get a third quadrant column · case 02

Quotas are bypassed along the last column of odd-width maps.

Procedural level generation constraints◈ Members↗
FA-86688

Decoration scatter with quadrant quota: Odd maps get a third quadrant column · case 03

Quotas are bypassed along the last column of odd-width maps.

Procedural level generation constraints◈ Members↗
FA-86689

Decoration scatter with quadrant quota: Odd maps get a third quadrant column · case 04

Quotas are bypassed along the last column of odd-width maps.

Procedural level generation constraints◈ Members↗
FA-86690

Decoration scatter with quadrant quota: Odd maps get a third quadrant column · case 05

Quotas are bypassed along the last column of odd-width maps.

Procedural level generation constraints◈ Members↗
FA-86691

Decoration scatter with quadrant quota: Quadrants take one extra prop · case 01

Each quadrant holds one more prop than configured.

Procedural level generation constraints● Open access↗
FA-86692

Decoration scatter with quadrant quota: Quadrants take one extra prop · case 02

Each quadrant holds one more prop than configured.

Procedural level generation constraints◈ Members↗
FA-86693

Decoration scatter with quadrant quota: Quadrants take one extra prop · case 03

Each quadrant holds one more prop than configured.

Procedural level generation constraints◈ Members↗
FA-86694

Decoration scatter with quadrant quota: Quadrants take one extra prop · case 04

Each quadrant holds one more prop than configured.

Procedural level generation constraints◈ Members↗
FA-86695

Decoration scatter with quadrant quota: Quadrants take one extra prop · case 05

Each quadrant holds one more prop than configured.

Procedural level generation constraints◈ Members↗
FA-86696

Decoration scatter with quadrant quota: Quadrant counter never exceeds one · case 01

Quotas above one are ignored.

Procedural level generation constraints● Open access↗
FA-86697

Decoration scatter with quadrant quota: Quadrant counter never exceeds one · case 02

Quotas above one are ignored.

Procedural level generation constraints◈ Members↗
FA-86698

Decoration scatter with quadrant quota: Quadrant counter never exceeds one · case 03

Quotas above one are ignored.

Procedural level generation constraints◈ Members↗
FA-86699

Decoration scatter with quadrant quota: Quadrant counter never exceeds one · case 04

Quotas above one are ignored.

Procedural level generation constraints◈ Members↗
FA-86700

Decoration scatter with quadrant quota: Quadrant counter never exceeds one · case 05

Quotas above one are ignored.

Procedural level generation constraints◈ 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 ↗