The dispersion-adaptive band widened the cumulative-return tolerance with the
forward's realized dispersion. But in prod the correlation sub-check does NOT run
(CockpitBacktestRefProvider passes daily_returns=None), so the cumulative band is
the ONLY always-on divergence check. Widening it there makes a real-capital gate
MORE likely to PASS a non-reproducing/underperforming forward with no correlation
backstop. The error asymmetry for a real-money gate: false-WAIT costs only time
(safe); false-PASS deploys on a dead edge (dangerous). The gate must err toward
WAIT, so the band must NOT be loosened.
Restore the fixed tight band `tol_frac * max(|expected|, min_band)` (0.5, 0.05):
remove RECON_DISPERSION_K, the _pstdev realized-dispersion term, and the
max(..., k*dispersion) widening. The correlation sub-check code is kept as-is
(harmless; fires only when a daily series is supplied, e.g. in tests). The lumpy
edge is handled the safe way — the bybit_4edge min_forward_days 14->21 bump stays
(a longer, more representative window lowers false-WAIT without loosening pass).
Tests: replace the adaptive-band tests with tight-band contract tests (band is the
fixed formula; a lumpy negative window below the fixed band WAITs with NO dispersion
widening; a steady mirage below the band WAITs on the cumulative check alone). The
21d-window test updates stay.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>