FA-77541 / Legal deadline computation / Open access
Answer deadline after personal service or waiver of service: government period · case 01
A federal officer served personally is given only 21 days to answer.
ROOT CAUSE
The extended government answer period is not applied to personal service.
VERIFIED REPAIR
At the government period decision use `60 if government else 21`, leaving the other decision sites of the model unchanged.
Unsuccessful approach: The partial repair `60 if government and method == 'waiver' else 21` only grants the government period for waivers, which never reach this branch.
Case contract
Stipulated: with personal service the answer is due 21 days after service. When service is waived, the answer is due 60 days after the waiver request was sent, or 90 days if the request was sent to a defendant outside the country (foreign is a boolean). A government defendant served personally gets 60 days instead of 21. The trigger day is excluded and a closed last day (weekend or listed holiday) moves to the next open day.
Why this case matters
Docketing systems compute filing and response deadlines from trigger events; a wrong date can forfeit a right.
1 / The failure
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
import datetime as dt
import calendar
N = 1
observations = []
def solve(method, served, request_sent, foreign, government, holidays):
hol = {dt.date.fromisoformat(x) for x in holidays}
if method == 'waiver':
base = dt.date.fromisoformat(request_sent)
days = 90 if foreign else 60
else:
base = dt.date.fromisoformat(served)
days = 21
d = base + dt.timedelta(days=days)
while d.weekday() >= 5 or d in hol:
d += dt.timedelta(days=1)
return d.isoformat()
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('regression: foreign waiver',
['waiver',
'2024-02-20',
'2024-02-01',
True,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-01'),
('domestic waiver',
['waiver',
'2024-02-20',
'2024-02-01',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-04-01'),
('waiver lands sunday',
['waiver',
'2024-03-15',
'2024-03-04',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-03'),
('personal simple',
['personal',
'2024-04-01',
None,
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-04-22'),
('personal lands holiday',
['personal',
'2024-05-06',
None,
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-28'),
('waiver lands holiday',
['waiver',
'2024-05-10',
'2024-03-28',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-28'),
('foreign waiver lands weekend',
['waiver',
'2024-01-20',
'2024-01-06',
True,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-04-05'),
('government personal',
['personal',
'2024-04-01',
None,
False,
True,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-31')],
[('waiver lands sunday',
['waiver',
'2024-03-15',
'2024-03-04',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-03'),
('personal simple',
['personal',
'2024-04-01',
None,
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-04-22'),
('personal lands holiday',
['personal',
'2024-05-06',
None,
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-28'),
('waiver lands holiday',
['waiver',
'2024-05-10',
'2024-03-28',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-28'),
('foreign waiver lands weekend',
['waiver',
'2024-01-20',
'2024-01-06',
True,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-04-05'),
('personal lands saturday',
['personal',
'2024-06-01',
None,
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-06-24'),
('waiver same day',
['waiver',
'2024-07-01',
'2024-07-01',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-08-30'),
('government personal lands weekend',
['personal',
'2024-03-08',
None,
False,
True,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-07')],
[('personal lands holiday',
['personal',
'2024-05-06',
None,
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-28'),
('waiver lands holiday',
['waiver',
'2024-05-10',
'2024-03-28',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-28'),
('foreign waiver lands weekend',
['waiver',
'2024-01-20',
'2024-01-06',
True,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-04-05'),
('personal lands saturday',
['personal',
'2024-06-01',
None,
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-06-24'),
('waiver same day',
['waiver',
'2024-07-01',
'2024-07-01',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-08-30'),
('foreign waiver holiday landing',
['waiver',
'2024-09-10',
'2024-08-29',
True,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-11-27'),
('government personal',
['personal',
'2024-04-01',
None,
False,
True,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-31')],
[('foreign waiver lands weekend',
['waiver',
'2024-01-20',
'2024-01-06',
True,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-04-05'),
('personal lands saturday',
['personal',
'2024-06-01',
None,
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-06-24'),
('waiver same day',
['waiver',
'2024-07-01',
'2024-07-01',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-08-30'),
('foreign waiver holiday landing',
['waiver',
'2024-09-10',
'2024-08-29',
True,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-11-27'),
('government personal',
['personal',
'2024-04-01',
None,
False,
True,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-31'),
('government personal lands weekend',
['personal',
'2024-03-08',
None,
False,
True,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-07'),
('regression: foreign waiver',
['waiver',
'2024-02-20',
'2024-02-01',
True,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-01')],
[('waiver same day',
['waiver',
'2024-07-01',
'2024-07-01',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-08-30'),
('foreign waiver holiday landing',
['waiver',
'2024-09-10',
'2024-08-29',
True,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-11-27'),
('government personal',
['personal',
'2024-04-01',
None,
False,
True,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-31'),
('government personal lands weekend',
['personal',
'2024-03-08',
None,
False,
True,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-07'),
('regression: foreign waiver',
['waiver',
'2024-02-20',
'2024-02-01',
True,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-01'),
('domestic waiver',
['waiver',
'2024-02-20',
'2024-02-01',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-04-01'),
('waiver lands sunday',
['waiver',
'2024-03-15',
'2024-03-04',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-03')]]
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 |
|---|---|---|---|
| regression: foreign waiver | 2024-05-01 | 2024-05-01 | Passed |
| domestic waiver | 2024-04-01 | 2024-04-01 | Passed |
| waiver lands sunday | 2024-05-03 | 2024-05-03 | Passed |
| personal simple | 2024-04-22 | 2024-04-22 | Passed |
| personal lands holiday | 2024-05-28 | 2024-05-28 | Passed |
| waiver lands holiday | 2024-05-28 | 2024-05-28 | Passed |
| foreign waiver lands weekend | 2024-04-05 | 2024-04-05 | Passed |
| government personal | 2024-04-22 | 2024-05-31 | Failed |
SHA-256 / 87f3a005078a042d233f8048b11bc5e7b5a9bc1ccc9fab44b4eccfed3964fb6a
2 / The unsuccessful fix
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
import datetime as dt
import calendar
N = 1
observations = []
def solve(method, served, request_sent, foreign, government, holidays):
hol = {dt.date.fromisoformat(x) for x in holidays}
if method == 'waiver':
base = dt.date.fromisoformat(request_sent)
days = 90 if foreign else 60
else:
base = dt.date.fromisoformat(served)
days = 60 if government and method == 'waiver' else 21
d = base + dt.timedelta(days=days)
while d.weekday() >= 5 or d in hol:
d += dt.timedelta(days=1)
return d.isoformat()
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('regression: foreign waiver',
['waiver',
'2024-02-20',
'2024-02-01',
True,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-01'),
('domestic waiver',
['waiver',
'2024-02-20',
'2024-02-01',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-04-01'),
('waiver lands sunday',
['waiver',
'2024-03-15',
'2024-03-04',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-03'),
('personal simple',
['personal',
'2024-04-01',
None,
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-04-22'),
('personal lands holiday',
['personal',
'2024-05-06',
None,
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-28'),
('waiver lands holiday',
['waiver',
'2024-05-10',
'2024-03-28',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-28'),
('foreign waiver lands weekend',
['waiver',
'2024-01-20',
'2024-01-06',
True,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-04-05'),
('government personal',
['personal',
'2024-04-01',
None,
False,
True,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-31')],
[('waiver lands sunday',
['waiver',
'2024-03-15',
'2024-03-04',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-03'),
('personal simple',
['personal',
'2024-04-01',
None,
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-04-22'),
('personal lands holiday',
['personal',
'2024-05-06',
None,
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-28'),
('waiver lands holiday',
['waiver',
'2024-05-10',
'2024-03-28',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-28'),
('foreign waiver lands weekend',
['waiver',
'2024-01-20',
'2024-01-06',
True,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-04-05'),
('personal lands saturday',
['personal',
'2024-06-01',
None,
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-06-24'),
('waiver same day',
['waiver',
'2024-07-01',
'2024-07-01',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-08-30'),
('government personal lands weekend',
['personal',
'2024-03-08',
None,
False,
True,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-07')],
[('personal lands holiday',
['personal',
'2024-05-06',
None,
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-28'),
('waiver lands holiday',
['waiver',
'2024-05-10',
'2024-03-28',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-28'),
('foreign waiver lands weekend',
['waiver',
'2024-01-20',
'2024-01-06',
True,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-04-05'),
('personal lands saturday',
['personal',
'2024-06-01',
None,
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-06-24'),
('waiver same day',
['waiver',
'2024-07-01',
'2024-07-01',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-08-30'),
('foreign waiver holiday landing',
['waiver',
'2024-09-10',
'2024-08-29',
True,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-11-27'),
('government personal',
['personal',
'2024-04-01',
None,
False,
True,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-31')],
[('foreign waiver lands weekend',
['waiver',
'2024-01-20',
'2024-01-06',
True,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-04-05'),
('personal lands saturday',
['personal',
'2024-06-01',
None,
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-06-24'),
('waiver same day',
['waiver',
'2024-07-01',
'2024-07-01',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-08-30'),
('foreign waiver holiday landing',
['waiver',
'2024-09-10',
'2024-08-29',
True,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-11-27'),
('government personal',
['personal',
'2024-04-01',
None,
False,
True,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-31'),
('government personal lands weekend',
['personal',
'2024-03-08',
None,
False,
True,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-07'),
('regression: foreign waiver',
['waiver',
'2024-02-20',
'2024-02-01',
True,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-01')],
[('waiver same day',
['waiver',
'2024-07-01',
'2024-07-01',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-08-30'),
('foreign waiver holiday landing',
['waiver',
'2024-09-10',
'2024-08-29',
True,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-11-27'),
('government personal',
['personal',
'2024-04-01',
None,
False,
True,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-31'),
('government personal lands weekend',
['personal',
'2024-03-08',
None,
False,
True,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-07'),
('regression: foreign waiver',
['waiver',
'2024-02-20',
'2024-02-01',
True,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-01'),
('domestic waiver',
['waiver',
'2024-02-20',
'2024-02-01',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-04-01'),
('waiver lands sunday',
['waiver',
'2024-03-15',
'2024-03-04',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-03')]]
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 |
|---|---|---|---|
| regression: foreign waiver | 2024-05-01 | 2024-05-01 | Passed |
| domestic waiver | 2024-04-01 | 2024-04-01 | Passed |
| waiver lands sunday | 2024-05-03 | 2024-05-03 | Passed |
| personal simple | 2024-04-22 | 2024-04-22 | Passed |
| personal lands holiday | 2024-05-28 | 2024-05-28 | Passed |
| waiver lands holiday | 2024-05-28 | 2024-05-28 | Passed |
| foreign waiver lands weekend | 2024-04-05 | 2024-04-05 | Passed |
| government personal | 2024-04-22 | 2024-05-31 | Failed |
SHA-256 / 9f9b79e533a682676ff774cd79d8c107b967225d993f74880833e6a812fe870b
3 / The verified repair
Exit 0"""Failure Map reference implementation. Python standard library only."""
import json
import datetime as dt
import calendar
N = 1
observations = []
def solve(method, served, request_sent, foreign, government, holidays):
hol = {dt.date.fromisoformat(x) for x in holidays}
if method == 'waiver':
base = dt.date.fromisoformat(request_sent)
days = 90 if foreign else 60
else:
base = dt.date.fromisoformat(served)
days = 60 if government else 21
d = base + dt.timedelta(days=days)
while d.weekday() >= 5 or d in hol:
d += dt.timedelta(days=1)
return d.isoformat()
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('regression: foreign waiver',
['waiver',
'2024-02-20',
'2024-02-01',
True,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-01'),
('domestic waiver',
['waiver',
'2024-02-20',
'2024-02-01',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-04-01'),
('waiver lands sunday',
['waiver',
'2024-03-15',
'2024-03-04',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-03'),
('personal simple',
['personal',
'2024-04-01',
None,
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-04-22'),
('personal lands holiday',
['personal',
'2024-05-06',
None,
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-28'),
('waiver lands holiday',
['waiver',
'2024-05-10',
'2024-03-28',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-28'),
('foreign waiver lands weekend',
['waiver',
'2024-01-20',
'2024-01-06',
True,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-04-05'),
('government personal',
['personal',
'2024-04-01',
None,
False,
True,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-31')],
[('waiver lands sunday',
['waiver',
'2024-03-15',
'2024-03-04',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-03'),
('personal simple',
['personal',
'2024-04-01',
None,
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-04-22'),
('personal lands holiday',
['personal',
'2024-05-06',
None,
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-28'),
('waiver lands holiday',
['waiver',
'2024-05-10',
'2024-03-28',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-28'),
('foreign waiver lands weekend',
['waiver',
'2024-01-20',
'2024-01-06',
True,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-04-05'),
('personal lands saturday',
['personal',
'2024-06-01',
None,
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-06-24'),
('waiver same day',
['waiver',
'2024-07-01',
'2024-07-01',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-08-30'),
('government personal lands weekend',
['personal',
'2024-03-08',
None,
False,
True,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-07')],
[('personal lands holiday',
['personal',
'2024-05-06',
None,
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-28'),
('waiver lands holiday',
['waiver',
'2024-05-10',
'2024-03-28',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-28'),
('foreign waiver lands weekend',
['waiver',
'2024-01-20',
'2024-01-06',
True,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-04-05'),
('personal lands saturday',
['personal',
'2024-06-01',
None,
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-06-24'),
('waiver same day',
['waiver',
'2024-07-01',
'2024-07-01',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-08-30'),
('foreign waiver holiday landing',
['waiver',
'2024-09-10',
'2024-08-29',
True,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-11-27'),
('government personal',
['personal',
'2024-04-01',
None,
False,
True,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-31')],
[('foreign waiver lands weekend',
['waiver',
'2024-01-20',
'2024-01-06',
True,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-04-05'),
('personal lands saturday',
['personal',
'2024-06-01',
None,
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-06-24'),
('waiver same day',
['waiver',
'2024-07-01',
'2024-07-01',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-08-30'),
('foreign waiver holiday landing',
['waiver',
'2024-09-10',
'2024-08-29',
True,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-11-27'),
('government personal',
['personal',
'2024-04-01',
None,
False,
True,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-31'),
('government personal lands weekend',
['personal',
'2024-03-08',
None,
False,
True,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-07'),
('regression: foreign waiver',
['waiver',
'2024-02-20',
'2024-02-01',
True,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-01')],
[('waiver same day',
['waiver',
'2024-07-01',
'2024-07-01',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-08-30'),
('foreign waiver holiday landing',
['waiver',
'2024-09-10',
'2024-08-29',
True,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-11-27'),
('government personal',
['personal',
'2024-04-01',
None,
False,
True,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-31'),
('government personal lands weekend',
['personal',
'2024-03-08',
None,
False,
True,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-07'),
('regression: foreign waiver',
['waiver',
'2024-02-20',
'2024-02-01',
True,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-01'),
('domestic waiver',
['waiver',
'2024-02-20',
'2024-02-01',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-04-01'),
('waiver lands sunday',
['waiver',
'2024-03-15',
'2024-03-04',
False,
False,
['2024-01-01',
'2024-01-15',
'2024-02-19',
'2024-05-27',
'2024-06-19',
'2024-07-04',
'2024-09-02',
'2024-10-14',
'2024-11-11',
'2024-11-28',
'2024-12-25']],
'2024-05-03')]]
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 |
|---|---|---|---|
| regression: foreign waiver | 2024-05-01 | 2024-05-01 | Passed |
| domestic waiver | 2024-04-01 | 2024-04-01 | Passed |
| waiver lands sunday | 2024-05-03 | 2024-05-03 | Passed |
| personal simple | 2024-04-22 | 2024-04-22 | Passed |
| personal lands holiday | 2024-05-28 | 2024-05-28 | Passed |
| waiver lands holiday | 2024-05-28 | 2024-05-28 | Passed |
| foreign waiver lands weekend | 2024-04-05 | 2024-04-05 | Passed |
| government personal | 2024-05-31 | 2024-05-31 | Passed |
SHA-256 / 9fb3810f35fe496754f5c96e05703a9a5a0e45e940ee4e5c6a77a72e450c9612
Verification & scope
Stipulated toy deadline rules evaluated offline on explicit fixtures. The contract is inspired by common court-rule structures but is not legal advice and makes no claim to reproduce any jurisdiction's rules. 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:49:26.507793+00:00.
Case digest / bbe544744928593ac6be3b417e794ba9fd19e9f798ebd3e80e0eb99f4326de20