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

Exercise notice acceptance cutoff: the time cutoff is applied to the day before expiry · case 01

Early exercise notices filed the evening before expiry are rejected.

Options payoff and settlement● Open access↗
FA-61802

Exercise notice acceptance cutoff: the time cutoff is applied to the day before expiry · case 02

Early exercise notices filed the evening before expiry are rejected.

Options payoff and settlement◈ Members↗
FA-61803

Exercise notice acceptance cutoff: the time cutoff is applied to the day before expiry · case 03

Early exercise notices filed the evening before expiry are rejected.

Options payoff and settlement◈ Members↗
FA-61804

Exercise notice acceptance cutoff: the time cutoff is applied to the day before expiry · case 04

Early exercise notices filed the evening before expiry are rejected.

Options payoff and settlement◈ Members↗
FA-61805

Exercise notice acceptance cutoff: the time cutoff is applied to the day before expiry · case 05

Early exercise notices filed the evening before expiry are rejected.

Options payoff and settlement◈ Members↗
FA-61806

Put-call parity violation detector: the strike is not discounted · case 01

Parity checks flag every fairly priced pair when rates are positive.

Options payoff and settlement● Open access↗
FA-61807

Put-call parity violation detector: the strike is not discounted · case 02

Parity checks flag every fairly priced pair when rates are positive.

Options payoff and settlement◈ Members↗
FA-61808

Put-call parity violation detector: the strike is not discounted · case 03

Parity checks flag every fairly priced pair when rates are positive.

Options payoff and settlement◈ Members↗
FA-61809

Put-call parity violation detector: the strike is not discounted · case 04

Parity checks flag every fairly priced pair when rates are positive.

Options payoff and settlement◈ Members↗
FA-61810

Put-call parity violation detector: the strike is not discounted · case 05

Parity checks flag every fairly priced pair when rates are positive.

Options payoff and settlement◈ Members↗
FA-61811

Put-call parity violation detector: the trade labels are swapped · case 01

Rich calls are reported as a buy-call trade.

Options payoff and settlement● Open access↗
FA-61812

Put-call parity violation detector: the trade labels are swapped · case 02

Rich calls are reported as a buy-call trade.

Options payoff and settlement◈ Members↗
FA-61813

Put-call parity violation detector: the trade labels are swapped · case 03

Rich calls are reported as a buy-call trade.

Options payoff and settlement◈ Members↗
FA-61814

Put-call parity violation detector: the trade labels are swapped · case 04

Rich calls are reported as a buy-call trade.

Options payoff and settlement◈ Members↗
FA-61815

Put-call parity violation detector: the trade labels are swapped · case 05

Rich calls are reported as a buy-call trade.

Options payoff and settlement◈ Members↗
FA-61816

Put-call parity violation detector: the dividend yield is ignored · case 01

Pairs on dividend-paying underlyings are flagged as violations.

Options payoff and settlement● Open access↗
FA-61817

Put-call parity violation detector: the dividend yield is ignored · case 02

Pairs on dividend-paying underlyings are flagged as violations.

Options payoff and settlement◈ Members↗
FA-61818

Put-call parity violation detector: the dividend yield is ignored · case 03

Pairs on dividend-paying underlyings are flagged as violations.

Options payoff and settlement◈ Members↗
FA-61819

Put-call parity violation detector: the dividend yield is ignored · case 04

Pairs on dividend-paying underlyings are flagged as violations.

Options payoff and settlement◈ Members↗
FA-61820

Put-call parity violation detector: the dividend yield is ignored · case 05

Pairs on dividend-paying underlyings are flagged as violations.

Options payoff and settlement◈ Members↗
FA-61821

Option order price tick rounding: the 3.00 threshold is expressed in cents while prices are in mills · case 01

Almost every order is priced on the large tick.

Options payoff and settlement● Open access↗
FA-61822

Option order price tick rounding: the 3.00 threshold is expressed in cents while prices are in mills · case 02

Almost every order is priced on the large tick.

Options payoff and settlement◈ Members↗
FA-61823

Option order price tick rounding: the 3.00 threshold is expressed in cents while prices are in mills · case 03

Almost every order is priced on the large tick.

Options payoff and settlement◈ Members↗
FA-61824

Option order price tick rounding: the 3.00 threshold is expressed in cents while prices are in mills · case 04

Almost every order is priced on the large tick.

Options payoff and settlement◈ Members↗
FA-61825

Option order price tick rounding: the 3.00 threshold is expressed in cents while prices are in mills · case 05

Almost every order is priced on the large tick.

Options payoff and settlement◈ Members↗
FA-61826

Option order price tick rounding: buy orders round up and sell orders round down · case 01

Orders become more aggressive than the trader's limit.

Options payoff and settlement● Open access↗
FA-61827

Option order price tick rounding: buy orders round up and sell orders round down · case 02

Orders become more aggressive than the trader's limit.

Options payoff and settlement◈ Members↗
FA-61828

Option order price tick rounding: buy orders round up and sell orders round down · case 03

Orders become more aggressive than the trader's limit.

Options payoff and settlement◈ Members↗
FA-61829

Option order price tick rounding: buy orders round up and sell orders round down · case 04

Orders become more aggressive than the trader's limit.

Options payoff and settlement◈ Members↗
FA-61830

Option order price tick rounding: buy orders round up and sell orders round down · case 05

Orders become more aggressive than the trader's limit.

Options payoff and settlement◈ Members↗
FA-61831

Option order price tick rounding: penny classes keep a one-cent tick above 3.00 · case 01

Penny-class orders above 3.00 are priced in cents.

Options payoff and settlement● Open access↗
FA-61832

Option order price tick rounding: penny classes keep a one-cent tick above 3.00 · case 02

Penny-class orders above 3.00 are priced in cents.

Options payoff and settlement◈ Members↗
FA-61833

Option order price tick rounding: penny classes keep a one-cent tick above 3.00 · case 03

Penny-class orders above 3.00 are priced in cents.

Options payoff and settlement◈ Members↗
FA-61834

Option order price tick rounding: penny classes keep a one-cent tick above 3.00 · case 04

Penny-class orders above 3.00 are priced in cents.

Options payoff and settlement◈ Members↗
FA-61835

Option order price tick rounding: penny classes keep a one-cent tick above 3.00 · case 05

Penny-class orders above 3.00 are priced in cents.

Options payoff and settlement◈ Members↗
FA-61836

Option order price tick rounding: sell prices already on a tick are bumped up · case 01

Valid sell limits are moved one tick higher.

Options payoff and settlement● Open access↗
FA-61837

Option order price tick rounding: sell prices already on a tick are bumped up · case 02

Valid sell limits are moved one tick higher.

Options payoff and settlement◈ Members↗
FA-61838

Option order price tick rounding: sell prices already on a tick are bumped up · case 03

Valid sell limits are moved one tick higher.

Options payoff and settlement◈ Members↗
FA-61839

Option order price tick rounding: sell prices already on a tick are bumped up · case 04

Valid sell limits are moved one tick higher.

Options payoff and settlement◈ Members↗
FA-61840

Option order price tick rounding: sell prices already on a tick are bumped up · case 05

Valid sell limits are moved one tick higher.

Options payoff and settlement◈ Members↗
FA-61841

Every currency is rounded to a hard-coded cent quantum · case 01

Yen amounts gain two fraction digits and dinar amounts lose their third minor digit.

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

Every currency is rounded to a hard-coded cent quantum · case 02

Yen amounts gain two fraction digits and dinar amounts lose their third minor digit.

Currency rounding and FX conversion◈ Members↗
FA-61843

Every currency is rounded to a hard-coded cent quantum · case 03

Yen amounts gain two fraction digits and dinar amounts lose their third minor digit.

Currency rounding and FX conversion◈ Members↗
FA-61844

Every currency is rounded to a hard-coded cent quantum · case 04

Yen amounts gain two fraction digits and dinar amounts lose their third minor digit.

Currency rounding and FX conversion◈ Members↗
FA-61845

Every currency is rounded to a hard-coded cent quantum · case 05

Yen amounts gain two fraction digits and dinar amounts lose their third minor digit.

Currency rounding and FX conversion◈ Members↗
FA-61846

A padded lower-case currency code is treated as unknown · case 01

Valid amounts tagged ' usd' are rejected as unknown currencies.

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

A padded lower-case currency code is treated as unknown · case 02

Valid amounts tagged ' usd' are rejected as unknown currencies.

Currency rounding and FX conversion◈ Members↗
FA-61848

A padded lower-case currency code is treated as unknown · case 03

Valid amounts tagged ' usd' are rejected as unknown currencies.

Currency rounding and FX conversion◈ Members↗
FA-61849

A padded lower-case currency code is treated as unknown · case 04

Valid amounts tagged ' usd' are rejected as unknown currencies.

Currency rounding and FX conversion◈ Members↗
FA-61850

A padded lower-case currency code is treated as unknown · case 05

Valid amounts tagged ' usd' are rejected as unknown currencies.

Currency rounding and FX conversion◈ Members↗
FA-61851

A negative amount that rounds to zero prints as minus zero · case 01

A refund of -0.004 USD is rendered as '-0.00'.

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

A negative amount that rounds to zero prints as minus zero · case 02

A refund of -0.004 USD is rendered as '-0.00'.

Currency rounding and FX conversion◈ Members↗
FA-61853

A negative amount that rounds to zero prints as minus zero · case 03

A refund of -0.004 USD is rendered as '-0.00'.

Currency rounding and FX conversion◈ Members↗
FA-61854

A negative amount that rounds to zero prints as minus zero · case 04

A refund of -0.004 USD is rendered as '-0.00'.

Currency rounding and FX conversion◈ Members↗
FA-61855

A negative amount that rounds to zero prints as minus zero · case 05

A refund of -0.004 USD is rendered as '-0.00'.

Currency rounding and FX conversion◈ Members↗
FA-61856

An unknown currency silently defaults to two minor digits · case 01

An unsupported code such as 'GBX' is formatted as if it were a cent currency.

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

An unknown currency silently defaults to two minor digits · case 02

An unsupported code such as 'GBX' is formatted as if it were a cent currency.

Currency rounding and FX conversion◈ Members↗
FA-61858

An unknown currency silently defaults to two minor digits · case 03

An unsupported code such as 'GBX' is formatted as if it were a cent currency.

Currency rounding and FX conversion◈ Members↗
FA-61859

An unknown currency silently defaults to two minor digits · case 04

An unsupported code such as 'GBX' is formatted as if it were a cent currency.

Currency rounding and FX conversion◈ Members↗
FA-61860

An unknown currency silently defaults to two minor digits · case 05

An unsupported code such as 'GBX' is formatted as if it were a cent currency.

Currency rounding and FX conversion◈ Members↗
FA-61861

The amount passes through binary floating point before minor-unit rounding · case 01

'2.675' USD rounds to 2.67 because the binary value is slightly below the tie.

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

The amount passes through binary floating point before minor-unit rounding · case 02

'2.675' USD rounds to 2.67 because the binary value is slightly below the tie.

Currency rounding and FX conversion◈ Members↗
FA-61863

The amount passes through binary floating point before minor-unit rounding · case 03

'2.675' USD rounds to 2.67 because the binary value is slightly below the tie.

Currency rounding and FX conversion◈ Members↗
FA-61864

The amount passes through binary floating point before minor-unit rounding · case 04

'2.675' USD rounds to 2.67 because the binary value is slightly below the tie.

Currency rounding and FX conversion◈ Members↗
FA-61865

The amount passes through binary floating point before minor-unit rounding · case 05

'2.675' USD rounds to 2.67 because the binary value is slightly below the tie.

Currency rounding and FX conversion◈ Members↗
FA-61866

The source leg multiplies by the per-USD rate instead of dividing · case 01

Converting euros to yen overstates the result by the square of the euro rate relationship.

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

The source leg multiplies by the per-USD rate instead of dividing · case 02

Converting euros to yen overstates the result by the square of the euro rate relationship.

Currency rounding and FX conversion◈ Members↗
FA-61868

The source leg multiplies by the per-USD rate instead of dividing · case 03

Converting euros to yen overstates the result by the square of the euro rate relationship.

Currency rounding and FX conversion◈ Members↗
FA-61869

The source leg multiplies by the per-USD rate instead of dividing · case 04

Converting euros to yen overstates the result by the square of the euro rate relationship.

Currency rounding and FX conversion◈ Members↗
FA-61870

The source leg multiplies by the per-USD rate instead of dividing · case 05

Converting euros to yen overstates the result by the square of the euro rate relationship.

Currency rounding and FX conversion◈ Members↗
FA-61871

The USD pivot amount is rounded to cents before the second leg · case 01

Won or yen targets drift by one unit because an intermediate cent rounding is scaled by a large rate.

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

The USD pivot amount is rounded to cents before the second leg · case 02

Won or yen targets drift by one unit because an intermediate cent rounding is scaled by a large rate.

Currency rounding and FX conversion◈ Members↗
FA-61873

The USD pivot amount is rounded to cents before the second leg · case 03

Won or yen targets drift by one unit because an intermediate cent rounding is scaled by a large rate.

Currency rounding and FX conversion◈ Members↗
FA-61874

The USD pivot amount is rounded to cents before the second leg · case 04

Won or yen targets drift by one unit because an intermediate cent rounding is scaled by a large rate.

Currency rounding and FX conversion◈ Members↗
FA-61875

The USD pivot amount is rounded to cents before the second leg · case 05

Won or yen targets drift by one unit because an intermediate cent rounding is scaled by a large rate.

Currency rounding and FX conversion◈ Members↗
FA-61876

The converted amount is rounded with the source currency exponent · case 01

Euro converted to yen is printed with two decimals, and yen converted to dinar loses decimals.

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

The converted amount is rounded with the source currency exponent · case 02

Euro converted to yen is printed with two decimals, and yen converted to dinar loses decimals.

Currency rounding and FX conversion◈ Members↗
FA-61878

The converted amount is rounded with the source currency exponent · case 03

Euro converted to yen is printed with two decimals, and yen converted to dinar loses decimals.

Currency rounding and FX conversion◈ Members↗
FA-61879

The converted amount is rounded with the source currency exponent · case 04

Euro converted to yen is printed with two decimals, and yen converted to dinar loses decimals.

Currency rounding and FX conversion◈ Members↗
FA-61880

The converted amount is rounded with the source currency exponent · case 05

Euro converted to yen is printed with two decimals, and yen converted to dinar loses decimals.

Currency rounding and FX conversion◈ Members↗
FA-61881

A missing cross rate is silently treated as parity · case 01

Converting into a currency with no published rate returns the USD amount relabelled.

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

A missing cross rate is silently treated as parity · case 02

Converting into a currency with no published rate returns the USD amount relabelled.

Currency rounding and FX conversion◈ Members↗
FA-61883

A missing cross rate is silently treated as parity · case 03

Converting into a currency with no published rate returns the USD amount relabelled.

Currency rounding and FX conversion◈ Members↗
FA-61884

A missing cross rate is silently treated as parity · case 04

Converting into a currency with no published rate returns the USD amount relabelled.

Currency rounding and FX conversion◈ Members↗
FA-61885

A missing cross rate is silently treated as parity · case 05

Converting into a currency with no published rate returns the USD amount relabelled.

Currency rounding and FX conversion◈ Members↗
FA-61886

Conversions involving USD require an explicit USD table entry · case 01

USD to EUR fails with ERR:no-rate:USD even though USD is the pivot currency.

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

Conversions involving USD require an explicit USD table entry · case 02

USD to EUR fails with ERR:no-rate:USD even though USD is the pivot currency.

Currency rounding and FX conversion◈ Members↗
FA-61888

Conversions involving USD require an explicit USD table entry · case 03

USD to EUR fails with ERR:no-rate:USD even though USD is the pivot currency.

Currency rounding and FX conversion◈ Members↗
FA-61889

Conversions involving USD require an explicit USD table entry · case 04

USD to EUR fails with ERR:no-rate:USD even though USD is the pivot currency.

Currency rounding and FX conversion◈ Members↗
FA-61890

Conversions involving USD require an explicit USD table entry · case 05

USD to EUR fails with ERR:no-rate:USD even though USD is the pivot currency.

Currency rounding and FX conversion◈ Members↗
FA-61891

A zero target rate yields a zero conversion instead of a bad-rate error · case 01

A corrupt zero rate for the target silently produces 0.00.

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

A zero target rate yields a zero conversion instead of a bad-rate error · case 02

A corrupt zero rate for the target silently produces 0.00.

Currency rounding and FX conversion◈ Members↗
FA-61893

A zero target rate yields a zero conversion instead of a bad-rate error · case 03

A corrupt zero rate for the target silently produces 0.00.

Currency rounding and FX conversion◈ Members↗
FA-61894

A zero target rate yields a zero conversion instead of a bad-rate error · case 04

A corrupt zero rate for the target silently produces 0.00.

Currency rounding and FX conversion◈ Members↗
FA-61895

A zero target rate yields a zero conversion instead of a bad-rate error · case 05

A corrupt zero rate for the target silently produces 0.00.

Currency rounding and FX conversion◈ Members↗
FA-61896

A customer purchase is priced at the dealer's bid · case 01

Customers buying euros are charged the lower bid rate, giving away the spread.

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

A customer purchase is priced at the dealer's bid · case 02

Customers buying euros are charged the lower bid rate, giving away the spread.

Currency rounding and FX conversion◈ Members↗
FA-61898

A customer purchase is priced at the dealer's bid · case 03

Customers buying euros are charged the lower bid rate, giving away the spread.

Currency rounding and FX conversion◈ Members↗
FA-61899

A customer purchase is priced at the dealer's bid · case 04

Customers buying euros are charged the lower bid rate, giving away the spread.

Currency rounding and FX conversion◈ Members↗
FA-61900

A customer purchase is priced at the dealer's bid · case 05

Customers buying euros are charged the lower bid rate, giving away the spread.

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 ↗