{"abstract":"Changing mosquito-side competence has no effect on R0.","category":"Epidemic compartment models","checks":7,"contract":"R0 = m*a^2*b*c*exp(-mu*n)/(r*mu) with biting rate a, transmission probabilities b and c, mosquito density ratio m, human recovery r, mosquito death rate mu and extrinsic incubation n days; return [R0, sqrt(R0) generational value, survival exp(-mu*n)] rounded 6; None if a, r or mu is not positive or m is negative.","contract_signature":"a, b, c, m, r, mu, n_days","evaluation_group":"w2-epidemic-ross-macdonald","failed_approach":"Averaging b and c is not their product.","family":"w2-epidemic-ross-macdonald-bidirectional-infection-probability","id":"FA-65336","implementations":{"attempt":{"sha256":"38c800ad5d5c4fc3cda8cbe4c0509fc202871c5d0a09b6288ffe43ec170a02ad","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nN = 1\nobservations = []\ndef solve(a, b, c, m, r, mu, n_days):\n    if min(a, r, mu) <= 0 or m < 0:\n        return None\n    survive = math.exp(-mu * n_days)\n    r0 = m * a * a * (b + c) / 2 * survive / (r * mu)\n    return [round(r0, 6), round(math.sqrt(r0), 6), round(survive, 6)]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: malaria-like', (0.3, 0.5, 0.5, 10, 0.01, 0.1, 10), [82.772874, 9.09796, 0.367879]),\n  ('regression: dengue-like', (0.7, 0.4, 0.6, 2, 0.14, 0.12, 8), [5.3605, 2.315275, 0.382893]),\n  ('control: no mosquitoes', (0.3, 0.5, 0.5, 0, 0.01, 0.1, 10), [0.0, 0.0, 0.367879]),\n  ('control: invalid mu', (0.3, 0.5, 0.5, 10, 0.01, 0.0, 10), None),\n  ('regression: zero incubation', (0.5, 0.3, 0.3, 5, 0.1, 0.2, 0), [5.625, 2.371708, 1.0]),\n  ('regression: long lived mosquitoes',\n   (0.25, 0.6, 0.4, 20, 0.02, 0.05, 12),\n   [164.643491, 12.831348, 0.548812]),\n  ('regression: low bite rate', (0.1, 0.9, 0.9, 50, 0.05, 0.15, 9), [13.998974, 3.74152, 0.25924])],\n [('regression: malaria-like', (0.3, 0.5, 0.5, 10, 0.01, 0.1, 10), [82.772874, 9.09796, 0.367879]),\n  ('regression: dengue-like', (0.7, 0.4, 0.6, 2, 0.14, 0.12, 8), [5.3605, 2.315275, 0.382893]),\n  ('control: no mosquitoes', (0.3, 0.5, 0.5, 0, 0.01, 0.1, 10), [0.0, 0.0, 0.367879]),\n  ('control: invalid mu', (0.3, 0.5, 0.5, 10, 0.01, 0.0, 10), None),\n  ('regression: zero incubation', (0.5, 0.3, 0.3, 5, 0.1, 0.2, 0), [5.625, 2.371708, 1.0]),\n  ('regression: long lived mosquitoes',\n   (0.25, 0.6, 0.4, 20, 0.02, 0.05, 12),\n   [164.643491, 12.831348, 0.548812]),\n  ('regression: low bite rate', (0.1, 0.9, 0.9, 50, 0.05, 0.15, 9), [13.998974, 3.74152, 0.25924])],\n [('regression: malaria-like', (0.3, 0.5, 0.5, 10, 0.01, 0.1, 10), [82.772874, 9.09796, 0.367879]),\n  ('regression: dengue-like', (0.7, 0.4, 0.6, 2, 0.14, 0.12, 8), [5.3605, 2.315275, 0.382893]),\n  ('control: no mosquitoes', (0.3, 0.5, 0.5, 0, 0.01, 0.1, 10), [0.0, 0.0, 0.367879]),\n  ('control: invalid mu', (0.3, 0.5, 0.5, 10, 0.01, 0.0, 10), None),\n  ('regression: zero incubation', (0.5, 0.3, 0.3, 5, 0.1, 0.2, 0), [5.625, 2.371708, 1.0]),\n  ('regression: long lived mosquitoes',\n   (0.25, 0.6, 0.4, 20, 0.02, 0.05, 12),\n   [164.643491, 12.831348, 0.548812]),\n  ('regression: low bite rate', (0.1, 0.9, 0.9, 50, 0.05, 0.15, 9), [13.998974, 3.74152, 0.25924])],\n [('regression: malaria-like', (0.3, 0.5, 0.5, 10, 0.01, 0.1, 10), [82.772874, 9.09796, 0.367879]),\n  ('regression: dengue-like', (0.7, 0.4, 0.6, 2, 0.14, 0.12, 8), [5.3605, 2.315275, 0.382893]),\n  ('control: no mosquitoes', (0.3, 0.5, 0.5, 0, 0.01, 0.1, 10), [0.0, 0.0, 0.367879]),\n  ('control: invalid mu', (0.3, 0.5, 0.5, 10, 0.01, 0.0, 10), None),\n  ('regression: zero incubation', (0.5, 0.3, 0.3, 5, 0.1, 0.2, 0), [5.625, 2.371708, 1.0]),\n  ('regression: long lived mosquitoes',\n   (0.25, 0.6, 0.4, 20, 0.02, 0.05, 12),\n   [164.643491, 12.831348, 0.548812]),\n  ('regression: low bite rate', (0.1, 0.9, 0.9, 50, 0.05, 0.15, 9), [13.998974, 3.74152, 0.25924])],\n [('regression: malaria-like', (0.3, 0.5, 0.5, 10, 0.01, 0.1, 10), [82.772874, 9.09796, 0.367879]),\n  ('regression: dengue-like', (0.7, 0.4, 0.6, 2, 0.14, 0.12, 8), [5.3605, 2.315275, 0.382893]),\n  ('control: no mosquitoes', (0.3, 0.5, 0.5, 0, 0.01, 0.1, 10), [0.0, 0.0, 0.367879]),\n  ('control: invalid mu', (0.3, 0.5, 0.5, 10, 0.01, 0.0, 10), None),\n  ('regression: zero incubation', (0.5, 0.3, 0.3, 5, 0.1, 0.2, 0), [5.625, 2.371708, 1.0]),\n  ('regression: long lived mosquitoes',\n   (0.25, 0.6, 0.4, 20, 0.02, 0.05, 12),\n   [164.643491, 12.831348, 0.548812]),\n  ('regression: low bite rate', (0.1, 0.9, 0.9, 50, 0.05, 0.15, 9), [13.998974, 3.74152, 0.25924])]]\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":"25faaab16db3f1746cbfb974a05dd19c6f61c9848fd39c43deee876dddabe0b1","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nN = 1\nobservations = []\ndef solve(a, b, c, m, r, mu, n_days):\n    if min(a, r, mu) <= 0 or m < 0:\n        return None\n    survive = math.exp(-mu * n_days)\n    r0 = m * a * a * b * survive / (r * mu)\n    return [round(r0, 6), round(math.sqrt(r0), 6), round(survive, 6)]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: malaria-like', (0.3, 0.5, 0.5, 10, 0.01, 0.1, 10), [82.772874, 9.09796, 0.367879]),\n  ('regression: dengue-like', (0.7, 0.4, 0.6, 2, 0.14, 0.12, 8), [5.3605, 2.315275, 0.382893]),\n  ('control: no mosquitoes', (0.3, 0.5, 0.5, 0, 0.01, 0.1, 10), [0.0, 0.0, 0.367879]),\n  ('control: invalid mu', (0.3, 0.5, 0.5, 10, 0.01, 0.0, 10), None),\n  ('regression: zero incubation', (0.5, 0.3, 0.3, 5, 0.1, 0.2, 0), [5.625, 2.371708, 1.0]),\n  ('regression: long lived mosquitoes',\n   (0.25, 0.6, 0.4, 20, 0.02, 0.05, 12),\n   [164.643491, 12.831348, 0.548812]),\n  ('regression: low bite rate', (0.1, 0.9, 0.9, 50, 0.05, 0.15, 9), [13.998974, 3.74152, 0.25924])],\n [('regression: malaria-like', (0.3, 0.5, 0.5, 10, 0.01, 0.1, 10), [82.772874, 9.09796, 0.367879]),\n  ('regression: dengue-like', (0.7, 0.4, 0.6, 2, 0.14, 0.12, 8), [5.3605, 2.315275, 0.382893]),\n  ('control: no mosquitoes', (0.3, 0.5, 0.5, 0, 0.01, 0.1, 10), [0.0, 0.0, 0.367879]),\n  ('control: invalid mu', (0.3, 0.5, 0.5, 10, 0.01, 0.0, 10), None),\n  ('regression: zero incubation', (0.5, 0.3, 0.3, 5, 0.1, 0.2, 0), [5.625, 2.371708, 1.0]),\n  ('regression: long lived mosquitoes',\n   (0.25, 0.6, 0.4, 20, 0.02, 0.05, 12),\n   [164.643491, 12.831348, 0.548812]),\n  ('regression: low bite rate', (0.1, 0.9, 0.9, 50, 0.05, 0.15, 9), [13.998974, 3.74152, 0.25924])],\n [('regression: malaria-like', (0.3, 0.5, 0.5, 10, 0.01, 0.1, 10), [82.772874, 9.09796, 0.367879]),\n  ('regression: dengue-like', (0.7, 0.4, 0.6, 2, 0.14, 0.12, 8), [5.3605, 2.315275, 0.382893]),\n  ('control: no mosquitoes', (0.3, 0.5, 0.5, 0, 0.01, 0.1, 10), [0.0, 0.0, 0.367879]),\n  ('control: invalid mu', (0.3, 0.5, 0.5, 10, 0.01, 0.0, 10), None),\n  ('regression: zero incubation', (0.5, 0.3, 0.3, 5, 0.1, 0.2, 0), [5.625, 2.371708, 1.0]),\n  ('regression: long lived mosquitoes',\n   (0.25, 0.6, 0.4, 20, 0.02, 0.05, 12),\n   [164.643491, 12.831348, 0.548812]),\n  ('regression: low bite rate', (0.1, 0.9, 0.9, 50, 0.05, 0.15, 9), [13.998974, 3.74152, 0.25924])],\n [('regression: malaria-like', (0.3, 0.5, 0.5, 10, 0.01, 0.1, 10), [82.772874, 9.09796, 0.367879]),\n  ('regression: dengue-like', (0.7, 0.4, 0.6, 2, 0.14, 0.12, 8), [5.3605, 2.315275, 0.382893]),\n  ('control: no mosquitoes', (0.3, 0.5, 0.5, 0, 0.01, 0.1, 10), [0.0, 0.0, 0.367879]),\n  ('control: invalid mu', (0.3, 0.5, 0.5, 10, 0.01, 0.0, 10), None),\n  ('regression: zero incubation', (0.5, 0.3, 0.3, 5, 0.1, 0.2, 0), [5.625, 2.371708, 1.0]),\n  ('regression: long lived mosquitoes',\n   (0.25, 0.6, 0.4, 20, 0.02, 0.05, 12),\n   [164.643491, 12.831348, 0.548812]),\n  ('regression: low bite rate', (0.1, 0.9, 0.9, 50, 0.05, 0.15, 9), [13.998974, 3.74152, 0.25924])],\n [('regression: malaria-like', (0.3, 0.5, 0.5, 10, 0.01, 0.1, 10), [82.772874, 9.09796, 0.367879]),\n  ('regression: dengue-like', (0.7, 0.4, 0.6, 2, 0.14, 0.12, 8), [5.3605, 2.315275, 0.382893]),\n  ('control: no mosquitoes', (0.3, 0.5, 0.5, 0, 0.01, 0.1, 10), [0.0, 0.0, 0.367879]),\n  ('control: invalid mu', (0.3, 0.5, 0.5, 10, 0.01, 0.0, 10), None),\n  ('regression: zero incubation', (0.5, 0.3, 0.3, 5, 0.1, 0.2, 0), [5.625, 2.371708, 1.0]),\n  ('regression: long lived mosquitoes',\n   (0.25, 0.6, 0.4, 20, 0.02, 0.05, 12),\n   [164.643491, 12.831348, 0.548812]),\n  ('regression: low bite rate', (0.1, 0.9, 0.9, 50, 0.05, 0.15, 9), [13.998974, 3.74152, 0.25924])]]\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-ross-macdonald-bidirectional-infection-probability","generated_at":"2026-09-29T14:47:33.029114+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.","root_cause":"Only the mosquito-to-human probability is used.","sha256":"0c21714b0568b7b64115d6c48ff5d24de4c246b6be1e0bff06d7e54237bc7228","title":"Ross-Macdonald vector-borne R0: bidirectional infection probability · 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.29,"exit_code":1,"observations":[{"actual":[165.545749,12.866458,0.367879],"check":"regression: malaria-like","expected":[82.772874,9.09796,0.367879],"passed":false},{"actual":[11.167709,3.341812,0.382893],"check":"regression: dengue-like","expected":[5.3605,2.315275,0.382893],"passed":false},{"actual":[0.0,0.0,0.367879],"check":"control: no mosquitoes","expected":[0.0,0.0,0.367879],"passed":true},{"actual":null,"check":"control: invalid mu","expected":null,"passed":true},{"actual":[18.75,4.330127,1.0],"check":"regression: zero incubation","expected":[5.625,2.371708,1.0],"passed":false},{"actual":[343.007273,18.520456,0.548812],"check":"regression: long lived mosquitoes","expected":[164.643491,12.831348,0.548812],"passed":false},{"actual":[15.554416,3.943909,0.25924],"check":"regression: low bite rate","expected":[13.998974,3.74152,0.25924],"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: malaria-like\", \"actual\": [165.545749, 12.866458, 0.367879], \"expected\": [82.772874, 9.09796, 0.367879], \"passed\": false}, {\"check\": \"regression: dengue-like\", \"actual\": [11.167709, 3.341812, 0.382893], \"expected\": [5.3605, 2.315275, 0.382893], \"passed\": false}, {\"check\": \"control: no mosquitoes\", \"actual\": [0.0, 0.0, 0.367879], \"expected\": [0.0, 0.0, 0.367879], \"passed\": true}, {\"check\": \"control: invalid mu\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"regression: zero incubation\", \"actual\": [18.75, 4.330127, 1.0], \"expected\": [5.625, 2.371708, 1.0], \"passed\": false}, {\"check\": \"regression: long lived mosquitoes\", \"actual\": [343.007273, 18.520456, 0.548812], \"expected\": [164.643491, 12.831348, 0.548812], \"passed\": false}, {\"check\": \"regression: low bite rate\", \"actual\": [15.554416, 3.943909, 0.25924], \"expected\": [13.998974, 3.74152, 0.25924], \"passed\": false}], \"passed\": false}\n"},"broken":{"elapsed_ms":38.095,"exit_code":1,"observations":[{"actual":[165.545749,12.866458,0.367879],"check":"regression: malaria-like","expected":[82.772874,9.09796,0.367879],"passed":false},{"actual":[8.934167,2.989008,0.382893],"check":"regression: dengue-like","expected":[5.3605,2.315275,0.382893],"passed":false},{"actual":[0.0,0.0,0.367879],"check":"control: no mosquitoes","expected":[0.0,0.0,0.367879],"passed":true},{"actual":null,"check":"control: invalid mu","expected":null,"passed":true},{"actual":[18.75,4.330127,1.0],"check":"regression: zero incubation","expected":[5.625,2.371708,1.0],"passed":false},{"actual":[411.608727,20.288143,0.548812],"check":"regression: long lived mosquitoes","expected":[164.643491,12.831348,0.548812],"passed":false},{"actual":[15.554416,3.943909,0.25924],"check":"regression: low bite rate","expected":[13.998974,3.74152,0.25924],"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: malaria-like\", \"actual\": [165.545749, 12.866458, 0.367879], \"expected\": [82.772874, 9.09796, 0.367879], \"passed\": false}, {\"check\": \"regression: dengue-like\", \"actual\": [8.934167, 2.989008, 0.382893], \"expected\": [5.3605, 2.315275, 0.382893], \"passed\": false}, {\"check\": \"control: no mosquitoes\", \"actual\": [0.0, 0.0, 0.367879], \"expected\": [0.0, 0.0, 0.367879], \"passed\": true}, {\"check\": \"control: invalid mu\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"regression: zero incubation\", \"actual\": [18.75, 4.330127, 1.0], \"expected\": [5.625, 2.371708, 1.0], \"passed\": false}, {\"check\": \"regression: long lived mosquitoes\", \"actual\": [411.608727, 20.288143, 0.548812], \"expected\": [164.643491, 12.831348, 0.548812], \"passed\": false}, {\"check\": \"regression: low bite rate\", \"actual\": [15.554416, 3.943909, 0.25924], \"expected\": [13.998974, 3.74152, 0.25924], \"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."}}