# PRE-REGISTRATION — the runtime-dividend A/B leg (window 2026-08-21, 06:30–11:00 UTC)

Registered 2026-08-20, before any scored call. Rides the research-hub side's
slack in the batched window; FIRST-CUT on my side if time runs long (before
any other lane's legs are squeezed).

## The question
The archive records the live MoE seat's observed decode jumping ~145 → ~205
tok/s around the ollama 0.32.9 → 0.32.13 upgrade, with three unseparated
candidate causes filed at the time: a genuine runtime gain, contention (the
earlier reading had a 70B co-resident), or num_ctx drift. This leg separates
them: same model, same posture, same box, same hour — only the runtime
differs.

## Design
- Arm OLD: ollama 0.32.9 in a container (docker run, official image
  ollama/ollama:0.32.9, model dir bind-mounted read-only or model pulled
  fresh into a scratch volume if blob format demands; GPU passthrough),
  serving gemma4:26b at the C5 posture.
- Arm NEW: the box's installed runtime (0.32.13/current), same model, same
  posture.
- Rule: temperature 0, seed 0, think false, num_ctx 32768, num_predict 220,
  the robber Q1 prompt (fixed, published in the robber prereg); n=10 scored
  per arm after 1 warm-up; serial; unloaded box per the window posture.
  Metric: decode tok/s from the runtime's own counters, median.
- The container is REMOVED at leg end; the resident set untouched (the
  window's own open/close handles residents).

## Predictions (falsifiable, written now)
- P1: the NEW runtime's median exceeds OLD's by >25% under identical
  posture (the "free speed" is real and mostly runtime).
- P2: OLD's median lands near the archive's ~145 (within ~15%), retroactively
  explaining the old observation without contention.
- FAIL CASE: if OLD ≈ NEW, the dividend legend is REFUTED as a runtime
  effect and the article says so (contention/num_ctx become the leading
  causes; the piece becomes "the number that fooled us").

## Refusal paths (recorded, not improvised)
If the 0.32.9 image is unavailable/incompatible with the blob or GPU stack
inside the window's time box: record the refusal verbatim in RESULTS-AB.md,
run NOTHING, and the article uses only dated cross-version observations with
their confounds named. No heroics inside a shared window.

## Artifacts
RESULTS-AB.md + ab-runs.json in this dir, box-neutral. Run id:
runtime-dividend-ab-2026-08-21.
