{"abstract":"Timestamps past the first hour print minute fields such as 61 or 125.","category":"Subtitle cue timing","checks":9,"contract":"Format integer milliseconds as a cue timestamp. Negative values clamp to 0. style \"srt\" gives HH:MM:SS,mmm (hours at least two digits, never wrapped); style \"vtt\" gives MM:SS.mmm when the hour field is zero and HH:MM:SS.mmm otherwise.","contract_signature":"ms, style","evaluation_group":"w2-subtitle-cue-timing-timestamp-format","failed_approach":"Subtracting h*3600 uses seconds instead of milliseconds, so the minute field is still inflated after an hour.","family":"w2-subtitle-cue-timing-timestamp-format-minute-field-extraction","id":"FA-77871","implementations":{"attempt":{"sha256":"7dc7f33e0f2e31a6ee43d9da10ca8646cd2d07d0ef311bde3a9989ea8943e7aa","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(ms, style):\n    if ms<0: ms=0\n    h=ms//3600000\n    m=(ms-h*3600)//60000\n    s=ms//1000%60\n    f=ms%1000\n    if style=='srt':\n        return '%02d:%02d:%02d,%03d'%(h,m,s,f)\n    if h==0:\n        return '%02d:%02d.%03d'%(m,s,f)\n    return '%02d:%02d:%02d.%03d'%(h,m,s,f)\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: minute field extraction', [3600000, 'vtt'], '01:00:00.000'), ('regression variant: minute field extraction', [3849665, 'vtt'], '01:04:09.665'), ('partial repair probe: minute field extraction', [4082731, 'srt'], '01:08:02,731'), ('partial repair variant: minute field extraction', [3689889, 'srt'], '01:01:29,889'), ('boundary control', [0, 'srt'], '00:00:00,000'), ('boundary control', [3599999, 'vtt'], '59:59.999'), ('normal control', [0, 'vtt'], '00:00.000'), ('normal control', [61001, 'vtt'], '01:01.001'), ('normal control', [7834, 'srt'], '00:00:07,834')], [('regression: minute field extraction', [3664439, 'srt'], '01:01:04,439'), ('regression variant: minute field extraction', [360000000, 'srt'], '100:00:00,000'), ('partial repair probe: minute field extraction', [274754132, 'srt'], '76:19:14,132'), ('partial repair variant: minute field extraction', [19225823, 'srt'], '05:20:25,823'), ('boundary control', [0, 'vtt'], '00:00.000'), ('boundary control', [61001, 'vtt'], '01:01.001'), ('normal control', [-999, 'vtt'], '00:00.000'), ('normal control', [60000, 'vtt'], '01:00.000'), ('normal control', [11761, 'vtt'], '00:11.761')], [('regression: minute field extraction', [4082731, 'srt'], '01:08:02,731'), ('regression variant: minute field extraction', [76782995, 'vtt'], '21:19:42.995'), ('partial repair probe: minute field extraction', [360000000, 'vtt'], '100:00:00.000'), ('partial repair variant: minute field extraction', [3673366, 'srt'], '01:01:13,366'), ('boundary control', [-1, 'srt'], '00:00:00,000'), ('boundary control', [0, 'srt'], '00:00:00,000'), ('normal control', [-5000, 'srt'], '00:00:00,000'), ('normal control', [-5000, 'vtt'], '00:00.000'), ('normal control', [5, 'srt'], '00:00:00,005')], [('regression: minute field extraction', [274754132, 'srt'], '76:19:14,132'), ('regression variant: minute field extraction', [175213793, 'vtt'], '48:40:13.793'), ('partial repair probe: minute field extraction', [3849665, 'vtt'], '01:04:09.665'), ('partial repair variant: minute field extraction', [36000000, 'vtt'], '10:00:00.000'), ('boundary control', [3599999, 'vtt'], '59:59.999'), ('boundary control', [0, 'vtt'], '00:00.000'), ('normal control', [59999, 'vtt'], '00:59.999'), ('normal control', [3509491, 'srt'], '00:58:29,491'), ('normal control', [3441818, 'srt'], '00:57:21,818')], [('regression: minute field extraction', [360000000, 'vtt'], '100:00:00.000'), ('regression variant: minute field extraction', [3689889, 'srt'], '01:01:29,889'), ('partial repair probe: minute field extraction', [360000000, 'srt'], '100:00:00,000'), ('partial repair variant: minute field extraction', [290743422, 'vtt'], '80:45:43.422'), ('boundary control', [61001, 'vtt'], '01:01.001'), ('boundary control', [-1, 'srt'], '00:00:00,000'), ('normal control', [65993, 'srt'], '00:01:05,993'), ('normal control', [61977, 'vtt'], '01:01.977'), ('normal control', [-999, 'srt'], '00:00:00,000')]]\nfor label, args, expected in fixtures[N-1]:\n    check(label, solve(*args), expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"},"broken":{"sha256":"23d1a8b7dc5a46510c2ac952592d5fa0aebc42d8460cf30be26ddb1c48696fa4","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(ms, style):\n    if ms<0: ms=0\n    h=ms//3600000\n    m=ms//60000\n    s=ms//1000%60\n    f=ms%1000\n    if style=='srt':\n        return '%02d:%02d:%02d,%03d'%(h,m,s,f)\n    if h==0:\n        return '%02d:%02d.%03d'%(m,s,f)\n    return '%02d:%02d:%02d.%03d'%(h,m,s,f)\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: minute field extraction', [3600000, 'vtt'], '01:00:00.000'), ('regression variant: minute field extraction', [3849665, 'vtt'], '01:04:09.665'), ('partial repair probe: minute field extraction', [4082731, 'srt'], '01:08:02,731'), ('partial repair variant: minute field extraction', [3689889, 'srt'], '01:01:29,889'), ('boundary control', [0, 'srt'], '00:00:00,000'), ('boundary control', [3599999, 'vtt'], '59:59.999'), ('normal control', [0, 'vtt'], '00:00.000'), ('normal control', [61001, 'vtt'], '01:01.001'), ('normal control', [7834, 'srt'], '00:00:07,834')], [('regression: minute field extraction', [3664439, 'srt'], '01:01:04,439'), ('regression variant: minute field extraction', [360000000, 'srt'], '100:00:00,000'), ('partial repair probe: minute field extraction', [274754132, 'srt'], '76:19:14,132'), ('partial repair variant: minute field extraction', [19225823, 'srt'], '05:20:25,823'), ('boundary control', [0, 'vtt'], '00:00.000'), ('boundary control', [61001, 'vtt'], '01:01.001'), ('normal control', [-999, 'vtt'], '00:00.000'), ('normal control', [60000, 'vtt'], '01:00.000'), ('normal control', [11761, 'vtt'], '00:11.761')], [('regression: minute field extraction', [4082731, 'srt'], '01:08:02,731'), ('regression variant: minute field extraction', [76782995, 'vtt'], '21:19:42.995'), ('partial repair probe: minute field extraction', [360000000, 'vtt'], '100:00:00.000'), ('partial repair variant: minute field extraction', [3673366, 'srt'], '01:01:13,366'), ('boundary control', [-1, 'srt'], '00:00:00,000'), ('boundary control', [0, 'srt'], '00:00:00,000'), ('normal control', [-5000, 'srt'], '00:00:00,000'), ('normal control', [-5000, 'vtt'], '00:00.000'), ('normal control', [5, 'srt'], '00:00:00,005')], [('regression: minute field extraction', [274754132, 'srt'], '76:19:14,132'), ('regression variant: minute field extraction', [175213793, 'vtt'], '48:40:13.793'), ('partial repair probe: minute field extraction', [3849665, 'vtt'], '01:04:09.665'), ('partial repair variant: minute field extraction', [36000000, 'vtt'], '10:00:00.000'), ('boundary control', [3599999, 'vtt'], '59:59.999'), ('boundary control', [0, 'vtt'], '00:00.000'), ('normal control', [59999, 'vtt'], '00:59.999'), ('normal control', [3509491, 'srt'], '00:58:29,491'), ('normal control', [3441818, 'srt'], '00:57:21,818')], [('regression: minute field extraction', [360000000, 'vtt'], '100:00:00.000'), ('regression variant: minute field extraction', [3689889, 'srt'], '01:01:29,889'), ('partial repair probe: minute field extraction', [360000000, 'srt'], '100:00:00,000'), ('partial repair variant: minute field extraction', [290743422, 'vtt'], '80:45:43.422'), ('boundary control', [61001, 'vtt'], '01:01.001'), ('boundary control', [-1, 'srt'], '00:00:00,000'), ('normal control', [65993, 'srt'], '00:01:05,993'), ('normal control', [61977, 'vtt'], '01:01.977'), ('normal control', [-999, 'srt'], '00:00:00,000')]]\nfor label, args, expected in fixtures[N-1]:\n    check(label, solve(*args), expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"}},"limitations":"A deterministic bounded teaching model with a stipulated toy contract; it does not claim conformance to any subtitle standard. This reproducer isolates one failure mechanism. Results cover the supplied fixtures. Variants within a family share a test contract and should remain grouped when constructing evaluation splits. Related mechanisms with a shared evaluation_group must also remain together; these controlled models are not independent production incidents.","method":"Deterministic executable model with adversarial boundary fixtures.","provenance":{"created_by":"Failure Map","dependencies":"Python standard library","family":"w2-subtitle-cue-timing-timestamp-format-minute-field-extraction","generated_at":"2026-09-29T14:49:29.979250+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Subtitle timing defects shift, hide or overlap captions that viewers depend on for comprehension and accessibility.","root_cause":"The minute field is computed as total minutes ms//60000 without removing whole hours.","sha256":"ce7324245347a002789197b64eb0e0a9d38654b2a924908a21f062b18f90c807","title":"SRT and WebVTT timestamp formatting: minute field extraction · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verified":true,"visibility":"public","verification":{"attempt":{"elapsed_ms":41.436,"exit_code":1,"observations":[{"actual":"01:59:00.000","check":"regression: minute field extraction","expected":"01:00:00.000","passed":false},{"actual":"01:64:09.665","check":"regression variant: minute field extraction","expected":"01:04:09.665","passed":false},{"actual":"01:67:02,731","check":"partial repair probe: minute field extraction","expected":"01:08:02,731","passed":false},{"actual":"01:61:29,889","check":"partial repair variant: minute field extraction","expected":"01:01:29,889","passed":false},{"actual":"00:00:00,000","check":"boundary control","expected":"00:00:00,000","passed":true},{"actual":"59:59.999","check":"boundary control","expected":"59:59.999","passed":true},{"actual":"00:00.000","check":"normal control","expected":"00:00.000","passed":true},{"actual":"01:01.001","check":"normal control","expected":"01:01.001","passed":true},{"actual":"00:00:07,834","check":"normal control","expected":"00:00:07,834","passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: minute field extraction\", \"actual\": \"01:59:00.000\", \"expected\": \"01:00:00.000\", \"passed\": false}, {\"check\": \"regression variant: minute field extraction\", \"actual\": \"01:64:09.665\", \"expected\": \"01:04:09.665\", \"passed\": false}, {\"check\": \"partial repair probe: minute field extraction\", \"actual\": \"01:67:02,731\", \"expected\": \"01:08:02,731\", \"passed\": false}, {\"check\": \"partial repair variant: minute field extraction\", \"actual\": \"01:61:29,889\", \"expected\": \"01:01:29,889\", \"passed\": false}, {\"check\": \"boundary control\", \"actual\": \"00:00:00,000\", \"expected\": \"00:00:00,000\", \"passed\": true}, {\"check\": \"boundary control\", \"actual\": \"59:59.999\", \"expected\": \"59:59.999\", \"passed\": true}, {\"check\": \"normal control\", \"actual\": \"00:00.000\", \"expected\": \"00:00.000\", \"passed\": true}, {\"check\": \"normal control\", \"actual\": \"01:01.001\", \"expected\": \"01:01.001\", \"passed\": true}, {\"check\": \"normal control\", \"actual\": \"00:00:07,834\", \"expected\": \"00:00:07,834\", \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":41.689,"exit_code":1,"observations":[{"actual":"01:60:00.000","check":"regression: minute field extraction","expected":"01:00:00.000","passed":false},{"actual":"01:64:09.665","check":"regression variant: minute field extraction","expected":"01:04:09.665","passed":false},{"actual":"01:68:02,731","check":"partial repair probe: minute field extraction","expected":"01:08:02,731","passed":false},{"actual":"01:61:29,889","check":"partial repair variant: minute field extraction","expected":"01:01:29,889","passed":false},{"actual":"00:00:00,000","check":"boundary control","expected":"00:00:00,000","passed":true},{"actual":"59:59.999","check":"boundary control","expected":"59:59.999","passed":true},{"actual":"00:00.000","check":"normal control","expected":"00:00.000","passed":true},{"actual":"01:01.001","check":"normal control","expected":"01:01.001","passed":true},{"actual":"00:00:07,834","check":"normal control","expected":"00:00:07,834","passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: minute field extraction\", \"actual\": \"01:60:00.000\", \"expected\": \"01:00:00.000\", \"passed\": false}, {\"check\": \"regression variant: minute field extraction\", \"actual\": \"01:64:09.665\", \"expected\": \"01:04:09.665\", \"passed\": false}, {\"check\": \"partial repair probe: minute field extraction\", \"actual\": \"01:68:02,731\", \"expected\": \"01:08:02,731\", \"passed\": false}, {\"check\": \"partial repair variant: minute field extraction\", \"actual\": \"01:61:29,889\", \"expected\": \"01:01:29,889\", \"passed\": false}, {\"check\": \"boundary control\", \"actual\": \"00:00:00,000\", \"expected\": \"00:00:00,000\", \"passed\": true}, {\"check\": \"boundary control\", \"actual\": \"59:59.999\", \"expected\": \"59:59.999\", \"passed\": true}, {\"check\": \"normal control\", \"actual\": \"00:00.000\", \"expected\": \"00:00.000\", \"passed\": true}, {\"check\": \"normal control\", \"actual\": \"01:01.001\", \"expected\": \"01:01.001\", \"passed\": true}, {\"check\": \"normal control\", \"actual\": \"00:00:07,834\", \"expected\": \"00:00:07,834\", \"passed\": true}], \"passed\": false}\n"}},"member_only":{"stages":["fixed"],"fields":["implementations.fixed","verification.fixed","harness","repair"],"note":"The verified repair, its recorded checks, the repair description, and the scoring harness are available to members."}}