{"abstract":"An under-round book shows \"-1.99\" style garbage instead of \"-0.01\".","category":"Betting odds conversion","checks":8,"contract":"Market book analysis for decimal prices (strings, each > 1, else \"invalid\"). Implied probability is 1/d; book = sum of implied probabilities. Return [overround percent (book - 1) * 100, bookmaker margin percent (1 - 1/book) * 100, fair prices d * book for proportional margin removal], every number rounded half up to two decimals (negative values are rounded toward +infinity at the half) and formatted with two decimals.","evaluation_group":"w2-odds-conversion-book-overround-fair-odds","failed_approach":"Taking the sign from the unrounded value prints \"-0.00\" for tiny negative overrounds.","family":"w2-odds-conversion-book-overround-fair-odds-negative-format","id":"FA-84426","implementations":{"attempt":{"sha256":"f601e6b02c997e4ea3edbfc3a741260c829996b67c81eef9af30b19a1a46052f","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nfrom fractions import Fraction\nimport math\nN = 1\nobservations = []\ndef solve(prices):\n    def fmt(x):\n        sign = '-' if x < 0 else ''\n        c = math.floor(abs(x) * 100 + Fraction(1, 2))\n        return sign + '%d.%02d' % (c // 100, c % 100)\n    ds = [Fraction(p) for p in prices]\n    if any(d <= 1 for d in ds):\n        return 'invalid'\n    book = sum(1 / d for d in ds)\n    over = (book - 1) * 100\n    margin = (1 - 1 / book) * 100\n    fair = [fmt(d * book) for d in ds]\n    return [fmt(over), fmt(margin), fair]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ndef run(args):\n    try:\n        return solve(*args)\n    except Exception as exc:\n        return 'raised ' + type(exc).__name__\ncases = [[('control fair coin', (['2.00', '2.00'],), ['0.00', '0.00', ['2.00', '2.00']]),\n  ('control standard juice', (['1.91', '1.91'],), ['4.71', '4.50', ['2.00', '2.00']]),\n  ('boundary three-way', (['2.50', '3.20', '2.90'],), ['5.73', '5.42', ['2.64', '3.38', '3.07']]),\n  ('boundary no-profit price', (['1.00', '5.00'],), 'invalid'),\n  ('regression: negative format',\n   (['3.13', '2.06', '5.16'],),\n   ['-0.13', '-0.13', ['3.13', '2.06', '5.15']]),\n  ('regression: negative format', (['2.0002', '2.00'],), ['0.00', '0.00', ['2.00', '2.00']]),\n  ('variant scenario 1',\n   (['9.05', '2.06', '1.87'],),\n   ['13.07', '11.56', ['10.23', '2.33', '2.11']]),\n  ('variant scenario 2', (['5.64', '2.16', '2.75'],), ['0.39', '0.39', ['5.66', '2.17', '2.76']])],\n [('control fair coin', (['2.00', '2.00'],), ['0.00', '0.00', ['2.00', '2.00']]),\n  ('control standard juice', (['1.91', '1.91'],), ['4.71', '4.50', ['2.00', '2.00']]),\n  ('boundary three-way', (['2.50', '3.20', '2.90'],), ['5.73', '5.42', ['2.64', '3.38', '3.07']]),\n  ('boundary no-profit price', (['1.00', '5.00'],), 'invalid'),\n  ('regression: negative format',\n   (['2.70', '2.85', '17.25', '5.00'],),\n   ['-2.08', '-2.12', ['2.64', '2.79', '16.89', '4.90']]),\n  ('regression: negative format', (['2.0002', '2.00'],), ['0.00', '0.00', ['2.00', '2.00']]),\n  ('variant scenario 1', (['3.09', '1.42'],), ['2.78', '2.71', ['3.18', '1.46']]),\n  ('variant scenario 2', (['4.24', '1.99', '3.04'],), ['6.73', '6.31', ['4.53', '2.12', '3.24']])],\n [('control fair coin', (['2.00', '2.00'],), ['0.00', '0.00', ['2.00', '2.00']]),\n  ('control standard juice', (['1.91', '1.91'],), ['4.71', '4.50', ['2.00', '2.00']]),\n  ('boundary three-way', (['2.50', '3.20', '2.90'],), ['5.73', '5.42', ['2.64', '3.38', '3.07']]),\n  ('boundary no-profit price', (['1.00', '5.00'],), 'invalid'),\n  ('regression: negative format',\n   (['8.77', '3.61', '3.44', '3.17'],),\n   ['-0.28', '-0.28', ['8.75', '3.60', '3.43', '3.16']]),\n  ('regression: negative format', (['2.0001', '2.0001'],), ['0.00', '0.00', ['2.00', '2.00']]),\n  ('variant scenario 1', (['2.70', '2.41', '2.77'],), ['14.63', '12.76', ['3.10', '2.76', '3.18']]),\n  ('variant scenario 2', (['4.44', '1.08'],), ['15.12', '13.13', ['5.11', '1.24']])],\n [('control fair coin', (['2.00', '2.00'],), ['0.00', '0.00', ['2.00', '2.00']]),\n  ('control standard juice', (['1.91', '1.91'],), ['4.71', '4.50', ['2.00', '2.00']]),\n  ('boundary three-way', (['2.50', '3.20', '2.90'],), ['5.73', '5.42', ['2.64', '3.38', '3.07']]),\n  ('boundary no-profit price', (['1.00', '5.00'],), 'invalid'),\n  ('regression: negative format',\n   (['14.48', '2.85', '3.84', '3.27'],),\n   ['-1.38', '-1.40', ['14.28', '2.81', '3.79', '3.22']]),\n  ('regression: negative format', (['2.0002', '2.00'],), ['0.00', '0.00', ['2.00', '2.00']]),\n  ('variant scenario 1',\n   (['4.40', '5.01', '2.99', '2.89'],),\n   ['10.73', '9.69', ['4.87', '5.55', '3.31', '3.20']]),\n  ('variant scenario 2', (['2.01', '1.74'],), ['7.22', '6.74', ['2.16', '1.87']])],\n [('control fair coin', (['2.00', '2.00'],), ['0.00', '0.00', ['2.00', '2.00']]),\n  ('control standard juice', (['1.91', '1.91'],), ['4.71', '4.50', ['2.00', '2.00']]),\n  ('boundary three-way', (['2.50', '3.20', '2.90'],), ['5.73', '5.42', ['2.64', '3.38', '3.07']]),\n  ('boundary no-profit price', (['1.00', '5.00'],), 'invalid'),\n  ('regression: negative format',\n   (['2.26', '3.08', '4.63'],),\n   ['-1.69', '-1.72', ['2.22', '3.03', '4.55']]),\n  ('regression: negative format',\n   (['3.15', '2.98', '3.25', '25.47'],),\n   ['0.00', '0.00', ['3.15', '2.98', '3.25', '25.47']]),\n  ('variant scenario 1', (['0.90', '3.50', '2.48'],), 'invalid'),\n  ('variant scenario 2',\n   (['7.05', '4.46', '2.67', '3.12'],),\n   ['6.11', '5.76', ['7.48', '4.73', '2.83', '3.31']])]]\nfor label, args, expected in cases[N - 1]:\n    check(label, run(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":"bb2f7402daac774daab7ab417a7ed65f3214171edc399222fd6c4701cfccf738","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nfrom fractions import Fraction\nimport math\nN = 1\nobservations = []\ndef solve(prices):\n    def fmt(x):\n        c = math.floor(x * 100 + Fraction(1, 2))\n        return '%d.%02d' % (c // 100, c % 100)\n    ds = [Fraction(p) for p in prices]\n    if any(d <= 1 for d in ds):\n        return 'invalid'\n    book = sum(1 / d for d in ds)\n    over = (book - 1) * 100\n    margin = (1 - 1 / book) * 100\n    fair = [fmt(d * book) for d in ds]\n    return [fmt(over), fmt(margin), fair]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ndef run(args):\n    try:\n        return solve(*args)\n    except Exception as exc:\n        return 'raised ' + type(exc).__name__\ncases = [[('control fair coin', (['2.00', '2.00'],), ['0.00', '0.00', ['2.00', '2.00']]),\n  ('control standard juice', (['1.91', '1.91'],), ['4.71', '4.50', ['2.00', '2.00']]),\n  ('boundary three-way', (['2.50', '3.20', '2.90'],), ['5.73', '5.42', ['2.64', '3.38', '3.07']]),\n  ('boundary no-profit price', (['1.00', '5.00'],), 'invalid'),\n  ('regression: negative format',\n   (['3.13', '2.06', '5.16'],),\n   ['-0.13', '-0.13', ['3.13', '2.06', '5.15']]),\n  ('regression: negative format', (['2.0002', '2.00'],), ['0.00', '0.00', ['2.00', '2.00']]),\n  ('variant scenario 1',\n   (['9.05', '2.06', '1.87'],),\n   ['13.07', '11.56', ['10.23', '2.33', '2.11']]),\n  ('variant scenario 2', (['5.64', '2.16', '2.75'],), ['0.39', '0.39', ['5.66', '2.17', '2.76']])],\n [('control fair coin', (['2.00', '2.00'],), ['0.00', '0.00', ['2.00', '2.00']]),\n  ('control standard juice', (['1.91', '1.91'],), ['4.71', '4.50', ['2.00', '2.00']]),\n  ('boundary three-way', (['2.50', '3.20', '2.90'],), ['5.73', '5.42', ['2.64', '3.38', '3.07']]),\n  ('boundary no-profit price', (['1.00', '5.00'],), 'invalid'),\n  ('regression: negative format',\n   (['2.70', '2.85', '17.25', '5.00'],),\n   ['-2.08', '-2.12', ['2.64', '2.79', '16.89', '4.90']]),\n  ('regression: negative format', (['2.0002', '2.00'],), ['0.00', '0.00', ['2.00', '2.00']]),\n  ('variant scenario 1', (['3.09', '1.42'],), ['2.78', '2.71', ['3.18', '1.46']]),\n  ('variant scenario 2', (['4.24', '1.99', '3.04'],), ['6.73', '6.31', ['4.53', '2.12', '3.24']])],\n [('control fair coin', (['2.00', '2.00'],), ['0.00', '0.00', ['2.00', '2.00']]),\n  ('control standard juice', (['1.91', '1.91'],), ['4.71', '4.50', ['2.00', '2.00']]),\n  ('boundary three-way', (['2.50', '3.20', '2.90'],), ['5.73', '5.42', ['2.64', '3.38', '3.07']]),\n  ('boundary no-profit price', (['1.00', '5.00'],), 'invalid'),\n  ('regression: negative format',\n   (['8.77', '3.61', '3.44', '3.17'],),\n   ['-0.28', '-0.28', ['8.75', '3.60', '3.43', '3.16']]),\n  ('regression: negative format', (['2.0001', '2.0001'],), ['0.00', '0.00', ['2.00', '2.00']]),\n  ('variant scenario 1', (['2.70', '2.41', '2.77'],), ['14.63', '12.76', ['3.10', '2.76', '3.18']]),\n  ('variant scenario 2', (['4.44', '1.08'],), ['15.12', '13.13', ['5.11', '1.24']])],\n [('control fair coin', (['2.00', '2.00'],), ['0.00', '0.00', ['2.00', '2.00']]),\n  ('control standard juice', (['1.91', '1.91'],), ['4.71', '4.50', ['2.00', '2.00']]),\n  ('boundary three-way', (['2.50', '3.20', '2.90'],), ['5.73', '5.42', ['2.64', '3.38', '3.07']]),\n  ('boundary no-profit price', (['1.00', '5.00'],), 'invalid'),\n  ('regression: negative format',\n   (['14.48', '2.85', '3.84', '3.27'],),\n   ['-1.38', '-1.40', ['14.28', '2.81', '3.79', '3.22']]),\n  ('regression: negative format', (['2.0002', '2.00'],), ['0.00', '0.00', ['2.00', '2.00']]),\n  ('variant scenario 1',\n   (['4.40', '5.01', '2.99', '2.89'],),\n   ['10.73', '9.69', ['4.87', '5.55', '3.31', '3.20']]),\n  ('variant scenario 2', (['2.01', '1.74'],), ['7.22', '6.74', ['2.16', '1.87']])],\n [('control fair coin', (['2.00', '2.00'],), ['0.00', '0.00', ['2.00', '2.00']]),\n  ('control standard juice', (['1.91', '1.91'],), ['4.71', '4.50', ['2.00', '2.00']]),\n  ('boundary three-way', (['2.50', '3.20', '2.90'],), ['5.73', '5.42', ['2.64', '3.38', '3.07']]),\n  ('boundary no-profit price', (['1.00', '5.00'],), 'invalid'),\n  ('regression: negative format',\n   (['2.26', '3.08', '4.63'],),\n   ['-1.69', '-1.72', ['2.22', '3.03', '4.55']]),\n  ('regression: negative format',\n   (['3.15', '2.98', '3.25', '25.47'],),\n   ['0.00', '0.00', ['3.15', '2.98', '3.25', '25.47']]),\n  ('variant scenario 1', (['0.90', '3.50', '2.48'],), 'invalid'),\n  ('variant scenario 2',\n   (['7.05', '4.46', '2.67', '3.12'],),\n   ['6.11', '5.76', ['7.48', '4.73', '2.83', '3.31']])]]\nfor label, args, expected in cases[N - 1]:\n    check(label, run(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":"d00b64325f468fcb26e96add76d474c5b4d62ef2b45be805887d99abc0de8e0a","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nfrom fractions import Fraction\nimport math\nN = 1\nobservations = []\ndef solve(prices):\n    def fmt(x):\n        c = math.floor(x * 100 + Fraction(1, 2))\n        sign = '-' if c < 0 else ''\n        c = abs(c)\n        return sign + '%d.%02d' % (c // 100, c % 100)\n    ds = [Fraction(p) for p in prices]\n    if any(d <= 1 for d in ds):\n        return 'invalid'\n    book = sum(1 / d for d in ds)\n    over = (book - 1) * 100\n    margin = (1 - 1 / book) * 100\n    fair = [fmt(d * book) for d in ds]\n    return [fmt(over), fmt(margin), fair]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ndef run(args):\n    try:\n        return solve(*args)\n    except Exception as exc:\n        return 'raised ' + type(exc).__name__\ncases = [[('control fair coin', (['2.00', '2.00'],), ['0.00', '0.00', ['2.00', '2.00']]),\n  ('control standard juice', (['1.91', '1.91'],), ['4.71', '4.50', ['2.00', '2.00']]),\n  ('boundary three-way', (['2.50', '3.20', '2.90'],), ['5.73', '5.42', ['2.64', '3.38', '3.07']]),\n  ('boundary no-profit price', (['1.00', '5.00'],), 'invalid'),\n  ('regression: negative format',\n   (['3.13', '2.06', '5.16'],),\n   ['-0.13', '-0.13', ['3.13', '2.06', '5.15']]),\n  ('regression: negative format', (['2.0002', '2.00'],), ['0.00', '0.00', ['2.00', '2.00']]),\n  ('variant scenario 1',\n   (['9.05', '2.06', '1.87'],),\n   ['13.07', '11.56', ['10.23', '2.33', '2.11']]),\n  ('variant scenario 2', (['5.64', '2.16', '2.75'],), ['0.39', '0.39', ['5.66', '2.17', '2.76']])],\n [('control fair coin', (['2.00', '2.00'],), ['0.00', '0.00', ['2.00', '2.00']]),\n  ('control standard juice', (['1.91', '1.91'],), ['4.71', '4.50', ['2.00', '2.00']]),\n  ('boundary three-way', (['2.50', '3.20', '2.90'],), ['5.73', '5.42', ['2.64', '3.38', '3.07']]),\n  ('boundary no-profit price', (['1.00', '5.00'],), 'invalid'),\n  ('regression: negative format',\n   (['2.70', '2.85', '17.25', '5.00'],),\n   ['-2.08', '-2.12', ['2.64', '2.79', '16.89', '4.90']]),\n  ('regression: negative format', (['2.0002', '2.00'],), ['0.00', '0.00', ['2.00', '2.00']]),\n  ('variant scenario 1', (['3.09', '1.42'],), ['2.78', '2.71', ['3.18', '1.46']]),\n  ('variant scenario 2', (['4.24', '1.99', '3.04'],), ['6.73', '6.31', ['4.53', '2.12', '3.24']])],\n [('control fair coin', (['2.00', '2.00'],), ['0.00', '0.00', ['2.00', '2.00']]),\n  ('control standard juice', (['1.91', '1.91'],), ['4.71', '4.50', ['2.00', '2.00']]),\n  ('boundary three-way', (['2.50', '3.20', '2.90'],), ['5.73', '5.42', ['2.64', '3.38', '3.07']]),\n  ('boundary no-profit price', (['1.00', '5.00'],), 'invalid'),\n  ('regression: negative format',\n   (['8.77', '3.61', '3.44', '3.17'],),\n   ['-0.28', '-0.28', ['8.75', '3.60', '3.43', '3.16']]),\n  ('regression: negative format', (['2.0001', '2.0001'],), ['0.00', '0.00', ['2.00', '2.00']]),\n  ('variant scenario 1', (['2.70', '2.41', '2.77'],), ['14.63', '12.76', ['3.10', '2.76', '3.18']]),\n  ('variant scenario 2', (['4.44', '1.08'],), ['15.12', '13.13', ['5.11', '1.24']])],\n [('control fair coin', (['2.00', '2.00'],), ['0.00', '0.00', ['2.00', '2.00']]),\n  ('control standard juice', (['1.91', '1.91'],), ['4.71', '4.50', ['2.00', '2.00']]),\n  ('boundary three-way', (['2.50', '3.20', '2.90'],), ['5.73', '5.42', ['2.64', '3.38', '3.07']]),\n  ('boundary no-profit price', (['1.00', '5.00'],), 'invalid'),\n  ('regression: negative format',\n   (['14.48', '2.85', '3.84', '3.27'],),\n   ['-1.38', '-1.40', ['14.28', '2.81', '3.79', '3.22']]),\n  ('regression: negative format', (['2.0002', '2.00'],), ['0.00', '0.00', ['2.00', '2.00']]),\n  ('variant scenario 1',\n   (['4.40', '5.01', '2.99', '2.89'],),\n   ['10.73', '9.69', ['4.87', '5.55', '3.31', '3.20']]),\n  ('variant scenario 2', (['2.01', '1.74'],), ['7.22', '6.74', ['2.16', '1.87']])],\n [('control fair coin', (['2.00', '2.00'],), ['0.00', '0.00', ['2.00', '2.00']]),\n  ('control standard juice', (['1.91', '1.91'],), ['4.71', '4.50', ['2.00', '2.00']]),\n  ('boundary three-way', (['2.50', '3.20', '2.90'],), ['5.73', '5.42', ['2.64', '3.38', '3.07']]),\n  ('boundary no-profit price', (['1.00', '5.00'],), 'invalid'),\n  ('regression: negative format',\n   (['2.26', '3.08', '4.63'],),\n   ['-1.69', '-1.72', ['2.22', '3.03', '4.55']]),\n  ('regression: negative format',\n   (['3.15', '2.98', '3.25', '25.47'],),\n   ['0.00', '0.00', ['3.15', '2.98', '3.25', '25.47']]),\n  ('variant scenario 1', (['0.90', '3.50', '2.48'],), 'invalid'),\n  ('variant scenario 2',\n   (['7.05', '4.46', '2.67', '3.12'],),\n   ['6.11', '5.76', ['7.48', '4.73', '2.83', '3.31']])]]\nfor label, args, expected in cases[N - 1]:\n    check(label, run(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":"Stipulated, bounded toy contract stated in the contract field; not a claim of conformance with any operator, exchange or regulator rule set. 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-odds-conversion-book-overround-fair-odds-negative-format","generated_at":"2026-09-29T14:50:30.729151+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Trading tools report overround and margin separately and derive no-vig fair prices.","repair":"Split the absolute cent count and prefix the sign.","root_cause":"The helper splits a negative cent count with // and %, which floor toward negative infinity.","sha256":"734b2c8c78c4e9ee461652bd8ea079dfe7c7059ed198e5a31670089ae34aff2c","title":"Negative overround formatted with floor-division digits · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":41.371,"exit_code":1,"observations":[{"actual":["0.00","0.00",["2.00","2.00"]],"check":"control fair coin","expected":["0.00","0.00",["2.00","2.00"]],"passed":true},{"actual":["4.71","4.50",["2.00","2.00"]],"check":"control standard juice","expected":["4.71","4.50",["2.00","2.00"]],"passed":true},{"actual":["5.73","5.42",["2.64","3.38","3.07"]],"check":"boundary three-way","expected":["5.73","5.42",["2.64","3.38","3.07"]],"passed":true},{"actual":"invalid","check":"boundary no-profit price","expected":"invalid","passed":true},{"actual":["-0.13","-0.13",["3.13","2.06","5.15"]],"check":"regression: negative format","expected":["-0.13","-0.13",["3.13","2.06","5.15"]],"passed":true},{"actual":["-0.00","-0.00",["2.00","2.00"]],"check":"regression: negative format","expected":["0.00","0.00",["2.00","2.00"]],"passed":false},{"actual":["13.07","11.56",["10.23","2.33","2.11"]],"check":"variant scenario 1","expected":["13.07","11.56",["10.23","2.33","2.11"]],"passed":true},{"actual":["0.39","0.39",["5.66","2.17","2.76"]],"check":"variant scenario 2","expected":["0.39","0.39",["5.66","2.17","2.76"]],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"control fair coin\", \"actual\": [\"0.00\", \"0.00\", [\"2.00\", \"2.00\"]], \"expected\": [\"0.00\", \"0.00\", [\"2.00\", \"2.00\"]], \"passed\": true}, {\"check\": \"control standard juice\", \"actual\": [\"4.71\", \"4.50\", [\"2.00\", \"2.00\"]], \"expected\": [\"4.71\", \"4.50\", [\"2.00\", \"2.00\"]], \"passed\": true}, {\"check\": \"boundary three-way\", \"actual\": [\"5.73\", \"5.42\", [\"2.64\", \"3.38\", \"3.07\"]], \"expected\": [\"5.73\", \"5.42\", [\"2.64\", \"3.38\", \"3.07\"]], \"passed\": true}, {\"check\": \"boundary no-profit price\", \"actual\": \"invalid\", \"expected\": \"invalid\", \"passed\": true}, {\"check\": \"regression: negative format\", \"actual\": [\"-0.13\", \"-0.13\", [\"3.13\", \"2.06\", \"5.15\"]], \"expected\": [\"-0.13\", \"-0.13\", [\"3.13\", \"2.06\", \"5.15\"]], \"passed\": true}, {\"check\": \"regression: negative format\", \"actual\": [\"-0.00\", \"-0.00\", [\"2.00\", \"2.00\"]], \"expected\": [\"0.00\", \"0.00\", [\"2.00\", \"2.00\"]], \"passed\": false}, {\"check\": \"variant scenario 1\", \"actual\": [\"13.07\", \"11.56\", [\"10.23\", \"2.33\", \"2.11\"]], \"expected\": [\"13.07\", \"11.56\", [\"10.23\", \"2.33\", \"2.11\"]], \"passed\": true}, {\"check\": \"variant scenario 2\", \"actual\": [\"0.39\", \"0.39\", [\"5.66\", \"2.17\", \"2.76\"]], \"expected\": [\"0.39\", \"0.39\", [\"5.66\", \"2.17\", \"2.76\"]], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":44.299,"exit_code":1,"observations":[{"actual":["0.00","0.00",["2.00","2.00"]],"check":"control fair coin","expected":["0.00","0.00",["2.00","2.00"]],"passed":true},{"actual":["4.71","4.50",["2.00","2.00"]],"check":"control standard juice","expected":["4.71","4.50",["2.00","2.00"]],"passed":true},{"actual":["5.73","5.42",["2.64","3.38","3.07"]],"check":"boundary three-way","expected":["5.73","5.42",["2.64","3.38","3.07"]],"passed":true},{"actual":"invalid","check":"boundary no-profit price","expected":"invalid","passed":true},{"actual":["-1.87","-1.87",["3.13","2.06","5.15"]],"check":"regression: negative format","expected":["-0.13","-0.13",["3.13","2.06","5.15"]],"passed":false},{"actual":["0.00","0.00",["2.00","2.00"]],"check":"regression: negative format","expected":["0.00","0.00",["2.00","2.00"]],"passed":true},{"actual":["13.07","11.56",["10.23","2.33","2.11"]],"check":"variant scenario 1","expected":["13.07","11.56",["10.23","2.33","2.11"]],"passed":true},{"actual":["0.39","0.39",["5.66","2.17","2.76"]],"check":"variant scenario 2","expected":["0.39","0.39",["5.66","2.17","2.76"]],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"control fair coin\", \"actual\": [\"0.00\", \"0.00\", [\"2.00\", \"2.00\"]], \"expected\": [\"0.00\", \"0.00\", [\"2.00\", \"2.00\"]], \"passed\": true}, {\"check\": \"control standard juice\", \"actual\": [\"4.71\", \"4.50\", [\"2.00\", \"2.00\"]], \"expected\": [\"4.71\", \"4.50\", [\"2.00\", \"2.00\"]], \"passed\": true}, {\"check\": \"boundary three-way\", \"actual\": [\"5.73\", \"5.42\", [\"2.64\", \"3.38\", \"3.07\"]], \"expected\": [\"5.73\", \"5.42\", [\"2.64\", \"3.38\", \"3.07\"]], \"passed\": true}, {\"check\": \"boundary no-profit price\", \"actual\": \"invalid\", \"expected\": \"invalid\", \"passed\": true}, {\"check\": \"regression: negative format\", \"actual\": [\"-1.87\", \"-1.87\", [\"3.13\", \"2.06\", \"5.15\"]], \"expected\": [\"-0.13\", \"-0.13\", [\"3.13\", \"2.06\", \"5.15\"]], \"passed\": false}, {\"check\": \"regression: negative format\", \"actual\": [\"0.00\", \"0.00\", [\"2.00\", \"2.00\"]], \"expected\": [\"0.00\", \"0.00\", [\"2.00\", \"2.00\"]], \"passed\": true}, {\"check\": \"variant scenario 1\", \"actual\": [\"13.07\", \"11.56\", [\"10.23\", \"2.33\", \"2.11\"]], \"expected\": [\"13.07\", \"11.56\", [\"10.23\", \"2.33\", \"2.11\"]], \"passed\": true}, {\"check\": \"variant scenario 2\", \"actual\": [\"0.39\", \"0.39\", [\"5.66\", \"2.17\", \"2.76\"]], \"expected\": [\"0.39\", \"0.39\", [\"5.66\", \"2.17\", \"2.76\"]], \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":42.568,"exit_code":0,"observations":[{"actual":["0.00","0.00",["2.00","2.00"]],"check":"control fair coin","expected":["0.00","0.00",["2.00","2.00"]],"passed":true},{"actual":["4.71","4.50",["2.00","2.00"]],"check":"control standard juice","expected":["4.71","4.50",["2.00","2.00"]],"passed":true},{"actual":["5.73","5.42",["2.64","3.38","3.07"]],"check":"boundary three-way","expected":["5.73","5.42",["2.64","3.38","3.07"]],"passed":true},{"actual":"invalid","check":"boundary no-profit price","expected":"invalid","passed":true},{"actual":["-0.13","-0.13",["3.13","2.06","5.15"]],"check":"regression: negative format","expected":["-0.13","-0.13",["3.13","2.06","5.15"]],"passed":true},{"actual":["0.00","0.00",["2.00","2.00"]],"check":"regression: negative format","expected":["0.00","0.00",["2.00","2.00"]],"passed":true},{"actual":["13.07","11.56",["10.23","2.33","2.11"]],"check":"variant scenario 1","expected":["13.07","11.56",["10.23","2.33","2.11"]],"passed":true},{"actual":["0.39","0.39",["5.66","2.17","2.76"]],"check":"variant scenario 2","expected":["0.39","0.39",["5.66","2.17","2.76"]],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"control fair coin\", \"actual\": [\"0.00\", \"0.00\", [\"2.00\", \"2.00\"]], \"expected\": [\"0.00\", \"0.00\", [\"2.00\", \"2.00\"]], \"passed\": true}, {\"check\": \"control standard juice\", \"actual\": [\"4.71\", \"4.50\", [\"2.00\", \"2.00\"]], \"expected\": [\"4.71\", \"4.50\", [\"2.00\", \"2.00\"]], \"passed\": true}, {\"check\": \"boundary three-way\", \"actual\": [\"5.73\", \"5.42\", [\"2.64\", \"3.38\", \"3.07\"]], \"expected\": [\"5.73\", \"5.42\", [\"2.64\", \"3.38\", \"3.07\"]], \"passed\": true}, {\"check\": \"boundary no-profit price\", \"actual\": \"invalid\", \"expected\": \"invalid\", \"passed\": true}, {\"check\": \"regression: negative format\", \"actual\": [\"-0.13\", \"-0.13\", [\"3.13\", \"2.06\", \"5.15\"]], \"expected\": [\"-0.13\", \"-0.13\", [\"3.13\", \"2.06\", \"5.15\"]], \"passed\": true}, {\"check\": \"regression: negative format\", \"actual\": [\"0.00\", \"0.00\", [\"2.00\", \"2.00\"]], \"expected\": [\"0.00\", \"0.00\", [\"2.00\", \"2.00\"]], \"passed\": true}, {\"check\": \"variant scenario 1\", \"actual\": [\"13.07\", \"11.56\", [\"10.23\", \"2.33\", \"2.11\"]], \"expected\": [\"13.07\", \"11.56\", [\"10.23\", \"2.33\", \"2.11\"]], \"passed\": true}, {\"check\": \"variant scenario 2\", \"actual\": [\"0.39\", \"0.39\", [\"5.66\", \"2.17\", \"2.76\"]], \"expected\": [\"0.39\", \"0.39\", [\"5.66\", \"2.17\", \"2.76\"]], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}