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

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.

Python evaluation● Open access↗
FA-5302

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.

Python evaluation◈ Members↗
FA-5303

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.

Python evaluation◈ Members↗
FA-5304

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.

Python evaluation◈ Members↗
FA-5305

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.

Python evaluation◈ Members↗
FA-5306

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.

Python evaluation● Open access↗
FA-5307

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.

Python evaluation◈ Members↗
FA-5308

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.

Python evaluation◈ Members↗
FA-5309

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.

Python evaluation◈ Members↗
FA-5310

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.

Python evaluation◈ Members↗
FA-5311

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.

Python evaluation● Open access↗
FA-5312

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.

Python evaluation◈ Members↗
FA-5313

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.

Python evaluation◈ Members↗
FA-5314

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.

Python evaluation◈ Members↗
FA-5315

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.

Python evaluation◈ Members↗
FA-5316

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.

Python evaluation● Open access↗
FA-5317

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.

Python evaluation◈ Members↗
FA-5318

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.

Python evaluation◈ Members↗
FA-5319

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.

Python evaluation◈ Members↗
FA-5320

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.

Python evaluation◈ Members↗
FA-5321

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.

Python evaluation● Open access↗
FA-5322

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.

Python evaluation◈ Members↗
FA-5323

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.

Python evaluation◈ Members↗
FA-5324

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.

Python evaluation◈ Members↗
FA-5325

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.

Python evaluation◈ Members↗
FA-5326

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.

Python evaluation● Open access↗
FA-5327

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.

Python evaluation◈ Members↗
FA-5328

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.

Python evaluation◈ Members↗
FA-5329

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.

Python evaluation◈ Members↗
FA-5330

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.

Python evaluation◈ Members↗
FA-5331

Ceiling integer quotient · case 01

Floor division is substituted for ceiling division.

Integer arithmetic● Open access↗
FA-5332

Ceiling integer quotient · case 02

Floor division is substituted for ceiling division.

Integer arithmetic◈ Members↗
FA-5333

Ceiling integer quotient · case 03

Floor division is substituted for ceiling division.

Integer arithmetic◈ Members↗
FA-5334

Ceiling integer quotient · case 04

Floor division is substituted for ceiling division.

Integer arithmetic◈ Members↗
FA-5335

Ceiling integer quotient · case 05

Floor division is substituted for ceiling division.

Integer arithmetic◈ Members↗
FA-5336

Euclidean remainder positive modulus · case 01

Truncating division leaves a negative remainder.

Integer arithmetic● Open access↗
FA-5337

Euclidean remainder positive modulus · case 02

Truncating division leaves a negative remainder.

Integer arithmetic◈ Members↗
FA-5338

Euclidean remainder positive modulus · case 03

Truncating division leaves a negative remainder.

Integer arithmetic◈ Members↗
FA-5339

Euclidean remainder positive modulus · case 04

Truncating division leaves a negative remainder.

Integer arithmetic◈ Members↗
FA-5340

Euclidean remainder positive modulus · case 05

Truncating division leaves a negative remainder.

Integer arithmetic◈ Members↗
FA-5341

Symmetric modular distance · case 01

Linear distance ignores wraparound.

Integer arithmetic● Open access↗
FA-5342

Symmetric modular distance · case 02

Linear distance ignores wraparound.

Integer arithmetic◈ Members↗
FA-5343

Symmetric modular distance · case 03

Linear distance ignores wraparound.

Integer arithmetic◈ Members↗
FA-5344

Symmetric modular distance · case 04

Linear distance ignores wraparound.

Integer arithmetic◈ Members↗
FA-5345

Symmetric modular distance · case 05

Linear distance ignores wraparound.

Integer arithmetic◈ Members↗
FA-5346

Nearest multiple ties up · case 01

Banker rounding violates the upward midpoint convention.

Integer arithmetic● Open access↗
FA-5347

Nearest multiple ties up · case 02

Banker rounding violates the upward midpoint convention.

Integer arithmetic◈ Members↗
FA-5348

Nearest multiple ties up · case 03

Banker rounding violates the upward midpoint convention.

Integer arithmetic◈ Members↗
FA-5349

Nearest multiple ties up · case 04

Banker rounding violates the upward midpoint convention.

Integer arithmetic◈ Members↗
FA-5350

Nearest multiple ties up · case 05

Banker rounding violates the upward midpoint convention.

Integer arithmetic◈ Members↗
FA-5351

Integer square root exact · case 01

Binary float conversion erases low bits before the root.

Integer arithmetic● Open access↗
FA-5352

Integer square root exact · case 02

Binary float conversion erases low bits before the root.

Integer arithmetic◈ Members↗
FA-5353

Integer square root exact · case 03

Binary float conversion erases low bits before the root.

Integer arithmetic◈ Members↗
FA-5354

Integer square root exact · case 04

Binary float conversion erases low bits before the root.

Integer arithmetic◈ Members↗
FA-5355

Integer square root exact · case 05

Binary float conversion erases low bits before the root.

Integer arithmetic◈ Members↗
FA-5356

Integer square ceiling · case 01

The lower root is used when an enclosing square is required.

Integer arithmetic● Open access↗
FA-5357

Integer square ceiling · case 02

The lower root is used when an enclosing square is required.

Integer arithmetic◈ Members↗
FA-5358

Integer square ceiling · case 03

The lower root is used when an enclosing square is required.

Integer arithmetic◈ Members↗
FA-5359

Integer square ceiling · case 04

The lower root is used when an enclosing square is required.

Integer arithmetic◈ Members↗
FA-5360

Integer square ceiling · case 05

The lower root is used when an enclosing square is required.

Integer arithmetic◈ Members↗
FA-5361

Signed integer bit length · case 01

The minus sign is counted as a binary digit.

Integer arithmetic● Open access↗
FA-5362

Signed integer bit length · case 02

The minus sign is counted as a binary digit.

Integer arithmetic◈ Members↗
FA-5363

Signed integer bit length · case 03

The minus sign is counted as a binary digit.

Integer arithmetic◈ Members↗
FA-5364

Signed integer bit length · case 04

The minus sign is counted as a binary digit.

Integer arithmetic◈ Members↗
FA-5365

Signed integer bit length · case 05

The minus sign is counted as a binary digit.

Integer arithmetic◈ Members↗
FA-5366

Minimum signed twos complement width · case 01

Negative powers of two are allocated an unnecessary sign bit.

Integer arithmetic● Open access↗
FA-5367

Minimum signed twos complement width · case 02

Negative powers of two are allocated an unnecessary sign bit.

Integer arithmetic◈ Members↗
FA-5368

Minimum signed twos complement width · case 03

Negative powers of two are allocated an unnecessary sign bit.

Integer arithmetic◈ Members↗
FA-5369

Minimum signed twos complement width · case 04

Negative powers of two are allocated an unnecessary sign bit.

Integer arithmetic◈ Members↗
FA-5370

Minimum signed twos complement width · case 05

Negative powers of two are allocated an unnecessary sign bit.

Integer arithmetic◈ Members↗
FA-5371

Unsigned saturating addition · case 01

Overflow wraps instead of saturating.

Integer arithmetic● Open access↗
FA-5372

Unsigned saturating addition · case 02

Overflow wraps instead of saturating.

Integer arithmetic◈ Members↗
FA-5373

Unsigned saturating addition · case 03

Overflow wraps instead of saturating.

Integer arithmetic◈ Members↗
FA-5374

Unsigned saturating addition · case 04

Overflow wraps instead of saturating.

Integer arithmetic◈ Members↗
FA-5375

Unsigned saturating addition · case 05

Overflow wraps instead of saturating.

Integer arithmetic◈ Members↗
FA-5376

Unsigned saturating subtraction · case 01

Underflow wraps into a large positive number.

Integer arithmetic● Open access↗
FA-5377

Unsigned saturating subtraction · case 02

Underflow wraps into a large positive number.

Integer arithmetic◈ Members↗
FA-5378

Unsigned saturating subtraction · case 03

Underflow wraps into a large positive number.

Integer arithmetic◈ Members↗
FA-5379

Unsigned saturating subtraction · case 04

Underflow wraps into a large positive number.

Integer arithmetic◈ Members↗
FA-5380

Unsigned saturating subtraction · case 05

Underflow wraps into a large positive number.

Integer arithmetic◈ Members↗
FA-5381

Signed saturating addition · case 01

Only positive overflow is bounded.

Integer arithmetic● Open access↗
FA-5382

Signed saturating addition · case 02

Only positive overflow is bounded.

Integer arithmetic◈ Members↗
FA-5383

Signed saturating addition · case 03

Only positive overflow is bounded.

Integer arithmetic◈ Members↗
FA-5384

Signed saturating addition · case 04

Only positive overflow is bounded.

Integer arithmetic◈ Members↗
FA-5385

Signed saturating addition · case 05

Only positive overflow is bounded.

Integer arithmetic◈ Members↗
FA-5386

Unsigned rotate left · case 01

A logical shift discards bits that must rotate back in.

Integer arithmetic● Open access↗
FA-5387

Unsigned rotate left · case 02

A logical shift discards bits that must rotate back in.

Integer arithmetic◈ Members↗
FA-5388

Unsigned rotate left · case 03

A logical shift discards bits that must rotate back in.

Integer arithmetic◈ Members↗
FA-5389

Unsigned rotate left · case 04

A logical shift discards bits that must rotate back in.

Integer arithmetic◈ Members↗
FA-5390

Unsigned rotate left · case 05

A logical shift discards bits that must rotate back in.

Integer arithmetic◈ Members↗
FA-5391

Unsigned rotate right · case 01

Right shifting discards the outgoing low bits.

Integer arithmetic● Open access↗
FA-5392

Unsigned rotate right · case 02

Right shifting discards the outgoing low bits.

Integer arithmetic◈ Members↗
FA-5393

Unsigned rotate right · case 03

Right shifting discards the outgoing low bits.

Integer arithmetic◈ Members↗
FA-5394

Unsigned rotate right · case 04

Right shifting discards the outgoing low bits.

Integer arithmetic◈ Members↗
FA-5395

Unsigned rotate right · case 05

Right shifting discards the outgoing low bits.

Integer arithmetic◈ Members↗
FA-5396

Fixed width bit complement · case 01

Infinite sign-extension bits leak into a finite-word complement.

Integer arithmetic● Open access↗
FA-5397

Fixed width bit complement · case 02

Infinite sign-extension bits leak into a finite-word complement.

Integer arithmetic◈ Members↗
FA-5398

Fixed width bit complement · case 03

Infinite sign-extension bits leak into a finite-word complement.

Integer arithmetic◈ Members↗
FA-5399

Fixed width bit complement · case 04

Infinite sign-extension bits leak into a finite-word complement.

Integer arithmetic◈ Members↗
FA-5400

Fixed width bit complement · case 05

Infinite sign-extension bits leak into a finite-word complement.

Integer arithmetic◈ 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 ↗