{"abstract":"NTSC labels count only 29 frames per second.","category":"Broadcast timecode arithmetic","checks":9,"contract":"PTS values are 33-bit 90 kHz ticks. The elapsed ticks since first_pts wrap modulo 2^33, except that a PTS less than 90000 ticks before first_pts (reordering pre-roll) returns None. The frame is the nearest frame at rate [N,D] (halves up); the label uses nominal rate ceil(N/D) and wraps at 24 hours.","contract_signature":"pts, first_pts, fps","evaluation_group":"w2-broadcast-timecode-arithmetic-pts-to-frame","failed_approach":"Adding one after truncation breaks integer rates such as 25.","family":"w2-broadcast-timecode-arithmetic-pts-to-frame-nominal-label-rate","id":"FA-78836","implementations":{"attempt":{"sha256":"3d763692c343f7dbbc8fdd7b31060d04c46ebfb17ac9bc374b28ca5b1ef5e0d0","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(pts, first_pts, fps):\n    WRAP=1<<33\n    raw=pts-first_pts\n    if -90000<raw<0:\n        return None\n    d=raw%WRAP\n    num,den=fps\n    n=(2*d*num+90000*den)//(180000*den)\n    nominal=num//den+1\n    return [n,'%02d:%02d:%02d:%02d'%(n//(3600*nominal)%24,n//(60*nominal)%60,n//nominal%60,n%nominal)]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: nominal label rate', [7775910000, 8589844592, [24000, 1001]], [2071528, '23:58:33:16']), ('regression variant: nominal label rate', [810000, 900000, [30000, 1001]], [2860421, '02:29:07:11']), ('partial repair probe: nominal label rate', [7776000000, 0, [50, 1]], [4320000, '00:00:00:00']), ('partial repair variant: nominal label rate', [8589844591, 0, [50, 1]], [4772136, '02:30:42:36']), ('boundary control', [1800, 0, [25, 1]], [1, '00:00:00:01']), ('boundary control', [1502, 0, [30000, 1001]], [1, '00:00:00:01']), ('normal control', [100, 8589931092, [25, 1]], [1, '00:00:00:01']), ('normal control', [127800, 126000, [25, 1]], [1, '00:00:00:01']), ('normal control', [901502, 900000, [24000, 1001]], [0, '00:00:00:00'])], [('regression: nominal label rate', [8586333592, 8589933592, [30000, 1001]], [2859252, '02:28:28:12']), ('regression variant: nominal label rate', [8589754591, 8589844592, [24000, 1001]], [2288337, '02:29:07:09']), ('partial repair probe: nominal label rate', [8586244592, 8589844592, [25, 1]], [2385093, '02:30:03:18']), ('partial repair variant: nominal label rate', [8587234592, 900000, [50, 1]], [4770186, '02:30:03:36']), ('boundary control', [100, 8589931092, [25, 1]], [1, '00:00:00:01']), ('boundary control', [1800, 0, [25, 1]], [1, '00:00:00:01']), ('normal control', [900001, 900000, [50, 1]], [0, '00:00:00:00']), ('normal control', [877, 8589933592, [50, 1]], [1, '00:00:00:01']), ('normal control', [3754, 0, [24000, 1001]], [1, '00:00:00:01'])], [('regression: nominal label rate', [35999, 126000, [24000, 1001]], [2288337, '02:29:07:09']), ('regression variant: nominal label rate', [7776000000, 0, [24000, 1001]], [2071528, '23:58:33:16']), ('partial repair probe: nominal label rate', [7775910000, 8589844592, [25, 1]], [2160000, '00:00:00:00']), ('partial repair variant: nominal label rate', [7776126000, 126000, [50, 1]], [4320000, '00:00:00:00']), ('boundary control', [0, 45000, [25, 1]], None), ('boundary control', [100, 8589931092, [25, 1]], [1, '00:00:00:01']), ('normal control', [126000, 126000, [25, 1]], [0, '00:00:00:00']), ('normal control', [3753, 0, [50, 1]], [2, '00:00:00:02']), ('normal control', [129754, 126000, [25, 1]], [1, '00:00:00:01'])], [('regression: nominal label rate', [36000, 126000, [24000, 1001]], [2288337, '02:29:07:09']), ('regression variant: nominal label rate', [324900000, 900000, [24000, 1001]], [86314, '00:59:56:10']), ('partial repair probe: nominal label rate', [324126000, 126000, [50, 1]], [180000, '01:00:00:00']), ('partial repair variant: nominal label rate', [323999000, 8589933592, [50, 1]], [180000, '01:00:00:00']), ('boundary control', [1502, 0, [30000, 1001]], [1, '00:00:00:01']), ('boundary control', [0, 45000, [25, 1]], None), ('normal control', [8589846469, 8589844592, [50, 1]], [1, '00:00:00:01']), ('normal control', [877, 8589933592, [30000, 1001]], [1, '00:00:00:01']), ('normal control', [127502, 126000, [24000, 1001]], [0, '00:00:00:00'])], [('regression: nominal label rate', [324126000, 126000, [24000, 1001]], [86314, '00:59:56:10']), ('regression variant: nominal label rate', [8586460592, 126000, [30000, 1001]], [2859252, '02:28:28:12']), ('partial repair probe: nominal label rate', [809999, 900000, [25, 1]], [2386068, '02:30:42:18']), ('partial repair variant: nominal label rate', [8586460592, 126000, [25, 1]], [2385093, '02:30:03:18']), ('boundary control', [1800, 0, [25, 1]], [1, '00:00:00:01']), ('boundary control', [1502, 0, [30000, 1001]], [1, '00:00:00:01']), ('normal control', [3754, 0, [25, 1]], [1, '00:00:00:01']), ('normal control', [801, 8589933592, [24000, 1001]], [0, '00:00:00:00']), ('normal control', [1502, 0, [50, 1]], [1, '00:00:00:01'])]]\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":"fe3176de72fb7b709ac380f8b118f0a8669ca726ec23141f5481c39fa3f2ea42","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(pts, first_pts, fps):\n    WRAP=1<<33\n    raw=pts-first_pts\n    if -90000<raw<0:\n        return None\n    d=raw%WRAP\n    num,den=fps\n    n=(2*d*num+90000*den)//(180000*den)\n    nominal=num//den\n    return [n,'%02d:%02d:%02d:%02d'%(n//(3600*nominal)%24,n//(60*nominal)%60,n//nominal%60,n%nominal)]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: nominal label rate', [7775910000, 8589844592, [24000, 1001]], [2071528, '23:58:33:16']), ('regression variant: nominal label rate', [810000, 900000, [30000, 1001]], [2860421, '02:29:07:11']), ('partial repair probe: nominal label rate', [7776000000, 0, [50, 1]], [4320000, '00:00:00:00']), ('partial repair variant: nominal label rate', [8589844591, 0, [50, 1]], [4772136, '02:30:42:36']), ('boundary control', [1800, 0, [25, 1]], [1, '00:00:00:01']), ('boundary control', [1502, 0, [30000, 1001]], [1, '00:00:00:01']), ('normal control', [100, 8589931092, [25, 1]], [1, '00:00:00:01']), ('normal control', [127800, 126000, [25, 1]], [1, '00:00:00:01']), ('normal control', [901502, 900000, [24000, 1001]], [0, '00:00:00:00'])], [('regression: nominal label rate', [8586333592, 8589933592, [30000, 1001]], [2859252, '02:28:28:12']), ('regression variant: nominal label rate', [8589754591, 8589844592, [24000, 1001]], [2288337, '02:29:07:09']), ('partial repair probe: nominal label rate', [8586244592, 8589844592, [25, 1]], [2385093, '02:30:03:18']), ('partial repair variant: nominal label rate', [8587234592, 900000, [50, 1]], [4770186, '02:30:03:36']), ('boundary control', [100, 8589931092, [25, 1]], [1, '00:00:00:01']), ('boundary control', [1800, 0, [25, 1]], [1, '00:00:00:01']), ('normal control', [900001, 900000, [50, 1]], [0, '00:00:00:00']), ('normal control', [877, 8589933592, [50, 1]], [1, '00:00:00:01']), ('normal control', [3754, 0, [24000, 1001]], [1, '00:00:00:01'])], [('regression: nominal label rate', [35999, 126000, [24000, 1001]], [2288337, '02:29:07:09']), ('regression variant: nominal label rate', [7776000000, 0, [24000, 1001]], [2071528, '23:58:33:16']), ('partial repair probe: nominal label rate', [7775910000, 8589844592, [25, 1]], [2160000, '00:00:00:00']), ('partial repair variant: nominal label rate', [7776126000, 126000, [50, 1]], [4320000, '00:00:00:00']), ('boundary control', [0, 45000, [25, 1]], None), ('boundary control', [100, 8589931092, [25, 1]], [1, '00:00:00:01']), ('normal control', [126000, 126000, [25, 1]], [0, '00:00:00:00']), ('normal control', [3753, 0, [50, 1]], [2, '00:00:00:02']), ('normal control', [129754, 126000, [25, 1]], [1, '00:00:00:01'])], [('regression: nominal label rate', [36000, 126000, [24000, 1001]], [2288337, '02:29:07:09']), ('regression variant: nominal label rate', [324900000, 900000, [24000, 1001]], [86314, '00:59:56:10']), ('partial repair probe: nominal label rate', [324126000, 126000, [50, 1]], [180000, '01:00:00:00']), ('partial repair variant: nominal label rate', [323999000, 8589933592, [50, 1]], [180000, '01:00:00:00']), ('boundary control', [1502, 0, [30000, 1001]], [1, '00:00:00:01']), ('boundary control', [0, 45000, [25, 1]], None), ('normal control', [8589846469, 8589844592, [50, 1]], [1, '00:00:00:01']), ('normal control', [877, 8589933592, [30000, 1001]], [1, '00:00:00:01']), ('normal control', [127502, 126000, [24000, 1001]], [0, '00:00:00:00'])], [('regression: nominal label rate', [324126000, 126000, [24000, 1001]], [86314, '00:59:56:10']), ('regression variant: nominal label rate', [8586460592, 126000, [30000, 1001]], [2859252, '02:28:28:12']), ('partial repair probe: nominal label rate', [809999, 900000, [25, 1]], [2386068, '02:30:42:18']), ('partial repair variant: nominal label rate', [8586460592, 126000, [25, 1]], [2385093, '02:30:03:18']), ('boundary control', [1800, 0, [25, 1]], [1, '00:00:00:01']), ('boundary control', [1502, 0, [30000, 1001]], [1, '00:00:00:01']), ('normal control', [3754, 0, [25, 1]], [1, '00:00:00:01']), ('normal control', [801, 8589933592, [24000, 1001]], [0, '00:00:00:00']), ('normal control', [1502, 0, [50, 1]], [1, '00:00:00:01'])]]\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-pts-to-frame-nominal-label-rate","generated_at":"2026-09-29T14:49:39.202189+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.","root_cause":"The nominal rate truncates 30000/1001 to 29.","sha256":"7bc1ae804393bfd5d145e5bce6debaedc80847362f9de0c3aac8fef75b1ffc77","title":"90 kHz presentation timestamp to frame label: nominal label rate · 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":40.656,"exit_code":1,"observations":[{"actual":[2071528,"23:58:33:16"],"check":"regression: nominal label rate","expected":[2071528,"23:58:33:16"],"passed":true},{"actual":[2860421,"02:29:07:11"],"check":"regression variant: nominal label rate","expected":[2860421,"02:29:07:11"],"passed":true},{"actual":[4320000,"23:31:45:45"],"check":"partial repair probe: nominal label rate","expected":[4320000,"00:00:00:00"],"passed":false},{"actual":[4772136,"01:59:31:15"],"check":"partial repair variant: nominal label rate","expected":[4772136,"02:30:42:36"],"passed":false},{"actual":[1,"00:00:00:01"],"check":"boundary control","expected":[1,"00:00:00:01"],"passed":true},{"actual":[1,"00:00:00:01"],"check":"boundary control","expected":[1,"00:00:00:01"],"passed":true},{"actual":[1,"00:00:00:01"],"check":"normal control","expected":[1,"00:00:00:01"],"passed":true},{"actual":[1,"00:00:00:01"],"check":"normal control","expected":[1,"00:00:00:01"],"passed":true},{"actual":[0,"00:00:00:00"],"check":"normal control","expected":[0,"00:00:00:00"],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: nominal label rate\", \"actual\": [2071528, \"23:58:33:16\"], \"expected\": [2071528, \"23:58:33:16\"], \"passed\": true}, {\"check\": \"regression variant: nominal label rate\", \"actual\": [2860421, \"02:29:07:11\"], \"expected\": [2860421, \"02:29:07:11\"], \"passed\": true}, {\"check\": \"partial repair probe: nominal label rate\", \"actual\": [4320000, \"23:31:45:45\"], \"expected\": [4320000, \"00:00:00:00\"], \"passed\": false}, {\"check\": \"partial repair variant: nominal label rate\", \"actual\": [4772136, \"01:59:31:15\"], \"expected\": [4772136, \"02:30:42:36\"], \"passed\": false}, {\"check\": \"boundary control\", \"actual\": [1, \"00:00:00:01\"], \"expected\": [1, \"00:00:00:01\"], \"passed\": true}, {\"check\": \"boundary control\", \"actual\": [1, \"00:00:00:01\"], \"expected\": [1, \"00:00:00:01\"], \"passed\": true}, {\"check\": \"normal control\", \"actual\": [1, \"00:00:00:01\"], \"expected\": [1, \"00:00:00:01\"], \"passed\": true}, {\"check\": \"normal control\", \"actual\": [1, \"00:00:00:01\"], \"expected\": [1, \"00:00:00:01\"], \"passed\": true}, {\"check\": \"normal control\", \"actual\": [0, \"00:00:00:00\"], \"expected\": [0, \"00:00:00:00\"], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":39.56,"exit_code":1,"observations":[{"actual":[2071528,"01:01:06:10"],"check":"regression: nominal label rate","expected":[2071528,"23:58:33:16"],"passed":false},{"actual":[2860421,"03:23:55:06"],"check":"regression variant: nominal label rate","expected":[2860421,"02:29:07:11"],"passed":false},{"actual":[4320000,"00:00:00:00"],"check":"partial repair probe: nominal label rate","expected":[4320000,"00:00:00:00"],"passed":true},{"actual":[4772136,"02:30:42:36"],"check":"partial repair variant: nominal label rate","expected":[4772136,"02:30:42:36"],"passed":true},{"actual":[1,"00:00:00:01"],"check":"boundary control","expected":[1,"00:00:00:01"],"passed":true},{"actual":[1,"00:00:00:01"],"check":"boundary control","expected":[1,"00:00:00:01"],"passed":true},{"actual":[1,"00:00:00:01"],"check":"normal control","expected":[1,"00:00:00:01"],"passed":true},{"actual":[1,"00:00:00:01"],"check":"normal control","expected":[1,"00:00:00:01"],"passed":true},{"actual":[0,"00:00:00:00"],"check":"normal control","expected":[0,"00:00:00:00"],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: nominal label rate\", \"actual\": [2071528, \"01:01:06:10\"], \"expected\": [2071528, \"23:58:33:16\"], \"passed\": false}, {\"check\": \"regression variant: nominal label rate\", \"actual\": [2860421, \"03:23:55:06\"], \"expected\": [2860421, \"02:29:07:11\"], \"passed\": false}, {\"check\": \"partial repair probe: nominal label rate\", \"actual\": [4320000, \"00:00:00:00\"], \"expected\": [4320000, \"00:00:00:00\"], \"passed\": true}, {\"check\": \"partial repair variant: nominal label rate\", \"actual\": [4772136, \"02:30:42:36\"], \"expected\": [4772136, \"02:30:42:36\"], \"passed\": true}, {\"check\": \"boundary control\", \"actual\": [1, \"00:00:00:01\"], \"expected\": [1, \"00:00:00:01\"], \"passed\": true}, {\"check\": \"boundary control\", \"actual\": [1, \"00:00:00:01\"], \"expected\": [1, \"00:00:00:01\"], \"passed\": true}, {\"check\": \"normal control\", \"actual\": [1, \"00:00:00:01\"], \"expected\": [1, \"00:00:00:01\"], \"passed\": true}, {\"check\": \"normal control\", \"actual\": [1, \"00:00:00:01\"], \"expected\": [1, \"00:00:00:01\"], \"passed\": true}, {\"check\": \"normal control\", \"actual\": [0, \"00:00:00:00\"], \"expected\": [0, \"00:00:00:00\"], \"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."}}