FA-68066 / Traffic signal timing plans / Open access
Shortway offset transition: ties between directions pick shortening · case 01
Shortway offset transition returns a wrong result when ties between directions pick shortening.
ROOT CAUSE
Equal cycle counts choose shortening although the contract resolves ties toward lengthening.
VERIFIED REPAIR
Restore the direction selection rule so that the step reads `if nl <= ns:`.
Unsuccessful approach: Choosing by raw distance ignores that the two directions have different per-cycle limits.
Case contract
Input {cycle, current_offset, target_offset, lengthen_pct, shorten_pct}. The needed correction e = (target - current) mod cycle can be made by lengthening cycles by a total of e or shortening them by cycle - e. Per-cycle limits are floor(cycle*pct/100). Choose the direction needing fewer cycles (ties lengthen) and front-load the maximum adjustment each cycle. Return the list of transition cycle lengths ([] when already in step).
Why this case matters
Signal timing arithmetic is exact and integer or rational; a wrong rule silently produces unsafe or inefficient timing plans.
1 / The failure
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(x):
C = x['cycle']
e = (x['target_offset'] - x['current_offset']) % C
if e == 0:
return []
L = C * x['lengthen_pct'] // 100
S = C * x['shorten_pct'] // 100
nl = -(-e // L)
ns = -(-(C - e) // S)
if nl < ns:
amt, step, sign = e, L, 1
else:
amt, step, sign = C - e, S, -1
out = []
while amt > 0:
d = min(step, amt)
out.append(C + sign * d)
amt -= d
return out
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[({'cycle': 60, 'current_offset': 49, 'target_offset': 26, 'lengthen_pct': 20, 'shorten_pct': 13}, [72, 72, 72, 61]), ({'cycle': 150, 'current_offset': 76, 'target_offset': 139, 'lengthen_pct': 20, 'shorten_pct': 20}, [180, 180, 153]), ({'cycle': 100, 'current_offset': 10, 'target_offset': 50, 'lengthen_pct': 20, 'shorten_pct': 20}, [120, 120]), ({'cycle': 90, 'current_offset': 30, 'target_offset': 30, 'lengthen_pct': 20, 'shorten_pct': 17}, []), ({'cycle': 100, 'current_offset': 95, 'target_offset': 74, 'lengthen_pct': 10, 'shorten_pct': 10}, [90, 90, 99]), ({'cycle': 140, 'current_offset': 130, 'target_offset': 73, 'lengthen_pct': 20, 'shorten_pct': 17}, [168, 168, 167]), ({'cycle': 60, 'current_offset': 28, 'target_offset': 31, 'lengthen_pct': 17, 'shorten_pct': 13}, [63]), ({'cycle': 120, 'current_offset': 90, 'target_offset': 20, 'lengthen_pct': 17, 'shorten_pct': 13}, [140, 140, 130])], [({'cycle': 100, 'current_offset': 10, 'target_offset': 50, 'lengthen_pct': 20, 'shorten_pct': 20}, [120, 120]), ({'cycle': 70, 'current_offset': 5, 'target_offset': 46, 'lengthen_pct': 20, 'shorten_pct': 10}, [84, 84, 83]), ({'cycle': 120, 'current_offset': 24, 'target_offset': 105, 'lengthen_pct': 20, 'shorten_pct': 10}, [144, 144, 144, 129]), ({'cycle': 90, 'current_offset': 30, 'target_offset': 30, 'lengthen_pct': 20, 'shorten_pct': 17}, []), ({'cycle': 120, 'current_offset': 90, 'target_offset': 20, 'lengthen_pct': 17, 'shorten_pct': 13}, [140, 140, 130]), ({'cycle': 150, 'current_offset': 78, 'target_offset': 16, 'lengthen_pct': 17, 'shorten_pct': 13}, [175, 175, 175, 163]), ({'cycle': 90, 'current_offset': 74, 'target_offset': 23, 'lengthen_pct': 17, 'shorten_pct': 20}, [105, 105, 99]), ({'cycle': 90, 'current_offset': 77, 'target_offset': 35, 'lengthen_pct': 25, 'shorten_pct': 13}, [112, 112, 94])], [({'cycle': 100, 'current_offset': 96, 'target_offset': 58, 'lengthen_pct': 25, 'shorten_pct': 10}, [125, 125, 112]), ({'cycle': 120, 'current_offset': 110, 'target_offset': 48, 'lengthen_pct': 10, 'shorten_pct': 13}, [132, 132, 132, 132, 130]), ({'cycle': 110, 'current_offset': 4, 'target_offset': 71, 'lengthen_pct': 25, 'shorten_pct': 13}, [137, 137, 123]), ({'cycle': 120, 'current_offset': 90, 'target_offset': 20, 'lengthen_pct': 17, 'shorten_pct': 13}, [140, 140, 130]), ({'cycle': 150, 'current_offset': 34, 'target_offset': 105, 'lengthen_pct': 17, 'shorten_pct': 20}, [175, 175, 171]), ({'cycle': 90, 'current_offset': 33, 'target_offset': 78, 'lengthen_pct': 25, 'shorten_pct': 17}, [112, 112, 91]), ({'cycle': 90, 'current_offset': 30, 'target_offset': 30, 'lengthen_pct': 20, 'shorten_pct': 17}, []), ({'cycle': 100, 'current_offset': 10, 'target_offset': 50, 'lengthen_pct': 20, 'shorten_pct': 20}, [120, 120])], [({'cycle': 90, 'current_offset': 57, 'target_offset': 2, 'lengthen_pct': 10, 'shorten_pct': 20}, [99, 99, 99, 98]), ({'cycle': 110, 'current_offset': 14, 'target_offset': 86, 'lengthen_pct': 25, 'shorten_pct': 10}, [137, 137, 128]), ({'cycle': 120, 'current_offset': 90, 'target_offset': 20, 'lengthen_pct': 17, 'shorten_pct': 13}, [140, 140, 130]), ({'cycle': 90, 'current_offset': 30, 'target_offset': 30, 'lengthen_pct': 20, 'shorten_pct': 17}, []), ({'cycle': 100, 'current_offset': 10, 'target_offset': 50, 'lengthen_pct': 20, 'shorten_pct': 20}, [120, 120]), ({'cycle': 90, 'current_offset': 13, 'target_offset': 68, 'lengthen_pct': 25, 'shorten_pct': 17}, [112, 112, 101]), ({'cycle': 140, 'current_offset': 52, 'target_offset': 120, 'lengthen_pct': 17, 'shorten_pct': 20}, [163, 163, 162]), ({'cycle': 60, 'current_offset': 16, 'target_offset': 18, 'lengthen_pct': 10, 'shorten_pct': 20}, [62])], [({'cycle': 90, 'current_offset': 30, 'target_offset': 30, 'lengthen_pct': 20, 'shorten_pct': 17}, []), ({'cycle': 100, 'current_offset': 10, 'target_offset': 50, 'lengthen_pct': 20, 'shorten_pct': 20}, [120, 120]), ({'cycle': 90, 'current_offset': 26, 'target_offset': 75, 'lengthen_pct': 20, 'shorten_pct': 13}, [108, 108, 103]), ({'cycle': 70, 'current_offset': 20, 'target_offset': 49, 'lengthen_pct': 10, 'shorten_pct': 20}, [56, 56, 57]), ({'cycle': 80, 'current_offset': 58, 'target_offset': 37, 'lengthen_pct': 25, 'shorten_pct': 10}, [100, 100, 99]), ({'cycle': 100, 'current_offset': 66, 'target_offset': 1, 'lengthen_pct': 10, 'shorten_pct': 17}, [110, 110, 110, 105]), ({'cycle': 120, 'current_offset': 90, 'target_offset': 20, 'lengthen_pct': 17, 'shorten_pct': 13}, [140, 140, 130]), ({'cycle': 60, 'current_offset': 11, 'target_offset': 44, 'lengthen_pct': 17, 'shorten_pct': 13}, [70, 70, 70, 63])]]
for i, (args, expected) in enumerate(fixtures[N-1]):
check('timing oracle' + ' %d' % i, solve(args), expected)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
| Boundary fixture | Actual | Expected | Outcome |
|---|---|---|---|
| timing oracle 0 | [53, 53, 53, 58] | [72, 72, 72, 61] | Failed |
| timing oracle 1 | [120, 120, 123] | [180, 180, 153] | Failed |
| timing oracle 2 | [120, 120] | [120, 120] | Passed |
| timing oracle 3 | [] | [] | Passed |
| timing oracle 4 | [90, 90, 99] | [90, 90, 99] | Passed |
| timing oracle 5 | [117, 117, 129] | [168, 168, 167] | Failed |
| timing oracle 6 | [63] | [63] | Passed |
| timing oracle 7 | [140, 140, 130] | [140, 140, 130] | Passed |
SHA-256 / 5a9d41b24cfabe48a16d88b9c92f089a1765b04ec0c8f9a6c401f4bdc0857a4e
2 / The unsuccessful fix
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(x):
C = x['cycle']
e = (x['target_offset'] - x['current_offset']) % C
if e == 0:
return []
L = C * x['lengthen_pct'] // 100
S = C * x['shorten_pct'] // 100
nl = -(-e // L)
ns = -(-(C - e) // S)
if e <= C - e:
amt, step, sign = e, L, 1
else:
amt, step, sign = C - e, S, -1
out = []
while amt > 0:
d = min(step, amt)
out.append(C + sign * d)
amt -= d
return out
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[({'cycle': 60, 'current_offset': 49, 'target_offset': 26, 'lengthen_pct': 20, 'shorten_pct': 13}, [72, 72, 72, 61]), ({'cycle': 150, 'current_offset': 76, 'target_offset': 139, 'lengthen_pct': 20, 'shorten_pct': 20}, [180, 180, 153]), ({'cycle': 100, 'current_offset': 10, 'target_offset': 50, 'lengthen_pct': 20, 'shorten_pct': 20}, [120, 120]), ({'cycle': 90, 'current_offset': 30, 'target_offset': 30, 'lengthen_pct': 20, 'shorten_pct': 17}, []), ({'cycle': 100, 'current_offset': 95, 'target_offset': 74, 'lengthen_pct': 10, 'shorten_pct': 10}, [90, 90, 99]), ({'cycle': 140, 'current_offset': 130, 'target_offset': 73, 'lengthen_pct': 20, 'shorten_pct': 17}, [168, 168, 167]), ({'cycle': 60, 'current_offset': 28, 'target_offset': 31, 'lengthen_pct': 17, 'shorten_pct': 13}, [63]), ({'cycle': 120, 'current_offset': 90, 'target_offset': 20, 'lengthen_pct': 17, 'shorten_pct': 13}, [140, 140, 130])], [({'cycle': 100, 'current_offset': 10, 'target_offset': 50, 'lengthen_pct': 20, 'shorten_pct': 20}, [120, 120]), ({'cycle': 70, 'current_offset': 5, 'target_offset': 46, 'lengthen_pct': 20, 'shorten_pct': 10}, [84, 84, 83]), ({'cycle': 120, 'current_offset': 24, 'target_offset': 105, 'lengthen_pct': 20, 'shorten_pct': 10}, [144, 144, 144, 129]), ({'cycle': 90, 'current_offset': 30, 'target_offset': 30, 'lengthen_pct': 20, 'shorten_pct': 17}, []), ({'cycle': 120, 'current_offset': 90, 'target_offset': 20, 'lengthen_pct': 17, 'shorten_pct': 13}, [140, 140, 130]), ({'cycle': 150, 'current_offset': 78, 'target_offset': 16, 'lengthen_pct': 17, 'shorten_pct': 13}, [175, 175, 175, 163]), ({'cycle': 90, 'current_offset': 74, 'target_offset': 23, 'lengthen_pct': 17, 'shorten_pct': 20}, [105, 105, 99]), ({'cycle': 90, 'current_offset': 77, 'target_offset': 35, 'lengthen_pct': 25, 'shorten_pct': 13}, [112, 112, 94])], [({'cycle': 100, 'current_offset': 96, 'target_offset': 58, 'lengthen_pct': 25, 'shorten_pct': 10}, [125, 125, 112]), ({'cycle': 120, 'current_offset': 110, 'target_offset': 48, 'lengthen_pct': 10, 'shorten_pct': 13}, [132, 132, 132, 132, 130]), ({'cycle': 110, 'current_offset': 4, 'target_offset': 71, 'lengthen_pct': 25, 'shorten_pct': 13}, [137, 137, 123]), ({'cycle': 120, 'current_offset': 90, 'target_offset': 20, 'lengthen_pct': 17, 'shorten_pct': 13}, [140, 140, 130]), ({'cycle': 150, 'current_offset': 34, 'target_offset': 105, 'lengthen_pct': 17, 'shorten_pct': 20}, [175, 175, 171]), ({'cycle': 90, 'current_offset': 33, 'target_offset': 78, 'lengthen_pct': 25, 'shorten_pct': 17}, [112, 112, 91]), ({'cycle': 90, 'current_offset': 30, 'target_offset': 30, 'lengthen_pct': 20, 'shorten_pct': 17}, []), ({'cycle': 100, 'current_offset': 10, 'target_offset': 50, 'lengthen_pct': 20, 'shorten_pct': 20}, [120, 120])], [({'cycle': 90, 'current_offset': 57, 'target_offset': 2, 'lengthen_pct': 10, 'shorten_pct': 20}, [99, 99, 99, 98]), ({'cycle': 110, 'current_offset': 14, 'target_offset': 86, 'lengthen_pct': 25, 'shorten_pct': 10}, [137, 137, 128]), ({'cycle': 120, 'current_offset': 90, 'target_offset': 20, 'lengthen_pct': 17, 'shorten_pct': 13}, [140, 140, 130]), ({'cycle': 90, 'current_offset': 30, 'target_offset': 30, 'lengthen_pct': 20, 'shorten_pct': 17}, []), ({'cycle': 100, 'current_offset': 10, 'target_offset': 50, 'lengthen_pct': 20, 'shorten_pct': 20}, [120, 120]), ({'cycle': 90, 'current_offset': 13, 'target_offset': 68, 'lengthen_pct': 25, 'shorten_pct': 17}, [112, 112, 101]), ({'cycle': 140, 'current_offset': 52, 'target_offset': 120, 'lengthen_pct': 17, 'shorten_pct': 20}, [163, 163, 162]), ({'cycle': 60, 'current_offset': 16, 'target_offset': 18, 'lengthen_pct': 10, 'shorten_pct': 20}, [62])], [({'cycle': 90, 'current_offset': 30, 'target_offset': 30, 'lengthen_pct': 20, 'shorten_pct': 17}, []), ({'cycle': 100, 'current_offset': 10, 'target_offset': 50, 'lengthen_pct': 20, 'shorten_pct': 20}, [120, 120]), ({'cycle': 90, 'current_offset': 26, 'target_offset': 75, 'lengthen_pct': 20, 'shorten_pct': 13}, [108, 108, 103]), ({'cycle': 70, 'current_offset': 20, 'target_offset': 49, 'lengthen_pct': 10, 'shorten_pct': 20}, [56, 56, 57]), ({'cycle': 80, 'current_offset': 58, 'target_offset': 37, 'lengthen_pct': 25, 'shorten_pct': 10}, [100, 100, 99]), ({'cycle': 100, 'current_offset': 66, 'target_offset': 1, 'lengthen_pct': 10, 'shorten_pct': 17}, [110, 110, 110, 105]), ({'cycle': 120, 'current_offset': 90, 'target_offset': 20, 'lengthen_pct': 17, 'shorten_pct': 13}, [140, 140, 130]), ({'cycle': 60, 'current_offset': 11, 'target_offset': 44, 'lengthen_pct': 17, 'shorten_pct': 13}, [70, 70, 70, 63])]]
for i, (args, expected) in enumerate(fixtures[N-1]):
check('timing oracle' + ' %d' % i, solve(args), expected)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
| Boundary fixture | Actual | Expected | Outcome |
|---|---|---|---|
| timing oracle 0 | [53, 53, 53, 58] | [72, 72, 72, 61] | Failed |
| timing oracle 1 | [180, 180, 153] | [180, 180, 153] | Passed |
| timing oracle 2 | [120, 120] | [120, 120] | Passed |
| timing oracle 3 | [] | [] | Passed |
| timing oracle 4 | [90, 90, 99] | [90, 90, 99] | Passed |
| timing oracle 5 | [117, 117, 129] | [168, 168, 167] | Failed |
| timing oracle 6 | [63] | [63] | Passed |
| timing oracle 7 | [140, 140, 130] | [140, 140, 130] | Passed |
SHA-256 / 551bc93d5528347be438e10c1bb37df712bfe54a341b56a2e0f2e6f7a3ae0539
3 / The verified repair
Exit 0"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(x):
C = x['cycle']
e = (x['target_offset'] - x['current_offset']) % C
if e == 0:
return []
L = C * x['lengthen_pct'] // 100
S = C * x['shorten_pct'] // 100
nl = -(-e // L)
ns = -(-(C - e) // S)
if nl <= ns:
amt, step, sign = e, L, 1
else:
amt, step, sign = C - e, S, -1
out = []
while amt > 0:
d = min(step, amt)
out.append(C + sign * d)
amt -= d
return out
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[({'cycle': 60, 'current_offset': 49, 'target_offset': 26, 'lengthen_pct': 20, 'shorten_pct': 13}, [72, 72, 72, 61]), ({'cycle': 150, 'current_offset': 76, 'target_offset': 139, 'lengthen_pct': 20, 'shorten_pct': 20}, [180, 180, 153]), ({'cycle': 100, 'current_offset': 10, 'target_offset': 50, 'lengthen_pct': 20, 'shorten_pct': 20}, [120, 120]), ({'cycle': 90, 'current_offset': 30, 'target_offset': 30, 'lengthen_pct': 20, 'shorten_pct': 17}, []), ({'cycle': 100, 'current_offset': 95, 'target_offset': 74, 'lengthen_pct': 10, 'shorten_pct': 10}, [90, 90, 99]), ({'cycle': 140, 'current_offset': 130, 'target_offset': 73, 'lengthen_pct': 20, 'shorten_pct': 17}, [168, 168, 167]), ({'cycle': 60, 'current_offset': 28, 'target_offset': 31, 'lengthen_pct': 17, 'shorten_pct': 13}, [63]), ({'cycle': 120, 'current_offset': 90, 'target_offset': 20, 'lengthen_pct': 17, 'shorten_pct': 13}, [140, 140, 130])], [({'cycle': 100, 'current_offset': 10, 'target_offset': 50, 'lengthen_pct': 20, 'shorten_pct': 20}, [120, 120]), ({'cycle': 70, 'current_offset': 5, 'target_offset': 46, 'lengthen_pct': 20, 'shorten_pct': 10}, [84, 84, 83]), ({'cycle': 120, 'current_offset': 24, 'target_offset': 105, 'lengthen_pct': 20, 'shorten_pct': 10}, [144, 144, 144, 129]), ({'cycle': 90, 'current_offset': 30, 'target_offset': 30, 'lengthen_pct': 20, 'shorten_pct': 17}, []), ({'cycle': 120, 'current_offset': 90, 'target_offset': 20, 'lengthen_pct': 17, 'shorten_pct': 13}, [140, 140, 130]), ({'cycle': 150, 'current_offset': 78, 'target_offset': 16, 'lengthen_pct': 17, 'shorten_pct': 13}, [175, 175, 175, 163]), ({'cycle': 90, 'current_offset': 74, 'target_offset': 23, 'lengthen_pct': 17, 'shorten_pct': 20}, [105, 105, 99]), ({'cycle': 90, 'current_offset': 77, 'target_offset': 35, 'lengthen_pct': 25, 'shorten_pct': 13}, [112, 112, 94])], [({'cycle': 100, 'current_offset': 96, 'target_offset': 58, 'lengthen_pct': 25, 'shorten_pct': 10}, [125, 125, 112]), ({'cycle': 120, 'current_offset': 110, 'target_offset': 48, 'lengthen_pct': 10, 'shorten_pct': 13}, [132, 132, 132, 132, 130]), ({'cycle': 110, 'current_offset': 4, 'target_offset': 71, 'lengthen_pct': 25, 'shorten_pct': 13}, [137, 137, 123]), ({'cycle': 120, 'current_offset': 90, 'target_offset': 20, 'lengthen_pct': 17, 'shorten_pct': 13}, [140, 140, 130]), ({'cycle': 150, 'current_offset': 34, 'target_offset': 105, 'lengthen_pct': 17, 'shorten_pct': 20}, [175, 175, 171]), ({'cycle': 90, 'current_offset': 33, 'target_offset': 78, 'lengthen_pct': 25, 'shorten_pct': 17}, [112, 112, 91]), ({'cycle': 90, 'current_offset': 30, 'target_offset': 30, 'lengthen_pct': 20, 'shorten_pct': 17}, []), ({'cycle': 100, 'current_offset': 10, 'target_offset': 50, 'lengthen_pct': 20, 'shorten_pct': 20}, [120, 120])], [({'cycle': 90, 'current_offset': 57, 'target_offset': 2, 'lengthen_pct': 10, 'shorten_pct': 20}, [99, 99, 99, 98]), ({'cycle': 110, 'current_offset': 14, 'target_offset': 86, 'lengthen_pct': 25, 'shorten_pct': 10}, [137, 137, 128]), ({'cycle': 120, 'current_offset': 90, 'target_offset': 20, 'lengthen_pct': 17, 'shorten_pct': 13}, [140, 140, 130]), ({'cycle': 90, 'current_offset': 30, 'target_offset': 30, 'lengthen_pct': 20, 'shorten_pct': 17}, []), ({'cycle': 100, 'current_offset': 10, 'target_offset': 50, 'lengthen_pct': 20, 'shorten_pct': 20}, [120, 120]), ({'cycle': 90, 'current_offset': 13, 'target_offset': 68, 'lengthen_pct': 25, 'shorten_pct': 17}, [112, 112, 101]), ({'cycle': 140, 'current_offset': 52, 'target_offset': 120, 'lengthen_pct': 17, 'shorten_pct': 20}, [163, 163, 162]), ({'cycle': 60, 'current_offset': 16, 'target_offset': 18, 'lengthen_pct': 10, 'shorten_pct': 20}, [62])], [({'cycle': 90, 'current_offset': 30, 'target_offset': 30, 'lengthen_pct': 20, 'shorten_pct': 17}, []), ({'cycle': 100, 'current_offset': 10, 'target_offset': 50, 'lengthen_pct': 20, 'shorten_pct': 20}, [120, 120]), ({'cycle': 90, 'current_offset': 26, 'target_offset': 75, 'lengthen_pct': 20, 'shorten_pct': 13}, [108, 108, 103]), ({'cycle': 70, 'current_offset': 20, 'target_offset': 49, 'lengthen_pct': 10, 'shorten_pct': 20}, [56, 56, 57]), ({'cycle': 80, 'current_offset': 58, 'target_offset': 37, 'lengthen_pct': 25, 'shorten_pct': 10}, [100, 100, 99]), ({'cycle': 100, 'current_offset': 66, 'target_offset': 1, 'lengthen_pct': 10, 'shorten_pct': 17}, [110, 110, 110, 105]), ({'cycle': 120, 'current_offset': 90, 'target_offset': 20, 'lengthen_pct': 17, 'shorten_pct': 13}, [140, 140, 130]), ({'cycle': 60, 'current_offset': 11, 'target_offset': 44, 'lengthen_pct': 17, 'shorten_pct': 13}, [70, 70, 70, 63])]]
for i, (args, expected) in enumerate(fixtures[N-1]):
check('timing oracle' + ' %d' % i, solve(args), expected)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
| Boundary fixture | Actual | Expected | Outcome |
|---|---|---|---|
| timing oracle 0 | [72, 72, 72, 61] | [72, 72, 72, 61] | Passed |
| timing oracle 1 | [180, 180, 153] | [180, 180, 153] | Passed |
| timing oracle 2 | [120, 120] | [120, 120] | Passed |
| timing oracle 3 | [] | [] | Passed |
| timing oracle 4 | [90, 90, 99] | [90, 90, 99] | Passed |
| timing oracle 5 | [168, 168, 167] | [168, 168, 167] | Passed |
| timing oracle 6 | [63] | [63] | Passed |
| timing oracle 7 | [140, 140, 130] | [140, 140, 130] | Passed |
SHA-256 / 92827f7fdeaa1edcdde3d2bcb9a1a9b166e09c4114a6e69e97b029af28bb4e6d
Verification & scope
A deterministic, bounded toy model with a stipulated contract; it makes no claim of conformance to any agency manual or 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.
Observations recorded using Python 3.12.14 at 2026-09-29T14:47:58.708243+00:00.
Case digest / adb6db4ab636bfeee9c115aa5c78ddba2af40c79b39fad71f3adc297ce413513