{"abstract":"Wet-brined meat shows twice its equilibrium sodium.","category":"Recipe scaling and nutrition","checks":8,"contract":"Salt grams = total*pct/100 where total = meat+water for \"wet\" and meat only for \"dry\". Salt densities per tsp: table 6 g, morton kosher 4.8 g, diamond kosher 2.8 g. Return salt_g half-up to 0.1 (float), tsp half-up to 0.25 (float), and sodium_mg_per_100g = half-up of salt_g*393 per 100 g of total at equilibrium.","evaluation_group":"w2-recipe_scaling_and_nutrition-equilibrium-brine","failed_approach":"Always including water breaks dry brines where water is not part of the system.","family":"w2-recipe_scaling_and_nutrition-equilibrium-brine-equilibrium-sodium-basis","id":"FA-97331","implementations":{"attempt":{"sha256":"a426c82dbb28097e7a431a0b17a2d8fe540c1557070bdbb5b87ef687420ffe94","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nfrom fractions import Fraction\nN = 1\nobservations = []\ndef solve(meat_g, water_g, pct, salt_type, method):\n    DENS = {'table': Fraction(6), 'morton kosher': Fraction(24, 5), 'diamond kosher': Fraction(14, 5)}\n    total = meat_g + (0 if method == 'dry' else water_g)\n    salt = Fraction(total) * Fraction(pct) / 100\n    tsp = salt / DENS[salt_type]\n    sodium = salt * 393 * 100 / (meat_g + water_g)\n    return {'salt_g': math.floor(salt * 10 + Fraction(1, 2)) / 10, 'tsp': math.floor(tsp * 4 + Fraction(1, 2)) / 4,\n            'sodium_mg_per_100g': math.floor(sodium + Fraction(1, 2))}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['wet brine', [1000, 1000, '1', 'table', 'wet'], {'salt_g': 20.0, 'sodium_mg_per_100g': 393, 'tsp': 3.25}],\n  ['dry brine ignores water', [1500, 1000, '1', 'diamond kosher', 'dry'],\n   {'salt_g': 15.0, 'sodium_mg_per_100g': 393, 'tsp': 5.25}],\n  ['strong morton brine', [2000, 2000, '5', 'morton kosher', 'wet'],\n   {'salt_g': 200.0, 'sodium_mg_per_100g': 1965, 'tsp': 41.75}],\n  ['regression: equilibrium sodium basis', [2000, 500, '1', 'diamond kosher', 'wet'],\n   {'salt_g': 25.0, 'sodium_mg_per_100g': 393, 'tsp': 9.0}],\n  ['repair check: equilibrium sodium basis', [1500, 2000, '3', 'diamond kosher', 'dry'],\n   {'salt_g': 45.0, 'sodium_mg_per_100g': 1179, 'tsp': 16.0}],\n  ['generated control 1', [2000, 2000, '1', 'diamond kosher', 'wet'],\n   {'salt_g': 40.0, 'sodium_mg_per_100g': 393, 'tsp': 14.25}],\n  ['generated control 2', [2000, 1000, '2', 'diamond kosher', 'wet'],\n   {'salt_g': 60.0, 'sodium_mg_per_100g': 786, 'tsp': 21.5}],\n  ['generated control 3', [2500, 2000, '1.5', 'diamond kosher', 'wet'],\n   {'salt_g': 67.5, 'sodium_mg_per_100g': 590, 'tsp': 24.0}]],\n [['dry brine ignores water', [1500, 1000, '1', 'diamond kosher', 'dry'],\n   {'salt_g': 15.0, 'sodium_mg_per_100g': 393, 'tsp': 5.25}],\n  ['strong morton brine', [2000, 2000, '5', 'morton kosher', 'wet'],\n   {'salt_g': 200.0, 'sodium_mg_per_100g': 1965, 'tsp': 41.75}],\n  ['wet brine', [1000, 1000, '1', 'table', 'wet'], {'salt_g': 20.0, 'sodium_mg_per_100g': 393, 'tsp': 3.25}],\n  ['regression: equilibrium sodium basis', [1500, 500, '3', 'morton kosher', 'wet'],\n   {'salt_g': 60.0, 'sodium_mg_per_100g': 1179, 'tsp': 12.5}],\n  ['repair check: equilibrium sodium basis', [1500, 1000, '5', 'diamond kosher', 'dry'],\n   {'salt_g': 75.0, 'sodium_mg_per_100g': 1965, 'tsp': 26.75}],\n  ['generated control 1', [1500, 0, '5', 'table', 'wet'],\n   {'salt_g': 75.0, 'sodium_mg_per_100g': 1965, 'tsp': 12.5}],\n  ['generated control 2', [1500, 2000, '2', 'morton kosher', 'dry'],\n   {'salt_g': 30.0, 'sodium_mg_per_100g': 786, 'tsp': 6.25}],\n  ['generated control 3', [2000, 2000, '5', 'table', 'dry'],\n   {'salt_g': 100.0, 'sodium_mg_per_100g': 1965, 'tsp': 16.75}]],\n [['strong morton brine', [2000, 2000, '5', 'morton kosher', 'wet'],\n   {'salt_g': 200.0, 'sodium_mg_per_100g': 1965, 'tsp': 41.75}],\n  ['wet brine', [1000, 1000, '1', 'table', 'wet'], {'salt_g': 20.0, 'sodium_mg_per_100g': 393, 'tsp': 3.25}],\n  ['dry brine ignores water', [1500, 1000, '1', 'diamond kosher', 'dry'],\n   {'salt_g': 15.0, 'sodium_mg_per_100g': 393, 'tsp': 5.25}],\n  ['regression: equilibrium sodium basis', [500, 2000, '3', 'morton kosher', 'wet'],\n   {'salt_g': 75.0, 'sodium_mg_per_100g': 1179, 'tsp': 15.75}],\n  ['repair check: equilibrium sodium basis', [500, 1000, '1', 'morton kosher', 'dry'],\n   {'salt_g': 5.0, 'sodium_mg_per_100g': 393, 'tsp': 1.0}],\n  ['generated control 1', [2500, 0, '5', 'diamond kosher', 'wet'],\n   {'salt_g': 125.0, 'sodium_mg_per_100g': 1965, 'tsp': 44.75}],\n  ['generated control 2', [1000, 0, '1.5', 'table', 'dry'],\n   {'salt_g': 15.0, 'sodium_mg_per_100g': 590, 'tsp': 2.5}],\n  ['generated control 3', [2500, 1000, '2', 'morton kosher', 'wet'],\n   {'salt_g': 70.0, 'sodium_mg_per_100g': 786, 'tsp': 14.5}]],\n [['wet brine', [1000, 1000, '1', 'table', 'wet'], {'salt_g': 20.0, 'sodium_mg_per_100g': 393, 'tsp': 3.25}],\n  ['dry brine ignores water', [1500, 1000, '1', 'diamond kosher', 'dry'],\n   {'salt_g': 15.0, 'sodium_mg_per_100g': 393, 'tsp': 5.25}],\n  ['strong morton brine', [2000, 2000, '5', 'morton kosher', 'wet'],\n   {'salt_g': 200.0, 'sodium_mg_per_100g': 1965, 'tsp': 41.75}],\n  ['regression: equilibrium sodium basis', [2500, 500, '3', 'diamond kosher', 'wet'],\n   {'salt_g': 90.0, 'sodium_mg_per_100g': 1179, 'tsp': 32.25}],\n  ['repair check: equilibrium sodium basis', [2500, 1000, '5', 'table', 'dry'],\n   {'salt_g': 125.0, 'sodium_mg_per_100g': 1965, 'tsp': 20.75}],\n  ['generated control 1', [2500, 0, '5', 'morton kosher', 'wet'],\n   {'salt_g': 125.0, 'sodium_mg_per_100g': 1965, 'tsp': 26.0}],\n  ['generated control 2', [2500, 1000, '5', 'diamond kosher', 'wet'],\n   {'salt_g': 175.0, 'sodium_mg_per_100g': 1965, 'tsp': 62.5}],\n  ['generated control 3', [1000, 1000, '1', 'morton kosher', 'dry'],\n   {'salt_g': 10.0, 'sodium_mg_per_100g': 393, 'tsp': 2.0}]],\n [['dry brine ignores water', [1500, 1000, '1', 'diamond kosher', 'dry'],\n   {'salt_g': 15.0, 'sodium_mg_per_100g': 393, 'tsp': 5.25}],\n  ['strong morton brine', [2000, 2000, '5', 'morton kosher', 'wet'],\n   {'salt_g': 200.0, 'sodium_mg_per_100g': 1965, 'tsp': 41.75}],\n  ['wet brine', [1000, 1000, '1', 'table', 'wet'], {'salt_g': 20.0, 'sodium_mg_per_100g': 393, 'tsp': 3.25}],\n  ['regression: equilibrium sodium basis', [500, 500, '0.5', 'table', 'wet'],\n   {'salt_g': 5.0, 'sodium_mg_per_100g': 197, 'tsp': 0.75}],\n  ['repair check: equilibrium sodium basis', [1000, 2000, '3', 'diamond kosher', 'dry'],\n   {'salt_g': 30.0, 'sodium_mg_per_100g': 1179, 'tsp': 10.75}],\n  ['generated control 1', [1500, 500, '1.5', 'table', 'dry'],\n   {'salt_g': 22.5, 'sodium_mg_per_100g': 590, 'tsp': 3.75}],\n  ['generated control 2', [1500, 2000, '2', 'morton kosher', 'dry'],\n   {'salt_g': 30.0, 'sodium_mg_per_100g': 786, 'tsp': 6.25}],\n  ['generated control 3', [1500, 1000, '3', 'table', 'wet'],\n   {'salt_g': 75.0, 'sodium_mg_per_100g': 1179, 'tsp': 12.5}]]]\nfor label, args, expected in fixtures[N - 1]:\n    check(label, solve(*args), expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"},"broken":{"sha256":"6f02ab21b1e9821a5ee27e28c07f0a4825f5343f74942faa646a880343e1654e","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nfrom fractions import Fraction\nN = 1\nobservations = []\ndef solve(meat_g, water_g, pct, salt_type, method):\n    DENS = {'table': Fraction(6), 'morton kosher': Fraction(24, 5), 'diamond kosher': Fraction(14, 5)}\n    total = meat_g + (0 if method == 'dry' else water_g)\n    salt = Fraction(total) * Fraction(pct) / 100\n    tsp = salt / DENS[salt_type]\n    sodium = salt * 393 * 100 / meat_g\n    return {'salt_g': math.floor(salt * 10 + Fraction(1, 2)) / 10, 'tsp': math.floor(tsp * 4 + Fraction(1, 2)) / 4,\n            'sodium_mg_per_100g': math.floor(sodium + Fraction(1, 2))}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['wet brine', [1000, 1000, '1', 'table', 'wet'], {'salt_g': 20.0, 'sodium_mg_per_100g': 393, 'tsp': 3.25}],\n  ['dry brine ignores water', [1500, 1000, '1', 'diamond kosher', 'dry'],\n   {'salt_g': 15.0, 'sodium_mg_per_100g': 393, 'tsp': 5.25}],\n  ['strong morton brine', [2000, 2000, '5', 'morton kosher', 'wet'],\n   {'salt_g': 200.0, 'sodium_mg_per_100g': 1965, 'tsp': 41.75}],\n  ['regression: equilibrium sodium basis', [2000, 500, '1', 'diamond kosher', 'wet'],\n   {'salt_g': 25.0, 'sodium_mg_per_100g': 393, 'tsp': 9.0}],\n  ['repair check: equilibrium sodium basis', [1500, 2000, '3', 'diamond kosher', 'dry'],\n   {'salt_g': 45.0, 'sodium_mg_per_100g': 1179, 'tsp': 16.0}],\n  ['generated control 1', [2000, 2000, '1', 'diamond kosher', 'wet'],\n   {'salt_g': 40.0, 'sodium_mg_per_100g': 393, 'tsp': 14.25}],\n  ['generated control 2', [2000, 1000, '2', 'diamond kosher', 'wet'],\n   {'salt_g': 60.0, 'sodium_mg_per_100g': 786, 'tsp': 21.5}],\n  ['generated control 3', [2500, 2000, '1.5', 'diamond kosher', 'wet'],\n   {'salt_g': 67.5, 'sodium_mg_per_100g': 590, 'tsp': 24.0}]],\n [['dry brine ignores water', [1500, 1000, '1', 'diamond kosher', 'dry'],\n   {'salt_g': 15.0, 'sodium_mg_per_100g': 393, 'tsp': 5.25}],\n  ['strong morton brine', [2000, 2000, '5', 'morton kosher', 'wet'],\n   {'salt_g': 200.0, 'sodium_mg_per_100g': 1965, 'tsp': 41.75}],\n  ['wet brine', [1000, 1000, '1', 'table', 'wet'], {'salt_g': 20.0, 'sodium_mg_per_100g': 393, 'tsp': 3.25}],\n  ['regression: equilibrium sodium basis', [1500, 500, '3', 'morton kosher', 'wet'],\n   {'salt_g': 60.0, 'sodium_mg_per_100g': 1179, 'tsp': 12.5}],\n  ['repair check: equilibrium sodium basis', [1500, 1000, '5', 'diamond kosher', 'dry'],\n   {'salt_g': 75.0, 'sodium_mg_per_100g': 1965, 'tsp': 26.75}],\n  ['generated control 1', [1500, 0, '5', 'table', 'wet'],\n   {'salt_g': 75.0, 'sodium_mg_per_100g': 1965, 'tsp': 12.5}],\n  ['generated control 2', [1500, 2000, '2', 'morton kosher', 'dry'],\n   {'salt_g': 30.0, 'sodium_mg_per_100g': 786, 'tsp': 6.25}],\n  ['generated control 3', [2000, 2000, '5', 'table', 'dry'],\n   {'salt_g': 100.0, 'sodium_mg_per_100g': 1965, 'tsp': 16.75}]],\n [['strong morton brine', [2000, 2000, '5', 'morton kosher', 'wet'],\n   {'salt_g': 200.0, 'sodium_mg_per_100g': 1965, 'tsp': 41.75}],\n  ['wet brine', [1000, 1000, '1', 'table', 'wet'], {'salt_g': 20.0, 'sodium_mg_per_100g': 393, 'tsp': 3.25}],\n  ['dry brine ignores water', [1500, 1000, '1', 'diamond kosher', 'dry'],\n   {'salt_g': 15.0, 'sodium_mg_per_100g': 393, 'tsp': 5.25}],\n  ['regression: equilibrium sodium basis', [500, 2000, '3', 'morton kosher', 'wet'],\n   {'salt_g': 75.0, 'sodium_mg_per_100g': 1179, 'tsp': 15.75}],\n  ['repair check: equilibrium sodium basis', [500, 1000, '1', 'morton kosher', 'dry'],\n   {'salt_g': 5.0, 'sodium_mg_per_100g': 393, 'tsp': 1.0}],\n  ['generated control 1', [2500, 0, '5', 'diamond kosher', 'wet'],\n   {'salt_g': 125.0, 'sodium_mg_per_100g': 1965, 'tsp': 44.75}],\n  ['generated control 2', [1000, 0, '1.5', 'table', 'dry'],\n   {'salt_g': 15.0, 'sodium_mg_per_100g': 590, 'tsp': 2.5}],\n  ['generated control 3', [2500, 1000, '2', 'morton kosher', 'wet'],\n   {'salt_g': 70.0, 'sodium_mg_per_100g': 786, 'tsp': 14.5}]],\n [['wet brine', [1000, 1000, '1', 'table', 'wet'], {'salt_g': 20.0, 'sodium_mg_per_100g': 393, 'tsp': 3.25}],\n  ['dry brine ignores water', [1500, 1000, '1', 'diamond kosher', 'dry'],\n   {'salt_g': 15.0, 'sodium_mg_per_100g': 393, 'tsp': 5.25}],\n  ['strong morton brine', [2000, 2000, '5', 'morton kosher', 'wet'],\n   {'salt_g': 200.0, 'sodium_mg_per_100g': 1965, 'tsp': 41.75}],\n  ['regression: equilibrium sodium basis', [2500, 500, '3', 'diamond kosher', 'wet'],\n   {'salt_g': 90.0, 'sodium_mg_per_100g': 1179, 'tsp': 32.25}],\n  ['repair check: equilibrium sodium basis', [2500, 1000, '5', 'table', 'dry'],\n   {'salt_g': 125.0, 'sodium_mg_per_100g': 1965, 'tsp': 20.75}],\n  ['generated control 1', [2500, 0, '5', 'morton kosher', 'wet'],\n   {'salt_g': 125.0, 'sodium_mg_per_100g': 1965, 'tsp': 26.0}],\n  ['generated control 2', [2500, 1000, '5', 'diamond kosher', 'wet'],\n   {'salt_g': 175.0, 'sodium_mg_per_100g': 1965, 'tsp': 62.5}],\n  ['generated control 3', [1000, 1000, '1', 'morton kosher', 'dry'],\n   {'salt_g': 10.0, 'sodium_mg_per_100g': 393, 'tsp': 2.0}]],\n [['dry brine ignores water', [1500, 1000, '1', 'diamond kosher', 'dry'],\n   {'salt_g': 15.0, 'sodium_mg_per_100g': 393, 'tsp': 5.25}],\n  ['strong morton brine', [2000, 2000, '5', 'morton kosher', 'wet'],\n   {'salt_g': 200.0, 'sodium_mg_per_100g': 1965, 'tsp': 41.75}],\n  ['wet brine', [1000, 1000, '1', 'table', 'wet'], {'salt_g': 20.0, 'sodium_mg_per_100g': 393, 'tsp': 3.25}],\n  ['regression: equilibrium sodium basis', [500, 500, '0.5', 'table', 'wet'],\n   {'salt_g': 5.0, 'sodium_mg_per_100g': 197, 'tsp': 0.75}],\n  ['repair check: equilibrium sodium basis', [1000, 2000, '3', 'diamond kosher', 'dry'],\n   {'salt_g': 30.0, 'sodium_mg_per_100g': 1179, 'tsp': 10.75}],\n  ['generated control 1', [1500, 500, '1.5', 'table', 'dry'],\n   {'salt_g': 22.5, 'sodium_mg_per_100g': 590, 'tsp': 3.75}],\n  ['generated control 2', [1500, 2000, '2', 'morton kosher', 'dry'],\n   {'salt_g': 30.0, 'sodium_mg_per_100g': 786, 'tsp': 6.25}],\n  ['generated control 3', [1500, 1000, '3', 'table', 'wet'],\n   {'salt_g': 75.0, 'sodium_mg_per_100g': 1179, 'tsp': 12.5}]]]\nfor label, args, expected in fixtures[N - 1]:\n    check(label, solve(*args), expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"},"fixed":{"sha256":"1046b292d1bb305e003356935276ee4900c46d665fe8458bba6fd40b2cc4213f","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nfrom fractions import Fraction\nN = 1\nobservations = []\ndef solve(meat_g, water_g, pct, salt_type, method):\n    DENS = {'table': Fraction(6), 'morton kosher': Fraction(24, 5), 'diamond kosher': Fraction(14, 5)}\n    total = meat_g + (0 if method == 'dry' else water_g)\n    salt = Fraction(total) * Fraction(pct) / 100\n    tsp = salt / DENS[salt_type]\n    sodium = salt * 393 * 100 / total\n    return {'salt_g': math.floor(salt * 10 + Fraction(1, 2)) / 10, 'tsp': math.floor(tsp * 4 + Fraction(1, 2)) / 4,\n            'sodium_mg_per_100g': math.floor(sodium + Fraction(1, 2))}\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['wet brine', [1000, 1000, '1', 'table', 'wet'], {'salt_g': 20.0, 'sodium_mg_per_100g': 393, 'tsp': 3.25}],\n  ['dry brine ignores water', [1500, 1000, '1', 'diamond kosher', 'dry'],\n   {'salt_g': 15.0, 'sodium_mg_per_100g': 393, 'tsp': 5.25}],\n  ['strong morton brine', [2000, 2000, '5', 'morton kosher', 'wet'],\n   {'salt_g': 200.0, 'sodium_mg_per_100g': 1965, 'tsp': 41.75}],\n  ['regression: equilibrium sodium basis', [2000, 500, '1', 'diamond kosher', 'wet'],\n   {'salt_g': 25.0, 'sodium_mg_per_100g': 393, 'tsp': 9.0}],\n  ['repair check: equilibrium sodium basis', [1500, 2000, '3', 'diamond kosher', 'dry'],\n   {'salt_g': 45.0, 'sodium_mg_per_100g': 1179, 'tsp': 16.0}],\n  ['generated control 1', [2000, 2000, '1', 'diamond kosher', 'wet'],\n   {'salt_g': 40.0, 'sodium_mg_per_100g': 393, 'tsp': 14.25}],\n  ['generated control 2', [2000, 1000, '2', 'diamond kosher', 'wet'],\n   {'salt_g': 60.0, 'sodium_mg_per_100g': 786, 'tsp': 21.5}],\n  ['generated control 3', [2500, 2000, '1.5', 'diamond kosher', 'wet'],\n   {'salt_g': 67.5, 'sodium_mg_per_100g': 590, 'tsp': 24.0}]],\n [['dry brine ignores water', [1500, 1000, '1', 'diamond kosher', 'dry'],\n   {'salt_g': 15.0, 'sodium_mg_per_100g': 393, 'tsp': 5.25}],\n  ['strong morton brine', [2000, 2000, '5', 'morton kosher', 'wet'],\n   {'salt_g': 200.0, 'sodium_mg_per_100g': 1965, 'tsp': 41.75}],\n  ['wet brine', [1000, 1000, '1', 'table', 'wet'], {'salt_g': 20.0, 'sodium_mg_per_100g': 393, 'tsp': 3.25}],\n  ['regression: equilibrium sodium basis', [1500, 500, '3', 'morton kosher', 'wet'],\n   {'salt_g': 60.0, 'sodium_mg_per_100g': 1179, 'tsp': 12.5}],\n  ['repair check: equilibrium sodium basis', [1500, 1000, '5', 'diamond kosher', 'dry'],\n   {'salt_g': 75.0, 'sodium_mg_per_100g': 1965, 'tsp': 26.75}],\n  ['generated control 1', [1500, 0, '5', 'table', 'wet'],\n   {'salt_g': 75.0, 'sodium_mg_per_100g': 1965, 'tsp': 12.5}],\n  ['generated control 2', [1500, 2000, '2', 'morton kosher', 'dry'],\n   {'salt_g': 30.0, 'sodium_mg_per_100g': 786, 'tsp': 6.25}],\n  ['generated control 3', [2000, 2000, '5', 'table', 'dry'],\n   {'salt_g': 100.0, 'sodium_mg_per_100g': 1965, 'tsp': 16.75}]],\n [['strong morton brine', [2000, 2000, '5', 'morton kosher', 'wet'],\n   {'salt_g': 200.0, 'sodium_mg_per_100g': 1965, 'tsp': 41.75}],\n  ['wet brine', [1000, 1000, '1', 'table', 'wet'], {'salt_g': 20.0, 'sodium_mg_per_100g': 393, 'tsp': 3.25}],\n  ['dry brine ignores water', [1500, 1000, '1', 'diamond kosher', 'dry'],\n   {'salt_g': 15.0, 'sodium_mg_per_100g': 393, 'tsp': 5.25}],\n  ['regression: equilibrium sodium basis', [500, 2000, '3', 'morton kosher', 'wet'],\n   {'salt_g': 75.0, 'sodium_mg_per_100g': 1179, 'tsp': 15.75}],\n  ['repair check: equilibrium sodium basis', [500, 1000, '1', 'morton kosher', 'dry'],\n   {'salt_g': 5.0, 'sodium_mg_per_100g': 393, 'tsp': 1.0}],\n  ['generated control 1', [2500, 0, '5', 'diamond kosher', 'wet'],\n   {'salt_g': 125.0, 'sodium_mg_per_100g': 1965, 'tsp': 44.75}],\n  ['generated control 2', [1000, 0, '1.5', 'table', 'dry'],\n   {'salt_g': 15.0, 'sodium_mg_per_100g': 590, 'tsp': 2.5}],\n  ['generated control 3', [2500, 1000, '2', 'morton kosher', 'wet'],\n   {'salt_g': 70.0, 'sodium_mg_per_100g': 786, 'tsp': 14.5}]],\n [['wet brine', [1000, 1000, '1', 'table', 'wet'], {'salt_g': 20.0, 'sodium_mg_per_100g': 393, 'tsp': 3.25}],\n  ['dry brine ignores water', [1500, 1000, '1', 'diamond kosher', 'dry'],\n   {'salt_g': 15.0, 'sodium_mg_per_100g': 393, 'tsp': 5.25}],\n  ['strong morton brine', [2000, 2000, '5', 'morton kosher', 'wet'],\n   {'salt_g': 200.0, 'sodium_mg_per_100g': 1965, 'tsp': 41.75}],\n  ['regression: equilibrium sodium basis', [2500, 500, '3', 'diamond kosher', 'wet'],\n   {'salt_g': 90.0, 'sodium_mg_per_100g': 1179, 'tsp': 32.25}],\n  ['repair check: equilibrium sodium basis', [2500, 1000, '5', 'table', 'dry'],\n   {'salt_g': 125.0, 'sodium_mg_per_100g': 1965, 'tsp': 20.75}],\n  ['generated control 1', [2500, 0, '5', 'morton kosher', 'wet'],\n   {'salt_g': 125.0, 'sodium_mg_per_100g': 1965, 'tsp': 26.0}],\n  ['generated control 2', [2500, 1000, '5', 'diamond kosher', 'wet'],\n   {'salt_g': 175.0, 'sodium_mg_per_100g': 1965, 'tsp': 62.5}],\n  ['generated control 3', [1000, 1000, '1', 'morton kosher', 'dry'],\n   {'salt_g': 10.0, 'sodium_mg_per_100g': 393, 'tsp': 2.0}]],\n [['dry brine ignores water', [1500, 1000, '1', 'diamond kosher', 'dry'],\n   {'salt_g': 15.0, 'sodium_mg_per_100g': 393, 'tsp': 5.25}],\n  ['strong morton brine', [2000, 2000, '5', 'morton kosher', 'wet'],\n   {'salt_g': 200.0, 'sodium_mg_per_100g': 1965, 'tsp': 41.75}],\n  ['wet brine', [1000, 1000, '1', 'table', 'wet'], {'salt_g': 20.0, 'sodium_mg_per_100g': 393, 'tsp': 3.25}],\n  ['regression: equilibrium sodium basis', [500, 500, '0.5', 'table', 'wet'],\n   {'salt_g': 5.0, 'sodium_mg_per_100g': 197, 'tsp': 0.75}],\n  ['repair check: equilibrium sodium basis', [1000, 2000, '3', 'diamond kosher', 'dry'],\n   {'salt_g': 30.0, 'sodium_mg_per_100g': 1179, 'tsp': 10.75}],\n  ['generated control 1', [1500, 500, '1.5', 'table', 'dry'],\n   {'salt_g': 22.5, 'sodium_mg_per_100g': 590, 'tsp': 3.75}],\n  ['generated control 2', [1500, 2000, '2', 'morton kosher', 'dry'],\n   {'salt_g': 30.0, 'sodium_mg_per_100g': 786, 'tsp': 6.25}],\n  ['generated control 3', [1500, 1000, '3', 'table', 'wet'],\n   {'salt_g': 75.0, 'sodium_mg_per_100g': 1179, 'tsp': 12.5}]]]\nfor label, args, expected in fixtures[N - 1]:\n    check(label, solve(*args), expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"}},"limitations":"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.","method":"Deterministic executable model with adversarial boundary fixtures.","provenance":{"created_by":"Failure Map","dependencies":"Python standard library","family":"w2-recipe_scaling_and_nutrition-equilibrium-brine-equilibrium-sodium-basis","generated_at":"2026-09-29T14:52:31.141365+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Equilibrium brining sets salt as a percentage of meat plus water and converts between salt brands.","repair":"Divide by the same total used for the salt calculation.","root_cause":"Sodium per 100 g divides by meat weight although salt equilibrates across meat and water.","sha256":"8769386a997cb92134b4e16d688336ed217ab06f6854fb752dbd834830d74fdc","title":"Equilibrium brine calculator: equilibrium sodium basis · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":42.132,"exit_code":1,"observations":[{"actual":{"salt_g":20.0,"sodium_mg_per_100g":393,"tsp":3.25},"check":"wet brine","expected":{"salt_g":20.0,"sodium_mg_per_100g":393,"tsp":3.25},"passed":true},{"actual":{"salt_g":15.0,"sodium_mg_per_100g":236,"tsp":5.25},"check":"dry brine ignores water","expected":{"salt_g":15.0,"sodium_mg_per_100g":393,"tsp":5.25},"passed":false},{"actual":{"salt_g":200.0,"sodium_mg_per_100g":1965,"tsp":41.75},"check":"strong morton brine","expected":{"salt_g":200.0,"sodium_mg_per_100g":1965,"tsp":41.75},"passed":true},{"actual":{"salt_g":25.0,"sodium_mg_per_100g":393,"tsp":9.0},"check":"regression: equilibrium sodium basis","expected":{"salt_g":25.0,"sodium_mg_per_100g":393,"tsp":9.0},"passed":true},{"actual":{"salt_g":45.0,"sodium_mg_per_100g":505,"tsp":16.0},"check":"repair check: equilibrium sodium basis","expected":{"salt_g":45.0,"sodium_mg_per_100g":1179,"tsp":16.0},"passed":false},{"actual":{"salt_g":40.0,"sodium_mg_per_100g":393,"tsp":14.25},"check":"generated control 1","expected":{"salt_g":40.0,"sodium_mg_per_100g":393,"tsp":14.25},"passed":true},{"actual":{"salt_g":60.0,"sodium_mg_per_100g":786,"tsp":21.5},"check":"generated control 2","expected":{"salt_g":60.0,"sodium_mg_per_100g":786,"tsp":21.5},"passed":true},{"actual":{"salt_g":67.5,"sodium_mg_per_100g":590,"tsp":24.0},"check":"generated control 3","expected":{"salt_g":67.5,"sodium_mg_per_100g":590,"tsp":24.0},"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"wet brine\", \"actual\": {\"salt_g\": 20.0, \"tsp\": 3.25, \"sodium_mg_per_100g\": 393}, \"expected\": {\"salt_g\": 20.0, \"sodium_mg_per_100g\": 393, \"tsp\": 3.25}, \"passed\": true}, {\"check\": \"dry brine ignores water\", \"actual\": {\"salt_g\": 15.0, \"tsp\": 5.25, \"sodium_mg_per_100g\": 236}, \"expected\": {\"salt_g\": 15.0, \"sodium_mg_per_100g\": 393, \"tsp\": 5.25}, \"passed\": false}, {\"check\": \"strong morton brine\", \"actual\": {\"salt_g\": 200.0, \"tsp\": 41.75, \"sodium_mg_per_100g\": 1965}, \"expected\": {\"salt_g\": 200.0, \"sodium_mg_per_100g\": 1965, \"tsp\": 41.75}, \"passed\": true}, {\"check\": \"regression: equilibrium sodium basis\", \"actual\": {\"salt_g\": 25.0, \"tsp\": 9.0, \"sodium_mg_per_100g\": 393}, \"expected\": {\"salt_g\": 25.0, \"sodium_mg_per_100g\": 393, \"tsp\": 9.0}, \"passed\": true}, {\"check\": \"repair check: equilibrium sodium basis\", \"actual\": {\"salt_g\": 45.0, \"tsp\": 16.0, \"sodium_mg_per_100g\": 505}, \"expected\": {\"salt_g\": 45.0, \"sodium_mg_per_100g\": 1179, \"tsp\": 16.0}, \"passed\": false}, {\"check\": \"generated control 1\", \"actual\": {\"salt_g\": 40.0, \"tsp\": 14.25, \"sodium_mg_per_100g\": 393}, \"expected\": {\"salt_g\": 40.0, \"sodium_mg_per_100g\": 393, \"tsp\": 14.25}, \"passed\": true}, {\"check\": \"generated control 2\", \"actual\": {\"salt_g\": 60.0, \"tsp\": 21.5, \"sodium_mg_per_100g\": 786}, \"expected\": {\"salt_g\": 60.0, \"sodium_mg_per_100g\": 786, \"tsp\": 21.5}, \"passed\": true}, {\"check\": \"generated control 3\", \"actual\": {\"salt_g\": 67.5, \"tsp\": 24.0, \"sodium_mg_per_100g\": 590}, \"expected\": {\"salt_g\": 67.5, \"sodium_mg_per_100g\": 590, \"tsp\": 24.0}, \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":40.575,"exit_code":1,"observations":[{"actual":{"salt_g":20.0,"sodium_mg_per_100g":786,"tsp":3.25},"check":"wet brine","expected":{"salt_g":20.0,"sodium_mg_per_100g":393,"tsp":3.25},"passed":false},{"actual":{"salt_g":15.0,"sodium_mg_per_100g":393,"tsp":5.25},"check":"dry brine ignores water","expected":{"salt_g":15.0,"sodium_mg_per_100g":393,"tsp":5.25},"passed":true},{"actual":{"salt_g":200.0,"sodium_mg_per_100g":3930,"tsp":41.75},"check":"strong morton brine","expected":{"salt_g":200.0,"sodium_mg_per_100g":1965,"tsp":41.75},"passed":false},{"actual":{"salt_g":25.0,"sodium_mg_per_100g":491,"tsp":9.0},"check":"regression: equilibrium sodium basis","expected":{"salt_g":25.0,"sodium_mg_per_100g":393,"tsp":9.0},"passed":false},{"actual":{"salt_g":45.0,"sodium_mg_per_100g":1179,"tsp":16.0},"check":"repair check: equilibrium sodium basis","expected":{"salt_g":45.0,"sodium_mg_per_100g":1179,"tsp":16.0},"passed":true},{"actual":{"salt_g":40.0,"sodium_mg_per_100g":786,"tsp":14.25},"check":"generated control 1","expected":{"salt_g":40.0,"sodium_mg_per_100g":393,"tsp":14.25},"passed":false},{"actual":{"salt_g":60.0,"sodium_mg_per_100g":1179,"tsp":21.5},"check":"generated control 2","expected":{"salt_g":60.0,"sodium_mg_per_100g":786,"tsp":21.5},"passed":false},{"actual":{"salt_g":67.5,"sodium_mg_per_100g":1061,"tsp":24.0},"check":"generated control 3","expected":{"salt_g":67.5,"sodium_mg_per_100g":590,"tsp":24.0},"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"wet brine\", \"actual\": {\"salt_g\": 20.0, \"tsp\": 3.25, \"sodium_mg_per_100g\": 786}, \"expected\": {\"salt_g\": 20.0, \"sodium_mg_per_100g\": 393, \"tsp\": 3.25}, \"passed\": false}, {\"check\": \"dry brine ignores water\", \"actual\": {\"salt_g\": 15.0, \"tsp\": 5.25, \"sodium_mg_per_100g\": 393}, \"expected\": {\"salt_g\": 15.0, \"sodium_mg_per_100g\": 393, \"tsp\": 5.25}, \"passed\": true}, {\"check\": \"strong morton brine\", \"actual\": {\"salt_g\": 200.0, \"tsp\": 41.75, \"sodium_mg_per_100g\": 3930}, \"expected\": {\"salt_g\": 200.0, \"sodium_mg_per_100g\": 1965, \"tsp\": 41.75}, \"passed\": false}, {\"check\": \"regression: equilibrium sodium basis\", \"actual\": {\"salt_g\": 25.0, \"tsp\": 9.0, \"sodium_mg_per_100g\": 491}, \"expected\": {\"salt_g\": 25.0, \"sodium_mg_per_100g\": 393, \"tsp\": 9.0}, \"passed\": false}, {\"check\": \"repair check: equilibrium sodium basis\", \"actual\": {\"salt_g\": 45.0, \"tsp\": 16.0, \"sodium_mg_per_100g\": 1179}, \"expected\": {\"salt_g\": 45.0, \"sodium_mg_per_100g\": 1179, \"tsp\": 16.0}, \"passed\": true}, {\"check\": \"generated control 1\", \"actual\": {\"salt_g\": 40.0, \"tsp\": 14.25, \"sodium_mg_per_100g\": 786}, \"expected\": {\"salt_g\": 40.0, \"sodium_mg_per_100g\": 393, \"tsp\": 14.25}, \"passed\": false}, {\"check\": \"generated control 2\", \"actual\": {\"salt_g\": 60.0, \"tsp\": 21.5, \"sodium_mg_per_100g\": 1179}, \"expected\": {\"salt_g\": 60.0, \"sodium_mg_per_100g\": 786, \"tsp\": 21.5}, \"passed\": false}, {\"check\": \"generated control 3\", \"actual\": {\"salt_g\": 67.5, \"tsp\": 24.0, \"sodium_mg_per_100g\": 1061}, \"expected\": {\"salt_g\": 67.5, \"sodium_mg_per_100g\": 590, \"tsp\": 24.0}, \"passed\": false}], \"passed\": false}\n"},"fixed":{"elapsed_ms":46.017,"exit_code":0,"observations":[{"actual":{"salt_g":20.0,"sodium_mg_per_100g":393,"tsp":3.25},"check":"wet brine","expected":{"salt_g":20.0,"sodium_mg_per_100g":393,"tsp":3.25},"passed":true},{"actual":{"salt_g":15.0,"sodium_mg_per_100g":393,"tsp":5.25},"check":"dry brine ignores water","expected":{"salt_g":15.0,"sodium_mg_per_100g":393,"tsp":5.25},"passed":true},{"actual":{"salt_g":200.0,"sodium_mg_per_100g":1965,"tsp":41.75},"check":"strong morton brine","expected":{"salt_g":200.0,"sodium_mg_per_100g":1965,"tsp":41.75},"passed":true},{"actual":{"salt_g":25.0,"sodium_mg_per_100g":393,"tsp":9.0},"check":"regression: equilibrium sodium basis","expected":{"salt_g":25.0,"sodium_mg_per_100g":393,"tsp":9.0},"passed":true},{"actual":{"salt_g":45.0,"sodium_mg_per_100g":1179,"tsp":16.0},"check":"repair check: equilibrium sodium basis","expected":{"salt_g":45.0,"sodium_mg_per_100g":1179,"tsp":16.0},"passed":true},{"actual":{"salt_g":40.0,"sodium_mg_per_100g":393,"tsp":14.25},"check":"generated control 1","expected":{"salt_g":40.0,"sodium_mg_per_100g":393,"tsp":14.25},"passed":true},{"actual":{"salt_g":60.0,"sodium_mg_per_100g":786,"tsp":21.5},"check":"generated control 2","expected":{"salt_g":60.0,"sodium_mg_per_100g":786,"tsp":21.5},"passed":true},{"actual":{"salt_g":67.5,"sodium_mg_per_100g":590,"tsp":24.0},"check":"generated control 3","expected":{"salt_g":67.5,"sodium_mg_per_100g":590,"tsp":24.0},"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"wet brine\", \"actual\": {\"salt_g\": 20.0, \"tsp\": 3.25, \"sodium_mg_per_100g\": 393}, \"expected\": {\"salt_g\": 20.0, \"sodium_mg_per_100g\": 393, \"tsp\": 3.25}, \"passed\": true}, {\"check\": \"dry brine ignores water\", \"actual\": {\"salt_g\": 15.0, \"tsp\": 5.25, \"sodium_mg_per_100g\": 393}, \"expected\": {\"salt_g\": 15.0, \"sodium_mg_per_100g\": 393, \"tsp\": 5.25}, \"passed\": true}, {\"check\": \"strong morton brine\", \"actual\": {\"salt_g\": 200.0, \"tsp\": 41.75, \"sodium_mg_per_100g\": 1965}, \"expected\": {\"salt_g\": 200.0, \"sodium_mg_per_100g\": 1965, \"tsp\": 41.75}, \"passed\": true}, {\"check\": \"regression: equilibrium sodium basis\", \"actual\": {\"salt_g\": 25.0, \"tsp\": 9.0, \"sodium_mg_per_100g\": 393}, \"expected\": {\"salt_g\": 25.0, \"sodium_mg_per_100g\": 393, \"tsp\": 9.0}, \"passed\": true}, {\"check\": \"repair check: equilibrium sodium basis\", \"actual\": {\"salt_g\": 45.0, \"tsp\": 16.0, \"sodium_mg_per_100g\": 1179}, \"expected\": {\"salt_g\": 45.0, \"sodium_mg_per_100g\": 1179, \"tsp\": 16.0}, \"passed\": true}, {\"check\": \"generated control 1\", \"actual\": {\"salt_g\": 40.0, \"tsp\": 14.25, \"sodium_mg_per_100g\": 393}, \"expected\": {\"salt_g\": 40.0, \"sodium_mg_per_100g\": 393, \"tsp\": 14.25}, \"passed\": true}, {\"check\": \"generated control 2\", \"actual\": {\"salt_g\": 60.0, \"tsp\": 21.5, \"sodium_mg_per_100g\": 786}, \"expected\": {\"salt_g\": 60.0, \"sodium_mg_per_100g\": 786, \"tsp\": 21.5}, \"passed\": true}, {\"check\": \"generated control 3\", \"actual\": {\"salt_g\": 67.5, \"tsp\": 24.0, \"sodium_mg_per_100g\": 590}, \"expected\": {\"salt_g\": 67.5, \"sodium_mg_per_100g\": 590, \"tsp\": 24.0}, \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}