{"abstract":"Same-day vaccinations do not reduce that day's transmission.","category":"Epidemic compartment models","checks":7,"contract":"Each day from day index start_day (inclusive), dose=min(doses_per_day, S) is given to susceptibles before transmission; dose*efficacy moves S->V; failed vaccinees stay in S; mixing uses the full pop; return [S, I, R, V, doses administered] rounded to 3.","evaluation_group":"w2-epidemic-vaccine-campaign","failed_approach":"Vaccinating after the transmission step delays protection by a full day.","family":"w2-epidemic-vaccine-campaign-vaccination-ordering","id":"FA-65076","implementations":{"attempt":{"sha256":"681f24c1240f218ed1eb8854ccbb1e19e8b6bd50c0f0d700b7fa406c828f186e","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nN = 1\nobservations = []\ndef solve(beta, gamma, pop, i0, doses_per_day, start_day, efficacy, days):\n    s, i, r, v = float(pop - i0), float(i0), 0.0, 0.0\n    given = 0.0\n    for day in range(days):\n        inf = beta * s * i / pop\n        rec = gamma * i\n        s -= inf\n        i += inf - rec\n        r += rec\n        if day >= start_day:\n            dose = min(doses_per_day, s)\n            s -= dose * efficacy\n            v += dose * efficacy\n            given += dose\n    return [round(s, 3), round(i, 3), round(r, 3), round(v, 3), round(given, 3)]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: city campaign from day 5',\n   (0.4, 0.2, 10000, 20, 200, 5, 0.9, 30),\n   [4007.174, 324.024, 1168.803, 4500.0, 5000.0]),\n  ('regression: campaign from day 0',\n   (0.5, 0.25, 2000, 10, 50, 0, 0.8, 20),\n   [872.113, 79.727, 248.159, 800.0, 1000.0]),\n  ('regression: supply exceeds susceptibles',\n   (0.3, 0.1, 100, 2, 80, 1, 0.95, 6),\n   [0.0, 1.516, 1.233, 97.251, 102.369]),\n  ('control: late campaign never starts',\n   (0.3, 0.1, 1000, 5, 100, 50, 0.9, 20),\n   [777.374, 141.242, 81.385, 0.0, 0.0]),\n  ('regression: perfect vaccine small town',\n   (0.6, 0.2, 500, 5, 40, 2, 1.0, 15),\n   [0.0, 10.271, 55.609, 434.12, 434.12]),\n  ('regression: poor vaccine',\n   (0.45, 0.15, 3000, 30, 150, 3, 0.4, 25),\n   [237.471, 307.647, 1134.882, 1320.0, 3300.0]),\n  ('control: no doses', (0.4, 0.2, 1000, 10, 0, 0, 0.9, 10), [896.73, 54.094, 49.176, 0.0, 0.0])],\n [('regression: city campaign from day 5',\n   (0.4, 0.2, 10000, 20, 200, 5, 0.9, 30),\n   [4007.174, 324.024, 1168.803, 4500.0, 5000.0]),\n  ('regression: campaign from day 0',\n   (0.5, 0.25, 2000, 10, 50, 0, 0.8, 20),\n   [872.113, 79.727, 248.159, 800.0, 1000.0]),\n  ('control: late campaign never starts',\n   (0.3, 0.1, 1000, 5, 100, 50, 0.9, 20),\n   [777.374, 141.242, 81.385, 0.0, 0.0]),\n  ('regression: perfect vaccine small town',\n   (0.6, 0.2, 500, 5, 40, 2, 1.0, 15),\n   [0.0, 10.271, 55.609, 434.12, 434.12]),\n  ('regression: poor vaccine',\n   (0.45, 0.15, 3000, 30, 150, 3, 0.4, 25),\n   [237.471, 307.647, 1134.882, 1320.0, 3300.0]),\n  ('control: no doses', (0.4, 0.2, 1000, 10, 0, 0, 0.9, 10), [896.73, 54.094, 49.176, 0.0, 0.0]),\n  ('regression: start day one', (0.35, 0.1, 800, 4, 30, 1, 0.7, 12), [519.85, 32.463, 16.687, 231.0, 330.0])],\n [('regression: city campaign from day 5',\n   (0.4, 0.2, 10000, 20, 200, 5, 0.9, 30),\n   [4007.174, 324.024, 1168.803, 4500.0, 5000.0]),\n  ('regression: campaign from day 0',\n   (0.5, 0.25, 2000, 10, 50, 0, 0.8, 20),\n   [872.113, 79.727, 248.159, 800.0, 1000.0]),\n  ('regression: supply exceeds susceptibles',\n   (0.3, 0.1, 100, 2, 80, 1, 0.95, 6),\n   [0.0, 1.516, 1.233, 97.251, 102.369]),\n  ('control: late campaign never starts',\n   (0.3, 0.1, 1000, 5, 100, 50, 0.9, 20),\n   [777.374, 141.242, 81.385, 0.0, 0.0]),\n  ('regression: perfect vaccine small town',\n   (0.6, 0.2, 500, 5, 40, 2, 1.0, 15),\n   [0.0, 10.271, 55.609, 434.12, 434.12]),\n  ('control: no doses', (0.4, 0.2, 1000, 10, 0, 0, 0.9, 10), [896.73, 54.094, 49.176, 0.0, 0.0]),\n  ('regression: start day one', (0.35, 0.1, 800, 4, 30, 1, 0.7, 12), [519.85, 32.463, 16.687, 231.0, 330.0])],\n [('regression: campaign from day 0',\n   (0.5, 0.25, 2000, 10, 50, 0, 0.8, 20),\n   [872.113, 79.727, 248.159, 800.0, 1000.0]),\n  ('regression: supply exceeds susceptibles',\n   (0.3, 0.1, 100, 2, 80, 1, 0.95, 6),\n   [0.0, 1.516, 1.233, 97.251, 102.369]),\n  ('control: late campaign never starts',\n   (0.3, 0.1, 1000, 5, 100, 50, 0.9, 20),\n   [777.374, 141.242, 81.385, 0.0, 0.0]),\n  ('regression: perfect vaccine small town',\n   (0.6, 0.2, 500, 5, 40, 2, 1.0, 15),\n   [0.0, 10.271, 55.609, 434.12, 434.12]),\n  ('regression: poor vaccine',\n   (0.45, 0.15, 3000, 30, 150, 3, 0.4, 25),\n   [237.471, 307.647, 1134.882, 1320.0, 3300.0]),\n  ('control: no doses', (0.4, 0.2, 1000, 10, 0, 0, 0.9, 10), [896.73, 54.094, 49.176, 0.0, 0.0]),\n  ('regression: start day one', (0.35, 0.1, 800, 4, 30, 1, 0.7, 12), [519.85, 32.463, 16.687, 231.0, 330.0])],\n [('regression: city campaign from day 5',\n   (0.4, 0.2, 10000, 20, 200, 5, 0.9, 30),\n   [4007.174, 324.024, 1168.803, 4500.0, 5000.0]),\n  ('regression: campaign from day 0',\n   (0.5, 0.25, 2000, 10, 50, 0, 0.8, 20),\n   [872.113, 79.727, 248.159, 800.0, 1000.0]),\n  ('control: late campaign never starts',\n   (0.3, 0.1, 1000, 5, 100, 50, 0.9, 20),\n   [777.374, 141.242, 81.385, 0.0, 0.0]),\n  ('regression: perfect vaccine small town',\n   (0.6, 0.2, 500, 5, 40, 2, 1.0, 15),\n   [0.0, 10.271, 55.609, 434.12, 434.12]),\n  ('regression: poor vaccine',\n   (0.45, 0.15, 3000, 30, 150, 3, 0.4, 25),\n   [237.471, 307.647, 1134.882, 1320.0, 3300.0]),\n  ('control: no doses', (0.4, 0.2, 1000, 10, 0, 0, 0.9, 10), [896.73, 54.094, 49.176, 0.0, 0.0]),\n  ('regression: start day one', (0.35, 0.1, 800, 4, 30, 1, 0.7, 12), [519.85, 32.463, 16.687, 231.0, 330.0])]]\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":"f383075014a5b495fbdf1522644de68046d634ec02f179cee2003163732d4103","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nN = 1\nobservations = []\ndef solve(beta, gamma, pop, i0, doses_per_day, start_day, efficacy, days):\n    s, i, r, v = float(pop - i0), float(i0), 0.0, 0.0\n    given = 0.0\n    for day in range(days):\n        inf = beta * s * i / pop\n        if day >= start_day:\n            dose = min(doses_per_day, s)\n            s -= dose * efficacy\n            v += dose * efficacy\n            given += dose\n        rec = gamma * i\n        s -= inf\n        i += inf - rec\n        r += rec\n    return [round(s, 3), round(i, 3), round(r, 3), round(v, 3), round(given, 3)]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: city campaign from day 5',\n   (0.4, 0.2, 10000, 20, 200, 5, 0.9, 30),\n   [4007.174, 324.024, 1168.803, 4500.0, 5000.0]),\n  ('regression: campaign from day 0',\n   (0.5, 0.25, 2000, 10, 50, 0, 0.8, 20),\n   [872.113, 79.727, 248.159, 800.0, 1000.0]),\n  ('regression: supply exceeds susceptibles',\n   (0.3, 0.1, 100, 2, 80, 1, 0.95, 6),\n   [0.0, 1.516, 1.233, 97.251, 102.369]),\n  ('control: late campaign never starts',\n   (0.3, 0.1, 1000, 5, 100, 50, 0.9, 20),\n   [777.374, 141.242, 81.385, 0.0, 0.0]),\n  ('regression: perfect vaccine small town',\n   (0.6, 0.2, 500, 5, 40, 2, 1.0, 15),\n   [0.0, 10.271, 55.609, 434.12, 434.12]),\n  ('regression: poor vaccine',\n   (0.45, 0.15, 3000, 30, 150, 3, 0.4, 25),\n   [237.471, 307.647, 1134.882, 1320.0, 3300.0]),\n  ('control: no doses', (0.4, 0.2, 1000, 10, 0, 0, 0.9, 10), [896.73, 54.094, 49.176, 0.0, 0.0])],\n [('regression: city campaign from day 5',\n   (0.4, 0.2, 10000, 20, 200, 5, 0.9, 30),\n   [4007.174, 324.024, 1168.803, 4500.0, 5000.0]),\n  ('regression: campaign from day 0',\n   (0.5, 0.25, 2000, 10, 50, 0, 0.8, 20),\n   [872.113, 79.727, 248.159, 800.0, 1000.0]),\n  ('control: late campaign never starts',\n   (0.3, 0.1, 1000, 5, 100, 50, 0.9, 20),\n   [777.374, 141.242, 81.385, 0.0, 0.0]),\n  ('regression: perfect vaccine small town',\n   (0.6, 0.2, 500, 5, 40, 2, 1.0, 15),\n   [0.0, 10.271, 55.609, 434.12, 434.12]),\n  ('regression: poor vaccine',\n   (0.45, 0.15, 3000, 30, 150, 3, 0.4, 25),\n   [237.471, 307.647, 1134.882, 1320.0, 3300.0]),\n  ('control: no doses', (0.4, 0.2, 1000, 10, 0, 0, 0.9, 10), [896.73, 54.094, 49.176, 0.0, 0.0]),\n  ('regression: start day one', (0.35, 0.1, 800, 4, 30, 1, 0.7, 12), [519.85, 32.463, 16.687, 231.0, 330.0])],\n [('regression: city campaign from day 5',\n   (0.4, 0.2, 10000, 20, 200, 5, 0.9, 30),\n   [4007.174, 324.024, 1168.803, 4500.0, 5000.0]),\n  ('regression: campaign from day 0',\n   (0.5, 0.25, 2000, 10, 50, 0, 0.8, 20),\n   [872.113, 79.727, 248.159, 800.0, 1000.0]),\n  ('regression: supply exceeds susceptibles',\n   (0.3, 0.1, 100, 2, 80, 1, 0.95, 6),\n   [0.0, 1.516, 1.233, 97.251, 102.369]),\n  ('control: late campaign never starts',\n   (0.3, 0.1, 1000, 5, 100, 50, 0.9, 20),\n   [777.374, 141.242, 81.385, 0.0, 0.0]),\n  ('regression: perfect vaccine small town',\n   (0.6, 0.2, 500, 5, 40, 2, 1.0, 15),\n   [0.0, 10.271, 55.609, 434.12, 434.12]),\n  ('control: no doses', (0.4, 0.2, 1000, 10, 0, 0, 0.9, 10), [896.73, 54.094, 49.176, 0.0, 0.0]),\n  ('regression: start day one', (0.35, 0.1, 800, 4, 30, 1, 0.7, 12), [519.85, 32.463, 16.687, 231.0, 330.0])],\n [('regression: campaign from day 0',\n   (0.5, 0.25, 2000, 10, 50, 0, 0.8, 20),\n   [872.113, 79.727, 248.159, 800.0, 1000.0]),\n  ('regression: supply exceeds susceptibles',\n   (0.3, 0.1, 100, 2, 80, 1, 0.95, 6),\n   [0.0, 1.516, 1.233, 97.251, 102.369]),\n  ('control: late campaign never starts',\n   (0.3, 0.1, 1000, 5, 100, 50, 0.9, 20),\n   [777.374, 141.242, 81.385, 0.0, 0.0]),\n  ('regression: perfect vaccine small town',\n   (0.6, 0.2, 500, 5, 40, 2, 1.0, 15),\n   [0.0, 10.271, 55.609, 434.12, 434.12]),\n  ('regression: poor vaccine',\n   (0.45, 0.15, 3000, 30, 150, 3, 0.4, 25),\n   [237.471, 307.647, 1134.882, 1320.0, 3300.0]),\n  ('control: no doses', (0.4, 0.2, 1000, 10, 0, 0, 0.9, 10), [896.73, 54.094, 49.176, 0.0, 0.0]),\n  ('regression: start day one', (0.35, 0.1, 800, 4, 30, 1, 0.7, 12), [519.85, 32.463, 16.687, 231.0, 330.0])],\n [('regression: city campaign from day 5',\n   (0.4, 0.2, 10000, 20, 200, 5, 0.9, 30),\n   [4007.174, 324.024, 1168.803, 4500.0, 5000.0]),\n  ('regression: campaign from day 0',\n   (0.5, 0.25, 2000, 10, 50, 0, 0.8, 20),\n   [872.113, 79.727, 248.159, 800.0, 1000.0]),\n  ('control: late campaign never starts',\n   (0.3, 0.1, 1000, 5, 100, 50, 0.9, 20),\n   [777.374, 141.242, 81.385, 0.0, 0.0]),\n  ('regression: perfect vaccine small town',\n   (0.6, 0.2, 500, 5, 40, 2, 1.0, 15),\n   [0.0, 10.271, 55.609, 434.12, 434.12]),\n  ('regression: poor vaccine',\n   (0.45, 0.15, 3000, 30, 150, 3, 0.4, 25),\n   [237.471, 307.647, 1134.882, 1320.0, 3300.0]),\n  ('control: no doses', (0.4, 0.2, 1000, 10, 0, 0, 0.9, 10), [896.73, 54.094, 49.176, 0.0, 0.0]),\n  ('regression: start day one', (0.35, 0.1, 800, 4, 30, 1, 0.7, 12), [519.85, 32.463, 16.687, 231.0, 330.0])]]\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":"a8f168ad0533278fef5a4231d60edd19c88f20da1fd4fe9e504a20593a3e33e8","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nN = 1\nobservations = []\ndef solve(beta, gamma, pop, i0, doses_per_day, start_day, efficacy, days):\n    s, i, r, v = float(pop - i0), float(i0), 0.0, 0.0\n    given = 0.0\n    for day in range(days):\n        if day >= start_day:\n            dose = min(doses_per_day, s)\n            s -= dose * efficacy\n            v += dose * efficacy\n            given += dose\n        inf = beta * s * i / pop\n        rec = gamma * i\n        s -= inf\n        i += inf - rec\n        r += rec\n    return [round(s, 3), round(i, 3), round(r, 3), round(v, 3), round(given, 3)]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: city campaign from day 5',\n   (0.4, 0.2, 10000, 20, 200, 5, 0.9, 30),\n   [4007.174, 324.024, 1168.803, 4500.0, 5000.0]),\n  ('regression: campaign from day 0',\n   (0.5, 0.25, 2000, 10, 50, 0, 0.8, 20),\n   [872.113, 79.727, 248.159, 800.0, 1000.0]),\n  ('regression: supply exceeds susceptibles',\n   (0.3, 0.1, 100, 2, 80, 1, 0.95, 6),\n   [0.0, 1.516, 1.233, 97.251, 102.369]),\n  ('control: late campaign never starts',\n   (0.3, 0.1, 1000, 5, 100, 50, 0.9, 20),\n   [777.374, 141.242, 81.385, 0.0, 0.0]),\n  ('regression: perfect vaccine small town',\n   (0.6, 0.2, 500, 5, 40, 2, 1.0, 15),\n   [0.0, 10.271, 55.609, 434.12, 434.12]),\n  ('regression: poor vaccine',\n   (0.45, 0.15, 3000, 30, 150, 3, 0.4, 25),\n   [237.471, 307.647, 1134.882, 1320.0, 3300.0]),\n  ('control: no doses', (0.4, 0.2, 1000, 10, 0, 0, 0.9, 10), [896.73, 54.094, 49.176, 0.0, 0.0])],\n [('regression: city campaign from day 5',\n   (0.4, 0.2, 10000, 20, 200, 5, 0.9, 30),\n   [4007.174, 324.024, 1168.803, 4500.0, 5000.0]),\n  ('regression: campaign from day 0',\n   (0.5, 0.25, 2000, 10, 50, 0, 0.8, 20),\n   [872.113, 79.727, 248.159, 800.0, 1000.0]),\n  ('control: late campaign never starts',\n   (0.3, 0.1, 1000, 5, 100, 50, 0.9, 20),\n   [777.374, 141.242, 81.385, 0.0, 0.0]),\n  ('regression: perfect vaccine small town',\n   (0.6, 0.2, 500, 5, 40, 2, 1.0, 15),\n   [0.0, 10.271, 55.609, 434.12, 434.12]),\n  ('regression: poor vaccine',\n   (0.45, 0.15, 3000, 30, 150, 3, 0.4, 25),\n   [237.471, 307.647, 1134.882, 1320.0, 3300.0]),\n  ('control: no doses', (0.4, 0.2, 1000, 10, 0, 0, 0.9, 10), [896.73, 54.094, 49.176, 0.0, 0.0]),\n  ('regression: start day one', (0.35, 0.1, 800, 4, 30, 1, 0.7, 12), [519.85, 32.463, 16.687, 231.0, 330.0])],\n [('regression: city campaign from day 5',\n   (0.4, 0.2, 10000, 20, 200, 5, 0.9, 30),\n   [4007.174, 324.024, 1168.803, 4500.0, 5000.0]),\n  ('regression: campaign from day 0',\n   (0.5, 0.25, 2000, 10, 50, 0, 0.8, 20),\n   [872.113, 79.727, 248.159, 800.0, 1000.0]),\n  ('regression: supply exceeds susceptibles',\n   (0.3, 0.1, 100, 2, 80, 1, 0.95, 6),\n   [0.0, 1.516, 1.233, 97.251, 102.369]),\n  ('control: late campaign never starts',\n   (0.3, 0.1, 1000, 5, 100, 50, 0.9, 20),\n   [777.374, 141.242, 81.385, 0.0, 0.0]),\n  ('regression: perfect vaccine small town',\n   (0.6, 0.2, 500, 5, 40, 2, 1.0, 15),\n   [0.0, 10.271, 55.609, 434.12, 434.12]),\n  ('control: no doses', (0.4, 0.2, 1000, 10, 0, 0, 0.9, 10), [896.73, 54.094, 49.176, 0.0, 0.0]),\n  ('regression: start day one', (0.35, 0.1, 800, 4, 30, 1, 0.7, 12), [519.85, 32.463, 16.687, 231.0, 330.0])],\n [('regression: campaign from day 0',\n   (0.5, 0.25, 2000, 10, 50, 0, 0.8, 20),\n   [872.113, 79.727, 248.159, 800.0, 1000.0]),\n  ('regression: supply exceeds susceptibles',\n   (0.3, 0.1, 100, 2, 80, 1, 0.95, 6),\n   [0.0, 1.516, 1.233, 97.251, 102.369]),\n  ('control: late campaign never starts',\n   (0.3, 0.1, 1000, 5, 100, 50, 0.9, 20),\n   [777.374, 141.242, 81.385, 0.0, 0.0]),\n  ('regression: perfect vaccine small town',\n   (0.6, 0.2, 500, 5, 40, 2, 1.0, 15),\n   [0.0, 10.271, 55.609, 434.12, 434.12]),\n  ('regression: poor vaccine',\n   (0.45, 0.15, 3000, 30, 150, 3, 0.4, 25),\n   [237.471, 307.647, 1134.882, 1320.0, 3300.0]),\n  ('control: no doses', (0.4, 0.2, 1000, 10, 0, 0, 0.9, 10), [896.73, 54.094, 49.176, 0.0, 0.0]),\n  ('regression: start day one', (0.35, 0.1, 800, 4, 30, 1, 0.7, 12), [519.85, 32.463, 16.687, 231.0, 330.0])],\n [('regression: city campaign from day 5',\n   (0.4, 0.2, 10000, 20, 200, 5, 0.9, 30),\n   [4007.174, 324.024, 1168.803, 4500.0, 5000.0]),\n  ('regression: campaign from day 0',\n   (0.5, 0.25, 2000, 10, 50, 0, 0.8, 20),\n   [872.113, 79.727, 248.159, 800.0, 1000.0]),\n  ('control: late campaign never starts',\n   (0.3, 0.1, 1000, 5, 100, 50, 0.9, 20),\n   [777.374, 141.242, 81.385, 0.0, 0.0]),\n  ('regression: perfect vaccine small town',\n   (0.6, 0.2, 500, 5, 40, 2, 1.0, 15),\n   [0.0, 10.271, 55.609, 434.12, 434.12]),\n  ('regression: poor vaccine',\n   (0.45, 0.15, 3000, 30, 150, 3, 0.4, 25),\n   [237.471, 307.647, 1134.882, 1320.0, 3300.0]),\n  ('control: no doses', (0.4, 0.2, 1000, 10, 0, 0, 0.9, 10), [896.73, 54.094, 49.176, 0.0, 0.0]),\n  ('regression: start day one', (0.35, 0.1, 800, 4, 30, 1, 0.7, 12), [519.85, 32.463, 16.687, 231.0, 330.0])]]\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":"Deterministic bounded teaching model with a stipulated contract; not a validated scientific or public-health modelling library. 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-epidemic-vaccine-campaign-vaccination-ordering","generated_at":"2026-09-29T14:47:30.728654+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Compartmental epidemic calculations drive outbreak forecasts, vaccine targets and hospital planning; a single wrong flow, rate conversion or boundary silently changes every downstream number.","repair":"Restore the vaccination ordering rule: `if day >= start_day: / dose = min(doses_per_day, s) / s -= dose * efficacy / v += dose * efficacy / given += dose / inf = beta * s * i / pop`.","root_cause":"Force of infection is computed from pre-vaccination susceptibles.","sha256":"626054d855d0342feb22bd195582e3a789d1c9efffb82e14e64c91b5a91bc9b8","title":"SIR with daily all-or-nothing vaccination campaign: vaccination ordering · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":40.183,"exit_code":1,"observations":[{"actual":[3863.726,365.712,1270.562,4500.0,5000.0],"check":"regression: city campaign from day 5","expected":[4007.174,324.024,1168.803,4500.0,5000.0],"passed":false},{"actual":[836.943,90.662,272.395,800.0,1000.0],"check":"regression: campaign from day 0","expected":[872.113,79.727,248.159,800.0,1000.0],"passed":false},{"actual":[0.0,2.004,1.467,96.528,101.609],"check":"regression: supply exceeds susceptibles","expected":[0.0,1.516,1.233,97.251,102.369],"passed":false},{"actual":[777.374,141.242,81.385,0.0,0.0],"check":"control: late campaign never starts","expected":[777.374,141.242,81.385,0.0,0.0],"passed":true},{"actual":[0.0,15.037,69.31,415.653,415.653],"check":"regression: perfect vaccine small town","expected":[0.0,10.271,55.609,434.12,434.12],"passed":false},{"actual":[158.256,322.28,1199.463,1320.0,3300.0],"check":"regression: poor vaccine","expected":[237.471,307.647,1134.882,1320.0,3300.0],"passed":false},{"actual":[896.73,54.094,49.176,0.0,0.0],"check":"control: no doses","expected":[896.73,54.094,49.176,0.0,0.0],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: city campaign from day 5\", \"actual\": [3863.726, 365.712, 1270.562, 4500.0, 5000.0], \"expected\": [4007.174, 324.024, 1168.803, 4500.0, 5000.0], \"passed\": false}, {\"check\": \"regression: campaign from day 0\", \"actual\": [836.943, 90.662, 272.395, 800.0, 1000.0], \"expected\": [872.113, 79.727, 248.159, 800.0, 1000.0], \"passed\": false}, {\"check\": \"regression: supply exceeds susceptibles\", \"actual\": [0.0, 2.004, 1.467, 96.528, 101.609], \"expected\": [0.0, 1.516, 1.233, 97.251, 102.369], \"passed\": false}, {\"check\": \"control: late campaign never starts\", \"actual\": [777.374, 141.242, 81.385, 0.0, 0.0], \"expected\": [777.374, 141.242, 81.385, 0.0, 0.0], \"passed\": true}, {\"check\": \"regression: perfect vaccine small town\", \"actual\": [0.0, 15.037, 69.31, 415.653, 415.653], \"expected\": [0.0, 10.271, 55.609, 434.12, 434.12], \"passed\": false}, {\"check\": \"regression: poor vaccine\", \"actual\": [158.256, 322.28, 1199.463, 1320.0, 3300.0], \"expected\": [237.471, 307.647, 1134.882, 1320.0, 3300.0], \"passed\": false}, {\"check\": \"control: no doses\", \"actual\": [896.73, 54.094, 49.176, 0.0, 0.0], \"expected\": [896.73, 54.094, 49.176, 0.0, 0.0], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":38.199,"exit_code":1,"observations":[{"actual":[3863.726,365.712,1270.562,4500.0,5000.0],"check":"regression: city campaign from day 5","expected":[4007.174,324.024,1168.803,4500.0,5000.0],"passed":false},{"actual":[836.943,90.662,272.395,800.0,1000.0],"check":"regression: campaign from day 0","expected":[872.113,79.727,248.159,800.0,1000.0],"passed":false},{"actual":[0.0,2.003,1.467,96.53,101.61],"check":"regression: supply exceeds susceptibles","expected":[0.0,1.516,1.233,97.251,102.369],"passed":false},{"actual":[777.374,141.242,81.385,0.0,0.0],"check":"control: late campaign never starts","expected":[777.374,141.242,81.385,0.0,0.0],"passed":true},{"actual":[-0.0,15.025,69.307,415.668,415.668],"check":"regression: perfect vaccine small town","expected":[0.0,10.271,55.609,434.12,434.12],"passed":false},{"actual":[158.256,322.28,1199.463,1320.0,3300.0],"check":"regression: poor vaccine","expected":[237.471,307.647,1134.882,1320.0,3300.0],"passed":false},{"actual":[896.73,54.094,49.176,0.0,0.0],"check":"control: no doses","expected":[896.73,54.094,49.176,0.0,0.0],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: city campaign from day 5\", \"actual\": [3863.726, 365.712, 1270.562, 4500.0, 5000.0], \"expected\": [4007.174, 324.024, 1168.803, 4500.0, 5000.0], \"passed\": false}, {\"check\": \"regression: campaign from day 0\", \"actual\": [836.943, 90.662, 272.395, 800.0, 1000.0], \"expected\": [872.113, 79.727, 248.159, 800.0, 1000.0], \"passed\": false}, {\"check\": \"regression: supply exceeds susceptibles\", \"actual\": [0.0, 2.003, 1.467, 96.53, 101.61], \"expected\": [0.0, 1.516, 1.233, 97.251, 102.369], \"passed\": false}, {\"check\": \"control: late campaign never starts\", \"actual\": [777.374, 141.242, 81.385, 0.0, 0.0], \"expected\": [777.374, 141.242, 81.385, 0.0, 0.0], \"passed\": true}, {\"check\": \"regression: perfect vaccine small town\", \"actual\": [-0.0, 15.025, 69.307, 415.668, 415.668], \"expected\": [0.0, 10.271, 55.609, 434.12, 434.12], \"passed\": false}, {\"check\": \"regression: poor vaccine\", \"actual\": [158.256, 322.28, 1199.463, 1320.0, 3300.0], \"expected\": [237.471, 307.647, 1134.882, 1320.0, 3300.0], \"passed\": false}, {\"check\": \"control: no doses\", \"actual\": [896.73, 54.094, 49.176, 0.0, 0.0], \"expected\": [896.73, 54.094, 49.176, 0.0, 0.0], \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":41.08,"exit_code":0,"observations":[{"actual":[4007.174,324.024,1168.803,4500.0,5000.0],"check":"regression: city campaign from day 5","expected":[4007.174,324.024,1168.803,4500.0,5000.0],"passed":true},{"actual":[872.113,79.727,248.159,800.0,1000.0],"check":"regression: campaign from day 0","expected":[872.113,79.727,248.159,800.0,1000.0],"passed":true},{"actual":[0.0,1.516,1.233,97.251,102.369],"check":"regression: supply exceeds susceptibles","expected":[0.0,1.516,1.233,97.251,102.369],"passed":true},{"actual":[777.374,141.242,81.385,0.0,0.0],"check":"control: late campaign never starts","expected":[777.374,141.242,81.385,0.0,0.0],"passed":true},{"actual":[0.0,10.271,55.609,434.12,434.12],"check":"regression: perfect vaccine small town","expected":[0.0,10.271,55.609,434.12,434.12],"passed":true},{"actual":[237.471,307.647,1134.882,1320.0,3300.0],"check":"regression: poor vaccine","expected":[237.471,307.647,1134.882,1320.0,3300.0],"passed":true},{"actual":[896.73,54.094,49.176,0.0,0.0],"check":"control: no doses","expected":[896.73,54.094,49.176,0.0,0.0],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: city campaign from day 5\", \"actual\": [4007.174, 324.024, 1168.803, 4500.0, 5000.0], \"expected\": [4007.174, 324.024, 1168.803, 4500.0, 5000.0], \"passed\": true}, {\"check\": \"regression: campaign from day 0\", \"actual\": [872.113, 79.727, 248.159, 800.0, 1000.0], \"expected\": [872.113, 79.727, 248.159, 800.0, 1000.0], \"passed\": true}, {\"check\": \"regression: supply exceeds susceptibles\", \"actual\": [0.0, 1.516, 1.233, 97.251, 102.369], \"expected\": [0.0, 1.516, 1.233, 97.251, 102.369], \"passed\": true}, {\"check\": \"control: late campaign never starts\", \"actual\": [777.374, 141.242, 81.385, 0.0, 0.0], \"expected\": [777.374, 141.242, 81.385, 0.0, 0.0], \"passed\": true}, {\"check\": \"regression: perfect vaccine small town\", \"actual\": [0.0, 10.271, 55.609, 434.12, 434.12], \"expected\": [0.0, 10.271, 55.609, 434.12, 434.12], \"passed\": true}, {\"check\": \"regression: poor vaccine\", \"actual\": [237.471, 307.647, 1134.882, 1320.0, 3300.0], \"expected\": [237.471, 307.647, 1134.882, 1320.0, 3300.0], \"passed\": true}, {\"check\": \"control: no doses\", \"actual\": [896.73, 54.094, 49.176, 0.0, 0.0], \"expected\": [896.73, 54.094, 49.176, 0.0, 0.0], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}