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

A reference-pattern let initializer loses its permitted block lifetime extension · case 01

A reference-pattern let initializer loses its permitted block lifetime extension.

Borrow checking● Open access↗
FA-43302

A reference-pattern let initializer loses its permitted block lifetime extension · case 02

A reference-pattern let initializer loses its permitted block lifetime extension.

Borrow checking◈ Members↗
FA-43303

A reference-pattern let initializer loses its permitted block lifetime extension · case 03

A reference-pattern let initializer loses its permitted block lifetime extension.

Borrow checking◈ Members↗
FA-43304

A reference-pattern let initializer loses its permitted block lifetime extension · case 04

A reference-pattern let initializer loses its permitted block lifetime extension.

Borrow checking◈ Members↗
FA-43305

A reference-pattern let initializer loses its permitted block lifetime extension · case 05

A reference-pattern let initializer loses its permitted block lifetime extension.

Borrow checking◈ Members↗
FA-43306

Assignment is incorrectly given the lifetime-extension rule of a let initializer · case 01

Assignment is incorrectly given the lifetime-extension rule of a let initializer.

Borrow checking● Open access↗
FA-43307

Assignment is incorrectly given the lifetime-extension rule of a let initializer · case 02

Assignment is incorrectly given the lifetime-extension rule of a let initializer.

Borrow checking◈ Members↗
FA-43308

Assignment is incorrectly given the lifetime-extension rule of a let initializer · case 03

Assignment is incorrectly given the lifetime-extension rule of a let initializer.

Borrow checking◈ Members↗
FA-43309

Assignment is incorrectly given the lifetime-extension rule of a let initializer · case 04

Assignment is incorrectly given the lifetime-extension rule of a let initializer.

Borrow checking◈ Members↗
FA-43310

Assignment is incorrectly given the lifetime-extension rule of a let initializer · case 05

Assignment is incorrectly given the lifetime-extension rule of a let initializer.

Borrow checking◈ Members↗
FA-43311

An operand borrow ends one evaluation step before the full expression · case 01

An operand borrow ends one evaluation step before the full expression.

Borrow checking● Open access↗
FA-43312

An operand borrow ends one evaluation step before the full expression · case 02

An operand borrow ends one evaluation step before the full expression.

Borrow checking◈ Members↗
FA-43313

An operand borrow ends one evaluation step before the full expression · case 03

An operand borrow ends one evaluation step before the full expression.

Borrow checking◈ Members↗
FA-43314

An operand borrow ends one evaluation step before the full expression · case 04

An operand borrow ends one evaluation step before the full expression.

Borrow checking◈ Members↗
FA-43315

An operand borrow ends one evaluation step before the full expression · case 05

An operand borrow ends one evaluation step before the full expression.

Borrow checking◈ Members↗
FA-43316

A condition temporary is borrowed by the following then block · case 01

A condition temporary is borrowed by the following then block.

Borrow checking● Open access↗
FA-43317

A condition temporary is borrowed by the following then block · case 02

A condition temporary is borrowed by the following then block.

Borrow checking◈ Members↗
FA-43318

A condition temporary is borrowed by the following then block · case 03

A condition temporary is borrowed by the following then block.

Borrow checking◈ Members↗
FA-43319

A condition temporary is borrowed by the following then block · case 04

A condition temporary is borrowed by the following then block.

Borrow checking◈ Members↗
FA-43320

A condition temporary is borrowed by the following then block · case 05

A condition temporary is borrowed by the following then block.

Borrow checking◈ Members↗
FA-43321

A skipped short-circuit operand creates a phantom borrow origin · case 01

A skipped short-circuit operand creates a phantom borrow origin.

Borrow checking● Open access↗
FA-43322

A skipped short-circuit operand creates a phantom borrow origin · case 02

A skipped short-circuit operand creates a phantom borrow origin.

Borrow checking◈ Members↗
FA-43323

A skipped short-circuit operand creates a phantom borrow origin · case 03

A skipped short-circuit operand creates a phantom borrow origin.

Borrow checking◈ Members↗
FA-43324

A skipped short-circuit operand creates a phantom borrow origin · case 04

A skipped short-circuit operand creates a phantom borrow origin.

Borrow checking◈ Members↗
FA-43325

A skipped short-circuit operand creates a phantom borrow origin · case 05

A skipped short-circuit operand creates a phantom borrow origin.

Borrow checking◈ Members↗
FA-43326

Temporary destruction fails to extend a destructor-observed reference · case 01

Temporary destruction fails to extend a destructor-observed reference.

Borrow checking● Open access↗
FA-43327

Temporary destruction fails to extend a destructor-observed reference · case 02

Temporary destruction fails to extend a destructor-observed reference.

Borrow checking◈ Members↗
FA-43328

Temporary destruction fails to extend a destructor-observed reference · case 03

Temporary destruction fails to extend a destructor-observed reference.

Borrow checking◈ Members↗
FA-43329

Temporary destruction fails to extend a destructor-observed reference · case 04

Temporary destruction fails to extend a destructor-observed reference.

Borrow checking◈ Members↗
FA-43330

Temporary destruction fails to extend a destructor-observed reference · case 05

Temporary destruction fails to extend a destructor-observed reference.

Borrow checking◈ Members↗
FA-43331

Constant promotion retains a stack lifetime in its reference provenance · case 01

Constant promotion retains a stack lifetime in its reference provenance.

Borrow checking● Open access↗
FA-43332

Constant promotion retains a stack lifetime in its reference provenance · case 02

Constant promotion retains a stack lifetime in its reference provenance.

Borrow checking◈ Members↗
FA-43333

Constant promotion retains a stack lifetime in its reference provenance · case 03

Constant promotion retains a stack lifetime in its reference provenance.

Borrow checking◈ Members↗
FA-43334

Constant promotion retains a stack lifetime in its reference provenance · case 04

Constant promotion retains a stack lifetime in its reference provenance.

Borrow checking◈ Members↗
FA-43335

Constant promotion retains a stack lifetime in its reference provenance · case 05

Constant promotion retains a stack lifetime in its reference provenance.

Borrow checking◈ Members↗
FA-43336

A named owner is still dropped at its original temporary boundary · case 01

A named owner is still dropped at its original temporary boundary.

Borrow checking● Open access↗
FA-43337

A named owner is still dropped at its original temporary boundary · case 02

A named owner is still dropped at its original temporary boundary.

Borrow checking◈ Members↗
FA-43338

A named owner is still dropped at its original temporary boundary · case 03

A named owner is still dropped at its original temporary boundary.

Borrow checking◈ Members↗
FA-43339

A named owner is still dropped at its original temporary boundary · case 04

A named owner is still dropped at its original temporary boundary.

Borrow checking◈ Members↗
FA-43340

A named owner is still dropped at its original temporary boundary · case 05

A named owner is still dropped at its original temporary boundary.

Borrow checking◈ Members↗
FA-43341

A reborrow parent is unresolved after the first child declaration · case 01

A reborrow parent is unresolved after the first child declaration.

Borrow checking● Open access↗
FA-43342

A reborrow parent is unresolved after the first child declaration · case 02

A reborrow parent is unresolved after the first child declaration.

Borrow checking◈ Members↗
FA-43343

A reborrow parent is unresolved after the first child declaration · case 03

A reborrow parent is unresolved after the first child declaration.

Borrow checking◈ Members↗
FA-43344

A reborrow parent is unresolved after the first child declaration · case 04

A reborrow parent is unresolved after the first child declaration.

Borrow checking◈ Members↗
FA-43345

A reborrow parent is unresolved after the first child declaration · case 05

A reborrow parent is unresolved after the first child declaration.

Borrow checking◈ Members↗
FA-43346

A short reborrow ancestry cycle is accepted as a valid loan forest · case 01

A short reborrow ancestry cycle is accepted as a valid loan forest.

Borrow checking● Open access↗
FA-43347

A short reborrow ancestry cycle is accepted as a valid loan forest · case 02

A short reborrow ancestry cycle is accepted as a valid loan forest.

Borrow checking◈ Members↗
FA-43348

A short reborrow ancestry cycle is accepted as a valid loan forest · case 03

A short reborrow ancestry cycle is accepted as a valid loan forest.

Borrow checking◈ Members↗
FA-43349

A short reborrow ancestry cycle is accepted as a valid loan forest · case 04

A short reborrow ancestry cycle is accepted as a valid loan forest.

Borrow checking◈ Members↗
FA-43350

A short reborrow ancestry cycle is accepted as a valid loan forest · case 05

A short reborrow ancestry cycle is accepted as a valid loan forest.

Borrow checking◈ Members↗
FA-43351

Reborrow lifetime can shift beyond the parent loan while keeping equal size · case 01

Reborrow lifetime can shift beyond the parent loan while keeping equal size.

Borrow checking● Open access↗
FA-43352

Reborrow lifetime can shift beyond the parent loan while keeping equal size · case 02

Reborrow lifetime can shift beyond the parent loan while keeping equal size.

Borrow checking◈ Members↗
FA-43353

Reborrow lifetime can shift beyond the parent loan while keeping equal size · case 03

Reborrow lifetime can shift beyond the parent loan while keeping equal size.

Borrow checking◈ Members↗
FA-43354

Reborrow lifetime can shift beyond the parent loan while keeping equal size · case 04

Reborrow lifetime can shift beyond the parent loan while keeping equal size.

Borrow checking◈ Members↗
FA-43355

Reborrow lifetime can shift beyond the parent loan while keeping equal size · case 05

Reborrow lifetime can shift beyond the parent loan while keeping equal size.

Borrow checking◈ Members↗
FA-43356

A shared parent manufactures an exclusive child capability · case 01

A shared parent manufactures an exclusive child capability.

Borrow checking● Open access↗
FA-43357

A shared parent manufactures an exclusive child capability · case 02

A shared parent manufactures an exclusive child capability.

Borrow checking◈ Members↗
FA-43358

A shared parent manufactures an exclusive child capability · case 03

A shared parent manufactures an exclusive child capability.

Borrow checking◈ Members↗
FA-43359

A shared parent manufactures an exclusive child capability · case 04

A shared parent manufactures an exclusive child capability.

Borrow checking◈ Members↗
FA-43360

A shared parent manufactures an exclusive child capability · case 05

A shared parent manufactures an exclusive child capability.

Borrow checking◈ Members↗
FA-43361

A unique child only suspends parent access when their use regions are identical · case 01

A unique child only suspends parent access when their use regions are identical.

Borrow checking● Open access↗
FA-43362

A unique child only suspends parent access when their use regions are identical · case 02

A unique child only suspends parent access when their use regions are identical.

Borrow checking◈ Members↗
FA-43363

A unique child only suspends parent access when their use regions are identical · case 03

A unique child only suspends parent access when their use regions are identical.

Borrow checking◈ Members↗
FA-43364

A unique child only suspends parent access when their use regions are identical · case 04

A unique child only suspends parent access when their use regions are identical.

Borrow checking◈ Members↗
FA-43365

A unique child only suspends parent access when their use regions are identical · case 05

A unique child only suspends parent access when their use regions are identical.

Borrow checking◈ Members↗
FA-43366

A reborrow projects from a sibling of the authorized parent place · case 01

A reborrow projects from a sibling of the authorized parent place.

Borrow checking● Open access↗
FA-43367

A reborrow projects from a sibling of the authorized parent place · case 02

A reborrow projects from a sibling of the authorized parent place.

Borrow checking◈ Members↗
FA-43368

A reborrow projects from a sibling of the authorized parent place · case 03

A reborrow projects from a sibling of the authorized parent place.

Borrow checking◈ Members↗
FA-43369

A reborrow projects from a sibling of the authorized parent place · case 04

A reborrow projects from a sibling of the authorized parent place.

Borrow checking◈ Members↗
FA-43370

A reborrow projects from a sibling of the authorized parent place · case 05

A reborrow projects from a sibling of the authorized parent place.

Borrow checking◈ Members↗
FA-43371

Nested reborrow bypasses the suspended immediate parent loan · case 01

Nested reborrow bypasses the suspended immediate parent loan.

Borrow checking● Open access↗
FA-43372

Nested reborrow bypasses the suspended immediate parent loan · case 02

Nested reborrow bypasses the suspended immediate parent loan.

Borrow checking◈ Members↗
FA-43373

Nested reborrow bypasses the suspended immediate parent loan · case 03

Nested reborrow bypasses the suspended immediate parent loan.

Borrow checking◈ Members↗
FA-43374

Nested reborrow bypasses the suspended immediate parent loan · case 04

Nested reborrow bypasses the suspended immediate parent loan.

Borrow checking◈ Members↗
FA-43375

Nested reborrow bypasses the suspended immediate parent loan · case 05

Nested reborrow bypasses the suspended immediate parent loan.

Borrow checking◈ Members↗
FA-43376

Distinct sibling exclusive reborrows overlap at a shared program point · case 01

Distinct sibling exclusive reborrows overlap at a shared program point.

Borrow checking● Open access↗
FA-43377

Distinct sibling exclusive reborrows overlap at a shared program point · case 02

Distinct sibling exclusive reborrows overlap at a shared program point.

Borrow checking◈ Members↗
FA-43378

Distinct sibling exclusive reborrows overlap at a shared program point · case 03

Distinct sibling exclusive reborrows overlap at a shared program point.

Borrow checking◈ Members↗
FA-43379

Distinct sibling exclusive reborrows overlap at a shared program point · case 04

Distinct sibling exclusive reborrows overlap at a shared program point.

Borrow checking◈ Members↗
FA-43380

Distinct sibling exclusive reborrows overlap at a shared program point · case 05

Distinct sibling exclusive reborrows overlap at a shared program point.

Borrow checking◈ Members↗
FA-43381

Ending a reborrow invalidates its still-live ancestor reference · case 01

Ending a reborrow invalidates its still-live ancestor reference.

Borrow checking● Open access↗
FA-43382

Ending a reborrow invalidates its still-live ancestor reference · case 02

Ending a reborrow invalidates its still-live ancestor reference.

Borrow checking◈ Members↗
FA-43383

Ending a reborrow invalidates its still-live ancestor reference · case 03

Ending a reborrow invalidates its still-live ancestor reference.

Borrow checking◈ Members↗
FA-43384

Ending a reborrow invalidates its still-live ancestor reference · case 04

Ending a reborrow invalidates its still-live ancestor reference.

Borrow checking◈ Members↗
FA-43385

Ending a reborrow invalidates its still-live ancestor reference · case 05

Ending a reborrow invalidates its still-live ancestor reference.

Borrow checking◈ Members↗
FA-43386

Killing an origin leaves a descendant loan statically usable · case 01

Killing an origin leaves a descendant loan statically usable.

Borrow checking● Open access↗
FA-43387

Killing an origin leaves a descendant loan statically usable · case 02

Killing an origin leaves a descendant loan statically usable.

Borrow checking◈ Members↗
FA-43388

Killing an origin leaves a descendant loan statically usable · case 03

Killing an origin leaves a descendant loan statically usable.

Borrow checking◈ Members↗
FA-43389

Killing an origin leaves a descendant loan statically usable · case 04

Killing an origin leaves a descendant loan statically usable.

Borrow checking◈ Members↗
FA-43390

Killing an origin leaves a descendant loan statically usable · case 05

Killing an origin leaves a descendant loan statically usable.

Borrow checking◈ Members↗
FA-43391

Activation accepts an identified loan with no reservation event · case 01

Activation accepts an identified loan with no reservation event.

Borrow checking● Open access↗
FA-43392

Activation accepts an identified loan with no reservation event · case 02

Activation accepts an identified loan with no reservation event.

Borrow checking◈ Members↗
FA-43393

Activation accepts an identified loan with no reservation event · case 03

Activation accepts an identified loan with no reservation event.

Borrow checking◈ Members↗
FA-43394

Activation accepts an identified loan with no reservation event · case 04

Activation accepts an identified loan with no reservation event.

Borrow checking◈ Members↗
FA-43395

Activation accepts an identified loan with no reservation event · case 05

Activation accepts an identified loan with no reservation event.

Borrow checking◈ Members↗
FA-43396

A reservation on one branch is assumed to dominate activation after a join · case 01

A reservation on one branch is assumed to dominate activation after a join.

Borrow checking● Open access↗
FA-43397

A reservation on one branch is assumed to dominate activation after a join · case 02

A reservation on one branch is assumed to dominate activation after a join.

Borrow checking◈ Members↗
FA-43398

A reservation on one branch is assumed to dominate activation after a join · case 03

A reservation on one branch is assumed to dominate activation after a join.

Borrow checking◈ Members↗
FA-43399

A reservation on one branch is assumed to dominate activation after a join · case 04

A reservation on one branch is assumed to dominate activation after a join.

Borrow checking◈ Members↗
FA-43400

A reservation on one branch is assumed to dominate activation after a join · case 05

A reservation on one branch is assumed to dominate activation after a join.

Borrow checking◈ 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 ↗