{
 "slug": "calibration-monthly-2026-09",
 "series": "monthly",
 "series_label": "MONTHLY · CALIBRATION",
 "issue": 2,
 "title": "Monthly Calibration #2",
 "language": "en",
 "window_start": "2026-09-01T00:00:00+00:00",
 "window_end": "2026-10-01T00:00:00+00:00",
 "window_text": "Sep 1-30, 2026 UTC",
 "cutoff": "2026-10-01T16:00:00+00:00",
 "generated_at": "2026-10-02T09:18:46+00:00",
 "methodology": "v1.1 (2026-08-10)",
 "methodology_hash": "e66c7e8c864a2233",
 "source": "monthly_metrics_2026-09.json",
 "hit_rule": "direction: exit tp1/tp2 -> hit, sl -> miss, expiry -> sign of gross pnl",
 "bibtex_key": "mm_calibration_monthly_2026m09",
 "market_state": {
  "panel": "market_state_6p2",
  "month": {
   "start": "2026-09-01",
   "end": "2026-10-01",
   "days": 30
  },
  "prev_month_partial": {
   "start": "2026-08-01",
   "end": "2026-09-01",
   "days": 31,
   "partial": false
  },
  "current": {
   "btc_net_pct": 6.42,
   "realized_vol_ann_pct": 41.17,
   "volume_top5_usd_bn": 80.0142,
   "volume_top5_mom_pct": 21.3,
   "avg_pairwise_corr": 0.78
  },
  "previous_partial_month": {
   "btc_net_pct": 24.95,
   "realized_vol_ann_pct": 41.53,
   "volume_top5_usd_bn": 65.9696,
   "avg_pairwise_corr": 0.79
  },
  "snapshot_line": "BTC net +6.42% (prior +24.95%) - ann vol 41.2% (was 41.5%) - TOP5 volume $80.01B, +21% m/m - pairwise corr 0.78 (was 0.79)",
  "exchange": "binance",
  "audit_filter_applied": true,
  "source": "single-exchange (binance) daily candle recompute, market_state_2026-09.json; the prior-month block is the pack's own prev_month (Aug 1-31)",
  "audit_note": "Market-state row is computed on a single-exchange (binance) daily candle series, as in the weekly series after the audit that found the raw table mixes two exchanges. The prior-month block is the full August: it covers 31 days (Aug 1-31), and the TOP5 volume figure compares a 30-day sum with a 31-day sum -- a level difference, not a like-for-like change.",
  "weeks": {
   "W1": {
    "btc_net_pct": 3.42,
    "realized_vol_ann_pct": 43.35,
    "regime": "calm"
   },
   "W2": {
    "btc_net_pct": -4.36,
    "realized_vol_ann_pct": 19.68,
    "regime": "calm"
   },
   "W3": {
    "btc_net_pct": 5.64,
    "realized_vol_ann_pct": 51.01,
    "regime": "volatile"
   },
   "W4": {
    "btc_net_pct": 4.06,
    "realized_vol_ann_pct": 52.25,
    "regime": "volatile"
   }
  },
  "volatility_rule": "volatile if realized_vol_ann_pct >= median(W1..W4) else calm",
  "median_realized_vol_ann_pct": 47.18,
  "delta_month_vs_prev_partial": {
   "btc_net_pct": -18.53,
   "realized_vol_ann_pct": -0.36,
   "avg_daily_range_pct": 0.06,
   "volume_top5_usd_pct": 21.3,
   "avg_pairwise_corr": -0.01,
   "note": "September (30 days) vs August (31 days, the full previous month); volume is a sum, so volume_top5_usd_pct compares a 30-day sum with a 31-day sum (not normalised per day)"
  },
  "controls": {
   "w4_matches_published": {
    "pins_source": "market_state_2026-09-21.json -> 'current' (the published weekly #8 week, Sep 21-27)",
    "block": "W4",
    "published": {
     "btc_net_pct": 4.06,
     "realized_vol_ann_pct": 52.25,
     "volume_top5_usd_bn": 22.4265,
     "avg_pairwise_corr": 0.71
    },
    "got": {
     "btc_net_pct": 4.06,
     "realized_vol_ann_pct": 52.25,
     "volume_top5_usd_bn": 22.4265,
     "avg_pairwise_corr": 0.71
    },
    "match": {
     "btc_net_pct": true,
     "realized_vol_ann_pct": true,
     "volume_top5_usd_bn": true,
     "avg_pairwise_corr": true
    },
    "tolerance": {
     "btc_net_pct": 0.05,
     "realized_vol_ann_pct": 0.5,
     "volume_top5_usd_bn": 0.05,
     "avg_pairwise_corr": 0.02
    },
    "all_match": true
   },
   "w3_matches_published_previous": {
    "pins_source": "market_state_2026-09-21.json -> 'previous' (the weekly #8 run's prev week = weekly #7, Sep 14-20)",
    "block": "W3",
    "published": {
     "btc_net_pct": 5.64,
     "realized_vol_ann_pct": 51.01,
     "volume_top5_usd_bn": 18.7386,
     "avg_pairwise_corr": 0.93
    },
    "got": {
     "btc_net_pct": 5.64,
     "realized_vol_ann_pct": 51.01,
     "volume_top5_usd_bn": 18.7386,
     "avg_pairwise_corr": 0.93
    },
    "match": {
     "btc_net_pct": true,
     "realized_vol_ann_pct": true,
     "volume_top5_usd_bn": true,
     "avg_pairwise_corr": true
    },
    "tolerance": {
     "btc_net_pct": 0.05,
     "realized_vol_ann_pct": 0.5,
     "volume_top5_usd_bn": 0.05,
     "avg_pairwise_corr": 0.02
    },
    "all_match": true
   },
   "note": "W4 and W3 of this run are exactly the two weeks the weekly #8 market panel computed, with the same audit filter, so both must reproduce. Non-fatal: a MISMATCH means the exchange filter or the symbol set moved -- send the log, do not publish the row."
  },
  "regime_days": {
   "2026-09-01": {
    "move_pct": -1.5,
    "regime": "trend"
   },
   "2026-09-02": {
    "move_pct": -0.06,
    "regime": "flat"
   },
   "2026-09-03": {
    "move_pct": 4.98,
    "regime": "trend"
   },
   "2026-09-04": {
    "move_pct": -1.97,
    "regime": "trend"
   },
   "2026-09-05": {
    "move_pct": 0.24,
    "regime": "flat"
   },
   "2026-09-06": {
    "move_pct": 0.58,
    "regime": "flat"
   },
   "2026-09-07": {
    "move_pct": -1.52,
    "regime": "trend"
   },
   "2026-09-08": {
    "move_pct": -0.72,
    "regime": "flat"
   },
   "2026-09-09": {
    "move_pct": -0.25,
    "regime": "flat"
   },
   "2026-09-10": {
    "move_pct": -2.14,
    "regime": "trend"
   },
   "2026-09-11": {
    "move_pct": 0.85,
    "regime": "flat"
   },
   "2026-09-12": {
    "move_pct": 0.0,
    "regime": "flat"
   },
   "2026-09-13": {
    "move_pct": -0.57,
    "regime": "flat"
   },
   "2026-09-14": {
    "move_pct": 1.79,
    "regime": "trend"
   },
   "2026-09-15": {
    "move_pct": -3.35,
    "regime": "trend"
   },
   "2026-09-16": {
    "move_pct": 0.86,
    "regime": "flat"
   },
   "2026-09-17": {
    "move_pct": 0.21,
    "regime": "flat"
   },
   "2026-09-18": {
    "move_pct": 5.82,
    "regime": "trend"
   },
   "2026-09-19": {
    "move_pct": 0.46,
    "regime": "flat"
   },
   "2026-09-20": {
    "move_pct": 0.13,
    "regime": "flat"
   },
   "2026-09-21": {
    "move_pct": 6.39,
    "regime": "trend"
   },
   "2026-09-22": {
    "move_pct": -0.4,
    "regime": "flat"
   },
   "2026-09-23": {
    "move_pct": -2.04,
    "regime": "trend"
   },
   "2026-09-24": {
    "move_pct": 0.02,
    "regime": "flat"
   },
   "2026-09-25": {
    "move_pct": -0.46,
    "regime": "flat"
   },
   "2026-09-26": {
    "move_pct": 0.36,
    "regime": "flat"
   },
   "2026-09-27": {
    "move_pct": 0.2,
    "regime": "flat"
   },
   "2026-09-28": {
    "move_pct": -1.19,
    "regime": "flat"
   },
   "2026-09-29": {
    "move_pct": 0.22,
    "regime": "flat"
   },
   "2026-09-30": {
    "move_pct": -0.22,
    "regime": "flat"
   }
  },
  "alive_slice_context": {
   "abs_move_1d_pct": {
    "A": 1.979,
    "B": 1.905
   },
   "btc_realized_vol_ann_pct_hourly": {
    "A": 36.92,
    "B": 34.88
   }
  }
 },
 "tables": {
  "calibration_main": [
   {
    "model": "qwen-3.8-max",
    "model_label": "qwen-3.8-max",
    "legacy": false,
    "is_field": false,
    "n": 3165,
    "coverage": 0.5597,
    "hit_rate": 0.4471,
    "mean_conf": 59.5,
    "gap_pp": 14.7,
    "brier": 0.2701,
    "wilson_95": {
     "lo": 0.4298,
     "hi": 0.4645
    }
   },
   {
    "model": "deepseek-v4-pro",
    "model_label": "deepseek-v4-pro",
    "legacy": false,
    "is_field": false,
    "n": 3352,
    "coverage": 0.5907,
    "hit_rate": 0.4526,
    "mean_conf": 60.5,
    "gap_pp": 15.3,
    "brier": 0.2729,
    "wilson_95": {
     "lo": 0.4358,
     "hi": 0.4695
    }
   },
   {
    "model": "claude-fable-5",
    "model_label": "claude-fable-5",
    "legacy": false,
    "is_field": false,
    "n": 2945,
    "coverage": 0.5167,
    "hit_rate": 0.4537,
    "mean_conf": 61.0,
    "gap_pp": 15.6,
    "brier": 0.2733,
    "wilson_95": {
     "lo": 0.4357,
     "hi": 0.4717
    }
   },
   {
    "model": "claude-opus-5",
    "model_label": "claude-opus-5",
    "legacy": false,
    "is_field": false,
    "n": 2532,
    "coverage": 0.4445,
    "hit_rate": 0.4538,
    "mean_conf": 61.3,
    "gap_pp": 15.9,
    "brier": 0.274,
    "wilson_95": {
     "lo": 0.4345,
     "hi": 0.4732
    }
   },
   {
    "model": "grok-4.6",
    "model_label": "grok-4.6",
    "legacy": false,
    "is_field": false,
    "n": 2271,
    "coverage": 0.3995,
    "hit_rate": 0.4439,
    "mean_conf": 60.1,
    "gap_pp": 15.8,
    "brier": 0.274,
    "wilson_95": {
     "lo": 0.4235,
     "hi": 0.4644
    }
   },
   {
    "model": "gemini-3.1-pro",
    "model_label": "gemini-3.1-pro",
    "legacy": false,
    "is_field": false,
    "n": 3284,
    "coverage": 0.5762,
    "hit_rate": 0.4851,
    "mean_conf": 66.5,
    "gap_pp": 18.0,
    "brier": 0.2848,
    "wilson_95": {
     "lo": 0.468,
     "hi": 0.5022
    }
   },
   {
    "model": "gpt-5.6-sol",
    "model_label": "gpt-5.6-sol",
    "legacy": false,
    "is_field": false,
    "n": 3133,
    "coverage": 0.5499,
    "hit_rate": 0.4446,
    "mean_conf": 68.0,
    "gap_pp": 23.5,
    "brier": 0.3054,
    "wilson_95": {
     "lo": 0.4273,
     "hi": 0.4621
    }
   },
   {
    "model": "Field (all models)",
    "legacy": false,
    "is_field": true,
    "n": 20682,
    "coverage": null,
    "hit_rate": 0.455,
    "mean_conf": 62.6,
    "gap_pp": 17.0,
    "brier": 0.2796,
    "wilson_95": {
     "lo": null,
     "hi": null
    }
   }
  ],
  "buckets": [
   {
    "model": "qwen-3.8-max",
    "bucket": "50-60",
    "n": 1511,
    "hit_rate": 0.4428,
    "mean_conf": 56.8,
    "insufficient": false,
    "no_data": false
   },
   {
    "model": "qwen-3.8-max",
    "bucket": "60-70",
    "n": 1602,
    "hit_rate": 0.4538,
    "mean_conf": 62.2,
    "insufficient": false,
    "no_data": false
   },
   {
    "model": "qwen-3.8-max",
    "bucket": "70-80",
    "n": 16,
    "hit_rate": 0.3125,
    "mean_conf": 70.8,
    "insufficient": false,
    "no_data": false
   },
   {
    "model": "qwen-3.8-max",
    "bucket": "80-100",
    "n": 0,
    "hit_rate": null,
    "mean_conf": null,
    "insufficient": false,
    "no_data": true
   },
   {
    "model": "deepseek-v4-pro",
    "bucket": "50-60",
    "n": 1193,
    "hit_rate": 0.4702,
    "mean_conf": 56.9,
    "insufficient": false,
    "no_data": false
   },
   {
    "model": "deepseek-v4-pro",
    "bucket": "60-70",
    "n": 2075,
    "hit_rate": 0.4419,
    "mean_conf": 62.2,
    "insufficient": false,
    "no_data": false
   },
   {
    "model": "deepseek-v4-pro",
    "bucket": "70-80",
    "n": 82,
    "hit_rate": 0.4634,
    "mean_conf": 71.2,
    "insufficient": false,
    "no_data": false
   },
   {
    "model": "deepseek-v4-pro",
    "bucket": "80-100",
    "n": 0,
    "hit_rate": null,
    "mean_conf": null,
    "insufficient": false,
    "no_data": true
   },
   {
    "model": "claude-fable-5",
    "bucket": "50-60",
    "n": 866,
    "hit_rate": 0.4365,
    "mean_conf": 56.6,
    "insufficient": false,
    "no_data": false
   },
   {
    "model": "claude-fable-5",
    "bucket": "60-70",
    "n": 2078,
    "hit_rate": 0.461,
    "mean_conf": 62.8,
    "insufficient": false,
    "no_data": false
   },
   {
    "model": "claude-fable-5",
    "bucket": "70-80",
    "n": 1,
    "hit_rate": 0.0,
    "mean_conf": 70,
    "insufficient": true,
    "no_data": false
   },
   {
    "model": "claude-fable-5",
    "bucket": "80-100",
    "n": 0,
    "hit_rate": null,
    "mean_conf": null,
    "insufficient": false,
    "no_data": true
   },
   {
    "model": "claude-opus-5",
    "bucket": "50-60",
    "n": 462,
    "hit_rate": 0.4675,
    "mean_conf": 57.7,
    "insufficient": false,
    "no_data": false
   },
   {
    "model": "claude-opus-5",
    "bucket": "60-70",
    "n": 2070,
    "hit_rate": 0.4507,
    "mean_conf": 62.1,
    "insufficient": false,
    "no_data": false
   },
   {
    "model": "claude-opus-5",
    "bucket": "70-80",
    "n": 0,
    "hit_rate": null,
    "mean_conf": null,
    "insufficient": false,
    "no_data": true
   },
   {
    "model": "claude-opus-5",
    "bucket": "80-100",
    "n": 0,
    "hit_rate": null,
    "mean_conf": null,
    "insufficient": false,
    "no_data": true
   },
   {
    "model": "grok-4.6",
    "bucket": "50-60",
    "n": 837,
    "hit_rate": 0.4779,
    "mean_conf": 57.3,
    "insufficient": false,
    "no_data": false
   },
   {
    "model": "grok-4.6",
    "bucket": "60-70",
    "n": 1431,
    "hit_rate": 0.4242,
    "mean_conf": 61.8,
    "insufficient": false,
    "no_data": false
   },
   {
    "model": "grok-4.6",
    "bucket": "70-80",
    "n": 2,
    "hit_rate": 0.0,
    "mean_conf": 70,
    "insufficient": true,
    "no_data": false
   },
   {
    "model": "grok-4.6",
    "bucket": "80-100",
    "n": 0,
    "hit_rate": null,
    "mean_conf": null,
    "insufficient": false,
    "no_data": true
   },
   {
    "model": "gemini-3.1-pro",
    "bucket": "50-60",
    "n": 18,
    "hit_rate": 0.2778,
    "mean_conf": 55,
    "insufficient": false,
    "no_data": false
   },
   {
    "model": "gemini-3.1-pro",
    "bucket": "60-70",
    "n": 2097,
    "hit_rate": 0.4893,
    "mean_conf": 63.1,
    "insufficient": false,
    "no_data": false
   },
   {
    "model": "gemini-3.1-pro",
    "bucket": "70-80",
    "n": 1140,
    "hit_rate": 0.4798,
    "mean_conf": 72.5,
    "insufficient": false,
    "no_data": false
   },
   {
    "model": "gemini-3.1-pro",
    "bucket": "80-100",
    "n": 28,
    "hit_rate": 0.5,
    "mean_conf": 80.4,
    "insufficient": false,
    "no_data": false
   },
   {
    "model": "gpt-5.6-sol",
    "bucket": "50-60",
    "n": 29,
    "hit_rate": 0.5517,
    "mean_conf": 58.4,
    "insufficient": false,
    "no_data": false
   },
   {
    "model": "gpt-5.6-sol",
    "bucket": "60-70",
    "n": 2079,
    "hit_rate": 0.4507,
    "mean_conf": 65.4,
    "insufficient": false,
    "no_data": false
   },
   {
    "model": "gpt-5.6-sol",
    "bucket": "70-80",
    "n": 1019,
    "hit_rate": 0.4308,
    "mean_conf": 73.5,
    "insufficient": false,
    "no_data": false
   },
   {
    "model": "gpt-5.6-sol",
    "bucket": "80-100",
    "n": 6,
    "hit_rate": 0.1667,
    "mean_conf": 81.3,
    "insufficient": true,
    "no_data": false
   }
  ],
  "sub50": [
   {
    "model": "qwen-3.8-max",
    "n": 36,
    "hit_rate": 0.3889
   },
   {
    "model": "deepseek-v4-pro",
    "n": 2,
    "hit_rate": 0.5
   },
   {
    "model": "claude-fable-5",
    "n": 0,
    "hit_rate": null
   },
   {
    "model": "claude-opus-5",
    "n": 0,
    "hit_rate": null
   },
   {
    "model": "grok-4.6",
    "n": 1,
    "hit_rate": 1.0
   },
   {
    "model": "gemini-3.1-pro",
    "n": 1,
    "hit_rate": 1.0
   },
   {
    "model": "gpt-5.6-sol",
    "n": 0,
    "hit_rate": null
   }
  ],
  "by_fh": [
   {
    "model": "qwen-3.8-max",
    "fh": "1h",
    "n": 1984,
    "hit_rate": 0.4632,
    "flag": null
   },
   {
    "model": "qwen-3.8-max",
    "fh": "4h",
    "n": 998,
    "hit_rate": 0.4299,
    "flag": null
   },
   {
    "model": "qwen-3.8-max",
    "fh": "1d",
    "n": 183,
    "hit_rate": 0.3661,
    "flag": null
   },
   {
    "model": "deepseek-v4-pro",
    "fh": "1h",
    "n": 2095,
    "hit_rate": 0.473,
    "flag": null
   },
   {
    "model": "deepseek-v4-pro",
    "fh": "4h",
    "n": 1042,
    "hit_rate": 0.4319,
    "flag": null
   },
   {
    "model": "deepseek-v4-pro",
    "fh": "1d",
    "n": 215,
    "hit_rate": 0.3535,
    "flag": null
   },
   {
    "model": "claude-fable-5",
    "fh": "1h",
    "n": 1870,
    "hit_rate": 0.4754,
    "flag": null
   },
   {
    "model": "claude-fable-5",
    "fh": "4h",
    "n": 903,
    "hit_rate": 0.4264,
    "flag": null
   },
   {
    "model": "claude-fable-5",
    "fh": "1d",
    "n": 172,
    "hit_rate": 0.3605,
    "flag": null
   },
   {
    "model": "claude-opus-5",
    "fh": "1h",
    "n": 1551,
    "hit_rate": 0.4771,
    "flag": null
   },
   {
    "model": "claude-opus-5",
    "fh": "4h",
    "n": 833,
    "hit_rate": 0.4322,
    "flag": null
   },
   {
    "model": "claude-opus-5",
    "fh": "1d",
    "n": 148,
    "hit_rate": 0.3311,
    "flag": null
   },
   {
    "model": "grok-4.6",
    "fh": "1h",
    "n": 1436,
    "hit_rate": 0.4638,
    "flag": null
   },
   {
    "model": "grok-4.6",
    "fh": "4h",
    "n": 711,
    "hit_rate": 0.4219,
    "flag": null
   },
   {
    "model": "grok-4.6",
    "fh": "1d",
    "n": 124,
    "hit_rate": 0.3387,
    "flag": null
   },
   {
    "model": "gemini-3.1-pro",
    "fh": "1h",
    "n": 2132,
    "hit_rate": 0.5009,
    "flag": null
   },
   {
    "model": "gemini-3.1-pro",
    "fh": "4h",
    "n": 965,
    "hit_rate": 0.4715,
    "flag": null
   },
   {
    "model": "gemini-3.1-pro",
    "fh": "1d",
    "n": 187,
    "hit_rate": 0.3743,
    "flag": null
   },
   {
    "model": "gpt-5.6-sol",
    "fh": "1h",
    "n": 1940,
    "hit_rate": 0.4577,
    "flag": null
   },
   {
    "model": "gpt-5.6-sol",
    "fh": "4h",
    "n": 1009,
    "hit_rate": 0.4341,
    "flag": null
   },
   {
    "model": "gpt-5.6-sol",
    "fh": "1d",
    "n": 184,
    "hit_rate": 0.3641,
    "flag": null
   }
  ],
  "trading": [
   {
    "model": "gemini-3.1-pro",
    "n_trades": 3284,
    "wr": 0.401,
    "pnl_net_usd": -305.2,
    "pnl_gross_usd": 23.2,
    "max_dd_usd": -318.13
   },
   {
    "model": "grok-4.6",
    "n_trades": 2271,
    "wr": 0.3747,
    "pnl_net_usd": -308.62,
    "pnl_gross_usd": -81.52,
    "max_dd_usd": -313.05
   },
   {
    "model": "claude-opus-5",
    "n_trades": 2532,
    "wr": 0.3791,
    "pnl_net_usd": -331.35,
    "pnl_gross_usd": -78.15,
    "max_dd_usd": -337.15
   },
   {
    "model": "claude-fable-5",
    "n_trades": 2945,
    "wr": 0.384,
    "pnl_net_usd": -348.13,
    "pnl_gross_usd": -53.63,
    "max_dd_usd": -353.47
   },
   {
    "model": "qwen-3.8-max",
    "n_trades": 3165,
    "wr": 0.3801,
    "pnl_net_usd": -397.69,
    "pnl_gross_usd": -81.19,
    "max_dd_usd": -401.28
   },
   {
    "model": "gpt-5.6-sol",
    "n_trades": 3133,
    "wr": 0.3757,
    "pnl_net_usd": -422.29,
    "pnl_gross_usd": -108.99,
    "max_dd_usd": -428.47
   },
   {
    "model": "deepseek-v4-pro",
    "n_trades": 3352,
    "wr": 0.3884,
    "pnl_net_usd": -440.88,
    "pnl_gross_usd": -105.68,
    "max_dd_usd": -443.74
   }
  ],
  "gap_month_over_month": [
   {
    "model": "qwen-3.8-max",
    "gap_pp_prior_window": 14.7,
    "gap_pp_monthly2": 14.7,
    "hit_rate_prior_window": 0.4565,
    "mean_conf_prior_window": 60.3,
    "n_prior_window": 3001,
    "delta_pp": 0.0
   },
   {
    "model": "deepseek-v4-pro",
    "gap_pp_prior_window": 15.4,
    "gap_pp_monthly2": 15.3,
    "hit_rate_prior_window": 0.4554,
    "mean_conf_prior_window": 60.9,
    "n_prior_window": 2578,
    "delta_pp": -0.1
   },
   {
    "model": "claude-fable-5",
    "gap_pp_prior_window": 13.9,
    "gap_pp_monthly2": 15.6,
    "hit_rate_prior_window": 0.4673,
    "mean_conf_prior_window": 60.6,
    "n_prior_window": 2812,
    "delta_pp": 1.7
   },
   {
    "model": "grok-4.6",
    "gap_pp_prior_window": 15.1,
    "gap_pp_monthly2": 15.8,
    "hit_rate_prior_window": 0.4527,
    "mean_conf_prior_window": 60.3,
    "n_prior_window": 2708,
    "delta_pp": 0.7
   },
   {
    "model": "claude-opus-5",
    "gap_pp_prior_window": 13.2,
    "gap_pp_monthly2": 15.9,
    "hit_rate_prior_window": 0.4779,
    "mean_conf_prior_window": 61.0,
    "n_prior_window": 2281,
    "delta_pp": 2.7
   },
   {
    "model": "gemini-3.1-pro",
    "gap_pp_prior_window": 18.8,
    "gap_pp_monthly2": 18.0,
    "hit_rate_prior_window": 0.4761,
    "mean_conf_prior_window": 66.4,
    "n_prior_window": 3033,
    "delta_pp": -0.8
   },
   {
    "model": "gpt-5.6-sol",
    "gap_pp_prior_window": 21.8,
    "gap_pp_monthly2": 23.5,
    "hit_rate_prior_window": 0.4586,
    "mean_conf_prior_window": 67.7,
    "n_prior_window": 2970,
    "delta_pp": 1.7
   },
   {
    "model": "Field",
    "gap_pp_prior_window": 16.3,
    "gap_pp_monthly2": 17.0,
    "hit_rate_prior_window": 0.4633,
    "mean_conf_prior_window": 62.6,
    "n_prior_window": 19383,
    "delta_pp": 0.7
   }
  ],
  "ok_rate_by_model": {
   "qwen-3.8-max": 0.9906,
   "deepseek-v4-pro": 0.996,
   "claude-fable-5": 0.9998,
   "claude-opus-5": 0.9994,
   "grok-4.6": 0.9975,
   "gemini-3.1-pro": 0.9998,
   "gpt-5.6-sol": 0.9995
  },
  "counters": {
   "forecasts_total": 44100,
   "ok_in_gate": 39806,
   "out_of_gate": 4185,
   "out_of_gate_by_fh": {
    "1w": 2096,
    "1m": 2089
   },
   "invalid": 109,
   "mature": 39806,
   "mature_directional": 20682,
   "mature_sideways": 19124,
   "pending_next_issue": 0,
   "pending_by_fh": {},
   "late_closes": 0,
   "uptime": [
    {
     "fh": "1h",
     "tf": "1h",
     "slots_seen": 720,
     "slots_expected": 720
    },
    {
     "fh": "4h",
     "tf": "4h",
     "slots_seen": 180,
     "slots_expected": 180
    },
    {
     "fh": "4h",
     "tf": "1h",
     "slots_seen": 180,
     "slots_expected": 180
    },
    {
     "fh": "1d",
     "tf": "1d",
     "slots_seen": 30,
     "slots_expected": 30
    },
    {
     "fh": "1d",
     "tf": "4h",
     "slots_seen": 30,
     "slots_expected": 30
    }
   ],
   "regime_days": {
    "2026-09-01": {
     "move_pct": -1.5,
     "regime": "trend"
    },
    "2026-09-02": {
     "move_pct": -0.06,
     "regime": "flat"
    },
    "2026-09-03": {
     "move_pct": 4.98,
     "regime": "trend"
    },
    "2026-09-04": {
     "move_pct": -1.97,
     "regime": "trend"
    },
    "2026-09-05": {
     "move_pct": 0.24,
     "regime": "flat"
    },
    "2026-09-06": {
     "move_pct": 0.58,
     "regime": "flat"
    },
    "2026-09-07": {
     "move_pct": -1.52,
     "regime": "trend"
    },
    "2026-09-08": {
     "move_pct": -0.72,
     "regime": "flat"
    },
    "2026-09-09": {
     "move_pct": -0.25,
     "regime": "flat"
    },
    "2026-09-10": {
     "move_pct": -2.14,
     "regime": "trend"
    },
    "2026-09-11": {
     "move_pct": 0.85,
     "regime": "flat"
    },
    "2026-09-12": {
     "move_pct": 0.0,
     "regime": "flat"
    },
    "2026-09-13": {
     "move_pct": -0.57,
     "regime": "flat"
    },
    "2026-09-14": {
     "move_pct": 1.79,
     "regime": "trend"
    },
    "2026-09-15": {
     "move_pct": -3.35,
     "regime": "trend"
    },
    "2026-09-16": {
     "move_pct": 0.86,
     "regime": "flat"
    },
    "2026-09-17": {
     "move_pct": 0.21,
     "regime": "flat"
    },
    "2026-09-18": {
     "move_pct": 5.82,
     "regime": "trend"
    },
    "2026-09-19": {
     "move_pct": 0.46,
     "regime": "flat"
    },
    "2026-09-20": {
     "move_pct": 0.13,
     "regime": "flat"
    },
    "2026-09-21": {
     "move_pct": 6.39,
     "regime": "trend"
    },
    "2026-09-22": {
     "move_pct": -0.4,
     "regime": "flat"
    },
    "2026-09-23": {
     "move_pct": -2.04,
     "regime": "trend"
    },
    "2026-09-24": {
     "move_pct": 0.02,
     "regime": "flat"
    },
    "2026-09-25": {
     "move_pct": -0.46,
     "regime": "flat"
    },
    "2026-09-26": {
     "move_pct": 0.36,
     "regime": "flat"
    },
    "2026-09-27": {
     "move_pct": 0.2,
     "regime": "flat"
    },
    "2026-09-28": {
     "move_pct": -1.19,
     "regime": "flat"
    },
    "2026-09-29": {
     "move_pct": 0.22,
     "regime": "flat"
    },
    "2026-09-30": {
     "move_pct": -0.22,
     "regime": "flat"
    }
   },
   "grok_era": {
    "ids_in_window": [
     "grok-4.6"
    ],
    "n_grok45": 0,
    "n_grok46": 6300,
    "n_grok45_rows": 0,
    "n_grok46_rows": 6300,
    "first_grok46_slot": "2026-09-01T00:01:00+00:00",
    "last_grok45_slot": null,
    "first_grok45_slot": null,
    "flip_at": "2026-08-24T09:22:00+00:00",
    "flip_inside_window": false,
    "prev_window": {
     "n_grok45_rows": 4520,
     "n_grok46_rows": 1570
    },
    "merged_model_id": "grok-4.6",
    "merged_label": "grok-4.6",
    "lineage_ids": [
     "grok-4.5",
     "grok-4.6"
    ],
    "lineage_source": "benchmarks.config.lineage_ids(head) for each of the 7 heads + MODEL_SUCCESSION[claude-opus-5=('claude-opus-4.8',), grok-4.6=('grok-4.5',), qwen-3.8-max=('qwen-3.7-max',)]",
    "lineage_warnings": [],
    "rows_remapped_a_plus_b": 4520,
    "note": "window MONTH [2026-09-01T00:00:00+00:00, 2026-10-01T00:00:00+00:00): grok-4.5 rows 0, grok-4.6 rows 6300; flip 2026-08-24T09:22:00+00:00 is NOT inside this window. All per-model aggregates use the lineage splice grok-4.5 -> grok-4.6 (one row, labelled 'grok-4.6'). See lineage_era for the same facts across all 7 heads.",
    "cells_with_two_grok_rows": 0
   },
   "lineage_era": {
    "window_key": "MONTH",
    "heads": [
     "claude-fable-5",
     "claude-opus-5",
     "deepseek-v4-pro",
     "gemini-3.1-pro",
     "gpt-5.6-sol",
     "grok-4.6",
     "qwen-3.8-max"
    ],
    "lineage_map": {
     "claude-opus-4.8": "claude-opus-5",
     "grok-4.5": "grok-4.6",
     "qwen-3.7-max": "qwen-3.8-max"
    },
    "legacy_by_head": {
     "claude-fable-5": [],
     "claude-opus-5": [
      "claude-opus-4.8"
     ],
     "deepseek-v4-pro": [],
     "gemini-3.1-pro": [],
     "gpt-5.6-sol": [],
     "grok-4.6": [
      "grok-4.5"
     ],
     "qwen-3.8-max": [
      "qwen-3.7-max"
     ]
    },
    "lineage_source": "benchmarks.config.lineage_ids(head) for each of the 7 heads + MODEL_SUCCESSION[claude-opus-5=('claude-opus-4.8',), grok-4.6=('grok-4.5',), qwen-3.8-max=('qwen-3.7-max',)]",
    "lineage_resolved_heads": [
     "claude-fable-5",
     "claude-opus-5",
     "deepseek-v4-pro",
     "gemini-3.1-pro",
     "gpt-5.6-sol",
     "grok-4.6",
     "qwen-3.8-max"
    ],
    "lineage_warnings": [],
    "per_head": {
     "claude-fable-5": {
      "legacy_ids": [],
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {},
      "n_rows_remapped_prev_window": {},
      "by_legacy_id": {},
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-01T00:01:00+00:00",
      "last_successor_slot": "2026-09-30T23:01:00+00:00",
      "n_rows_successor": 6300,
      "spliced_in_window": false,
      "label": "claude-fable-5"
     },
     "claude-opus-5": {
      "legacy_ids": [
       "claude-opus-4.8"
      ],
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {
       "claude-opus-4.8": 0
      },
      "n_rows_remapped_prev_window": {
       "claude-opus-4.8": 0
      },
      "by_legacy_id": {
       "claude-opus-4.8": {
        "n_rows_remapped": {
         "MONTH": 0,
         "prev_window": 0
        },
        "first_slot": null,
        "last_slot": null,
        "first_slot_prev_window": null,
        "last_slot_prev_window": null
       }
      },
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-01T00:01:00+00:00",
      "last_successor_slot": "2026-09-30T23:01:00+00:00",
      "n_rows_successor": 6300,
      "spliced_in_window": false,
      "label": "claude-opus-5"
     },
     "deepseek-v4-pro": {
      "legacy_ids": [],
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {},
      "n_rows_remapped_prev_window": {},
      "by_legacy_id": {},
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-01T00:01:00+00:00",
      "last_successor_slot": "2026-09-30T23:01:00+00:00",
      "n_rows_successor": 6300,
      "spliced_in_window": false,
      "label": "deepseek-v4-pro"
     },
     "gemini-3.1-pro": {
      "legacy_ids": [],
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {},
      "n_rows_remapped_prev_window": {},
      "by_legacy_id": {},
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-01T00:01:00+00:00",
      "last_successor_slot": "2026-09-30T23:01:00+00:00",
      "n_rows_successor": 6300,
      "spliced_in_window": false,
      "label": "gemini-3.1-pro"
     },
     "gpt-5.6-sol": {
      "legacy_ids": [],
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {},
      "n_rows_remapped_prev_window": {},
      "by_legacy_id": {},
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-01T00:01:00+00:00",
      "last_successor_slot": "2026-09-30T23:01:00+00:00",
      "n_rows_successor": 6300,
      "spliced_in_window": false,
      "label": "gpt-5.6-sol"
     },
     "grok-4.6": {
      "legacy_ids": [
       "grok-4.5"
      ],
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {
       "grok-4.5": 0
      },
      "n_rows_remapped_prev_window": {
       "grok-4.5": 4520
      },
      "by_legacy_id": {
       "grok-4.5": {
        "n_rows_remapped": {
         "MONTH": 0,
         "prev_window": 4520
        },
        "first_slot": null,
        "last_slot": null,
        "first_slot_prev_window": "2026-08-01T00:01:00+00:00",
        "last_slot_prev_window": "2026-08-24T09:01:00+00:00"
       }
      },
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-01T00:01:00+00:00",
      "last_successor_slot": "2026-09-30T23:01:00+00:00",
      "n_rows_successor": 6300,
      "spliced_in_window": false,
      "label": "grok-4.6"
     },
     "qwen-3.8-max": {
      "legacy_ids": [
       "qwen-3.7-max"
      ],
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {
       "qwen-3.7-max": 0
      },
      "n_rows_remapped_prev_window": {
       "qwen-3.7-max": 870
      },
      "by_legacy_id": {
       "qwen-3.7-max": {
        "n_rows_remapped": {
         "MONTH": 0,
         "prev_window": 870
        },
        "first_slot": null,
        "last_slot": null,
        "first_slot_prev_window": "2026-08-01T00:01:00+00:00",
        "last_slot_prev_window": "2026-08-05T09:01:00+00:00"
       }
      },
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-01T00:01:00+00:00",
      "last_successor_slot": "2026-09-30T23:01:00+00:00",
      "n_rows_successor": 6300,
      "spliced_in_window": false,
      "label": "qwen-3.8-max"
     }
    },
    "labels": {
     "claude-fable-5": "claude-fable-5",
     "claude-opus-5": "claude-opus-5",
     "deepseek-v4-pro": "deepseek-v4-pro",
     "gemini-3.1-pro": "gemini-3.1-pro",
     "gpt-5.6-sol": "gpt-5.6-sol",
     "grok-4.6": "grok-4.6",
     "qwen-3.8-max": "qwen-3.8-max"
    },
    "rows_remapped_window": 0,
    "rows_remapped_prev_window": 5390,
    "note": "Only the 7 current models are tracked; earlier versions are folded into their successors' lineage. Every per-model aggregate in this pack sees the merged head id; the raw id survives in model_raw. Labels and era spans are generated from the pulled rows, not hardcoded.",
    "cells_with_two_rows_per_head": {
     "claude-fable-5": 0,
     "claude-opus-5": 0,
     "deepseek-v4-pro": 0,
     "gemini-3.1-pro": 0,
     "gpt-5.6-sol": 0,
     "grok-4.6": 0,
     "qwen-3.8-max": 0
    }
   },
   "series_density": {
    "1d": {
     "days_with_slots": 30,
     "expected_days": 30,
     "full_daily_coverage": true,
     "in_fh_gate": true,
     "n_slots": 30,
     "n_rows": 2100,
     "days": [
      "2026-09-01",
      "2026-09-02",
      "2026-09-03",
      "2026-09-04",
      "2026-09-05",
      "2026-09-06",
      "2026-09-07",
      "2026-09-08",
      "2026-09-09",
      "2026-09-10",
      "2026-09-11",
      "2026-09-12",
      "2026-09-13",
      "2026-09-14",
      "2026-09-15",
      "2026-09-16",
      "2026-09-17",
      "2026-09-18",
      "2026-09-19",
      "2026-09-20",
      "2026-09-21",
      "2026-09-22",
      "2026-09-23",
      "2026-09-24",
      "2026-09-25",
      "2026-09-26",
      "2026-09-27",
      "2026-09-28",
      "2026-09-29",
      "2026-09-30"
     ],
     "missing_days": []
    },
    "1h": {
     "days_with_slots": 30,
     "expected_days": 30,
     "full_daily_coverage": true,
     "in_fh_gate": true,
     "n_slots": 720,
     "n_rows": 25200,
     "days": [
      "2026-09-01",
      "2026-09-02",
      "2026-09-03",
      "2026-09-04",
      "2026-09-05",
      "2026-09-06",
      "2026-09-07",
      "2026-09-08",
      "2026-09-09",
      "2026-09-10",
      "2026-09-11",
      "2026-09-12",
      "2026-09-13",
      "2026-09-14",
      "2026-09-15",
      "2026-09-16",
      "2026-09-17",
      "2026-09-18",
      "2026-09-19",
      "2026-09-20",
      "2026-09-21",
      "2026-09-22",
      "2026-09-23",
      "2026-09-24",
      "2026-09-25",
      "2026-09-26",
      "2026-09-27",
      "2026-09-28",
      "2026-09-29",
      "2026-09-30"
     ],
     "missing_days": []
    },
    "1m": {
     "days_with_slots": 30,
     "expected_days": 30,
     "full_daily_coverage": true,
     "in_fh_gate": false,
     "n_slots": 30,
     "n_rows": 2100,
     "days": [
      "2026-09-01",
      "2026-09-02",
      "2026-09-03",
      "2026-09-04",
      "2026-09-05",
      "2026-09-06",
      "2026-09-07",
      "2026-09-08",
      "2026-09-09",
      "2026-09-10",
      "2026-09-11",
      "2026-09-12",
      "2026-09-13",
      "2026-09-14",
      "2026-09-15",
      "2026-09-16",
      "2026-09-17",
      "2026-09-18",
      "2026-09-19",
      "2026-09-20",
      "2026-09-21",
      "2026-09-22",
      "2026-09-23",
      "2026-09-24",
      "2026-09-25",
      "2026-09-26",
      "2026-09-27",
      "2026-09-28",
      "2026-09-29",
      "2026-09-30"
     ],
     "missing_days": []
    },
    "1w": {
     "days_with_slots": 30,
     "expected_days": 30,
     "full_daily_coverage": true,
     "in_fh_gate": false,
     "n_slots": 30,
     "n_rows": 2100,
     "days": [
      "2026-09-01",
      "2026-09-02",
      "2026-09-03",
      "2026-09-04",
      "2026-09-05",
      "2026-09-06",
      "2026-09-07",
      "2026-09-08",
      "2026-09-09",
      "2026-09-10",
      "2026-09-11",
      "2026-09-12",
      "2026-09-13",
      "2026-09-14",
      "2026-09-15",
      "2026-09-16",
      "2026-09-17",
      "2026-09-18",
      "2026-09-19",
      "2026-09-20",
      "2026-09-21",
      "2026-09-22",
      "2026-09-23",
      "2026-09-24",
      "2026-09-25",
      "2026-09-26",
      "2026-09-27",
      "2026-09-28",
      "2026-09-29",
      "2026-09-30"
     ],
     "missing_days": []
    },
    "4h": {
     "days_with_slots": 30,
     "expected_days": 30,
     "full_daily_coverage": true,
     "in_fh_gate": true,
     "n_slots": 180,
     "n_rows": 12600,
     "days": [
      "2026-09-01",
      "2026-09-02",
      "2026-09-03",
      "2026-09-04",
      "2026-09-05",
      "2026-09-06",
      "2026-09-07",
      "2026-09-08",
      "2026-09-09",
      "2026-09-10",
      "2026-09-11",
      "2026-09-12",
      "2026-09-13",
      "2026-09-14",
      "2026-09-15",
      "2026-09-16",
      "2026-09-17",
      "2026-09-18",
      "2026-09-19",
      "2026-09-20",
      "2026-09-21",
      "2026-09-22",
      "2026-09-23",
      "2026-09-24",
      "2026-09-25",
      "2026-09-26",
      "2026-09-27",
      "2026-09-28",
      "2026-09-29",
      "2026-09-30"
     ],
     "missing_days": []
    }
   },
   "model_roster": {
    "current": [
     "claude-fable-5",
     "claude-opus-5",
     "deepseek-v4-pro",
     "gemini-3.1-pro",
     "gpt-5.6-sol",
     "grok-4.6",
     "qwen-3.8-max"
    ],
    "current_count": 7,
    "current_raw_ids_in_window": [
     "claude-fable-5",
     "claude-opus-5",
     "deepseek-v4-pro",
     "gemini-3.1-pro",
     "gpt-5.6-sol",
     "grok-4.6",
     "qwen-3.8-max"
    ],
    "archived_legacy": [
     "grok-4.5",
     "qwen-3.7-max",
     "claude-opus-4.8"
    ],
    "archived_legacy_count": 3,
    "archived_legacy_detail": [
     {
      "model": "grok-4.5",
      "n_rows_since": 11128,
      "first_slot": "2026-07-15T18:01:00+00:00",
      "last_slot": "2026-08-24T09:01:00+00:00"
     },
     {
      "model": "qwen-3.7-max",
      "n_rows_since": 7479,
      "first_slot": "2026-07-15T18:01:00+00:00",
      "last_slot": "2026-08-05T09:01:00+00:00"
     },
     {
      "model": "claude-opus-4.8",
      "n_rows_since": 6315,
      "first_slot": "2026-07-15T18:01:00+00:00",
      "last_slot": "2026-07-30T08:01:00+00:00"
     }
    ],
    "archived_excluding_lineage_merged": [],
    "tracked_total": 10,
    "canon_expected": {
     "current": 7,
     "archived_legacy": 4,
     "tracked_total": 11
    },
    "matches_canon_11_7_4": false,
    "roster_rule_w213": "7 models tracked (current line-up; earlier versions folded into their successors' lineage)",
    "canon_expected_w213": {
     "current": 7
    },
    "heads_w213": [
     "claude-fable-5",
     "claude-opus-5",
     "deepseek-v4-pro",
     "gemini-3.1-pro",
     "gpt-5.6-sol",
     "grok-4.6",
     "qwen-3.8-max"
    ],
    "matches_canon_7_current": true,
    "heads_missing_in_window": [],
    "heads_unexpected_in_window": [],
    "roster_since": "2026-07-11T00:00:00+00:00",
    "note": "current = merged-lineage model ids emitting inside the window (legacy ids are spliced into their successor); archived legacy = raw ids seen since 2026-07-11 that no longer emit in the window. Models retired before 2026-07-11 are not visible to this query. The canon checks are DESCRIPTIVE: if the data says otherwise, the data wins and is printed."
   }
  },
  "gap_drift": {
   "rows": [
    {
     "model": "qwen-3.8-max",
     "gap_pp_by_week": [
      16.6,
      18.8,
      9.2,
      15.6
     ],
     "month_gap_pp": 14.7,
     "gap_slope_pp_per_week": -1.26,
     "gap_range_pp": 9.6,
     "weeks_narrowing": 1,
     "direction": "narrowing",
     "direction_reason": "OLS slope over weeks 1..4"
    },
    {
     "model": "deepseek-v4-pro",
     "gap_pp_by_week": [
      16.5,
      18.4,
      12.4,
      17.0
     ],
     "month_gap_pp": 15.3,
     "gap_slope_pp_per_week": -0.45,
     "gap_range_pp": 6.0,
     "weeks_narrowing": 1,
     "direction": "flat",
     "direction_reason": "abs(slope) < 0.5 pp/week"
    },
    {
     "model": "claude-fable-5",
     "gap_pp_by_week": [
      17.9,
      23.6,
      9.1,
      14.7
     ],
     "month_gap_pp": 15.6,
     "gap_slope_pp_per_week": -2.41,
     "gap_range_pp": 14.5,
     "weeks_narrowing": 1,
     "direction": "narrowing",
     "direction_reason": "OLS slope over weeks 1..4"
    },
    {
     "model": "grok-4.6",
     "gap_pp_by_week": [
      22.3,
      20.5,
      10.7,
      13.5
     ],
     "month_gap_pp": 15.8,
     "gap_slope_pp_per_week": -3.62,
     "gap_range_pp": 11.6,
     "weeks_narrowing": 2,
     "direction": "narrowing",
     "direction_reason": "OLS slope over weeks 1..4"
    },
    {
     "model": "claude-opus-5",
     "gap_pp_by_week": [
      18.8,
      24.5,
      9.9,
      14.0
     ],
     "month_gap_pp": 15.9,
     "gap_slope_pp_per_week": -2.9,
     "gap_range_pp": 14.6,
     "weeks_narrowing": 1,
     "direction": "narrowing",
     "direction_reason": "OLS slope over weeks 1..4"
    },
    {
     "model": "gemini-3.1-pro",
     "gap_pp_by_week": [
      19.7,
      23.6,
      14.0,
      16.2
     ],
     "month_gap_pp": 18.0,
     "gap_slope_pp_per_week": -2.01,
     "gap_range_pp": 9.6,
     "weeks_narrowing": 1,
     "direction": "narrowing",
     "direction_reason": "OLS slope over weeks 1..4"
    },
    {
     "model": "gpt-5.6-sol",
     "gap_pp_by_week": [
      26.2,
      28.4,
      18.4,
      21.0
     ],
     "month_gap_pp": 23.5,
     "gap_slope_pp_per_week": -2.56,
     "gap_range_pp": 10.0,
     "weeks_narrowing": 1,
     "direction": "narrowing",
     "direction_reason": "OLS slope over weeks 1..4"
    },
    {
     "model": "Field (all models)",
     "is_field": true,
     "gap_pp_by_week": [
      19.6,
      22.5,
      12.1,
      16.1
     ],
     "month_gap_pp": 17.0,
     "gap_slope_pp_per_week": -2.09,
     "gap_range_pp": 10.4,
     "weeks_narrowing": 1,
     "direction": "narrowing"
    }
   ],
   "slope_rule": "flat if |gap_slope_pp_per_week| < 0.5, else widening (slope > 0) / narrowing (slope < 0)",
   "flat_rule_pp_per_week": 0.5,
   "source": "weekly packs calibration.per_model / calibration.field (frozen cutoffs)",
   "field_by_week": {
    "W1": {
     "n": 4520,
     "mean_conf": 62.4,
     "hit_rate": 0.4283,
     "gap_pp": 19.6,
     "brier": 0.2874
    },
    "W2": {
     "n": 4468,
     "mean_conf": 62.1,
     "hit_rate": 0.3957,
     "gap_pp": 22.5,
     "brier": 0.2948
    },
    "W3": {
     "n": 5598,
     "mean_conf": 62.8,
     "hit_rate": 0.5075,
     "gap_pp": 12.1,
     "brier": 0.2669
    },
    "W4": {
     "n": 4958,
     "mean_conf": 63.0,
     "hit_rate": 0.4683,
     "gap_pp": 16.1,
     "brier": 0.2751
    }
   },
   "weeks": {
    "W1": "Aug 31-Sep 6",
    "W2": "Sep 7-13",
    "W3": "Sep 14-20",
    "W4": "Sep 21-27"
   }
  },
  "bucket_drift": {
   "rows": [
    {
     "bucket": "50-60",
     "week": "W1",
     "n": 900,
     "mean_conf": 56.9,
     "hit_rate": 0.4756
    },
    {
     "bucket": "50-60",
     "week": "W2",
     "n": 1261,
     "mean_conf": 56.9,
     "hit_rate": 0.4322
    },
    {
     "bucket": "50-60",
     "week": "W3",
     "n": 1166,
     "mean_conf": 57.0,
     "hit_rate": 0.506
    },
    {
     "bucket": "50-60",
     "week": "W4",
     "n": 1037,
     "mean_conf": 57.0,
     "hit_rate": 0.4282
    },
    {
     "bucket": "60-70",
     "week": "W1",
     "n": 2500,
     "mean_conf": 62.9,
     "hit_rate": 0.4356
    },
    {
     "bucket": "60-70",
     "week": "W2",
     "n": 2719,
     "mean_conf": 62.7,
     "hit_rate": 0.3777
    },
    {
     "bucket": "60-70",
     "week": "W3",
     "n": 3779,
     "mean_conf": 62.9,
     "hit_rate": 0.5112
    },
    {
     "bucket": "60-70",
     "week": "W4",
     "n": 3319,
     "mean_conf": 63.1,
     "hit_rate": 0.4739
    },
    {
     "bucket": "70-80",
     "week": "W1",
     "n": 417,
     "mean_conf": 72.7,
     "hit_rate": 0.4245
    },
    {
     "bucket": "70-80",
     "week": "W2",
     "n": 472,
     "mean_conf": 73.1,
     "hit_rate": 0.3983
    },
    {
     "bucket": "70-80",
     "week": "W3",
     "n": 644,
     "mean_conf": 72.7,
     "hit_rate": 0.4891
    },
    {
     "bucket": "70-80",
     "week": "W4",
     "n": 575,
     "mean_conf": 73.0,
     "hit_rate": 0.513
    },
    {
     "bucket": "80-100",
     "week": "W1",
     "n": 7,
     "mean_conf": 81.4,
     "hit_rate": 0.5714
    },
    {
     "bucket": "80-100",
     "week": "W2",
     "n": 1,
     "mean_conf": 82,
     "hit_rate": 0.0
    },
    {
     "bucket": "80-100",
     "week": "W3",
     "n": 8,
     "mean_conf": 80.8,
     "hit_rate": 0.375
    },
    {
     "bucket": "80-100",
     "week": "W4",
     "n": 17,
     "mean_conf": 80,
     "hit_rate": 0.4706
    }
   ],
   "level": "field (all models pooled)",
   "source": "month_pull_split_by_slot_week (cutoff 2026-10-01T16:00:00+00:00)"
  },
  "prior_window_calibration": {
   "per_model": [
    {
     "model": "claude-opus-5",
     "n": 2281,
     "n_mature_all": 5865,
     "coverage": 0.3889,
     "hit_rate": 0.4779,
     "wilson_95": [
      0.4574,
      0.4984
     ],
     "mean_conf": 61.0,
     "gap_pp": 13.2,
     "brier": 0.2677,
     "insufficient": false,
     "buckets": [
      {
       "bucket": "50-60",
       "n": 528,
       "mean_conf": 57.9,
       "hit_rate": 0.4943
      },
      {
       "bucket": "60-70",
       "n": 1753,
       "mean_conf": 61.9,
       "hit_rate": 0.4729
      },
      {
       "bucket": "70-80",
       "n": 0,
       "mean_conf": null,
       "hit_rate": null
      },
      {
       "bucket": "80-100",
       "n": 0,
       "mean_conf": null,
       "hit_rate": null
      }
     ],
     "by_fh": {
      "1h": {
       "n": 1357,
       "hit_rate": 0.4724
      },
      "4h": {
       "n": 761,
       "hit_rate": 0.477
      },
      "1d": {
       "n": 163,
       "hit_rate": 0.5276
      }
     }
    },
    {
     "model": "claude-fable-5",
     "n": 2812,
     "n_mature_all": 5858,
     "coverage": 0.48,
     "hit_rate": 0.4673,
     "wilson_95": [
      0.4489,
      0.4858
     ],
     "mean_conf": 60.6,
     "gap_pp": 13.9,
     "brier": 0.2689,
     "insufficient": false,
     "buckets": [
      {
       "bucket": "50-60",
       "n": 900,
       "mean_conf": 56.6,
       "hit_rate": 0.4611
      },
      {
       "bucket": "60-70",
       "n": 1912,
       "mean_conf": 62.5,
       "hit_rate": 0.4702
      },
      {
       "bucket": "70-80",
       "n": 0,
       "mean_conf": null,
       "hit_rate": null
      },
      {
       "bucket": "80-100",
       "n": 0,
       "mean_conf": null,
       "hit_rate": null
      }
     ],
     "by_fh": {
      "1h": {
       "n": 1776,
       "hit_rate": 0.4651
      },
      "4h": {
       "n": 861,
       "hit_rate": 0.4623
      },
      "1d": {
       "n": 175,
       "hit_rate": 0.5143
      }
     }
    },
    {
     "model": "grok-4.6",
     "n": 2708,
     "n_mature_all": 5860,
     "coverage": 0.4621,
     "hit_rate": 0.4527,
     "wilson_95": [
      0.4341,
      0.4715
     ],
     "mean_conf": 60.3,
     "gap_pp": 15.1,
     "brier": 0.271,
     "insufficient": false,
     "buckets": [
      {
       "bucket": "50-60",
       "n": 1324,
       "mean_conf": 57.5,
       "hit_rate": 0.4434
      },
      {
       "bucket": "60-70",
       "n": 1370,
       "mean_conf": 62.9,
       "hit_rate": 0.4613
      },
      {
       "bucket": "70-80",
       "n": 14,
       "mean_conf": 71.1,
       "hit_rate": 0.5
      },
      {
       "bucket": "80-100",
       "n": 0,
       "mean_conf": null,
       "hit_rate": null
      }
     ],
     "by_fh": {
      "1h": {
       "n": 1713,
       "hit_rate": 0.4513
      },
      "4h": {
       "n": 851,
       "hit_rate": 0.4512
      },
      "1d": {
       "n": 144,
       "hit_rate": 0.4792
      }
     }
    },
    {
     "model": "qwen-3.8-max",
     "n": 3001,
     "n_mature_all": 5809,
     "coverage": 0.5166,
     "hit_rate": 0.4565,
     "wilson_95": [
      0.4388,
      0.4744
     ],
     "mean_conf": 60.3,
     "gap_pp": 14.7,
     "brier": 0.273,
     "insufficient": false,
     "buckets": [
      {
       "bucket": "50-60",
       "n": 1306,
       "mean_conf": 56.7,
       "hit_rate": 0.4763
      },
      {
       "bucket": "60-70",
       "n": 1488,
       "mean_conf": 62.4,
       "hit_rate": 0.4442
      },
      {
       "bucket": "70-80",
       "n": 161,
       "mean_conf": 73.8,
       "hit_rate": 0.441
      },
      {
       "bucket": "80-100",
       "n": 5,
       "mean_conf": 82.8,
       "hit_rate": 0.2
      }
     ],
     "by_fh": {
      "1h": {
       "n": 1887,
       "hit_rate": 0.4542
      },
      "4h": {
       "n": 933,
       "hit_rate": 0.4598
      },
      "1d": {
       "n": 181,
       "hit_rate": 0.4641
      }
     }
    },
    {
     "model": "deepseek-v4-pro",
     "n": 2578,
     "n_mature_all": 5863,
     "coverage": 0.4397,
     "hit_rate": 0.4554,
     "wilson_95": [
      0.4362,
      0.4747
     ],
     "mean_conf": 60.9,
     "gap_pp": 15.4,
     "brier": 0.2752,
     "insufficient": false,
     "buckets": [
      {
       "bucket": "50-60",
       "n": 853,
       "mean_conf": 56.6,
       "hit_rate": 0.4467
      },
      {
       "bucket": "60-70",
       "n": 1566,
       "mean_conf": 62.5,
       "hit_rate": 0.4636
      },
      {
       "bucket": "70-80",
       "n": 140,
       "mean_conf": 71.9,
       "hit_rate": 0.4
      },
      {
       "bucket": "80-100",
       "n": 4,
       "mean_conf": 80,
       "hit_rate": 0.25
      }
     ],
     "by_fh": {
      "1h": {
       "n": 1576,
       "hit_rate": 0.4505
      },
      "4h": {
       "n": 851,
       "hit_rate": 0.463
      },
      "1d": {
       "n": 151,
       "hit_rate": 0.4636
      }
     }
    },
    {
     "model": "gemini-3.1-pro",
     "n": 3033,
     "n_mature_all": 5859,
     "coverage": 0.5177,
     "hit_rate": 0.4761,
     "wilson_95": [
      0.4584,
      0.4939
     ],
     "mean_conf": 66.4,
     "gap_pp": 18.8,
     "brier": 0.2881,
     "insufficient": false,
     "buckets": [
      {
       "bucket": "50-60",
       "n": 25,
       "mean_conf": 55,
       "hit_rate": 0.48
      },
      {
       "bucket": "60-70",
       "n": 1953,
       "mean_conf": 63.0,
       "hit_rate": 0.4803
      },
      {
       "bucket": "70-80",
       "n": 1028,
       "mean_conf": 72.6,
       "hit_rate": 0.465
      },
      {
       "bucket": "80-100",
       "n": 27,
       "mean_conf": 80.7,
       "hit_rate": 0.5926
      }
     ],
     "by_fh": {
      "1h": {
       "n": 1951,
       "hit_rate": 0.4741
      },
      "4h": {
       "n": 912,
       "hit_rate": 0.466
      },
      "1d": {
       "n": 170,
       "hit_rate": 0.5529
      }
     }
    },
    {
     "model": "gpt-5.6-sol",
     "n": 2970,
     "n_mature_all": 5865,
     "coverage": 0.5064,
     "hit_rate": 0.4586,
     "wilson_95": [
      0.4407,
      0.4765
     ],
     "mean_conf": 67.7,
     "gap_pp": 21.8,
     "brier": 0.3005,
     "insufficient": false,
     "buckets": [
      {
       "bucket": "50-60",
       "n": 16,
       "mean_conf": 58.6,
       "hit_rate": 0.375
      },
      {
       "bucket": "60-70",
       "n": 2078,
       "mean_conf": 65.4,
       "hit_rate": 0.4808
      },
      {
       "bucket": "70-80",
       "n": 870,
       "mean_conf": 73.3,
       "hit_rate": 0.4069
      },
      {
       "bucket": "80-100",
       "n": 6,
       "mean_conf": 81,
       "hit_rate": 0.5
      }
     ],
     "by_fh": {
      "1h": {
       "n": 1850,
       "hit_rate": 0.4622
      },
      "4h": {
       "n": 956,
       "hit_rate": 0.4508
      },
      "1d": {
       "n": 164,
       "hit_rate": 0.4634
      }
     }
    }
   ],
   "field": {
    "n": 19383,
    "hit_rate": 0.4633,
    "wilson_95": [
     0.4563,
     0.4703
    ],
    "mean_conf": 62.6,
    "gap_pp": 16.3,
    "brier": 0.2784,
    "insufficient": false,
    "buckets": [
     {
      "bucket": "50-60",
      "n": 4952,
      "mean_conf": 57.0,
      "hit_rate": 0.4612
     },
     {
      "bucket": "60-70",
      "n": 12120,
      "mean_conf": 63.0,
      "hit_rate": 0.469
     },
     {
      "bucket": "70-80",
      "n": 2213,
      "mean_conf": 72.9,
      "hit_rate": 0.4365
     },
     {
      "bucket": "80-100",
      "n": 42,
      "mean_conf": 81.0,
      "hit_rate": 0.5
     }
    ]
   }
  },
  "prior_window_trading": [
   {
    "model": "claude-opus-5",
    "trades": 2281,
    "wr": 0.3792,
    "net_pnl": -25.2,
    "gross_pnl": 202.9,
    "max_dd": -160.92,
    "n_trades": 2281,
    "pnl_net_usd": -25.2,
    "pnl_gross_usd": 202.9,
    "max_dd_usd": -160.92
   },
   {
    "model": "claude-fable-5",
    "trades": 2812,
    "wr": 0.3617,
    "net_pnl": -96.55,
    "gross_pnl": 184.65,
    "max_dd": -210.11,
    "n_trades": 2812,
    "pnl_net_usd": -96.55,
    "pnl_gross_usd": 184.65,
    "max_dd_usd": -210.11
   },
   {
    "model": "gemini-3.1-pro",
    "trades": 3033,
    "wr": 0.3627,
    "net_pnl": -98.64,
    "gross_pnl": 204.66,
    "max_dd": -197.07,
    "n_trades": 3033,
    "pnl_net_usd": -98.64,
    "pnl_gross_usd": 204.66,
    "max_dd_usd": -197.07
   },
   {
    "model": "deepseek-v4-pro",
    "trades": 2578,
    "wr": 0.3658,
    "net_pnl": -176.06,
    "gross_pnl": 81.74,
    "max_dd": -182.97,
    "n_trades": 2578,
    "pnl_net_usd": -176.06,
    "pnl_gross_usd": 81.74,
    "max_dd_usd": -182.97
   },
   {
    "model": "qwen-3.8-max",
    "trades": 3001,
    "wr": 0.3505,
    "net_pnl": -198.93,
    "gross_pnl": 101.17,
    "max_dd": -231.65,
    "n_trades": 3001,
    "pnl_net_usd": -198.93,
    "pnl_gross_usd": 101.17,
    "max_dd_usd": -231.65
   },
   {
    "model": "gpt-5.6-sol",
    "trades": 2970,
    "wr": 0.3525,
    "net_pnl": -215.58,
    "gross_pnl": 81.42,
    "max_dd": -235.74,
    "n_trades": 2970,
    "pnl_net_usd": -215.58,
    "pnl_gross_usd": 81.42,
    "max_dd_usd": -235.74
   },
   {
    "model": "grok-4.6",
    "trades": 2708,
    "wr": 0.3353,
    "net_pnl": -243.84,
    "gross_pnl": 26.96,
    "max_dd": -247.38,
    "n_trades": 2708,
    "pnl_net_usd": -243.84,
    "pnl_gross_usd": 26.96,
    "max_dd_usd": -247.38
   }
  ],
  "verdict_block": {
   "rule": "Verdict rule: each row states one reading of the month; a week agrees when it shows the same reading (same sign, or the same name). Confirmed = 3 or 4 of the 4 weeks agree with the month; Inconclusive = 2; Rejected = 0 or 1. Weekly cells come from the frozen weekly packs (7-line roster); the month is the pooled Sep 1-30 pull. W1 straddles the month edge (Aug 31).",
   "header": [
    "Metric",
    "W1 Aug 31-Sep 6",
    "W2 Sep 7-13",
    "W3 Sep 14-20",
    "W4 Sep 21-27",
    "Month",
    "Verdict"
   ],
   "widths_mm": [
    36,
    26.5,
    22,
    22,
    22,
    18,
    27.5
   ],
   "weeks_source": "frozen weekly packs (weeks.W1..W4 of the monthly pack, 7-line roster)",
   "month_source": "the pooled Sep 1-30 pull (month block)",
   "rows": [
    {
     "metric": "Field gap (conf - hit), pp",
     "weeks": {
      "W1": {
       "value": "+19.6",
       "reading": "positive"
      },
      "W2": {
       "value": "+22.5",
       "reading": "positive"
      },
      "W3": {
       "value": "+12.1",
       "reading": "positive"
      },
      "W4": {
       "value": "+16.1",
       "reading": "positive"
      }
     },
     "month": {
      "value": "+17.0",
      "reading": "positive"
     },
     "agree_count": 4,
     "verdict": "Confirmed (4/4)"
    },
    {
     "metric": "Lowest-Brier model",
     "weeks": {
      "W1": {
       "value": "qwen-3.8",
       "reading": "qwen-3.8-max"
      },
      "W2": {
       "value": "qwen-3.8",
       "reading": "qwen-3.8-max"
      },
      "W3": {
       "value": "fable-5",
       "reading": "claude-fable-5"
      },
      "W4": {
       "value": "qwen-3.8",
       "reading": "qwen-3.8-max"
      }
     },
     "month": {
      "value": "qwen-3.8",
      "reading": "qwen-3.8-max"
     },
     "agree_count": 3,
     "verdict": "Confirmed (3/4)"
    },
    {
     "metric": "Widest-gap model",
     "weeks": {
      "W1": {
       "value": "gpt-5.6",
       "reading": "gpt-5.6-sol"
      },
      "W2": {
       "value": "gpt-5.6",
       "reading": "gpt-5.6-sol"
      },
      "W3": {
       "value": "gpt-5.6",
       "reading": "gpt-5.6-sol"
      },
      "W4": {
       "value": "gpt-5.6",
       "reading": "gpt-5.6-sol"
      }
     },
     "month": {
      "value": "gpt-5.6",
      "reading": "gpt-5.6-sol"
     },
     "agree_count": 4,
     "verdict": "Confirmed (4/4)"
    }
   ]
  }
 },
 "key_finding": {
  "label": "KEY FINDING · OBSERVATION (one monthly window)",
  "text": "Over the month the field's overconfidence gap read +17.0pp against 62.6 stated mean confidence, the weekly gaps ran +12.1pp to +22.5pp inside it, and the field slope across the four weeks is -2.09 pp/week (narrowing).",
  "evidence_level": "observation"
 },
 "key_findings": [
  "**OBSERVATION -- The monthly gap read +17.0pp.** Directional calls hit 45.5% against 62.6 stated mean confidence over 20,682 calls. Field Brier is 0.2796 and 0 of 7 model lines scored below 0.25, the score of an uninformative always-50% predictor. One month, descriptive.",
  "**The field gap slope across the four weeks is -2.09 pp/week (narrowing).** Across those weeks the field gap ran +19.6pp -> +22.5pp -> +12.1pp -> +16.1pp and the per-model slopes split 6 narrowing / 0 widening / 1 flat under the pack's own rule (|slope| < 0.5 pp/week = flat). qwen-3.8-max is the lowest-Brier line (Brier 0.2701); gemini-3.1-pro leads on hit-rate (48.5%).",
  "**The widest weekly swing belongs to claude-opus-5.** Its weekly gap moved over a 14.6 pp range inside one month, against a field range of 10.4 pp. Gap moves against the prior window ran from -0.8pp for gemini-3.1-pro to +2.7pp for claude-opus-5; 2 of 7 lines sit below their prior-window gap.",
  "**Trading, kept separate from every calibration table.** 0 of 7 lines finished net-positive over the month; net PnL ran -$305.20 (gemini-3.1-pro, best) to -$440.88 (deepseek-v4-pro, worst), field -$2554.15."
 ],
 "market_check": {
  "label": "MARKET CHECK · OBSERVATION (September against August)",
  "text": "OBSERVATION — mean |1d move| 1.98% -> 1.91% (-4% rel), BTC realized vol 36.9% -> 34.9% (ann., hourly); field directional accuracy 46.3% -> 45.5% (-0.8pp), 1 of 7 models improved, sim win-rate up for 6 of 7, field sim PnL -$1054.79 -> -$2554.15 (Aug 1-31 vs Sep 1-30; descriptive, one pair of windows, not a claim).",
  "robustness": "Robustness: raw price-sign accuracy 46.0% -> 48.4% — the opposite direction to the trade-based hit rule.",
  "weeks": {
   "A": {
    "days": "2026-08-01..2026-08-31",
    "slots": [
     "2026-08-01T00:00:00+00:00",
     "2026-09-01T00:00:00+00:00"
    ],
    "cutoff": "2026-09-01T16:00:00+00:00",
    "partial": false
   },
   "B": {
    "days": "2026-09-01..2026-09-30",
    "slots": [
     "2026-09-01T00:00:00+00:00",
     "2026-10-01T00:00:00+00:00"
    ],
    "cutoff": "2026-10-01T16:00:00+00:00"
   }
  },
  "price_source": "crypto_spot/1h@:00",
  "accuracy_field": {
   "A": {
    "n": 19383,
    "hit_rate": 0.4633,
    "wilson_95": [
     0.4563,
     0.4703
    ]
   },
   "B": {
    "n": 20682,
    "hit_rate": 0.455,
    "wilson_95": [
     0.4483,
     0.4618
    ]
   },
   "delta_pp": -0.8
  },
  "accuracy_per_model": [
   {
    "model": "gemini-3.1-pro",
    "model_label": "gemini-3.1-pro",
    "A": {
     "n": 3033,
     "hit_rate": 0.4761,
     "wilson_95": [
      0.4584,
      0.4939
     ]
    },
    "B": {
     "n": 3284,
     "hit_rate": 0.4851,
     "wilson_95": [
      0.468,
      0.5022
     ]
    },
    "delta_pp": 0.9
   },
   {
    "model": "deepseek-v4-pro",
    "model_label": "deepseek-v4-pro",
    "A": {
     "n": 2578,
     "hit_rate": 0.4554,
     "wilson_95": [
      0.4362,
      0.4747
     ]
    },
    "B": {
     "n": 3352,
     "hit_rate": 0.4526,
     "wilson_95": [
      0.4358,
      0.4695
     ]
    },
    "delta_pp": -0.3
   },
   {
    "model": "grok-4.6",
    "model_label": "grok-4.6",
    "A": {
     "n": 2708,
     "hit_rate": 0.4527,
     "wilson_95": [
      0.4341,
      0.4715
     ]
    },
    "B": {
     "n": 2271,
     "hit_rate": 0.4439,
     "wilson_95": [
      0.4235,
      0.4644
     ]
    },
    "delta_pp": -0.9
   },
   {
    "model": "qwen-3.8-max",
    "model_label": "qwen-3.8-max",
    "A": {
     "n": 3001,
     "hit_rate": 0.4565,
     "wilson_95": [
      0.4388,
      0.4744
     ]
    },
    "B": {
     "n": 3165,
     "hit_rate": 0.4471,
     "wilson_95": [
      0.4298,
      0.4645
     ]
    },
    "delta_pp": -0.9
   },
   {
    "model": "claude-fable-5",
    "model_label": "claude-fable-5",
    "A": {
     "n": 2812,
     "hit_rate": 0.4673,
     "wilson_95": [
      0.4489,
      0.4858
     ]
    },
    "B": {
     "n": 2945,
     "hit_rate": 0.4537,
     "wilson_95": [
      0.4357,
      0.4717
     ]
    },
    "delta_pp": -1.4
   },
   {
    "model": "gpt-5.6-sol",
    "model_label": "gpt-5.6-sol",
    "A": {
     "n": 2970,
     "hit_rate": 0.4586,
     "wilson_95": [
      0.4407,
      0.4765
     ]
    },
    "B": {
     "n": 3133,
     "hit_rate": 0.4446,
     "wilson_95": [
      0.4273,
      0.4621
     ]
    },
    "delta_pp": -1.4
   },
   {
    "model": "claude-opus-5",
    "model_label": "claude-opus-5",
    "A": {
     "n": 2281,
     "hit_rate": 0.4779,
     "wilson_95": [
      0.4574,
      0.4984
     ]
    },
    "B": {
     "n": 2532,
     "hit_rate": 0.4538,
     "wilson_95": [
      0.4345,
      0.4732
     ]
    },
    "delta_pp": -2.4
   }
  ],
  "raw_sign_field": {
   "A": {
    "n_scored": 19304,
    "hit_rate": 0.4599
   },
   "B": {
    "n_scored": 20654,
    "hit_rate": 0.4837
   }
  },
  "abs_move_1d": {
   "A": 1.979,
   "B": 1.905,
   "delta_pct_rel": -3.7
  },
  "btc_realized_vol_ann_pct_hourly": {
   "A": 36.92,
   "B": 34.88
  },
  "trading_field": {
   "A": {
    "n_trades": 19383,
    "wr": 0.3576,
    "pnl_net_usd": -1054.79,
    "pnl_gross_usd": 883.51
   },
   "B": {
    "n_trades": 20682,
    "wr": 0.384,
    "pnl_net_usd": -2554.15,
    "pnl_gross_usd": -485.95
   }
  },
  "verdict": {
   "models_with_hit_improved": "1 of 7",
   "models_with_rawsign_improved": "7 of 7",
   "models_with_wr_improved": "6 of 7",
   "field_hit_delta_pp": -0.8,
   "field_pnl_net": {
    "A": -1054.79,
    "B": -2554.15
   },
   "abs_move_delta": {
    "1h": {
     "A": 0.325,
     "B": 0.356,
     "delta_pct_rel": 9.5
    },
    "4h": {
     "A": 0.724,
     "B": 0.737,
     "delta_pct_rel": 1.8
    },
    "1d": {
     "A": 1.979,
     "B": 1.905,
     "delta_pct_rel": -3.7
    }
   },
   "btc_vol_ann_pct": {
    "A": 36.92,
    "B": 34.88
   },
   "note": "descriptive, two adjacent windows; hit rule = methodology v1.1 trade-based; raw_sign = price-sign robustness check (closes at :00 vs slots at :01)"
  },
  "lineage_note": "lineage splice ACTIVE for all 7 heads: [('claude-opus-4.8', 'claude-opus-5'), ('grok-4.5', 'grok-4.6'), ('qwen-3.7-max', 'qwen-3.8-max')]. Window MONTH remapped 0 row(s), the previous window 5390. Labels are generated from the pulled rows (see lineage_era).",
  "prior_window_partial": false
 },
 "why_it_matters": "Every MarketMania forecast carries a model-stated confidence from 0 to 100 alongside its direction call. This report checks whether that number tracks reality: on a well-calibrated forecaster, calls made at 70% confidence should hit their direction about 70% of the time. The weekly series carries one point per model per issue. A calendar month carries four weekly points plus a pooled monthly figure and a prior-window baseline, which is what the slope table and the week-by-week confidence buckets below are computed from. Descriptive for this window.",
 "how_to_read_this": "Gap pp = mean stated confidence minus hit-rate, in percentage points; positive means overconfident. Brier is the mean squared error of the stated probability against the realised outcome, so lower is better and 0.25 is what an uninformative always-50% predictor scores. Coverage = calls scored divided by the mature calls available to that model. Confidence buckets are the models' own natural breakpoints, not an arbitrary binning; cells below N=10 are marked insufficient and never used to rank anything. Prediction and trading metrics live in separate sections and are never combined. No model line is lineage-spliced this month (the prior window carries the grok and qwen splices). The monthly rows are one pull at the monthly cutoff (Thu Oct 1, 2026, 16:00 UTC); the weekly rows are the published issues at their own frozen cutoffs, so the two do not have to agree to the last decimal.",
 "practical_implications": [
  "Pooled over a whole month the field's gap is +17.0pp on 20,682 scored calls: stated confidence averaged 62.6 while the direction hit 45.5%.",
  "The field gap spans 10.4 pp across the four weeks set against the month, against a pooled monthly gap of +17.0pp and a prior-window gap of +16.3pp; field mean stated confidence moved 62.6 -> 62.6 over the same pair of windows.",
  "Trading this month finished 0 of 7 lines net-positive against 0 of 7 in the prior window; the pack labels two of the four weeks calm and two volatile."
 ],
 "limitations": [
  "The prior window is the full August: every \"prior\" column, the gray series of the page-1 chart and the market-check A column describe Aug 1-31. It is window A of the same pull, slots 2026-08-01 to 2026-09-01 (first slot actually seen 2026-08-01 00:01 UTC), matured at the prior cutoff Tue Sep 1, 2026, 16:00 UTC under the same engine, the same FH gate and the same hit rule as September -- 19,383 directional calls against 20,682 in the month. Month-over-month deltas are a step between two windows of different length (31 and 30 days).",
  "Two cutoffs live in this issue. The month is frozen at Thu Oct 1, 2026, 16:00 UTC; the four weekly blocks are frozen at their own published cutoffs (W1 Aug 31-Sep 6, W2 Sep 7-13, W3 Sep 14-20, W4 Sep 21-27). A forecast still pending at its week's cutoff is immature in the weekly pack and mature in the month pull, so the month does not equal the sum of the weeks (20,682 vs 19,544 directional, plus 1,826 on the 3 remainder days); W1 also opens on Aug 31, a day the month pull does not hold, so its pack counts 4,520 directional calls against 3,832 for Sep 1-6 inside the month pull -- that gap is arithmetic, not a data problem.",
  "Prediction metrics (this report) and trading metrics are kept in separate sections per methodology -- they are never combined into a single score. 95% Wilson CIs shown are descriptive, not inferential: observations inside one window are dependent, so read them as a range, not a formal coverage guarantee.",
  "All 20,682 scored calls sit inside one calendar month, and four weekly points are four points: an OLS slope over them is a description of this month, not evidence of drift. This window ran 10 trend days of 30, and the pack's own volatility rule splits the four Mon-Sun weeks from Aug 31 to Sep 27 as W1 volatile, W2 calm, W3 volatile, W4 calm; every month-over-month comparison is a comparison across regimes as well as across windows. Models report confidence at discrete levels, not a continuous scale; the buckets reflect those natural breakpoints and cells below N=10 are marked insufficient.",
  "Underlying price series are reconstructed from trade entry prices (median per symbol-slot), not an independent tick feed. Series density and lineage notes (monthly #2): (1) rolling-1w forecasts emit daily since Aug 22, 2026 and rolling-1M daily since Aug 23, 2026, so across this 30-day window daily coverage is FULL as measured -- the 1w series has slots on 30 of 30 days and the 1M series on 30 of 30 days; both sit outside this report's FH gate (1h/4h/1d) and appear only in the exclusions counter (1w 2,096, 1M 2,089). (2) No model line is lineage-spliced inside this window. (3) Every per-model aggregate in this issue sees the merged head id; the raw id is kept in the pack, and 0 rows were remapped inside the month against 5,390 in the prior window.",
  "Market-state row is computed on a single-exchange (binance) daily candle series, as in the weekly series after the audit that found the raw table mixes two exchanges. The prior-month block is the full August: it covers 31 days (Aug 1-31), and the TOP5 volume figure compares a 30-day sum with a 31-day sum -- a level difference, not a like-for-like change.",
  "Research-to-date counter: directional forecasts resolved inside the FH gate (1h/4h/1d) since Jul 11, counted at the issue cutoff (Thu Oct 1, 2026, 16:00 UTC) -- the D2 definition pinned in the weekly series; this issue prints 59,755. The pack carries no prior-cutoff pin for a monthly window (the prior-cutoff pin is null by construction), so the control this issue is the weekly reproduction: the W4 block of this pack (Sep 21-27) reproduces the published weekly #8 on 7 of 7 checks, and the prior window of this pack (Aug 1-31, prior cutoff Tue Sep 1, 2026, 16:00 UTC) reproduces the published Monthly #1 on 7 of 7 checks. Counter deltas against pre-wave-3 issues remain definitional."
 ],
 "notes": {
  "series_density_and_lineage_monthly2": "Series density and lineage notes (monthly #2): (1) rolling-1w forecasts emit daily since Aug 22, 2026 and rolling-1M daily since Aug 23, 2026, so across this 30-day window daily coverage is FULL as measured -- the 1w series has slots on 30 of 30 days and the 1M series on 30 of 30 days; both sit outside this report's FH gate (1h/4h/1d) and appear only in the exclusions counter (1w 2,096, 1M 2,089). (2) No model line is lineage-spliced inside this window. (3) Every per-model aggregate in this issue sees the merged head id; the raw id is kept in the pack, and 0 rows were remapped inside the month against 5,390 in the prior window.",
  "grok_era": {
   "ids_in_window": [
    "grok-4.6"
   ],
   "n_grok45": 0,
   "n_grok46": 6300,
   "n_grok45_rows": 0,
   "n_grok46_rows": 6300,
   "first_grok46_slot": "2026-09-01T00:01:00+00:00",
   "last_grok45_slot": null,
   "first_grok45_slot": null,
   "flip_at": "2026-08-24T09:22:00+00:00",
   "flip_inside_window": false,
   "prev_window": {
    "n_grok45_rows": 4520,
    "n_grok46_rows": 1570
   },
   "merged_model_id": "grok-4.6",
   "merged_label": "grok-4.6",
   "lineage_ids": [
    "grok-4.5",
    "grok-4.6"
   ],
   "lineage_source": "benchmarks.config.lineage_ids(head) for each of the 7 heads + MODEL_SUCCESSION[claude-opus-5=('claude-opus-4.8',), grok-4.6=('grok-4.5',), qwen-3.8-max=('qwen-3.7-max',)]",
   "lineage_warnings": [],
   "rows_remapped_a_plus_b": 4520,
   "note": "window MONTH [2026-09-01T00:00:00+00:00, 2026-10-01T00:00:00+00:00): grok-4.5 rows 0, grok-4.6 rows 6300; flip 2026-08-24T09:22:00+00:00 is NOT inside this window. All per-model aggregates use the lineage splice grok-4.5 -> grok-4.6 (one row, labelled 'grok-4.6'). See lineage_era for the same facts across all 7 heads.",
   "cells_with_two_grok_rows": 0
  },
  "model_ids_line": [
   "claude-fable-5",
   "claude-opus-5",
   "deepseek-v4-pro",
   "gemini-3.1-pro",
   "gpt-5.6-sol",
   "grok-4.6",
   "qwen-3.8-max"
  ],
  "model_roster": {
   "current": [
    "claude-fable-5",
    "claude-opus-5",
    "deepseek-v4-pro",
    "gemini-3.1-pro",
    "gpt-5.6-sol",
    "grok-4.6",
    "qwen-3.8-max"
   ],
   "current_count": 7,
   "current_raw_ids_in_window": [
    "claude-fable-5",
    "claude-opus-5",
    "deepseek-v4-pro",
    "gemini-3.1-pro",
    "gpt-5.6-sol",
    "grok-4.6",
    "qwen-3.8-max"
   ],
   "archived_legacy": [
    "grok-4.5",
    "qwen-3.7-max",
    "claude-opus-4.8"
   ],
   "archived_legacy_count": 3,
   "archived_legacy_detail": [
    {
     "model": "grok-4.5",
     "n_rows_since": 11128,
     "first_slot": "2026-07-15T18:01:00+00:00",
     "last_slot": "2026-08-24T09:01:00+00:00"
    },
    {
     "model": "qwen-3.7-max",
     "n_rows_since": 7479,
     "first_slot": "2026-07-15T18:01:00+00:00",
     "last_slot": "2026-08-05T09:01:00+00:00"
    },
    {
     "model": "claude-opus-4.8",
     "n_rows_since": 6315,
     "first_slot": "2026-07-15T18:01:00+00:00",
     "last_slot": "2026-07-30T08:01:00+00:00"
    }
   ],
   "archived_excluding_lineage_merged": [],
   "tracked_total": 10,
   "canon_expected": {
    "current": 7,
    "archived_legacy": 4,
    "tracked_total": 11
   },
   "matches_canon_11_7_4": false,
   "roster_rule_w213": "7 models tracked (current line-up; earlier versions folded into their successors' lineage)",
   "canon_expected_w213": {
    "current": 7
   },
   "heads_w213": [
    "claude-fable-5",
    "claude-opus-5",
    "deepseek-v4-pro",
    "gemini-3.1-pro",
    "gpt-5.6-sol",
    "grok-4.6",
    "qwen-3.8-max"
   ],
   "matches_canon_7_current": true,
   "heads_missing_in_window": [],
   "heads_unexpected_in_window": [],
   "roster_since": "2026-07-11T00:00:00+00:00",
   "note": "current = merged-lineage model ids emitting inside the window (legacy ids are spliced into their successor); archived legacy = raw ids seen since 2026-07-11 that no longer emit in the window. Models retired before 2026-07-11 are not visible to this query. The canon checks are DESCRIPTIVE: if the data says otherwise, the data wins and is printed."
  },
  "series_density": {
   "1d": {
    "days_with_slots": 30,
    "expected_days": 30,
    "full_daily_coverage": true,
    "in_fh_gate": true,
    "n_slots": 30,
    "n_rows": 2100,
    "days": [
     "2026-09-01",
     "2026-09-02",
     "2026-09-03",
     "2026-09-04",
     "2026-09-05",
     "2026-09-06",
     "2026-09-07",
     "2026-09-08",
     "2026-09-09",
     "2026-09-10",
     "2026-09-11",
     "2026-09-12",
     "2026-09-13",
     "2026-09-14",
     "2026-09-15",
     "2026-09-16",
     "2026-09-17",
     "2026-09-18",
     "2026-09-19",
     "2026-09-20",
     "2026-09-21",
     "2026-09-22",
     "2026-09-23",
     "2026-09-24",
     "2026-09-25",
     "2026-09-26",
     "2026-09-27",
     "2026-09-28",
     "2026-09-29",
     "2026-09-30"
    ],
    "missing_days": []
   },
   "1h": {
    "days_with_slots": 30,
    "expected_days": 30,
    "full_daily_coverage": true,
    "in_fh_gate": true,
    "n_slots": 720,
    "n_rows": 25200,
    "days": [
     "2026-09-01",
     "2026-09-02",
     "2026-09-03",
     "2026-09-04",
     "2026-09-05",
     "2026-09-06",
     "2026-09-07",
     "2026-09-08",
     "2026-09-09",
     "2026-09-10",
     "2026-09-11",
     "2026-09-12",
     "2026-09-13",
     "2026-09-14",
     "2026-09-15",
     "2026-09-16",
     "2026-09-17",
     "2026-09-18",
     "2026-09-19",
     "2026-09-20",
     "2026-09-21",
     "2026-09-22",
     "2026-09-23",
     "2026-09-24",
     "2026-09-25",
     "2026-09-26",
     "2026-09-27",
     "2026-09-28",
     "2026-09-29",
     "2026-09-30"
    ],
    "missing_days": []
   },
   "1m": {
    "days_with_slots": 30,
    "expected_days": 30,
    "full_daily_coverage": true,
    "in_fh_gate": false,
    "n_slots": 30,
    "n_rows": 2100,
    "days": [
     "2026-09-01",
     "2026-09-02",
     "2026-09-03",
     "2026-09-04",
     "2026-09-05",
     "2026-09-06",
     "2026-09-07",
     "2026-09-08",
     "2026-09-09",
     "2026-09-10",
     "2026-09-11",
     "2026-09-12",
     "2026-09-13",
     "2026-09-14",
     "2026-09-15",
     "2026-09-16",
     "2026-09-17",
     "2026-09-18",
     "2026-09-19",
     "2026-09-20",
     "2026-09-21",
     "2026-09-22",
     "2026-09-23",
     "2026-09-24",
     "2026-09-25",
     "2026-09-26",
     "2026-09-27",
     "2026-09-28",
     "2026-09-29",
     "2026-09-30"
    ],
    "missing_days": []
   },
   "1w": {
    "days_with_slots": 30,
    "expected_days": 30,
    "full_daily_coverage": true,
    "in_fh_gate": false,
    "n_slots": 30,
    "n_rows": 2100,
    "days": [
     "2026-09-01",
     "2026-09-02",
     "2026-09-03",
     "2026-09-04",
     "2026-09-05",
     "2026-09-06",
     "2026-09-07",
     "2026-09-08",
     "2026-09-09",
     "2026-09-10",
     "2026-09-11",
     "2026-09-12",
     "2026-09-13",
     "2026-09-14",
     "2026-09-15",
     "2026-09-16",
     "2026-09-17",
     "2026-09-18",
     "2026-09-19",
     "2026-09-20",
     "2026-09-21",
     "2026-09-22",
     "2026-09-23",
     "2026-09-24",
     "2026-09-25",
     "2026-09-26",
     "2026-09-27",
     "2026-09-28",
     "2026-09-29",
     "2026-09-30"
    ],
    "missing_days": []
   },
   "4h": {
    "days_with_slots": 30,
    "expected_days": 30,
    "full_daily_coverage": true,
    "in_fh_gate": true,
    "n_slots": 180,
    "n_rows": 12600,
    "days": [
     "2026-09-01",
     "2026-09-02",
     "2026-09-03",
     "2026-09-04",
     "2026-09-05",
     "2026-09-06",
     "2026-09-07",
     "2026-09-08",
     "2026-09-09",
     "2026-09-10",
     "2026-09-11",
     "2026-09-12",
     "2026-09-13",
     "2026-09-14",
     "2026-09-15",
     "2026-09-16",
     "2026-09-17",
     "2026-09-18",
     "2026-09-19",
     "2026-09-20",
     "2026-09-21",
     "2026-09-22",
     "2026-09-23",
     "2026-09-24",
     "2026-09-25",
     "2026-09-26",
     "2026-09-27",
     "2026-09-28",
     "2026-09-29",
     "2026-09-30"
    ],
    "missing_days": []
   }
  },
  "month_over_month_note": "Month-over-month columns compare back-to-back windows: Aug 1-31 vs Sep 1-30 (this issue). \"Was\" values are the pack's own prior-window block -- window A of the same pull, same engine, same FH gate and same hit rule, matured at the prior cutoff Tue Sep 1, 2026, 16:00 UTC. The prior month is the full August (31 days against 30 in September), and it holds 19,383 directional calls against 20,682 in September. Deltas are computed on unrounded rates.",
  "research_to_date_pin": "Research-to-date counter: directional forecasts resolved inside the FH gate (1h/4h/1d) since Jul 11, counted at the issue cutoff (Thu Oct 1, 2026, 16:00 UTC) -- the D2 definition pinned in the weekly series; this issue prints 59,755. The pack carries no prior-cutoff pin for a monthly window (the prior-cutoff pin is null by construction), so the control this issue is the weekly reproduction: the W4 block of this pack (Sep 21-27) reproduces the published weekly #8 on 7 of 7 checks, and the prior window of this pack (Aug 1-31, prior cutoff Tue Sep 1, 2026, 16:00 UTC) reproduces the published Monthly #1 on 7 of 7 checks. Counter deltas against pre-wave-3 issues remain definitional.",
  "market_state_audit": "Market-state row is computed on a single-exchange (binance) daily candle series, as in the weekly series after the audit that found the raw table mixes two exchanges. The prior-month block is the full August: it covers 31 days (Aug 1-31), and the TOP5 volume figure compares a 30-day sum with a 31-day sum -- a level difference, not a like-for-like change.",
  "engine": "Engine 1.1 has powered the sandbox since Aug 18, i.e. before this window and inside the prior window; no cross-engine PnL comparisons are claimed.",
  "report_template": "PDF built with the canonical mm_report.py template module; preview card with report_preview.render_preview",
  "lineage_era": {
   "window_key": "MONTH",
   "heads": [
    "claude-fable-5",
    "claude-opus-5",
    "deepseek-v4-pro",
    "gemini-3.1-pro",
    "gpt-5.6-sol",
    "grok-4.6",
    "qwen-3.8-max"
   ],
   "lineage_map": {
    "claude-opus-4.8": "claude-opus-5",
    "grok-4.5": "grok-4.6",
    "qwen-3.7-max": "qwen-3.8-max"
   },
   "legacy_by_head": {
    "claude-fable-5": [],
    "claude-opus-5": [
     "claude-opus-4.8"
    ],
    "deepseek-v4-pro": [],
    "gemini-3.1-pro": [],
    "gpt-5.6-sol": [],
    "grok-4.6": [
     "grok-4.5"
    ],
    "qwen-3.8-max": [
     "qwen-3.7-max"
    ]
   },
   "lineage_source": "benchmarks.config.lineage_ids(head) for each of the 7 heads + MODEL_SUCCESSION[claude-opus-5=('claude-opus-4.8',), grok-4.6=('grok-4.5',), qwen-3.8-max=('qwen-3.7-max',)]",
   "lineage_resolved_heads": [
    "claude-fable-5",
    "claude-opus-5",
    "deepseek-v4-pro",
    "gemini-3.1-pro",
    "gpt-5.6-sol",
    "grok-4.6",
    "qwen-3.8-max"
   ],
   "lineage_warnings": [],
   "per_head": {
    "claude-fable-5": {
     "legacy_ids": [],
     "legacy_ids_seen_in_window": [],
     "n_rows_remapped": {},
     "n_rows_remapped_prev_window": {},
     "by_legacy_id": {},
     "first_legacy_slot": null,
     "last_legacy_slot": null,
     "first_successor_slot": "2026-09-01T00:01:00+00:00",
     "last_successor_slot": "2026-09-30T23:01:00+00:00",
     "n_rows_successor": 6300,
     "spliced_in_window": false,
     "label": "claude-fable-5"
    },
    "claude-opus-5": {
     "legacy_ids": [
      "claude-opus-4.8"
     ],
     "legacy_ids_seen_in_window": [],
     "n_rows_remapped": {
      "claude-opus-4.8": 0
     },
     "n_rows_remapped_prev_window": {
      "claude-opus-4.8": 0
     },
     "by_legacy_id": {
      "claude-opus-4.8": {
       "n_rows_remapped": {
        "MONTH": 0,
        "prev_window": 0
       },
       "first_slot": null,
       "last_slot": null,
       "first_slot_prev_window": null,
       "last_slot_prev_window": null
      }
     },
     "first_legacy_slot": null,
     "last_legacy_slot": null,
     "first_successor_slot": "2026-09-01T00:01:00+00:00",
     "last_successor_slot": "2026-09-30T23:01:00+00:00",
     "n_rows_successor": 6300,
     "spliced_in_window": false,
     "label": "claude-opus-5"
    },
    "deepseek-v4-pro": {
     "legacy_ids": [],
     "legacy_ids_seen_in_window": [],
     "n_rows_remapped": {},
     "n_rows_remapped_prev_window": {},
     "by_legacy_id": {},
     "first_legacy_slot": null,
     "last_legacy_slot": null,
     "first_successor_slot": "2026-09-01T00:01:00+00:00",
     "last_successor_slot": "2026-09-30T23:01:00+00:00",
     "n_rows_successor": 6300,
     "spliced_in_window": false,
     "label": "deepseek-v4-pro"
    },
    "gemini-3.1-pro": {
     "legacy_ids": [],
     "legacy_ids_seen_in_window": [],
     "n_rows_remapped": {},
     "n_rows_remapped_prev_window": {},
     "by_legacy_id": {},
     "first_legacy_slot": null,
     "last_legacy_slot": null,
     "first_successor_slot": "2026-09-01T00:01:00+00:00",
     "last_successor_slot": "2026-09-30T23:01:00+00:00",
     "n_rows_successor": 6300,
     "spliced_in_window": false,
     "label": "gemini-3.1-pro"
    },
    "gpt-5.6-sol": {
     "legacy_ids": [],
     "legacy_ids_seen_in_window": [],
     "n_rows_remapped": {},
     "n_rows_remapped_prev_window": {},
     "by_legacy_id": {},
     "first_legacy_slot": null,
     "last_legacy_slot": null,
     "first_successor_slot": "2026-09-01T00:01:00+00:00",
     "last_successor_slot": "2026-09-30T23:01:00+00:00",
     "n_rows_successor": 6300,
     "spliced_in_window": false,
     "label": "gpt-5.6-sol"
    },
    "grok-4.6": {
     "legacy_ids": [
      "grok-4.5"
     ],
     "legacy_ids_seen_in_window": [],
     "n_rows_remapped": {
      "grok-4.5": 0
     },
     "n_rows_remapped_prev_window": {
      "grok-4.5": 4520
     },
     "by_legacy_id": {
      "grok-4.5": {
       "n_rows_remapped": {
        "MONTH": 0,
        "prev_window": 4520
       },
       "first_slot": null,
       "last_slot": null,
       "first_slot_prev_window": "2026-08-01T00:01:00+00:00",
       "last_slot_prev_window": "2026-08-24T09:01:00+00:00"
      }
     },
     "first_legacy_slot": null,
     "last_legacy_slot": null,
     "first_successor_slot": "2026-09-01T00:01:00+00:00",
     "last_successor_slot": "2026-09-30T23:01:00+00:00",
     "n_rows_successor": 6300,
     "spliced_in_window": false,
     "label": "grok-4.6"
    },
    "qwen-3.8-max": {
     "legacy_ids": [
      "qwen-3.7-max"
     ],
     "legacy_ids_seen_in_window": [],
     "n_rows_remapped": {
      "qwen-3.7-max": 0
     },
     "n_rows_remapped_prev_window": {
      "qwen-3.7-max": 870
     },
     "by_legacy_id": {
      "qwen-3.7-max": {
       "n_rows_remapped": {
        "MONTH": 0,
        "prev_window": 870
       },
       "first_slot": null,
       "last_slot": null,
       "first_slot_prev_window": "2026-08-01T00:01:00+00:00",
       "last_slot_prev_window": "2026-08-05T09:01:00+00:00"
      }
     },
     "first_legacy_slot": null,
     "last_legacy_slot": null,
     "first_successor_slot": "2026-09-01T00:01:00+00:00",
     "last_successor_slot": "2026-09-30T23:01:00+00:00",
     "n_rows_successor": 6300,
     "spliced_in_window": false,
     "label": "qwen-3.8-max"
    }
   },
   "labels": {
    "claude-fable-5": "claude-fable-5",
    "claude-opus-5": "claude-opus-5",
    "deepseek-v4-pro": "deepseek-v4-pro",
    "gemini-3.1-pro": "gemini-3.1-pro",
    "gpt-5.6-sol": "gpt-5.6-sol",
    "grok-4.6": "grok-4.6",
    "qwen-3.8-max": "qwen-3.8-max"
   },
   "rows_remapped_window": 0,
   "rows_remapped_prev_window": 5390,
   "note": "Only the 7 current models are tracked; earlier versions are folded into their successors' lineage. Every per-model aggregate in this pack sees the merged head id; the raw id survives in model_raw. Labels and era spans are generated from the pulled rows, not hardcoded.",
   "cells_with_two_rows_per_head": {
    "claude-fable-5": 0,
    "claude-opus-5": 0,
    "deepseek-v4-pro": 0,
    "gemini-3.1-pro": 0,
    "gpt-5.6-sol": 0,
    "grok-4.6": 0,
    "qwen-3.8-max": 0
   }
  },
  "frozen_cutoffs": "Two cutoffs live in this issue. The month is frozen at Thu Oct 1, 2026, 16:00 UTC; the four weekly blocks are frozen at their own published cutoffs (W1 Aug 31-Sep 6, W2 Sep 7-13, W3 Sep 14-20, W4 Sep 21-27). A forecast still pending at its week's cutoff is immature in the weekly pack and mature in the month pull, so the month does not equal the sum of the weeks (20,682 vs 19,544 directional, plus 1,826 on the 3 remainder days); W1 also opens on Aug 31, a day the month pull does not hold, so its pack counts 4,520 directional calls against 3,832 for Sep 1-6 inside the month pull -- that gap is arithmetic, not a data problem.",
  "partial_prior_window": "The prior window is the full August: every \"prior\" column, the gray series of the page-1 chart and the market-check A column describe Aug 1-31. It is window A of the same pull, slots 2026-08-01 to 2026-09-01 (first slot actually seen 2026-08-01 00:01 UTC), matured at the prior cutoff Tue Sep 1, 2026, 16:00 UTC under the same engine, the same FH gate and the same hit rule as September -- 19,383 directional calls against 20,682 in the month. Month-over-month deltas are a step between two windows of different length (31 and 30 days)."
 },
 "platform_note_tpsl": "**Context, not a finding.** Since Aug 13 the public sandbox can trade with model-specific TP/SL multipliers learned from this same history (v1); since Aug 19, v2 adds per-ticker and confidence-bucket (50-70 / 70-100) resolution. Both switches landed before this window, inside the prior window (Aug 13 and Aug 19). That feature consumes calibration history; it does not feed back into any table in this report, which measures stated confidence vs. direction-hit only. No effect size is claimed for v1 or v2. The toggle lives at marketmania.ai/indices.",
 "living_series_note": "**Issue #2.** Monthly Calibration is a living monthly comparison; each issue appends one more calendar month of confidence-vs-hit data. This second issue reads September against the full August: field gap +17.0pp on 20,682 scored calls, field Brier 0.2796, weekly gaps +19.6pp -> +22.5pp -> +12.1pp -> +16.1pp, field slope -2.09 pp/week (narrowing), against a prior-window field gap of +16.3pp. No model line is lineage-spliced this month (the prior window carries the grok and qwen splices). Engine 1.1 has powered the sandbox since Aug 18, i.e. before this window and inside the prior window; no cross-engine PnL comparisons are claimed.",
 "testing_next": [
  "Monthly #3 (October): the same three series over Oct 1-31, cut on Nov 1 plus the maturity lag, so its month-over-month comparison runs against this September.",
  "Monthly Config Watch #2: the same September window through the config search engine (w298), published as the fourth monthly report of this issue.",
  "Quarterly Stability Index: Run 3, the next repeat-prompt stability run, is planned for the first half of October and is the first cross-quarter point on model stability."
 ],
 "related_research": [
  {
   "title": "Monthly Consensus Watch #2",
   "url": "https://marketmania.ai/research/reports/consensus-watch-monthly-2026-09.pdf"
  },
  {
   "title": "Monthly Model Watch #2",
   "url": "https://marketmania.ai/research/reports/model-watch-monthly-2026-09.pdf"
  },
  {
   "title": "Weekly Calibration #8",
   "url": "https://marketmania.ai/research/reports/weekly-calibration-2026-09-21.pdf"
  }
 ],
 "related_research_note": "The three monthly reports publish together as one issue each month; each links straight to the others' PDF and to the last weekly issue of the same series. Direct links are the posting rule from wave 2 on.",
 "citation": {
  "bibtex_key": "mm_calibration_monthly_2026m09",
  "title": "Monthly Calibration #2: confidence vs. direction-hit, Sep 1-30 2026",
  "author": "MarketMania Research",
  "year": 2026,
  "month": "October",
  "day": 2,
  "url": "https://marketmania.ai/research/reports/calibration-monthly-2026-09.pdf",
  "note": "Methodology v1.1; window Sep 1-30, 2026 UTC; source monthly_metrics_2026-09.json"
 },
 "research_to_date": {
  "this_report": {
   "scored_observations": 20682
  },
  "platform": {
   "as_of_cutoff": "2026-10-01",
   "resolved_forecasts": 59755,
   "resolved_forecasts_definition": "directional forecasts resolved inside the FH gate (1h/4h/1d) since Jul 11, at the issue cutoff",
   "resolved_forecasts_since": "2026-07-11",
   "models_tracked": 7,
   "models_tracked_detail": "7 models tracked (current line-up; earlier versions folded into their successors' lineage)",
   "assets": 5,
   "forecast_horizons": 5,
   "cadence": "hourly",
   "published_research_reports": 40
  },
  "source": "monthly_metrics_2026-09.json",
  "control_reproduces_wave3_pin": null,
  "pin_note": "Research-to-date counter: directional forecasts resolved inside the FH gate (1h/4h/1d) since Jul 11, counted at the issue cutoff (Thu Oct 1, 2026, 16:00 UTC) -- the D2 definition pinned in the weekly series; this issue prints 59,755. The pack carries no prior-cutoff pin for a monthly window (the prior-cutoff pin is null by construction), so the control this issue is the weekly reproduction: the W4 block of this pack (Sep 21-27) reproduces the published weekly #8 on 7 of 7 checks, and the prior window of this pack (Aug 1-31, prior cutoff Tue Sep 1, 2026, 16:00 UTC) reproduces the published Monthly #1 on 7 of 7 checks. Counter deltas against pre-wave-3 issues remain definitional.",
  "control_last_week_reproduces_weekly8": {
   "pins_source": "weekly_metrics_2026-09-21.json (the published weekly #8 pack)",
   "note": "W4 of this run is the weekly #8 window with the weekly #8 frozen cutoff, so every pin must reproduce exactly. A mismatch means the window or the cutoff moved -- non-fatal here, but the monthly numbers must not be published until it is explained.",
   "checks": {
    "counters.mature_directional": {
     "pin": 4958,
     "got": 4958,
     "match": true,
     "tolerance": 0
    },
    "calibration.field.hit_rate": {
     "pin": 0.4683,
     "got": 0.4683,
     "match": true,
     "tolerance": 5e-05
    },
    "calibration.field.gap_pp": {
     "pin": 16.1,
     "got": 16.1,
     "match": true,
     "tolerance": 0.05
    },
    "consensus.loo_pooled.lift_pp": {
     "pin": -14.0,
     "got": -14.0,
     "match": true,
     "tolerance": 0.05
    },
    "model_watch.leaderboard.rows[0].model": {
     "pin": "gemini-3.1-pro",
     "got": "gemini-3.1-pro",
     "match": true,
     "tolerance": 0
    },
    "model_watch.leaderboard.rows[0].hit_rate": {
     "pin": 0.5139,
     "got": 0.5139,
     "match": true,
     "tolerance": 5e-05
    },
    "research_to_date.canonical_value_at_cutoff": {
     "pin": 57929,
     "got": 57929,
     "match": true,
     "tolerance": 0
    }
   },
   "all_match": true,
   "n_checks": 7,
   "n_match": 7,
   "last_week_key": "W4"
  }
 },
 "site_entry": {
  "slug": "calibration-monthly-2026-09",
  "series": "monthly",
  "seriesLabel": "Monthly · Calibration",
  "date": "October 2, 2026",
  "title": "Monthly Calibration #2",
  "summary": "20,682 directional calls over one calendar month asked whether stated confidence tracks reality. The field hit 45.5% against 62.6 stated mean confidence, an overconfidence gap of +17.0pp with field Brier at 0.2796. Week by week the field gap ran +19.6pp -> +22.5pp -> +12.1pp -> +16.1pp across the four weeks, an OLS slope of -2.09 pp per week (narrowing), and the per-model verdicts split 6 narrowing / 0 widening / 1 flat. qwen-3.8-max is the lowest-Brier line at 0.2701 and gemini-3.1-pro leads on hit-rate at 48.5%. Trading, kept in its own section, finished with 0 of 7 lines net-positive as field accuracy moved 46.3% -> 45.5% (-0.8pp) against August.",
  "stats": [
   "20,682 directional calls",
   "gap +17.0pp slope -2.09",
   "0 of 7 net-positive"
  ],
  "manifest_key_finding": "Over September the overconfidence gap read +17.0pp on 20,682 scored calls with field Brier 0.2796; across the four weeks the weekly gaps ran +19.6pp -> +22.5pp -> +12.1pp -> +16.1pp, an OLS slope of -2.09 pp per week (narrowing), and trading, kept separate, finished 0 of 7 lines net-positive.",
  "files": {
   "pdf": "/research/reports/calibration-monthly-2026-09.pdf",
   "md": "/research/reports/calibration-monthly-2026-09.md",
   "json": "/research/reports/calibration-monthly-2026-09.json"
  }
 },
 "social": {
  "telegram": {
   "photo_caption_html": "🎯 <b>Monthly Calibration #2</b> — monthly series (window Sep 1–30)\n\nResearch question: when a model says 70, does it hit 70% of the time?\n\n20,682 directional calls, 7 model lines, one calendar month:\n• Field hit <b>45.5%</b> vs <b>62.6</b> stated — gap <b>+17.0pp</b>, Brier 0.2796\n• Drift across the four weeks: gap +19.6pp -> +22.5pp -> +12.1pp -> +16.1pp week by week, slope <b>-2.09 pp/wk</b> (narrowing)\n• Per-model: 6 narrowing / 0 widening / 1 flat\n• Lowest-Brier line: <b>qwen-3.8-max</b> (Brier 0.2701); hit-rate leader gemini-3.1-pro at 48.5%\n• Market check: field 46.3% -> 45.5% (-0.8pp) vs August; trading separate — <b>0 of 7 net-positive</b>\n\nNote: prior window = the full August (Aug 1-31); weekly gaps from the frozen weekly packs\n\n📄 <a href=\"https://marketmania.ai/research/reports/calibration-monthly-2026-09.pdf\">Full report (PDF)</a> · <a href=\"https://marketmania.ai/research\">all research</a>\n\n#cryptotrading #LLM #AI #crypto #trading #calibration #research #Monthly",
   "document_caption_html": "📄 Monthly Calibration #2 — full report (PDF).\nWeb copy: <a href=\"https://marketmania.ai/research/reports/calibration-monthly-2026-09.pdf\">calibration-monthly-2026-09.pdf</a> · machine-readable: <a href=\"https://marketmania.ai/research/reports/calibration-monthly-2026-09.json\">JSON</a> · <a href=\"https://marketmania.ai/research\">all research</a>\n\n#cryptotrading #LLM #AI #crypto #trading #calibration #research #Monthly",
   "caption_len": 988,
   "document_caption_len": 420,
   "limit": 1024
  },
  "x": {
   "main": "Monthly Calibration #2 is out.\n\n20,682 LLM calls over September: 45.5% hit vs 62.6 stated confidence — a gap of +17.0pp, drifting -2.09 pp/week across the four weeks.\n\nFull report: https://marketmania.ai/research/reports/calibration-monthly-2026-09.pdf\n\n#AI #Crypto #Research #Calibration",
   "main_tco_len": 240,
   "reply": "Gap W1 -> month (pp):\nfable-5: 17.9 -> 15.6\nopus-5: 18.8 -> 15.9\ndeepseek: 16.5 -> 15.3\ngemini-3.1: 19.7 -> 18.0\ngpt-5.6: 26.2 -> 23.5\ngrok-4.6: 22.3 -> 15.8\nqwen-3.8: 16.6 -> 14.7\nField +17.0pp, slope -2.09 pp/wk. v1.1.\nData: https://marketmania.ai/research/reports/calibration-monthly-2026-09.json",
   "reply_tco_len": 250,
   "limit_tco": 280,
   "replies_max": 1
  }
 },
 "monthly_window": {
  "start": "2026-09-01T00:00:00+00:00",
  "end": "2026-10-01T00:00:00+00:00",
  "text": "Sep 1-30, 2026 UTC",
  "cutoff": "2026-10-01T16:00:00+00:00",
  "cutoff_text": "Thu Oct 1, 2026, 16:00 UTC",
  "days": 30,
  "label": "Sep 1-30"
 },
 "prior_window": {
  "start": "2026-08-01T00:00:00+00:00",
  "end": "2026-09-01T00:00:00+00:00",
  "text": "Aug 1-31, 2026",
  "printed_as": "Aug 1-31",
  "cutoff_text": "Tue Sep 1, 2026, 16:00 UTC",
  "partial": false,
  "note": "August is a full month: 2026-08-01 .. 2026-09-01, 31 days",
  "applicable": true,
  "not_applicable_reason": null,
  "source": "month.prior_window -- window A of the same pull, matured at the prior cutoff with the same gate, maturity and hit rule",
  "effective_start": "2026-08-01T00:01:00+00:00",
  "counters": {
   "forecasts_total": 42654,
   "ok_in_gate": 40979,
   "mature": 40979,
   "mature_directional": 19383,
   "mature_sideways": 21596
  },
  "definitions": {
   "maturity": "horizon expired AND trade closed by the PRIOR cutoff (the same rule the current window uses at its own cutoff)",
   "hit": "direction: exit tp1/tp2 -> hit, sl -> miss, expiry -> sign of gross pnl",
   "fh_gate": [
    "1h",
    "4h",
    "1d"
   ],
   "min_n": 10,
   "lineage": "rows spliced by the generalised 7-head lineage map before any aggregate",
   "note": "identical definitions to the current window; only the window and the cutoff differ"
  }
 },
 "weeks_index": {
  "W1": {
   "label": "Aug 31-Sep 6",
   "issue": 5,
   "published_slug_suffix": [
    "2026-08-31T00:00:00Z",
    "2026-09-07T00:00:00Z"
   ],
   "bounds": [
    "2026-08-31T00:00:00Z",
    "2026-09-07T00:00:00Z"
   ],
   "regime": "volatile"
  },
  "W2": {
   "label": "Sep 7-13",
   "issue": 6,
   "published_slug_suffix": [
    "2026-09-07T00:00:00Z",
    "2026-09-14T00:00:00Z"
   ],
   "bounds": [
    "2026-09-07T00:00:00Z",
    "2026-09-14T00:00:00Z"
   ],
   "regime": "calm"
  },
  "W3": {
   "label": "Sep 14-20",
   "issue": 7,
   "published_slug_suffix": [
    "2026-09-14T00:00:00Z",
    "2026-09-21T00:00:00Z"
   ],
   "bounds": [
    "2026-09-14T00:00:00Z",
    "2026-09-21T00:00:00Z"
   ],
   "regime": "volatile"
  },
  "W4": {
   "label": "Sep 21-27",
   "issue": 8,
   "published_slug_suffix": [
    "2026-09-21T00:00:00Z",
    "2026-09-28T00:00:00Z"
   ],
   "bounds": [
    "2026-09-21T00:00:00Z",
    "2026-09-28T00:00:00Z"
   ],
   "regime": "calm"
  }
 },
 "roster_rule": "7 models tracked (current line-up; earlier versions folded into their successors' lineage)",
 "lineage_labels": {
  "labels": {
   "claude-fable-5": "claude-fable-5",
   "claude-opus-5": "claude-opus-5",
   "deepseek-v4-pro": "deepseek-v4-pro",
   "gemini-3.1-pro": "gemini-3.1-pro",
   "gpt-5.6-sol": "gpt-5.6-sol",
   "grok-4.6": "grok-4.6",
   "qwen-3.8-max": "qwen-3.8-max"
  },
  "spliced_in_window": [],
  "cell_form": {},
  "families": []
 },
 "controls": {
  "last_week_reproduces_weekly8": {
   "pins_source": "weekly_metrics_2026-09-21.json (the published weekly #8 pack)",
   "note": "W4 of this run is the weekly #8 window with the weekly #8 frozen cutoff, so every pin must reproduce exactly. A mismatch means the window or the cutoff moved -- non-fatal here, but the monthly numbers must not be published until it is explained.",
   "checks": {
    "counters.mature_directional": {
     "pin": 4958,
     "got": 4958,
     "match": true,
     "tolerance": 0
    },
    "calibration.field.hit_rate": {
     "pin": 0.4683,
     "got": 0.4683,
     "match": true,
     "tolerance": 5e-05
    },
    "calibration.field.gap_pp": {
     "pin": 16.1,
     "got": 16.1,
     "match": true,
     "tolerance": 0.05
    },
    "consensus.loo_pooled.lift_pp": {
     "pin": -14.0,
     "got": -14.0,
     "match": true,
     "tolerance": 0.05
    },
    "model_watch.leaderboard.rows[0].model": {
     "pin": "gemini-3.1-pro",
     "got": "gemini-3.1-pro",
     "match": true,
     "tolerance": 0
    },
    "model_watch.leaderboard.rows[0].hit_rate": {
     "pin": 0.5139,
     "got": 0.5139,
     "match": true,
     "tolerance": 5e-05
    },
    "research_to_date.canonical_value_at_cutoff": {
     "pin": 57929,
     "got": 57929,
     "match": true,
     "tolerance": 0
    }
   },
   "all_match": true,
   "n_checks": 7,
   "n_match": 7,
   "last_week_key": "W4"
  },
  "month_vs_weeks": {
   "month": 20682,
   "sum_weeks": 19544,
   "per_week": {
    "W1": 4520,
    "W2": 4468,
    "W3": 5598,
    "W4": 4958
   },
   "remainder_days": [
    "2026-09-28",
    "2026-09-29",
    "2026-09-30"
   ],
   "remainder_days_n": 3,
   "remainder_mature_directional_month_pull": 1826,
   "remainder_by_day": {
    "2026-09-29": 668,
    "2026-09-28": 772,
    "2026-09-30": 386
   },
   "sum_weeks_plus_remainder": 21370,
   "month_minus_sum_weeks_plus_remainder": -688,
   "month_pull_by_week": {
    "W1": 3832,
    "W2": 4468,
    "W3": 5598,
    "W4": 4958
   },
   "note": "These WILL differ, and the difference is expected: each weekly pack is computed at its own frozen cutoff (week_end + 16h), while the MONTH pack is computed at 2026-10-01T16:00Z. A forecast still pending at its week's cutoff (trade not yet closed) is immature in the weekly pack and mature in the MONTH pack, so month >= sum_weeks + remainder. remainder_days_n counts the calendar days of the month outside the four Mon-Sun weeks (2026-09-28, 2026-09-29, 2026-09-30). month_pull_by_week is the same month pull split by slot week at the MONTH cutoff -- compare THAT with per_week to see the cutoff effect alone. W1 starts before the month (2026-08-31T00:00:00+00:00), so its pack also counts slots that are not in the MONTH pull and the inequality above need not hold for it."
  },
  "lineage_splice_counts": {
   "MONTH": {
    "claude-opus-4.8": 0,
    "grok-4.5": 0,
    "qwen-3.7-max": 0
   },
   "W1": {
    "claude-opus-4.8": 0,
    "grok-4.5": 0,
    "qwen-3.7-max": 0
   },
   "W2": {
    "claude-opus-4.8": 0,
    "grok-4.5": 0,
    "qwen-3.7-max": 0
   },
   "W3": {
    "claude-opus-4.8": 0,
    "grok-4.5": 0,
    "qwen-3.7-max": 0
   },
   "W4": {
    "claude-opus-4.8": 0,
    "grok-4.5": 0,
    "qwen-3.7-max": 0
   }
  },
  "lineage_splice_detail": {
   "MONTH": {
    "total_window": 0,
    "total_prev_window": 5390,
    "labels": {
     "claude-fable-5": "claude-fable-5",
     "claude-opus-5": "claude-opus-5",
     "deepseek-v4-pro": "deepseek-v4-pro",
     "gemini-3.1-pro": "gemini-3.1-pro",
     "gpt-5.6-sol": "gpt-5.6-sol",
     "grok-4.6": "grok-4.6",
     "qwen-3.8-max": "qwen-3.8-max"
    },
    "per_head": {
     "claude-fable-5": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {},
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-01T00:01:00+00:00"
     },
     "claude-opus-5": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {
       "claude-opus-4.8": 0
      },
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-01T00:01:00+00:00"
     },
     "deepseek-v4-pro": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {},
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-01T00:01:00+00:00"
     },
     "gemini-3.1-pro": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {},
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-01T00:01:00+00:00"
     },
     "gpt-5.6-sol": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {},
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-01T00:01:00+00:00"
     },
     "grok-4.6": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {
       "grok-4.5": 0
      },
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-01T00:01:00+00:00"
     },
     "qwen-3.8-max": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {
       "qwen-3.7-max": 0
      },
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-01T00:01:00+00:00"
     }
    }
   },
   "W1": {
    "total_window": 0,
    "total_prev_window": 110,
    "labels": {
     "claude-fable-5": "claude-fable-5",
     "claude-opus-5": "claude-opus-5",
     "deepseek-v4-pro": "deepseek-v4-pro",
     "gemini-3.1-pro": "gemini-3.1-pro",
     "gpt-5.6-sol": "gpt-5.6-sol",
     "grok-4.6": "grok-4.6",
     "qwen-3.8-max": "qwen-3.8-max"
    },
    "per_head": {
     "claude-fable-5": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {},
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-08-31T00:01:00+00:00"
     },
     "claude-opus-5": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {
       "claude-opus-4.8": 0
      },
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-08-31T00:01:00+00:00"
     },
     "deepseek-v4-pro": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {},
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-08-31T00:01:00+00:00"
     },
     "gemini-3.1-pro": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {},
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-08-31T00:01:00+00:00"
     },
     "gpt-5.6-sol": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {},
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-08-31T00:01:00+00:00"
     },
     "grok-4.6": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {
       "grok-4.5": 0
      },
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-08-31T00:01:00+00:00"
     },
     "qwen-3.8-max": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {
       "qwen-3.7-max": 0
      },
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-08-31T00:01:00+00:00"
     }
    }
   },
   "W2": {
    "total_window": 0,
    "total_prev_window": 0,
    "labels": {
     "claude-fable-5": "claude-fable-5",
     "claude-opus-5": "claude-opus-5",
     "deepseek-v4-pro": "deepseek-v4-pro",
     "gemini-3.1-pro": "gemini-3.1-pro",
     "gpt-5.6-sol": "gpt-5.6-sol",
     "grok-4.6": "grok-4.6",
     "qwen-3.8-max": "qwen-3.8-max"
    },
    "per_head": {
     "claude-fable-5": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {},
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-07T00:01:00+00:00"
     },
     "claude-opus-5": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {
       "claude-opus-4.8": 0
      },
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-07T00:01:00+00:00"
     },
     "deepseek-v4-pro": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {},
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-07T00:01:00+00:00"
     },
     "gemini-3.1-pro": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {},
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-07T00:01:00+00:00"
     },
     "gpt-5.6-sol": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {},
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-07T00:01:00+00:00"
     },
     "grok-4.6": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {
       "grok-4.5": 0
      },
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-07T00:01:00+00:00"
     },
     "qwen-3.8-max": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {
       "qwen-3.7-max": 0
      },
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-07T00:01:00+00:00"
     }
    }
   },
   "W3": {
    "total_window": 0,
    "total_prev_window": 0,
    "labels": {
     "claude-fable-5": "claude-fable-5",
     "claude-opus-5": "claude-opus-5",
     "deepseek-v4-pro": "deepseek-v4-pro",
     "gemini-3.1-pro": "gemini-3.1-pro",
     "gpt-5.6-sol": "gpt-5.6-sol",
     "grok-4.6": "grok-4.6",
     "qwen-3.8-max": "qwen-3.8-max"
    },
    "per_head": {
     "claude-fable-5": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {},
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-14T00:01:00+00:00"
     },
     "claude-opus-5": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {
       "claude-opus-4.8": 0
      },
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-14T00:01:00+00:00"
     },
     "deepseek-v4-pro": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {},
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-14T00:01:00+00:00"
     },
     "gemini-3.1-pro": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {},
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-14T00:01:00+00:00"
     },
     "gpt-5.6-sol": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {},
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-14T00:01:00+00:00"
     },
     "grok-4.6": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {
       "grok-4.5": 0
      },
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-14T00:01:00+00:00"
     },
     "qwen-3.8-max": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {
       "qwen-3.7-max": 0
      },
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-14T00:01:00+00:00"
     }
    }
   },
   "W4": {
    "total_window": 0,
    "total_prev_window": 0,
    "labels": {
     "claude-fable-5": "claude-fable-5",
     "claude-opus-5": "claude-opus-5",
     "deepseek-v4-pro": "deepseek-v4-pro",
     "gemini-3.1-pro": "gemini-3.1-pro",
     "gpt-5.6-sol": "gpt-5.6-sol",
     "grok-4.6": "grok-4.6",
     "qwen-3.8-max": "qwen-3.8-max"
    },
    "per_head": {
     "claude-fable-5": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {},
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-21T00:01:00+00:00"
     },
     "claude-opus-5": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {
       "claude-opus-4.8": 0
      },
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-21T00:01:00+00:00"
     },
     "deepseek-v4-pro": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {},
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-21T00:01:00+00:00"
     },
     "gemini-3.1-pro": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {},
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-21T00:01:00+00:00"
     },
     "gpt-5.6-sol": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {},
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-21T00:01:00+00:00"
     },
     "grok-4.6": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {
       "grok-4.5": 0
      },
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-21T00:01:00+00:00"
     },
     "qwen-3.8-max": {
      "legacy_ids_seen_in_window": [],
      "n_rows_remapped": {
       "qwen-3.7-max": 0
      },
      "first_legacy_slot": null,
      "last_legacy_slot": null,
      "first_successor_slot": "2026-09-21T00:01:00+00:00"
     }
    }
   }
  },
  "d2_at_cutoff": {
   "window_key": "MONTH",
   "cutoff": "2026-10-01T16:00:00+00:00",
   "canonical_definition": "D2_directional_only",
   "canonical_value_at_cutoff": 59755,
   "since": "2026-07-11T00:00:00+00:00",
   "d1_d3_at_cutoff": {
    "D1_expired_ok_in_gate": 122919,
    "D2_directional_only": 59755,
    "D3_weekly_rule_mature": 122770
   },
   "marker": "RTD-D2-MONTHLY=59755",
   "note": "this is the monthly RTD pin -- the number that goes into the Monthly plain boxes"
  },
  "prior_window_summary": {
   "applicable": true,
   "start": "2026-08-01T00:00:00+00:00",
   "end": "2026-09-01T00:00:00+00:00",
   "effective_start": "2026-08-01T00:01:00+00:00",
   "cutoff": "2026-09-01T16:00:00+00:00",
   "partial": false,
   "note": "August is a full month: forecasts and candles from 2026-08-01",
   "counters": {
    "forecasts_total": 42654,
    "ok_in_gate": 40979,
    "mature": 40979,
    "mature_directional": 19383,
    "mature_sideways": 21596
   },
   "lineage_splice_counts": {
    "claude-opus-4.8": 0,
    "grok-4.5": 4520,
    "qwen-3.7-max": 870
   },
   "field": {
    "hit_rate": {
     "month": 0.455,
     "prior": 0.4633,
     "delta_pp": -0.8
    },
    "gap_pp": {
     "month": 17.0,
     "prior": 16.3,
     "delta_pp": 0.7
    },
    "brier": {
     "month": 0.2796,
     "prior": 0.2784
    },
    "mean_conf": {
     "month": 62.6,
     "prior": 62.6
    },
    "n": {
     "month": 20682,
     "prior": 19383
    }
   },
   "consensus": {
    "lift_pp": {
     "month": -9.7,
     "prior": 1.9,
     "delta_pp": -11.6
    },
    "n_scoreable": {
     "month": 17625,
     "prior": 16089
    },
    "herd_share_pct": {
     "month": 99.2,
     "prior": 98.7
    }
   },
   "leader": {
    "month": "gemini-3.1-pro",
    "month_hit_rate": 0.4851,
    "prior": "claude-opus-5",
    "prior_hit_rate": 0.4779
   },
   "per_model": {
    "claude-fable-5": {
     "hit_month": 0.4537,
     "hit_prior": 0.4673,
     "hit_delta_pp": -1.4,
     "gap_month": 15.6,
     "gap_prior": 13.9,
     "gap_delta_pp": 1.7,
     "n_month": 2945,
     "n_prior": 2812
    },
    "claude-opus-5": {
     "hit_month": 0.4538,
     "hit_prior": 0.4779,
     "hit_delta_pp": -2.4,
     "gap_month": 15.9,
     "gap_prior": 13.2,
     "gap_delta_pp": 2.7,
     "n_month": 2532,
     "n_prior": 2281
    },
    "deepseek-v4-pro": {
     "hit_month": 0.4526,
     "hit_prior": 0.4554,
     "hit_delta_pp": -0.3,
     "gap_month": 15.3,
     "gap_prior": 15.4,
     "gap_delta_pp": -0.1,
     "n_month": 3352,
     "n_prior": 2578
    },
    "gemini-3.1-pro": {
     "hit_month": 0.4851,
     "hit_prior": 0.4761,
     "hit_delta_pp": 0.9,
     "gap_month": 18.0,
     "gap_prior": 18.8,
     "gap_delta_pp": -0.8,
     "n_month": 3284,
     "n_prior": 3033
    },
    "gpt-5.6-sol": {
     "hit_month": 0.4446,
     "hit_prior": 0.4586,
     "hit_delta_pp": -1.4,
     "gap_month": 23.5,
     "gap_prior": 21.8,
     "gap_delta_pp": 1.7,
     "n_month": 3133,
     "n_prior": 2970
    },
    "grok-4.6": {
     "hit_month": 0.4439,
     "hit_prior": 0.4527,
     "hit_delta_pp": -0.9,
     "gap_month": 15.8,
     "gap_prior": 15.1,
     "gap_delta_pp": 0.7,
     "n_month": 2271,
     "n_prior": 2708
    },
    "qwen-3.8-max": {
     "hit_month": 0.4471,
     "hit_prior": 0.4565,
     "hit_delta_pp": -0.9,
     "gap_month": 14.7,
     "gap_prior": 14.7,
     "gap_delta_pp": 0.0,
     "n_month": 3165,
     "n_prior": 3001
    }
   },
   "per_symbol": {
    "BNB": {
     "hit_month": 0.4512,
     "hit_prior": 0.4807,
     "hit_delta_pp": -3.0,
     "n_month": 3994,
     "n_prior": 3857
    },
    "BTC": {
     "hit_month": 0.4597,
     "hit_prior": 0.4648,
     "hit_delta_pp": -0.5,
     "n_month": 3987,
     "n_prior": 4068
    },
    "ETH": {
     "hit_month": 0.4538,
     "hit_prior": 0.4287,
     "hit_delta_pp": 2.5,
     "n_month": 3973,
     "n_prior": 3695
    },
    "SOL": {
     "hit_month": 0.4403,
     "hit_prior": 0.4733,
     "hit_delta_pp": -3.3,
     "n_month": 4420,
     "n_prior": 3928
    },
    "XRP": {
     "hit_month": 0.4705,
     "hit_prior": 0.4673,
     "hit_delta_pp": 0.3,
     "n_month": 4308,
     "n_prior": 3835
    }
   },
   "log_line": "prior_window: n_mature_directional=19383, effective_start=2026-08-01T00:01:00+00:00, field hit=0.4633 gap=16.3, loo lift=1.9",
   "note_definitions": "the prior block is window A of the MONTH pull, matured at the prior cutoff with the same rules; delta = month - prior in percentage points"
  },
  "prior_reproduces_monthly1": {
   "pins_source": "the published Monthly #1 JSONs calibration-monthly-2026-08.json, consensus-watch-monthly-2026-08.json, model-watch-monthly-2026-08.json (window 2026-08-01 .. 2026-09-01, cutoff 2026-09-01T16:00Z)",
   "note": "month.prior_window of this run has the window, the cutoff and the definitions of the month Monthly #1 published; each check is printed and stored as a fact. A mismatch is not fatal and nothing is adjusted to match.",
   "applicable": true,
   "d2_cutoff_used": "2026-09-01T16:00:00+00:00",
   "d2_slot_bound": "2026-09-01T00:00:00+00:00",
   "checks": {
    "prior_window.counters.mature_directional": {
     "pin": 19383,
     "got": 19383,
     "match": true,
     "tolerance": 0,
     "published_path": "calibration-monthly-2026-08.json $.tables.counters.mature_directional"
    },
    "prior_window.calibration.field.hit_rate": {
     "pin": 0.4633,
     "got": 0.4633,
     "match": true,
     "tolerance": 5e-05,
     "published_path": "calibration-monthly-2026-08.json $.tables.calibration_main[7].hit_rate"
    },
    "prior_window.calibration.field.gap_pp": {
     "pin": 16.3,
     "got": 16.3,
     "match": true,
     "tolerance": 0.05,
     "published_path": "calibration-monthly-2026-08.json $.tables.calibration_main[7].gap_pp"
    },
    "prior_window.consensus.loo_pooled.lift_pp": {
     "pin": 1.9,
     "got": 1.9,
     "match": true,
     "tolerance": 0.05,
     "published_path": "consensus-watch-monthly-2026-08.json $.tables.pooled.lift_pp"
    },
    "prior_window.model_watch.leaderboard[0].model": {
     "pin": "claude-opus-5",
     "got": "claude-opus-5",
     "match": true,
     "tolerance": 0,
     "published_path": "model-watch-monthly-2026-08.json $.tables.leaderboard.rows[0].model"
    },
    "prior_window.model_watch.leaderboard[0].hit_rate": {
     "pin": 0.4779,
     "got": 0.4779,
     "match": true,
     "tolerance": 5e-05,
     "published_path": "model-watch-monthly-2026-08.json $.tables.leaderboard.rows[0].hit_rate"
    },
    "research_to_date.at_prev_cutoff.D2_directional_only": {
     "pin": 39073,
     "got": 39073,
     "match": true,
     "tolerance": 0,
     "published_path": "model-watch-monthly-2026-08.json $.research_to_date.platform.resolved_forecasts"
    }
   },
   "all_match": true,
   "n_checks": 7,
   "n_match": 7
  },
  "note": "controls are DESCRIPTIVE and never fatal; they are printed in the log as well",
  "builder_prior_vs_published_monthly1": {
   "source": "month.prior_window of this pack vs the published Monthly #1 JSONs (calibration-monthly-2026-08.json, consensus-watch-monthly-2026-08.json, model-watch-monthly-2026-08.json)",
   "applicable": true,
   "checks": [
    {
     "check": "field hit rate",
     "pack_prior_window": 0.4633,
     "published_monthly1": 0.4633,
     "tolerance": 5e-05,
     "match": true,
     "published_path": "calibration-monthly-2026-08.json tables.calibration_main[Field].hit_rate"
    },
    {
     "check": "field gap pp",
     "pack_prior_window": 16.3,
     "published_monthly1": 16.3,
     "tolerance": 0.05,
     "match": true,
     "published_path": "calibration-monthly-2026-08.json tables.calibration_main[Field].gap_pp"
    },
    {
     "check": "field Brier",
     "pack_prior_window": 0.2784,
     "published_monthly1": 0.2784,
     "tolerance": 5e-05,
     "match": true,
     "published_path": "calibration-monthly-2026-08.json tables.calibration_main[Field].brier"
    },
    {
     "check": "LOO lift pp",
     "pack_prior_window": 1.9,
     "published_monthly1": 1.9,
     "tolerance": 0.05,
     "match": true,
     "published_path": "consensus-watch-monthly-2026-08.json tables.pooled.lift_pp"
    },
    {
     "check": "herd share pct",
     "pack_prior_window": 98.7,
     "published_monthly1": 98.7,
     "tolerance": 0.05,
     "match": true,
     "published_path": "consensus-watch-monthly-2026-08.json tables.pooled agree.n / (agree.n + disagree.n)"
    },
    {
     "check": "leader model",
     "pack_prior_window": "claude-opus-5",
     "published_monthly1": "claude-opus-5",
     "tolerance": null,
     "match": true,
     "published_path": "model-watch-monthly-2026-08.json tables.leaderboard.rows[0].model"
    },
    {
     "check": "leader hit rate",
     "pack_prior_window": 0.4779,
     "published_monthly1": 0.4779,
     "tolerance": 5e-05,
     "match": true,
     "published_path": "model-watch-monthly-2026-08.json tables.leaderboard.rows[0].hit_rate"
    },
    {
     "check": "mature directional",
     "pack_prior_window": 19383,
     "published_monthly1": 19383,
     "tolerance": 0,
     "match": true,
     "published_path": "calibration-monthly-2026-08.json tables.counters.mature_directional"
    }
   ],
   "n_checks": 8,
   "n_match": 8,
   "all_match": true,
   "note": "printed in the build log as facts; never a source of a printed number"
  }
 }
}
