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
Dial string from E.164: domestic calls are dialed without the trunk · case 01
A domestic AA number is dialed without its leading 0.
Dial string from E.164: domestic calls are dialed without the trunk · case 02
A domestic AA number is dialed without its leading 0.
Dial string from E.164: domestic calls are dialed without the trunk · case 03
A domestic AA number is dialed without its leading 0.
Dial string from E.164: domestic calls are dialed without the trunk · case 04
A domestic AA number is dialed without its leading 0.
Dial string from E.164: domestic calls are dialed without the trunk · case 05
A domestic AA number is dialed without its leading 0.
Dial string from E.164: prefix overlap is mistaken for a domestic call · case 01
A DD caller dialing a BB number (+83...) gets a domestic dial string.
Dial string from E.164: prefix overlap is mistaken for a domestic call · case 02
A DD caller dialing a BB number (+83...) gets a domestic dial string.
Dial string from E.164: prefix overlap is mistaken for a domestic call · case 03
A DD caller dialing a BB number (+83...) gets a domestic dial string.
Dial string from E.164: prefix overlap is mistaken for a domestic call · case 04
A DD caller dialing a BB number (+83...) gets a domestic dial string.
Dial string from E.164: prefix overlap is mistaken for a domestic call · case 05
A DD caller dialing a BB number (+83...) gets a domestic dial string.
Dial string from E.164: international calls keep the plus sign · case 01
Foreign numbers are dialed as "+83..." from desk phones that need an exit prefix.
Dial string from E.164: international calls keep the plus sign · case 02
Foreign numbers are dialed as "+83..." from desk phones that need an exit prefix.
Dial string from E.164: international calls keep the plus sign · case 03
Foreign numbers are dialed as "+83..." from desk phones that need an exit prefix.
Dial string from E.164: international calls keep the plus sign · case 04
Foreign numbers are dialed as "+83..." from desk phones that need an exit prefix.
Dial string from E.164: international calls keep the plus sign · case 05
Foreign numbers are dialed as "+83..." from desk phones that need an exit prefix.
Dial string from E.164: spaced numbers are accepted as canonical · case 01
"+42 555..." produces a dial string that contains a space.
Dial string from E.164: spaced numbers are accepted as canonical · case 02
"+42 555..." produces a dial string that contains a space.
Dial string from E.164: spaced numbers are accepted as canonical · case 03
"+42 555..." produces a dial string that contains a space.
Dial string from E.164: spaced numbers are accepted as canonical · case 04
"+42 555..." produces a dial string that contains a space.
Dial string from E.164: spaced numbers are accepted as canonical · case 05
"+42 555..." produces a dial string that contains a space.
Dial string from E.164: numbers without the plus lose their first digit · case 01
"4255501..." is read as code 2... and the dial string is wrong.
Dial string from E.164: numbers without the plus lose their first digit · case 02
"4255501..." is read as code 2... and the dial string is wrong.
Dial string from E.164: numbers without the plus lose their first digit · case 03
"4255501..." is read as code 2... and the dial string is wrong.
Dial string from E.164: numbers without the plus lose their first digit · case 04
"4255501..." is read as code 2... and the dial string is wrong.
Dial string from E.164: numbers without the plus lose their first digit · case 05
"4255501..." is read as code 2... and the dial string is wrong.
National number type validator: toll-free numbers are classified as fixed lines · case 01
"600..." numbers are reported as fixed.
National number type validator: toll-free numbers are classified as fixed lines · case 02
"600..." numbers are reported as fixed.
National number type validator: toll-free numbers are classified as fixed lines · case 03
"600..." numbers are reported as fixed.
National number type validator: toll-free numbers are classified as fixed lines · case 04
"600..." numbers are reported as fixed.
National number type validator: toll-free numbers are classified as fixed lines · case 05
"600..." numbers are reported as fixed.
National number type validator: mobile numbers of any length are accepted · case 01
An eight-digit number starting 7 is reported as mobile.
National number type validator: mobile numbers of any length are accepted · case 02
An eight-digit number starting 7 is reported as mobile.
National number type validator: mobile numbers of any length are accepted · case 03
An eight-digit number starting 7 is reported as mobile.
National number type validator: mobile numbers of any length are accepted · case 04
An eight-digit number starting 7 is reported as mobile.
National number type validator: mobile numbers of any length are accepted · case 05
An eight-digit number starting 7 is reported as mobile.
National number type validator: fixed lines may start with 0 or 1 · case 01
"1..." is accepted as a fixed line.
National number type validator: fixed lines may start with 0 or 1 · case 02
"1..." is accepted as a fixed line.
National number type validator: fixed lines may start with 0 or 1 · case 03
"1..." is accepted as a fixed line.
National number type validator: fixed lines may start with 0 or 1 · case 04
"1..." is accepted as a fixed line.
National number type validator: fixed lines may start with 0 or 1 · case 05
"1..." is accepted as a fixed line.
National number type validator: overlong BB numbers pass · case 01
An eleven-digit BB number starting 9 is reported as mobile.
National number type validator: overlong BB numbers pass · case 02
An eleven-digit BB number starting 9 is reported as mobile.
National number type validator: overlong BB numbers pass · case 03
An eleven-digit BB number starting 9 is reported as mobile.
National number type validator: overlong BB numbers pass · case 04
An eleven-digit BB number starting 9 is reported as mobile.
National number type validator: overlong BB numbers pass · case 05
An eleven-digit BB number starting 9 is reported as mobile.
National number type validator: CC numbers may start with 1 · case 01
"1..." is accepted in CC.
National number type validator: CC numbers may start with 1 · case 02
"1..." is accepted in CC.
National number type validator: CC numbers may start with 1 · case 03
"1..." is accepted in CC.
National number type validator: CC numbers may start with 1 · case 04
"1..." is accepted in CC.
National number type validator: CC numbers may start with 1 · case 05
"1..." is accepted in CC.
National number type validator: eight-digit fixed lines are rejected · case 01
A valid eight-digit AA fixed line is invalid.
National number type validator: eight-digit fixed lines are rejected · case 02
A valid eight-digit AA fixed line is invalid.
National number type validator: eight-digit fixed lines are rejected · case 03
A valid eight-digit AA fixed line is invalid.
National number type validator: eight-digit fixed lines are rejected · case 04
A valid eight-digit AA fixed line is invalid.
National number type validator: eight-digit fixed lines are rejected · case 05
A valid eight-digit AA fixed line is invalid.
National number type validator: numbers with embedded spaces are classified · case 01
"5550 0111" is reported as a fixed line.
National number type validator: numbers with embedded spaces are classified · case 02
"5550 0111" is reported as a fixed line.
National number type validator: numbers with embedded spaces are classified · case 03
"5550 0111" is reported as a fixed line.
National number type validator: numbers with embedded spaces are classified · case 04
"5550 0111" is reported as a fixed line.
National number type validator: numbers with embedded spaces are classified · case 05
"5550 0111" is reported as a fixed line.
As-you-type ten-digit formatter: parentheses appear after three digits · case 01
Typing three digits shows "(555)" before the user continues.
As-you-type ten-digit formatter: parentheses appear after three digits · case 02
Typing three digits shows "(555)" before the user continues.
As-you-type ten-digit formatter: parentheses appear after three digits · case 03
Typing three digits shows "(555)" before the user continues.
As-you-type ten-digit formatter: parentheses appear after three digits · case 04
Typing three digits shows "(555)" before the user continues.
As-you-type ten-digit formatter: parentheses appear after three digits · case 05
Typing three digits shows "(555)" before the user continues.
As-you-type ten-digit formatter: partial exchanges fall into the full mask · case 01
Four to six digits render with a dangling hyphen, e.g. "(555) 01-".
As-you-type ten-digit formatter: partial exchanges fall into the full mask · case 02
Four to six digits render with a dangling hyphen, e.g. "(555) 01-".
As-you-type ten-digit formatter: partial exchanges fall into the full mask · case 03
Four to six digits render with a dangling hyphen, e.g. "(555) 01-".
As-you-type ten-digit formatter: partial exchanges fall into the full mask · case 04
Four to six digits render with a dangling hyphen, e.g. "(555) 01-".
As-you-type ten-digit formatter: partial exchanges fall into the full mask · case 05
Four to six digits render with a dangling hyphen, e.g. "(555) 01-".
As-you-type ten-digit formatter: overlong input is forced into the mask · case 01
Eleven national digits render as "(555) 012-34567".
As-you-type ten-digit formatter: overlong input is forced into the mask · case 02
Eleven national digits render as "(555) 012-34567".
As-you-type ten-digit formatter: overlong input is forced into the mask · case 03
Eleven national digits render as "(555) 012-34567".
As-you-type ten-digit formatter: overlong input is forced into the mask · case 04
Eleven national digits render as "(555) 012-34567".
As-you-type ten-digit formatter: overlong input is forced into the mask · case 05
Eleven national digits render as "(555) 012-34567".
As-you-type ten-digit formatter: a typed national prefix becomes part of the area code · case 01
"1555" renders as "(155) 5".
As-you-type ten-digit formatter: a typed national prefix becomes part of the area code · case 02
"1555" renders as "(155) 5".
As-you-type ten-digit formatter: a typed national prefix becomes part of the area code · case 03
"1555" renders as "(155) 5".
As-you-type ten-digit formatter: a typed national prefix becomes part of the area code · case 04
"1555" renders as "(155) 5".
As-you-type ten-digit formatter: a typed national prefix becomes part of the area code · case 05
"1555" renders as "(155) 5".
As-you-type ten-digit formatter: a lone prefix keeps its trailing space · case 01
Typing "1" shows "1 " and the caret jumps.
As-you-type ten-digit formatter: a lone prefix keeps its trailing space · case 02
Typing "1" shows "1 " and the caret jumps.
As-you-type ten-digit formatter: a lone prefix keeps its trailing space · case 03
Typing "1" shows "1 " and the caret jumps.
As-you-type ten-digit formatter: a lone prefix keeps its trailing space · case 04
Typing "1" shows "1 " and the caret jumps.
As-you-type ten-digit formatter: a lone prefix keeps its trailing space · case 05
Typing "1" shows "1 " and the caret jumps.
tel URI builder: local numbers are emitted without a context · case 01
"5550115" becomes "tel:5550115" with no phone-context.
tel URI builder: local numbers are emitted without a context · case 02
"5550115" becomes "tel:5550115" with no phone-context.
tel URI builder: local numbers are emitted without a context · case 03
"5550115" becomes "tel:5550115" with no phone-context.
tel URI builder: local numbers are emitted without a context · case 04
"5550115" becomes "tel:5550115" with no phone-context.
tel URI builder: local numbers are emitted without a context · case 05
"5550115" becomes "tel:5550115" with no phone-context.
tel URI builder: phone-context is written before the extension · case 01
Local numbers render ";phone-context=+42;ext=12".
tel URI builder: phone-context is written before the extension · case 02
Local numbers render ";phone-context=+42;ext=12".
tel URI builder: phone-context is written before the extension · case 03
Local numbers render ";phone-context=+42;ext=12".
tel URI builder: phone-context is written before the extension · case 04
Local numbers render ";phone-context=+42;ext=12".
tel URI builder: phone-context is written before the extension · case 05
Local numbers render ";phone-context=+42;ext=12".
tel URI builder: runs of separators produce empty groups · case 01
"555 - 0115" becomes "555---0115".
tel URI builder: runs of separators produce empty groups · case 02
"555 - 0115" becomes "555---0115".
tel URI builder: runs of separators produce empty groups · case 03
"555 - 0115" becomes "555---0115".
tel URI builder: runs of separators produce empty groups · case 04
"555 - 0115" becomes "555---0115".
tel URI builder: runs of separators produce empty groups · case 05
"555 - 0115" becomes "555---0115".
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 ↗