{"abstract":"An auction ends one pass after a balancing double.","category":"Card game rule engines","checks":8,"contract":"Input list of calls (bids like \"2H\"/\"3N\", \"P\", \"X\", \"XX\") starting with dealer seat 0. Each bid must outrank the previous bid (level, then C<D<H<S<N). X requires the last non-pass call to be an opponent bid; XX an opponent X. Four initial passes -> [\"passed out\", None, None]; three passes after a bid -> [\"contract\", bid+X/XX, declarer] where declarer is the first player of the declaring side to name the strain. Illegal call -> [\"illegal\", index, None]; unfinished -> [\"open\", None, None].","evaluation_group":"w2-card-game-rule-engines-bridge-auction","failed_approach":"Moving the reset into the bid branch still lets X and XX keep earlier passes.","family":"w2-card-game-rule-engines-bridge-auction-pass-count-reset-on-double","id":"FA-83621","implementations":{"attempt":{"sha256":"90169b5e311be2962fb5f7fcf73e244fdafbf1f043e438bc47dfe735f3f23588","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    calls = x\n    strains = 'CDHSN'\n    last_bid = None\n    last_bidder = None\n    state = 0\n    last_call = None\n    last_caller = None\n    passes = 0\n    first = {}\n    for i, call in enumerate(calls):\n        seat = i % 4\n        if call == 'P':\n            passes += 1\n            if last_bid is None and passes == 4:\n                return ['passed out', None, None]\n            if last_bid is not None and passes == 3:\n                side = last_bidder % 2\n                return ['contract', last_bid + ['', 'X', 'XX'][state], first[(side, last_bid[1])]]\n            continue\n        if call == 'X':\n            if last_call is None or last_call not in ('bid',) or (last_caller - seat) % 2 == 0:\n                return ['illegal', i, None]\n            state = 1\n        elif call == 'XX':\n            if last_call != 'X' or (last_caller - seat) % 2 == 0:\n                return ['illegal', i, None]\n            state = 2\n        else:\n            rank = (int(call[0]), strains.index(call[1]))\n            if last_bid is not None and rank <= (int(last_bid[0]), strains.index(last_bid[1])):\n                return ['illegal', i, None]\n            last_bid = call\n            last_bidder = seat\n            state = 0\n            first.setdefault((seat % 2, call[1]), seat)\n            passes = 0\n        last_call = 'bid' if call not in ('X', 'XX') else call\n        last_caller = seat\n    return ['open', None, None]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[[['X', '1D', 'P'], ['illegal', 0, None]], [['P', 'X', '1C', 'P', 'P', 'P', 'P', '1N', '2S', '3H'], ['illegal', 1, None]], [['1S', 'P', 'P', '2C', '2N', 'P', '2S'], ['illegal', 6, None]], [['P', '1S', 'P', 'P', 'P', '2D', 'P'], ['contract', '1S', 1]], [['P', 'P'], ['open', None, None]], [['1H'], ['open', None, None]], [['P', 'XX', 'X', 'P', 'P'], ['illegal', 1, None]], [['P', '1S', 'P', 'P', 'X', 'P', 'P', 'X', '2H', 'P', 'XX', 'P', '2S'], ['illegal', 7, None]]], [[['P', 'P', '1C', 'P', 'X', 'P', '1H', '2C', '2N'], ['illegal', 4, None]], [['1C', '1C', 'P', '1S', 'P', 'X', 'P', 'P', 'XX'], ['illegal', 1, None]], [['P', 'P', '1C', 'P'], ['open', None, None]], [['1S', 'P', 'P', '2C', 'XX', 'X'], ['illegal', 4, None]], [['XX', '1C', '1N', 'P', 'P', 'P'], ['illegal', 0, None]], [['1C', 'XX', 'P', 'X', 'P', 'P', '1D', 'X', 'P', 'P', 'P'], ['illegal', 1, None]], [['1H', '1S', 'P', '2H', 'P', 'P', '2N', 'X', 'P', '3D'], ['open', None, None]], [['1C', 'X', 'P', '1D', '1H', 'P', 'P', 'X', 'P', '2D', '2C', 'X'], ['illegal', 10, None]]], [[['P', 'P'], ['open', None, None]], [['1H', 'P', 'XX', 'X', '1D', '2D'], ['illegal', 2, None]], [['XX'], ['illegal', 0, None]], [['XX', 'P'], ['illegal', 0, None]], [['X', 'P', '1C', 'P', 'P', 'P', 'X'], ['illegal', 0, None]], [['P', 'X', 'XX', 'X', 'X', 'P', 'X', 'P'], ['illegal', 1, None]], [['P', '1S', 'P', 'P', 'X', 'P', 'P', 'X', '2H', 'P', 'XX', 'P', '2S'], ['illegal', 7, None]], [['P', '1S', 'P', 'P', 'X', 'P', 'P', 'X', '2H', 'P', 'XX', 'P', '2S'], ['illegal', 7, None]]], [[['1H', '1S', 'P', '2H', 'P', 'P', '2N', 'X', 'P', '3D'], ['open', None, None]], [['P', 'X', 'X', '1H', 'P', 'P', 'X', '2D', 'P', 'P'], ['illegal', 1, None]], [['P', 'P', 'X', 'P', 'X'], ['illegal', 2, None]], [['XX', 'P', 'P', 'P'], ['illegal', 0, None]], [['P', 'X'], ['illegal', 1, None]], [['X', '1D', 'P', '2C', 'P', 'P', 'P', 'XX', '2D', 'X', '2H', 'P', '2S'], ['illegal', 0, None]], [['P', '1D', 'P', 'P', 'XX', 'P', 'X', 'P', 'X'], ['illegal', 4, None]], [['1C', 'X', 'P', '1D', '1H', 'P', 'P', 'X', 'P', '2D', '2C', 'X'], ['illegal', 10, None]]], [[['1D', 'XX', 'P', 'P', 'XX', 'P'], ['illegal', 1, None]], [['1S', 'P', 'XX', '2D', '2S', 'P'], ['illegal', 2, None]], [['P', 'P', '1D', 'P', 'P', 'P', 'P', '1H', 'X', '1N', 'P'], ['contract', '1D', 2]], [['P', 'P', '1H', 'XX', '1S', '2C', '2H', '2D', 'P', 'P', '3C', 'XX', 'P'], ['illegal', 3, None]], [['P', '1C', 'XX', 'P', 'P', 'P', 'P', '1N', 'P'], ['illegal', 2, None]], [['P', '1D', 'X', '2C', '2S', 'P', '3D', 'P', 'P', 'P'], ['contract', '3D', 2]], [['P', '1S', 'P', 'P', 'X', 'P', 'P', 'X', '2H', 'P', 'XX', 'P', '2S'], ['illegal', 7, None]], [['P', 'P', 'P', '1S', 'X', 'P', 'P', 'P'], ['contract', '1SX', 3]]]]\nfor i, (args, expected) in enumerate(fixtures[N-1]):\n    check(\"auction case %d\" % i, 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":"cd5de56bf5d62bbdcc0df995e952a37b596d170f4749e6dd1934ecb353d9b5fc","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    calls = x\n    strains = 'CDHSN'\n    last_bid = None\n    last_bidder = None\n    state = 0\n    last_call = None\n    last_caller = None\n    passes = 0\n    first = {}\n    for i, call in enumerate(calls):\n        seat = i % 4\n        if call == 'P':\n            passes += 1\n            if last_bid is None and passes == 4:\n                return ['passed out', None, None]\n            if last_bid is not None and passes == 3:\n                side = last_bidder % 2\n                return ['contract', last_bid + ['', 'X', 'XX'][state], first[(side, last_bid[1])]]\n            continue\n        if call == 'X':\n            if last_call is None or last_call not in ('bid',) or (last_caller - seat) % 2 == 0:\n                return ['illegal', i, None]\n            state = 1\n        elif call == 'XX':\n            if last_call != 'X' or (last_caller - seat) % 2 == 0:\n                return ['illegal', i, None]\n            state = 2\n        else:\n            rank = (int(call[0]), strains.index(call[1]))\n            if last_bid is not None and rank <= (int(last_bid[0]), strains.index(last_bid[1])):\n                return ['illegal', i, None]\n            last_bid = call\n            last_bidder = seat\n            state = 0\n            first.setdefault((seat % 2, call[1]), seat)\n        last_call = 'bid' if call not in ('X', 'XX') else call\n        last_caller = seat\n    return ['open', None, None]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[[['X', '1D', 'P'], ['illegal', 0, None]], [['P', 'X', '1C', 'P', 'P', 'P', 'P', '1N', '2S', '3H'], ['illegal', 1, None]], [['1S', 'P', 'P', '2C', '2N', 'P', '2S'], ['illegal', 6, None]], [['P', '1S', 'P', 'P', 'P', '2D', 'P'], ['contract', '1S', 1]], [['P', 'P'], ['open', None, None]], [['1H'], ['open', None, None]], [['P', 'XX', 'X', 'P', 'P'], ['illegal', 1, None]], [['P', '1S', 'P', 'P', 'X', 'P', 'P', 'X', '2H', 'P', 'XX', 'P', '2S'], ['illegal', 7, None]]], [[['P', 'P', '1C', 'P', 'X', 'P', '1H', '2C', '2N'], ['illegal', 4, None]], [['1C', '1C', 'P', '1S', 'P', 'X', 'P', 'P', 'XX'], ['illegal', 1, None]], [['P', 'P', '1C', 'P'], ['open', None, None]], [['1S', 'P', 'P', '2C', 'XX', 'X'], ['illegal', 4, None]], [['XX', '1C', '1N', 'P', 'P', 'P'], ['illegal', 0, None]], [['1C', 'XX', 'P', 'X', 'P', 'P', '1D', 'X', 'P', 'P', 'P'], ['illegal', 1, None]], [['1H', '1S', 'P', '2H', 'P', 'P', '2N', 'X', 'P', '3D'], ['open', None, None]], [['1C', 'X', 'P', '1D', '1H', 'P', 'P', 'X', 'P', '2D', '2C', 'X'], ['illegal', 10, None]]], [[['P', 'P'], ['open', None, None]], [['1H', 'P', 'XX', 'X', '1D', '2D'], ['illegal', 2, None]], [['XX'], ['illegal', 0, None]], [['XX', 'P'], ['illegal', 0, None]], [['X', 'P', '1C', 'P', 'P', 'P', 'X'], ['illegal', 0, None]], [['P', 'X', 'XX', 'X', 'X', 'P', 'X', 'P'], ['illegal', 1, None]], [['P', '1S', 'P', 'P', 'X', 'P', 'P', 'X', '2H', 'P', 'XX', 'P', '2S'], ['illegal', 7, None]], [['P', '1S', 'P', 'P', 'X', 'P', 'P', 'X', '2H', 'P', 'XX', 'P', '2S'], ['illegal', 7, None]]], [[['1H', '1S', 'P', '2H', 'P', 'P', '2N', 'X', 'P', '3D'], ['open', None, None]], [['P', 'X', 'X', '1H', 'P', 'P', 'X', '2D', 'P', 'P'], ['illegal', 1, None]], [['P', 'P', 'X', 'P', 'X'], ['illegal', 2, None]], [['XX', 'P', 'P', 'P'], ['illegal', 0, None]], [['P', 'X'], ['illegal', 1, None]], [['X', '1D', 'P', '2C', 'P', 'P', 'P', 'XX', '2D', 'X', '2H', 'P', '2S'], ['illegal', 0, None]], [['P', '1D', 'P', 'P', 'XX', 'P', 'X', 'P', 'X'], ['illegal', 4, None]], [['1C', 'X', 'P', '1D', '1H', 'P', 'P', 'X', 'P', '2D', '2C', 'X'], ['illegal', 10, None]]], [[['1D', 'XX', 'P', 'P', 'XX', 'P'], ['illegal', 1, None]], [['1S', 'P', 'XX', '2D', '2S', 'P'], ['illegal', 2, None]], [['P', 'P', '1D', 'P', 'P', 'P', 'P', '1H', 'X', '1N', 'P'], ['contract', '1D', 2]], [['P', 'P', '1H', 'XX', '1S', '2C', '2H', '2D', 'P', 'P', '3C', 'XX', 'P'], ['illegal', 3, None]], [['P', '1C', 'XX', 'P', 'P', 'P', 'P', '1N', 'P'], ['illegal', 2, None]], [['P', '1D', 'X', '2C', '2S', 'P', '3D', 'P', 'P', 'P'], ['contract', '3D', 2]], [['P', '1S', 'P', 'P', 'X', 'P', 'P', 'X', '2H', 'P', 'XX', 'P', '2S'], ['illegal', 7, None]], [['P', 'P', 'P', '1S', 'X', 'P', 'P', 'P'], ['contract', '1SX', 3]]]]\nfor i, (args, expected) in enumerate(fixtures[N-1]):\n    check(\"auction case %d\" % i, 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":"602e3933763187c7123ae84600dcd295fda38e779a7377fab54873151f4e9b59","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(x):\n    calls = x\n    strains = 'CDHSN'\n    last_bid = None\n    last_bidder = None\n    state = 0\n    last_call = None\n    last_caller = None\n    passes = 0\n    first = {}\n    for i, call in enumerate(calls):\n        seat = i % 4\n        if call == 'P':\n            passes += 1\n            if last_bid is None and passes == 4:\n                return ['passed out', None, None]\n            if last_bid is not None and passes == 3:\n                side = last_bidder % 2\n                return ['contract', last_bid + ['', 'X', 'XX'][state], first[(side, last_bid[1])]]\n            continue\n        if call == 'X':\n            if last_call is None or last_call not in ('bid',) or (last_caller - seat) % 2 == 0:\n                return ['illegal', i, None]\n            state = 1\n        elif call == 'XX':\n            if last_call != 'X' or (last_caller - seat) % 2 == 0:\n                return ['illegal', i, None]\n            state = 2\n        else:\n            rank = (int(call[0]), strains.index(call[1]))\n            if last_bid is not None and rank <= (int(last_bid[0]), strains.index(last_bid[1])):\n                return ['illegal', i, None]\n            last_bid = call\n            last_bidder = seat\n            state = 0\n            first.setdefault((seat % 2, call[1]), seat)\n        passes = 0\n        last_call = 'bid' if call not in ('X', 'XX') else call\n        last_caller = seat\n    return ['open', None, None]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[[['X', '1D', 'P'], ['illegal', 0, None]], [['P', 'X', '1C', 'P', 'P', 'P', 'P', '1N', '2S', '3H'], ['illegal', 1, None]], [['1S', 'P', 'P', '2C', '2N', 'P', '2S'], ['illegal', 6, None]], [['P', '1S', 'P', 'P', 'P', '2D', 'P'], ['contract', '1S', 1]], [['P', 'P'], ['open', None, None]], [['1H'], ['open', None, None]], [['P', 'XX', 'X', 'P', 'P'], ['illegal', 1, None]], [['P', '1S', 'P', 'P', 'X', 'P', 'P', 'X', '2H', 'P', 'XX', 'P', '2S'], ['illegal', 7, None]]], [[['P', 'P', '1C', 'P', 'X', 'P', '1H', '2C', '2N'], ['illegal', 4, None]], [['1C', '1C', 'P', '1S', 'P', 'X', 'P', 'P', 'XX'], ['illegal', 1, None]], [['P', 'P', '1C', 'P'], ['open', None, None]], [['1S', 'P', 'P', '2C', 'XX', 'X'], ['illegal', 4, None]], [['XX', '1C', '1N', 'P', 'P', 'P'], ['illegal', 0, None]], [['1C', 'XX', 'P', 'X', 'P', 'P', '1D', 'X', 'P', 'P', 'P'], ['illegal', 1, None]], [['1H', '1S', 'P', '2H', 'P', 'P', '2N', 'X', 'P', '3D'], ['open', None, None]], [['1C', 'X', 'P', '1D', '1H', 'P', 'P', 'X', 'P', '2D', '2C', 'X'], ['illegal', 10, None]]], [[['P', 'P'], ['open', None, None]], [['1H', 'P', 'XX', 'X', '1D', '2D'], ['illegal', 2, None]], [['XX'], ['illegal', 0, None]], [['XX', 'P'], ['illegal', 0, None]], [['X', 'P', '1C', 'P', 'P', 'P', 'X'], ['illegal', 0, None]], [['P', 'X', 'XX', 'X', 'X', 'P', 'X', 'P'], ['illegal', 1, None]], [['P', '1S', 'P', 'P', 'X', 'P', 'P', 'X', '2H', 'P', 'XX', 'P', '2S'], ['illegal', 7, None]], [['P', '1S', 'P', 'P', 'X', 'P', 'P', 'X', '2H', 'P', 'XX', 'P', '2S'], ['illegal', 7, None]]], [[['1H', '1S', 'P', '2H', 'P', 'P', '2N', 'X', 'P', '3D'], ['open', None, None]], [['P', 'X', 'X', '1H', 'P', 'P', 'X', '2D', 'P', 'P'], ['illegal', 1, None]], [['P', 'P', 'X', 'P', 'X'], ['illegal', 2, None]], [['XX', 'P', 'P', 'P'], ['illegal', 0, None]], [['P', 'X'], ['illegal', 1, None]], [['X', '1D', 'P', '2C', 'P', 'P', 'P', 'XX', '2D', 'X', '2H', 'P', '2S'], ['illegal', 0, None]], [['P', '1D', 'P', 'P', 'XX', 'P', 'X', 'P', 'X'], ['illegal', 4, None]], [['1C', 'X', 'P', '1D', '1H', 'P', 'P', 'X', 'P', '2D', '2C', 'X'], ['illegal', 10, None]]], [[['1D', 'XX', 'P', 'P', 'XX', 'P'], ['illegal', 1, None]], [['1S', 'P', 'XX', '2D', '2S', 'P'], ['illegal', 2, None]], [['P', 'P', '1D', 'P', 'P', 'P', 'P', '1H', 'X', '1N', 'P'], ['contract', '1D', 2]], [['P', 'P', '1H', 'XX', '1S', '2C', '2H', '2D', 'P', 'P', '3C', 'XX', 'P'], ['illegal', 3, None]], [['P', '1C', 'XX', 'P', 'P', 'P', 'P', '1N', 'P'], ['illegal', 2, None]], [['P', '1D', 'X', '2C', '2S', 'P', '3D', 'P', 'P', 'P'], ['contract', '3D', 2]], [['P', '1S', 'P', 'P', 'X', 'P', 'P', 'X', '2H', 'P', 'XX', 'P', '2S'], ['illegal', 7, None]], [['P', 'P', 'P', '1S', 'X', 'P', 'P', 'P'], ['contract', '1SX', 3]]]]\nfor i, (args, expected) in enumerate(fixtures[N-1]):\n    check(\"auction case %d\" % i, 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 bounded toy rule contract stated explicitly in the contract field; cards are two-character codes (rank, suit). Not a complete implementation of any published rulebook or casino table rules. 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-card-game-rule-engines-bridge-auction-pass-count-reset-on-double","generated_at":"2026-09-29T14:50:23.290400+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Card-game engines, scoring apps and online tables apply this rule automatically on every hand.","repair":"Any non-pass call (bid, X, XX) resets the pass count.","root_cause":"The pass counter is reset only by bids.","sha256":"aeb554da87166b0ed01d28c554940b840f03b74bb4ea85855441f776179c0888","title":"Passes before a double still count toward the end of the auction · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":59.535,"exit_code":1,"observations":[{"actual":["illegal",0,null],"check":"auction case 0","expected":["illegal",0,null],"passed":true},{"actual":["illegal",1,null],"check":"auction case 1","expected":["illegal",1,null],"passed":true},{"actual":["illegal",6,null],"check":"auction case 2","expected":["illegal",6,null],"passed":true},{"actual":["contract","1S",1],"check":"auction case 3","expected":["contract","1S",1],"passed":true},{"actual":["open",null,null],"check":"auction case 4","expected":["open",null,null],"passed":true},{"actual":["open",null,null],"check":"auction case 5","expected":["open",null,null],"passed":true},{"actual":["illegal",1,null],"check":"auction case 6","expected":["illegal",1,null],"passed":true},{"actual":["contract","1SX",1],"check":"auction case 7","expected":["illegal",7,null],"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"auction case 0\", \"actual\": [\"illegal\", 0, null], \"expected\": [\"illegal\", 0, null], \"passed\": true}, {\"check\": \"auction case 1\", \"actual\": [\"illegal\", 1, null], \"expected\": [\"illegal\", 1, null], \"passed\": true}, {\"check\": \"auction case 2\", \"actual\": [\"illegal\", 6, null], \"expected\": [\"illegal\", 6, null], \"passed\": true}, {\"check\": \"auction case 3\", \"actual\": [\"contract\", \"1S\", 1], \"expected\": [\"contract\", \"1S\", 1], \"passed\": true}, {\"check\": \"auction case 4\", \"actual\": [\"open\", null, null], \"expected\": [\"open\", null, null], \"passed\": true}, {\"check\": \"auction case 5\", \"actual\": [\"open\", null, null], \"expected\": [\"open\", null, null], \"passed\": true}, {\"check\": \"auction case 6\", \"actual\": [\"illegal\", 1, null], \"expected\": [\"illegal\", 1, null], \"passed\": true}, {\"check\": \"auction case 7\", \"actual\": [\"contract\", \"1SX\", 1], \"expected\": [\"illegal\", 7, null], \"passed\": false}], \"passed\": false}\n"},"broken":{"elapsed_ms":44.089,"exit_code":1,"observations":[{"actual":["illegal",0,null],"check":"auction case 0","expected":["illegal",0,null],"passed":true},{"actual":["illegal",1,null],"check":"auction case 1","expected":["illegal",1,null],"passed":true},{"actual":["contract","2N",0],"check":"auction case 2","expected":["illegal",6,null],"passed":false},{"actual":["contract","1S",1],"check":"auction case 3","expected":["contract","1S",1],"passed":true},{"actual":["open",null,null],"check":"auction case 4","expected":["open",null,null],"passed":true},{"actual":["open",null,null],"check":"auction case 5","expected":["open",null,null],"passed":true},{"actual":["illegal",1,null],"check":"auction case 6","expected":["illegal",1,null],"passed":true},{"actual":["contract","1S",1],"check":"auction case 7","expected":["illegal",7,null],"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"auction case 0\", \"actual\": [\"illegal\", 0, null], \"expected\": [\"illegal\", 0, null], \"passed\": true}, {\"check\": \"auction case 1\", \"actual\": [\"illegal\", 1, null], \"expected\": [\"illegal\", 1, null], \"passed\": true}, {\"check\": \"auction case 2\", \"actual\": [\"contract\", \"2N\", 0], \"expected\": [\"illegal\", 6, null], \"passed\": false}, {\"check\": \"auction case 3\", \"actual\": [\"contract\", \"1S\", 1], \"expected\": [\"contract\", \"1S\", 1], \"passed\": true}, {\"check\": \"auction case 4\", \"actual\": [\"open\", null, null], \"expected\": [\"open\", null, null], \"passed\": true}, {\"check\": \"auction case 5\", \"actual\": [\"open\", null, null], \"expected\": [\"open\", null, null], \"passed\": true}, {\"check\": \"auction case 6\", \"actual\": [\"illegal\", 1, null], \"expected\": [\"illegal\", 1, null], \"passed\": true}, {\"check\": \"auction case 7\", \"actual\": [\"contract\", \"1S\", 1], \"expected\": [\"illegal\", 7, null], \"passed\": false}], \"passed\": false}\n"},"fixed":{"elapsed_ms":64.839,"exit_code":0,"observations":[{"actual":["illegal",0,null],"check":"auction case 0","expected":["illegal",0,null],"passed":true},{"actual":["illegal",1,null],"check":"auction case 1","expected":["illegal",1,null],"passed":true},{"actual":["illegal",6,null],"check":"auction case 2","expected":["illegal",6,null],"passed":true},{"actual":["contract","1S",1],"check":"auction case 3","expected":["contract","1S",1],"passed":true},{"actual":["open",null,null],"check":"auction case 4","expected":["open",null,null],"passed":true},{"actual":["open",null,null],"check":"auction case 5","expected":["open",null,null],"passed":true},{"actual":["illegal",1,null],"check":"auction case 6","expected":["illegal",1,null],"passed":true},{"actual":["illegal",7,null],"check":"auction case 7","expected":["illegal",7,null],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"auction case 0\", \"actual\": [\"illegal\", 0, null], \"expected\": [\"illegal\", 0, null], \"passed\": true}, {\"check\": \"auction case 1\", \"actual\": [\"illegal\", 1, null], \"expected\": [\"illegal\", 1, null], \"passed\": true}, {\"check\": \"auction case 2\", \"actual\": [\"illegal\", 6, null], \"expected\": [\"illegal\", 6, null], \"passed\": true}, {\"check\": \"auction case 3\", \"actual\": [\"contract\", \"1S\", 1], \"expected\": [\"contract\", \"1S\", 1], \"passed\": true}, {\"check\": \"auction case 4\", \"actual\": [\"open\", null, null], \"expected\": [\"open\", null, null], \"passed\": true}, {\"check\": \"auction case 5\", \"actual\": [\"open\", null, null], \"expected\": [\"open\", null, null], \"passed\": true}, {\"check\": \"auction case 6\", \"actual\": [\"illegal\", 1, null], \"expected\": [\"illegal\", 1, null], \"passed\": true}, {\"check\": \"auction case 7\", \"actual\": [\"illegal\", 7, null], \"expected\": [\"illegal\", 7, null], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}