name: schedopt_confirm
investigation: schedopt-v1
intent: "\\begin{intent}[Confirmation on held-out seeds]\n\\label{schedopt-confirm-intent}\n\\begin{llm}[claude-opus-4-8]\n\
  Phase 3 of the schedopt campaign: the only reportable numbers. The top three \\@[schedules]{schedule}\
  \ from the Phase-2 search plus the fixed-\\@[\u03B1]{alpha} baseline, each run on 150 held-out \\@[seeds]{seed}\
  \ never used in any earlier phase, scored on the frozen objective (m\\_star=92.5, k=400). The gap between\
  \ search and holdout crossing probability is the winner's-curse bias and is reported, not hidden.\n\\\
  end{llm}\n\\end{intent}\n"
hypothesis: '\begin{hypothesis}[The winner survives the holdout but drops from its search value]

  \label{schedopt-confirm-hypothesis}

  \begin{llm}[claude-opus-4-8]

  The best candidate''s holdout crossing probability is lower than its search value (expected selection
  bias) but still beats the baseline decisively on the paired McNemar test.

  \end{llm}

  \end{hypothesis}

  '
seed: 9000
base_args:
- curriculum
- --with-replacement
- --dataset-sentence-count
- '48000'
- --eval-ref-alphas
- '1.4'
- --num-pairs
- '1000'
- --n-iterations
- '150'
- --no-dataset-cache
- --no-waypoint-checkpoints
- --no-plot
runs:
- label: cand1
  args:
  - --schedule
  - 3.1128:25,3.0863:25,3.0348:25,2.9587:25,2.8585:25,2.7343:25,2.5864:25,2.4148:25,2.2199:25,2.0016:25,1.7601:25,1.4955:25,1.2078:25,0.8972:25,0.5636:25,0.2073:25
  - --waypoints
  - '25'
  - '50'
  - '75'
  - '100'
  - '125'
  - '150'
  - '175'
  - '200'
  - '225'
  - '250'
  - '275'
  - '300'
  - '325'
  - '350'
  - '375'
  - '400'
- label: cand2
  args:
  - --schedule
  - 4.2358:25,4.0116:25,3.7763:25,3.5344:25,3.2878:25,3.0374:25,2.7839:25,2.5278:25,2.2694:25,2.009:25,1.7467:25,1.4827:25,1.2172:25,0.9502:25,0.682:25,0.4124:25
  - --waypoints
  - '25'
  - '50'
  - '75'
  - '100'
  - '125'
  - '150'
  - '175'
  - '200'
  - '225'
  - '250'
  - '275'
  - '300'
  - '325'
  - '350'
  - '375'
  - '400'
- label: cand3
  args:
  - --schedule
  - 3.2007:25,3.1661:25,3.1038:25,3.016:25,2.904:25,2.7689:25,2.6113:25,2.4318:25,2.2309:25,2.009:25,1.7666:25,1.5038:25,1.221:25,0.9185:25,0.5965:25,0.2551:25
  - --waypoints
  - '25'
  - '50'
  - '75'
  - '100'
  - '125'
  - '150'
  - '175'
  - '200'
  - '225'
  - '250'
  - '275'
  - '300'
  - '325'
  - '350'
  - '375'
  - '400'
- label: baseline
  args:
  - --schedule
  - 1.6:25,1.6:25,1.6:25,1.6:25,1.6:25,1.6:25,1.6:25,1.6:25,1.6:25,1.6:25,1.6:25,1.6:25,1.6:25,1.6:25,1.6:25,1.6:25
  - --waypoints
  - '25'
  - '50'
  - '75'
  - '100'
  - '125'
  - '150'
  - '175'
  - '200'
  - '225'
  - '250'
  - '275'
  - '300'
  - '325'
  - '350'
  - '375'
  - '400'
compare:
  metric: unseen_mismatch
claims:
- id: cand1_beats_baseline
  expect:
    arm: cand1
    rel: <
    ref: baseline
  measure: time_to_band
  adjudicate: seeds
  source: schedopt pre-registration, design spec 2026-07-21
- id: cand2_beats_baseline
  expect:
    arm: cand2
    rel: <
    ref: baseline
  measure: time_to_band
  adjudicate: seeds
  source: schedopt pre-registration, design spec 2026-07-21
- id: cand3_beats_baseline
  expect:
    arm: cand3
    rel: <
    ref: baseline
  measure: time_to_band
  adjudicate: seeds
  source: schedopt pre-registration, design spec 2026-07-21
objective:
  kind: crossing
  metric: unseen_mismatch
  m_star: 92.5
  k: 400
  w_smooth: 1
  w_dwell: 2
  source: experiments/schedopt/config.json
