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

A borrowed trait object defaults to a lifetime unrelated to its outer reference · case 01

A borrowed trait object defaults to a lifetime unrelated to its outer reference.

Borrow checking● Open access↗
FA-43602

A borrowed trait object defaults to a lifetime unrelated to its outer reference · case 02

A borrowed trait object defaults to a lifetime unrelated to its outer reference.

Borrow checking◈ Members↗
FA-43603

A borrowed trait object defaults to a lifetime unrelated to its outer reference · case 03

A borrowed trait object defaults to a lifetime unrelated to its outer reference.

Borrow checking◈ Members↗
FA-43604

A borrowed trait object defaults to a lifetime unrelated to its outer reference · case 04

A borrowed trait object defaults to a lifetime unrelated to its outer reference.

Borrow checking◈ Members↗
FA-43605

A borrowed trait object defaults to a lifetime unrelated to its outer reference · case 05

A borrowed trait object defaults to a lifetime unrelated to its outer reference.

Borrow checking◈ Members↗
FA-43606

Dynamic method return provenance is missing from the erased dispatch summary · case 01

Dynamic method return provenance is missing from the erased dispatch summary.

Borrow checking● Open access↗
FA-43607

Dynamic method return provenance is missing from the erased dispatch summary · case 02

Dynamic method return provenance is missing from the erased dispatch summary.

Borrow checking◈ Members↗
FA-43608

Dynamic method return provenance is missing from the erased dispatch summary · case 03

Dynamic method return provenance is missing from the erased dispatch summary.

Borrow checking◈ Members↗
FA-43609

Dynamic method return provenance is missing from the erased dispatch summary · case 04

Dynamic method return provenance is missing from the erased dispatch summary.

Borrow checking◈ Members↗
FA-43610

Dynamic method return provenance is missing from the erased dispatch summary · case 05

Dynamic method return provenance is missing from the erased dispatch summary.

Borrow checking◈ Members↗
FA-43611

A mutable dynamic method is callable through a shared object borrow · case 01

A mutable dynamic method is callable through a shared object borrow.

Borrow checking● Open access↗
FA-43612

A mutable dynamic method is callable through a shared object borrow · case 02

A mutable dynamic method is callable through a shared object borrow.

Borrow checking◈ Members↗
FA-43613

A mutable dynamic method is callable through a shared object borrow · case 03

A mutable dynamic method is callable through a shared object borrow.

Borrow checking◈ Members↗
FA-43614

A mutable dynamic method is callable through a shared object borrow · case 04

A mutable dynamic method is callable through a shared object borrow.

Borrow checking◈ Members↗
FA-43615

A mutable dynamic method is callable through a shared object borrow · case 05

A mutable dynamic method is callable through a shared object borrow.

Borrow checking◈ Members↗
FA-43616

Trait upcasting changes valid borrow points instead of only reducing interface · case 01

Trait upcasting changes valid borrow points instead of only reducing interface.

Borrow checking● Open access↗
FA-43617

Trait upcasting changes valid borrow points instead of only reducing interface · case 02

Trait upcasting changes valid borrow points instead of only reducing interface.

Borrow checking◈ Members↗
FA-43618

Trait upcasting changes valid borrow points instead of only reducing interface · case 03

Trait upcasting changes valid borrow points instead of only reducing interface.

Borrow checking◈ Members↗
FA-43619

Trait upcasting changes valid borrow points instead of only reducing interface · case 04

Trait upcasting changes valid borrow points instead of only reducing interface.

Borrow checking◈ Members↗
FA-43620

Trait upcasting changes valid borrow points instead of only reducing interface · case 05

Trait upcasting changes valid borrow points instead of only reducing interface.

Borrow checking◈ Members↗
FA-43621

Trait upcasting substitutes vtable identity for referent allocation identity · case 01

Trait upcasting substitutes vtable identity for referent allocation identity.

Borrow checking● Open access↗
FA-43622

Trait upcasting substitutes vtable identity for referent allocation identity · case 02

Trait upcasting substitutes vtable identity for referent allocation identity.

Borrow checking◈ Members↗
FA-43623

Trait upcasting substitutes vtable identity for referent allocation identity · case 03

Trait upcasting substitutes vtable identity for referent allocation identity.

Borrow checking◈ Members↗
FA-43624

Trait upcasting substitutes vtable identity for referent allocation identity · case 04

Trait upcasting substitutes vtable identity for referent allocation identity.

Borrow checking◈ Members↗
FA-43625

Trait upcasting substitutes vtable identity for referent allocation identity · case 05

Trait upcasting substitutes vtable identity for referent allocation identity.

Borrow checking◈ Members↗
FA-43626

Thin object lowering drops the borrowed lifetime witness · case 01

Thin object lowering drops the borrowed lifetime witness.

Borrow checking● Open access↗
FA-43627

Thin object lowering drops the borrowed lifetime witness · case 02

Thin object lowering drops the borrowed lifetime witness.

Borrow checking◈ Members↗
FA-43628

Thin object lowering drops the borrowed lifetime witness · case 03

Thin object lowering drops the borrowed lifetime witness.

Borrow checking◈ Members↗
FA-43629

Thin object lowering drops the borrowed lifetime witness · case 04

Thin object lowering drops the borrowed lifetime witness.

Borrow checking◈ Members↗
FA-43630

Thin object lowering drops the borrowed lifetime witness · case 05

Thin object lowering drops the borrowed lifetime witness.

Borrow checking◈ Members↗
FA-43631

A method-local lifetime binder escapes through an associated borrowed output · case 01

A method-local lifetime binder escapes through an associated borrowed output.

Borrow checking● Open access↗
FA-43632

A method-local lifetime binder escapes through an associated borrowed output · case 02

A method-local lifetime binder escapes through an associated borrowed output.

Borrow checking◈ Members↗
FA-43633

A method-local lifetime binder escapes through an associated borrowed output · case 03

A method-local lifetime binder escapes through an associated borrowed output.

Borrow checking◈ Members↗
FA-43634

A method-local lifetime binder escapes through an associated borrowed output · case 04

A method-local lifetime binder escapes through an associated borrowed output.

Borrow checking◈ Members↗
FA-43635

A method-local lifetime binder escapes through an associated borrowed output · case 05

A method-local lifetime binder escapes through an associated borrowed output.

Borrow checking◈ Members↗
FA-43636

Erased destructor summaries omit an observed borrowed field · case 01

Erased destructor summaries omit an observed borrowed field.

Borrow checking● Open access↗
FA-43637

Erased destructor summaries omit an observed borrowed field · case 02

Erased destructor summaries omit an observed borrowed field.

Borrow checking◈ Members↗
FA-43638

Erased destructor summaries omit an observed borrowed field · case 03

Erased destructor summaries omit an observed borrowed field.

Borrow checking◈ Members↗
FA-43639

Erased destructor summaries omit an observed borrowed field · case 04

Erased destructor summaries omit an observed borrowed field.

Borrow checking◈ Members↗
FA-43640

Erased destructor summaries omit an observed borrowed field · case 05

Erased destructor summaries omit an observed borrowed field.

Borrow checking◈ Members↗
FA-43641

A destructor observes a referent one step after its storage expires · case 01

A destructor observes a referent one step after its storage expires.

Borrow checking● Open access↗
FA-43642

A destructor observes a referent one step after its storage expires · case 02

A destructor observes a referent one step after its storage expires.

Borrow checking◈ Members↗
FA-43643

A destructor observes a referent one step after its storage expires · case 03

A destructor observes a referent one step after its storage expires.

Borrow checking◈ Members↗
FA-43644

A destructor observes a referent one step after its storage expires · case 04

A destructor observes a referent one step after its storage expires.

Borrow checking◈ Members↗
FA-43645

A destructor observes a referent one step after its storage expires · case 05

A destructor observes a referent one step after its storage expires.

Borrow checking◈ Members↗
FA-43646

Borrow-dependent fields are destroyed in a reordered declaration sequence · case 01

Borrow-dependent fields are destroyed in a reordered declaration sequence.

Borrow checking● Open access↗
FA-43647

Borrow-dependent fields are destroyed in a reordered declaration sequence · case 02

Borrow-dependent fields are destroyed in a reordered declaration sequence.

Borrow checking◈ Members↗
FA-43648

Borrow-dependent fields are destroyed in a reordered declaration sequence · case 03

Borrow-dependent fields are destroyed in a reordered declaration sequence.

Borrow checking◈ Members↗
FA-43649

Borrow-dependent fields are destroyed in a reordered declaration sequence · case 04

Borrow-dependent fields are destroyed in a reordered declaration sequence.

Borrow checking◈ Members↗
FA-43650

Borrow-dependent fields are destroyed in a reordered declaration sequence · case 05

Borrow-dependent fields are destroyed in a reordered declaration sequence.

Borrow checking◈ Members↗
FA-43651

Manually dropping one field clears a sibling destructor obligation · case 01

Manually dropping one field clears a sibling destructor obligation.

Borrow checking● Open access↗
FA-43652

Manually dropping one field clears a sibling destructor obligation · case 02

Manually dropping one field clears a sibling destructor obligation.

Borrow checking◈ Members↗
FA-43653

Manually dropping one field clears a sibling destructor obligation · case 03

Manually dropping one field clears a sibling destructor obligation.

Borrow checking◈ Members↗
FA-43654

Manually dropping one field clears a sibling destructor obligation · case 04

Manually dropping one field clears a sibling destructor obligation.

Borrow checking◈ Members↗
FA-43655

Manually dropping one field clears a sibling destructor obligation · case 05

Manually dropping one field clears a sibling destructor obligation.

Borrow checking◈ Members↗
FA-43656

A lifetime parameter observed by the destructor is incorrectly allowed to dangle · case 01

A lifetime parameter observed by the destructor is incorrectly allowed to dangle.

Borrow checking● Open access↗
FA-43657

A lifetime parameter observed by the destructor is incorrectly allowed to dangle · case 02

A lifetime parameter observed by the destructor is incorrectly allowed to dangle.

Borrow checking◈ Members↗
FA-43658

A lifetime parameter observed by the destructor is incorrectly allowed to dangle · case 03

A lifetime parameter observed by the destructor is incorrectly allowed to dangle.

Borrow checking◈ Members↗
FA-43659

A lifetime parameter observed by the destructor is incorrectly allowed to dangle · case 04

A lifetime parameter observed by the destructor is incorrectly allowed to dangle.

Borrow checking◈ Members↗
FA-43660

A lifetime parameter observed by the destructor is incorrectly allowed to dangle · case 05

A lifetime parameter observed by the destructor is incorrectly allowed to dangle.

Borrow checking◈ Members↗
FA-43661

An owning phantom parameter is omitted from transitive drop checking · case 01

An owning phantom parameter is omitted from transitive drop checking.

Borrow checking● Open access↗
FA-43662

An owning phantom parameter is omitted from transitive drop checking · case 02

An owning phantom parameter is omitted from transitive drop checking.

Borrow checking◈ Members↗
FA-43663

An owning phantom parameter is omitted from transitive drop checking · case 03

An owning phantom parameter is omitted from transitive drop checking.

Borrow checking◈ Members↗
FA-43664

An owning phantom parameter is omitted from transitive drop checking · case 04

An owning phantom parameter is omitted from transitive drop checking.

Borrow checking◈ Members↗
FA-43665

An owning phantom parameter is omitted from transitive drop checking · case 05

An owning phantom parameter is omitted from transitive drop checking.

Borrow checking◈ Members↗
FA-43666

A singleton array loses its element destructor lifetime obligation · case 01

A singleton array loses its element destructor lifetime obligation.

Borrow checking● Open access↗
FA-43667

A singleton array loses its element destructor lifetime obligation · case 02

A singleton array loses its element destructor lifetime obligation.

Borrow checking◈ Members↗
FA-43668

A singleton array loses its element destructor lifetime obligation · case 03

A singleton array loses its element destructor lifetime obligation.

Borrow checking◈ Members↗
FA-43669

A singleton array loses its element destructor lifetime obligation · case 04

A singleton array loses its element destructor lifetime obligation.

Borrow checking◈ Members↗
FA-43670

A singleton array loses its element destructor lifetime obligation · case 05

A singleton array loses its element destructor lifetime obligation.

Borrow checking◈ Members↗
FA-43671

A single moved field leaves a custom destructor with an invalid whole receiver · case 01

A single moved field leaves a custom destructor with an invalid whole receiver.

Borrow checking● Open access↗
FA-43672

A single moved field leaves a custom destructor with an invalid whole receiver · case 02

A single moved field leaves a custom destructor with an invalid whole receiver.

Borrow checking◈ Members↗
FA-43673

A single moved field leaves a custom destructor with an invalid whole receiver · case 03

A single moved field leaves a custom destructor with an invalid whole receiver.

Borrow checking◈ Members↗
FA-43674

A single moved field leaves a custom destructor with an invalid whole receiver · case 04

A single moved field leaves a custom destructor with an invalid whole receiver.

Borrow checking◈ Members↗
FA-43675

A single moved field leaves a custom destructor with an invalid whole receiver · case 05

A single moved field leaves a custom destructor with an invalid whole receiver.

Borrow checking◈ Members↗
FA-43676

Recursive drop analysis memoizes by type name without lifetime substitution · case 01

Recursive drop analysis memoizes by type name without lifetime substitution.

Borrow checking● Open access↗
FA-43677

Recursive drop analysis memoizes by type name without lifetime substitution · case 02

Recursive drop analysis memoizes by type name without lifetime substitution.

Borrow checking◈ Members↗
FA-43678

Recursive drop analysis memoizes by type name without lifetime substitution · case 03

Recursive drop analysis memoizes by type name without lifetime substitution.

Borrow checking◈ Members↗
FA-43679

Recursive drop analysis memoizes by type name without lifetime substitution · case 04

Recursive drop analysis memoizes by type name without lifetime substitution.

Borrow checking◈ Members↗
FA-43680

Recursive drop analysis memoizes by type name without lifetime substitution · case 05

Recursive drop analysis memoizes by type name without lifetime substitution.

Borrow checking◈ Members↗
FA-43681

Unwinding drops an uninitialized field and invents borrow obligations · case 01

Unwinding drops an uninitialized field and invents borrow obligations.

Borrow checking● Open access↗
FA-43682

Unwinding drops an uninitialized field and invents borrow obligations · case 02

Unwinding drops an uninitialized field and invents borrow obligations.

Borrow checking◈ Members↗
FA-43683

Unwinding drops an uninitialized field and invents borrow obligations · case 03

Unwinding drops an uninitialized field and invents borrow obligations.

Borrow checking◈ Members↗
FA-43684

Unwinding drops an uninitialized field and invents borrow obligations · case 04

Unwinding drops an uninitialized field and invents borrow obligations.

Borrow checking◈ Members↗
FA-43685

Unwinding drops an uninitialized field and invents borrow obligations · case 05

Unwinding drops an uninitialized field and invents borrow obligations.

Borrow checking◈ Members↗
FA-43686

Destructor receiver exclusivity ends before the final destructor operation · case 01

Destructor receiver exclusivity ends before the final destructor operation.

Borrow checking● Open access↗
FA-43687

Destructor receiver exclusivity ends before the final destructor operation · case 02

Destructor receiver exclusivity ends before the final destructor operation.

Borrow checking◈ Members↗
FA-43688

Destructor receiver exclusivity ends before the final destructor operation · case 03

Destructor receiver exclusivity ends before the final destructor operation.

Borrow checking◈ Members↗
FA-43689

Destructor receiver exclusivity ends before the final destructor operation · case 04

Destructor receiver exclusivity ends before the final destructor operation.

Borrow checking◈ Members↗
FA-43690

Destructor receiver exclusivity ends before the final destructor operation · case 05

Destructor receiver exclusivity ends before the final destructor operation.

Borrow checking◈ Members↗
FA-43691

A sole move of a structurally pinned value is accepted · case 01

A sole move of a structurally pinned value is accepted.

Borrow checking● Open access↗
FA-43692

A sole move of a structurally pinned value is accepted · case 02

A sole move of a structurally pinned value is accepted.

Borrow checking◈ Members↗
FA-43693

A sole move of a structurally pinned value is accepted · case 03

A sole move of a structurally pinned value is accepted.

Borrow checking◈ Members↗
FA-43694

A sole move of a structurally pinned value is accepted · case 04

A sole move of a structurally pinned value is accepted.

Borrow checking◈ Members↗
FA-43695

A sole move of a structurally pinned value is accepted · case 05

A sole move of a structurally pinned value is accepted.

Borrow checking◈ Members↗
FA-43696

Pin projection assumes undeclared sibling fields are structurally pinned · case 01

Pin projection assumes undeclared sibling fields are structurally pinned.

Borrow checking● Open access↗
FA-43697

Pin projection assumes undeclared sibling fields are structurally pinned · case 02

Pin projection assumes undeclared sibling fields are structurally pinned.

Borrow checking◈ Members↗
FA-43698

Pin projection assumes undeclared sibling fields are structurally pinned · case 03

Pin projection assumes undeclared sibling fields are structurally pinned.

Borrow checking◈ Members↗
FA-43699

Pin projection assumes undeclared sibling fields are structurally pinned · case 04

Pin projection assumes undeclared sibling fields are structurally pinned.

Borrow checking◈ Members↗
FA-43700

Pin projection assumes undeclared sibling fields are structurally pinned · case 05

Pin projection assumes undeclared sibling fields are structurally pinned.

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 ↗