FA-66836 / Airline fare rule evaluation / Open access
Travel window checked against the sale date · case 01
Tickets sold before the travel window opens always fail COMMENCE.
ROOT CAUSE
The travel-window test reads the sale date instead of the first travel date.
VERIFIED REPAIR
Test the first travel date against the travel window.
Unsuccessful approach: Checking the window start against the sale date still rejects tickets sold before the window opens.
Case contract
Input {'sale','first_travel','last_travel','sale_window','travel_window','complete_by'} ISO dates. Sale date within the inclusive sale window, first travel within the inclusive travel (commencement) window, last travel on or before complete_by. Return failures in order SALE, COMMENCE, COMPLETE.
Why this case matters
Promotional fares restrict the ticketing period, the period in which travel must commence and a separate completion deadline.
1 / The failure
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
import datetime
N = 1
observations = []
def solve(x):
p = datetime.date.fromisoformat
fails = []
s0, s1 = map(p, x['sale_window'])
t0, t1 = map(p, x['travel_window'])
if not (s0 <= p(x['sale']) <= s1): fails.append('SALE')
if not (t0 <= p(x['sale']) <= t1): fails.append('COMMENCE')
if p(x['last_travel']) > p(x['complete_by']): fails.append('COMPLETE')
return fails
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[['trip finishing after commence window', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-01', 'first_travel': '2027-05-28', 'last_travel': '2027-06-03'}, []], ['sold on last sale day', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-28', 'first_travel': '2027-03-10', 'last_travel': '2027-03-17'}, []], ['completes exactly on deadline', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-20', 'first_travel': '2027-05-01', 'last_travel': '2027-06-15'}, []], ['completes a day late', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-20', 'first_travel': '2027-05-20', 'last_travel': '2027-06-17'}, ['COMPLETE']], ['sold before travel window opens', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-11', 'first_travel': '2027-03-01', 'last_travel': '2027-03-05'}, []], ['commences too late', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-10', 'first_travel': '2027-06-01', 'last_travel': '2027-06-10'}, ['COMMENCE']], ['sold too early', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-09', 'first_travel': '2027-04-01', 'last_travel': '2027-04-08'}, ['SALE']], ['sampled case 1', {'sale_window': ['2027-12-30', '2028-01-23'], 'travel_window': ['2028-01-04', '2028-01-30'], 'complete_by': '2028-02-15', 'sale': '2027-12-31', 'first_travel': '2028-02-08', 'last_travel': '2028-02-13'}, ['COMMENCE']], ['sampled case 2', {'sale_window': ['2027-07-14', '2027-09-01'], 'travel_window': ['2027-07-14', '2027-10-07'], 'complete_by': '2027-11-03', 'sale': '2027-08-26', 'first_travel': '2027-09-15', 'last_travel': '2027-09-27'}, []], ['sampled case 3', {'sale_window': ['2027-04-22', '2027-06-16'], 'travel_window': ['2027-05-05', '2027-07-12'], 'complete_by': '2027-08-03', 'sale': '2027-04-27', 'first_travel': '2027-05-03', 'last_travel': '2027-05-25'}, ['COMMENCE']]], [['trip finishing after commence window', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-02', 'first_travel': '2027-05-28', 'last_travel': '2027-06-04'}, []], ['sold on last sale day', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-28', 'first_travel': '2027-03-10', 'last_travel': '2027-03-17'}, []], ['completes exactly on deadline', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-20', 'first_travel': '2027-05-01', 'last_travel': '2027-06-15'}, []], ['completes a day late', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-20', 'first_travel': '2027-05-20', 'last_travel': '2027-06-18'}, ['COMPLETE']], ['sold before travel window opens', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-12', 'first_travel': '2027-03-01', 'last_travel': '2027-03-05'}, []], ['commences too late', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-10', 'first_travel': '2027-06-02', 'last_travel': '2027-06-10'}, ['COMMENCE']], ['sold too early', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-09', 'first_travel': '2027-04-01', 'last_travel': '2027-04-08'}, ['SALE']], ['sampled case 1', {'sale_window': ['2027-10-21', '2027-11-05'], 'travel_window': ['2027-12-14', '2028-01-23'], 'complete_by': '2028-02-15', 'sale': '2027-12-06', 'first_travel': '2028-02-16', 'last_travel': '2028-03-01'}, ['SALE', 'COMMENCE', 'COMPLETE']], ['sampled case 2', {'sale_window': ['2027-10-07', '2027-10-26'], 'travel_window': ['2027-11-12', '2028-01-03'], 'complete_by': '2028-01-19', 'sale': '2027-10-27', 'first_travel': '2027-11-02', 'last_travel': '2027-11-14'}, ['SALE', 'COMMENCE']], ['sampled case 3', {'sale_window': ['2027-03-11', '2027-04-21'], 'travel_window': ['2027-03-25', '2027-06-12'], 'complete_by': '2027-07-08', 'sale': '2027-05-11', 'first_travel': '2027-05-21', 'last_travel': '2027-06-05'}, ['SALE']]], [['trip finishing after commence window', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-03', 'first_travel': '2027-05-28', 'last_travel': '2027-06-05'}, []], ['sold on last sale day', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-28', 'first_travel': '2027-03-10', 'last_travel': '2027-03-17'}, []], ['completes exactly on deadline', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-20', 'first_travel': '2027-05-01', 'last_travel': '2027-06-15'}, []], ['completes a day late', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-20', 'first_travel': '2027-05-20', 'last_travel': '2027-06-16'}, ['COMPLETE']], ['sold before travel window opens', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-13', 'first_travel': '2027-03-01', 'last_travel': '2027-03-05'}, []], ['commences too late', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-10', 'first_travel': '2027-06-03', 'last_travel': '2027-06-10'}, ['COMMENCE']], ['sold too early', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-09', 'first_travel': '2027-04-01', 'last_travel': '2027-04-08'}, ['SALE']], ['sampled case 1', {'sale_window': ['2027-06-20', '2027-08-16'], 'travel_window': ['2027-08-18', '2027-09-23'], 'complete_by': '2027-10-09', 'sale': '2027-06-25', 'first_travel': '2027-11-23', 'last_travel': '2027-12-19'}, ['COMMENCE', 'COMPLETE']], ['sampled case 2', {'sale_window': ['2027-06-05', '2027-07-18'], 'travel_window': ['2027-07-17', '2027-09-14'], 'complete_by': '2027-10-08', 'sale': '2027-07-17', 'first_travel': '2027-09-21', 'last_travel': '2027-09-26'}, ['COMMENCE']], ['sampled case 3', {'sale_window': ['2027-10-11', '2027-11-28'], 'travel_window': ['2027-11-28', '2028-01-22'], 'complete_by': '2028-02-08', 'sale': '2027-11-06', 'first_travel': '2027-12-31', 'last_travel': '2028-01-29'}, []]], [['trip finishing after commence window', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-04', 'first_travel': '2027-05-28', 'last_travel': '2027-06-06'}, []], ['sold on last sale day', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-28', 'first_travel': '2027-03-10', 'last_travel': '2027-03-17'}, []], ['completes exactly on deadline', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-20', 'first_travel': '2027-05-01', 'last_travel': '2027-06-15'}, []], ['completes a day late', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-20', 'first_travel': '2027-05-20', 'last_travel': '2027-06-17'}, ['COMPLETE']], ['sold before travel window opens', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-14', 'first_travel': '2027-03-01', 'last_travel': '2027-03-05'}, []], ['commences too late', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-10', 'first_travel': '2027-06-04', 'last_travel': '2027-06-10'}, ['COMMENCE']], ['sold too early', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-09', 'first_travel': '2027-04-01', 'last_travel': '2027-04-08'}, ['SALE']], ['sampled case 1', {'sale_window': ['2027-05-07', '2027-05-28'], 'travel_window': ['2027-06-09', '2027-08-31'], 'complete_by': '2027-09-16', 'sale': '2027-06-01', 'first_travel': '2027-06-02', 'last_travel': '2027-06-03'}, ['SALE', 'COMMENCE']], ['sampled case 2', {'sale_window': ['2027-10-02', '2027-11-17'], 'travel_window': ['2027-10-11', '2027-12-26'], 'complete_by': '2028-01-09', 'sale': '2027-12-04', 'first_travel': '2027-12-02', 'last_travel': '2027-12-23'}, ['SALE']], ['sampled case 3', {'sale_window': ['2027-05-15', '2027-06-12'], 'travel_window': ['2027-06-29', '2027-07-19'], 'complete_by': '2027-07-30', 'sale': '2027-07-16', 'first_travel': '2027-10-06', 'last_travel': '2027-10-22'}, ['SALE', 'COMMENCE', 'COMPLETE']]], [['trip finishing after commence window', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-05', 'first_travel': '2027-05-28', 'last_travel': '2027-06-07'}, []], ['sold on last sale day', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-28', 'first_travel': '2027-03-10', 'last_travel': '2027-03-17'}, []], ['completes exactly on deadline', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-20', 'first_travel': '2027-05-01', 'last_travel': '2027-06-15'}, []], ['completes a day late', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-20', 'first_travel': '2027-05-20', 'last_travel': '2027-06-18'}, ['COMPLETE']], ['sold before travel window opens', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-15', 'first_travel': '2027-03-01', 'last_travel': '2027-03-05'}, []], ['commences too late', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-10', 'first_travel': '2027-06-05', 'last_travel': '2027-06-10'}, ['COMMENCE']], ['sold too early', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-09', 'first_travel': '2027-04-01', 'last_travel': '2027-04-08'}, ['SALE']], ['sampled case 1', {'sale_window': ['2027-07-10', '2027-07-30'], 'travel_window': ['2027-08-12', '2027-11-08'], 'complete_by': '2027-11-08', 'sale': '2027-08-17', 'first_travel': '2027-09-03', 'last_travel': '2027-09-06'}, ['SALE']], ['sampled case 2', {'sale_window': ['2027-02-23', '2027-03-25'], 'travel_window': ['2027-03-20', '2027-05-01'], 'complete_by': '2027-05-16', 'sale': '2027-03-25', 'first_travel': '2027-04-25', 'last_travel': '2027-05-04'}, []], ['sampled case 3', {'sale_window': ['2027-01-05', '2027-01-22'], 'travel_window': ['2027-01-19', '2027-02-25'], 'complete_by': '2027-03-09', 'sale': '2027-01-17', 'first_travel': '2027-01-17', 'last_travel': '2027-01-31'}, ['COMMENCE']]]]
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 fixture | Actual | Expected | Outcome |
|---|---|---|---|
| trip finishing after commence window | ['COMMENCE'] | [] | Failed |
| sold on last sale day | ['COMMENCE'] | [] | Failed |
| completes exactly on deadline | ['COMMENCE'] | [] | Failed |
| completes a day late | ['COMMENCE', 'COMPLETE'] | ['COMPLETE'] | Failed |
| sold before travel window opens | ['COMMENCE'] | [] | Failed |
| commences too late | ['COMMENCE'] | ['COMMENCE'] | Passed |
| sold too early | ['SALE', 'COMMENCE'] | ['SALE'] | Failed |
| sampled case 1 | ['COMMENCE'] | ['COMMENCE'] | Passed |
| sampled case 2 | [] | [] | Passed |
| sampled case 3 | ['COMMENCE'] | ['COMMENCE'] | Passed |
SHA-256 / 61e8ee64902b346ebf8703cc1a5a27dd386d2dbee01a8eeb488fd089d6468e33
2 / The unsuccessful fix
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
import datetime
N = 1
observations = []
def solve(x):
p = datetime.date.fromisoformat
fails = []
s0, s1 = map(p, x['sale_window'])
t0, t1 = map(p, x['travel_window'])
if not (s0 <= p(x['sale']) <= s1): fails.append('SALE')
if not (t0 <= p(x['sale']) and p(x['first_travel']) <= t1): fails.append('COMMENCE')
if p(x['last_travel']) > p(x['complete_by']): fails.append('COMPLETE')
return fails
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[['trip finishing after commence window', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-01', 'first_travel': '2027-05-28', 'last_travel': '2027-06-03'}, []], ['sold on last sale day', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-28', 'first_travel': '2027-03-10', 'last_travel': '2027-03-17'}, []], ['completes exactly on deadline', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-20', 'first_travel': '2027-05-01', 'last_travel': '2027-06-15'}, []], ['completes a day late', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-20', 'first_travel': '2027-05-20', 'last_travel': '2027-06-17'}, ['COMPLETE']], ['sold before travel window opens', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-11', 'first_travel': '2027-03-01', 'last_travel': '2027-03-05'}, []], ['commences too late', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-10', 'first_travel': '2027-06-01', 'last_travel': '2027-06-10'}, ['COMMENCE']], ['sold too early', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-09', 'first_travel': '2027-04-01', 'last_travel': '2027-04-08'}, ['SALE']], ['sampled case 1', {'sale_window': ['2027-12-30', '2028-01-23'], 'travel_window': ['2028-01-04', '2028-01-30'], 'complete_by': '2028-02-15', 'sale': '2027-12-31', 'first_travel': '2028-02-08', 'last_travel': '2028-02-13'}, ['COMMENCE']], ['sampled case 2', {'sale_window': ['2027-07-14', '2027-09-01'], 'travel_window': ['2027-07-14', '2027-10-07'], 'complete_by': '2027-11-03', 'sale': '2027-08-26', 'first_travel': '2027-09-15', 'last_travel': '2027-09-27'}, []], ['sampled case 3', {'sale_window': ['2027-04-22', '2027-06-16'], 'travel_window': ['2027-05-05', '2027-07-12'], 'complete_by': '2027-08-03', 'sale': '2027-04-27', 'first_travel': '2027-05-03', 'last_travel': '2027-05-25'}, ['COMMENCE']]], [['trip finishing after commence window', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-02', 'first_travel': '2027-05-28', 'last_travel': '2027-06-04'}, []], ['sold on last sale day', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-28', 'first_travel': '2027-03-10', 'last_travel': '2027-03-17'}, []], ['completes exactly on deadline', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-20', 'first_travel': '2027-05-01', 'last_travel': '2027-06-15'}, []], ['completes a day late', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-20', 'first_travel': '2027-05-20', 'last_travel': '2027-06-18'}, ['COMPLETE']], ['sold before travel window opens', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-12', 'first_travel': '2027-03-01', 'last_travel': '2027-03-05'}, []], ['commences too late', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-10', 'first_travel': '2027-06-02', 'last_travel': '2027-06-10'}, ['COMMENCE']], ['sold too early', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-09', 'first_travel': '2027-04-01', 'last_travel': '2027-04-08'}, ['SALE']], ['sampled case 1', {'sale_window': ['2027-10-21', '2027-11-05'], 'travel_window': ['2027-12-14', '2028-01-23'], 'complete_by': '2028-02-15', 'sale': '2027-12-06', 'first_travel': '2028-02-16', 'last_travel': '2028-03-01'}, ['SALE', 'COMMENCE', 'COMPLETE']], ['sampled case 2', {'sale_window': ['2027-10-07', '2027-10-26'], 'travel_window': ['2027-11-12', '2028-01-03'], 'complete_by': '2028-01-19', 'sale': '2027-10-27', 'first_travel': '2027-11-02', 'last_travel': '2027-11-14'}, ['SALE', 'COMMENCE']], ['sampled case 3', {'sale_window': ['2027-03-11', '2027-04-21'], 'travel_window': ['2027-03-25', '2027-06-12'], 'complete_by': '2027-07-08', 'sale': '2027-05-11', 'first_travel': '2027-05-21', 'last_travel': '2027-06-05'}, ['SALE']]], [['trip finishing after commence window', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-03', 'first_travel': '2027-05-28', 'last_travel': '2027-06-05'}, []], ['sold on last sale day', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-28', 'first_travel': '2027-03-10', 'last_travel': '2027-03-17'}, []], ['completes exactly on deadline', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-20', 'first_travel': '2027-05-01', 'last_travel': '2027-06-15'}, []], ['completes a day late', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-20', 'first_travel': '2027-05-20', 'last_travel': '2027-06-16'}, ['COMPLETE']], ['sold before travel window opens', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-13', 'first_travel': '2027-03-01', 'last_travel': '2027-03-05'}, []], ['commences too late', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-10', 'first_travel': '2027-06-03', 'last_travel': '2027-06-10'}, ['COMMENCE']], ['sold too early', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-09', 'first_travel': '2027-04-01', 'last_travel': '2027-04-08'}, ['SALE']], ['sampled case 1', {'sale_window': ['2027-06-20', '2027-08-16'], 'travel_window': ['2027-08-18', '2027-09-23'], 'complete_by': '2027-10-09', 'sale': '2027-06-25', 'first_travel': '2027-11-23', 'last_travel': '2027-12-19'}, ['COMMENCE', 'COMPLETE']], ['sampled case 2', {'sale_window': ['2027-06-05', '2027-07-18'], 'travel_window': ['2027-07-17', '2027-09-14'], 'complete_by': '2027-10-08', 'sale': '2027-07-17', 'first_travel': '2027-09-21', 'last_travel': '2027-09-26'}, ['COMMENCE']], ['sampled case 3', {'sale_window': ['2027-10-11', '2027-11-28'], 'travel_window': ['2027-11-28', '2028-01-22'], 'complete_by': '2028-02-08', 'sale': '2027-11-06', 'first_travel': '2027-12-31', 'last_travel': '2028-01-29'}, []]], [['trip finishing after commence window', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-04', 'first_travel': '2027-05-28', 'last_travel': '2027-06-06'}, []], ['sold on last sale day', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-28', 'first_travel': '2027-03-10', 'last_travel': '2027-03-17'}, []], ['completes exactly on deadline', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-20', 'first_travel': '2027-05-01', 'last_travel': '2027-06-15'}, []], ['completes a day late', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-20', 'first_travel': '2027-05-20', 'last_travel': '2027-06-17'}, ['COMPLETE']], ['sold before travel window opens', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-14', 'first_travel': '2027-03-01', 'last_travel': '2027-03-05'}, []], ['commences too late', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-10', 'first_travel': '2027-06-04', 'last_travel': '2027-06-10'}, ['COMMENCE']], ['sold too early', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-09', 'first_travel': '2027-04-01', 'last_travel': '2027-04-08'}, ['SALE']], ['sampled case 1', {'sale_window': ['2027-05-07', '2027-05-28'], 'travel_window': ['2027-06-09', '2027-08-31'], 'complete_by': '2027-09-16', 'sale': '2027-06-01', 'first_travel': '2027-06-02', 'last_travel': '2027-06-03'}, ['SALE', 'COMMENCE']], ['sampled case 2', {'sale_window': ['2027-10-02', '2027-11-17'], 'travel_window': ['2027-10-11', '2027-12-26'], 'complete_by': '2028-01-09', 'sale': '2027-12-04', 'first_travel': '2027-12-02', 'last_travel': '2027-12-23'}, ['SALE']], ['sampled case 3', {'sale_window': ['2027-05-15', '2027-06-12'], 'travel_window': ['2027-06-29', '2027-07-19'], 'complete_by': '2027-07-30', 'sale': '2027-07-16', 'first_travel': '2027-10-06', 'last_travel': '2027-10-22'}, ['SALE', 'COMMENCE', 'COMPLETE']]], [['trip finishing after commence window', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-05', 'first_travel': '2027-05-28', 'last_travel': '2027-06-07'}, []], ['sold on last sale day', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-28', 'first_travel': '2027-03-10', 'last_travel': '2027-03-17'}, []], ['completes exactly on deadline', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-20', 'first_travel': '2027-05-01', 'last_travel': '2027-06-15'}, []], ['completes a day late', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-20', 'first_travel': '2027-05-20', 'last_travel': '2027-06-18'}, ['COMPLETE']], ['sold before travel window opens', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-15', 'first_travel': '2027-03-01', 'last_travel': '2027-03-05'}, []], ['commences too late', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-10', 'first_travel': '2027-06-05', 'last_travel': '2027-06-10'}, ['COMMENCE']], ['sold too early', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-09', 'first_travel': '2027-04-01', 'last_travel': '2027-04-08'}, ['SALE']], ['sampled case 1', {'sale_window': ['2027-07-10', '2027-07-30'], 'travel_window': ['2027-08-12', '2027-11-08'], 'complete_by': '2027-11-08', 'sale': '2027-08-17', 'first_travel': '2027-09-03', 'last_travel': '2027-09-06'}, ['SALE']], ['sampled case 2', {'sale_window': ['2027-02-23', '2027-03-25'], 'travel_window': ['2027-03-20', '2027-05-01'], 'complete_by': '2027-05-16', 'sale': '2027-03-25', 'first_travel': '2027-04-25', 'last_travel': '2027-05-04'}, []], ['sampled case 3', {'sale_window': ['2027-01-05', '2027-01-22'], 'travel_window': ['2027-01-19', '2027-02-25'], 'complete_by': '2027-03-09', 'sale': '2027-01-17', 'first_travel': '2027-01-17', 'last_travel': '2027-01-31'}, ['COMMENCE']]]]
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 fixture | Actual | Expected | Outcome |
|---|---|---|---|
| trip finishing after commence window | ['COMMENCE'] | [] | Failed |
| sold on last sale day | ['COMMENCE'] | [] | Failed |
| completes exactly on deadline | ['COMMENCE'] | [] | Failed |
| completes a day late | ['COMMENCE', 'COMPLETE'] | ['COMPLETE'] | Failed |
| sold before travel window opens | ['COMMENCE'] | [] | Failed |
| commences too late | ['COMMENCE'] | ['COMMENCE'] | Passed |
| sold too early | ['SALE', 'COMMENCE'] | ['SALE'] | Failed |
| sampled case 1 | ['COMMENCE'] | ['COMMENCE'] | Passed |
| sampled case 2 | [] | [] | Passed |
| sampled case 3 | ['COMMENCE'] | ['COMMENCE'] | Passed |
SHA-256 / 5445cd46baf132289751027632847b7074d053b6e2e4fddda16831b4b3c187f2
3 / The verified repair
Exit 0"""Failure Map reference implementation. Python standard library only."""
import json
import datetime
N = 1
observations = []
def solve(x):
p = datetime.date.fromisoformat
fails = []
s0, s1 = map(p, x['sale_window'])
t0, t1 = map(p, x['travel_window'])
if not (s0 <= p(x['sale']) <= s1): fails.append('SALE')
if not (t0 <= p(x['first_travel']) <= t1): fails.append('COMMENCE')
if p(x['last_travel']) > p(x['complete_by']): fails.append('COMPLETE')
return fails
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[['trip finishing after commence window', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-01', 'first_travel': '2027-05-28', 'last_travel': '2027-06-03'}, []], ['sold on last sale day', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-28', 'first_travel': '2027-03-10', 'last_travel': '2027-03-17'}, []], ['completes exactly on deadline', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-20', 'first_travel': '2027-05-01', 'last_travel': '2027-06-15'}, []], ['completes a day late', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-20', 'first_travel': '2027-05-20', 'last_travel': '2027-06-17'}, ['COMPLETE']], ['sold before travel window opens', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-11', 'first_travel': '2027-03-01', 'last_travel': '2027-03-05'}, []], ['commences too late', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-10', 'first_travel': '2027-06-01', 'last_travel': '2027-06-10'}, ['COMMENCE']], ['sold too early', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-09', 'first_travel': '2027-04-01', 'last_travel': '2027-04-08'}, ['SALE']], ['sampled case 1', {'sale_window': ['2027-12-30', '2028-01-23'], 'travel_window': ['2028-01-04', '2028-01-30'], 'complete_by': '2028-02-15', 'sale': '2027-12-31', 'first_travel': '2028-02-08', 'last_travel': '2028-02-13'}, ['COMMENCE']], ['sampled case 2', {'sale_window': ['2027-07-14', '2027-09-01'], 'travel_window': ['2027-07-14', '2027-10-07'], 'complete_by': '2027-11-03', 'sale': '2027-08-26', 'first_travel': '2027-09-15', 'last_travel': '2027-09-27'}, []], ['sampled case 3', {'sale_window': ['2027-04-22', '2027-06-16'], 'travel_window': ['2027-05-05', '2027-07-12'], 'complete_by': '2027-08-03', 'sale': '2027-04-27', 'first_travel': '2027-05-03', 'last_travel': '2027-05-25'}, ['COMMENCE']]], [['trip finishing after commence window', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-02', 'first_travel': '2027-05-28', 'last_travel': '2027-06-04'}, []], ['sold on last sale day', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-28', 'first_travel': '2027-03-10', 'last_travel': '2027-03-17'}, []], ['completes exactly on deadline', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-20', 'first_travel': '2027-05-01', 'last_travel': '2027-06-15'}, []], ['completes a day late', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-20', 'first_travel': '2027-05-20', 'last_travel': '2027-06-18'}, ['COMPLETE']], ['sold before travel window opens', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-12', 'first_travel': '2027-03-01', 'last_travel': '2027-03-05'}, []], ['commences too late', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-10', 'first_travel': '2027-06-02', 'last_travel': '2027-06-10'}, ['COMMENCE']], ['sold too early', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-09', 'first_travel': '2027-04-01', 'last_travel': '2027-04-08'}, ['SALE']], ['sampled case 1', {'sale_window': ['2027-10-21', '2027-11-05'], 'travel_window': ['2027-12-14', '2028-01-23'], 'complete_by': '2028-02-15', 'sale': '2027-12-06', 'first_travel': '2028-02-16', 'last_travel': '2028-03-01'}, ['SALE', 'COMMENCE', 'COMPLETE']], ['sampled case 2', {'sale_window': ['2027-10-07', '2027-10-26'], 'travel_window': ['2027-11-12', '2028-01-03'], 'complete_by': '2028-01-19', 'sale': '2027-10-27', 'first_travel': '2027-11-02', 'last_travel': '2027-11-14'}, ['SALE', 'COMMENCE']], ['sampled case 3', {'sale_window': ['2027-03-11', '2027-04-21'], 'travel_window': ['2027-03-25', '2027-06-12'], 'complete_by': '2027-07-08', 'sale': '2027-05-11', 'first_travel': '2027-05-21', 'last_travel': '2027-06-05'}, ['SALE']]], [['trip finishing after commence window', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-03', 'first_travel': '2027-05-28', 'last_travel': '2027-06-05'}, []], ['sold on last sale day', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-28', 'first_travel': '2027-03-10', 'last_travel': '2027-03-17'}, []], ['completes exactly on deadline', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-20', 'first_travel': '2027-05-01', 'last_travel': '2027-06-15'}, []], ['completes a day late', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-20', 'first_travel': '2027-05-20', 'last_travel': '2027-06-16'}, ['COMPLETE']], ['sold before travel window opens', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-13', 'first_travel': '2027-03-01', 'last_travel': '2027-03-05'}, []], ['commences too late', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-10', 'first_travel': '2027-06-03', 'last_travel': '2027-06-10'}, ['COMMENCE']], ['sold too early', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-09', 'first_travel': '2027-04-01', 'last_travel': '2027-04-08'}, ['SALE']], ['sampled case 1', {'sale_window': ['2027-06-20', '2027-08-16'], 'travel_window': ['2027-08-18', '2027-09-23'], 'complete_by': '2027-10-09', 'sale': '2027-06-25', 'first_travel': '2027-11-23', 'last_travel': '2027-12-19'}, ['COMMENCE', 'COMPLETE']], ['sampled case 2', {'sale_window': ['2027-06-05', '2027-07-18'], 'travel_window': ['2027-07-17', '2027-09-14'], 'complete_by': '2027-10-08', 'sale': '2027-07-17', 'first_travel': '2027-09-21', 'last_travel': '2027-09-26'}, ['COMMENCE']], ['sampled case 3', {'sale_window': ['2027-10-11', '2027-11-28'], 'travel_window': ['2027-11-28', '2028-01-22'], 'complete_by': '2028-02-08', 'sale': '2027-11-06', 'first_travel': '2027-12-31', 'last_travel': '2028-01-29'}, []]], [['trip finishing after commence window', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-04', 'first_travel': '2027-05-28', 'last_travel': '2027-06-06'}, []], ['sold on last sale day', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-28', 'first_travel': '2027-03-10', 'last_travel': '2027-03-17'}, []], ['completes exactly on deadline', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-20', 'first_travel': '2027-05-01', 'last_travel': '2027-06-15'}, []], ['completes a day late', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-20', 'first_travel': '2027-05-20', 'last_travel': '2027-06-17'}, ['COMPLETE']], ['sold before travel window opens', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-14', 'first_travel': '2027-03-01', 'last_travel': '2027-03-05'}, []], ['commences too late', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-10', 'first_travel': '2027-06-04', 'last_travel': '2027-06-10'}, ['COMMENCE']], ['sold too early', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-09', 'first_travel': '2027-04-01', 'last_travel': '2027-04-08'}, ['SALE']], ['sampled case 1', {'sale_window': ['2027-05-07', '2027-05-28'], 'travel_window': ['2027-06-09', '2027-08-31'], 'complete_by': '2027-09-16', 'sale': '2027-06-01', 'first_travel': '2027-06-02', 'last_travel': '2027-06-03'}, ['SALE', 'COMMENCE']], ['sampled case 2', {'sale_window': ['2027-10-02', '2027-11-17'], 'travel_window': ['2027-10-11', '2027-12-26'], 'complete_by': '2028-01-09', 'sale': '2027-12-04', 'first_travel': '2027-12-02', 'last_travel': '2027-12-23'}, ['SALE']], ['sampled case 3', {'sale_window': ['2027-05-15', '2027-06-12'], 'travel_window': ['2027-06-29', '2027-07-19'], 'complete_by': '2027-07-30', 'sale': '2027-07-16', 'first_travel': '2027-10-06', 'last_travel': '2027-10-22'}, ['SALE', 'COMMENCE', 'COMPLETE']]], [['trip finishing after commence window', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-05', 'first_travel': '2027-05-28', 'last_travel': '2027-06-07'}, []], ['sold on last sale day', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-28', 'first_travel': '2027-03-10', 'last_travel': '2027-03-17'}, []], ['completes exactly on deadline', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-20', 'first_travel': '2027-05-01', 'last_travel': '2027-06-15'}, []], ['completes a day late', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-20', 'first_travel': '2027-05-20', 'last_travel': '2027-06-18'}, ['COMPLETE']], ['sold before travel window opens', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-15', 'first_travel': '2027-03-01', 'last_travel': '2027-03-05'}, []], ['commences too late', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-02-10', 'first_travel': '2027-06-05', 'last_travel': '2027-06-10'}, ['COMMENCE']], ['sold too early', {'sale_window': ['2027-01-10', '2027-02-28'], 'travel_window': ['2027-03-01', '2027-05-31'], 'complete_by': '2027-06-15', 'sale': '2027-01-09', 'first_travel': '2027-04-01', 'last_travel': '2027-04-08'}, ['SALE']], ['sampled case 1', {'sale_window': ['2027-07-10', '2027-07-30'], 'travel_window': ['2027-08-12', '2027-11-08'], 'complete_by': '2027-11-08', 'sale': '2027-08-17', 'first_travel': '2027-09-03', 'last_travel': '2027-09-06'}, ['SALE']], ['sampled case 2', {'sale_window': ['2027-02-23', '2027-03-25'], 'travel_window': ['2027-03-20', '2027-05-01'], 'complete_by': '2027-05-16', 'sale': '2027-03-25', 'first_travel': '2027-04-25', 'last_travel': '2027-05-04'}, []], ['sampled case 3', {'sale_window': ['2027-01-05', '2027-01-22'], 'travel_window': ['2027-01-19', '2027-02-25'], 'complete_by': '2027-03-09', 'sale': '2027-01-17', 'first_travel': '2027-01-17', 'last_travel': '2027-01-31'}, ['COMMENCE']]]]
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 fixture | Actual | Expected | Outcome |
|---|---|---|---|
| trip finishing after commence window | [] | [] | Passed |
| sold on last sale day | [] | [] | Passed |
| completes exactly on deadline | [] | [] | Passed |
| completes a day late | ['COMPLETE'] | ['COMPLETE'] | Passed |
| sold before travel window opens | [] | [] | Passed |
| commences too late | ['COMMENCE'] | ['COMMENCE'] | Passed |
| sold too early | ['SALE'] | ['SALE'] | Passed |
| sampled case 1 | ['COMMENCE'] | ['COMMENCE'] | Passed |
| sampled case 2 | [] | [] | Passed |
| sampled case 3 | ['COMMENCE'] | ['COMMENCE'] | Passed |
SHA-256 / c6aba815ff82e0ae2741b13eab15f551c33044b3c87f6c57de9e2dab3b489937
Verification & scope
A stipulated toy fare-rule contract with invented constants; it is not an ATPCO or carrier tariff implementation and makes no claim of industry-standard conformance. 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:47.407952+00:00.
Case digest / c93dc588476cb2019b118e8dc17864bdc94a9c04a65c977fa397fbf46cbedabb