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
Unified hunk builder: leading context is measured from the last change of a group · case 01
A hunk that groups several changes starts after its first change, losing lines and misnumbering the header.
Unified hunk builder: leading context is measured from the last change of a group · case 02
A hunk that groups several changes starts after its first change, losing lines and misnumbering the header.
Unified hunk builder: leading context is measured from the last change of a group · case 03
A hunk that groups several changes starts after its first change, losing lines and misnumbering the header.
Unified hunk builder: leading context is measured from the last change of a group · case 04
A hunk that groups several changes starts after its first change, losing lines and misnumbering the header.
Unified hunk builder: leading context is measured from the last change of a group · case 05
A hunk that groups several changes starts after its first change, losing lines and misnumbering the header.
Unified hunk builder: old range counts exclude context lines · case 01
Header counts disagree with the hunk body and the patch is rejected as malformed.
Unified hunk builder: old range counts exclude context lines · case 02
Header counts disagree with the hunk body and the patch is rejected as malformed.
Unified hunk builder: old range counts exclude context lines · case 03
Header counts disagree with the hunk body and the patch is rejected as malformed.
Unified hunk builder: old range counts exclude context lines · case 04
Header counts disagree with the hunk body and the patch is rejected as malformed.
Unified hunk builder: old range counts exclude context lines · case 05
Header counts disagree with the hunk body and the patch is rejected as malformed.
Unified hunk builder: context lines do not advance the old line number · case 01
Hunk headers point to old line numbers that drift upwards after every context line.
Unified hunk builder: context lines do not advance the old line number · case 02
Hunk headers point to old line numbers that drift upwards after every context line.
Unified hunk builder: context lines do not advance the old line number · case 03
Hunk headers point to old line numbers that drift upwards after every context line.
Unified hunk builder: context lines do not advance the old line number · case 04
Hunk headers point to old line numbers that drift upwards after every context line.
Unified hunk builder: context lines do not advance the old line number · case 05
Hunk headers point to old line numbers that drift upwards after every context line.
Patch application with offset search: the discovered offset is not carried to later hunks · case 01
After one hunk applies with an offset, later hunks are searched from stale positions and may be rejected.
Patch application with offset search: the discovered offset is not carried to later hunks · case 02
After one hunk applies with an offset, later hunks are searched from stale positions and may be rejected.
Patch application with offset search: the discovered offset is not carried to later hunks · case 03
After one hunk applies with an offset, later hunks are searched from stale positions and may be rejected.
Patch application with offset search: the discovered offset is not carried to later hunks · case 04
After one hunk applies with an offset, later hunks are searched from stale positions and may be rejected.
Patch application with offset search: the discovered offset is not carried to later hunks · case 05
After one hunk applies with an offset, later hunks are searched from stale positions and may be rejected.
Patch application with offset search: equal distances prefer the later position · case 01
An ambiguous hunk applies to the later of two equally distant matches.
Patch application with offset search: equal distances prefer the later position · case 02
An ambiguous hunk applies to the later of two equally distant matches.
Patch application with offset search: equal distances prefer the later position · case 03
An ambiguous hunk applies to the later of two equally distant matches.
Patch application with offset search: equal distances prefer the later position · case 04
An ambiguous hunk applies to the later of two equally distant matches.
Patch application with offset search: equal distances prefer the later position · case 05
An ambiguous hunk applies to the later of two equally distant matches.
Patch application with offset search: a rejected hunk still shifts later hunks · case 01
After one hunk fails, the following hunks are searched at displaced positions.
Patch application with offset search: a rejected hunk still shifts later hunks · case 02
After one hunk fails, the following hunks are searched at displaced positions.
Patch application with offset search: a rejected hunk still shifts later hunks · case 03
After one hunk fails, the following hunks are searched at displaced positions.
Patch application with offset search: a rejected hunk still shifts later hunks · case 04
After one hunk fails, the following hunks are searched at displaced positions.
Patch application with offset search: a rejected hunk still shifts later hunks · case 05
After one hunk fails, the following hunks are searched at displaced positions.
Patch application with offset search: a match exactly at the offset limit is rejected · case 01
Hunks displaced by exactly max_offset lines fail to apply.
Patch application with offset search: a match exactly at the offset limit is rejected · case 02
Hunks displaced by exactly max_offset lines fail to apply.
Patch application with offset search: a match exactly at the offset limit is rejected · case 03
Hunks displaced by exactly max_offset lines fail to apply.
Patch application with offset search: a match exactly at the offset limit is rejected · case 04
Hunks displaced by exactly max_offset lines fail to apply.
Patch application with offset search: a match exactly at the offset limit is rejected · case 05
Hunks displaced by exactly max_offset lines fail to apply.
Patch application with offset search: the replaced span uses the new length · case 01
Applying a hunk that grows or shrinks the text swallows or duplicates neighbouring lines.
Patch application with offset search: the replaced span uses the new length · case 02
Applying a hunk that grows or shrinks the text swallows or duplicates neighbouring lines.
Patch application with offset search: the replaced span uses the new length · case 03
Applying a hunk that grows or shrinks the text swallows or duplicates neighbouring lines.
Patch application with offset search: the replaced span uses the new length · case 04
Applying a hunk that grows or shrinks the text swallows or duplicates neighbouring lines.
Patch application with offset search: the replaced span uses the new length · case 05
Applying a hunk that grows or shrinks the text swallows or duplicates neighbouring lines.
diff3 chunk merge: a change made only on their side is discarded · case 01
Edits from the other branch silently vanish when our side left the region untouched.
diff3 chunk merge: a change made only on their side is discarded · case 02
Edits from the other branch silently vanish when our side left the region untouched.
diff3 chunk merge: a change made only on their side is discarded · case 03
Edits from the other branch silently vanish when our side left the region untouched.
diff3 chunk merge: a change made only on their side is discarded · case 04
Edits from the other branch silently vanish when our side left the region untouched.
diff3 chunk merge: a change made only on their side is discarded · case 05
Edits from the other branch silently vanish when our side left the region untouched.
diff3 chunk merge: identical edits on both sides are reported as a conflict · case 01
Both branches made the same change and the merge still stops with a conflict.
diff3 chunk merge: identical edits on both sides are reported as a conflict · case 02
Both branches made the same change and the merge still stops with a conflict.
diff3 chunk merge: identical edits on both sides are reported as a conflict · case 03
Both branches made the same change and the merge still stops with a conflict.
diff3 chunk merge: identical edits on both sides are reported as a conflict · case 04
Both branches made the same change and the merge still stops with a conflict.
diff3 chunk merge: identical edits on both sides are reported as a conflict · case 05
Both branches made the same change and the merge still stops with a conflict.
diff3 chunk merge: their copy of the anchor line leaks into the next region · case 01
After every stable line, their region looks changed and clean merges become conflicts or duplicate the anchor.
diff3 chunk merge: their copy of the anchor line leaks into the next region · case 02
After every stable line, their region looks changed and clean merges become conflicts or duplicate the anchor.
diff3 chunk merge: their copy of the anchor line leaks into the next region · case 03
After every stable line, their region looks changed and clean merges become conflicts or duplicate the anchor.
diff3 chunk merge: their copy of the anchor line leaks into the next region · case 04
After every stable line, their region looks changed and clean merges become conflicts or duplicate the anchor.
diff3 chunk merge: their copy of the anchor line leaks into the next region · case 05
After every stable line, their region looks changed and clean merges become conflicts or duplicate the anchor.
diff3 chunk merge: conflicts omit the base section · case 01
Conflict hunks lack the original text, contrary to the diff3 conflict style.
diff3 chunk merge: conflicts omit the base section · case 02
Conflict hunks lack the original text, contrary to the diff3 conflict style.
diff3 chunk merge: conflicts omit the base section · case 03
Conflict hunks lack the original text, contrary to the diff3 conflict style.
diff3 chunk merge: conflicts omit the base section · case 04
Conflict hunks lack the original text, contrary to the diff3 conflict style.
diff3 chunk merge: conflicts omit the base section · case 05
Conflict hunks lack the original text, contrary to the diff3 conflict style.
diff3 chunk merge: changes after the last stable line are dropped · case 01
Lines appended at the end of a file by either branch disappear from the merge.
diff3 chunk merge: changes after the last stable line are dropped · case 02
Lines appended at the end of a file by either branch disappear from the merge.
diff3 chunk merge: changes after the last stable line are dropped · case 03
Lines appended at the end of a file by either branch disappear from the merge.
diff3 chunk merge: changes after the last stable line are dropped · case 04
Lines appended at the end of a file by either branch disappear from the merge.
diff3 chunk merge: changes after the last stable line are dropped · case 05
Lines appended at the end of a file by either branch disappear from the merge.
Conflict marker resolution: longer runs of marker characters open conflicts · case 01
Content lines such as banners made of angle brackets are mistaken for conflict markers.
Conflict marker resolution: longer runs of marker characters open conflicts · case 02
Content lines such as banners made of angle brackets are mistaken for conflict markers.
Conflict marker resolution: longer runs of marker characters open conflicts · case 03
Content lines such as banners made of angle brackets are mistaken for conflict markers.
Conflict marker resolution: longer runs of marker characters open conflicts · case 04
Content lines such as banners made of angle brackets are mistaken for conflict markers.
Conflict marker resolution: longer runs of marker characters open conflicts · case 05
Content lines such as banners made of angle brackets are mistaken for conflict markers.
Conflict marker resolution: the base section is read as part of ours · case 01
Resolving to ours includes the base marker and the original text.
Conflict marker resolution: the base section is read as part of ours · case 02
Resolving to ours includes the base marker and the original text.
Conflict marker resolution: the base section is read as part of ours · case 03
Resolving to ours includes the base marker and the original text.
Conflict marker resolution: the base section is read as part of ours · case 04
Resolving to ours includes the base marker and the original text.
Conflict marker resolution: the base section is read as part of ours · case 05
Resolving to ours includes the base marker and the original text.
Conflict marker resolution: a longer rule of equals signs ends the ours section · case 01
A heading underline inside our side splits the conflict in the wrong place.
Conflict marker resolution: a longer rule of equals signs ends the ours section · case 02
A heading underline inside our side splits the conflict in the wrong place.
Conflict marker resolution: a longer rule of equals signs ends the ours section · case 03
A heading underline inside our side splits the conflict in the wrong place.
Conflict marker resolution: a longer rule of equals signs ends the ours section · case 04
A heading underline inside our side splits the conflict in the wrong place.
Conflict marker resolution: a longer rule of equals signs ends the ours section · case 05
A heading underline inside our side splits the conflict in the wrong place.
Conflict marker resolution: union places their lines first · case 01
The union resolution lists the other branch's lines before ours.
Conflict marker resolution: union places their lines first · case 02
The union resolution lists the other branch's lines before ours.
Conflict marker resolution: union places their lines first · case 03
The union resolution lists the other branch's lines before ours.
Conflict marker resolution: union places their lines first · case 04
The union resolution lists the other branch's lines before ours.
Conflict marker resolution: union places their lines first · case 05
The union resolution lists the other branch's lines before ours.
Conflict marker resolution: an unclosed conflict silently drops its lines · case 01
A truncated file resolves without error and loses the text of the open conflict.
Conflict marker resolution: an unclosed conflict silently drops its lines · case 02
A truncated file resolves without error and loses the text of the open conflict.
Conflict marker resolution: an unclosed conflict silently drops its lines · case 03
A truncated file resolves without error and loses the text of the open conflict.
Conflict marker resolution: an unclosed conflict silently drops its lines · case 04
A truncated file resolves without error and loses the text of the open conflict.
Conflict marker resolution: an unclosed conflict silently drops its lines · case 05
A truncated file resolves without error and loses the text of the open conflict.
End-of-file newline diff: a terminated file gains an empty unterminated last line · case 01
Every newline-terminated file shows a phantom empty line with a missing-newline marker.
End-of-file newline diff: a terminated file gains an empty unterminated last line · case 02
Every newline-terminated file shows a phantom empty line with a missing-newline marker.
End-of-file newline diff: a terminated file gains an empty unterminated last line · case 03
Every newline-terminated file shows a phantom empty line with a missing-newline marker.
End-of-file newline diff: a terminated file gains an empty unterminated last line · case 04
Every newline-terminated file shows a phantom empty line with a missing-newline marker.
End-of-file newline diff: a terminated file gains an empty unterminated last line · case 05
Every newline-terminated file shows a phantom empty line with a missing-newline marker.
End-of-file newline diff: lines differing only in the final newline compare equal · case 01
Adding or removing the final newline produces an empty diff.
End-of-file newline diff: lines differing only in the final newline compare equal · case 02
Adding or removing the final newline produces an empty diff.
End-of-file newline diff: lines differing only in the final newline compare equal · case 03
Adding or removing the final newline produces an empty diff.
End-of-file newline diff: lines differing only in the final newline compare equal · case 04
Adding or removing the final newline produces an empty diff.
End-of-file newline diff: lines differing only in the final newline compare equal · case 05
Adding or removing the final newline produces an empty diff.
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 ↗