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
Short circuit operands: Converts only evaluated right-hand results into Boolean values · case 01
Converts only evaluated right-hand results into Boolean values and changes the required Python-language result.
Short circuit operands: Converts only evaluated right-hand results into Boolean values · case 02
Converts only evaluated right-hand results into Boolean values and changes the required Python-language result.
Short circuit operands: Converts only evaluated right-hand results into Boolean values · case 03
Converts only evaluated right-hand results into Boolean values and changes the required Python-language result.
Short circuit operands: Converts only evaluated right-hand results into Boolean values · case 04
Converts only evaluated right-hand results into Boolean values and changes the required Python-language result.
Short circuit operands: Converts only evaluated right-hand results into Boolean values · case 05
Converts only evaluated right-hand results into Boolean values and changes the required Python-language result.
Chained comparison evaluation: Reevaluates the shared middle expression after the first comparison · case 01
Reevaluates the shared middle expression after the first comparison and changes the required Python-language result.
Chained comparison evaluation: Reevaluates the shared middle expression after the first comparison · case 02
Reevaluates the shared middle expression after the first comparison and changes the required Python-language result.
Chained comparison evaluation: Reevaluates the shared middle expression after the first comparison · case 03
Reevaluates the shared middle expression after the first comparison and changes the required Python-language result.
Chained comparison evaluation: Reevaluates the shared middle expression after the first comparison · case 04
Reevaluates the shared middle expression after the first comparison and changes the required Python-language result.
Chained comparison evaluation: Reevaluates the shared middle expression after the first comparison · case 05
Reevaluates the shared middle expression after the first comparison and changes the required Python-language result.
Chained comparison evaluation: Evaluates the right operand before knowing whether the first comparison passes · case 01
Evaluates the right operand before knowing whether the first comparison passes and changes the required Python-language result.
Chained comparison evaluation: Evaluates the right operand before knowing whether the first comparison passes · case 02
Evaluates the right operand before knowing whether the first comparison passes and changes the required Python-language result.
Chained comparison evaluation: Evaluates the right operand before knowing whether the first comparison passes · case 03
Evaluates the right operand before knowing whether the first comparison passes and changes the required Python-language result.
Chained comparison evaluation: Evaluates the right operand before knowing whether the first comparison passes · case 04
Evaluates the right operand before knowing whether the first comparison passes and changes the required Python-language result.
Chained comparison evaluation: Evaluates the right operand before knowing whether the first comparison passes · case 05
Evaluates the right operand before knowing whether the first comparison passes and changes the required Python-language result.
Chained comparison evaluation: Changes the first strict comparison into an inclusive one · case 01
Changes the first strict comparison into an inclusive one and changes the required Python-language result.
Chained comparison evaluation: Changes the first strict comparison into an inclusive one · case 02
Changes the first strict comparison into an inclusive one and changes the required Python-language result.
Chained comparison evaluation: Changes the first strict comparison into an inclusive one · case 03
Changes the first strict comparison into an inclusive one and changes the required Python-language result.
Chained comparison evaluation: Changes the first strict comparison into an inclusive one · case 04
Changes the first strict comparison into an inclusive one and changes the required Python-language result.
Chained comparison evaluation: Changes the first strict comparison into an inclusive one · case 05
Changes the first strict comparison into an inclusive one and changes the required Python-language result.
Chained comparison evaluation: Changes the second strict comparison into an inclusive one · case 01
Changes the second strict comparison into an inclusive one and changes the required Python-language result.
Chained comparison evaluation: Changes the second strict comparison into an inclusive one · case 02
Changes the second strict comparison into an inclusive one and changes the required Python-language result.
Chained comparison evaluation: Changes the second strict comparison into an inclusive one · case 03
Changes the second strict comparison into an inclusive one and changes the required Python-language result.
Chained comparison evaluation: Changes the second strict comparison into an inclusive one · case 04
Changes the second strict comparison into an inclusive one and changes the required Python-language result.
Chained comparison evaluation: Changes the second strict comparison into an inclusive one · case 05
Changes the second strict comparison into an inclusive one and changes the required Python-language result.
Chained comparison evaluation: Reverses the direction of the second comparison · case 01
Reverses the direction of the second comparison and changes the required Python-language result.
Chained comparison evaluation: Reverses the direction of the second comparison · case 02
Reverses the direction of the second comparison and changes the required Python-language result.
Chained comparison evaluation: Reverses the direction of the second comparison · case 03
Reverses the direction of the second comparison and changes the required Python-language result.
Chained comparison evaluation: Reverses the direction of the second comparison · case 04
Reverses the direction of the second comparison and changes the required Python-language result.
Chained comparison evaluation: Reverses the direction of the second comparison · case 05
Reverses the direction of the second comparison and changes the required Python-language result.
Ceiling integer quotient · case 01
Floor division is substituted for ceiling division.
Ceiling integer quotient · case 02
Floor division is substituted for ceiling division.
Ceiling integer quotient · case 03
Floor division is substituted for ceiling division.
Ceiling integer quotient · case 04
Floor division is substituted for ceiling division.
Ceiling integer quotient · case 05
Floor division is substituted for ceiling division.
Euclidean remainder positive modulus · case 01
Truncating division leaves a negative remainder.
Euclidean remainder positive modulus · case 02
Truncating division leaves a negative remainder.
Euclidean remainder positive modulus · case 03
Truncating division leaves a negative remainder.
Euclidean remainder positive modulus · case 04
Truncating division leaves a negative remainder.
Euclidean remainder positive modulus · case 05
Truncating division leaves a negative remainder.
Symmetric modular distance · case 01
Linear distance ignores wraparound.
Symmetric modular distance · case 02
Linear distance ignores wraparound.
Symmetric modular distance · case 03
Linear distance ignores wraparound.
Symmetric modular distance · case 04
Linear distance ignores wraparound.
Symmetric modular distance · case 05
Linear distance ignores wraparound.
Nearest multiple ties up · case 01
Banker rounding violates the upward midpoint convention.
Nearest multiple ties up · case 02
Banker rounding violates the upward midpoint convention.
Nearest multiple ties up · case 03
Banker rounding violates the upward midpoint convention.
Nearest multiple ties up · case 04
Banker rounding violates the upward midpoint convention.
Nearest multiple ties up · case 05
Banker rounding violates the upward midpoint convention.
Integer square root exact · case 01
Binary float conversion erases low bits before the root.
Integer square root exact · case 02
Binary float conversion erases low bits before the root.
Integer square root exact · case 03
Binary float conversion erases low bits before the root.
Integer square root exact · case 04
Binary float conversion erases low bits before the root.
Integer square root exact · case 05
Binary float conversion erases low bits before the root.
Integer square ceiling · case 01
The lower root is used when an enclosing square is required.
Integer square ceiling · case 02
The lower root is used when an enclosing square is required.
Integer square ceiling · case 03
The lower root is used when an enclosing square is required.
Integer square ceiling · case 04
The lower root is used when an enclosing square is required.
Integer square ceiling · case 05
The lower root is used when an enclosing square is required.
Signed integer bit length · case 01
The minus sign is counted as a binary digit.
Signed integer bit length · case 02
The minus sign is counted as a binary digit.
Signed integer bit length · case 03
The minus sign is counted as a binary digit.
Signed integer bit length · case 04
The minus sign is counted as a binary digit.
Signed integer bit length · case 05
The minus sign is counted as a binary digit.
Minimum signed twos complement width · case 01
Negative powers of two are allocated an unnecessary sign bit.
Minimum signed twos complement width · case 02
Negative powers of two are allocated an unnecessary sign bit.
Minimum signed twos complement width · case 03
Negative powers of two are allocated an unnecessary sign bit.
Minimum signed twos complement width · case 04
Negative powers of two are allocated an unnecessary sign bit.
Minimum signed twos complement width · case 05
Negative powers of two are allocated an unnecessary sign bit.
Unsigned saturating addition · case 01
Overflow wraps instead of saturating.
Unsigned saturating addition · case 02
Overflow wraps instead of saturating.
Unsigned saturating addition · case 03
Overflow wraps instead of saturating.
Unsigned saturating addition · case 04
Overflow wraps instead of saturating.
Unsigned saturating addition · case 05
Overflow wraps instead of saturating.
Unsigned saturating subtraction · case 01
Underflow wraps into a large positive number.
Unsigned saturating subtraction · case 02
Underflow wraps into a large positive number.
Unsigned saturating subtraction · case 03
Underflow wraps into a large positive number.
Unsigned saturating subtraction · case 04
Underflow wraps into a large positive number.
Unsigned saturating subtraction · case 05
Underflow wraps into a large positive number.
Signed saturating addition · case 01
Only positive overflow is bounded.
Signed saturating addition · case 02
Only positive overflow is bounded.
Signed saturating addition · case 03
Only positive overflow is bounded.
Signed saturating addition · case 04
Only positive overflow is bounded.
Signed saturating addition · case 05
Only positive overflow is bounded.
Unsigned rotate left · case 01
A logical shift discards bits that must rotate back in.
Unsigned rotate left · case 02
A logical shift discards bits that must rotate back in.
Unsigned rotate left · case 03
A logical shift discards bits that must rotate back in.
Unsigned rotate left · case 04
A logical shift discards bits that must rotate back in.
Unsigned rotate left · case 05
A logical shift discards bits that must rotate back in.
Unsigned rotate right · case 01
Right shifting discards the outgoing low bits.
Unsigned rotate right · case 02
Right shifting discards the outgoing low bits.
Unsigned rotate right · case 03
Right shifting discards the outgoing low bits.
Unsigned rotate right · case 04
Right shifting discards the outgoing low bits.
Unsigned rotate right · case 05
Right shifting discards the outgoing low bits.
Fixed width bit complement · case 01
Infinite sign-extension bits leak into a finite-word complement.
Fixed width bit complement · case 02
Infinite sign-extension bits leak into a finite-word complement.
Fixed width bit complement · case 03
Infinite sign-extension bits leak into a finite-word complement.
Fixed width bit complement · case 04
Infinite sign-extension bits leak into a finite-word complement.
Fixed width bit complement · case 05
Infinite sign-extension bits leak into a finite-word complement.
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 ↗