FA-77741 / Legal deadline computation / Open access
Deadlines extended by a bankruptcy filing and automatic stay: expired test · case 01
A deadline falling on the petition date is treated as already expired.
ROOT CAUSE
The expiry test is inclusive of the petition date.
VERIFIED REPAIR
At the expired test decision use `d < p`, leaving the other decision sites of the model unchanged.
Unsuccessful approach: The partial repair `d < p - dt.timedelta(days=1)` treats a deadline the day before the petition as still alive.
Case contract
Stipulated: for each deadline [kind, date] and petition date p: a deadline before p had already expired and is returned as [date, "expired"]. An "act" deadline becomes the later of its date and p + 60 days. A "collection" deadline becomes the later of its date and stay_end + 30 days; if stay_end is None it is "stayed". Return [date or None, status] per deadline, status "extended" when the date moved and "unchanged" otherwise.
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(petition, stay_end, deadlines):
p = dt.date.fromisoformat(petition)
out = []
stay = dt.date.fromisoformat(stay_end) if stay_end else None
for kind, due in deadlines:
d = dt.date.fromisoformat(due)
if d <= p:
out.append([due, 'expired'])
continue
if kind == 'act':
new = max(d, p + dt.timedelta(days=60))
elif stay is None:
out.append([None, 'stayed'])
continue
else:
new = max(d, stay + dt.timedelta(days=30))
out.append([new.isoformat(), 'extended' if new != d else 'unchanged'])
return out
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('regression: late act deadline',
['2024-03-01', '2024-06-01', [['act', '2024-07-15']]],
[['2024-07-15', 'unchanged']]),
('act soon after petition',
['2024-03-01', '2024-06-01', [['act', '2024-03-10']]],
[['2024-04-30', 'extended']]),
('deadline on petition date',
['2024-03-01', '2024-06-01', [['act', '2024-03-01']]],
[['2024-04-30', 'extended']]),
('expired day before', ['2024-03-01', '2024-06-01', [['act', '2024-02-29']]], [['2024-02-29', 'expired']]),
('collection after stay',
['2024-03-01', '2024-06-01', [['collection', '2024-03-15']]],
[['2024-07-01', 'extended']]),
('collection stay pending',
['2024-03-01', None, [['collection', '2024-03-15'], ['act', '2024-03-20']]],
[[None, 'stayed'], ['2024-04-30', 'extended']]),
('collection late anyway',
['2024-03-01', '2024-04-01', [['collection', '2024-06-30']]],
[['2024-06-30', 'unchanged']])],
[('deadline on petition date',
['2024-03-01', '2024-06-01', [['act', '2024-03-01']]],
[['2024-04-30', 'extended']]),
('expired day before', ['2024-03-01', '2024-06-01', [['act', '2024-02-29']]], [['2024-02-29', 'expired']]),
('collection after stay',
['2024-03-01', '2024-06-01', [['collection', '2024-03-15']]],
[['2024-07-01', 'extended']]),
('collection stay pending',
['2024-03-01', None, [['collection', '2024-03-15'], ['act', '2024-03-20']]],
[[None, 'stayed'], ['2024-04-30', 'extended']]),
('collection late anyway',
['2024-03-01', '2024-04-01', [['collection', '2024-06-30']]],
[['2024-06-30', 'unchanged']]),
('mixed list',
['2024-05-10', '2024-05-20', [['act', '2024-05-01'], ['collection', '2024-05-12'], ['act', '2024-08-01']]],
[['2024-05-01', 'expired'], ['2024-06-19', 'extended'], ['2024-08-01', 'unchanged']]),
('collection due after petition before stay end',
['2024-01-10', '2024-02-05', [['collection', '2024-02-01']]],
[['2024-03-06', 'extended']])],
[('collection after stay',
['2024-03-01', '2024-06-01', [['collection', '2024-03-15']]],
[['2024-07-01', 'extended']]),
('collection stay pending',
['2024-03-01', None, [['collection', '2024-03-15'], ['act', '2024-03-20']]],
[[None, 'stayed'], ['2024-04-30', 'extended']]),
('collection late anyway',
['2024-03-01', '2024-04-01', [['collection', '2024-06-30']]],
[['2024-06-30', 'unchanged']]),
('mixed list',
['2024-05-10', '2024-05-20', [['act', '2024-05-01'], ['collection', '2024-05-12'], ['act', '2024-08-01']]],
[['2024-05-01', 'expired'], ['2024-06-19', 'extended'], ['2024-08-01', 'unchanged']]),
('collection due after petition before stay end',
['2024-01-10', '2024-02-05', [['collection', '2024-02-01']]],
[['2024-03-06', 'extended']]),
('stay pending act only', ['2024-02-01', None, [['act', '2024-02-02']]], [['2024-04-01', 'extended']]),
('regression: late act deadline',
['2024-03-01', '2024-06-01', [['act', '2024-07-15']]],
[['2024-07-15', 'unchanged']]),
('deadline on petition date',
['2024-03-01', '2024-06-01', [['act', '2024-03-01']]],
[['2024-04-30', 'extended']]),
('expired day before', ['2024-03-01', '2024-06-01', [['act', '2024-02-29']]], [['2024-02-29', 'expired']])],
[('collection late anyway',
['2024-03-01', '2024-04-01', [['collection', '2024-06-30']]],
[['2024-06-30', 'unchanged']]),
('mixed list',
['2024-05-10', '2024-05-20', [['act', '2024-05-01'], ['collection', '2024-05-12'], ['act', '2024-08-01']]],
[['2024-05-01', 'expired'], ['2024-06-19', 'extended'], ['2024-08-01', 'unchanged']]),
('collection due after petition before stay end',
['2024-01-10', '2024-02-05', [['collection', '2024-02-01']]],
[['2024-03-06', 'extended']]),
('stay pending act only', ['2024-02-01', None, [['act', '2024-02-02']]], [['2024-04-01', 'extended']]),
('regression: late act deadline',
['2024-03-01', '2024-06-01', [['act', '2024-07-15']]],
[['2024-07-15', 'unchanged']]),
('act soon after petition',
['2024-03-01', '2024-06-01', [['act', '2024-03-10']]],
[['2024-04-30', 'extended']]),
('deadline on petition date',
['2024-03-01', '2024-06-01', [['act', '2024-03-01']]],
[['2024-04-30', 'extended']]),
('expired day before', ['2024-03-01', '2024-06-01', [['act', '2024-02-29']]], [['2024-02-29', 'expired']])],
[('collection due after petition before stay end',
['2024-01-10', '2024-02-05', [['collection', '2024-02-01']]],
[['2024-03-06', 'extended']]),
('stay pending act only', ['2024-02-01', None, [['act', '2024-02-02']]], [['2024-04-01', 'extended']]),
('regression: late act deadline',
['2024-03-01', '2024-06-01', [['act', '2024-07-15']]],
[['2024-07-15', 'unchanged']]),
('act soon after petition',
['2024-03-01', '2024-06-01', [['act', '2024-03-10']]],
[['2024-04-30', 'extended']]),
('deadline on petition date',
['2024-03-01', '2024-06-01', [['act', '2024-03-01']]],
[['2024-04-30', 'extended']]),
('expired day before', ['2024-03-01', '2024-06-01', [['act', '2024-02-29']]], [['2024-02-29', 'expired']]),
('collection after stay',
['2024-03-01', '2024-06-01', [['collection', '2024-03-15']]],
[['2024-07-01', 'extended']])]]
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: late act deadline | [['2024-07-15', 'unchanged']] | [['2024-07-15', 'unchanged']] | Passed |
| act soon after petition | [['2024-04-30', 'extended']] | [['2024-04-30', 'extended']] | Passed |
| deadline on petition date | [['2024-03-01', 'expired']] | [['2024-04-30', 'extended']] | Failed |
| expired day before | [['2024-02-29', 'expired']] | [['2024-02-29', 'expired']] | Passed |
| collection after stay | [['2024-07-01', 'extended']] | [['2024-07-01', 'extended']] | Passed |
| collection stay pending | [[None, 'stayed'], ['2024-04-30', 'extended']] | [[None, 'stayed'], ['2024-04-30', 'extended']] | Passed |
| collection late anyway | [['2024-06-30', 'unchanged']] | [['2024-06-30', 'unchanged']] | Passed |
SHA-256 / 4966801768793ae281c7056c52bb2de8332a15d2c6c7066efe6de2e42dc35ff6
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(petition, stay_end, deadlines):
p = dt.date.fromisoformat(petition)
out = []
stay = dt.date.fromisoformat(stay_end) if stay_end else None
for kind, due in deadlines:
d = dt.date.fromisoformat(due)
if d < p - dt.timedelta(days=1):
out.append([due, 'expired'])
continue
if kind == 'act':
new = max(d, p + dt.timedelta(days=60))
elif stay is None:
out.append([None, 'stayed'])
continue
else:
new = max(d, stay + dt.timedelta(days=30))
out.append([new.isoformat(), 'extended' if new != d else 'unchanged'])
return out
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('regression: late act deadline',
['2024-03-01', '2024-06-01', [['act', '2024-07-15']]],
[['2024-07-15', 'unchanged']]),
('act soon after petition',
['2024-03-01', '2024-06-01', [['act', '2024-03-10']]],
[['2024-04-30', 'extended']]),
('deadline on petition date',
['2024-03-01', '2024-06-01', [['act', '2024-03-01']]],
[['2024-04-30', 'extended']]),
('expired day before', ['2024-03-01', '2024-06-01', [['act', '2024-02-29']]], [['2024-02-29', 'expired']]),
('collection after stay',
['2024-03-01', '2024-06-01', [['collection', '2024-03-15']]],
[['2024-07-01', 'extended']]),
('collection stay pending',
['2024-03-01', None, [['collection', '2024-03-15'], ['act', '2024-03-20']]],
[[None, 'stayed'], ['2024-04-30', 'extended']]),
('collection late anyway',
['2024-03-01', '2024-04-01', [['collection', '2024-06-30']]],
[['2024-06-30', 'unchanged']])],
[('deadline on petition date',
['2024-03-01', '2024-06-01', [['act', '2024-03-01']]],
[['2024-04-30', 'extended']]),
('expired day before', ['2024-03-01', '2024-06-01', [['act', '2024-02-29']]], [['2024-02-29', 'expired']]),
('collection after stay',
['2024-03-01', '2024-06-01', [['collection', '2024-03-15']]],
[['2024-07-01', 'extended']]),
('collection stay pending',
['2024-03-01', None, [['collection', '2024-03-15'], ['act', '2024-03-20']]],
[[None, 'stayed'], ['2024-04-30', 'extended']]),
('collection late anyway',
['2024-03-01', '2024-04-01', [['collection', '2024-06-30']]],
[['2024-06-30', 'unchanged']]),
('mixed list',
['2024-05-10', '2024-05-20', [['act', '2024-05-01'], ['collection', '2024-05-12'], ['act', '2024-08-01']]],
[['2024-05-01', 'expired'], ['2024-06-19', 'extended'], ['2024-08-01', 'unchanged']]),
('collection due after petition before stay end',
['2024-01-10', '2024-02-05', [['collection', '2024-02-01']]],
[['2024-03-06', 'extended']])],
[('collection after stay',
['2024-03-01', '2024-06-01', [['collection', '2024-03-15']]],
[['2024-07-01', 'extended']]),
('collection stay pending',
['2024-03-01', None, [['collection', '2024-03-15'], ['act', '2024-03-20']]],
[[None, 'stayed'], ['2024-04-30', 'extended']]),
('collection late anyway',
['2024-03-01', '2024-04-01', [['collection', '2024-06-30']]],
[['2024-06-30', 'unchanged']]),
('mixed list',
['2024-05-10', '2024-05-20', [['act', '2024-05-01'], ['collection', '2024-05-12'], ['act', '2024-08-01']]],
[['2024-05-01', 'expired'], ['2024-06-19', 'extended'], ['2024-08-01', 'unchanged']]),
('collection due after petition before stay end',
['2024-01-10', '2024-02-05', [['collection', '2024-02-01']]],
[['2024-03-06', 'extended']]),
('stay pending act only', ['2024-02-01', None, [['act', '2024-02-02']]], [['2024-04-01', 'extended']]),
('regression: late act deadline',
['2024-03-01', '2024-06-01', [['act', '2024-07-15']]],
[['2024-07-15', 'unchanged']]),
('deadline on petition date',
['2024-03-01', '2024-06-01', [['act', '2024-03-01']]],
[['2024-04-30', 'extended']]),
('expired day before', ['2024-03-01', '2024-06-01', [['act', '2024-02-29']]], [['2024-02-29', 'expired']])],
[('collection late anyway',
['2024-03-01', '2024-04-01', [['collection', '2024-06-30']]],
[['2024-06-30', 'unchanged']]),
('mixed list',
['2024-05-10', '2024-05-20', [['act', '2024-05-01'], ['collection', '2024-05-12'], ['act', '2024-08-01']]],
[['2024-05-01', 'expired'], ['2024-06-19', 'extended'], ['2024-08-01', 'unchanged']]),
('collection due after petition before stay end',
['2024-01-10', '2024-02-05', [['collection', '2024-02-01']]],
[['2024-03-06', 'extended']]),
('stay pending act only', ['2024-02-01', None, [['act', '2024-02-02']]], [['2024-04-01', 'extended']]),
('regression: late act deadline',
['2024-03-01', '2024-06-01', [['act', '2024-07-15']]],
[['2024-07-15', 'unchanged']]),
('act soon after petition',
['2024-03-01', '2024-06-01', [['act', '2024-03-10']]],
[['2024-04-30', 'extended']]),
('deadline on petition date',
['2024-03-01', '2024-06-01', [['act', '2024-03-01']]],
[['2024-04-30', 'extended']]),
('expired day before', ['2024-03-01', '2024-06-01', [['act', '2024-02-29']]], [['2024-02-29', 'expired']])],
[('collection due after petition before stay end',
['2024-01-10', '2024-02-05', [['collection', '2024-02-01']]],
[['2024-03-06', 'extended']]),
('stay pending act only', ['2024-02-01', None, [['act', '2024-02-02']]], [['2024-04-01', 'extended']]),
('regression: late act deadline',
['2024-03-01', '2024-06-01', [['act', '2024-07-15']]],
[['2024-07-15', 'unchanged']]),
('act soon after petition',
['2024-03-01', '2024-06-01', [['act', '2024-03-10']]],
[['2024-04-30', 'extended']]),
('deadline on petition date',
['2024-03-01', '2024-06-01', [['act', '2024-03-01']]],
[['2024-04-30', 'extended']]),
('expired day before', ['2024-03-01', '2024-06-01', [['act', '2024-02-29']]], [['2024-02-29', 'expired']]),
('collection after stay',
['2024-03-01', '2024-06-01', [['collection', '2024-03-15']]],
[['2024-07-01', 'extended']])]]
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: late act deadline | [['2024-07-15', 'unchanged']] | [['2024-07-15', 'unchanged']] | Passed |
| act soon after petition | [['2024-04-30', 'extended']] | [['2024-04-30', 'extended']] | Passed |
| deadline on petition date | [['2024-04-30', 'extended']] | [['2024-04-30', 'extended']] | Passed |
| expired day before | [['2024-04-30', 'extended']] | [['2024-02-29', 'expired']] | Failed |
| collection after stay | [['2024-07-01', 'extended']] | [['2024-07-01', 'extended']] | Passed |
| collection stay pending | [[None, 'stayed'], ['2024-04-30', 'extended']] | [[None, 'stayed'], ['2024-04-30', 'extended']] | Passed |
| collection late anyway | [['2024-06-30', 'unchanged']] | [['2024-06-30', 'unchanged']] | Passed |
SHA-256 / 0523b963c8167649df52a70ab9b33d987a40689911bf7dd762f39baaa6901878
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(petition, stay_end, deadlines):
p = dt.date.fromisoformat(petition)
out = []
stay = dt.date.fromisoformat(stay_end) if stay_end else None
for kind, due in deadlines:
d = dt.date.fromisoformat(due)
if d < p:
out.append([due, 'expired'])
continue
if kind == 'act':
new = max(d, p + dt.timedelta(days=60))
elif stay is None:
out.append([None, 'stayed'])
continue
else:
new = max(d, stay + dt.timedelta(days=30))
out.append([new.isoformat(), 'extended' if new != d else 'unchanged'])
return out
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('regression: late act deadline',
['2024-03-01', '2024-06-01', [['act', '2024-07-15']]],
[['2024-07-15', 'unchanged']]),
('act soon after petition',
['2024-03-01', '2024-06-01', [['act', '2024-03-10']]],
[['2024-04-30', 'extended']]),
('deadline on petition date',
['2024-03-01', '2024-06-01', [['act', '2024-03-01']]],
[['2024-04-30', 'extended']]),
('expired day before', ['2024-03-01', '2024-06-01', [['act', '2024-02-29']]], [['2024-02-29', 'expired']]),
('collection after stay',
['2024-03-01', '2024-06-01', [['collection', '2024-03-15']]],
[['2024-07-01', 'extended']]),
('collection stay pending',
['2024-03-01', None, [['collection', '2024-03-15'], ['act', '2024-03-20']]],
[[None, 'stayed'], ['2024-04-30', 'extended']]),
('collection late anyway',
['2024-03-01', '2024-04-01', [['collection', '2024-06-30']]],
[['2024-06-30', 'unchanged']])],
[('deadline on petition date',
['2024-03-01', '2024-06-01', [['act', '2024-03-01']]],
[['2024-04-30', 'extended']]),
('expired day before', ['2024-03-01', '2024-06-01', [['act', '2024-02-29']]], [['2024-02-29', 'expired']]),
('collection after stay',
['2024-03-01', '2024-06-01', [['collection', '2024-03-15']]],
[['2024-07-01', 'extended']]),
('collection stay pending',
['2024-03-01', None, [['collection', '2024-03-15'], ['act', '2024-03-20']]],
[[None, 'stayed'], ['2024-04-30', 'extended']]),
('collection late anyway',
['2024-03-01', '2024-04-01', [['collection', '2024-06-30']]],
[['2024-06-30', 'unchanged']]),
('mixed list',
['2024-05-10', '2024-05-20', [['act', '2024-05-01'], ['collection', '2024-05-12'], ['act', '2024-08-01']]],
[['2024-05-01', 'expired'], ['2024-06-19', 'extended'], ['2024-08-01', 'unchanged']]),
('collection due after petition before stay end',
['2024-01-10', '2024-02-05', [['collection', '2024-02-01']]],
[['2024-03-06', 'extended']])],
[('collection after stay',
['2024-03-01', '2024-06-01', [['collection', '2024-03-15']]],
[['2024-07-01', 'extended']]),
('collection stay pending',
['2024-03-01', None, [['collection', '2024-03-15'], ['act', '2024-03-20']]],
[[None, 'stayed'], ['2024-04-30', 'extended']]),
('collection late anyway',
['2024-03-01', '2024-04-01', [['collection', '2024-06-30']]],
[['2024-06-30', 'unchanged']]),
('mixed list',
['2024-05-10', '2024-05-20', [['act', '2024-05-01'], ['collection', '2024-05-12'], ['act', '2024-08-01']]],
[['2024-05-01', 'expired'], ['2024-06-19', 'extended'], ['2024-08-01', 'unchanged']]),
('collection due after petition before stay end',
['2024-01-10', '2024-02-05', [['collection', '2024-02-01']]],
[['2024-03-06', 'extended']]),
('stay pending act only', ['2024-02-01', None, [['act', '2024-02-02']]], [['2024-04-01', 'extended']]),
('regression: late act deadline',
['2024-03-01', '2024-06-01', [['act', '2024-07-15']]],
[['2024-07-15', 'unchanged']]),
('deadline on petition date',
['2024-03-01', '2024-06-01', [['act', '2024-03-01']]],
[['2024-04-30', 'extended']]),
('expired day before', ['2024-03-01', '2024-06-01', [['act', '2024-02-29']]], [['2024-02-29', 'expired']])],
[('collection late anyway',
['2024-03-01', '2024-04-01', [['collection', '2024-06-30']]],
[['2024-06-30', 'unchanged']]),
('mixed list',
['2024-05-10', '2024-05-20', [['act', '2024-05-01'], ['collection', '2024-05-12'], ['act', '2024-08-01']]],
[['2024-05-01', 'expired'], ['2024-06-19', 'extended'], ['2024-08-01', 'unchanged']]),
('collection due after petition before stay end',
['2024-01-10', '2024-02-05', [['collection', '2024-02-01']]],
[['2024-03-06', 'extended']]),
('stay pending act only', ['2024-02-01', None, [['act', '2024-02-02']]], [['2024-04-01', 'extended']]),
('regression: late act deadline',
['2024-03-01', '2024-06-01', [['act', '2024-07-15']]],
[['2024-07-15', 'unchanged']]),
('act soon after petition',
['2024-03-01', '2024-06-01', [['act', '2024-03-10']]],
[['2024-04-30', 'extended']]),
('deadline on petition date',
['2024-03-01', '2024-06-01', [['act', '2024-03-01']]],
[['2024-04-30', 'extended']]),
('expired day before', ['2024-03-01', '2024-06-01', [['act', '2024-02-29']]], [['2024-02-29', 'expired']])],
[('collection due after petition before stay end',
['2024-01-10', '2024-02-05', [['collection', '2024-02-01']]],
[['2024-03-06', 'extended']]),
('stay pending act only', ['2024-02-01', None, [['act', '2024-02-02']]], [['2024-04-01', 'extended']]),
('regression: late act deadline',
['2024-03-01', '2024-06-01', [['act', '2024-07-15']]],
[['2024-07-15', 'unchanged']]),
('act soon after petition',
['2024-03-01', '2024-06-01', [['act', '2024-03-10']]],
[['2024-04-30', 'extended']]),
('deadline on petition date',
['2024-03-01', '2024-06-01', [['act', '2024-03-01']]],
[['2024-04-30', 'extended']]),
('expired day before', ['2024-03-01', '2024-06-01', [['act', '2024-02-29']]], [['2024-02-29', 'expired']]),
('collection after stay',
['2024-03-01', '2024-06-01', [['collection', '2024-03-15']]],
[['2024-07-01', 'extended']])]]
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: late act deadline | [['2024-07-15', 'unchanged']] | [['2024-07-15', 'unchanged']] | Passed |
| act soon after petition | [['2024-04-30', 'extended']] | [['2024-04-30', 'extended']] | Passed |
| deadline on petition date | [['2024-04-30', 'extended']] | [['2024-04-30', 'extended']] | Passed |
| expired day before | [['2024-02-29', 'expired']] | [['2024-02-29', 'expired']] | Passed |
| collection after stay | [['2024-07-01', 'extended']] | [['2024-07-01', 'extended']] | Passed |
| collection stay pending | [[None, 'stayed'], ['2024-04-30', 'extended']] | [[None, 'stayed'], ['2024-04-30', 'extended']] | Passed |
| collection late anyway | [['2024-06-30', 'unchanged']] | [['2024-06-30', 'unchanged']] | Passed |
SHA-256 / 4d935c54d0a97910e75155214fa9d9f2080c87dfa64d7d4a714ec1b1b87c7018
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:28.642070+00:00.
Case digest / 2ddf7fa8dc3ba65abb60ef5f381e646851e32307262d12426245fc45f4f731c6