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

The conversion rate is rounded to four decimals before use · case 01

Large conversions at five- or six-decimal rates are off by many minor units.

Currency rounding and FX conversion● Open access↗
FA-62002

The conversion rate is rounded to four decimals before use · case 02

Large conversions at five- or six-decimal rates are off by many minor units.

Currency rounding and FX conversion◈ Members↗
FA-62003

The conversion rate is rounded to four decimals before use · case 03

Large conversions at five- or six-decimal rates are off by many minor units.

Currency rounding and FX conversion◈ Members↗
FA-62004

The conversion rate is rounded to four decimals before use · case 04

Large conversions at five- or six-decimal rates are off by many minor units.

Currency rounding and FX conversion◈ Members↗
FA-62005

The conversion rate is rounded to four decimals before use · case 05

Large conversions at five- or six-decimal rates are off by many minor units.

Currency rounding and FX conversion◈ Members↗
FA-62006

Cash rounding is applied to each line instead of the basket total · case 01

A basket of 1.02 and 1.02 is charged 2.00 instead of 2.05.

Currency rounding and FX conversion● Open access↗
FA-62007

Cash rounding is applied to each line instead of the basket total · case 02

A basket of 1.02 and 1.02 is charged 2.00 instead of 2.05.

Currency rounding and FX conversion◈ Members↗
FA-62008

Cash rounding is applied to each line instead of the basket total · case 03

A basket of 1.02 and 1.02 is charged 2.00 instead of 2.05.

Currency rounding and FX conversion◈ Members↗
FA-62009

Cash rounding is applied to each line instead of the basket total · case 04

A basket of 1.02 and 1.02 is charged 2.00 instead of 2.05.

Currency rounding and FX conversion◈ Members↗
FA-62010

Cash rounding is applied to each line instead of the basket total · case 05

A basket of 1.02 and 1.02 is charged 2.00 instead of 2.05.

Currency rounding and FX conversion◈ Members↗
FA-62011

A 5-rappen tie on a cash refund rounds toward positive infinity · case 01

A cash refund of -2.075 pays out -2.05 while a 2.075 sale charges 2.10.

Currency rounding and FX conversion● Open access↗
FA-62012

A 5-rappen tie on a cash refund rounds toward positive infinity · case 02

A cash refund of -2.075 pays out -2.05 while a 2.075 sale charges 2.10.

Currency rounding and FX conversion◈ Members↗
FA-62013

A 5-rappen tie on a cash refund rounds toward positive infinity · case 03

A cash refund of -2.075 pays out -2.05 while a 2.075 sale charges 2.10.

Currency rounding and FX conversion◈ Members↗
FA-62014

A 5-rappen tie on a cash refund rounds toward positive infinity · case 04

A cash refund of -2.075 pays out -2.05 while a 2.075 sale charges 2.10.

Currency rounding and FX conversion◈ Members↗
FA-62015

A 5-rappen tie on a cash refund rounds toward positive infinity · case 05

A cash refund of -2.075 pays out -2.05 while a 2.075 sale charges 2.10.

Currency rounding and FX conversion◈ Members↗
FA-62016

Every non-card tender receives cash rounding · case 01

TWINT and voucher payments are rounded to 0.05 as if paid in coins.

Currency rounding and FX conversion● Open access↗
FA-62017

Every non-card tender receives cash rounding · case 02

TWINT and voucher payments are rounded to 0.05 as if paid in coins.

Currency rounding and FX conversion◈ Members↗
FA-62018

Every non-card tender receives cash rounding · case 03

TWINT and voucher payments are rounded to 0.05 as if paid in coins.

Currency rounding and FX conversion◈ Members↗
FA-62019

Every non-card tender receives cash rounding · case 04

TWINT and voucher payments are rounded to 0.05 as if paid in coins.

Currency rounding and FX conversion◈ Members↗
FA-62020

Every non-card tender receives cash rounding · case 05

TWINT and voucher payments are rounded to 0.05 as if paid in coins.

Currency rounding and FX conversion◈ Members↗
FA-62021

A cash tender label with different case or padding is not recognised · case 01

'CASH' and ' cash ' payments are charged the exact total.

Currency rounding and FX conversion● Open access↗
FA-62022

A cash tender label with different case or padding is not recognised · case 02

'CASH' and ' cash ' payments are charged the exact total.

Currency rounding and FX conversion◈ Members↗
FA-62023

A cash tender label with different case or padding is not recognised · case 03

'CASH' and ' cash ' payments are charged the exact total.

Currency rounding and FX conversion◈ Members↗
FA-62024

A cash tender label with different case or padding is not recognised · case 04

'CASH' and ' cash ' payments are charged the exact total.

Currency rounding and FX conversion◈ Members↗
FA-62025

A cash tender label with different case or padding is not recognised · case 05

'CASH' and ' cash ' payments are charged the exact total.

Currency rounding and FX conversion◈ Members↗
FA-62026

The cash rounding adjustment is reported with the wrong sign · case 01

Rounding 2.02 down to 2.00 reports an adjustment of +0.02.

Currency rounding and FX conversion● Open access↗
FA-62027

The cash rounding adjustment is reported with the wrong sign · case 02

Rounding 2.02 down to 2.00 reports an adjustment of +0.02.

Currency rounding and FX conversion◈ Members↗
FA-62028

The cash rounding adjustment is reported with the wrong sign · case 03

Rounding 2.02 down to 2.00 reports an adjustment of +0.02.

Currency rounding and FX conversion◈ Members↗
FA-62029

The cash rounding adjustment is reported with the wrong sign · case 04

Rounding 2.02 down to 2.00 reports an adjustment of +0.02.

Currency rounding and FX conversion◈ Members↗
FA-62030

The cash rounding adjustment is reported with the wrong sign · case 05

Rounding 2.02 down to 2.00 reports an adjustment of +0.02.

Currency rounding and FX conversion◈ Members↗
FA-62031

A partial close re-weights the average rate · case 01

After selling part of a long position the remaining lot shows a new average and wrong unrealized P&L.

Currency rounding and FX conversion● Open access↗
FA-62032

A partial close re-weights the average rate · case 02

After selling part of a long position the remaining lot shows a new average and wrong unrealized P&L.

Currency rounding and FX conversion◈ Members↗
FA-62033

A partial close re-weights the average rate · case 03

After selling part of a long position the remaining lot shows a new average and wrong unrealized P&L.

Currency rounding and FX conversion◈ Members↗
FA-62034

A partial close re-weights the average rate · case 04

After selling part of a long position the remaining lot shows a new average and wrong unrealized P&L.

Currency rounding and FX conversion◈ Members↗
FA-62035

A partial close re-weights the average rate · case 05

After selling part of a long position the remaining lot shows a new average and wrong unrealized P&L.

Currency rounding and FX conversion◈ Members↗
FA-62036

A position flip keeps the old lot's average rate · case 01

A long position flipped short reports the old long average for the new short lot.

Currency rounding and FX conversion● Open access↗
FA-62037

A position flip keeps the old lot's average rate · case 02

A long position flipped short reports the old long average for the new short lot.

Currency rounding and FX conversion◈ Members↗
FA-62038

A position flip keeps the old lot's average rate · case 03

A long position flipped short reports the old long average for the new short lot.

Currency rounding and FX conversion◈ Members↗
FA-62039

A position flip keeps the old lot's average rate · case 04

A long position flipped short reports the old long average for the new short lot.

Currency rounding and FX conversion◈ Members↗
FA-62040

A position flip keeps the old lot's average rate · case 05

A long position flipped short reports the old long average for the new short lot.

Currency rounding and FX conversion◈ Members↗
FA-62041

Realized P&L on a short position has the wrong sign · case 01

Buying back a short below its average books a loss.

Currency rounding and FX conversion● Open access↗
FA-62042

Realized P&L on a short position has the wrong sign · case 02

Buying back a short below its average books a loss.

Currency rounding and FX conversion◈ Members↗
FA-62043

Realized P&L on a short position has the wrong sign · case 03

Buying back a short below its average books a loss.

Currency rounding and FX conversion◈ Members↗
FA-62044

Realized P&L on a short position has the wrong sign · case 04

Buying back a short below its average books a loss.

Currency rounding and FX conversion◈ Members↗
FA-62045

Realized P&L on a short position has the wrong sign · case 05

Buying back a short below its average books a loss.

Currency rounding and FX conversion◈ Members↗
FA-62046

Unrealized P&L is measured as average minus spot · case 01

A long position shows a loss when spot is above its average.

Currency rounding and FX conversion● Open access↗
FA-62047

Unrealized P&L is measured as average minus spot · case 02

A long position shows a loss when spot is above its average.

Currency rounding and FX conversion◈ Members↗
FA-62048

Unrealized P&L is measured as average minus spot · case 03

A long position shows a loss when spot is above its average.

Currency rounding and FX conversion◈ Members↗
FA-62049

Unrealized P&L is measured as average minus spot · case 04

A long position shows a loss when spot is above its average.

Currency rounding and FX conversion◈ Members↗
FA-62050

Unrealized P&L is measured as average minus spot · case 05

A long position shows a loss when spot is above its average.

Currency rounding and FX conversion◈ Members↗
FA-62051

A zero-quantity fill on a flat position invents an average rate · case 01

A flat book reports an average rate after a zero-quantity booking correction.

Currency rounding and FX conversion● Open access↗
FA-62052

A zero-quantity fill on a flat position invents an average rate · case 02

A flat book reports an average rate after a zero-quantity booking correction.

Currency rounding and FX conversion◈ Members↗
FA-62053

A zero-quantity fill on a flat position invents an average rate · case 03

A flat book reports an average rate after a zero-quantity booking correction.

Currency rounding and FX conversion◈ Members↗
FA-62054

A zero-quantity fill on a flat position invents an average rate · case 04

A flat book reports an average rate after a zero-quantity booking correction.

Currency rounding and FX conversion◈ Members↗
FA-62055

A zero-quantity fill on a flat position invents an average rate · case 05

A flat book reports an average rate after a zero-quantity booking correction.

Currency rounding and FX conversion◈ Members↗
FA-62056

Realized P&L is rounded to cents after every closing trade · case 01

Several small closes accumulate a cent-level discrepancy against the exact realized total.

Currency rounding and FX conversion● Open access↗
FA-62057

Realized P&L is rounded to cents after every closing trade · case 02

Several small closes accumulate a cent-level discrepancy against the exact realized total.

Currency rounding and FX conversion◈ Members↗
FA-62058

Realized P&L is rounded to cents after every closing trade · case 03

Several small closes accumulate a cent-level discrepancy against the exact realized total.

Currency rounding and FX conversion◈ Members↗
FA-62059

Realized P&L is rounded to cents after every closing trade · case 04

Several small closes accumulate a cent-level discrepancy against the exact realized total.

Currency rounding and FX conversion◈ Members↗
FA-62060

Realized P&L is rounded to cents after every closing trade · case 05

Several small closes accumulate a cent-level discrepancy against the exact realized total.

Currency rounding and FX conversion◈ Members↗
FA-62061

The fee is converted and rounded separately from the gross amount · case 01

The payout differs by a minor unit from converting the net amount once.

Currency rounding and FX conversion● Open access↗
FA-62062

The fee is converted and rounded separately from the gross amount · case 02

The payout differs by a minor unit from converting the net amount once.

Currency rounding and FX conversion◈ Members↗
FA-62063

The fee is converted and rounded separately from the gross amount · case 03

The payout differs by a minor unit from converting the net amount once.

Currency rounding and FX conversion◈ Members↗
FA-62064

The fee is converted and rounded separately from the gross amount · case 04

The payout differs by a minor unit from converting the net amount once.

Currency rounding and FX conversion◈ Members↗
FA-62065

The fee is converted and rounded separately from the gross amount · case 05

The payout differs by a minor unit from converting the net amount once.

Currency rounding and FX conversion◈ Members↗
FA-62066

The percentage fee is floored instead of rounded up · case 01

A 1% fee on 1001 minor units is 10 instead of 11.

Currency rounding and FX conversion● Open access↗
FA-62067

The percentage fee is floored instead of rounded up · case 02

A 1% fee on 1001 minor units is 10 instead of 11.

Currency rounding and FX conversion◈ Members↗
FA-62068

The percentage fee is floored instead of rounded up · case 03

A 1% fee on 1001 minor units is 10 instead of 11.

Currency rounding and FX conversion◈ Members↗
FA-62069

The percentage fee is floored instead of rounded up · case 04

A 1% fee on 1001 minor units is 10 instead of 11.

Currency rounding and FX conversion◈ Members↗
FA-62070

The percentage fee is floored instead of rounded up · case 05

A 1% fee on 1001 minor units is 10 instead of 11.

Currency rounding and FX conversion◈ Members↗
FA-62071

The minimum fee acts as a maximum · case 01

Large transfers are charged at most the minimum fee.

Currency rounding and FX conversion● Open access↗
FA-62072

The minimum fee acts as a maximum · case 02

Large transfers are charged at most the minimum fee.

Currency rounding and FX conversion◈ Members↗
FA-62073

The minimum fee acts as a maximum · case 03

Large transfers are charged at most the minimum fee.

Currency rounding and FX conversion◈ Members↗
FA-62074

The minimum fee acts as a maximum · case 04

Large transfers are charged at most the minimum fee.

Currency rounding and FX conversion◈ Members↗
FA-62075

The minimum fee acts as a maximum · case 05

Large transfers are charged at most the minimum fee.

Currency rounding and FX conversion◈ Members↗
FA-62076

A fee equal to the transfer amount yields a zero payout · case 01

A transfer entirely consumed by the fee is accepted and pays out 0.

Currency rounding and FX conversion● Open access↗
FA-62077

A fee equal to the transfer amount yields a zero payout · case 02

A transfer entirely consumed by the fee is accepted and pays out 0.

Currency rounding and FX conversion◈ Members↗
FA-62078

A fee equal to the transfer amount yields a zero payout · case 03

A transfer entirely consumed by the fee is accepted and pays out 0.

Currency rounding and FX conversion◈ Members↗
FA-62079

A fee equal to the transfer amount yields a zero payout · case 04

A transfer entirely consumed by the fee is accepted and pays out 0.

Currency rounding and FX conversion◈ Members↗
FA-62080

A fee equal to the transfer amount yields a zero payout · case 05

A transfer entirely consumed by the fee is accepted and pays out 0.

Currency rounding and FX conversion◈ Members↗
FA-62081

The pip size is chosen by searching the pair text for JPY · case 01

JPY-base pairs get yen pips while forint and won pairs get four-decimal pips.

Currency rounding and FX conversion● Open access↗
FA-62082

The pip size is chosen by searching the pair text for JPY · case 02

JPY-base pairs get yen pips while forint and won pairs get four-decimal pips.

Currency rounding and FX conversion◈ Members↗
FA-62083

The pip size is chosen by searching the pair text for JPY · case 03

JPY-base pairs get yen pips while forint and won pairs get four-decimal pips.

Currency rounding and FX conversion◈ Members↗
FA-62084

The pip size is chosen by searching the pair text for JPY · case 04

JPY-base pairs get yen pips while forint and won pairs get four-decimal pips.

Currency rounding and FX conversion◈ Members↗
FA-62085

The pip size is chosen by searching the pair text for JPY · case 05

JPY-base pairs get yen pips while forint and won pairs get four-decimal pips.

Currency rounding and FX conversion◈ Members↗
FA-62086

Fractional forward points are truncated to whole pips · case 01

A 12.5-pip premium is applied as 12 pips.

Currency rounding and FX conversion● Open access↗
FA-62087

Fractional forward points are truncated to whole pips · case 02

A 12.5-pip premium is applied as 12 pips.

Currency rounding and FX conversion◈ Members↗
FA-62088

Fractional forward points are truncated to whole pips · case 03

A 12.5-pip premium is applied as 12 pips.

Currency rounding and FX conversion◈ Members↗
FA-62089

Fractional forward points are truncated to whole pips · case 04

A 12.5-pip premium is applied as 12 pips.

Currency rounding and FX conversion◈ Members↗
FA-62090

Fractional forward points are truncated to whole pips · case 05

A 12.5-pip premium is applied as 12 pips.

Currency rounding and FX conversion◈ Members↗
FA-62091

The outright forward is rounded to whole pips · case 01

The forward rate loses the fractional pip that the dealing screen shows.

Currency rounding and FX conversion● Open access↗
FA-62092

The outright forward is rounded to whole pips · case 02

The forward rate loses the fractional pip that the dealing screen shows.

Currency rounding and FX conversion◈ Members↗
FA-62093

The outright forward is rounded to whole pips · case 03

The forward rate loses the fractional pip that the dealing screen shows.

Currency rounding and FX conversion◈ Members↗
FA-62094

The outright forward is rounded to whole pips · case 04

The forward rate loses the fractional pip that the dealing screen shows.

Currency rounding and FX conversion◈ Members↗
FA-62095

The outright forward is rounded to whole pips · case 05

The forward rate loses the fractional pip that the dealing screen shows.

Currency rounding and FX conversion◈ Members↗
FA-62096

Fully offset currencies remain in the settlement instruction list · case 01

A currency that nets to zero still produces a zero payment instruction.

Currency rounding and FX conversion● Open access↗
FA-62097

Fully offset currencies remain in the settlement instruction list · case 02

A currency that nets to zero still produces a zero payment instruction.

Currency rounding and FX conversion◈ Members↗
FA-62098

Fully offset currencies remain in the settlement instruction list · case 03

A currency that nets to zero still produces a zero payment instruction.

Currency rounding and FX conversion◈ Members↗
FA-62099

Fully offset currencies remain in the settlement instruction list · case 04

A currency that nets to zero still produces a zero payment instruction.

Currency rounding and FX conversion◈ Members↗
FA-62100

Fully offset currencies remain in the settlement instruction list · case 05

A currency that nets to zero still produces a zero payment instruction.

Currency rounding and FX conversion◈ 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 ↗