{
 "backend_kind": "local",
 "baseline": {
  "checkpoint_id": "local-ckpt-b020dbc10b6a8a9c",
  "cleanup_error": null,
  "cleanup_status": "ok",
  "cost_per_query_usd": 0.0,
  "p50_ms": 340.095,
  "p95_ms": 436.356,
  "p99_ms": 436.356,
  "sandbox_id": "local-fork-b2829f93a3e9"
 },
 "ended_at_utc": "2026-10-26T08:06:01.756693Z",
 "environment": {
  "cpu_count": 2,
  "machine": "x86_64",
  "package_versions": {
   "duckdb": "1.5.6",
   "numpy": "2.5.3",
   "pydantic": "2.13.5",
   "scipy": "1.18.1"
  },
  "platform": "Linux-6.18.44-fc-v153-x86_64-with-glibc2.39",
  "python_implementation": "CPython",
  "python_version": "3.13.16"
 },
 "evaluation": {
  "alpha_family": 0.01,
  "baseline_held_out_sha256": "cbb7fca2aaac862a16950a7f48f30627edc28c00cc3bf87e444872e049f49e25",
  "baseline_primary_sha256": "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
  "baseline_timed_trial_sha256": [
   "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
   "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
   "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
   "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
   "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
   "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
   "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
   "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
   "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
   "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
   "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
   "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
   "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
   "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
   "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b"
  ],
  "digest_rounding_decimals": 2,
  "effect_bands": {
   "H1": {
    "high": null,
    "low": 2.0
   },
   "H2": {
    "high": null,
    "low": 2.0
   },
   "H3": {
    "high": null,
    "low": 2.0
   },
   "H4": {
    "high": null,
    "low": 2.0
   }
  },
  "experiment_spec_sha256": "dcb47b995518ea519630cd613928a0ea1510a68b12858a23681f3d1be39e12f5",
  "held_out_customer_limit": 250,
  "holm_family": [
   "H1",
   "H2",
   "H3"
  ],
  "ledger_id": "rootrace-production-h1-h4",
  "ledger_sha256": "6b84c035482a10ce00b539a8928b8addb8ea3259eb7e6575d21de8acff0e8400",
  "n_resamples": 10000,
  "practical_threshold": 2.0,
  "primary_customer_limit": 500,
  "process_isolation": "shared_connection",
  "race_seed": 20261027,
  "seed_derivation": "candidate_seed = big-endian unsigned integer of the first 8 bytes of SHA-256(canonical_json({\"hypothesis_id\": <id>, \"purpose\": \"rootrace.bootstrap-seed.v1\", \"race_seed\": <race_seed>})); canonical_json per agents/canonical.py"
 },
 "evaluator_version": "evaluator-v2.0",
 "forks": [
  {
   "backend_kind": "local",
   "checkpoint_id": "local-ckpt-b020dbc10b6a8a9c",
   "cleanup_error": null,
   "cleanup_status": "ok",
   "hypothesis_id": "H1",
   "sandbox_id": "local-fork-f52b0bc30891",
   "status": "complete"
  },
  {
   "backend_kind": "local",
   "checkpoint_id": "local-ckpt-b020dbc10b6a8a9c",
   "cleanup_error": null,
   "cleanup_status": "ok",
   "hypothesis_id": "H2",
   "sandbox_id": "local-fork-1bbc756ad857",
   "status": "complete"
  },
  {
   "backend_kind": "local",
   "checkpoint_id": "local-ckpt-b020dbc10b6a8a9c",
   "cleanup_error": null,
   "cleanup_status": "ok",
   "hypothesis_id": "H3",
   "sandbox_id": "local-fork-80848051920e",
   "status": "complete"
  },
  {
   "backend_kind": "local",
   "checkpoint_id": null,
   "cleanup_error": null,
   "cleanup_status": null,
   "hypothesis_id": "H4",
   "sandbox_id": null,
   "status": "not_applicable"
  }
 ],
 "hypotheses": [
  {
   "claim": "Excessive per-call query fanout due to per-customer fetches",
   "expected_effect": "improve",
   "id": "H1",
   "mechanism": "customer_summary_slow issues a separate query for each of the 501 customers, resulting in 501 queries per call and heavy client-side loop overhead",
   "patch_diff": null
  },
  {
   "claim": "High JSON serialization and network overhead per query",
   "expected_effect": "improve",
   "id": "H2",
   "mechanism": "each of the 501 queries returns a small JSON response that must be serialized and transmitted, inflating total latency",
   "patch_diff": null
  },
  {
   "claim": "Missing index causing slow query execution on the database side",
   "expected_effect": "improve",
   "id": "H3",
   "mechanism": "the individual per-customer queries likely scan large portions of the underlying table repeatedly, leading to high execution time per query",
   "patch_diff": null
  },
  {
   "claim": "Thread pool saturation from launching many concurrent queries",
   "expected_effect": "improve",
   "id": "H4",
   "mechanism": "spawning 501 queries per call may saturate the application's thread pool or executor, causing context\u2011switch overhead and higher latency",
   "patch_diff": null
  }
 ],
 "metrics": {
  "H1": {
   "confidence_interval_95": [
    1.627,
    1.898
   ],
   "cost_per_query_usd": 0.0,
   "n_trials": 15,
   "p50_ms": 1.694,
   "p95_ms": 2.234,
   "p99_ms": 2.234,
   "throughput_qps": 567.355
  },
  "H2": {
   "confidence_interval_95": [
    317.587,
    355.627
   ],
   "cost_per_query_usd": 0.0,
   "n_trials": 15,
   "p50_ms": 324.447,
   "p95_ms": 393.75,
   "p99_ms": 393.75,
   "throughput_qps": 2.971
  },
  "H3": {
   "confidence_interval_95": [
    331.133,
    370.387
   ],
   "cost_per_query_usd": 0.0,
   "n_trials": 15,
   "p50_ms": 339.685,
   "p95_ms": 410.437,
   "p99_ms": 410.437,
   "throughput_qps": 2.851
  }
 },
 "raw_samples": {
  "baseline_ms": [
   333.0041279999705,
   322.739992000038,
   368.5566660000177,
   340.09462400001667,
   348.0037880000282,
   327.75967899999614,
   323.23287099995923,
   310.00547199994344,
   389.708556999949,
   351.99788299996726,
   278.4448439999778,
   368.7970809999115,
   324.15723700000854,
   377.47663699997247,
   436.3564249999854
  ],
  "candidates_ms": {
   "H1": [
    1.437186999964979,
    1.733664999960638,
    1.58749699994587,
    2.2343910000017786,
    1.6941989999850193,
    1.8078479999985575,
    1.8902269999898635,
    1.4947089999850505,
    2.1825890000854997,
    1.5897950000862693,
    1.4533490000303573,
    1.5829010000061317,
    1.6448150000769601,
    1.9294559999707417,
    2.1758309999313497
   ],
   "H2": [
    322.68983799997386,
    304.4303650000302,
    383.1041549999554,
    383.85773300001347,
    318.440305000081,
    302.0999260000963,
    285.46376500003134,
    364.5892819999972,
    393.7498069999492,
    324.4472599999426,
    283.52500100004363,
    364.15425099994536,
    302.5161760000401,
    348.986157000013,
    367.05442699997093
   ],
   "H3": [
    339.68483399996785,
    381.0840379999263,
    401.34935100002167,
    380.32845500003987,
    338.7017579999565,
    325.38777800004937,
    296.6578469998922,
    352.07930300009593,
    296.8021089999411,
    308.61939499993696,
    384.23099999999977,
    319.25296499991873,
    410.4366639999171,
    396.43479899996237,
    330.3456509999023
   ]
  },
  "unit": "ms",
  "warmup_samples_included": false,
  "warmup_trials": 3
 },
 "run_id": "incident1-v2-warm-container-001",
 "started_at_utc": "2026-10-26T08:05:40.747073Z",
 "translations": {
  "H1": {
   "original_claim": "Excessive per-call query fanout due to per-customer fetches -- customer_summary_slow issues a separate query for each of the 501 customers, resulting in 501 queries per call and heavy client-side loop overhead",
   "precondition": null,
   "tested_mechanism": "query fanout eliminated via a single GROUP BY query (customer_summary_fast)",
   "translation_note": "Direct translation: H1's claimed mechanism (per-customer query fanout) is exactly what this variant removes. No substitution needed.",
   "translation_type": "direct"
  },
  "H2": {
   "original_claim": "High JSON serialization and network overhead per query -- each of the 501 queries returns a small JSON response that must be serialized and transmitted, inflating total latency",
   "precondition": null,
   "tested_mechanism": "per-row Python object construction cost, with query count held fixed at the observed 501 queries per call",
   "translation_note": "H2 claims per-query JSON serialization and network overhead. This system executes DuckDB queries in-process via the Python API -- there is no per-query network hop or JSON encode to measure directly. This variant keeps the exact same query fanout as the observed incident and isolates the closest real, measurable analogue (per-row Python object construction) as a PROXY for the claimed overhead. A significant result here supports the proxy mechanism only -- it does not conclusively confirm or rule out the original network/serialization claim.",
   "translation_type": "proxy"
  },
  "H3": {
   "original_claim": "Missing index causing slow query execution on the database side -- the individual per-customer queries likely scan large portions of the underlying table repeatedly, leading to high execution time per query",
   "precondition": null,
   "tested_mechanism": "per-query execution cost with an index on orders.customer_id, fanout unchanged",
   "translation_note": "Direct translation: DuckDB supports real indexes, so H3's claimed mechanism (missing index) is directly testable. Fanout is held constant so this isolates per-query execution cost from H1's fanout-elimination mechanism -- a genuinely different variable.",
   "translation_type": "direct"
  },
  "H4": {
   "original_claim": "Thread pool saturation from launching many concurrent queries -- spawning 501 queries per call may saturate the application's thread pool or executor, causing context\u2011switch overhead and higher latency",
   "precondition": {
    "applicable": false,
    "checked_against": "<local path redacted> (static AST scan) + <local path redacted> (measured query_count_per_call)",
    "evidence": "Static scan of <local path redacted> found no thread-pool or async concurrency primitives (concurrency_primitives_detected=[]); customer_summary_slow issues all 501 queries synchronously via single_connection_per_call.",
    "required_mechanism": "concurrent/thread-pooled query dispatch"
   },
   "tested_mechanism": "concurrent/thread-pooled query dispatch",
   "translation_note": "H4 presupposes a thread pool or concurrent executor dispatching the per-customer queries. The precondition check found no such mechanism in the observed incident. Per design policy, this hypothesis is NOT made executable by adding a thread pool that did not exist in the incident -- doing so would measure a different system than the one being diagnosed. It is classified not_applicable instead, before any fork is allocated for it.",
   "translation_type": "precondition"
  }
 },
 "verdict": {
  "H1": {
   "correctness": {
    "checks": [
     {
      "baseline_row_count": 500,
      "baseline_sha256": "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
      "candidate_row_count": 500,
      "candidate_sha256": "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
      "customer_limit": 500,
      "match": true,
      "role": "primary"
     },
     {
      "baseline_row_count": 250,
      "baseline_sha256": "cbb7fca2aaac862a16950a7f48f30627edc28c00cc3bf87e444872e049f49e25",
      "candidate_row_count": 250,
      "candidate_sha256": "cbb7fca2aaac862a16950a7f48f30627edc28c00cc3bf87e444872e049f49e25",
      "customer_limit": 250,
      "match": true,
      "role": "held_out"
     }
    ],
    "digest_rounding_decimals": 2,
    "first_timed_trial_mismatch_index": null,
    "timed_trial_sha256": [
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b"
    ]
   },
   "effect_size_pct": 99.50184481599305,
   "narrative": "H1 ('Excessive per-call query fanout due to per-customer fetches -- customer_summary_slow issues a separate query for each of the 501 customers, resulting in 501 queries per call and heavy client-side loop overhead'): tested mechanism was query fanout eliminated via a single GROUP BY query (customer_summary_fast). Verdict SUPPORTED. Ratio of medians 200.7 (baseline median 340.1ms, candidate median 1.694ms), 95% percentile-bootstrap CI [176.2, 224.1]; committed band [2, open-ended]. Mann-Whitney raw p=3.392e-06, Holm-adjusted p=1.018e-05 over 3 tested hypotheses at alpha 0.01. Practical threshold 2.0x met. This narrative is a plain string template computed from measured statistics, not an LLM output.",
   "output_matches_baseline": true,
   "significant": true,
   "statistics": {
    "all_values_identical": false,
    "alpha_family": 0.01,
    "baseline_median_ms": 340.09462400001667,
    "bootstrap_seed": 18204157263858254770,
    "candidate_median_ms": 1.6941989999850193,
    "ci_band_position": "overlap",
    "ci_level": 0.95,
    "ci_lower": 176.17150109577116,
    "ci_method": "percentile",
    "ci_overlaps_band": true,
    "ci_upper": 224.07180502535124,
    "effect_band": {
     "high": null,
     "low": 2.0
    },
    "holm_family_size": 3,
    "holm_reject": true,
    "mann_whitney_alternative": "two-sided",
    "mann_whitney_method": "asymptotic",
    "mann_whitney_u": 225.0,
    "mann_whitney_use_continuity": true,
    "median_percent_reduction": 99.50184481599305,
    "meets_practical_threshold": true,
    "n_baseline": 15,
    "n_candidate": 15,
    "n_resamples": 10000,
    "n_undefined_resamples": 0,
    "numpy_version": "2.5.3",
    "p_value_holm_adjusted": 1.0175464172475284e-05,
    "p_value_raw": 3.3918213908250945e-06,
    "practical_threshold": 2.0,
    "ratio_of_medians": 200.74065915693723,
    "scipy_version": "1.18.1"
   },
   "verdict_status": "SUPPORTED",
   "winner_eligible": true
  },
  "H2": {
   "correctness": {
    "checks": [
     {
      "baseline_row_count": 500,
      "baseline_sha256": "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
      "candidate_row_count": 500,
      "candidate_sha256": "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
      "customer_limit": 500,
      "match": true,
      "role": "primary"
     },
     {
      "baseline_row_count": 250,
      "baseline_sha256": "cbb7fca2aaac862a16950a7f48f30627edc28c00cc3bf87e444872e049f49e25",
      "candidate_row_count": 250,
      "candidate_sha256": "cbb7fca2aaac862a16950a7f48f30627edc28c00cc3bf87e444872e049f49e25",
      "customer_limit": 250,
      "match": true,
      "role": "held_out"
     }
    ],
    "digest_rounding_decimals": 2,
    "first_timed_trial_mismatch_index": null,
    "timed_trial_sha256": [
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b"
    ]
   },
   "effect_size_pct": 4.600885428895596,
   "narrative": "H2 ('High JSON serialization and network overhead per query -- each of the 501 queries returns a small JSON response that must be serialized and transmitted, inflating total latency'): tested mechanism was per-row Python object construction cost, with query count held fixed at the observed 501 queries per call. Verdict FALSIFIED. Ratio of medians 1.048 (baseline median 340.1ms, candidate median 324.4ms), 95% percentile-bootstrap CI [0.899, 1.156]; committed band [2, open-ended]. Mann-Whitney raw p=0.4306, Holm-adjusted p=0.8613 over 3 tested hypotheses at alpha 0.01. Practical threshold 2.0x not met. This result characterizes only the proxy mechanism; it does not conclusively confirm or rule out the original claim. This narrative is a plain string template computed from measured statistics, not an LLM output.",
   "output_matches_baseline": true,
   "significant": false,
   "statistics": {
    "all_values_identical": false,
    "alpha_family": 0.01,
    "baseline_median_ms": 340.09462400001667,
    "bootstrap_seed": 15573866630124761170,
    "candidate_median_ms": 324.4472599999426,
    "ci_band_position": "below",
    "ci_level": 0.95,
    "ci_lower": 0.8989833085658252,
    "ci_method": "percentile",
    "ci_overlaps_band": false,
    "ci_upper": 1.156250898296339,
    "effect_band": {
     "high": null,
     "low": 2.0
    },
    "holm_family_size": 3,
    "holm_reject": false,
    "mann_whitney_alternative": "two-sided",
    "mann_whitney_method": "asymptotic",
    "mann_whitney_u": 132.0,
    "mann_whitney_use_continuity": true,
    "median_percent_reduction": 4.600885428895596,
    "meets_practical_threshold": false,
    "n_baseline": 15,
    "n_candidate": 15,
    "n_resamples": 10000,
    "n_undefined_resamples": 0,
    "numpy_version": "2.5.3",
    "p_value_holm_adjusted": 0.8612959796961555,
    "p_value_raw": 0.43064798984807773,
    "practical_threshold": 2.0,
    "ratio_of_medians": 1.048227758188116,
    "scipy_version": "1.18.1"
   },
   "verdict_status": "FALSIFIED",
   "winner_eligible": false
  },
  "H3": {
   "correctness": {
    "checks": [
     {
      "baseline_row_count": 500,
      "baseline_sha256": "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
      "candidate_row_count": 500,
      "candidate_sha256": "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
      "customer_limit": 500,
      "match": true,
      "role": "primary"
     },
     {
      "baseline_row_count": 250,
      "baseline_sha256": "cbb7fca2aaac862a16950a7f48f30627edc28c00cc3bf87e444872e049f49e25",
      "candidate_row_count": 250,
      "candidate_sha256": "cbb7fca2aaac862a16950a7f48f30627edc28c00cc3bf87e444872e049f49e25",
      "customer_limit": 250,
      "match": true,
      "role": "held_out"
     }
    ],
    "digest_rounding_decimals": 2,
    "first_timed_trial_mismatch_index": null,
    "timed_trial_sha256": [
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b",
     "62001941066e399d3de05f9e625768845adff08838ec13c71204f2c9bc4b370b"
    ]
   },
   "effect_size_pct": 0.12049293670951533,
   "narrative": "H3 ('Missing index causing slow query execution on the database side -- the individual per-customer queries likely scan large portions of the underlying table repeatedly, leading to high execution time per query'): tested mechanism was per-query execution cost with an index on orders.customer_id, fanout unchanged. Verdict FALSIFIED. Ratio of medians 1.001 (baseline median 340.1ms, candidate median 339.7ms), 95% percentile-bootstrap CI [0.8601, 1.103]; committed band [2, open-ended]. Mann-Whitney raw p=0.74, Holm-adjusted p=0.8613 over 3 tested hypotheses at alpha 0.01. Practical threshold 2.0x not met. This narrative is a plain string template computed from measured statistics, not an LLM output.",
   "output_matches_baseline": true,
   "significant": false,
   "statistics": {
    "all_values_identical": false,
    "alpha_family": 0.01,
    "baseline_median_ms": 340.09462400001667,
    "bootstrap_seed": 9381905067273544771,
    "candidate_median_ms": 339.68483399996785,
    "ci_band_position": "below",
    "ci_level": 0.95,
    "ci_lower": 0.8600719167357503,
    "ci_method": "percentile",
    "ci_overlaps_band": false,
    "ci_upper": 1.102567310534005,
    "effect_band": {
     "high": null,
     "low": 2.0
    },
    "holm_family_size": 3,
    "holm_reject": false,
    "mann_whitney_alternative": "two-sided",
    "mann_whitney_method": "asymptotic",
    "mann_whitney_u": 104.0,
    "mann_whitney_use_continuity": true,
    "median_percent_reduction": 0.12049293670951533,
    "meets_practical_threshold": false,
    "n_baseline": 15,
    "n_candidate": 15,
    "n_resamples": 10000,
    "n_undefined_resamples": 0,
    "numpy_version": "2.5.3",
    "p_value_holm_adjusted": 0.8612959796961555,
    "p_value_raw": 0.7400217511938185,
    "practical_threshold": 2.0,
    "ratio_of_medians": 1.0012063829733677,
    "scipy_version": "1.18.1"
   },
   "verdict_status": "FALSIFIED",
   "winner_eligible": false
  },
  "H4": {
   "correctness": null,
   "effect_size_pct": null,
   "narrative": "H4 ('Thread pool saturation from launching many concurrent queries -- spawning 501 queries per call may saturate the application's thread pool or executor, causing context\u2011switch overhead and higher latency') was not executed. Precondition check: Static scan of <local path redacted> found no thread-pool or async concurrency primitives (concurrency_primitives_detected=[]); customer_summary_slow issues all 501 queries synchronously via single_connection_per_call. The causal mechanism this hypothesis requires ('concurrent/thread-pooled query dispatch') is absent from the observed incident, so it is classified not_applicable rather than measured true or false. This narrative is a plain string template, not an LLM output.",
   "output_matches_baseline": null,
   "significant": false,
   "statistics": null,
   "verdict_status": "NOT_APPLICABLE",
   "winner_eligible": null
  }
 },
 "winner": "H1"
}
