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

Chase-lock offset with subframes: subframe sign · case 01

Negative offsets carry a positive subframe part.

Broadcast timecode arithmetic● Open access↗
FA-78802

Chase-lock offset with subframes: subframe sign · case 02

Negative offsets carry a positive subframe part.

Broadcast timecode arithmetic◈ Members↗
FA-78803

Chase-lock offset with subframes: subframe sign · case 03

Negative offsets carry a positive subframe part.

Broadcast timecode arithmetic◈ Members↗
FA-78804

Chase-lock offset with subframes: subframe sign · case 04

Negative offsets carry a positive subframe part.

Broadcast timecode arithmetic◈ Members↗
FA-78805

Chase-lock offset with subframes: subframe sign · case 05

Negative offsets carry a positive subframe part.

Broadcast timecode arithmetic◈ Members↗
FA-78806

Chase-lock offset with subframes: subframe digits · case 01

A label ending in .5 contributes 5 hundredths instead of 50.

Broadcast timecode arithmetic● Open access↗
FA-78807

Chase-lock offset with subframes: subframe digits · case 02

A label ending in .5 contributes 5 hundredths instead of 50.

Broadcast timecode arithmetic◈ Members↗
FA-78808

Chase-lock offset with subframes: subframe digits · case 03

A label ending in .5 contributes 5 hundredths instead of 50.

Broadcast timecode arithmetic◈ Members↗
FA-78809

Chase-lock offset with subframes: subframe digits · case 04

A label ending in .5 contributes 5 hundredths instead of 50.

Broadcast timecode arithmetic◈ Members↗
FA-78810

Chase-lock offset with subframes: subframe digits · case 05

A label ending in .5 contributes 5 hundredths instead of 50.

Broadcast timecode arithmetic◈ Members↗
FA-78811

Chase-lock offset with subframes: day length in subframes · case 01

Offsets across midnight are wrapped at a fraction of the day.

Broadcast timecode arithmetic● Open access↗
FA-78812

Chase-lock offset with subframes: day length in subframes · case 02

Offsets across midnight are wrapped at a fraction of the day.

Broadcast timecode arithmetic◈ Members↗
FA-78813

Chase-lock offset with subframes: day length in subframes · case 03

Offsets across midnight are wrapped at a fraction of the day.

Broadcast timecode arithmetic◈ Members↗
FA-78814

Chase-lock offset with subframes: day length in subframes · case 04

Offsets across midnight are wrapped at a fraction of the day.

Broadcast timecode arithmetic◈ Members↗
FA-78815

Chase-lock offset with subframes: day length in subframes · case 05

Offsets across midnight are wrapped at a fraction of the day.

Broadcast timecode arithmetic◈ Members↗
FA-78816

90 kHz presentation timestamp to frame label: wrap modulus · case 01

Streams that pass the PTS rollover jump backwards by more than 13 hours.

Broadcast timecode arithmetic● Open access↗
FA-78817

90 kHz presentation timestamp to frame label: wrap modulus · case 02

Streams that pass the PTS rollover jump backwards by more than 13 hours.

Broadcast timecode arithmetic◈ Members↗
FA-78818

90 kHz presentation timestamp to frame label: wrap modulus · case 03

Streams that pass the PTS rollover jump backwards by more than 13 hours.

Broadcast timecode arithmetic◈ Members↗
FA-78819

90 kHz presentation timestamp to frame label: wrap modulus · case 04

Streams that pass the PTS rollover jump backwards by more than 13 hours.

Broadcast timecode arithmetic◈ Members↗
FA-78820

90 kHz presentation timestamp to frame label: wrap modulus · case 05

Streams that pass the PTS rollover jump backwards by more than 13 hours.

Broadcast timecode arithmetic◈ Members↗
FA-78821

90 kHz presentation timestamp to frame label: pre-roll window · case 01

Timestamps that legitimately wrapped past 2^33 are discarded.

Broadcast timecode arithmetic● Open access↗
FA-78822

90 kHz presentation timestamp to frame label: pre-roll window · case 02

Timestamps that legitimately wrapped past 2^33 are discarded.

Broadcast timecode arithmetic◈ Members↗
FA-78823

90 kHz presentation timestamp to frame label: pre-roll window · case 03

Timestamps that legitimately wrapped past 2^33 are discarded.

Broadcast timecode arithmetic◈ Members↗
FA-78824

90 kHz presentation timestamp to frame label: pre-roll window · case 04

Timestamps that legitimately wrapped past 2^33 are discarded.

Broadcast timecode arithmetic◈ Members↗
FA-78825

90 kHz presentation timestamp to frame label: pre-roll window · case 05

Timestamps that legitimately wrapped past 2^33 are discarded.

Broadcast timecode arithmetic◈ Members↗
FA-78826

90 kHz presentation timestamp to frame label: elapsed wrap · case 01

Frames after a PTS rollover get negative frame numbers.

Broadcast timecode arithmetic● Open access↗
FA-78827

90 kHz presentation timestamp to frame label: elapsed wrap · case 02

Frames after a PTS rollover get negative frame numbers.

Broadcast timecode arithmetic◈ Members↗
FA-78828

90 kHz presentation timestamp to frame label: elapsed wrap · case 03

Frames after a PTS rollover get negative frame numbers.

Broadcast timecode arithmetic◈ Members↗
FA-78829

90 kHz presentation timestamp to frame label: elapsed wrap · case 04

Frames after a PTS rollover get negative frame numbers.

Broadcast timecode arithmetic◈ Members↗
FA-78830

90 kHz presentation timestamp to frame label: elapsed wrap · case 05

Frames after a PTS rollover get negative frame numbers.

Broadcast timecode arithmetic◈ Members↗
FA-78831

90 kHz presentation timestamp to frame label: nearest frame · case 01

Timestamps a few ticks before a frame boundary map to the previous frame.

Broadcast timecode arithmetic● Open access↗
FA-78832

90 kHz presentation timestamp to frame label: nearest frame · case 02

Timestamps a few ticks before a frame boundary map to the previous frame.

Broadcast timecode arithmetic◈ Members↗
FA-78833

90 kHz presentation timestamp to frame label: nearest frame · case 03

Timestamps a few ticks before a frame boundary map to the previous frame.

Broadcast timecode arithmetic◈ Members↗
FA-78834

90 kHz presentation timestamp to frame label: nearest frame · case 04

Timestamps a few ticks before a frame boundary map to the previous frame.

Broadcast timecode arithmetic◈ Members↗
FA-78835

90 kHz presentation timestamp to frame label: nearest frame · case 05

Timestamps a few ticks before a frame boundary map to the previous frame.

Broadcast timecode arithmetic◈ Members↗
FA-78836

90 kHz presentation timestamp to frame label: nominal label rate · case 01

NTSC labels count only 29 frames per second.

Broadcast timecode arithmetic● Open access↗
FA-78837

90 kHz presentation timestamp to frame label: nominal label rate · case 02

NTSC labels count only 29 frames per second.

Broadcast timecode arithmetic◈ Members↗
FA-78838

90 kHz presentation timestamp to frame label: nominal label rate · case 03

NTSC labels count only 29 frames per second.

Broadcast timecode arithmetic◈ Members↗
FA-78839

90 kHz presentation timestamp to frame label: nominal label rate · case 04

NTSC labels count only 29 frames per second.

Broadcast timecode arithmetic◈ Members↗
FA-78840

90 kHz presentation timestamp to frame label: nominal label rate · case 05

NTSC labels count only 29 frames per second.

Broadcast timecode arithmetic◈ Members↗
FA-78841

Pixel bake turns tag-6 photos counter-clockwise · case 01

Portrait phone photos tagged 6 are baked upside down relative to what every viewer shows.

Image orientation metadata● Open access↗
FA-78842

Pixel bake turns tag-6 photos counter-clockwise · case 02

Portrait phone photos tagged 6 are baked upside down relative to what every viewer shows.

Image orientation metadata◈ Members↗
FA-78843

Pixel bake turns tag-6 photos counter-clockwise · case 03

Portrait phone photos tagged 6 are baked upside down relative to what every viewer shows.

Image orientation metadata◈ Members↗
FA-78844

Pixel bake turns tag-6 photos counter-clockwise · case 04

Portrait phone photos tagged 6 are baked upside down relative to what every viewer shows.

Image orientation metadata◈ Members↗
FA-78845

Pixel bake turns tag-6 photos counter-clockwise · case 05

Portrait phone photos tagged 6 are baked upside down relative to what every viewer shows.

Image orientation metadata◈ Members↗
FA-78846

Pixel bake treats tag 8 as a plain transpose · case 01

Images tagged 8 come out mirrored after baking even though their dimensions look right.

Image orientation metadata● Open access↗
FA-78847

Pixel bake treats tag 8 as a plain transpose · case 02

Images tagged 8 come out mirrored after baking even though their dimensions look right.

Image orientation metadata◈ Members↗
FA-78848

Pixel bake treats tag 8 as a plain transpose · case 03

Images tagged 8 come out mirrored after baking even though their dimensions look right.

Image orientation metadata◈ Members↗
FA-78849

Pixel bake treats tag 8 as a plain transpose · case 04

Images tagged 8 come out mirrored after baking even though their dimensions look right.

Image orientation metadata◈ Members↗
FA-78850

Pixel bake treats tag 8 as a plain transpose · case 05

Images tagged 8 come out mirrored after baking even though their dimensions look right.

Image orientation metadata◈ Members↗
FA-78851

Pixel bake swaps the transpose and transverse tags · case 01

Selfies saved with tag 5 are baked rotated 180 degrees from the intended upright view.

Image orientation metadata● Open access↗
FA-78852

Pixel bake swaps the transpose and transverse tags · case 02

Selfies saved with tag 5 are baked rotated 180 degrees from the intended upright view.

Image orientation metadata◈ Members↗
FA-78853

Pixel bake swaps the transpose and transverse tags · case 03

Selfies saved with tag 5 are baked rotated 180 degrees from the intended upright view.

Image orientation metadata◈ Members↗
FA-78854

Pixel bake swaps the transpose and transverse tags · case 04

Selfies saved with tag 5 are baked rotated 180 degrees from the intended upright view.

Image orientation metadata◈ Members↗
FA-78855

Pixel bake swaps the transpose and transverse tags · case 05

Selfies saved with tag 5 are baked rotated 180 degrees from the intended upright view.

Image orientation metadata◈ Members↗
FA-78856

Pixel bake applies a half turn for transverse tags · case 01

Tag-7 images keep swapped dimensions but their content is a 180 degree turn instead of an anti-diagonal flip.

Image orientation metadata● Open access↗
FA-78857

Pixel bake applies a half turn for transverse tags · case 02

Tag-7 images keep swapped dimensions but their content is a 180 degree turn instead of an anti-diagonal flip.

Image orientation metadata◈ Members↗
FA-78858

Pixel bake applies a half turn for transverse tags · case 03

Tag-7 images keep swapped dimensions but their content is a 180 degree turn instead of an anti-diagonal flip.

Image orientation metadata◈ Members↗
FA-78859

Pixel bake applies a half turn for transverse tags · case 04

Tag-7 images keep swapped dimensions but their content is a 180 degree turn instead of an anti-diagonal flip.

Image orientation metadata◈ Members↗
FA-78860

Pixel bake applies a half turn for transverse tags · case 05

Tag-7 images keep swapped dimensions but their content is a 180 degree turn instead of an anti-diagonal flip.

Image orientation metadata◈ Members↗
FA-78861

Pixel bake mirrors tag 2 across the wrong axis · case 01

Horizontally mirrored scans come out vertically flipped.

Image orientation metadata● Open access↗
FA-78862

Pixel bake mirrors tag 2 across the wrong axis · case 02

Horizontally mirrored scans come out vertically flipped.

Image orientation metadata◈ Members↗
FA-78863

Pixel bake mirrors tag 2 across the wrong axis · case 03

Horizontally mirrored scans come out vertically flipped.

Image orientation metadata◈ Members↗
FA-78864

Pixel bake mirrors tag 2 across the wrong axis · case 04

Horizontally mirrored scans come out vertically flipped.

Image orientation metadata◈ Members↗
FA-78865

Pixel bake mirrors tag 2 across the wrong axis · case 05

Horizontally mirrored scans come out vertically flipped.

Image orientation metadata◈ Members↗
FA-78866

Pixel bake keeps stored dimensions for transpose tags · case 01

Tag 5 and 7 images are cropped or indexed out of shape because output width and height are not exchanged.

Image orientation metadata● Open access↗
FA-78867

Pixel bake keeps stored dimensions for transpose tags · case 02

Tag 5 and 7 images are cropped or indexed out of shape because output width and height are not exchanged.

Image orientation metadata◈ Members↗
FA-78868

Pixel bake keeps stored dimensions for transpose tags · case 03

Tag 5 and 7 images are cropped or indexed out of shape because output width and height are not exchanged.

Image orientation metadata◈ Members↗
FA-78869

Pixel bake keeps stored dimensions for transpose tags · case 04

Tag 5 and 7 images are cropped or indexed out of shape because output width and height are not exchanged.

Image orientation metadata◈ Members↗
FA-78870

Pixel bake keeps stored dimensions for transpose tags · case 05

Tag 5 and 7 images are cropped or indexed out of shape because output width and height are not exchanged.

Image orientation metadata◈ Members↗
FA-78871

Pixel bake discards valid tag 8 as invalid · case 01

Photos rotated 90 degrees counter-clockwise are baked unrotated.

Image orientation metadata● Open access↗
FA-78872

Pixel bake discards valid tag 8 as invalid · case 02

Photos rotated 90 degrees counter-clockwise are baked unrotated.

Image orientation metadata◈ Members↗
FA-78873

Pixel bake discards valid tag 8 as invalid · case 03

Photos rotated 90 degrees counter-clockwise are baked unrotated.

Image orientation metadata◈ Members↗
FA-78874

Pixel bake discards valid tag 8 as invalid · case 04

Photos rotated 90 degrees counter-clockwise are baked unrotated.

Image orientation metadata◈ Members↗
FA-78875

Pixel bake discards valid tag 8 as invalid · case 05

Photos rotated 90 degrees counter-clockwise are baked unrotated.

Image orientation metadata◈ Members↗
FA-78876

Face boxes on clockwise-rotated photos land on the mirrored side · case 01

Detected faces on portrait phone shots are highlighted on the opposite side of the frame.

Image orientation metadata● Open access↗
FA-78877

Face boxes on clockwise-rotated photos land on the mirrored side · case 02

Detected faces on portrait phone shots are highlighted on the opposite side of the frame.

Image orientation metadata◈ Members↗
FA-78878

Face boxes on clockwise-rotated photos land on the mirrored side · case 03

Detected faces on portrait phone shots are highlighted on the opposite side of the frame.

Image orientation metadata◈ Members↗
FA-78879

Face boxes on clockwise-rotated photos land on the mirrored side · case 04

Detected faces on portrait phone shots are highlighted on the opposite side of the frame.

Image orientation metadata◈ Members↗
FA-78880

Face boxes on clockwise-rotated photos land on the mirrored side · case 05

Detected faces on portrait phone shots are highlighted on the opposite side of the frame.

Image orientation metadata◈ Members↗
FA-78881

Mirrored region boxes shift one pixel toward the origin · case 01

Crop rectangles on mirrored images are off by one column and can start at -1.

Image orientation metadata● Open access↗
FA-78882

Mirrored region boxes shift one pixel toward the origin · case 02

Crop rectangles on mirrored images are off by one column and can start at -1.

Image orientation metadata◈ Members↗
FA-78883

Mirrored region boxes shift one pixel toward the origin · case 03

Crop rectangles on mirrored images are off by one column and can start at -1.

Image orientation metadata◈ Members↗
FA-78884

Mirrored region boxes shift one pixel toward the origin · case 04

Crop rectangles on mirrored images are off by one column and can start at -1.

Image orientation metadata◈ Members↗
FA-78885

Mirrored region boxes shift one pixel toward the origin · case 05

Crop rectangles on mirrored images are off by one column and can start at -1.

Image orientation metadata◈ Members↗
FA-78886

Region mapping transposes before applying stored-space flips · case 01

Boxes on rotated photos are mirrored or pushed outside the displayed frame.

Image orientation metadata● Open access↗
FA-78887

Region mapping transposes before applying stored-space flips · case 02

Boxes on rotated photos are mirrored or pushed outside the displayed frame.

Image orientation metadata◈ Members↗
FA-78888

Region mapping transposes before applying stored-space flips · case 03

Boxes on rotated photos are mirrored or pushed outside the displayed frame.

Image orientation metadata◈ Members↗
FA-78889

Region mapping transposes before applying stored-space flips · case 04

Boxes on rotated photos are mirrored or pushed outside the displayed frame.

Image orientation metadata◈ Members↗
FA-78890

Region mapping transposes before applying stored-space flips · case 05

Boxes on rotated photos are mirrored or pushed outside the displayed frame.

Image orientation metadata◈ Members↗
FA-78891

Region clipping grows boxes that start outside the image · case 01

A face box partly above or left of the frame becomes larger after clipping.

Image orientation metadata● Open access↗
FA-78892

Region clipping grows boxes that start outside the image · case 02

A face box partly above or left of the frame becomes larger after clipping.

Image orientation metadata◈ Members↗
FA-78893

Region clipping grows boxes that start outside the image · case 03

A face box partly above or left of the frame becomes larger after clipping.

Image orientation metadata◈ Members↗
FA-78894

Region clipping grows boxes that start outside the image · case 04

A face box partly above or left of the frame becomes larger after clipping.

Image orientation metadata◈ Members↗
FA-78895

Region clipping grows boxes that start outside the image · case 05

A face box partly above or left of the frame becomes larger after clipping.

Image orientation metadata◈ Members↗
FA-78896

Zero-area regions survive orientation mapping · case 01

Boxes entirely outside the image or of zero width are returned as degenerate rectangles.

Image orientation metadata● Open access↗
FA-78897

Zero-area regions survive orientation mapping · case 02

Boxes entirely outside the image or of zero width are returned as degenerate rectangles.

Image orientation metadata◈ Members↗
FA-78898

Zero-area regions survive orientation mapping · case 03

Boxes entirely outside the image or of zero width are returned as degenerate rectangles.

Image orientation metadata◈ Members↗
FA-78899

Zero-area regions survive orientation mapping · case 04

Boxes entirely outside the image or of zero width are returned as degenerate rectangles.

Image orientation metadata◈ Members↗
FA-78900

Zero-area regions survive orientation mapping · case 05

Boxes entirely outside the image or of zero width are returned as degenerate rectangles.

Image orientation metadata◈ 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 ↗