FAILURE MAP
← Case archive

FA-85646 / Ride-hailing fare and surge pricing / Open access

Request exactly one window old still counted · case 01

Requests from exactly ten minutes ago keep inflating demand.

Verified by executionVariant 1 · 7 checks per implementationDownload source bundle ↓JSON ↗

ROOT CAUSE

The window start is inclusive.

VERIFIED REPAIR

Use the half-open window (now - window, now].

Unsuccessful approach: Making the end exclusive drops requests arriving at the evaluation instant.

Case contract

Surge demand counts ride requests [t, rider, zone] in the window (now - window, now]. Each rider counts once, in the zone of their latest request in the window (a later-listed request wins a timestamp tie). Return zone -> count for zones with demand.

Why this case matters

Ride-hailing prices are computed per trip at scale; ordering, unit and boundary slips become systematic over- or under-charging.

1 / The failure

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(requests, now, window):
    latest = {}
    for t, rider, zone in requests:
        if now - window <= t <= now:
            key = rider
            if key not in latest or t >= latest[key][0]:
                latest[key] = (t, zone)
    out = {}
    for t, zone in latest.values():
        out[zone] = out.get(zone, 0) + 1
    return out
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('regression: window start exclusive',
   [[[500, 'u3', 'Z2'], [700, 'u3', 'Z1'], [400, 'u4', 'Z2'], [401, 'u1', 'Z1']], 1000, 600], {'Z1': 2}),
  ('partial repair probe: window start exclusive',
   [[[400, 'u3', 'Z2'], [400, 'u4', 'Z1'], [1000, 'u4', 'Z1'], [1001, 'u2', 'Z1'], [700, 'u2', 'Z2'],
     [1001, 'u1', 'Z1'], [401, 'u2', 'Z1'], [400, 'u2', 'Z1']],
    1000, 600],
   {'Z1': 1, 'Z2': 1}),
  ('second regression',
   [[[1000, 'u1', 'Z2'], [500, 'u3', 'Z2'], [1001, 'u2', 'Z2'], [401, 'u4', 'Z1']], 1000, 600],
   {'Z1': 1, 'Z2': 2}),
  ('normal control 1',
   [[[1000, 'u4', 'Z2'], [999, 'u1', 'Z2'], [700, 'u4', 'Z2'], [401, 'u3', 'Z1'], [1001, 'u1', 'Z1']], 1000,
    600],
   {'Z1': 1, 'Z2': 2}),
  ('normal control 2', [[[999, 'u1', 'Z2'], [500, 'u1', 'Z2']], 1000, 600], {'Z2': 1}),
  ('normal control 3',
   [[[700, 'u3', 'Z2'], [1001, 'u2', 'Z1'], [400, 'u4', 'Z1'], [500, 'u1', 'Z2'], [401, 'u4', 'Z2'],
     [1000, 'u4', 'Z2']],
    1000, 600],
   {'Z2': 3}),
  ('normal control 4',
   [[[1000, 'u3', 'Z2'], [1001, 'u2', 'Z1'], [999, 'u3', 'Z2'], [500, 'u2', 'Z1'], [401, 'u3', 'Z1']], 1000,
    600],
   {'Z1': 1, 'Z2': 1})],
 [('regression: window start exclusive', [[[700, 'u3', 'Z2'], [400, 'u4', 'Z1']], 1000, 600], {'Z2': 1}),
  ('partial repair probe: window start exclusive',
   [[[1000, 'u3', 'Z2'], [999, 'u4', 'Z1'], [401, 'u2', 'Z2'], [500, 'u4', 'Z1'], [401, 'u4', 'Z1'],
     [1001, 'u2', 'Z2']],
    1000, 600],
   {'Z1': 1, 'Z2': 2}),
  ('second regression', [[[1000, 'u1', 'Z2'], [999, 'u3', 'Z2'], [700, 'u2', 'Z1']], 1000, 600],
   {'Z1': 1, 'Z2': 2}),
  ('normal control 1',
   [[[999, 'u2', 'Z1'], [400, 'u1', 'Z1'], [999, 'u1', 'Z1'], [1000, 'u1', 'Z1'], [999, 'u2', 'Z1']], 1000,
    600],
   {'Z1': 2}),
  ('normal control 2',
   [[[999, 'u2', 'Z2'], [401, 'u4', 'Z1'], [401, 'u3', 'Z1'], [1001, 'u1', 'Z2'], [700, 'u4', 'Z1']], 1000,
    600],
   {'Z1': 2, 'Z2': 1}),
  ('normal control 3',
   [[[999, 'u1', 'Z1'], [1000, 'u1', 'Z1'], [700, 'u2', 'Z1'], [500, 'u3', 'Z2'], [401, 'u4', 'Z2'],
     [500, 'u4', 'Z1'], [999, 'u1', 'Z1'], [700, 'u3', 'Z1']],
    1000, 600],
   {'Z1': 4}),
  ('normal control 4', [[[999, 'u1', 'Z1'], [1001, 'u2', 'Z2']], 1000, 600], {'Z1': 1})],
 [('regression: window start exclusive',
   [[[500, 'u3', 'Z2'], [401, 'u2', 'Z1'], [1001, 'u1', 'Z2'], [400, 'u1', 'Z2']], 1000, 600],
   {'Z1': 1, 'Z2': 1}),
  ('partial repair probe: window start exclusive',
   [[[1000, 'u4', 'Z2'], [400, 'u4', 'Z1'], [1001, 'u3', 'Z2'], [999, 'u3', 'Z2'], [1001, 'u4', 'Z2']], 1000,
    600],
   {'Z2': 2}),
  ('second regression',
   [[[1000, 'u1', 'Z1'], [1001, 'u2', 'Z1'], [1000, 'u3', 'Z2'], [500, 'u3', 'Z2'], [500, 'u2', 'Z2'],
     [500, 'u3', 'Z2'], [700, 'u4', 'Z1'], [500, 'u3', 'Z2']],
    1000, 600],
   {'Z1': 2, 'Z2': 2}),
  ('normal control 1',
   [[[500, 'u2', 'Z1'], [401, 'u1', 'Z2'], [401, 'u2', 'Z1'], [999, 'u2', 'Z2'], [700, 'u2', 'Z1']], 1000,
    600],
   {'Z2': 2}),
  ('normal control 2',
   [[[700, 'u3', 'Z1'], [500, 'u3', 'Z2'], [1000, 'u3', 'Z2'], [400, 'u3', 'Z1'], [1001, 'u4', 'Z1'],
     [1000, 'u4', 'Z1'], [999, 'u4', 'Z2']],
    1000, 600],
   {'Z1': 1, 'Z2': 1}),
  ('normal control 3',
   [[[500, 'u4', 'Z1'], [1001, 'u3', 'Z2'], [1001, 'u2', 'Z1'], [500, 'u2', 'Z1'], [401, 'u3', 'Z2'],
     [400, 'u2', 'Z1'], [401, 'u1', 'Z2'], [999, 'u2', 'Z2']],
    1000, 600],
   {'Z1': 1, 'Z2': 3}),
  ('normal control 4',
   [[[999, 'u3', 'Z2'], [500, 'u4', 'Z2'], [999, 'u2', 'Z2'], [1001, 'u2', 'Z1']], 1000, 600], {'Z2': 3})],
 [('regression: window start exclusive', [[[700, 'u2', 'Z1'], [400, 'u1', 'Z1']], 1000, 600], {'Z1': 1}),
  ('partial repair probe: window start exclusive',
   [[[1000, 'u3', 'Z1'], [700, 'u4', 'Z2'], [999, 'u1', 'Z1'], [700, 'u2', 'Z2'], [500, 'u3', 'Z2'],
     [999, 'u1', 'Z2'], [1000, 'u1', 'Z1']],
    1000, 600],
   {'Z1': 2, 'Z2': 2}),
  ('second regression',
   [[[999, 'u3', 'Z2'], [700, 'u2', 'Z2'], [700, 'u3', 'Z1'], [1000, 'u4', 'Z1'], [999, 'u3', 'Z2'],
     [400, 'u3', 'Z2'], [401, 'u4', 'Z2'], [500, 'u2', 'Z2']],
    1000, 600],
   {'Z1': 1, 'Z2': 2}),
  ('normal control 1',
   [[[700, 'u3', 'Z2'], [999, 'u1', 'Z2'], [500, 'u3', 'Z1'], [400, 'u3', 'Z2'], [400, 'u1', 'Z2'],
     [400, 'u3', 'Z2'], [999, 'u2', 'Z1']],
    1000, 600],
   {'Z1': 1, 'Z2': 2}),
  ('normal control 2',
   [[[500, 'u2', 'Z2'], [999, 'u3', 'Z1'], [1001, 'u3', 'Z1'], [1001, 'u3', 'Z1']], 1000, 600],
   {'Z1': 1, 'Z2': 1}),
  ('normal control 3',
   [[[999, 'u1', 'Z2'], [401, 'u1', 'Z1'], [500, 'u2', 'Z1'], [500, 'u4', 'Z2'], [1000, 'u1', 'Z2'],
     [400, 'u2', 'Z2'], [401, 'u2', 'Z2'], [999, 'u2', 'Z2']],
    1000, 600],
   {'Z2': 3}),
  ('normal control 4',
   [[[999, 'u2', 'Z1'], [400, 'u2', 'Z1'], [999, 'u2', 'Z2'], [500, 'u1', 'Z2'], [401, 'u1', 'Z1'],
     [999, 'u1', 'Z2'], [1001, 'u4', 'Z1']],
    1000, 600],
   {'Z2': 2})],
 [('regression: window start exclusive',
   [[[500, 'u1', 'Z1'], [401, 'u2', 'Z2'], [400, 'u3', 'Z2'], [400, 'u1', 'Z2'], [400, 'u1', 'Z1'],
     [400, 'u3', 'Z2'], [400, 'u3', 'Z1']],
    1000, 600],
   {'Z1': 1, 'Z2': 1}),
  ('partial repair probe: window start exclusive',
   [[[999, 'u4', 'Z2'], [1000, 'u2', 'Z2'], [500, 'u3', 'Z1'], [700, 'u3', 'Z1'], [1001, 'u1', 'Z2'],
     [1001, 'u2', 'Z2'], [999, 'u2', 'Z1'], [400, 'u2', 'Z2']],
    1000, 600],
   {'Z1': 1, 'Z2': 2}),
  ('second regression', [[[999, 'u1', 'Z1'], [1000, 'u2', 'Z1'], [999, 'u4', 'Z1']], 1000, 600], {'Z1': 3}),
  ('normal control 1', [[[999, 'u3', 'Z1'], [700, 'u4', 'Z2']], 1000, 600], {'Z1': 1, 'Z2': 1}),
  ('normal control 2',
   [[[500, 'u4', 'Z1'], [1000, 'u1', 'Z1'], [400, 'u1', 'Z2'], [401, 'u1', 'Z1']], 1000, 600], {'Z1': 2}),
  ('normal control 3',
   [[[400, 'u3', 'Z1'], [700, 'u2', 'Z2'], [401, 'u3', 'Z2'], [500, 'u1', 'Z2'], [1001, 'u2', 'Z2'],
     [401, 'u3', 'Z1'], [700, 'u1', 'Z2'], [400, 'u2', 'Z2']],
    1000, 600],
   {'Z1': 1, 'Z2': 2}),
  ('normal control 4',
   [[[401, 'u4', 'Z2'], [700, 'u1', 'Z2'], [500, 'u3', 'Z2'], [1001, 'u4', 'Z1'], [700, 'u4', 'Z1'],
     [1000, 'u3', 'Z2'], [500, 'u2', 'Z2']],
    1000, 600],
   {'Z1': 1, 'Z2': 3})]]
for label, args, expected in fixtures[N-1]:
    check(label, 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 fixtureActualExpectedOutcome
regression: window start exclusive{'Z1': 2, 'Z2': 1}{'Z1': 2}Failed
partial repair probe: window start exclusive{'Z1': 1, 'Z2': 2}{'Z1': 1, 'Z2': 1}Failed
second regression{'Z1': 1, 'Z2': 2}{'Z1': 1, 'Z2': 2}Passed
normal control 1{'Z1': 1, 'Z2': 2}{'Z1': 1, 'Z2': 2}Passed
normal control 2{'Z2': 1}{'Z2': 1}Passed
normal control 3{'Z2': 3}{'Z2': 3}Passed
normal control 4{'Z1': 1, 'Z2': 1}{'Z1': 1, 'Z2': 1}Passed

SHA-256 / 4b34a723edcdec02b33ffec790e2916476d69df23802fd01b9e6f841d5bc58c4

2 / The unsuccessful fix

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(requests, now, window):
    latest = {}
    for t, rider, zone in requests:
        if now - window < t < now:
            key = rider
            if key not in latest or t >= latest[key][0]:
                latest[key] = (t, zone)
    out = {}
    for t, zone in latest.values():
        out[zone] = out.get(zone, 0) + 1
    return out
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('regression: window start exclusive',
   [[[500, 'u3', 'Z2'], [700, 'u3', 'Z1'], [400, 'u4', 'Z2'], [401, 'u1', 'Z1']], 1000, 600], {'Z1': 2}),
  ('partial repair probe: window start exclusive',
   [[[400, 'u3', 'Z2'], [400, 'u4', 'Z1'], [1000, 'u4', 'Z1'], [1001, 'u2', 'Z1'], [700, 'u2', 'Z2'],
     [1001, 'u1', 'Z1'], [401, 'u2', 'Z1'], [400, 'u2', 'Z1']],
    1000, 600],
   {'Z1': 1, 'Z2': 1}),
  ('second regression',
   [[[1000, 'u1', 'Z2'], [500, 'u3', 'Z2'], [1001, 'u2', 'Z2'], [401, 'u4', 'Z1']], 1000, 600],
   {'Z1': 1, 'Z2': 2}),
  ('normal control 1',
   [[[1000, 'u4', 'Z2'], [999, 'u1', 'Z2'], [700, 'u4', 'Z2'], [401, 'u3', 'Z1'], [1001, 'u1', 'Z1']], 1000,
    600],
   {'Z1': 1, 'Z2': 2}),
  ('normal control 2', [[[999, 'u1', 'Z2'], [500, 'u1', 'Z2']], 1000, 600], {'Z2': 1}),
  ('normal control 3',
   [[[700, 'u3', 'Z2'], [1001, 'u2', 'Z1'], [400, 'u4', 'Z1'], [500, 'u1', 'Z2'], [401, 'u4', 'Z2'],
     [1000, 'u4', 'Z2']],
    1000, 600],
   {'Z2': 3}),
  ('normal control 4',
   [[[1000, 'u3', 'Z2'], [1001, 'u2', 'Z1'], [999, 'u3', 'Z2'], [500, 'u2', 'Z1'], [401, 'u3', 'Z1']], 1000,
    600],
   {'Z1': 1, 'Z2': 1})],
 [('regression: window start exclusive', [[[700, 'u3', 'Z2'], [400, 'u4', 'Z1']], 1000, 600], {'Z2': 1}),
  ('partial repair probe: window start exclusive',
   [[[1000, 'u3', 'Z2'], [999, 'u4', 'Z1'], [401, 'u2', 'Z2'], [500, 'u4', 'Z1'], [401, 'u4', 'Z1'],
     [1001, 'u2', 'Z2']],
    1000, 600],
   {'Z1': 1, 'Z2': 2}),
  ('second regression', [[[1000, 'u1', 'Z2'], [999, 'u3', 'Z2'], [700, 'u2', 'Z1']], 1000, 600],
   {'Z1': 1, 'Z2': 2}),
  ('normal control 1',
   [[[999, 'u2', 'Z1'], [400, 'u1', 'Z1'], [999, 'u1', 'Z1'], [1000, 'u1', 'Z1'], [999, 'u2', 'Z1']], 1000,
    600],
   {'Z1': 2}),
  ('normal control 2',
   [[[999, 'u2', 'Z2'], [401, 'u4', 'Z1'], [401, 'u3', 'Z1'], [1001, 'u1', 'Z2'], [700, 'u4', 'Z1']], 1000,
    600],
   {'Z1': 2, 'Z2': 1}),
  ('normal control 3',
   [[[999, 'u1', 'Z1'], [1000, 'u1', 'Z1'], [700, 'u2', 'Z1'], [500, 'u3', 'Z2'], [401, 'u4', 'Z2'],
     [500, 'u4', 'Z1'], [999, 'u1', 'Z1'], [700, 'u3', 'Z1']],
    1000, 600],
   {'Z1': 4}),
  ('normal control 4', [[[999, 'u1', 'Z1'], [1001, 'u2', 'Z2']], 1000, 600], {'Z1': 1})],
 [('regression: window start exclusive',
   [[[500, 'u3', 'Z2'], [401, 'u2', 'Z1'], [1001, 'u1', 'Z2'], [400, 'u1', 'Z2']], 1000, 600],
   {'Z1': 1, 'Z2': 1}),
  ('partial repair probe: window start exclusive',
   [[[1000, 'u4', 'Z2'], [400, 'u4', 'Z1'], [1001, 'u3', 'Z2'], [999, 'u3', 'Z2'], [1001, 'u4', 'Z2']], 1000,
    600],
   {'Z2': 2}),
  ('second regression',
   [[[1000, 'u1', 'Z1'], [1001, 'u2', 'Z1'], [1000, 'u3', 'Z2'], [500, 'u3', 'Z2'], [500, 'u2', 'Z2'],
     [500, 'u3', 'Z2'], [700, 'u4', 'Z1'], [500, 'u3', 'Z2']],
    1000, 600],
   {'Z1': 2, 'Z2': 2}),
  ('normal control 1',
   [[[500, 'u2', 'Z1'], [401, 'u1', 'Z2'], [401, 'u2', 'Z1'], [999, 'u2', 'Z2'], [700, 'u2', 'Z1']], 1000,
    600],
   {'Z2': 2}),
  ('normal control 2',
   [[[700, 'u3', 'Z1'], [500, 'u3', 'Z2'], [1000, 'u3', 'Z2'], [400, 'u3', 'Z1'], [1001, 'u4', 'Z1'],
     [1000, 'u4', 'Z1'], [999, 'u4', 'Z2']],
    1000, 600],
   {'Z1': 1, 'Z2': 1}),
  ('normal control 3',
   [[[500, 'u4', 'Z1'], [1001, 'u3', 'Z2'], [1001, 'u2', 'Z1'], [500, 'u2', 'Z1'], [401, 'u3', 'Z2'],
     [400, 'u2', 'Z1'], [401, 'u1', 'Z2'], [999, 'u2', 'Z2']],
    1000, 600],
   {'Z1': 1, 'Z2': 3}),
  ('normal control 4',
   [[[999, 'u3', 'Z2'], [500, 'u4', 'Z2'], [999, 'u2', 'Z2'], [1001, 'u2', 'Z1']], 1000, 600], {'Z2': 3})],
 [('regression: window start exclusive', [[[700, 'u2', 'Z1'], [400, 'u1', 'Z1']], 1000, 600], {'Z1': 1}),
  ('partial repair probe: window start exclusive',
   [[[1000, 'u3', 'Z1'], [700, 'u4', 'Z2'], [999, 'u1', 'Z1'], [700, 'u2', 'Z2'], [500, 'u3', 'Z2'],
     [999, 'u1', 'Z2'], [1000, 'u1', 'Z1']],
    1000, 600],
   {'Z1': 2, 'Z2': 2}),
  ('second regression',
   [[[999, 'u3', 'Z2'], [700, 'u2', 'Z2'], [700, 'u3', 'Z1'], [1000, 'u4', 'Z1'], [999, 'u3', 'Z2'],
     [400, 'u3', 'Z2'], [401, 'u4', 'Z2'], [500, 'u2', 'Z2']],
    1000, 600],
   {'Z1': 1, 'Z2': 2}),
  ('normal control 1',
   [[[700, 'u3', 'Z2'], [999, 'u1', 'Z2'], [500, 'u3', 'Z1'], [400, 'u3', 'Z2'], [400, 'u1', 'Z2'],
     [400, 'u3', 'Z2'], [999, 'u2', 'Z1']],
    1000, 600],
   {'Z1': 1, 'Z2': 2}),
  ('normal control 2',
   [[[500, 'u2', 'Z2'], [999, 'u3', 'Z1'], [1001, 'u3', 'Z1'], [1001, 'u3', 'Z1']], 1000, 600],
   {'Z1': 1, 'Z2': 1}),
  ('normal control 3',
   [[[999, 'u1', 'Z2'], [401, 'u1', 'Z1'], [500, 'u2', 'Z1'], [500, 'u4', 'Z2'], [1000, 'u1', 'Z2'],
     [400, 'u2', 'Z2'], [401, 'u2', 'Z2'], [999, 'u2', 'Z2']],
    1000, 600],
   {'Z2': 3}),
  ('normal control 4',
   [[[999, 'u2', 'Z1'], [400, 'u2', 'Z1'], [999, 'u2', 'Z2'], [500, 'u1', 'Z2'], [401, 'u1', 'Z1'],
     [999, 'u1', 'Z2'], [1001, 'u4', 'Z1']],
    1000, 600],
   {'Z2': 2})],
 [('regression: window start exclusive',
   [[[500, 'u1', 'Z1'], [401, 'u2', 'Z2'], [400, 'u3', 'Z2'], [400, 'u1', 'Z2'], [400, 'u1', 'Z1'],
     [400, 'u3', 'Z2'], [400, 'u3', 'Z1']],
    1000, 600],
   {'Z1': 1, 'Z2': 1}),
  ('partial repair probe: window start exclusive',
   [[[999, 'u4', 'Z2'], [1000, 'u2', 'Z2'], [500, 'u3', 'Z1'], [700, 'u3', 'Z1'], [1001, 'u1', 'Z2'],
     [1001, 'u2', 'Z2'], [999, 'u2', 'Z1'], [400, 'u2', 'Z2']],
    1000, 600],
   {'Z1': 1, 'Z2': 2}),
  ('second regression', [[[999, 'u1', 'Z1'], [1000, 'u2', 'Z1'], [999, 'u4', 'Z1']], 1000, 600], {'Z1': 3}),
  ('normal control 1', [[[999, 'u3', 'Z1'], [700, 'u4', 'Z2']], 1000, 600], {'Z1': 1, 'Z2': 1}),
  ('normal control 2',
   [[[500, 'u4', 'Z1'], [1000, 'u1', 'Z1'], [400, 'u1', 'Z2'], [401, 'u1', 'Z1']], 1000, 600], {'Z1': 2}),
  ('normal control 3',
   [[[400, 'u3', 'Z1'], [700, 'u2', 'Z2'], [401, 'u3', 'Z2'], [500, 'u1', 'Z2'], [1001, 'u2', 'Z2'],
     [401, 'u3', 'Z1'], [700, 'u1', 'Z2'], [400, 'u2', 'Z2']],
    1000, 600],
   {'Z1': 1, 'Z2': 2}),
  ('normal control 4',
   [[[401, 'u4', 'Z2'], [700, 'u1', 'Z2'], [500, 'u3', 'Z2'], [1001, 'u4', 'Z1'], [700, 'u4', 'Z1'],
     [1000, 'u3', 'Z2'], [500, 'u2', 'Z2']],
    1000, 600],
   {'Z1': 1, 'Z2': 3})]]
for label, args, expected in fixtures[N-1]:
    check(label, 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 fixtureActualExpectedOutcome
regression: window start exclusive{'Z1': 2}{'Z1': 2}Passed
partial repair probe: window start exclusive{'Z2': 1}{'Z1': 1, 'Z2': 1}Failed
second regression{'Z1': 1, 'Z2': 1}{'Z1': 1, 'Z2': 2}Failed
normal control 1{'Z1': 1, 'Z2': 2}{'Z1': 1, 'Z2': 2}Passed
normal control 2{'Z2': 1}{'Z2': 1}Passed
normal control 3{'Z2': 3}{'Z2': 3}Passed
normal control 4{'Z1': 1, 'Z2': 1}{'Z1': 1, 'Z2': 1}Passed

SHA-256 / cfa0fe8e876b24103b334ce8671b4180c2d16f42e4abc660147d7f35fc347915

3 / The verified repair

Exit 0
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(requests, now, window):
    latest = {}
    for t, rider, zone in requests:
        if now - window < t <= now:
            key = rider
            if key not in latest or t >= latest[key][0]:
                latest[key] = (t, zone)
    out = {}
    for t, zone in latest.values():
        out[zone] = out.get(zone, 0) + 1
    return out
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('regression: window start exclusive',
   [[[500, 'u3', 'Z2'], [700, 'u3', 'Z1'], [400, 'u4', 'Z2'], [401, 'u1', 'Z1']], 1000, 600], {'Z1': 2}),
  ('partial repair probe: window start exclusive',
   [[[400, 'u3', 'Z2'], [400, 'u4', 'Z1'], [1000, 'u4', 'Z1'], [1001, 'u2', 'Z1'], [700, 'u2', 'Z2'],
     [1001, 'u1', 'Z1'], [401, 'u2', 'Z1'], [400, 'u2', 'Z1']],
    1000, 600],
   {'Z1': 1, 'Z2': 1}),
  ('second regression',
   [[[1000, 'u1', 'Z2'], [500, 'u3', 'Z2'], [1001, 'u2', 'Z2'], [401, 'u4', 'Z1']], 1000, 600],
   {'Z1': 1, 'Z2': 2}),
  ('normal control 1',
   [[[1000, 'u4', 'Z2'], [999, 'u1', 'Z2'], [700, 'u4', 'Z2'], [401, 'u3', 'Z1'], [1001, 'u1', 'Z1']], 1000,
    600],
   {'Z1': 1, 'Z2': 2}),
  ('normal control 2', [[[999, 'u1', 'Z2'], [500, 'u1', 'Z2']], 1000, 600], {'Z2': 1}),
  ('normal control 3',
   [[[700, 'u3', 'Z2'], [1001, 'u2', 'Z1'], [400, 'u4', 'Z1'], [500, 'u1', 'Z2'], [401, 'u4', 'Z2'],
     [1000, 'u4', 'Z2']],
    1000, 600],
   {'Z2': 3}),
  ('normal control 4',
   [[[1000, 'u3', 'Z2'], [1001, 'u2', 'Z1'], [999, 'u3', 'Z2'], [500, 'u2', 'Z1'], [401, 'u3', 'Z1']], 1000,
    600],
   {'Z1': 1, 'Z2': 1})],
 [('regression: window start exclusive', [[[700, 'u3', 'Z2'], [400, 'u4', 'Z1']], 1000, 600], {'Z2': 1}),
  ('partial repair probe: window start exclusive',
   [[[1000, 'u3', 'Z2'], [999, 'u4', 'Z1'], [401, 'u2', 'Z2'], [500, 'u4', 'Z1'], [401, 'u4', 'Z1'],
     [1001, 'u2', 'Z2']],
    1000, 600],
   {'Z1': 1, 'Z2': 2}),
  ('second regression', [[[1000, 'u1', 'Z2'], [999, 'u3', 'Z2'], [700, 'u2', 'Z1']], 1000, 600],
   {'Z1': 1, 'Z2': 2}),
  ('normal control 1',
   [[[999, 'u2', 'Z1'], [400, 'u1', 'Z1'], [999, 'u1', 'Z1'], [1000, 'u1', 'Z1'], [999, 'u2', 'Z1']], 1000,
    600],
   {'Z1': 2}),
  ('normal control 2',
   [[[999, 'u2', 'Z2'], [401, 'u4', 'Z1'], [401, 'u3', 'Z1'], [1001, 'u1', 'Z2'], [700, 'u4', 'Z1']], 1000,
    600],
   {'Z1': 2, 'Z2': 1}),
  ('normal control 3',
   [[[999, 'u1', 'Z1'], [1000, 'u1', 'Z1'], [700, 'u2', 'Z1'], [500, 'u3', 'Z2'], [401, 'u4', 'Z2'],
     [500, 'u4', 'Z1'], [999, 'u1', 'Z1'], [700, 'u3', 'Z1']],
    1000, 600],
   {'Z1': 4}),
  ('normal control 4', [[[999, 'u1', 'Z1'], [1001, 'u2', 'Z2']], 1000, 600], {'Z1': 1})],
 [('regression: window start exclusive',
   [[[500, 'u3', 'Z2'], [401, 'u2', 'Z1'], [1001, 'u1', 'Z2'], [400, 'u1', 'Z2']], 1000, 600],
   {'Z1': 1, 'Z2': 1}),
  ('partial repair probe: window start exclusive',
   [[[1000, 'u4', 'Z2'], [400, 'u4', 'Z1'], [1001, 'u3', 'Z2'], [999, 'u3', 'Z2'], [1001, 'u4', 'Z2']], 1000,
    600],
   {'Z2': 2}),
  ('second regression',
   [[[1000, 'u1', 'Z1'], [1001, 'u2', 'Z1'], [1000, 'u3', 'Z2'], [500, 'u3', 'Z2'], [500, 'u2', 'Z2'],
     [500, 'u3', 'Z2'], [700, 'u4', 'Z1'], [500, 'u3', 'Z2']],
    1000, 600],
   {'Z1': 2, 'Z2': 2}),
  ('normal control 1',
   [[[500, 'u2', 'Z1'], [401, 'u1', 'Z2'], [401, 'u2', 'Z1'], [999, 'u2', 'Z2'], [700, 'u2', 'Z1']], 1000,
    600],
   {'Z2': 2}),
  ('normal control 2',
   [[[700, 'u3', 'Z1'], [500, 'u3', 'Z2'], [1000, 'u3', 'Z2'], [400, 'u3', 'Z1'], [1001, 'u4', 'Z1'],
     [1000, 'u4', 'Z1'], [999, 'u4', 'Z2']],
    1000, 600],
   {'Z1': 1, 'Z2': 1}),
  ('normal control 3',
   [[[500, 'u4', 'Z1'], [1001, 'u3', 'Z2'], [1001, 'u2', 'Z1'], [500, 'u2', 'Z1'], [401, 'u3', 'Z2'],
     [400, 'u2', 'Z1'], [401, 'u1', 'Z2'], [999, 'u2', 'Z2']],
    1000, 600],
   {'Z1': 1, 'Z2': 3}),
  ('normal control 4',
   [[[999, 'u3', 'Z2'], [500, 'u4', 'Z2'], [999, 'u2', 'Z2'], [1001, 'u2', 'Z1']], 1000, 600], {'Z2': 3})],
 [('regression: window start exclusive', [[[700, 'u2', 'Z1'], [400, 'u1', 'Z1']], 1000, 600], {'Z1': 1}),
  ('partial repair probe: window start exclusive',
   [[[1000, 'u3', 'Z1'], [700, 'u4', 'Z2'], [999, 'u1', 'Z1'], [700, 'u2', 'Z2'], [500, 'u3', 'Z2'],
     [999, 'u1', 'Z2'], [1000, 'u1', 'Z1']],
    1000, 600],
   {'Z1': 2, 'Z2': 2}),
  ('second regression',
   [[[999, 'u3', 'Z2'], [700, 'u2', 'Z2'], [700, 'u3', 'Z1'], [1000, 'u4', 'Z1'], [999, 'u3', 'Z2'],
     [400, 'u3', 'Z2'], [401, 'u4', 'Z2'], [500, 'u2', 'Z2']],
    1000, 600],
   {'Z1': 1, 'Z2': 2}),
  ('normal control 1',
   [[[700, 'u3', 'Z2'], [999, 'u1', 'Z2'], [500, 'u3', 'Z1'], [400, 'u3', 'Z2'], [400, 'u1', 'Z2'],
     [400, 'u3', 'Z2'], [999, 'u2', 'Z1']],
    1000, 600],
   {'Z1': 1, 'Z2': 2}),
  ('normal control 2',
   [[[500, 'u2', 'Z2'], [999, 'u3', 'Z1'], [1001, 'u3', 'Z1'], [1001, 'u3', 'Z1']], 1000, 600],
   {'Z1': 1, 'Z2': 1}),
  ('normal control 3',
   [[[999, 'u1', 'Z2'], [401, 'u1', 'Z1'], [500, 'u2', 'Z1'], [500, 'u4', 'Z2'], [1000, 'u1', 'Z2'],
     [400, 'u2', 'Z2'], [401, 'u2', 'Z2'], [999, 'u2', 'Z2']],
    1000, 600],
   {'Z2': 3}),
  ('normal control 4',
   [[[999, 'u2', 'Z1'], [400, 'u2', 'Z1'], [999, 'u2', 'Z2'], [500, 'u1', 'Z2'], [401, 'u1', 'Z1'],
     [999, 'u1', 'Z2'], [1001, 'u4', 'Z1']],
    1000, 600],
   {'Z2': 2})],
 [('regression: window start exclusive',
   [[[500, 'u1', 'Z1'], [401, 'u2', 'Z2'], [400, 'u3', 'Z2'], [400, 'u1', 'Z2'], [400, 'u1', 'Z1'],
     [400, 'u3', 'Z2'], [400, 'u3', 'Z1']],
    1000, 600],
   {'Z1': 1, 'Z2': 1}),
  ('partial repair probe: window start exclusive',
   [[[999, 'u4', 'Z2'], [1000, 'u2', 'Z2'], [500, 'u3', 'Z1'], [700, 'u3', 'Z1'], [1001, 'u1', 'Z2'],
     [1001, 'u2', 'Z2'], [999, 'u2', 'Z1'], [400, 'u2', 'Z2']],
    1000, 600],
   {'Z1': 1, 'Z2': 2}),
  ('second regression', [[[999, 'u1', 'Z1'], [1000, 'u2', 'Z1'], [999, 'u4', 'Z1']], 1000, 600], {'Z1': 3}),
  ('normal control 1', [[[999, 'u3', 'Z1'], [700, 'u4', 'Z2']], 1000, 600], {'Z1': 1, 'Z2': 1}),
  ('normal control 2',
   [[[500, 'u4', 'Z1'], [1000, 'u1', 'Z1'], [400, 'u1', 'Z2'], [401, 'u1', 'Z1']], 1000, 600], {'Z1': 2}),
  ('normal control 3',
   [[[400, 'u3', 'Z1'], [700, 'u2', 'Z2'], [401, 'u3', 'Z2'], [500, 'u1', 'Z2'], [1001, 'u2', 'Z2'],
     [401, 'u3', 'Z1'], [700, 'u1', 'Z2'], [400, 'u2', 'Z2']],
    1000, 600],
   {'Z1': 1, 'Z2': 2}),
  ('normal control 4',
   [[[401, 'u4', 'Z2'], [700, 'u1', 'Z2'], [500, 'u3', 'Z2'], [1001, 'u4', 'Z1'], [700, 'u4', 'Z1'],
     [1000, 'u3', 'Z2'], [500, 'u2', 'Z2']],
    1000, 600],
   {'Z1': 1, 'Z2': 3})]]
for label, args, expected in fixtures[N-1]:
    check(label, 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 fixtureActualExpectedOutcome
regression: window start exclusive{'Z1': 2}{'Z1': 2}Passed
partial repair probe: window start exclusive{'Z1': 1, 'Z2': 1}{'Z1': 1, 'Z2': 1}Passed
second regression{'Z1': 1, 'Z2': 2}{'Z1': 1, 'Z2': 2}Passed
normal control 1{'Z1': 1, 'Z2': 2}{'Z1': 1, 'Z2': 2}Passed
normal control 2{'Z2': 1}{'Z2': 1}Passed
normal control 3{'Z2': 3}{'Z2': 3}Passed
normal control 4{'Z1': 1, 'Z2': 1}{'Z1': 1, 'Z2': 1}Passed

SHA-256 / 00aa746debdf88427909ebd142f452d3b81006846cb69b02e8a33713a92d5786

Verification & scope

A deterministic toy pricing contract stipulated for this example; it does not reproduce the pricing of any real ride-hailing operator or regulator. 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:50:42.268123+00:00.

Case digest / 239814790ef5066f488fd962c918fc81932cd4efff7db1e26be1024d4fbc8cc2