FA-97101 / Recipe scaling and nutrition / Open access
High-altitude baking adjuster: liquid increase per level · case 01
Liquid at 8000 ft increases no more than at 3000 ft, and sea level also gets extra liquid.
ROOT CAUSE
The 1.5 tbsp per cup increase is applied once regardless of level.
VERIFIED REPAIR
Multiply liquid by (1 + 3*level/32).
Unsuccessful approach: level/32 adds half a tablespoon per level instead of 1.5.
Case contract
Level 0 below 3000 ft, 1 for 3000-4999, 2 for 5000-6999, 3 at 7000+. Baking powder times (1-level/8); sugar times (1-level/16) (1 tbsp per cup per level); liquid times (1+3*level/32) (1.5 tbsp per cup per level); oven +15 F at levels 1-2 and +25 F at level 3. Amounts are fraction strings in and exact str(Fraction) out.
Why this case matters
Cake and quick-bread recipes need leavening, sugar, liquid and temperature changes at elevation.
1 / The failure
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
import math
from fractions import Fraction
N = 1
observations = []
def solve(altitude_ft, recipe):
if altitude_ft < 3000:
level = 0
elif altitude_ft < 5000:
level = 1
elif altitude_ft < 7000:
level = 2
else:
level = 3
bp = Fraction(recipe['baking_powder_tsp'])
sugar = Fraction(recipe['sugar_cups'])
liquid = Fraction(recipe['liquid_cups'])
bp = bp * (1 - Fraction(level, 8))
sugar = sugar * (1 - Fraction(level, 16))
liquid = liquid * (1 + Fraction(3, 32))
oven = recipe['oven_f'] + (0 if level == 0 else 25 if level == 3 else 15)
return {'level': level, 'baking_powder_tsp': str(bp), 'sugar_cups': str(sugar),
'liquid_cups': str(liquid), 'oven_f': oven}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[['sea level', [0, {'baking_powder_tsp': '1', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '1', 'level': 0, 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
['threshold 3000', [3000, {'baking_powder_tsp': '2', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '7/4', 'level': 1, 'liquid_cups': '35/32', 'oven_f': 365, 'sugar_cups': '15/16'}],
['level two', [5000, {'baking_powder_tsp': '1', 'liquid_cups': '1/2', 'oven_f': 375, 'sugar_cups': '2'}],
{'baking_powder_tsp': '3/4', 'level': 2, 'liquid_cups': '19/32', 'oven_f': 390, 'sugar_cups': '7/4'}],
['regression: liquid increase per level',
[2999, {'baking_powder_tsp': '1/2', 'liquid_cups': '3/4', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '1/2', 'level': 0, 'liquid_cups': '3/4', 'oven_f': 350, 'sugar_cups': '1'}],
['repair check: liquid increase per level',
[3000, {'baking_powder_tsp': '3/2', 'liquid_cups': '1/2', 'oven_f': 325, 'sugar_cups': '3/4'}],
{'baking_powder_tsp': '21/16', 'level': 1, 'liquid_cups': '35/64', 'oven_f': 340, 'sugar_cups': '45/64'}],
['generated control 1',
[4999, {'baking_powder_tsp': '3/2', 'liquid_cups': '3/4', 'oven_f': 325, 'sugar_cups': '1'}],
{'baking_powder_tsp': '21/16',
'level': 1,
'liquid_cups': '105/128',
'oven_f': 340,
'sugar_cups': '15/16'}],
['generated control 2',
[2999, {'baking_powder_tsp': '2', 'liquid_cups': '3/4', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '2', 'level': 0, 'liquid_cups': '3/4', 'oven_f': 350, 'sugar_cups': '1'}],
['generated control 3',
[9000, {'baking_powder_tsp': '1', 'liquid_cups': '1', 'oven_f': 325, 'sugar_cups': '3/4'}],
{'baking_powder_tsp': '5/8', 'level': 3, 'liquid_cups': '41/32', 'oven_f': 350, 'sugar_cups': '39/64'}]],
[['threshold 3000', [3000, {'baking_powder_tsp': '2', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '7/4', 'level': 1, 'liquid_cups': '35/32', 'oven_f': 365, 'sugar_cups': '15/16'}],
['level two', [5000, {'baking_powder_tsp': '1', 'liquid_cups': '1/2', 'oven_f': 375, 'sugar_cups': '2'}],
{'baking_powder_tsp': '3/4', 'level': 2, 'liquid_cups': '19/32', 'oven_f': 390, 'sugar_cups': '7/4'}],
['mountain', [8000, {'baking_powder_tsp': '1', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '5/8', 'level': 3, 'liquid_cups': '41/32', 'oven_f': 375, 'sugar_cups': '13/16'}],
['regression: liquid increase per level',
[7000, {'baking_powder_tsp': '1', 'liquid_cups': '1/2', 'oven_f': 350, 'sugar_cups': '1/2'}],
{'baking_powder_tsp': '5/8', 'level': 3, 'liquid_cups': '41/64', 'oven_f': 375, 'sugar_cups': '13/32'}],
['repair check: liquid increase per level',
[6500, {'baking_powder_tsp': '1/2', 'liquid_cups': '4/3', 'oven_f': 325, 'sugar_cups': '3/4'}],
{'baking_powder_tsp': '3/8', 'level': 2, 'liquid_cups': '19/12', 'oven_f': 340, 'sugar_cups': '21/32'}],
['generated control 1',
[1500, {'baking_powder_tsp': '1', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '1', 'level': 0, 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
['generated control 2',
[4999, {'baking_powder_tsp': '1/2', 'liquid_cups': '3/4', 'oven_f': 350, 'sugar_cups': '3/4'}],
{'baking_powder_tsp': '7/16', 'level': 1, 'liquid_cups': '105/128', 'oven_f': 365, 'sugar_cups': '45/64'}],
['generated control 3',
[7000, {'baking_powder_tsp': '2', 'liquid_cups': '4/3', 'oven_f': 375, 'sugar_cups': '1/2'}],
{'baking_powder_tsp': '5/4', 'level': 3, 'liquid_cups': '41/24', 'oven_f': 400, 'sugar_cups': '13/32'}]],
[['level two', [5000, {'baking_powder_tsp': '1', 'liquid_cups': '1/2', 'oven_f': 375, 'sugar_cups': '2'}],
{'baking_powder_tsp': '3/4', 'level': 2, 'liquid_cups': '19/32', 'oven_f': 390, 'sugar_cups': '7/4'}],
['mountain', [8000, {'baking_powder_tsp': '1', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '5/8', 'level': 3, 'liquid_cups': '41/32', 'oven_f': 375, 'sugar_cups': '13/16'}],
['sea level', [0, {'baking_powder_tsp': '1', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '1', 'level': 0, 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
['regression: liquid increase per level',
[5000, {'baking_powder_tsp': '2', 'liquid_cups': '4/3', 'oven_f': 375, 'sugar_cups': '3/4'}],
{'baking_powder_tsp': '3/2', 'level': 2, 'liquid_cups': '19/12', 'oven_f': 390, 'sugar_cups': '21/32'}],
['repair check: liquid increase per level',
[5000, {'baking_powder_tsp': '1', 'liquid_cups': '4/3', 'oven_f': 375, 'sugar_cups': '1/2'}],
{'baking_powder_tsp': '3/4', 'level': 2, 'liquid_cups': '19/12', 'oven_f': 390, 'sugar_cups': '7/16'}],
['generated control 1',
[7000, {'baking_powder_tsp': '1', 'liquid_cups': '1/2', 'oven_f': 375, 'sugar_cups': '2'}],
{'baking_powder_tsp': '5/8', 'level': 3, 'liquid_cups': '41/64', 'oven_f': 400, 'sugar_cups': '13/8'}],
['generated control 2',
[1500, {'baking_powder_tsp': '1/2', 'liquid_cups': '1/2', 'oven_f': 350, 'sugar_cups': '3/4'}],
{'baking_powder_tsp': '1/2', 'level': 0, 'liquid_cups': '1/2', 'oven_f': 350, 'sugar_cups': '3/4'}],
['generated control 3',
[3500, {'baking_powder_tsp': '1', 'liquid_cups': '4/3', 'oven_f': 350, 'sugar_cups': '1/2'}],
{'baking_powder_tsp': '7/8', 'level': 1, 'liquid_cups': '35/24', 'oven_f': 365, 'sugar_cups': '15/32'}]],
[['mountain', [8000, {'baking_powder_tsp': '1', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '5/8', 'level': 3, 'liquid_cups': '41/32', 'oven_f': 375, 'sugar_cups': '13/16'}],
['sea level', [0, {'baking_powder_tsp': '1', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '1', 'level': 0, 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
['threshold 3000', [3000, {'baking_powder_tsp': '2', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '7/4', 'level': 1, 'liquid_cups': '35/32', 'oven_f': 365, 'sugar_cups': '15/16'}],
['regression: liquid increase per level',
[0, {'baking_powder_tsp': '1/2', 'liquid_cups': '3/4', 'oven_f': 375, 'sugar_cups': '2'}],
{'baking_powder_tsp': '1/2', 'level': 0, 'liquid_cups': '3/4', 'oven_f': 375, 'sugar_cups': '2'}],
['repair check: liquid increase per level',
[6500, {'baking_powder_tsp': '3/2', 'liquid_cups': '1/2', 'oven_f': 375, 'sugar_cups': '1'}],
{'baking_powder_tsp': '9/8', 'level': 2, 'liquid_cups': '19/32', 'oven_f': 390, 'sugar_cups': '7/8'}],
['generated control 1',
[1500, {'baking_powder_tsp': '3/2', 'liquid_cups': '1/2', 'oven_f': 325, 'sugar_cups': '1'}],
{'baking_powder_tsp': '3/2', 'level': 0, 'liquid_cups': '1/2', 'oven_f': 325, 'sugar_cups': '1'}],
['generated control 2',
[0, {'baking_powder_tsp': '1/2', 'liquid_cups': '1', 'oven_f': 375, 'sugar_cups': '3/4'}],
{'baking_powder_tsp': '1/2', 'level': 0, 'liquid_cups': '1', 'oven_f': 375, 'sugar_cups': '3/4'}],
['generated control 3',
[6500, {'baking_powder_tsp': '1', 'liquid_cups': '3/4', 'oven_f': 325, 'sugar_cups': '3/4'}],
{'baking_powder_tsp': '3/4', 'level': 2, 'liquid_cups': '57/64', 'oven_f': 340, 'sugar_cups': '21/32'}]],
[['sea level', [0, {'baking_powder_tsp': '1', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '1', 'level': 0, 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
['threshold 3000', [3000, {'baking_powder_tsp': '2', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '7/4', 'level': 1, 'liquid_cups': '35/32', 'oven_f': 365, 'sugar_cups': '15/16'}],
['level two', [5000, {'baking_powder_tsp': '1', 'liquid_cups': '1/2', 'oven_f': 375, 'sugar_cups': '2'}],
{'baking_powder_tsp': '3/4', 'level': 2, 'liquid_cups': '19/32', 'oven_f': 390, 'sugar_cups': '7/4'}],
['regression: liquid increase per level',
[1500, {'baking_powder_tsp': '1/2', 'liquid_cups': '4/3', 'oven_f': 325, 'sugar_cups': '1/2'}],
{'baking_powder_tsp': '1/2', 'level': 0, 'liquid_cups': '4/3', 'oven_f': 325, 'sugar_cups': '1/2'}],
['repair check: liquid increase per level',
[7000, {'baking_powder_tsp': '2', 'liquid_cups': '1', 'oven_f': 375, 'sugar_cups': '2'}],
{'baking_powder_tsp': '5/4', 'level': 3, 'liquid_cups': '41/32', 'oven_f': 400, 'sugar_cups': '13/8'}],
['generated control 1',
[4999, {'baking_powder_tsp': '2', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1/2'}],
{'baking_powder_tsp': '7/4', 'level': 1, 'liquid_cups': '35/32', 'oven_f': 365, 'sugar_cups': '15/32'}],
['generated control 2',
[0, {'baking_powder_tsp': '3/2', 'liquid_cups': '1', 'oven_f': 325, 'sugar_cups': '1'}],
{'baking_powder_tsp': '3/2', 'level': 0, 'liquid_cups': '1', 'oven_f': 325, 'sugar_cups': '1'}],
['generated control 3',
[9000, {'baking_powder_tsp': '2', 'liquid_cups': '3/4', 'oven_f': 375, 'sugar_cups': '3/4'}],
{'baking_powder_tsp': '5/4', 'level': 3, 'liquid_cups': '123/128', 'oven_f': 400, 'sugar_cups': '39/64'}]]]
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 |
|---|---|---|---|
| sea level | {'baking_powder_tsp': '1', 'level': 0, 'liquid_cups': '35/32', 'oven_f': 350, 'sugar_cups': '1'} | {'baking_powder_tsp': '1', 'level': 0, 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'} | Failed |
| threshold 3000 | {'baking_powder_tsp': '7/4', 'level': 1, 'liquid_cups': '35/32', 'oven_f': 365, 'sugar_cups': '15/16'} | {'baking_powder_tsp': '7/4', 'level': 1, 'liquid_cups': '35/32', 'oven_f': 365, 'sugar_cups': '15/16'} | Passed |
| level two | {'baking_powder_tsp': '3/4', 'level': 2, 'liquid_cups': '35/64', 'oven_f': 390, 'sugar_cups': '7/4'} | {'baking_powder_tsp': '3/4', 'level': 2, 'liquid_cups': '19/32', 'oven_f': 390, 'sugar_cups': '7/4'} | Failed |
| regression: liquid increase per level | {'baking_powder_tsp': '1/2', 'level': 0, 'liquid_cups': '105/128', 'oven_f': 350, 'sugar_cups': '1'} | {'baking_powder_tsp': '1/2', 'level': 0, 'liquid_cups': '3/4', 'oven_f': 350, 'sugar_cups': '1'} | Failed |
| repair check: liquid increase per level | {'baking_powder_tsp': '21/16', 'level': 1, 'liquid_cups': '35/64', 'oven_f': 340, 'sugar_cups': '45/64'} | {'baking_powder_tsp': '21/16', 'level': 1, 'liquid_cups': '35/64', 'oven_f': 340, 'sugar_cups': '45/64'} | Passed |
| generated control 1 | {'baking_powder_tsp': '21/16', 'level': 1, 'liquid_cups': '105/128', 'oven_f': 340, 'sugar_cups': '15/16'} | {'baking_powder_tsp': '21/16', 'level': 1, 'liquid_cups': '105/128', 'oven_f': 340, 'sugar_cups': '15/16'} | Passed |
| generated control 2 | {'baking_powder_tsp': '2', 'level': 0, 'liquid_cups': '105/128', 'oven_f': 350, 'sugar_cups': '1'} | {'baking_powder_tsp': '2', 'level': 0, 'liquid_cups': '3/4', 'oven_f': 350, 'sugar_cups': '1'} | Failed |
| generated control 3 | {'baking_powder_tsp': '5/8', 'level': 3, 'liquid_cups': '35/32', 'oven_f': 350, 'sugar_cups': '39/64'} | {'baking_powder_tsp': '5/8', 'level': 3, 'liquid_cups': '41/32', 'oven_f': 350, 'sugar_cups': '39/64'} | Failed |
SHA-256 / 79f8c1409dcade4b5cd0995b8c248a45fb534a700bd423ce404c58da393078a5
2 / The unsuccessful fix
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
import math
from fractions import Fraction
N = 1
observations = []
def solve(altitude_ft, recipe):
if altitude_ft < 3000:
level = 0
elif altitude_ft < 5000:
level = 1
elif altitude_ft < 7000:
level = 2
else:
level = 3
bp = Fraction(recipe['baking_powder_tsp'])
sugar = Fraction(recipe['sugar_cups'])
liquid = Fraction(recipe['liquid_cups'])
bp = bp * (1 - Fraction(level, 8))
sugar = sugar * (1 - Fraction(level, 16))
liquid = liquid * (1 + Fraction(level, 32))
oven = recipe['oven_f'] + (0 if level == 0 else 25 if level == 3 else 15)
return {'level': level, 'baking_powder_tsp': str(bp), 'sugar_cups': str(sugar),
'liquid_cups': str(liquid), 'oven_f': oven}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[['sea level', [0, {'baking_powder_tsp': '1', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '1', 'level': 0, 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
['threshold 3000', [3000, {'baking_powder_tsp': '2', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '7/4', 'level': 1, 'liquid_cups': '35/32', 'oven_f': 365, 'sugar_cups': '15/16'}],
['level two', [5000, {'baking_powder_tsp': '1', 'liquid_cups': '1/2', 'oven_f': 375, 'sugar_cups': '2'}],
{'baking_powder_tsp': '3/4', 'level': 2, 'liquid_cups': '19/32', 'oven_f': 390, 'sugar_cups': '7/4'}],
['regression: liquid increase per level',
[2999, {'baking_powder_tsp': '1/2', 'liquid_cups': '3/4', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '1/2', 'level': 0, 'liquid_cups': '3/4', 'oven_f': 350, 'sugar_cups': '1'}],
['repair check: liquid increase per level',
[3000, {'baking_powder_tsp': '3/2', 'liquid_cups': '1/2', 'oven_f': 325, 'sugar_cups': '3/4'}],
{'baking_powder_tsp': '21/16', 'level': 1, 'liquid_cups': '35/64', 'oven_f': 340, 'sugar_cups': '45/64'}],
['generated control 1',
[4999, {'baking_powder_tsp': '3/2', 'liquid_cups': '3/4', 'oven_f': 325, 'sugar_cups': '1'}],
{'baking_powder_tsp': '21/16',
'level': 1,
'liquid_cups': '105/128',
'oven_f': 340,
'sugar_cups': '15/16'}],
['generated control 2',
[2999, {'baking_powder_tsp': '2', 'liquid_cups': '3/4', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '2', 'level': 0, 'liquid_cups': '3/4', 'oven_f': 350, 'sugar_cups': '1'}],
['generated control 3',
[9000, {'baking_powder_tsp': '1', 'liquid_cups': '1', 'oven_f': 325, 'sugar_cups': '3/4'}],
{'baking_powder_tsp': '5/8', 'level': 3, 'liquid_cups': '41/32', 'oven_f': 350, 'sugar_cups': '39/64'}]],
[['threshold 3000', [3000, {'baking_powder_tsp': '2', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '7/4', 'level': 1, 'liquid_cups': '35/32', 'oven_f': 365, 'sugar_cups': '15/16'}],
['level two', [5000, {'baking_powder_tsp': '1', 'liquid_cups': '1/2', 'oven_f': 375, 'sugar_cups': '2'}],
{'baking_powder_tsp': '3/4', 'level': 2, 'liquid_cups': '19/32', 'oven_f': 390, 'sugar_cups': '7/4'}],
['mountain', [8000, {'baking_powder_tsp': '1', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '5/8', 'level': 3, 'liquid_cups': '41/32', 'oven_f': 375, 'sugar_cups': '13/16'}],
['regression: liquid increase per level',
[7000, {'baking_powder_tsp': '1', 'liquid_cups': '1/2', 'oven_f': 350, 'sugar_cups': '1/2'}],
{'baking_powder_tsp': '5/8', 'level': 3, 'liquid_cups': '41/64', 'oven_f': 375, 'sugar_cups': '13/32'}],
['repair check: liquid increase per level',
[6500, {'baking_powder_tsp': '1/2', 'liquid_cups': '4/3', 'oven_f': 325, 'sugar_cups': '3/4'}],
{'baking_powder_tsp': '3/8', 'level': 2, 'liquid_cups': '19/12', 'oven_f': 340, 'sugar_cups': '21/32'}],
['generated control 1',
[1500, {'baking_powder_tsp': '1', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '1', 'level': 0, 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
['generated control 2',
[4999, {'baking_powder_tsp': '1/2', 'liquid_cups': '3/4', 'oven_f': 350, 'sugar_cups': '3/4'}],
{'baking_powder_tsp': '7/16', 'level': 1, 'liquid_cups': '105/128', 'oven_f': 365, 'sugar_cups': '45/64'}],
['generated control 3',
[7000, {'baking_powder_tsp': '2', 'liquid_cups': '4/3', 'oven_f': 375, 'sugar_cups': '1/2'}],
{'baking_powder_tsp': '5/4', 'level': 3, 'liquid_cups': '41/24', 'oven_f': 400, 'sugar_cups': '13/32'}]],
[['level two', [5000, {'baking_powder_tsp': '1', 'liquid_cups': '1/2', 'oven_f': 375, 'sugar_cups': '2'}],
{'baking_powder_tsp': '3/4', 'level': 2, 'liquid_cups': '19/32', 'oven_f': 390, 'sugar_cups': '7/4'}],
['mountain', [8000, {'baking_powder_tsp': '1', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '5/8', 'level': 3, 'liquid_cups': '41/32', 'oven_f': 375, 'sugar_cups': '13/16'}],
['sea level', [0, {'baking_powder_tsp': '1', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '1', 'level': 0, 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
['regression: liquid increase per level',
[5000, {'baking_powder_tsp': '2', 'liquid_cups': '4/3', 'oven_f': 375, 'sugar_cups': '3/4'}],
{'baking_powder_tsp': '3/2', 'level': 2, 'liquid_cups': '19/12', 'oven_f': 390, 'sugar_cups': '21/32'}],
['repair check: liquid increase per level',
[5000, {'baking_powder_tsp': '1', 'liquid_cups': '4/3', 'oven_f': 375, 'sugar_cups': '1/2'}],
{'baking_powder_tsp': '3/4', 'level': 2, 'liquid_cups': '19/12', 'oven_f': 390, 'sugar_cups': '7/16'}],
['generated control 1',
[7000, {'baking_powder_tsp': '1', 'liquid_cups': '1/2', 'oven_f': 375, 'sugar_cups': '2'}],
{'baking_powder_tsp': '5/8', 'level': 3, 'liquid_cups': '41/64', 'oven_f': 400, 'sugar_cups': '13/8'}],
['generated control 2',
[1500, {'baking_powder_tsp': '1/2', 'liquid_cups': '1/2', 'oven_f': 350, 'sugar_cups': '3/4'}],
{'baking_powder_tsp': '1/2', 'level': 0, 'liquid_cups': '1/2', 'oven_f': 350, 'sugar_cups': '3/4'}],
['generated control 3',
[3500, {'baking_powder_tsp': '1', 'liquid_cups': '4/3', 'oven_f': 350, 'sugar_cups': '1/2'}],
{'baking_powder_tsp': '7/8', 'level': 1, 'liquid_cups': '35/24', 'oven_f': 365, 'sugar_cups': '15/32'}]],
[['mountain', [8000, {'baking_powder_tsp': '1', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '5/8', 'level': 3, 'liquid_cups': '41/32', 'oven_f': 375, 'sugar_cups': '13/16'}],
['sea level', [0, {'baking_powder_tsp': '1', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '1', 'level': 0, 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
['threshold 3000', [3000, {'baking_powder_tsp': '2', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '7/4', 'level': 1, 'liquid_cups': '35/32', 'oven_f': 365, 'sugar_cups': '15/16'}],
['regression: liquid increase per level',
[0, {'baking_powder_tsp': '1/2', 'liquid_cups': '3/4', 'oven_f': 375, 'sugar_cups': '2'}],
{'baking_powder_tsp': '1/2', 'level': 0, 'liquid_cups': '3/4', 'oven_f': 375, 'sugar_cups': '2'}],
['repair check: liquid increase per level',
[6500, {'baking_powder_tsp': '3/2', 'liquid_cups': '1/2', 'oven_f': 375, 'sugar_cups': '1'}],
{'baking_powder_tsp': '9/8', 'level': 2, 'liquid_cups': '19/32', 'oven_f': 390, 'sugar_cups': '7/8'}],
['generated control 1',
[1500, {'baking_powder_tsp': '3/2', 'liquid_cups': '1/2', 'oven_f': 325, 'sugar_cups': '1'}],
{'baking_powder_tsp': '3/2', 'level': 0, 'liquid_cups': '1/2', 'oven_f': 325, 'sugar_cups': '1'}],
['generated control 2',
[0, {'baking_powder_tsp': '1/2', 'liquid_cups': '1', 'oven_f': 375, 'sugar_cups': '3/4'}],
{'baking_powder_tsp': '1/2', 'level': 0, 'liquid_cups': '1', 'oven_f': 375, 'sugar_cups': '3/4'}],
['generated control 3',
[6500, {'baking_powder_tsp': '1', 'liquid_cups': '3/4', 'oven_f': 325, 'sugar_cups': '3/4'}],
{'baking_powder_tsp': '3/4', 'level': 2, 'liquid_cups': '57/64', 'oven_f': 340, 'sugar_cups': '21/32'}]],
[['sea level', [0, {'baking_powder_tsp': '1', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '1', 'level': 0, 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
['threshold 3000', [3000, {'baking_powder_tsp': '2', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '7/4', 'level': 1, 'liquid_cups': '35/32', 'oven_f': 365, 'sugar_cups': '15/16'}],
['level two', [5000, {'baking_powder_tsp': '1', 'liquid_cups': '1/2', 'oven_f': 375, 'sugar_cups': '2'}],
{'baking_powder_tsp': '3/4', 'level': 2, 'liquid_cups': '19/32', 'oven_f': 390, 'sugar_cups': '7/4'}],
['regression: liquid increase per level',
[1500, {'baking_powder_tsp': '1/2', 'liquid_cups': '4/3', 'oven_f': 325, 'sugar_cups': '1/2'}],
{'baking_powder_tsp': '1/2', 'level': 0, 'liquid_cups': '4/3', 'oven_f': 325, 'sugar_cups': '1/2'}],
['repair check: liquid increase per level',
[7000, {'baking_powder_tsp': '2', 'liquid_cups': '1', 'oven_f': 375, 'sugar_cups': '2'}],
{'baking_powder_tsp': '5/4', 'level': 3, 'liquid_cups': '41/32', 'oven_f': 400, 'sugar_cups': '13/8'}],
['generated control 1',
[4999, {'baking_powder_tsp': '2', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1/2'}],
{'baking_powder_tsp': '7/4', 'level': 1, 'liquid_cups': '35/32', 'oven_f': 365, 'sugar_cups': '15/32'}],
['generated control 2',
[0, {'baking_powder_tsp': '3/2', 'liquid_cups': '1', 'oven_f': 325, 'sugar_cups': '1'}],
{'baking_powder_tsp': '3/2', 'level': 0, 'liquid_cups': '1', 'oven_f': 325, 'sugar_cups': '1'}],
['generated control 3',
[9000, {'baking_powder_tsp': '2', 'liquid_cups': '3/4', 'oven_f': 375, 'sugar_cups': '3/4'}],
{'baking_powder_tsp': '5/4', 'level': 3, 'liquid_cups': '123/128', 'oven_f': 400, 'sugar_cups': '39/64'}]]]
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 |
|---|---|---|---|
| sea level | {'baking_powder_tsp': '1', 'level': 0, 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'} | {'baking_powder_tsp': '1', 'level': 0, 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'} | Passed |
| threshold 3000 | {'baking_powder_tsp': '7/4', 'level': 1, 'liquid_cups': '33/32', 'oven_f': 365, 'sugar_cups': '15/16'} | {'baking_powder_tsp': '7/4', 'level': 1, 'liquid_cups': '35/32', 'oven_f': 365, 'sugar_cups': '15/16'} | Failed |
| level two | {'baking_powder_tsp': '3/4', 'level': 2, 'liquid_cups': '17/32', 'oven_f': 390, 'sugar_cups': '7/4'} | {'baking_powder_tsp': '3/4', 'level': 2, 'liquid_cups': '19/32', 'oven_f': 390, 'sugar_cups': '7/4'} | Failed |
| regression: liquid increase per level | {'baking_powder_tsp': '1/2', 'level': 0, 'liquid_cups': '3/4', 'oven_f': 350, 'sugar_cups': '1'} | {'baking_powder_tsp': '1/2', 'level': 0, 'liquid_cups': '3/4', 'oven_f': 350, 'sugar_cups': '1'} | Passed |
| repair check: liquid increase per level | {'baking_powder_tsp': '21/16', 'level': 1, 'liquid_cups': '33/64', 'oven_f': 340, 'sugar_cups': '45/64'} | {'baking_powder_tsp': '21/16', 'level': 1, 'liquid_cups': '35/64', 'oven_f': 340, 'sugar_cups': '45/64'} | Failed |
| generated control 1 | {'baking_powder_tsp': '21/16', 'level': 1, 'liquid_cups': '99/128', 'oven_f': 340, 'sugar_cups': '15/16'} | {'baking_powder_tsp': '21/16', 'level': 1, 'liquid_cups': '105/128', 'oven_f': 340, 'sugar_cups': '15/16'} | Failed |
| generated control 2 | {'baking_powder_tsp': '2', 'level': 0, 'liquid_cups': '3/4', 'oven_f': 350, 'sugar_cups': '1'} | {'baking_powder_tsp': '2', 'level': 0, 'liquid_cups': '3/4', 'oven_f': 350, 'sugar_cups': '1'} | Passed |
| generated control 3 | {'baking_powder_tsp': '5/8', 'level': 3, 'liquid_cups': '35/32', 'oven_f': 350, 'sugar_cups': '39/64'} | {'baking_powder_tsp': '5/8', 'level': 3, 'liquid_cups': '41/32', 'oven_f': 350, 'sugar_cups': '39/64'} | Failed |
SHA-256 / 017ee13b13ef75ef52fe75a919a0925570d20274b3f16ed688b00a4dda9aa5cf
3 / The verified repair
Exit 0"""Failure Map reference implementation. Python standard library only."""
import json
import math
from fractions import Fraction
N = 1
observations = []
def solve(altitude_ft, recipe):
if altitude_ft < 3000:
level = 0
elif altitude_ft < 5000:
level = 1
elif altitude_ft < 7000:
level = 2
else:
level = 3
bp = Fraction(recipe['baking_powder_tsp'])
sugar = Fraction(recipe['sugar_cups'])
liquid = Fraction(recipe['liquid_cups'])
bp = bp * (1 - Fraction(level, 8))
sugar = sugar * (1 - Fraction(level, 16))
liquid = liquid * (1 + Fraction(3 * level, 32))
oven = recipe['oven_f'] + (0 if level == 0 else 25 if level == 3 else 15)
return {'level': level, 'baking_powder_tsp': str(bp), 'sugar_cups': str(sugar),
'liquid_cups': str(liquid), 'oven_f': oven}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[['sea level', [0, {'baking_powder_tsp': '1', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '1', 'level': 0, 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
['threshold 3000', [3000, {'baking_powder_tsp': '2', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '7/4', 'level': 1, 'liquid_cups': '35/32', 'oven_f': 365, 'sugar_cups': '15/16'}],
['level two', [5000, {'baking_powder_tsp': '1', 'liquid_cups': '1/2', 'oven_f': 375, 'sugar_cups': '2'}],
{'baking_powder_tsp': '3/4', 'level': 2, 'liquid_cups': '19/32', 'oven_f': 390, 'sugar_cups': '7/4'}],
['regression: liquid increase per level',
[2999, {'baking_powder_tsp': '1/2', 'liquid_cups': '3/4', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '1/2', 'level': 0, 'liquid_cups': '3/4', 'oven_f': 350, 'sugar_cups': '1'}],
['repair check: liquid increase per level',
[3000, {'baking_powder_tsp': '3/2', 'liquid_cups': '1/2', 'oven_f': 325, 'sugar_cups': '3/4'}],
{'baking_powder_tsp': '21/16', 'level': 1, 'liquid_cups': '35/64', 'oven_f': 340, 'sugar_cups': '45/64'}],
['generated control 1',
[4999, {'baking_powder_tsp': '3/2', 'liquid_cups': '3/4', 'oven_f': 325, 'sugar_cups': '1'}],
{'baking_powder_tsp': '21/16',
'level': 1,
'liquid_cups': '105/128',
'oven_f': 340,
'sugar_cups': '15/16'}],
['generated control 2',
[2999, {'baking_powder_tsp': '2', 'liquid_cups': '3/4', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '2', 'level': 0, 'liquid_cups': '3/4', 'oven_f': 350, 'sugar_cups': '1'}],
['generated control 3',
[9000, {'baking_powder_tsp': '1', 'liquid_cups': '1', 'oven_f': 325, 'sugar_cups': '3/4'}],
{'baking_powder_tsp': '5/8', 'level': 3, 'liquid_cups': '41/32', 'oven_f': 350, 'sugar_cups': '39/64'}]],
[['threshold 3000', [3000, {'baking_powder_tsp': '2', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '7/4', 'level': 1, 'liquid_cups': '35/32', 'oven_f': 365, 'sugar_cups': '15/16'}],
['level two', [5000, {'baking_powder_tsp': '1', 'liquid_cups': '1/2', 'oven_f': 375, 'sugar_cups': '2'}],
{'baking_powder_tsp': '3/4', 'level': 2, 'liquid_cups': '19/32', 'oven_f': 390, 'sugar_cups': '7/4'}],
['mountain', [8000, {'baking_powder_tsp': '1', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '5/8', 'level': 3, 'liquid_cups': '41/32', 'oven_f': 375, 'sugar_cups': '13/16'}],
['regression: liquid increase per level',
[7000, {'baking_powder_tsp': '1', 'liquid_cups': '1/2', 'oven_f': 350, 'sugar_cups': '1/2'}],
{'baking_powder_tsp': '5/8', 'level': 3, 'liquid_cups': '41/64', 'oven_f': 375, 'sugar_cups': '13/32'}],
['repair check: liquid increase per level',
[6500, {'baking_powder_tsp': '1/2', 'liquid_cups': '4/3', 'oven_f': 325, 'sugar_cups': '3/4'}],
{'baking_powder_tsp': '3/8', 'level': 2, 'liquid_cups': '19/12', 'oven_f': 340, 'sugar_cups': '21/32'}],
['generated control 1',
[1500, {'baking_powder_tsp': '1', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '1', 'level': 0, 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
['generated control 2',
[4999, {'baking_powder_tsp': '1/2', 'liquid_cups': '3/4', 'oven_f': 350, 'sugar_cups': '3/4'}],
{'baking_powder_tsp': '7/16', 'level': 1, 'liquid_cups': '105/128', 'oven_f': 365, 'sugar_cups': '45/64'}],
['generated control 3',
[7000, {'baking_powder_tsp': '2', 'liquid_cups': '4/3', 'oven_f': 375, 'sugar_cups': '1/2'}],
{'baking_powder_tsp': '5/4', 'level': 3, 'liquid_cups': '41/24', 'oven_f': 400, 'sugar_cups': '13/32'}]],
[['level two', [5000, {'baking_powder_tsp': '1', 'liquid_cups': '1/2', 'oven_f': 375, 'sugar_cups': '2'}],
{'baking_powder_tsp': '3/4', 'level': 2, 'liquid_cups': '19/32', 'oven_f': 390, 'sugar_cups': '7/4'}],
['mountain', [8000, {'baking_powder_tsp': '1', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '5/8', 'level': 3, 'liquid_cups': '41/32', 'oven_f': 375, 'sugar_cups': '13/16'}],
['sea level', [0, {'baking_powder_tsp': '1', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '1', 'level': 0, 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
['regression: liquid increase per level',
[5000, {'baking_powder_tsp': '2', 'liquid_cups': '4/3', 'oven_f': 375, 'sugar_cups': '3/4'}],
{'baking_powder_tsp': '3/2', 'level': 2, 'liquid_cups': '19/12', 'oven_f': 390, 'sugar_cups': '21/32'}],
['repair check: liquid increase per level',
[5000, {'baking_powder_tsp': '1', 'liquid_cups': '4/3', 'oven_f': 375, 'sugar_cups': '1/2'}],
{'baking_powder_tsp': '3/4', 'level': 2, 'liquid_cups': '19/12', 'oven_f': 390, 'sugar_cups': '7/16'}],
['generated control 1',
[7000, {'baking_powder_tsp': '1', 'liquid_cups': '1/2', 'oven_f': 375, 'sugar_cups': '2'}],
{'baking_powder_tsp': '5/8', 'level': 3, 'liquid_cups': '41/64', 'oven_f': 400, 'sugar_cups': '13/8'}],
['generated control 2',
[1500, {'baking_powder_tsp': '1/2', 'liquid_cups': '1/2', 'oven_f': 350, 'sugar_cups': '3/4'}],
{'baking_powder_tsp': '1/2', 'level': 0, 'liquid_cups': '1/2', 'oven_f': 350, 'sugar_cups': '3/4'}],
['generated control 3',
[3500, {'baking_powder_tsp': '1', 'liquid_cups': '4/3', 'oven_f': 350, 'sugar_cups': '1/2'}],
{'baking_powder_tsp': '7/8', 'level': 1, 'liquid_cups': '35/24', 'oven_f': 365, 'sugar_cups': '15/32'}]],
[['mountain', [8000, {'baking_powder_tsp': '1', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '5/8', 'level': 3, 'liquid_cups': '41/32', 'oven_f': 375, 'sugar_cups': '13/16'}],
['sea level', [0, {'baking_powder_tsp': '1', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '1', 'level': 0, 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
['threshold 3000', [3000, {'baking_powder_tsp': '2', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '7/4', 'level': 1, 'liquid_cups': '35/32', 'oven_f': 365, 'sugar_cups': '15/16'}],
['regression: liquid increase per level',
[0, {'baking_powder_tsp': '1/2', 'liquid_cups': '3/4', 'oven_f': 375, 'sugar_cups': '2'}],
{'baking_powder_tsp': '1/2', 'level': 0, 'liquid_cups': '3/4', 'oven_f': 375, 'sugar_cups': '2'}],
['repair check: liquid increase per level',
[6500, {'baking_powder_tsp': '3/2', 'liquid_cups': '1/2', 'oven_f': 375, 'sugar_cups': '1'}],
{'baking_powder_tsp': '9/8', 'level': 2, 'liquid_cups': '19/32', 'oven_f': 390, 'sugar_cups': '7/8'}],
['generated control 1',
[1500, {'baking_powder_tsp': '3/2', 'liquid_cups': '1/2', 'oven_f': 325, 'sugar_cups': '1'}],
{'baking_powder_tsp': '3/2', 'level': 0, 'liquid_cups': '1/2', 'oven_f': 325, 'sugar_cups': '1'}],
['generated control 2',
[0, {'baking_powder_tsp': '1/2', 'liquid_cups': '1', 'oven_f': 375, 'sugar_cups': '3/4'}],
{'baking_powder_tsp': '1/2', 'level': 0, 'liquid_cups': '1', 'oven_f': 375, 'sugar_cups': '3/4'}],
['generated control 3',
[6500, {'baking_powder_tsp': '1', 'liquid_cups': '3/4', 'oven_f': 325, 'sugar_cups': '3/4'}],
{'baking_powder_tsp': '3/4', 'level': 2, 'liquid_cups': '57/64', 'oven_f': 340, 'sugar_cups': '21/32'}]],
[['sea level', [0, {'baking_powder_tsp': '1', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '1', 'level': 0, 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
['threshold 3000', [3000, {'baking_powder_tsp': '2', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'}],
{'baking_powder_tsp': '7/4', 'level': 1, 'liquid_cups': '35/32', 'oven_f': 365, 'sugar_cups': '15/16'}],
['level two', [5000, {'baking_powder_tsp': '1', 'liquid_cups': '1/2', 'oven_f': 375, 'sugar_cups': '2'}],
{'baking_powder_tsp': '3/4', 'level': 2, 'liquid_cups': '19/32', 'oven_f': 390, 'sugar_cups': '7/4'}],
['regression: liquid increase per level',
[1500, {'baking_powder_tsp': '1/2', 'liquid_cups': '4/3', 'oven_f': 325, 'sugar_cups': '1/2'}],
{'baking_powder_tsp': '1/2', 'level': 0, 'liquid_cups': '4/3', 'oven_f': 325, 'sugar_cups': '1/2'}],
['repair check: liquid increase per level',
[7000, {'baking_powder_tsp': '2', 'liquid_cups': '1', 'oven_f': 375, 'sugar_cups': '2'}],
{'baking_powder_tsp': '5/4', 'level': 3, 'liquid_cups': '41/32', 'oven_f': 400, 'sugar_cups': '13/8'}],
['generated control 1',
[4999, {'baking_powder_tsp': '2', 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1/2'}],
{'baking_powder_tsp': '7/4', 'level': 1, 'liquid_cups': '35/32', 'oven_f': 365, 'sugar_cups': '15/32'}],
['generated control 2',
[0, {'baking_powder_tsp': '3/2', 'liquid_cups': '1', 'oven_f': 325, 'sugar_cups': '1'}],
{'baking_powder_tsp': '3/2', 'level': 0, 'liquid_cups': '1', 'oven_f': 325, 'sugar_cups': '1'}],
['generated control 3',
[9000, {'baking_powder_tsp': '2', 'liquid_cups': '3/4', 'oven_f': 375, 'sugar_cups': '3/4'}],
{'baking_powder_tsp': '5/4', 'level': 3, 'liquid_cups': '123/128', 'oven_f': 400, 'sugar_cups': '39/64'}]]]
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 |
|---|---|---|---|
| sea level | {'baking_powder_tsp': '1', 'level': 0, 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'} | {'baking_powder_tsp': '1', 'level': 0, 'liquid_cups': '1', 'oven_f': 350, 'sugar_cups': '1'} | Passed |
| threshold 3000 | {'baking_powder_tsp': '7/4', 'level': 1, 'liquid_cups': '35/32', 'oven_f': 365, 'sugar_cups': '15/16'} | {'baking_powder_tsp': '7/4', 'level': 1, 'liquid_cups': '35/32', 'oven_f': 365, 'sugar_cups': '15/16'} | Passed |
| level two | {'baking_powder_tsp': '3/4', 'level': 2, 'liquid_cups': '19/32', 'oven_f': 390, 'sugar_cups': '7/4'} | {'baking_powder_tsp': '3/4', 'level': 2, 'liquid_cups': '19/32', 'oven_f': 390, 'sugar_cups': '7/4'} | Passed |
| regression: liquid increase per level | {'baking_powder_tsp': '1/2', 'level': 0, 'liquid_cups': '3/4', 'oven_f': 350, 'sugar_cups': '1'} | {'baking_powder_tsp': '1/2', 'level': 0, 'liquid_cups': '3/4', 'oven_f': 350, 'sugar_cups': '1'} | Passed |
| repair check: liquid increase per level | {'baking_powder_tsp': '21/16', 'level': 1, 'liquid_cups': '35/64', 'oven_f': 340, 'sugar_cups': '45/64'} | {'baking_powder_tsp': '21/16', 'level': 1, 'liquid_cups': '35/64', 'oven_f': 340, 'sugar_cups': '45/64'} | Passed |
| generated control 1 | {'baking_powder_tsp': '21/16', 'level': 1, 'liquid_cups': '105/128', 'oven_f': 340, 'sugar_cups': '15/16'} | {'baking_powder_tsp': '21/16', 'level': 1, 'liquid_cups': '105/128', 'oven_f': 340, 'sugar_cups': '15/16'} | Passed |
| generated control 2 | {'baking_powder_tsp': '2', 'level': 0, 'liquid_cups': '3/4', 'oven_f': 350, 'sugar_cups': '1'} | {'baking_powder_tsp': '2', 'level': 0, 'liquid_cups': '3/4', 'oven_f': 350, 'sugar_cups': '1'} | Passed |
| generated control 3 | {'baking_powder_tsp': '5/8', 'level': 3, 'liquid_cups': '41/32', 'oven_f': 350, 'sugar_cups': '39/64'} | {'baking_powder_tsp': '5/8', 'level': 3, 'liquid_cups': '41/32', 'oven_f': 350, 'sugar_cups': '39/64'} | Passed |
SHA-256 / 18d0fcbc8af89f3275578cdfdc71b97067eb24fad6010bd0a34beb9da00c1af3
Verification & scope
A deterministic toy contract stated in full here; it is a bounded teaching model, not an authoritative reference or standards implementation. 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:52:28.874878+00:00.
Case digest / 24fc5729a624818c2377d0c4a13b8238953cbf933e2d0690e9f3b1f73987a782