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 ↗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
Pinning a container incorrectly forbids moving an explicitly unpinned field · case 01
Pinning a container incorrectly forbids moving an explicitly unpinned field.
Pinning a container incorrectly forbids moving an explicitly unpinned field · case 02
Pinning a container incorrectly forbids moving an explicitly unpinned field.
Pinning a container incorrectly forbids moving an explicitly unpinned field · case 03
Pinning a container incorrectly forbids moving an explicitly unpinned field.
Pinning a container incorrectly forbids moving an explicitly unpinned field · case 04
Pinning a container incorrectly forbids moving an explicitly unpinned field.
Pinning a container incorrectly forbids moving an explicitly unpinned field · case 05
Pinning a container incorrectly forbids moving an explicitly unpinned field.
Replacing a pinned referent bypasses the move prohibition · case 01
Replacing a pinned referent bypasses the move prohibition.
Replacing a pinned referent bypasses the move prohibition · case 02
Replacing a pinned referent bypasses the move prohibition.
Replacing a pinned referent bypasses the move prohibition · case 03
Replacing a pinned referent bypasses the move prohibition.
Replacing a pinned referent bypasses the move prohibition · case 04
Replacing a pinned referent bypasses the move prohibition.
Replacing a pinned referent bypasses the move prohibition · case 05
Replacing a pinned referent bypasses the move prohibition.
A pinned destructor moves its receiver under a generic Unpin assumption · case 01
A pinned destructor moves its receiver under a generic Unpin assumption.
A pinned destructor moves its receiver under a generic Unpin assumption · case 02
A pinned destructor moves its receiver under a generic Unpin assumption.
A pinned destructor moves its receiver under a generic Unpin assumption · case 03
A pinned destructor moves its receiver under a generic Unpin assumption.
A pinned destructor moves its receiver under a generic Unpin assumption · case 04
A pinned destructor moves its receiver under a generic Unpin assumption.
A pinned destructor moves its receiver under a generic Unpin assumption · case 05
A pinned destructor moves its receiver under a generic Unpin assumption.
A packed field is exposed by a safe pinned reference projection · case 01
A packed field is exposed by a safe pinned reference projection.
A packed field is exposed by a safe pinned reference projection · case 02
A packed field is exposed by a safe pinned reference projection.
A packed field is exposed by a safe pinned reference projection · case 03
A packed field is exposed by a safe pinned reference projection.
A packed field is exposed by a safe pinned reference projection · case 04
A packed field is exposed by a safe pinned reference projection.
A packed field is exposed by a safe pinned reference projection · case 05
A packed field is exposed by a safe pinned reference projection.
Pin wrapper conversion manufactures exclusive access from a shared pointer · case 01
Pin wrapper conversion manufactures exclusive access from a shared pointer.
Pin wrapper conversion manufactures exclusive access from a shared pointer · case 02
Pin wrapper conversion manufactures exclusive access from a shared pointer.
Pin wrapper conversion manufactures exclusive access from a shared pointer · case 03
Pin wrapper conversion manufactures exclusive access from a shared pointer.
Pin wrapper conversion manufactures exclusive access from a shared pointer · case 04
Pin wrapper conversion manufactures exclusive access from a shared pointer.
Pin wrapper conversion manufactures exclusive access from a shared pointer · case 05
Pin wrapper conversion manufactures exclusive access from a shared pointer.
Pinned raw projection carries a different owner provenance · case 01
Pinned raw projection carries a different owner provenance.
Pinned raw projection carries a different owner provenance · case 02
Pinned raw projection carries a different owner provenance.
Pinned raw projection carries a different owner provenance · case 03
Pinned raw projection carries a different owner provenance.
Pinned raw projection carries a different owner provenance · case 04
Pinned raw projection carries a different owner provenance.
Pinned raw projection carries a different owner provenance · case 05
Pinned raw projection carries a different owner provenance.
Unchecked pin construction is accepted without an immovability proof obligation · case 01
Unchecked pin construction is accepted without an immovability proof obligation.
Unchecked pin construction is accepted without an immovability proof obligation · case 02
Unchecked pin construction is accepted without an immovability proof obligation.
Unchecked pin construction is accepted without an immovability proof obligation · case 03
Unchecked pin construction is accepted without an immovability proof obligation.
Unchecked pin construction is accepted without an immovability proof obligation · case 04
Unchecked pin construction is accepted without an immovability proof obligation.
Unchecked pin construction is accepted without an immovability proof obligation · case 05
Unchecked pin construction is accepted without an immovability proof obligation.
A pin proof survives relocation to a new frame generation · case 01
A pin proof survives relocation to a new frame generation.
A pin proof survives relocation to a new frame generation · case 02
A pin proof survives relocation to a new frame generation.
A pin proof survives relocation to a new frame generation · case 03
A pin proof survives relocation to a new frame generation.
A pin proof survives relocation to a new frame generation · case 04
A pin proof survives relocation to a new frame generation.
A pin proof survives relocation to a new frame generation · case 05
A pin proof survives relocation to a new frame generation.
A split proof accepts one element beyond the parent slice · case 01
A split proof accepts one element beyond the parent slice.
A split proof accepts one element beyond the parent slice · case 02
A split proof accepts one element beyond the parent slice.
A split proof accepts one element beyond the parent slice · case 03
A split proof accepts one element beyond the parent slice.
A split proof accepts one element beyond the parent slice · case 04
A split proof accepts one element beyond the parent slice.
A split proof accepts one element beyond the parent slice · case 05
A split proof accepts one element beyond the parent slice.
A split proof silently loses parent elements · case 01
A split proof silently loses parent elements.
A split proof silently loses parent elements · case 02
A split proof silently loses parent elements.
A split proof silently loses parent elements · case 03
A split proof silently loses parent elements.
A split proof silently loses parent elements · case 04
A split proof silently loses parent elements.
A split proof silently loses parent elements · case 05
A split proof silently loses parent elements.
Half-open exclusive child views share an element at the split boundary · case 01
Half-open exclusive child views share an element at the split boundary.
Half-open exclusive child views share an element at the split boundary · case 02
Half-open exclusive child views share an element at the split boundary.
Half-open exclusive child views share an element at the split boundary · case 03
Half-open exclusive child views share an element at the split boundary.
Half-open exclusive child views share an element at the split boundary · case 04
Half-open exclusive child views share an element at the split boundary.
Half-open exclusive child views share an element at the split boundary · case 05
Half-open exclusive child views share an element at the split boundary.
The second split result carries an unrelated allocation origin · case 01
The second split result carries an unrelated allocation origin.
The second split result carries an unrelated allocation origin · case 02
The second split result carries an unrelated allocation origin.
The second split result carries an unrelated allocation origin · case 03
The second split result carries an unrelated allocation origin.
The second split result carries an unrelated allocation origin · case 04
The second split result carries an unrelated allocation origin.
The second split result carries an unrelated allocation origin · case 05
The second split result carries an unrelated allocation origin.
A split child reuses a stale owner generation · case 01
A split child reuses a stale owner generation.
A split child reuses a stale owner generation · case 02
A split child reuses a stale owner generation.
A split child reuses a stale owner generation · case 03
A split child reuses a stale owner generation.
A split child reuses a stale owner generation · case 04
A split child reuses a stale owner generation.
A split child reuses a stale owner generation · case 05
A split child reuses a stale owner generation.
Two symbolic element borrows are declared disjoint without index inequality · case 01
Two symbolic element borrows are declared disjoint without index inequality.
Two symbolic element borrows are declared disjoint without index inequality · case 02
Two symbolic element borrows are declared disjoint without index inequality.
Two symbolic element borrows are declared disjoint without index inequality · case 03
Two symbolic element borrows are declared disjoint without index inequality.
Two symbolic element borrows are declared disjoint without index inequality · case 04
Two symbolic element borrows are declared disjoint without index inequality.
Two symbolic element borrows are declared disjoint without index inequality · case 05
Two symbolic element borrows are declared disjoint without index inequality.
An empty split result grants permission to one element · case 01
An empty split result grants permission to one element.
An empty split result grants permission to one element · case 02
An empty split result grants permission to one element.
An empty split result grants permission to one element · case 03
An empty split result grants permission to one element.
An empty split result grants permission to one element · case 04
An empty split result grants permission to one element.
An empty split result grants permission to one element · case 05
An empty split result grants permission to one element.
Strided borrow footprint substitutes contiguous positions · case 01
Strided borrow footprint substitutes contiguous positions.
Strided borrow footprint substitutes contiguous positions · case 02
Strided borrow footprint substitutes contiguous positions.
Strided borrow footprint substitutes contiguous positions · case 03
Strided borrow footprint substitutes contiguous positions.
Strided borrow footprint substitutes contiguous positions · case 04
Strided borrow footprint substitutes contiguous positions.
Strided borrow footprint substitutes contiguous positions · case 05
Strided borrow footprint substitutes contiguous positions.
Reverse-view projection loses the original element address order · case 01
Reverse-view projection loses the original element address order.
Reverse-view projection loses the original element address order · case 02
Reverse-view projection loses the original element address order.
Reverse-view projection loses the original element address order · case 03
Reverse-view projection loses the original element address order.
Reverse-view projection loses the original element address order · case 04
Reverse-view projection loses the original element address order.
Reverse-view projection loses the original element address order · case 05
Reverse-view projection loses the original element address order.
A consuming split leaves the original whole-slice exclusive capability usable · case 01
A consuming split leaves the original whole-slice exclusive capability usable.
A consuming split leaves the original whole-slice exclusive capability usable · case 02
A consuming split leaves the original whole-slice exclusive capability usable.
A consuming split leaves the original whole-slice exclusive capability usable · case 03
A consuming split leaves the original whole-slice exclusive capability usable.
A consuming split leaves the original whole-slice exclusive capability usable · case 04
A consuming split leaves the original whole-slice exclusive capability usable.
A consuming split leaves the original whole-slice exclusive capability usable · case 05
A consuming split leaves the original whole-slice exclusive capability usable.
The analysis starts from a nonentry block and omits entry loan facts · case 01
The analysis starts from a nonentry block and omits entry loan facts.
The analysis starts from a nonentry block and omits entry loan facts · case 02
The analysis starts from a nonentry block and omits entry loan facts.
The analysis starts from a nonentry block and omits entry loan facts · case 03
The analysis starts from a nonentry block and omits entry loan facts.
The analysis starts from a nonentry block and omits entry loan facts · case 04
The analysis starts from a nonentry block and omits entry loan facts.
The analysis starts from a nonentry block and omits entry loan facts · case 05
The analysis starts from a nonentry block and omits entry loan facts.
Unreachable blocks contribute borrow conflicts to reachable code · case 01
Unreachable blocks contribute borrow conflicts to reachable code.
Unreachable blocks contribute borrow conflicts to reachable code · case 02
Unreachable blocks contribute borrow conflicts to reachable code.
Unreachable blocks contribute borrow conflicts to reachable code · case 03
Unreachable blocks contribute borrow conflicts to reachable code.
Unreachable blocks contribute borrow conflicts to reachable code · case 04
Unreachable blocks contribute borrow conflicts to reachable code.
Unreachable blocks contribute borrow conflicts to reachable code · case 05
Unreachable blocks contribute borrow conflicts to reachable code.
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 ↗