{"abstract":"0.5 g of sodium is reported as 0.02% instead of 22%.","category":"Recipe scaling and nutrition","checks":8,"contract":"DVs: sodium 2300 mg, fat 78 g, fiber 28 g, calcium 1300 mg, vitamin d 20 mcg, added sugars 50 g, protein 50 g. Names are trimmed, case-insensitive; unknown -> \"error: no daily value\". Units g, mg, mcg convert exactly; \"iu\" is allowed only for vitamin d (40 IU = 1 mcg), else \"error: unit\". pct = amount/DV*100. Zero -> \"0%\". Calcium and vitamin d: <2 -> \"<2%\", <=10 -> nearest 2, <=50 -> nearest 5, else nearest 10. Others: <1 -> \"<1%\", else nearest 1. Half-up.","contract_signature":"nutrient, amount, unit","evaluation_group":"w2-recipe_scaling_and_nutrition-percent-daily-value","failed_approach":"Assuming every DV is stated in mg breaks fat, fiber and vitamin D.","family":"w2-recipe_scaling_and_nutrition-percent-daily-value-unit-normalization","id":"FA-97006","implementations":{"attempt":{"sha256":"457e90ee40b76c2465492e479f47992c7bca2d2eebb112be6f7064c1cc7e9172","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nfrom fractions import Fraction\nN = 1\nobservations = []\ndef solve(nutrient, amount, unit):\n    DV = {'sodium': (2300, 'mg'), 'fat': (78, 'g'), 'fiber': (28, 'g'), 'calcium': (1300, 'mg'),\n          'vitamin d': (20, 'mcg'), 'added sugars': (50, 'g'), 'protein': (50, 'g')}\n    SCALE = {'g': 1000000, 'mg': 1000, 'mcg': 1}\n    key = nutrient.strip().lower()\n    if key not in DV:\n        return 'error: no daily value'\n    amt = Fraction(str(amount))\n    if unit == 'iu':\n        if key != 'vitamin d':\n            return 'error: unit'\n        amt, unit = amt / 40, 'mcg'\n    if unit not in SCALE:\n        return 'error: unit'\n    dv, dvu = DV[key]\n    p = amt * SCALE[unit] / (dv * SCALE['mg']) * 100\n    def near(v, s):\n        return math.floor(v / s + Fraction(1, 2)) * s\n    if p == 0:\n        return '0%'\n    if key in ('calcium', 'vitamin d'):\n        if p < 2:\n            return '<2%'\n        v = near(p, 2) if p <= 10 else near(p, 5) if p <= 50 else near(p, 10)\n    else:\n        if p < 1:\n            return '<1%'\n        v = near(p, 1)\n    return '%d%%' % v\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['sodium control', ['sodium', 460, 'mg'], '20%'],\n  ['calcium exactly two percent', ['calcium', 26, 'mg'], '2%'],\n  ['vitamin d in IU', ['vitamin d', 400, 'iu'], '50%'],\n  ['regression: unit normalization', ['CALCIUM', 40, 'g'], '3080%'],\n  ['repair check: unit normalization', ['fat', 130, 'mg'], '<1%'],\n  ['generated control 1', ['fat', 0.39, 'iu'], 'error: unit'],\n  ['generated control 2', ['CALCIUM', 1, 'mg'], '<2%'],\n  ['generated control 3', [' Sodium', 1500, 'g'], '65217%']],\n [['calcium exactly two percent', ['calcium', 26, 'mg'], '2%'],\n  ['vitamin d in IU', ['vitamin d', 400, 'iu'], '50%'], ['fat in grams', ['fat', 3, 'g'], '4%'],\n  ['regression: unit normalization', ['protein', 40, 'mg'], '<1%'],\n  ['repair check: unit normalization', ['added sugars', 130, 'g'], '260%'],\n  ['generated control 1', ['iron', 5, 'g'], 'error: no daily value'],\n  ['generated control 2', ['sodium', 2, 'mg'], '<1%'],\n  ['generated control 3', ['vitamin d', 5, 'g'], '25000000%']],\n [['vitamin d in IU', ['vitamin d', 400, 'iu'], '50%'], ['fat in grams', ['fat', 3, 'g'], '4%'],\n  ['zero calcium', ['calcium', 0, 'mg'], '0%'], ['regression: unit normalization', ['fat', 10, 'mg'], '<1%'],\n  ['repair check: unit normalization', ['vitamin d', 2, 'mg'], '10000%'],\n  ['generated control 1', ['CALCIUM', 7.8, 'mg'], '<2%'], ['generated control 2', ['fat', 0, 'mg'], '0%'],\n  ['generated control 3', ['iron', 7.8, 'mg'], 'error: no daily value']],\n [['fat in grams', ['fat', 3, 'g'], '4%'], ['zero calcium', ['calcium', 0, 'mg'], '0%'],\n  ['iu for sodium rejected', ['sodium', 10, 'iu'], 'error: unit'],\n  ['regression: unit normalization', [' Sodium', 650, 'g'], '28261%'],\n  ['repair check: unit normalization', ['added sugars', 700, 'g'], '1400%'],\n  ['generated control 1', ['protein', 0, 'iu'], 'error: unit'],\n  ['generated control 2', [' Sodium', 10, 'mg'], '<1%'],\n  ['generated control 3', ['sodium', 260, 'mg'], '11%']],\n [['zero calcium', ['calcium', 0, 'mg'], '0%'],\n  ['iu for sodium rejected', ['sodium', 10, 'iu'], 'error: unit'],\n  ['sodium control', ['sodium', 460, 'mg'], '20%'],\n  ['regression: unit normalization', [' Sodium', 2300, 'g'], '100000%'],\n  ['repair check: unit normalization', ['fat', 1500, 'mcg'], '<1%'],\n  ['generated control 1', ['protein', 1500, 'mg'], '3%'],\n  ['generated control 2', ['sodium', 300, 'g'], '13043%'],\n  ['generated control 3', ['protein', 10, 'mcg'], '<1%']]]\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":"96dfa76706579587810bcd6875fdb9254b4b90b037dcf7efe8ca664ef0c0b596","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nfrom fractions import Fraction\nN = 1\nobservations = []\ndef solve(nutrient, amount, unit):\n    DV = {'sodium': (2300, 'mg'), 'fat': (78, 'g'), 'fiber': (28, 'g'), 'calcium': (1300, 'mg'),\n          'vitamin d': (20, 'mcg'), 'added sugars': (50, 'g'), 'protein': (50, 'g')}\n    SCALE = {'g': 1000000, 'mg': 1000, 'mcg': 1}\n    key = nutrient.strip().lower()\n    if key not in DV:\n        return 'error: no daily value'\n    amt = Fraction(str(amount))\n    if unit == 'iu':\n        if key != 'vitamin d':\n            return 'error: unit'\n        amt, unit = amt / 40, 'mcg'\n    if unit not in SCALE:\n        return 'error: unit'\n    dv, dvu = DV[key]\n    p = amt / dv * 100\n    def near(v, s):\n        return math.floor(v / s + Fraction(1, 2)) * s\n    if p == 0:\n        return '0%'\n    if key in ('calcium', 'vitamin d'):\n        if p < 2:\n            return '<2%'\n        v = near(p, 2) if p <= 10 else near(p, 5) if p <= 50 else near(p, 10)\n    else:\n        if p < 1:\n            return '<1%'\n        v = near(p, 1)\n    return '%d%%' % v\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['sodium control', ['sodium', 460, 'mg'], '20%'],\n  ['calcium exactly two percent', ['calcium', 26, 'mg'], '2%'],\n  ['vitamin d in IU', ['vitamin d', 400, 'iu'], '50%'],\n  ['regression: unit normalization', ['CALCIUM', 40, 'g'], '3080%'],\n  ['repair check: unit normalization', ['fat', 130, 'mg'], '<1%'],\n  ['generated control 1', ['fat', 0.39, 'iu'], 'error: unit'],\n  ['generated control 2', ['CALCIUM', 1, 'mg'], '<2%'],\n  ['generated control 3', [' Sodium', 1500, 'g'], '65217%']],\n [['calcium exactly two percent', ['calcium', 26, 'mg'], '2%'],\n  ['vitamin d in IU', ['vitamin d', 400, 'iu'], '50%'], ['fat in grams', ['fat', 3, 'g'], '4%'],\n  ['regression: unit normalization', ['protein', 40, 'mg'], '<1%'],\n  ['repair check: unit normalization', ['added sugars', 130, 'g'], '260%'],\n  ['generated control 1', ['iron', 5, 'g'], 'error: no daily value'],\n  ['generated control 2', ['sodium', 2, 'mg'], '<1%'],\n  ['generated control 3', ['vitamin d', 5, 'g'], '25000000%']],\n [['vitamin d in IU', ['vitamin d', 400, 'iu'], '50%'], ['fat in grams', ['fat', 3, 'g'], '4%'],\n  ['zero calcium', ['calcium', 0, 'mg'], '0%'], ['regression: unit normalization', ['fat', 10, 'mg'], '<1%'],\n  ['repair check: unit normalization', ['vitamin d', 2, 'mg'], '10000%'],\n  ['generated control 1', ['CALCIUM', 7.8, 'mg'], '<2%'], ['generated control 2', ['fat', 0, 'mg'], '0%'],\n  ['generated control 3', ['iron', 7.8, 'mg'], 'error: no daily value']],\n [['fat in grams', ['fat', 3, 'g'], '4%'], ['zero calcium', ['calcium', 0, 'mg'], '0%'],\n  ['iu for sodium rejected', ['sodium', 10, 'iu'], 'error: unit'],\n  ['regression: unit normalization', [' Sodium', 650, 'g'], '28261%'],\n  ['repair check: unit normalization', ['added sugars', 700, 'g'], '1400%'],\n  ['generated control 1', ['protein', 0, 'iu'], 'error: unit'],\n  ['generated control 2', [' Sodium', 10, 'mg'], '<1%'],\n  ['generated control 3', ['sodium', 260, 'mg'], '11%']],\n [['zero calcium', ['calcium', 0, 'mg'], '0%'],\n  ['iu for sodium rejected', ['sodium', 10, 'iu'], 'error: unit'],\n  ['sodium control', ['sodium', 460, 'mg'], '20%'],\n  ['regression: unit normalization', [' Sodium', 2300, 'g'], '100000%'],\n  ['repair check: unit normalization', ['fat', 1500, 'mcg'], '<1%'],\n  ['generated control 1', ['protein', 1500, 'mg'], '3%'],\n  ['generated control 2', ['sodium', 300, 'g'], '13043%'],\n  ['generated control 3', ['protein', 10, 'mcg'], '<1%']]]\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-percent-daily-value-unit-normalization","generated_at":"2026-09-29T14:52:27.966222+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Label software prints %DV with different increments for micronutrients and macronutrients.","root_cause":"The amount is divided by the DV number without reconciling g/mg/mcg units.","sha256":"2a484e1a58d3e76d7ef5db99311f2fdd2ae22bed3194a92e492f19895cd2912f","title":"Percent daily value formatter: unit normalization · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verified":true,"visibility":"public","verification":{"attempt":{"elapsed_ms":40.604,"exit_code":1,"observations":[{"actual":"20%","check":"sodium control","expected":"20%","passed":true},{"actual":"2%","check":"calcium exactly two percent","expected":"2%","passed":true},{"actual":"<2%","check":"vitamin d in IU","expected":"50%","passed":false},{"actual":"3080%","check":"regression: unit normalization","expected":"3080%","passed":true},{"actual":"167%","check":"repair check: unit normalization","expected":"<1%","passed":false},{"actual":"error: unit","check":"generated control 1","expected":"error: unit","passed":true},{"actual":"<2%","check":"generated control 2","expected":"<2%","passed":true},{"actual":"65217%","check":"generated control 3","expected":"65217%","passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"sodium control\", \"actual\": \"20%\", \"expected\": \"20%\", \"passed\": true}, {\"check\": \"calcium exactly two percent\", \"actual\": \"2%\", \"expected\": \"2%\", \"passed\": true}, {\"check\": \"vitamin d in IU\", \"actual\": \"<2%\", \"expected\": \"50%\", \"passed\": false}, {\"check\": \"regression: unit normalization\", \"actual\": \"3080%\", \"expected\": \"3080%\", \"passed\": true}, {\"check\": \"repair check: unit normalization\", \"actual\": \"167%\", \"expected\": \"<1%\", \"passed\": false}, {\"check\": \"generated control 1\", \"actual\": \"error: unit\", \"expected\": \"error: unit\", \"passed\": true}, {\"check\": \"generated control 2\", \"actual\": \"<2%\", \"expected\": \"<2%\", \"passed\": true}, {\"check\": \"generated control 3\", \"actual\": \"65217%\", \"expected\": \"65217%\", \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":41.916,"exit_code":1,"observations":[{"actual":"20%","check":"sodium control","expected":"20%","passed":true},{"actual":"2%","check":"calcium exactly two percent","expected":"2%","passed":true},{"actual":"50%","check":"vitamin d in IU","expected":"50%","passed":true},{"actual":"4%","check":"regression: unit normalization","expected":"3080%","passed":false},{"actual":"167%","check":"repair check: unit normalization","expected":"<1%","passed":false},{"actual":"error: unit","check":"generated control 1","expected":"error: unit","passed":true},{"actual":"<2%","check":"generated control 2","expected":"<2%","passed":true},{"actual":"65%","check":"generated control 3","expected":"65217%","passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"sodium control\", \"actual\": \"20%\", \"expected\": \"20%\", \"passed\": true}, {\"check\": \"calcium exactly two percent\", \"actual\": \"2%\", \"expected\": \"2%\", \"passed\": true}, {\"check\": \"vitamin d in IU\", \"actual\": \"50%\", \"expected\": \"50%\", \"passed\": true}, {\"check\": \"regression: unit normalization\", \"actual\": \"4%\", \"expected\": \"3080%\", \"passed\": false}, {\"check\": \"repair check: unit normalization\", \"actual\": \"167%\", \"expected\": \"<1%\", \"passed\": false}, {\"check\": \"generated control 1\", \"actual\": \"error: unit\", \"expected\": \"error: unit\", \"passed\": true}, {\"check\": \"generated control 2\", \"actual\": \"<2%\", \"expected\": \"<2%\", \"passed\": true}, {\"check\": \"generated control 3\", \"actual\": \"65%\", \"expected\": \"65217%\", \"passed\": false}], \"passed\": false}\n"}},"member_only":{"stages":["fixed"],"fields":["implementations.fixed","verification.fixed","harness","repair"],"note":"The verified repair, its recorded checks, the repair description, and the scoring harness are available to members."}}