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
HyperLogLog cardinality estimate: linear counting applied without empty registers · case 01
A sketch with no empty registers is forced through linear counting with a fake empty register.
HyperLogLog cardinality estimate: linear counting applied without empty registers · case 02
A sketch with no empty registers is forced through linear counting with a fake empty register.
HyperLogLog cardinality estimate: linear counting applied without empty registers · case 03
A sketch with no empty registers is forced through linear counting with a fake empty register.
HyperLogLog cardinality estimate: linear counting applied without empty registers · case 04
A sketch with no empty registers is forced through linear counting with a fake empty register.
HyperLogLog cardinality estimate: linear counting applied without empty registers · case 05
A sketch with no empty registers is forced through linear counting with a fake empty register.
HyperLogLog cardinality estimate: large-range correction threshold unreachable · case 01
Very large cardinalities are underestimated because hash collisions are never corrected.
HyperLogLog cardinality estimate: large-range correction threshold unreachable · case 02
Very large cardinalities are underestimated because hash collisions are never corrected.
HyperLogLog cardinality estimate: large-range correction threshold unreachable · case 03
Very large cardinalities are underestimated because hash collisions are never corrected.
HyperLogLog cardinality estimate: large-range correction threshold unreachable · case 04
Very large cardinalities are underestimated because hash collisions are never corrected.
HyperLogLog cardinality estimate: large-range correction threshold unreachable · case 05
Very large cardinalities are underestimated because hash collisions are never corrected.
HyperLogLog cardinality estimate: estimate truncated instead of rounded · case 01
Reported counts are systematically one lower whenever the fractional part is at least one half.
HyperLogLog cardinality estimate: estimate truncated instead of rounded · case 02
Reported counts are systematically one lower whenever the fractional part is at least one half.
HyperLogLog cardinality estimate: estimate truncated instead of rounded · case 03
Reported counts are systematically one lower whenever the fractional part is at least one half.
HyperLogLog cardinality estimate: estimate truncated instead of rounded · case 04
Reported counts are systematically one lower whenever the fractional part is at least one half.
HyperLogLog cardinality estimate: estimate truncated instead of rounded · case 05
Reported counts are systematically one lower whenever the fractional part is at least one half.
HyperLogLog merge across precisions: folded registers keep their original rank · case 01
The folded sketch underestimates because moved index bits are not credited to the rank.
HyperLogLog merge across precisions: folded registers keep their original rank · case 02
The folded sketch underestimates because moved index bits are not credited to the rank.
HyperLogLog merge across precisions: folded registers keep their original rank · case 03
The folded sketch underestimates because moved index bits are not credited to the rank.
HyperLogLog merge across precisions: folded registers keep their original rank · case 04
The folded sketch underestimates because moved index bits are not credited to the rank.
HyperLogLog merge across precisions: folded registers keep their original rank · case 05
The folded sketch underestimates because moved index bits are not credited to the rank.
HyperLogLog merge across precisions: fold index uses the low bits · case 01
Registers are merged into slots that the lower-precision sketch would never have chosen.
HyperLogLog merge across precisions: fold index uses the low bits · case 02
Registers are merged into slots that the lower-precision sketch would never have chosen.
HyperLogLog merge across precisions: fold index uses the low bits · case 03
Registers are merged into slots that the lower-precision sketch would never have chosen.
HyperLogLog merge across precisions: fold index uses the low bits · case 04
Registers are merged into slots that the lower-precision sketch would never have chosen.
HyperLogLog merge across precisions: fold index uses the low bits · case 05
Registers are merged into slots that the lower-precision sketch would never have chosen.
HyperLogLog merge across precisions: displaced-bit rank counts from the wrong end · case 01
Folded ranks grow with the value of displaced bits rather than with leading zeros.
HyperLogLog merge across precisions: displaced-bit rank counts from the wrong end · case 02
Folded ranks grow with the value of displaced bits rather than with leading zeros.
HyperLogLog merge across precisions: displaced-bit rank counts from the wrong end · case 03
Folded ranks grow with the value of displaced bits rather than with leading zeros.
HyperLogLog merge across precisions: displaced-bit rank counts from the wrong end · case 04
Folded ranks grow with the value of displaced bits rather than with leading zeros.
HyperLogLog merge across precisions: displaced-bit rank counts from the wrong end · case 05
Folded ranks grow with the value of displaced bits rather than with leading zeros.
HyperLogLog merge across precisions: empty registers acquire phantom ranks · case 01
Registers that never saw a hash contribute non-zero ranks after folding, inflating the estimate.
HyperLogLog merge across precisions: empty registers acquire phantom ranks · case 02
Registers that never saw a hash contribute non-zero ranks after folding, inflating the estimate.
HyperLogLog merge across precisions: empty registers acquire phantom ranks · case 03
Registers that never saw a hash contribute non-zero ranks after folding, inflating the estimate.
HyperLogLog merge across precisions: empty registers acquire phantom ranks · case 04
Registers that never saw a hash contribute non-zero ranks after folding, inflating the estimate.
HyperLogLog merge across precisions: empty registers acquire phantom ranks · case 05
Registers that never saw a hash contribute non-zero ranks after folding, inflating the estimate.
HyperLogLog merge across precisions: merge adds registers · case 01
Merged ranks exceed any rank either stream could produce, massively overestimating the union.
HyperLogLog merge across precisions: merge adds registers · case 02
Merged ranks exceed any rank either stream could produce, massively overestimating the union.
HyperLogLog merge across precisions: merge adds registers · case 03
Merged ranks exceed any rank either stream could produce, massively overestimating the union.
HyperLogLog merge across precisions: merge adds registers · case 04
Merged ranks exceed any rank either stream could produce, massively overestimating the union.
HyperLogLog merge across precisions: merge adds registers · case 05
Merged ranks exceed any rank either stream could produce, massively overestimating the union.
Count-Min sketch with conservative update: conservative update lowers larger cells · case 01
Cells already inflated by other keys are lowered to this key's target, so other keys become underestimated.
Count-Min sketch with conservative update: conservative update lowers larger cells · case 02
Cells already inflated by other keys are lowered to this key's target, so other keys become underestimated.
Count-Min sketch with conservative update: conservative update lowers larger cells · case 03
Cells already inflated by other keys are lowered to this key's target, so other keys become underestimated.
Count-Min sketch with conservative update: conservative update lowers larger cells · case 04
Cells already inflated by other keys are lowered to this key's target, so other keys become underestimated.
Count-Min sketch with conservative update: conservative update lowers larger cells · case 05
Cells already inflated by other keys are lowered to this key's target, so other keys become underestimated.
Count-Min sketch with conservative update: target computed from a running minimum · case 01
Early rows are raised from a partial minimum, overestimating keys whose smallest cell is in a later row.
Count-Min sketch with conservative update: target computed from a running minimum · case 02
Early rows are raised from a partial minimum, overestimating keys whose smallest cell is in a later row.
Count-Min sketch with conservative update: target computed from a running minimum · case 03
Early rows are raised from a partial minimum, overestimating keys whose smallest cell is in a later row.
Count-Min sketch with conservative update: target computed from a running minimum · case 04
Early rows are raised from a partial minimum, overestimating keys whose smallest cell is in a later row.
Count-Min sketch with conservative update: target computed from a running minimum · case 05
Early rows are raised from a partial minimum, overestimating keys whose smallest cell is in a later row.
Count-Min sketch with conservative update: zero and negative counts accepted · case 01
Deletions are acknowledged although conservative cells cannot decrease, and the stream total drifts.
Count-Min sketch with conservative update: zero and negative counts accepted · case 02
Deletions are acknowledged although conservative cells cannot decrease, and the stream total drifts.
Count-Min sketch with conservative update: zero and negative counts accepted · case 03
Deletions are acknowledged although conservative cells cannot decrease, and the stream total drifts.
Count-Min sketch with conservative update: zero and negative counts accepted · case 04
Deletions are acknowledged although conservative cells cannot decrease, and the stream total drifts.
Count-Min sketch with conservative update: zero and negative counts accepted · case 05
Deletions are acknowledged although conservative cells cannot decrease, and the stream total drifts.
Count-Min sketch with conservative update: error bound omits the e factor · case 01
Callers trust estimates to be within a bound that Count-Min does not guarantee.
Count-Min sketch with conservative update: error bound omits the e factor · case 02
Callers trust estimates to be within a bound that Count-Min does not guarantee.
Count-Min sketch with conservative update: error bound omits the e factor · case 03
Callers trust estimates to be within a bound that Count-Min does not guarantee.
Count-Min sketch with conservative update: error bound omits the e factor · case 04
Callers trust estimates to be within a bound that Count-Min does not guarantee.
Count-Min sketch with conservative update: error bound omits the e factor · case 05
Callers trust estimates to be within a bound that Count-Min does not guarantee.
Count-Min sketch with conservative update: bucket skips the prime-field reduction · case 01
Large keys land in buckets that differ from other nodes using the specified hash family.
Count-Min sketch with conservative update: bucket skips the prime-field reduction · case 02
Large keys land in buckets that differ from other nodes using the specified hash family.
Count-Min sketch with conservative update: bucket skips the prime-field reduction · case 03
Large keys land in buckets that differ from other nodes using the specified hash family.
Count-Min sketch with conservative update: bucket skips the prime-field reduction · case 04
Large keys land in buckets that differ from other nodes using the specified hash family.
Count-Min sketch with conservative update: bucket skips the prime-field reduction · case 05
Large keys land in buckets that differ from other nodes using the specified hash family.
Count sketch frequency estimation: query ignores the row sign · case 01
Rows where the key was stored with a negative sign vote with the wrong polarity.
Count sketch frequency estimation: query ignores the row sign · case 02
Rows where the key was stored with a negative sign vote with the wrong polarity.
Count sketch frequency estimation: query ignores the row sign · case 03
Rows where the key was stored with a negative sign vote with the wrong polarity.
Count sketch frequency estimation: query ignores the row sign · case 04
Rows where the key was stored with a negative sign vote with the wrong polarity.
Count sketch frequency estimation: query ignores the row sign · case 05
Rows where the key was stored with a negative sign vote with the wrong polarity.
Count sketch frequency estimation: sign derived from the bucket hash · case 01
Keys sharing a bucket also share a sign more often, so collisions no longer cancel in expectation.
Count sketch frequency estimation: sign derived from the bucket hash · case 02
Keys sharing a bucket also share a sign more often, so collisions no longer cancel in expectation.
Count sketch frequency estimation: sign derived from the bucket hash · case 03
Keys sharing a bucket also share a sign more often, so collisions no longer cancel in expectation.
Count sketch frequency estimation: sign derived from the bucket hash · case 04
Keys sharing a bucket also share a sign more often, so collisions no longer cancel in expectation.
Count sketch frequency estimation: sign derived from the bucket hash · case 05
Keys sharing a bucket also share a sign more often, so collisions no longer cancel in expectation.
Count sketch frequency estimation: estimate averages rows · case 01
A single heavily colliding row skews the estimate instead of being outvoted.
Count sketch frequency estimation: estimate averages rows · case 02
A single heavily colliding row skews the estimate instead of being outvoted.
Count sketch frequency estimation: estimate averages rows · case 03
A single heavily colliding row skews the estimate instead of being outvoted.
Count sketch frequency estimation: estimate averages rows · case 04
A single heavily colliding row skews the estimate instead of being outvoted.
Count sketch frequency estimation: estimate averages rows · case 05
A single heavily colliding row skews the estimate instead of being outvoted.
Count sketch frequency estimation: even row count takes the lower middle value · case 01
Sketches with an even number of rows systematically underestimate.
Count sketch frequency estimation: even row count takes the lower middle value · case 02
Sketches with an even number of rows systematically underestimate.
Count sketch frequency estimation: even row count takes the lower middle value · case 03
Sketches with an even number of rows systematically underestimate.
Count sketch frequency estimation: even row count takes the lower middle value · case 04
Sketches with an even number of rows systematically underestimate.
Count sketch frequency estimation: even row count takes the lower middle value · case 05
Sketches with an even number of rows systematically underestimate.
Count sketch frequency estimation: update omits the row sign · case 01
Colliding keys accumulate instead of cancelling, and queries multiply unsigned cells by a sign.
Count sketch frequency estimation: update omits the row sign · case 02
Colliding keys accumulate instead of cancelling, and queries multiply unsigned cells by a sign.
Count sketch frequency estimation: update omits the row sign · case 03
Colliding keys accumulate instead of cancelling, and queries multiply unsigned cells by a sign.
Count sketch frequency estimation: update omits the row sign · case 04
Colliding keys accumulate instead of cancelling, and queries multiply unsigned cells by a sign.
Count sketch frequency estimation: update omits the row sign · case 05
Colliding keys accumulate instead of cancelling, and queries multiply unsigned cells by a sign.
Weighted Misra-Gries frequent items: newcomer inserted with its full weight · case 01
Counters exceed the true frequency and the error guarantee no longer holds.
Weighted Misra-Gries frequent items: newcomer inserted with its full weight · case 02
Counters exceed the true frequency and the error guarantee no longer holds.
Weighted Misra-Gries frequent items: newcomer inserted with its full weight · case 03
Counters exceed the true frequency and the error guarantee no longer holds.
Weighted Misra-Gries frequent items: newcomer inserted with its full weight · case 04
Counters exceed the true frequency and the error guarantee no longer holds.
Weighted Misra-Gries frequent items: newcomer inserted with its full weight · case 05
Counters exceed the true frequency and the error guarantee no longer holds.
Weighted Misra-Gries frequent items: exhausted counters kept · case 01
Zero counters occupy slots, so later items keep triggering decrements instead of being tracked.
Weighted Misra-Gries frequent items: exhausted counters kept · case 02
Zero counters occupy slots, so later items keep triggering decrements instead of being tracked.
Weighted Misra-Gries frequent items: exhausted counters kept · case 03
Zero counters occupy slots, so later items keep triggering decrements instead of being tracked.
Weighted Misra-Gries frequent items: exhausted counters kept · case 04
Zero counters occupy slots, so later items keep triggering decrements instead of being tracked.
Weighted Misra-Gries frequent items: exhausted counters kept · case 05
Zero counters occupy slots, so later items keep triggering decrements instead of being tracked.
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 ↗