{"abstract":"Minute fields jump ahead late in the hour.","category":"Broadcast timecode arithmetic","checks":9,"contract":"Convert a non-negative frame count (negative counts return None; counts wrap to the 2589408-frame drop-frame day) to an HH:MM:SS;FF 29.97 drop-frame label: 18 labels are skipped per 10-minute block of 17982 frames, and labels ;00/;01 are skipped at each minute not divisible by ten.","evaluation_group":"w2-broadcast-timecode-arithmetic-frames-to-df29","failed_approach":"Deriving minutes from ten-minute blocks drops the single minutes.","family":"w2-broadcast-timecode-arithmetic-frames-to-df29-minute-field","id":"FA-78431","implementations":{"attempt":{"sha256":"8158bfc93709ccc469d10d768ca55aeacc464388236c357590f81d1389ebcf78","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(frames):\n    if frames<0:\n        return None\n    frames%=2589408\n    d,mrem=divmod(frames,17982)\n    add=18*d\n    if mrem>=2:\n        add+=2*((mrem-2)//1798)\n    n=frames+add\n    ff=n%30\n    ss=n//30%60\n    mm=n//17982*10%60\n    hh=n//108000\n    return '%02d:%02d:%02d;%02d'%(hh,mm,ss,ff)\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: minute field', [1799], '00:00:59;29'), ('regression variant: minute field', [5138128], '23:37:22;12'), ('partial repair probe: minute field', [2589407], '23:59:59;29'), ('partial repair variant: minute field', [1183387], '10:58:05;23'), ('boundary control', [17982], '00:10:00;00'), ('boundary control', [-1], None), ('normal control', [107892], '01:00:00;00'), ('normal control', [-2], None), ('normal control', [-1641352], None)], [('regression: minute field', [107891], '00:59:59;29'), ('regression variant: minute field', [2576030], '23:52:33;18'), ('partial repair probe: minute field', [52594], '00:29:14;28'), ('partial repair variant: minute field', [1346634], '12:28:52;22'), ('boundary control', [107892], '01:00:00;00'), ('boundary control', [17982], '00:10:00;00'), ('normal control', [35964], '00:20:00;00'), ('normal control', [701299], '06:30:00;01'), ('normal control', [-464827], None)], [('regression: minute field', [2589407], '23:59:59;29'), ('regression variant: minute field', [666705], '06:10:45;21'), ('partial repair probe: minute field', [3372691], '07:15:35;17'), ('partial repair variant: minute field', [1346634], '12:28:52;22'), ('boundary control', [0], '00:00:00;00'), ('boundary control', [107892], '01:00:00;00'), ('normal control', [143856], '01:20:00;00'), ('normal control', [2], '00:00:00;02'), ('normal control', [107893], '01:00:00;01')], [('regression: minute field', [3372691], '07:15:35;17'), ('regression variant: minute field', [2535623], '23:30:05;11'), ('partial repair probe: minute field', [683315], '06:19:59;29'), ('partial repair variant: minute field', [757044], '07:01:00;02'), ('boundary control', [-1], None), ('boundary control', [0], '00:00:00;00'), ('normal control', [485515], '04:30:00;01'), ('normal control', [179822], '01:40:00;02'), ('normal control', [629371], '05:50:00;01')], [('regression: minute field', [683315], '06:19:59;29'), ('regression variant: minute field', [1346634], '12:28:52;22'), ('partial repair probe: minute field', [5138128], '23:37:22;12'), ('partial repair variant: minute field', [3599], '00:02:00;03'), ('boundary control', [17982], '00:10:00;00'), ('boundary control', [-1], None), ('normal control', [575425], '05:20:00;01'), ('normal control', [-2413730], None), ('normal control', [-1030669], None)]]\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":"f0c80e76f18cbe296e39792f0cc4318c98c13df56a10a3425fdba76d5fb8399b","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(frames):\n    if frames<0:\n        return None\n    frames%=2589408\n    d,mrem=divmod(frames,17982)\n    add=18*d\n    if mrem>=2:\n        add+=2*((mrem-2)//1798)\n    n=frames+add\n    ff=n%30\n    ss=n//30%60\n    mm=n//1798%60\n    hh=n//108000\n    return '%02d:%02d:%02d;%02d'%(hh,mm,ss,ff)\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: minute field', [1799], '00:00:59;29'), ('regression variant: minute field', [5138128], '23:37:22;12'), ('partial repair probe: minute field', [2589407], '23:59:59;29'), ('partial repair variant: minute field', [1183387], '10:58:05;23'), ('boundary control', [17982], '00:10:00;00'), ('boundary control', [-1], None), ('normal control', [107892], '01:00:00;00'), ('normal control', [-2], None), ('normal control', [-1641352], None)], [('regression: minute field', [107891], '00:59:59;29'), ('regression variant: minute field', [2576030], '23:52:33;18'), ('partial repair probe: minute field', [52594], '00:29:14;28'), ('partial repair variant: minute field', [1346634], '12:28:52;22'), ('boundary control', [107892], '01:00:00;00'), ('boundary control', [17982], '00:10:00;00'), ('normal control', [35964], '00:20:00;00'), ('normal control', [701299], '06:30:00;01'), ('normal control', [-464827], None)], [('regression: minute field', [2589407], '23:59:59;29'), ('regression variant: minute field', [666705], '06:10:45;21'), ('partial repair probe: minute field', [3372691], '07:15:35;17'), ('partial repair variant: minute field', [1346634], '12:28:52;22'), ('boundary control', [0], '00:00:00;00'), ('boundary control', [107892], '01:00:00;00'), ('normal control', [143856], '01:20:00;00'), ('normal control', [2], '00:00:00;02'), ('normal control', [107893], '01:00:00;01')], [('regression: minute field', [3372691], '07:15:35;17'), ('regression variant: minute field', [2535623], '23:30:05;11'), ('partial repair probe: minute field', [683315], '06:19:59;29'), ('partial repair variant: minute field', [757044], '07:01:00;02'), ('boundary control', [-1], None), ('boundary control', [0], '00:00:00;00'), ('normal control', [485515], '04:30:00;01'), ('normal control', [179822], '01:40:00;02'), ('normal control', [629371], '05:50:00;01')], [('regression: minute field', [683315], '06:19:59;29'), ('regression variant: minute field', [1346634], '12:28:52;22'), ('partial repair probe: minute field', [5138128], '23:37:22;12'), ('partial repair variant: minute field', [3599], '00:02:00;03'), ('boundary control', [17982], '00:10:00;00'), ('boundary control', [-1], None), ('normal control', [575425], '05:20:00;01'), ('normal control', [-2413730], None), ('normal control', [-1030669], None)]]\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"},"fixed":{"sha256":"47c3dbf8d3fd9c305debd0a76668331447818f36dae4e5e99ceb2e414f935135","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(frames):\n    if frames<0:\n        return None\n    frames%=2589408\n    d,mrem=divmod(frames,17982)\n    add=18*d\n    if mrem>=2:\n        add+=2*((mrem-2)//1798)\n    n=frames+add\n    ff=n%30\n    ss=n//30%60\n    mm=n//1800%60\n    hh=n//108000\n    return '%02d:%02d:%02d;%02d'%(hh,mm,ss,ff)\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: minute field', [1799], '00:00:59;29'), ('regression variant: minute field', [5138128], '23:37:22;12'), ('partial repair probe: minute field', [2589407], '23:59:59;29'), ('partial repair variant: minute field', [1183387], '10:58:05;23'), ('boundary control', [17982], '00:10:00;00'), ('boundary control', [-1], None), ('normal control', [107892], '01:00:00;00'), ('normal control', [-2], None), ('normal control', [-1641352], None)], [('regression: minute field', [107891], '00:59:59;29'), ('regression variant: minute field', [2576030], '23:52:33;18'), ('partial repair probe: minute field', [52594], '00:29:14;28'), ('partial repair variant: minute field', [1346634], '12:28:52;22'), ('boundary control', [107892], '01:00:00;00'), ('boundary control', [17982], '00:10:00;00'), ('normal control', [35964], '00:20:00;00'), ('normal control', [701299], '06:30:00;01'), ('normal control', [-464827], None)], [('regression: minute field', [2589407], '23:59:59;29'), ('regression variant: minute field', [666705], '06:10:45;21'), ('partial repair probe: minute field', [3372691], '07:15:35;17'), ('partial repair variant: minute field', [1346634], '12:28:52;22'), ('boundary control', [0], '00:00:00;00'), ('boundary control', [107892], '01:00:00;00'), ('normal control', [143856], '01:20:00;00'), ('normal control', [2], '00:00:00;02'), ('normal control', [107893], '01:00:00;01')], [('regression: minute field', [3372691], '07:15:35;17'), ('regression variant: minute field', [2535623], '23:30:05;11'), ('partial repair probe: minute field', [683315], '06:19:59;29'), ('partial repair variant: minute field', [757044], '07:01:00;02'), ('boundary control', [-1], None), ('boundary control', [0], '00:00:00;00'), ('normal control', [485515], '04:30:00;01'), ('normal control', [179822], '01:40:00;02'), ('normal control', [629371], '05:50:00;01')], [('regression: minute field', [683315], '06:19:59;29'), ('regression variant: minute field', [1346634], '12:28:52;22'), ('partial repair probe: minute field', [5138128], '23:37:22;12'), ('partial repair variant: minute field', [3599], '00:02:00;03'), ('boundary control', [17982], '00:10:00;00'), ('boundary control', [-1], None), ('normal control', [575425], '05:20:00;01'), ('normal control', [-2413730], None), ('normal control', [-1030669], None)]]\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 SMPTE or any broadcast 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-broadcast-timecode-arithmetic-frames-to-df29-minute-field","generated_at":"2026-09-29T14:49:35.314890+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Timecode arithmetic errors misplace edits, commercial breaks and captions against the broadcast clock.","repair":"Derive the minute from the nominal label count, 1800 labels per minute.","root_cause":"The minute field divides the adjusted label count by the real 1798 frames per minute.","sha256":"7f93cad94423e50e1e43848564df586ab8a0de7f33dd3277effb06da32e6b6d8","title":"Frame count to drop-frame 29.97 label: minute field · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":46.676,"exit_code":1,"observations":[{"actual":"00:00:59;29","check":"regression: minute field","expected":"00:00:59;29","passed":true},{"actual":"23:30:22;12","check":"regression variant: minute field","expected":"23:37:22;12","passed":false},{"actual":"23:00:59;29","check":"partial repair probe: minute field","expected":"23:59:59;29","passed":false},{"actual":"10:50:05;23","check":"partial repair variant: minute field","expected":"10:58:05;23","passed":false},{"actual":"00:10:00;00","check":"boundary control","expected":"00:10:00;00","passed":true},{"actual":null,"check":"boundary control","expected":null,"passed":true},{"actual":"01:00:00;00","check":"normal control","expected":"01:00:00;00","passed":true},{"actual":null,"check":"normal control","expected":null,"passed":true},{"actual":null,"check":"normal control","expected":null,"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: minute field\", \"actual\": \"00:00:59;29\", \"expected\": \"00:00:59;29\", \"passed\": true}, {\"check\": \"regression variant: minute field\", \"actual\": \"23:30:22;12\", \"expected\": \"23:37:22;12\", \"passed\": false}, {\"check\": \"partial repair probe: minute field\", \"actual\": \"23:00:59;29\", \"expected\": \"23:59:59;29\", \"passed\": false}, {\"check\": \"partial repair variant: minute field\", \"actual\": \"10:50:05;23\", \"expected\": \"10:58:05;23\", \"passed\": false}, {\"check\": \"boundary control\", \"actual\": \"00:10:00;00\", \"expected\": \"00:10:00;00\", \"passed\": true}, {\"check\": \"boundary control\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"normal control\", \"actual\": \"01:00:00;00\", \"expected\": \"01:00:00;00\", \"passed\": true}, {\"check\": \"normal control\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"normal control\", \"actual\": null, \"expected\": null, \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":43.133,"exit_code":1,"observations":[{"actual":"00:01:59;29","check":"regression: minute field","expected":"00:00:59;29","passed":false},{"actual":"23:38:22;12","check":"regression variant: minute field","expected":"23:37:22;12","passed":false},{"actual":"23:01:59;29","check":"partial repair probe: minute field","expected":"23:59:59;29","passed":false},{"actual":"10:58:05;23","check":"partial repair variant: minute field","expected":"10:58:05;23","passed":true},{"actual":"00:10:00;00","check":"boundary control","expected":"00:10:00;00","passed":true},{"actual":null,"check":"boundary control","expected":null,"passed":true},{"actual":"01:00:00;00","check":"normal control","expected":"01:00:00;00","passed":true},{"actual":null,"check":"normal control","expected":null,"passed":true},{"actual":null,"check":"normal control","expected":null,"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: minute field\", \"actual\": \"00:01:59;29\", \"expected\": \"00:00:59;29\", \"passed\": false}, {\"check\": \"regression variant: minute field\", \"actual\": \"23:38:22;12\", \"expected\": \"23:37:22;12\", \"passed\": false}, {\"check\": \"partial repair probe: minute field\", \"actual\": \"23:01:59;29\", \"expected\": \"23:59:59;29\", \"passed\": false}, {\"check\": \"partial repair variant: minute field\", \"actual\": \"10:58:05;23\", \"expected\": \"10:58:05;23\", \"passed\": true}, {\"check\": \"boundary control\", \"actual\": \"00:10:00;00\", \"expected\": \"00:10:00;00\", \"passed\": true}, {\"check\": \"boundary control\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"normal control\", \"actual\": \"01:00:00;00\", \"expected\": \"01:00:00;00\", \"passed\": true}, {\"check\": \"normal control\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"normal control\", \"actual\": null, \"expected\": null, \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":39.082,"exit_code":0,"observations":[{"actual":"00:00:59;29","check":"regression: minute field","expected":"00:00:59;29","passed":true},{"actual":"23:37:22;12","check":"regression variant: minute field","expected":"23:37:22;12","passed":true},{"actual":"23:59:59;29","check":"partial repair probe: minute field","expected":"23:59:59;29","passed":true},{"actual":"10:58:05;23","check":"partial repair variant: minute field","expected":"10:58:05;23","passed":true},{"actual":"00:10:00;00","check":"boundary control","expected":"00:10:00;00","passed":true},{"actual":null,"check":"boundary control","expected":null,"passed":true},{"actual":"01:00:00;00","check":"normal control","expected":"01:00:00;00","passed":true},{"actual":null,"check":"normal control","expected":null,"passed":true},{"actual":null,"check":"normal control","expected":null,"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: minute field\", \"actual\": \"00:00:59;29\", \"expected\": \"00:00:59;29\", \"passed\": true}, {\"check\": \"regression variant: minute field\", \"actual\": \"23:37:22;12\", \"expected\": \"23:37:22;12\", \"passed\": true}, {\"check\": \"partial repair probe: minute field\", \"actual\": \"23:59:59;29\", \"expected\": \"23:59:59;29\", \"passed\": true}, {\"check\": \"partial repair variant: minute field\", \"actual\": \"10:58:05;23\", \"expected\": \"10:58:05;23\", \"passed\": true}, {\"check\": \"boundary control\", \"actual\": \"00:10:00;00\", \"expected\": \"00:10:00;00\", \"passed\": true}, {\"check\": \"boundary control\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"normal control\", \"actual\": \"01:00:00;00\", \"expected\": \"01:00:00;00\", \"passed\": true}, {\"check\": \"normal control\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"normal control\", \"actual\": null, \"expected\": null, \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}