A live-attributed “disagreement ceiling” selection gate (skip the high-disagreement / low-ask tail) is OOS-rejected — a directional NO-GO on all 6 grid combos. The tail’s live loss is execution (the break-even limit chasing low-ask reprices up + adverse fill selection), not selection — at the ask that flow is +EV, so a ceiling deletes good fires. The actionable lever is the limit/fill path, not the fire selector.

For Agents — binding rules

  1. Selection on modeled edge is a DEAD END in BOTH directions. A FLOOR (raising EMIT_MIN_EDGE) was already wrong; a CEILING (this study) is OOS-rejected. The frozen rule’s at-ask EV is thin-but-positive and slicing by edge-band does not isolate +EV from −EV — every band is ~breakeven at the ask. Do not build an edge-band fire filter.
  2. The disagreement tail’s live loss is EXECUTION, not selection. The actionable lever is the fill/limit path — cap fire_limit near the ask on low-ask/high-disagreement fires (don’t chase the reprice) — NOT the fire selector.
  3. The at-ask walk-forward harness CANNOT validate an execution fix (it fills at the ask by construction). Testing a don’t-chase limit tweak needs a fill/repricing model or a live shadow A/B.

The finding — live attribution

From the 2026-07-03 live P&L attribution session (realized_pnl_usd ground truth, Jul 2–3; see crypto-shortterm-pnl-attribution-corrections-2026-07-03):

  • ~60% of fills are “high-disagreement” flow — the market prices the token far below our model (ask ~0.62 vs p_side ~0.865).
  • That tail realized 0.64 win vs 0.85 in the agreement zone, and was the entire booked loss.
  • Hypothesis: a “disagreement ceiling” SELECTION gate — skip fires where ask < ~0.70 or modeled edge ≥ ~0.07.

Validation — OOS walk-forward (decisive NO-GO)

Ran the shave through the refit/exit walk-forward machinery on BTC (same day-fold + clustered-bootstrap + trial-deflation rig as crypto-shortterm-exit-loss-cut-study-2026-07-01 and the 2026-07-03 refit study):

  • Labels = ACTUAL market resolutions (won_up via extract_refit_btc.sh + the winners CSV) — NOT resolved_up (which over-books near-ties, per crypto-shortterm-pnl-attribution-corrections-2026-07-03).
  • 21-day actual-resolution parquet; purged/embargoed expanding day folds; clustered bootstrap; bar = deflated_threshold(6, 1.64) = 3.53.
  • Baseline at-ask EV +28.1 over 4,965 OOS windows (19 days after embargo — matches the refit study’s universe).
GridResult
All 6 ceiling combosNO-GO — every ceiling lowers at-ask EV
Tightest (max_edge < 0.05)at-ask EV −7.3 (deletes the most good flow)
Best comboΔz = −1.45 vs bar +3.53; no majority-positive folds

This is a DIRECTIONAL rejection, not mere insignificance — the ceiling makes at-ask EV worse, monotonically in how much of the tail it cuts.

Why — the tail is execution-toxic, not selection-toxic

At the ask the disagreement tail is +EV/neutral. Low-ask (high-disagreement) fires pay more per win (buy 0.62 → a win pays 0.38), so a selection ceiling deletes good flow. This is the pricing-premium finding from prior sessions (“disagreement is the private edge”) re-confirmed against actual resolutions.

The live loss is in the FILL, not the fire. An independent live cross-check shows the tail:

  • fills 3.3c ABOVE the emit-ask — the break-even limit_price (observe::fire_limit, commit df6f500) chases the reprice up = ~2.3c/share EV drag — vs 1.7c BELOW ask on the core flow;
  • carries a depressed FILLED win rate (0.639 vs 0.674 signal) = likely adverse fill selection (you get filled precisely on the fires that are about to go wrong).

Both mechanisms tie to the known FAK-reprice finding: the ask lifts within ~0.7s on 19–38% of fires (DOWN worse) — see crypto-shortterm-fak-nomatch-root-cause-2026-07-02. Chasing that reprice with a break-even limit is what turns a +EV-at-ask population into a live loser.

Binding conclusions

  1. Edge-band fire selection is a dead end both ways. FLOOR (EMIT_MIN_EDGE↑) already wrong; CEILING OOS-rejected here. Every edge-band is ~breakeven at the ask — the thin-but-positive frozen-rule EV does not decompose into a +EV keep and a −EV drop.
  2. The disagreement tail’s live loss is EXECUTION. The break-even limit (df6f500) chasing low-ask fires up + adverse fill selection. Lever = the limit/fill path: cap fire_limit near the ask on low-ask/high-disagreement fires — don’t chase. Not the selector.
  3. Method caveat: the at-ask walk-forward harness cannot validate an execution fix (fills at the ask by construction). A don’t-chase limit tweak needs a fill/repricing model or a live shadow A/B — not this rig.

Artifacts

  • Branch feat/disagree-study (worktree): refitlib first_fires_ceil + bin/disagree_study.rs; all 4 gates clean; NOT committed pending review.
  • Report: docs/superpowers/disagree-study-btc-report.md.
  • Spec: docs/superpowers/specs/2026-07-03-disagreement-ceiling-design.md (updated to NO-GO).
  • babylon pmv2 #1045 / #1046.