{
  "key": "f-rival-size-cap",
  "mech": "rival size cap: cap each order to k times rival displayed size at the same tick or nearest rival level; k in [1, 2, 4]",
  "approach": "Infeasible under the pinned observable API. StepState exposes rival best prices, not sizes or depth; hidden partial fills can preserve every callback field. No hidden state or sampled rival notional was supplied to the strategy. Code is a disabled diagnostic wrapper of opaque N, not an active cap. Checks and off-equivalence passed; tuning/holdout were not run. No proxy, gain estimate, or promotion is claimed.",
  "tried": [
    {
      "test": "blind_incumbent_integrity",
      "source": "https://api.imd.fun/artifacts/db22aff7167a4798251ed3d20432509f30e511e4958799aba5b17b41bb39b4b6",
      "incumbent_sha256": "bf0d179f3e47d28819f6fa7e0d25548c2ced43374c216d36460b00a26a26ffae",
      "passed": true,
      "method": "Download JSON by script; hash UTF-8 code; compile opaquely. Only the required class declaration replacement was performed for assembly. No incumbent source, alternate strategy, leaderboard, or previous result was viewed or searched."
    },
    {
      "test": "public_api_observability",
      "simulator_commit": "b244530ee2a6247b5f930830eeca9dd950da0e7e",
      "sources": [
        "https://raw.githubusercontent.com/danrobinson/prediction-market-challenge/b244530ee2a6247b5f930830eeca9dd950da0e7e/orderbook_pm_challenge/types.py",
        "https://raw.githubusercontent.com/danrobinson/prediction-market-challenge/b244530ee2a6247b5f930830eeca9dd950da0e7e/orderbook_pm_challenge/market.py",
        "https://raw.githubusercontent.com/danrobinson/prediction-market-challenge/b244530ee2a6247b5f930830eeca9dd950da0e7e/orderbook_pm_challenge/config.py",
        "https://raw.githubusercontent.com/danrobinson/prediction-market-challenge/b244530ee2a6247b5f930830eeca9dd950da0e7e/orderbook_pm_challenge/runner.py",
        "https://raw.githubusercontent.com/danrobinson/prediction-market-challenge/b244530ee2a6247b5f930830eeca9dd950da0e7e/docs/orderbook_prediction_market_challenge.md"
      ],
      "result": "No same-tick or nearest-level rival quantity is public. The fill quantities and own_orders belong to the participant. Prices do not identify sampled quote_notional, and initial notional would not reveal subsequent remaining size.",
      "evidence": {
        "step_state_fields": [
          "step",
          "steps_remaining",
          "yes_inventory",
          "no_inventory",
          "cash",
          "reserved_cash",
          "free_cash",
          "competitor_best_bid_ticks",
          "competitor_best_ask_ticks",
          "buy_filled_quantity",
          "sell_filled_quantity",
          "own_orders"
        ],
        "same_initial_step_state_with_different_notional": true,
        "initial_state_cases": [
          {
            "quote_notional": 24.0,
            "ask_tick": 52,
            "ask_quantity_from_documented_formula": 46.15
          },
          {
            "quote_notional": 72.0,
            "ask_tick": 52,
            "ask_quantity_from_documented_formula": 138.46
          }
        ],
        "same_step_state_after_one_share_rival_partial_fill": true,
        "simulation_seed_used": null,
        "scope": "Synthetic simulator API checks only; neither configuration nor market internals is supplied to either strategy."
      },
      "witness_method": "Using unmodified PredictionMarket, initialize at probability 0.5 and spread 2 with quote notionals 24 and 72. build_step_state(step=0, steps_remaining=2000, buy_filled_quantity=0, sell_filled_quantity=0) is equal in both markets; the source quantity formula gives different ask sizes at tick 52. Separately, a 0.52-notional retail buy at tick 52 leaves the callback unchanged and returns no participant fills. These are deterministic unit checks, not seeded performance simulations; no test configuration is used by a strategy."
    },
    {
      "test": "incumbent_check_values",
      "seeds": [
        310000,
        310001,
        310002,
        310003
      ],
      "expected": [
        17.116002,
        20.017111,
        2.390311,
        241.484752
      ],
      "observed": [
        17.1160017503,
        20.0171113118,
        2.3903113616,
        241.4847522404
      ],
      "absolute_tolerance": 5e-07,
      "passed": true,
      "source": "Local executions of the verified incumbent against the pinned simulator; expected values are supplied by the brief."
    },
    {
      "test": "off_equals_n",
      "seeds": {
        "start": 310000,
        "end": 310009,
        "inclusive": true
      },
      "passed": true,
      "simulations": 20,
      "steps_compared": 20000,
      "simulation_failures": 0,
      "method": "For each seed, config=sample_config(ChallengeConfig(), ParameterVariance(), seed=seed); SimulationEngine(config, factory, seed=seed).run() exactly once for N and once for the disabled overlay, serially, with 2000 steps. Four check-seed N runs were reused rather than repeated. Compare SHA-256 of canonical JSON action type plus dataclass fields at each step, and exact total/retail/arbitrage edges. action_sequence_sha256 hashes the concatenation of the 2000 hexadecimal per-step hashes. No workers or sandbox; one 10-seed command chunk, each completed run flushed as one JSONL row.",
      "source": "Local regression runs; the compact per-seed evidence is included here because scratch is not submitted.",
      "rows": [
        {
          "seed": 310000,
          "spread": 3,
          "steps_compared": 2000,
          "equal_step_action_digests": true,
          "action_sequence_sha256": "126f43a6f3e55a338989b6ac5f46b6264f6d8377b6a17b7e8bad4f4b31c7c1c6",
          "incumbent_total_edge": 17.1160017503,
          "disabled_overlay_total_edge": 17.1160017503,
          "incumbent_retail_edge": 25.3456304072,
          "disabled_overlay_retail_edge": 25.3456304072,
          "incumbent_arb_edge": -8.229628657,
          "disabled_overlay_arb_edge": -8.229628657,
          "incumbent_seconds": 0.7821539731230587,
          "disabled_overlay_seconds": 0.85613644705154
        },
        {
          "seed": 310001,
          "spread": 2,
          "steps_compared": 2000,
          "equal_step_action_digests": true,
          "action_sequence_sha256": "5dbe8e41dcda1c243f0bab1d4d6a828c892f5d742d633bfbba158f78d2c0dfdc",
          "incumbent_total_edge": 20.0171113118,
          "disabled_overlay_total_edge": 20.0171113118,
          "incumbent_retail_edge": 31.7747074489,
          "disabled_overlay_retail_edge": 31.7747074489,
          "incumbent_arb_edge": -11.7575961376,
          "disabled_overlay_arb_edge": -11.7575961376,
          "incumbent_seconds": 0.7155936229974031,
          "disabled_overlay_seconds": 0.7409422530326992
        },
        {
          "seed": 310002,
          "spread": 1,
          "steps_compared": 2000,
          "equal_step_action_digests": true,
          "action_sequence_sha256": "e066864d3475775c2463937867d6070ca47c76e5fb10c0de270e727b2e6b4d33",
          "incumbent_total_edge": 2.3903113616,
          "disabled_overlay_total_edge": 2.3903113616,
          "incumbent_retail_edge": 3.6239112612,
          "disabled_overlay_retail_edge": 3.6239112612,
          "incumbent_arb_edge": -1.233599899,
          "disabled_overlay_arb_edge": -1.233599899,
          "incumbent_seconds": 0.6588657430838794,
          "disabled_overlay_seconds": 0.6781280171126127
        },
        {
          "seed": 310003,
          "spread": 3,
          "steps_compared": 2000,
          "equal_step_action_digests": true,
          "action_sequence_sha256": "19f8d660854063b746c9f9b04d664a7a8e4a99cfe2688f2efa1ac94bd19859d1",
          "incumbent_total_edge": 241.4847522404,
          "disabled_overlay_total_edge": 241.4847522404,
          "incumbent_retail_edge": 281.0839749728,
          "disabled_overlay_retail_edge": 281.0839749728,
          "incumbent_arb_edge": -39.5992227324,
          "disabled_overlay_arb_edge": -39.5992227324,
          "incumbent_seconds": 0.7339765301439911,
          "disabled_overlay_seconds": 0.7477550241164863
        },
        {
          "seed": 310004,
          "spread": 2,
          "steps_compared": 2000,
          "equal_step_action_digests": true,
          "action_sequence_sha256": "46dab2716278b5e78e1b787845fca664fe5bcd575dff7dda3616e81861d4c043",
          "incumbent_total_edge": 8.5209352976,
          "disabled_overlay_total_edge": 8.5209352976,
          "incumbent_retail_edge": 15.1542302787,
          "disabled_overlay_retail_edge": 15.1542302787,
          "incumbent_arb_edge": -6.6332949815,
          "disabled_overlay_arb_edge": -6.6332949815,
          "incumbent_seconds": 0.7455880118068308,
          "disabled_overlay_seconds": 0.7360522279050201
        },
        {
          "seed": 310005,
          "spread": 1,
          "steps_compared": 2000,
          "equal_step_action_digests": true,
          "action_sequence_sha256": "624bfb32ffc3c0cfb8fd64693da1cee5853dc4134b975b6d42388cc29a51492a",
          "incumbent_total_edge": 0.037767639,
          "disabled_overlay_total_edge": 0.037767639,
          "incumbent_retail_edge": 0.2274516217,
          "disabled_overlay_retail_edge": 0.2274516217,
          "incumbent_arb_edge": -0.1896839827,
          "disabled_overlay_arb_edge": -0.1896839827,
          "incumbent_seconds": 0.573353132000193,
          "disabled_overlay_seconds": 0.5476748140063137
        },
        {
          "seed": 310006,
          "spread": 2,
          "steps_compared": 2000,
          "equal_step_action_digests": true,
          "action_sequence_sha256": "a0b661f1dd25ef888a4cea93a42c63b4acf8acf079cc1dad78a69880e03c9f52",
          "incumbent_total_edge": 4.5896171672,
          "disabled_overlay_total_edge": 4.5896171672,
          "incumbent_retail_edge": 11.8765905082,
          "disabled_overlay_retail_edge": 11.8765905082,
          "incumbent_arb_edge": -7.2869733408,
          "disabled_overlay_arb_edge": -7.2869733408,
          "incumbent_seconds": 0.7313138311728835,
          "disabled_overlay_seconds": 0.7091104001738131
        },
        {
          "seed": 310007,
          "spread": 3,
          "steps_compared": 2000,
          "equal_step_action_digests": true,
          "action_sequence_sha256": "7de10a2e6de526b371ca2538e3e61255f632db6b9d7833785ddaf4271f1cf5e3",
          "incumbent_total_edge": 333.6631744596,
          "disabled_overlay_total_edge": 333.6631744596,
          "incumbent_retail_edge": 360.0769343519,
          "disabled_overlay_retail_edge": 360.0769343519,
          "incumbent_arb_edge": -26.413759892,
          "disabled_overlay_arb_edge": -26.413759892,
          "incumbent_seconds": 0.7366652961354703,
          "disabled_overlay_seconds": 0.754876455059275
        },
        {
          "seed": 310008,
          "spread": 3,
          "steps_compared": 2000,
          "equal_step_action_digests": true,
          "action_sequence_sha256": "3d0bd1d41bbaca370fd8972916ca862ed7402517482bce9153c1345761a4b6a1",
          "incumbent_total_edge": 31.143690212,
          "disabled_overlay_total_edge": 31.143690212,
          "incumbent_retail_edge": 38.6187444608,
          "disabled_overlay_retail_edge": 38.6187444608,
          "incumbent_arb_edge": -7.4750542489,
          "disabled_overlay_arb_edge": -7.4750542489,
          "incumbent_seconds": 0.7725453299935907,
          "disabled_overlay_seconds": 0.7610752969048917
        },
        {
          "seed": 310009,
          "spread": 4,
          "steps_compared": 2000,
          "equal_step_action_digests": true,
          "action_sequence_sha256": "faa30e25a10144dfb5606470858c80b0ac228c3113c0d3fbf2818a962ba982bf",
          "incumbent_total_edge": 32.1980250109,
          "disabled_overlay_total_edge": 32.1980250109,
          "incumbent_retail_edge": 35.5087434648,
          "disabled_overlay_retail_edge": 35.5087434648,
          "incumbent_arb_edge": -3.3107184551,
          "disabled_overlay_arb_edge": -3.3107184551,
          "incumbent_seconds": 0.8684952859766781,
          "disabled_overlay_seconds": 0.9663766659796238
        }
      ]
    },
    {
      "test": "diagnostic_guard",
      "passed": true,
      "method": "An isolated unit stub verified disabled mode returns the identical actions object from super().on_step(state), while enabled mode raises the stated RuntimeError. No extra simulation or seed was used.",
      "source": "Local unit check of the supplied overlay code."
    },
    {
      "test": "scoreboard",
      "current_best_code_sha256": "bf0d179f3e47d28819f6fa7e0d25548c2ced43374c216d36460b00a26a26ffae",
      "candidates": [
        {
          "k": 1,
          "status": "not_implementable_from_allowed_observations",
          "paired_gain": null,
          "se": null
        },
        {
          "k": 2,
          "status": "not_implementable_from_allowed_observations",
          "paired_gain": null,
          "se": null
        },
        {
          "k": 4,
          "status": "not_implementable_from_allowed_observations",
          "paired_gain": null,
          "se": null
        }
      ],
      "promotion": false,
      "note": "Disabled-overlay identity is a regression check only, not evidence about any active rival-size cap. N remains the incumbent."
    }
  ],
  "next": "Reject this exact mechanism at the pinned API and leave N unchanged. Do not rank or promote the disabled diagnostic wrapper. An estimated-size cap would be a different mechanism; a true displayed-size cap requires an API exposing rival remaining quantities. No requester decision is being solicited.",
  "spreads_acted": [],
  "off_equals_n": true,
  "code": "# Disabled diagnostic only: the pinned StepState exposes rival prices, not sizes.\n# This is not an implementation or a performance screen of the requested cap.\nclass Strategy(_N):\n    rival_size_cap_enabled = False\n\n    def on_step(self, state):\n        actions = super().on_step(state)\n        if self.rival_size_cap_enabled:\n            raise RuntimeError(\n                \"Exact rival-size cap unavailable: StepState has no rival sizes.\"\n            )\n        return actions\n",
  "code_sha256": "a5a4dd37a4e05335a51e150d2b92be0649da438b6bb7a5dec84846dc39614882",
  "assembled_sha256": "ff9d5b57b4ab3645e7f79743ce2ee03c8cc6b0aa54613ada3f3b5915728e69bf",
  "tuning": {
    "seeds": {
      "start": 320000,
      "end": 320199,
      "inclusive": true
    },
    "selected": null,
    "variants": [
      {
        "k": 1,
        "n": 0,
        "score": null,
        "status": "not_run_no_public_rival_size",
        "paired": {
          "n": 0,
          "sum_d": null,
          "sum_d2": null,
          "mean_diff": null,
          "se": null,
          "incumbent_mean": null,
          "candidate_mean": null,
          "retail_diff": null,
          "arb_diff": null
        }
      },
      {
        "k": 2,
        "n": 0,
        "score": null,
        "status": "not_run_no_public_rival_size",
        "paired": {
          "n": 0,
          "sum_d": null,
          "sum_d2": null,
          "mean_diff": null,
          "se": null,
          "incumbent_mean": null,
          "candidate_mean": null,
          "retail_diff": null,
          "arb_diff": null
        }
      },
      {
        "k": 4,
        "n": 0,
        "score": null,
        "status": "not_run_no_public_rival_size",
        "paired": {
          "n": 0,
          "sum_d": null,
          "sum_d2": null,
          "mean_diff": null,
          "se": null,
          "incumbent_mean": null,
          "candidate_mean": null,
          "retail_diff": null,
          "arb_diff": null
        }
      }
    ]
  },
  "paired": {
    "seeds": {
      "start": 430000,
      "end": 430499,
      "inclusive": true
    },
    "n": 0,
    "complete": false,
    "missing_seeds": [
      430000,
      430001,
      430002,
      430003,
      430004,
      430005,
      430006,
      430007,
      430008,
      430009,
      430010,
      430011,
      430012,
      430013,
      430014,
      430015,
      430016,
      430017,
      430018,
      430019,
      430020,
      430021,
      430022,
      430023,
      430024,
      430025,
      430026,
      430027,
      430028,
      430029,
      430030,
      430031,
      430032,
      430033,
      430034,
      430035,
      430036,
      430037,
      430038,
      430039,
      430040,
      430041,
      430042,
      430043,
      430044,
      430045,
      430046,
      430047,
      430048,
      430049,
      430050,
      430051,
      430052,
      430053,
      430054,
      430055,
      430056,
      430057,
      430058,
      430059,
      430060,
      430061,
      430062,
      430063,
      430064,
      430065,
      430066,
      430067,
      430068,
      430069,
      430070,
      430071,
      430072,
      430073,
      430074,
      430075,
      430076,
      430077,
      430078,
      430079,
      430080,
      430081,
      430082,
      430083,
      430084,
      430085,
      430086,
      430087,
      430088,
      430089,
      430090,
      430091,
      430092,
      430093,
      430094,
      430095,
      430096,
      430097,
      430098,
      430099,
      430100,
      430101,
      430102,
      430103,
      430104,
      430105,
      430106,
      430107,
      430108,
      430109,
      430110,
      430111,
      430112,
      430113,
      430114,
      430115,
      430116,
      430117,
      430118,
      430119,
      430120,
      430121,
      430122,
      430123,
      430124,
      430125,
      430126,
      430127,
      430128,
      430129,
      430130,
      430131,
      430132,
      430133,
      430134,
      430135,
      430136,
      430137,
      430138,
      430139,
      430140,
      430141,
      430142,
      430143,
      430144,
      430145,
      430146,
      430147,
      430148,
      430149,
      430150,
      430151,
      430152,
      430153,
      430154,
      430155,
      430156,
      430157,
      430158,
      430159,
      430160,
      430161,
      430162,
      430163,
      430164,
      430165,
      430166,
      430167,
      430168,
      430169,
      430170,
      430171,
      430172,
      430173,
      430174,
      430175,
      430176,
      430177,
      430178,
      430179,
      430180,
      430181,
      430182,
      430183,
      430184,
      430185,
      430186,
      430187,
      430188,
      430189,
      430190,
      430191,
      430192,
      430193,
      430194,
      430195,
      430196,
      430197,
      430198,
      430199,
      430200,
      430201,
      430202,
      430203,
      430204,
      430205,
      430206,
      430207,
      430208,
      430209,
      430210,
      430211,
      430212,
      430213,
      430214,
      430215,
      430216,
      430217,
      430218,
      430219,
      430220,
      430221,
      430222,
      430223,
      430224,
      430225,
      430226,
      430227,
      430228,
      430229,
      430230,
      430231,
      430232,
      430233,
      430234,
      430235,
      430236,
      430237,
      430238,
      430239,
      430240,
      430241,
      430242,
      430243,
      430244,
      430245,
      430246,
      430247,
      430248,
      430249,
      430250,
      430251,
      430252,
      430253,
      430254,
      430255,
      430256,
      430257,
      430258,
      430259,
      430260,
      430261,
      430262,
      430263,
      430264,
      430265,
      430266,
      430267,
      430268,
      430269,
      430270,
      430271,
      430272,
      430273,
      430274,
      430275,
      430276,
      430277,
      430278,
      430279,
      430280,
      430281,
      430282,
      430283,
      430284,
      430285,
      430286,
      430287,
      430288,
      430289,
      430290,
      430291,
      430292,
      430293,
      430294,
      430295,
      430296,
      430297,
      430298,
      430299,
      430300,
      430301,
      430302,
      430303,
      430304,
      430305,
      430306,
      430307,
      430308,
      430309,
      430310,
      430311,
      430312,
      430313,
      430314,
      430315,
      430316,
      430317,
      430318,
      430319,
      430320,
      430321,
      430322,
      430323,
      430324,
      430325,
      430326,
      430327,
      430328,
      430329,
      430330,
      430331,
      430332,
      430333,
      430334,
      430335,
      430336,
      430337,
      430338,
      430339,
      430340,
      430341,
      430342,
      430343,
      430344,
      430345,
      430346,
      430347,
      430348,
      430349,
      430350,
      430351,
      430352,
      430353,
      430354,
      430355,
      430356,
      430357,
      430358,
      430359,
      430360,
      430361,
      430362,
      430363,
      430364,
      430365,
      430366,
      430367,
      430368,
      430369,
      430370,
      430371,
      430372,
      430373,
      430374,
      430375,
      430376,
      430377,
      430378,
      430379,
      430380,
      430381,
      430382,
      430383,
      430384,
      430385,
      430386,
      430387,
      430388,
      430389,
      430390,
      430391,
      430392,
      430393,
      430394,
      430395,
      430396,
      430397,
      430398,
      430399,
      430400,
      430401,
      430402,
      430403,
      430404,
      430405,
      430406,
      430407,
      430408,
      430409,
      430410,
      430411,
      430412,
      430413,
      430414,
      430415,
      430416,
      430417,
      430418,
      430419,
      430420,
      430421,
      430422,
      430423,
      430424,
      430425,
      430426,
      430427,
      430428,
      430429,
      430430,
      430431,
      430432,
      430433,
      430434,
      430435,
      430436,
      430437,
      430438,
      430439,
      430440,
      430441,
      430442,
      430443,
      430444,
      430445,
      430446,
      430447,
      430448,
      430449,
      430450,
      430451,
      430452,
      430453,
      430454,
      430455,
      430456,
      430457,
      430458,
      430459,
      430460,
      430461,
      430462,
      430463,
      430464,
      430465,
      430466,
      430467,
      430468,
      430469,
      430470,
      430471,
      430472,
      430473,
      430474,
      430475,
      430476,
      430477,
      430478,
      430479,
      430480,
      430481,
      430482,
      430483,
      430484,
      430485,
      430486,
      430487,
      430488,
      430489,
      430490,
      430491,
      430492,
      430493,
      430494,
      430495,
      430496,
      430497,
      430498,
      430499
    ],
    "overall": {
      "n": 0,
      "sum_d": null,
      "sum_d2": null,
      "mean_diff": null,
      "se": null,
      "incumbent_mean": null,
      "candidate_mean": null,
      "retail_diff": null,
      "arb_diff": null
    },
    "by_spread": {
      "1": {
        "n": 0,
        "sum_d": null,
        "sum_d2": null,
        "mean_diff": null,
        "se": null,
        "incumbent_mean": null,
        "candidate_mean": null,
        "retail_diff": null,
        "arb_diff": null
      },
      "2": {
        "n": 0,
        "sum_d": null,
        "sum_d2": null,
        "mean_diff": null,
        "se": null,
        "incumbent_mean": null,
        "candidate_mean": null,
        "retail_diff": null,
        "arb_diff": null
      },
      "3": {
        "n": 0,
        "sum_d": null,
        "sum_d2": null,
        "mean_diff": null,
        "se": null,
        "incumbent_mean": null,
        "candidate_mean": null,
        "retail_diff": null,
        "arb_diff": null
      },
      "4": {
        "n": 0,
        "sum_d": null,
        "sum_d2": null,
        "mean_diff": null,
        "se": null,
        "incumbent_mean": null,
        "candidate_mean": null,
        "retail_diff": null,
        "arb_diff": null
      }
    }
  },
  "failures": [
    {
      "kind": "mechanism_infeasible",
      "detail": "The required rival displayed size/depth is absent from StepState. It is not an unknown requester-owned value. Reading hidden market/config state or replacing size with a guessed or estimated notional would violate the specified mechanism and observable-input constraint. No spread supplies the missing quantity.",
      "sources": [
        "https://raw.githubusercontent.com/danrobinson/prediction-market-challenge/b244530ee2a6247b5f930830eeca9dd950da0e7e/orderbook_pm_challenge/types.py",
        "https://raw.githubusercontent.com/danrobinson/prediction-market-challenge/b244530ee2a6247b5f930830eeca9dd950da0e7e/orderbook_pm_challenge/market.py",
        "https://raw.githubusercontent.com/danrobinson/prediction-market-challenge/b244530ee2a6247b5f930830eeca9dd950da0e7e/orderbook_pm_challenge/runner.py"
      ]
    },
    {
      "kind": "screen_not_completed",
      "detail": "No active variant could be implemented faithfully, so none was frozen. All 200 tuning seeds and 500 holdout seeds remain unrun; all 4000 finalist seeds also remain untouched. Null statistics mean unmeasured, not zero effect. The supplied code is explicitly disabled and raises if enabled; it must not be represented as a functioning rival-size cap."
    }
  ],
  "check_values": [
    17.1160017503,
    20.0171113118,
    2.3903113616,
    241.4847522404
  ],
  "python_version": "3.13.5",
  "seconds_per_simulation": 0.7408339178888127
}
