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

Expiring point lots: sweep report unit · case 01

The expiry notice says "2 points expired" when two lots holding hundreds of points expired.

Loyalty points ledgers● Open access↗
FA-60402

Expiring point lots: sweep report unit · case 02

The expiry notice says "2 points expired" when two lots holding hundreds of points expired.

Loyalty points ledgers◈ Members↗
FA-60403

Expiring point lots: sweep report unit · case 03

The expiry notice says "2 points expired" when two lots holding hundreds of points expired.

Loyalty points ledgers◈ Members↗
FA-60404

Expiring point lots: sweep report unit · case 04

The expiry notice says "2 points expired" when two lots holding hundreds of points expired.

Loyalty points ledgers◈ Members↗
FA-60405

Expiring point lots: sweep report unit · case 05

The expiry notice says "2 points expired" when two lots holding hundreds of points expired.

Loyalty points ledgers◈ Members↗
FA-60406

Expiring point lots: emptied lot cleanup · case 01

Statements list zero-point lots left over from redemptions.

Loyalty points ledgers● Open access↗
FA-60407

Expiring point lots: emptied lot cleanup · case 02

Statements list zero-point lots left over from redemptions.

Loyalty points ledgers◈ Members↗
FA-60408

Expiring point lots: emptied lot cleanup · case 03

Statements list zero-point lots left over from redemptions.

Loyalty points ledgers◈ Members↗
FA-60409

Expiring point lots: emptied lot cleanup · case 04

Statements list zero-point lots left over from redemptions.

Loyalty points ledgers◈ Members↗
FA-60410

Expiring point lots: emptied lot cleanup · case 05

Statements list zero-point lots left over from redemptions.

Loyalty points ledgers◈ Members↗
FA-60411

Points redemption at checkout: minimum balance boundary · case 01

A member with exactly the 500-point minimum cannot redeem.

Loyalty points ledgers● Open access↗
FA-60412

Points redemption at checkout: minimum balance boundary · case 02

A member with exactly the 500-point minimum cannot redeem.

Loyalty points ledgers◈ Members↗
FA-60413

Points redemption at checkout: minimum balance boundary · case 03

A member with exactly the 500-point minimum cannot redeem.

Loyalty points ledgers◈ Members↗
FA-60414

Points redemption at checkout: minimum balance boundary · case 04

A member with exactly the 500-point minimum cannot redeem.

Loyalty points ledgers◈ Members↗
FA-60415

Points redemption at checkout: minimum balance boundary · case 05

A member with exactly the 500-point minimum cannot redeem.

Loyalty points ledgers◈ Members↗
FA-60416

Points redemption at checkout: request block rounding · case 01

Members are charged more points than they asked for.

Loyalty points ledgers● Open access↗
FA-60417

Points redemption at checkout: request block rounding · case 02

Members are charged more points than they asked for.

Loyalty points ledgers◈ Members↗
FA-60418

Points redemption at checkout: request block rounding · case 03

Members are charged more points than they asked for.

Loyalty points ledgers◈ Members↗
FA-60419

Points redemption at checkout: request block rounding · case 04

Members are charged more points than they asked for.

Loyalty points ledgers◈ Members↗
FA-60420

Points redemption at checkout: request block rounding · case 05

Members are charged more points than they asked for.

Loyalty points ledgers◈ Members↗
FA-60421

Points redemption at checkout: balance block floor · case 01

A redemption uses an odd number of points that is not a whole block.

Loyalty points ledgers● Open access↗
FA-60422

Points redemption at checkout: balance block floor · case 02

A redemption uses an odd number of points that is not a whole block.

Loyalty points ledgers◈ Members↗
FA-60423

Points redemption at checkout: balance block floor · case 03

A redemption uses an odd number of points that is not a whole block.

Loyalty points ledgers◈ Members↗
FA-60424

Points redemption at checkout: balance block floor · case 04

A redemption uses an odd number of points that is not a whole block.

Loyalty points ledgers◈ Members↗
FA-60425

Points redemption at checkout: balance block floor · case 05

A redemption uses an odd number of points that is not a whole block.

Loyalty points ledgers◈ Members↗
FA-60426

Points redemption at checkout: cap currency conversion · case 01

At two cents per point the redemption cap allows twice the intended discount.

Loyalty points ledgers● Open access↗
FA-60427

Points redemption at checkout: cap currency conversion · case 02

At two cents per point the redemption cap allows twice the intended discount.

Loyalty points ledgers◈ Members↗
FA-60428

Points redemption at checkout: cap currency conversion · case 03

At two cents per point the redemption cap allows twice the intended discount.

Loyalty points ledgers◈ Members↗
FA-60429

Points redemption at checkout: cap currency conversion · case 04

At two cents per point the redemption cap allows twice the intended discount.

Loyalty points ledgers◈ Members↗
FA-60430

Points redemption at checkout: cap currency conversion · case 05

At two cents per point the redemption cap allows twice the intended discount.

Loyalty points ledgers◈ Members↗
FA-60431

Points redemption at checkout: cash due valuation · case 01

Cash due is wrong for programs where a point is worth more than one cent.

Loyalty points ledgers● Open access↗
FA-60432

Points redemption at checkout: cash due valuation · case 02

Cash due is wrong for programs where a point is worth more than one cent.

Loyalty points ledgers◈ Members↗
FA-60433

Points redemption at checkout: cash due valuation · case 03

Cash due is wrong for programs where a point is worth more than one cent.

Loyalty points ledgers◈ Members↗
FA-60434

Points redemption at checkout: cash due valuation · case 04

Cash due is wrong for programs where a point is worth more than one cent.

Loyalty points ledgers◈ Members↗
FA-60435

Points redemption at checkout: cash due valuation · case 05

Cash due is wrong for programs where a point is worth more than one cent.

Loyalty points ledgers◈ Members↗
FA-60436

Rolling tier qualification with soft landing: window start · case 01

Activity from thirteen months ago still counts toward status.

Loyalty points ledgers● Open access↗
FA-60437

Rolling tier qualification with soft landing: window start · case 02

Activity from thirteen months ago still counts toward status.

Loyalty points ledgers◈ Members↗
FA-60438

Rolling tier qualification with soft landing: window start · case 03

Activity from thirteen months ago still counts toward status.

Loyalty points ledgers◈ Members↗
FA-60439

Rolling tier qualification with soft landing: window start · case 04

Activity from thirteen months ago still counts toward status.

Loyalty points ledgers◈ Members↗
FA-60440

Rolling tier qualification with soft landing: window start · case 05

Activity from thirteen months ago still counts toward status.

Loyalty points ledgers◈ Members↗
FA-60441

Rolling tier qualification with soft landing: window end · case 01

Future-dated corrections posted for later months qualify members early.

Loyalty points ledgers● Open access↗
FA-60442

Rolling tier qualification with soft landing: window end · case 02

Future-dated corrections posted for later months qualify members early.

Loyalty points ledgers◈ Members↗
FA-60443

Rolling tier qualification with soft landing: window end · case 03

Future-dated corrections posted for later months qualify members early.

Loyalty points ledgers◈ Members↗
FA-60444

Rolling tier qualification with soft landing: window end · case 04

Future-dated corrections posted for later months qualify members early.

Loyalty points ledgers◈ Members↗
FA-60445

Rolling tier qualification with soft landing: window end · case 05

Future-dated corrections posted for later months qualify members early.

Loyalty points ledgers◈ Members↗
FA-60446

Rolling tier qualification with soft landing: threshold boundary · case 01

Members who hit a tier threshold exactly are not promoted.

Loyalty points ledgers● Open access↗
FA-60447

Rolling tier qualification with soft landing: threshold boundary · case 02

Members who hit a tier threshold exactly are not promoted.

Loyalty points ledgers◈ Members↗
FA-60448

Rolling tier qualification with soft landing: threshold boundary · case 03

Members who hit a tier threshold exactly are not promoted.

Loyalty points ledgers◈ Members↗
FA-60449

Rolling tier qualification with soft landing: threshold boundary · case 04

Members who hit a tier threshold exactly are not promoted.

Loyalty points ledgers◈ Members↗
FA-60450

Rolling tier qualification with soft landing: threshold boundary · case 05

Members who hit a tier threshold exactly are not promoted.

Loyalty points ledgers◈ Members↗
FA-60451

Rolling tier qualification with soft landing: highest tier met · case 01

A member who qualifies for gold is only granted silver.

Loyalty points ledgers● Open access↗
FA-60452

Rolling tier qualification with soft landing: highest tier met · case 02

A member who qualifies for gold is only granted silver.

Loyalty points ledgers◈ Members↗
FA-60453

Rolling tier qualification with soft landing: highest tier met · case 03

A member who qualifies for gold is only granted silver.

Loyalty points ledgers◈ Members↗
FA-60454

Rolling tier qualification with soft landing: highest tier met · case 04

A member who qualifies for gold is only granted silver.

Loyalty points ledgers◈ Members↗
FA-60455

Rolling tier qualification with soft landing: highest tier met · case 05

A member who qualifies for gold is only granted silver.

Loyalty points ledgers◈ Members↗
FA-60456

Rolling tier qualification with soft landing: soft landing step · case 01

A platinum member with a weak year falls straight to member status.

Loyalty points ledgers● Open access↗
FA-60457

Rolling tier qualification with soft landing: soft landing step · case 02

A platinum member with a weak year falls straight to member status.

Loyalty points ledgers◈ Members↗
FA-60458

Rolling tier qualification with soft landing: soft landing step · case 03

A platinum member with a weak year falls straight to member status.

Loyalty points ledgers◈ Members↗
FA-60459

Rolling tier qualification with soft landing: soft landing step · case 04

A platinum member with a weak year falls straight to member status.

Loyalty points ledgers◈ Members↗
FA-60460

Rolling tier qualification with soft landing: soft landing step · case 05

A platinum member with a weak year falls straight to member status.

Loyalty points ledgers◈ Members↗
FA-60461

Refund points clawback: cumulative rounding · case 01

Refunding an order in thirds claws back more or fewer points than refunding it at once.

Loyalty points ledgers● Open access↗
FA-60462

Refund points clawback: cumulative rounding · case 02

Refunding an order in thirds claws back more or fewer points than refunding it at once.

Loyalty points ledgers◈ Members↗
FA-60463

Refund points clawback: cumulative rounding · case 03

Refunding an order in thirds claws back more or fewer points than refunding it at once.

Loyalty points ledgers◈ Members↗
FA-60464

Refund points clawback: cumulative rounding · case 04

Refunding an order in thirds claws back more or fewer points than refunding it at once.

Loyalty points ledgers◈ Members↗
FA-60465

Refund points clawback: cumulative rounding · case 05

Refunding an order in thirds claws back more or fewer points than refunding it at once.

Loyalty points ledgers◈ Members↗
FA-60466

Refund points clawback: refund total cap · case 01

Refunds that exceed the order value (e.g. including a goodwill credit) claw back more points than were earned.

Loyalty points ledgers● Open access↗
FA-60467

Refund points clawback: refund total cap · case 02

Refunds that exceed the order value (e.g. including a goodwill credit) claw back more points than were earned.

Loyalty points ledgers◈ Members↗
FA-60468

Refund points clawback: refund total cap · case 03

Refunds that exceed the order value (e.g. including a goodwill credit) claw back more points than were earned.

Loyalty points ledgers◈ Members↗
FA-60469

Refund points clawback: refund total cap · case 04

Refunds that exceed the order value (e.g. including a goodwill credit) claw back more points than were earned.

Loyalty points ledgers◈ Members↗
FA-60470

Refund points clawback: refund total cap · case 05

Refunds that exceed the order value (e.g. including a goodwill credit) claw back more points than were earned.

Loyalty points ledgers◈ Members↗
FA-60471

Refund points clawback: balance floor · case 01

Clawbacks push balances negative and no debt is tracked.

Loyalty points ledgers● Open access↗
FA-60472

Refund points clawback: balance floor · case 02

Clawbacks push balances negative and no debt is tracked.

Loyalty points ledgers◈ Members↗
FA-60473

Refund points clawback: balance floor · case 03

Clawbacks push balances negative and no debt is tracked.

Loyalty points ledgers◈ Members↗
FA-60474

Refund points clawback: balance floor · case 04

Clawbacks push balances negative and no debt is tracked.

Loyalty points ledgers◈ Members↗
FA-60475

Refund points clawback: balance floor · case 05

Clawbacks push balances negative and no debt is tracked.

Loyalty points ledgers◈ Members↗
FA-60476

Refund points clawback: debt accumulation · case 01

Only the most recent shortfall is shown as debt after several refunds.

Loyalty points ledgers● Open access↗
FA-60477

Refund points clawback: debt accumulation · case 02

Only the most recent shortfall is shown as debt after several refunds.

Loyalty points ledgers◈ Members↗
FA-60478

Refund points clawback: debt accumulation · case 03

Only the most recent shortfall is shown as debt after several refunds.

Loyalty points ledgers◈ Members↗
FA-60479

Refund points clawback: debt accumulation · case 04

Only the most recent shortfall is shown as debt after several refunds.

Loyalty points ledgers◈ Members↗
FA-60480

Refund points clawback: debt accumulation · case 05

Only the most recent shortfall is shown as debt after several refunds.

Loyalty points ledgers◈ Members↗
FA-60481

Refund points clawback: clawed-so-far tracking · case 01

The second refund claws back almost the full cumulative target again.

Loyalty points ledgers● Open access↗
FA-60482

Refund points clawback: clawed-so-far tracking · case 02

The second refund claws back almost the full cumulative target again.

Loyalty points ledgers◈ Members↗
FA-60483

Refund points clawback: clawed-so-far tracking · case 03

The second refund claws back almost the full cumulative target again.

Loyalty points ledgers◈ Members↗
FA-60484

Refund points clawback: clawed-so-far tracking · case 04

The second refund claws back almost the full cumulative target again.

Loyalty points ledgers◈ Members↗
FA-60485

Refund points clawback: clawed-so-far tracking · case 05

The second refund claws back almost the full cumulative target again.

Loyalty points ledgers◈ Members↗
FA-60486

Pending points hold period: posting day boundary · case 01

Points stay pending one day longer than the published hold period.

Loyalty points ledgers● Open access↗
FA-60487

Pending points hold period: posting day boundary · case 02

Points stay pending one day longer than the published hold period.

Loyalty points ledgers◈ Members↗
FA-60488

Pending points hold period: posting day boundary · case 03

Points stay pending one day longer than the published hold period.

Loyalty points ledgers◈ Members↗
FA-60489

Pending points hold period: posting day boundary · case 04

Points stay pending one day longer than the published hold period.

Loyalty points ledgers◈ Members↗
FA-60490

Pending points hold period: posting day boundary · case 05

Points stay pending one day longer than the published hold period.

Loyalty points ledgers◈ Members↗
FA-60491

Pending points hold period: pending window boundary · case 01

On the posting day the same points show as both pending and available.

Loyalty points ledgers● Open access↗
FA-60492

Pending points hold period: pending window boundary · case 02

On the posting day the same points show as both pending and available.

Loyalty points ledgers◈ Members↗
FA-60493

Pending points hold period: pending window boundary · case 03

On the posting day the same points show as both pending and available.

Loyalty points ledgers◈ Members↗
FA-60494

Pending points hold period: pending window boundary · case 04

On the posting day the same points show as both pending and available.

Loyalty points ledgers◈ Members↗
FA-60495

Pending points hold period: pending window boundary · case 05

On the posting day the same points show as both pending and available.

Loyalty points ledgers◈ Members↗
FA-60496

Pending points hold period: repeat refund guard · case 01

A second refund message for the same order is processed again instead of being ignored.

Loyalty points ledgers● Open access↗
FA-60497

Pending points hold period: repeat refund guard · case 02

A second refund message for the same order is processed again instead of being ignored.

Loyalty points ledgers◈ Members↗
FA-60498

Pending points hold period: repeat refund guard · case 03

A second refund message for the same order is processed again instead of being ignored.

Loyalty points ledgers◈ Members↗
FA-60499

Pending points hold period: repeat refund guard · case 04

A second refund message for the same order is processed again instead of being ignored.

Loyalty points ledgers◈ Members↗
FA-60500

Pending points hold period: repeat refund guard · case 05

A second refund message for the same order is processed again instead of being ignored.

Loyalty points ledgers◈ 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 ↗