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

Minimum cue duration extension: never shorten · case 01

Short cues crowded by a close neighbour get even shorter or inverted.

Subtitle cue timing● Open access↗
FA-78002

Minimum cue duration extension: never shorten · case 02

Short cues crowded by a close neighbour get even shorter or inverted.

Subtitle cue timing◈ Members↗
FA-78003

Minimum cue duration extension: never shorten · case 03

Short cues crowded by a close neighbour get even shorter or inverted.

Subtitle cue timing◈ Members↗
FA-78004

Minimum cue duration extension: never shorten · case 04

Short cues crowded by a close neighbour get even shorter or inverted.

Subtitle cue timing◈ Members↗
FA-78005

Minimum cue duration extension: never shorten · case 05

Short cues crowded by a close neighbour get even shorter or inverted.

Subtitle cue timing◈ Members↗
FA-78006

Minimum cue duration extension: neighbour ordering · case 01

In files with out-of-order cues the extension is limited by the wrong neighbour.

Subtitle cue timing● Open access↗
FA-78007

Minimum cue duration extension: neighbour ordering · case 02

In files with out-of-order cues the extension is limited by the wrong neighbour.

Subtitle cue timing◈ Members↗
FA-78008

Minimum cue duration extension: neighbour ordering · case 03

In files with out-of-order cues the extension is limited by the wrong neighbour.

Subtitle cue timing◈ Members↗
FA-78009

Minimum cue duration extension: neighbour ordering · case 04

In files with out-of-order cues the extension is limited by the wrong neighbour.

Subtitle cue timing◈ Members↗
FA-78010

Minimum cue duration extension: neighbour ordering · case 05

In files with out-of-order cues the extension is limited by the wrong neighbour.

Subtitle cue timing◈ Members↗
FA-78011

Minimum cue duration extension: shortness test · case 01

Cues late in the programme are never extended no matter how short they are.

Subtitle cue timing● Open access↗
FA-78012

Minimum cue duration extension: shortness test · case 02

Cues late in the programme are never extended no matter how short they are.

Subtitle cue timing◈ Members↗
FA-78013

Minimum cue duration extension: shortness test · case 03

Cues late in the programme are never extended no matter how short they are.

Subtitle cue timing◈ Members↗
FA-78014

Minimum cue duration extension: shortness test · case 04

Cues late in the programme are never extended no matter how short they are.

Subtitle cue timing◈ Members↗
FA-78015

Minimum cue duration extension: shortness test · case 05

Cues late in the programme are never extended no matter how short they are.

Subtitle cue timing◈ Members↗
FA-78016

Subtitle reading-speed check: tag stripping · case 01

Cues with two formatting tags pass the speed check because their middle text vanishes.

Subtitle cue timing● Open access↗
FA-78017

Subtitle reading-speed check: tag stripping · case 02

Cues with two formatting tags pass the speed check because their middle text vanishes.

Subtitle cue timing◈ Members↗
FA-78018

Subtitle reading-speed check: tag stripping · case 03

Cues with two formatting tags pass the speed check because their middle text vanishes.

Subtitle cue timing◈ Members↗
FA-78019

Subtitle reading-speed check: tag stripping · case 04

Cues with two formatting tags pass the speed check because their middle text vanishes.

Subtitle cue timing◈ Members↗
FA-78020

Subtitle reading-speed check: tag stripping · case 05

Cues with two formatting tags pass the speed check because their middle text vanishes.

Subtitle cue timing◈ Members↗
FA-78021

Subtitle reading-speed check: line break exclusion · case 01

Two-line cues are flagged as too fast although the text is short.

Subtitle cue timing● Open access↗
FA-78022

Subtitle reading-speed check: line break exclusion · case 02

Two-line cues are flagged as too fast although the text is short.

Subtitle cue timing◈ Members↗
FA-78023

Subtitle reading-speed check: line break exclusion · case 03

Two-line cues are flagged as too fast although the text is short.

Subtitle cue timing◈ Members↗
FA-78024

Subtitle reading-speed check: line break exclusion · case 04

Two-line cues are flagged as too fast although the text is short.

Subtitle cue timing◈ Members↗
FA-78025

Subtitle reading-speed check: line break exclusion · case 05

Two-line cues are flagged as too fast although the text is short.

Subtitle cue timing◈ Members↗
FA-78026

Subtitle reading-speed check: crlf normalization · case 01

Cues from Windows-authored files read one character faster per line break.

Subtitle cue timing● Open access↗
FA-78027

Subtitle reading-speed check: crlf normalization · case 02

Cues from Windows-authored files read one character faster per line break.

Subtitle cue timing◈ Members↗
FA-78028

Subtitle reading-speed check: crlf normalization · case 03

Cues from Windows-authored files read one character faster per line break.

Subtitle cue timing◈ Members↗
FA-78029

Subtitle reading-speed check: crlf normalization · case 04

Cues from Windows-authored files read one character faster per line break.

Subtitle cue timing◈ Members↗
FA-78030

Subtitle reading-speed check: crlf normalization · case 05

Cues from Windows-authored files read one character faster per line break.

Subtitle cue timing◈ Members↗
FA-78031

Subtitle reading-speed check: speed threshold · case 01

Cues exactly at the permitted reading speed are flagged.

Subtitle cue timing● Open access↗
FA-78032

Subtitle reading-speed check: speed threshold · case 02

Cues exactly at the permitted reading speed are flagged.

Subtitle cue timing◈ Members↗
FA-78033

Subtitle reading-speed check: speed threshold · case 03

Cues exactly at the permitted reading speed are flagged.

Subtitle cue timing◈ Members↗
FA-78034

Subtitle reading-speed check: speed threshold · case 04

Cues exactly at the permitted reading speed are flagged.

Subtitle cue timing◈ Members↗
FA-78035

Subtitle reading-speed check: speed threshold · case 05

Cues exactly at the permitted reading speed are flagged.

Subtitle cue timing◈ Members↗
FA-78036

Subtitle reading-speed check: zero duration rule · case 01

Zero-length cues with a few characters are reported as readable.

Subtitle cue timing● Open access↗
FA-78037

Subtitle reading-speed check: zero duration rule · case 02

Zero-length cues with a few characters are reported as readable.

Subtitle cue timing◈ Members↗
FA-78038

Subtitle reading-speed check: zero duration rule · case 03

Zero-length cues with a few characters are reported as readable.

Subtitle cue timing◈ Members↗
FA-78039

Subtitle reading-speed check: zero duration rule · case 04

Zero-length cues with a few characters are reported as readable.

Subtitle cue timing◈ Members↗
FA-78040

Subtitle reading-speed check: zero duration rule · case 05

Zero-length cues with a few characters are reported as readable.

Subtitle cue timing◈ Members↗
FA-78041

Overlapping cue row stacking: row free test · case 01

Back-to-back cues climb to a second row instead of reusing the bottom row.

Subtitle cue timing● Open access↗
FA-78042

Overlapping cue row stacking: row free test · case 02

Back-to-back cues climb to a second row instead of reusing the bottom row.

Subtitle cue timing◈ Members↗
FA-78043

Overlapping cue row stacking: row free test · case 03

Back-to-back cues climb to a second row instead of reusing the bottom row.

Subtitle cue timing◈ Members↗
FA-78044

Overlapping cue row stacking: row free test · case 04

Back-to-back cues climb to a second row instead of reusing the bottom row.

Subtitle cue timing◈ Members↗
FA-78045

Overlapping cue row stacking: row free test · case 05

Back-to-back cues climb to a second row instead of reusing the bottom row.

Subtitle cue timing◈ Members↗
FA-78046

Overlapping cue row stacking: processing order · case 01

Long cues that start first are pushed up by shorter later cues.

Subtitle cue timing● Open access↗
FA-78047

Overlapping cue row stacking: processing order · case 02

Long cues that start first are pushed up by shorter later cues.

Subtitle cue timing◈ Members↗
FA-78048

Overlapping cue row stacking: processing order · case 03

Long cues that start first are pushed up by shorter later cues.

Subtitle cue timing◈ Members↗
FA-78049

Overlapping cue row stacking: processing order · case 04

Long cues that start first are pushed up by shorter later cues.

Subtitle cue timing◈ Members↗
FA-78050

Overlapping cue row stacking: processing order · case 05

Long cues that start first are pushed up by shorter later cues.

Subtitle cue timing◈ Members↗
FA-78051

Overlapping cue row stacking: lowest row choice · case 01

Free bottom rows stay empty while captions sit high on screen.

Subtitle cue timing● Open access↗
FA-78052

Overlapping cue row stacking: lowest row choice · case 02

Free bottom rows stay empty while captions sit high on screen.

Subtitle cue timing◈ Members↗
FA-78053

Overlapping cue row stacking: lowest row choice · case 03

Free bottom rows stay empty while captions sit high on screen.

Subtitle cue timing◈ Members↗
FA-78054

Overlapping cue row stacking: lowest row choice · case 04

Free bottom rows stay empty while captions sit high on screen.

Subtitle cue timing◈ Members↗
FA-78055

Overlapping cue row stacking: lowest row choice · case 05

Free bottom rows stay empty while captions sit high on screen.

Subtitle cue timing◈ Members↗
FA-78056

Overlapping cue row stacking: row occupancy update · case 01

Reused rows receive overlapping cues.

Subtitle cue timing● Open access↗
FA-78057

Overlapping cue row stacking: row occupancy update · case 02

Reused rows receive overlapping cues.

Subtitle cue timing◈ Members↗
FA-78058

Overlapping cue row stacking: row occupancy update · case 03

Reused rows receive overlapping cues.

Subtitle cue timing◈ Members↗
FA-78059

Overlapping cue row stacking: row occupancy update · case 04

Reused rows receive overlapping cues.

Subtitle cue timing◈ Members↗
FA-78060

Overlapping cue row stacking: row occupancy update · case 05

Reused rows receive overlapping cues.

Subtitle cue timing◈ Members↗
FA-78061

Overlapping cue row stacking: new row index · case 01

Newly opened rows get the index of the last cue slot rather than the new row.

Subtitle cue timing● Open access↗
FA-78062

Overlapping cue row stacking: new row index · case 02

Newly opened rows get the index of the last cue slot rather than the new row.

Subtitle cue timing◈ Members↗
FA-78063

Overlapping cue row stacking: new row index · case 03

Newly opened rows get the index of the last cue slot rather than the new row.

Subtitle cue timing◈ Members↗
FA-78064

Overlapping cue row stacking: new row index · case 04

Newly opened rows get the index of the last cue slot rather than the new row.

Subtitle cue timing◈ Members↗
FA-78065

Overlapping cue row stacking: new row index · case 05

Newly opened rows get the index of the last cue slot rather than the new row.

Subtitle cue timing◈ Members↗
FA-78066

Two-point subtitle synchronisation: slope orientation · case 01

Subtitles drift in the wrong direction the further they are from the first anchor.

Subtitle cue timing● Open access↗
FA-78067

Two-point subtitle synchronisation: slope orientation · case 02

Subtitles drift in the wrong direction the further they are from the first anchor.

Subtitle cue timing◈ Members↗
FA-78068

Two-point subtitle synchronisation: slope orientation · case 03

Subtitles drift in the wrong direction the further they are from the first anchor.

Subtitle cue timing◈ Members↗
FA-78069

Two-point subtitle synchronisation: slope orientation · case 04

Subtitles drift in the wrong direction the further they are from the first anchor.

Subtitle cue timing◈ Members↗
FA-78070

Two-point subtitle synchronisation: slope orientation · case 05

Subtitles drift in the wrong direction the further they are from the first anchor.

Subtitle cue timing◈ Members↗
FA-78071

Two-point subtitle synchronisation: intercept anchor · case 01

Mapped cues are offset by a constant error unless the first anchor sits at time zero.

Subtitle cue timing● Open access↗
FA-78072

Two-point subtitle synchronisation: intercept anchor · case 02

Mapped cues are offset by a constant error unless the first anchor sits at time zero.

Subtitle cue timing◈ Members↗
FA-78073

Two-point subtitle synchronisation: intercept anchor · case 03

Mapped cues are offset by a constant error unless the first anchor sits at time zero.

Subtitle cue timing◈ Members↗
FA-78074

Two-point subtitle synchronisation: intercept anchor · case 04

Mapped cues are offset by a constant error unless the first anchor sits at time zero.

Subtitle cue timing◈ Members↗
FA-78075

Two-point subtitle synchronisation: intercept anchor · case 05

Mapped cues are offset by a constant error unless the first anchor sits at time zero.

Subtitle cue timing◈ Members↗
FA-78076

Two-point subtitle synchronisation: mapped rounding · case 01

Mapped times with half-millisecond or larger fractions are one millisecond early.

Subtitle cue timing● Open access↗
FA-78077

Two-point subtitle synchronisation: mapped rounding · case 02

Mapped times with half-millisecond or larger fractions are one millisecond early.

Subtitle cue timing◈ Members↗
FA-78078

Two-point subtitle synchronisation: mapped rounding · case 03

Mapped times with half-millisecond or larger fractions are one millisecond early.

Subtitle cue timing◈ Members↗
FA-78079

Two-point subtitle synchronisation: mapped rounding · case 04

Mapped times with half-millisecond or larger fractions are one millisecond early.

Subtitle cue timing◈ Members↗
FA-78080

Two-point subtitle synchronisation: mapped rounding · case 05

Mapped times with half-millisecond or larger fractions are one millisecond early.

Subtitle cue timing◈ Members↗
FA-78081

Two-point subtitle synchronisation: zero clamp · case 01

Cues mapped before the start of the video carry negative timestamps.

Subtitle cue timing● Open access↗
FA-78082

Two-point subtitle synchronisation: zero clamp · case 02

Cues mapped before the start of the video carry negative timestamps.

Subtitle cue timing◈ Members↗
FA-78083

Two-point subtitle synchronisation: zero clamp · case 03

Cues mapped before the start of the video carry negative timestamps.

Subtitle cue timing◈ Members↗
FA-78084

Two-point subtitle synchronisation: zero clamp · case 04

Cues mapped before the start of the video carry negative timestamps.

Subtitle cue timing◈ Members↗
FA-78085

Two-point subtitle synchronisation: zero clamp · case 05

Cues mapped before the start of the video carry negative timestamps.

Subtitle cue timing◈ Members↗
FA-78086

Two-point subtitle synchronisation: empty cue drop · case 01

Cues squeezed to zero length by the mapping remain in the output.

Subtitle cue timing● Open access↗
FA-78087

Two-point subtitle synchronisation: empty cue drop · case 02

Cues squeezed to zero length by the mapping remain in the output.

Subtitle cue timing◈ Members↗
FA-78088

Two-point subtitle synchronisation: empty cue drop · case 03

Cues squeezed to zero length by the mapping remain in the output.

Subtitle cue timing◈ Members↗
FA-78089

Two-point subtitle synchronisation: empty cue drop · case 04

Cues squeezed to zero length by the mapping remain in the output.

Subtitle cue timing◈ Members↗
FA-78090

Two-point subtitle synchronisation: empty cue drop · case 05

Cues squeezed to zero length by the mapping remain in the output.

Subtitle cue timing◈ Members↗
FA-78091

Adjacent duplicate cue merging: text normalization · case 01

Repeated lines that differ only by a trailing space are shown as separate flickering cues.

Subtitle cue timing● Open access↗
FA-78092

Adjacent duplicate cue merging: text normalization · case 02

Repeated lines that differ only by a trailing space are shown as separate flickering cues.

Subtitle cue timing◈ Members↗
FA-78093

Adjacent duplicate cue merging: text normalization · case 03

Repeated lines that differ only by a trailing space are shown as separate flickering cues.

Subtitle cue timing◈ Members↗
FA-78094

Adjacent duplicate cue merging: text normalization · case 04

Repeated lines that differ only by a trailing space are shown as separate flickering cues.

Subtitle cue timing◈ Members↗
FA-78095

Adjacent duplicate cue merging: text normalization · case 05

Repeated lines that differ only by a trailing space are shown as separate flickering cues.

Subtitle cue timing◈ Members↗
FA-78096

Adjacent duplicate cue merging: merge gap bound · case 01

Duplicates separated by exactly the allowed gap are not merged.

Subtitle cue timing● Open access↗
FA-78097

Adjacent duplicate cue merging: merge gap bound · case 02

Duplicates separated by exactly the allowed gap are not merged.

Subtitle cue timing◈ Members↗
FA-78098

Adjacent duplicate cue merging: merge gap bound · case 03

Duplicates separated by exactly the allowed gap are not merged.

Subtitle cue timing◈ Members↗
FA-78099

Adjacent duplicate cue merging: merge gap bound · case 04

Duplicates separated by exactly the allowed gap are not merged.

Subtitle cue timing◈ Members↗
FA-78100

Adjacent duplicate cue merging: merge gap bound · case 05

Duplicates separated by exactly the allowed gap are not merged.

Subtitle cue timing◈ 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 ↗