DashboardProbes › Feature-Realness Instrument-Grounding Loop

opendeviationbar-py · bounded campaign · started 2026-07-22

🧪 Feature-Realness Instrument-Grounding Loop

Before a promoted feature can be called real or useful, the instrument that judges it must itself be proven on data where the right answer is known. This bounded loop grounds the 20 candidate instruments (#0–#19) — one per iteration, in dependency order — then STOPS. Every iteration emits one HTML page, appended to the ledger at the bottom of this index.

13 / 20
instruments grounded
11
discovered (candidates)
0 / 30
columns with grounded evidence
P4 ▸
#12 operator-ruling · #13 next

What this loop does

Each candidate instrument sits an entrance exam: the §4 five-control battery (positive / negative-null / substitution / power-calibration / invariance-leakage), plus its instrument-specific Harden item and a published detection envelope. It ends with a terminal verdict:

DISCOVEREDUNDER EVALUATIONGROUNDED (or REJECTED / UNVERIFIABLE-PARK)

Only a GROUNDED instrument may later judge a real feature. The graduation tally is the loop's STOP condition: when all 20 carry a terminal verdict, the loop publishes a completion page and ends.

Substrate gate. Instruments #1 (future-perturbation invariance) and #0 (CPCV purge/embargo) ground first. If either fails to ground, the campaign HALTS before the realness/utility instruments — every downstream out-of-sample number rides on the substrate.

Hard operating rules

Dependency order (frozen)

PhaseInstruments (in order)
SEALreal-data-only control substrate self-validation (first firing)
Substrate#1 future-perturbation invariance → #0 CPCV purge/embargo (both GROUNDED or HALT)
Realness#2 block-perm null → #3 effective-n+FDR → #6 SFI → #8 DSR → #9 PBO → #10 Harvey-Liu-Zhu
Usefulness#4 Rank IC → #5 IC-decay → #7 MDA → #19 quantile monotonicity
Conditional#11 CMI → #12 knockoffs → #13 DML
Increment / mechanism#14 spanning → #15 mechanism-intensity
Robustness / detector#16 structural-break → #17 plateau → #18 detector lead-lag

Full per-instrument Admit / Graduate / Harden rows: METRIC-EVALUATION-FRAMEWORK.md §7. Metric tables twin: The Realness Question.

Next iteration

#13 — DML/CPI (conditional axis continues) — while #12 awaits the operator ruling. #12 slice 4 (iter 25) exhausted the standard Gaussian model-X construction: power ceiling 0.67 @IC=.03 (4 statistics, need .8) and an irreducible realised FDR ~1.3× (conservative-q FAILS — no operating point with FDR≤.10 AND power). Both frozen @IC=.03 gates are unmet; the operator rules between (a) a proper TSKI build, (b) accepting the realised-FDR≈.13 + IC≥.05 envelope, or (c, recommended) routing the conditional-axis FDR-selection role to #13 and recording #12 as construction-limited. Per (c), the next firing proceeds to #13 Double/Debiased ML + CPI (handles dependence via orthogonalisation) while #12 holds for the ruling (applied retroactively via supersedes:). The conditional axis stays covered by #11 (GROUNDED) + #13.

Iteration ledger (append-only)

One row per firing. The loop appends below the marker; rows are never edited or deleted (corrections are new rows with supersedes:). Each row links the iteration's own HTML page.

#DateInstrument / stepVerdictPage
12026-07-22SEAL · real-data-only control-substrate self-validationSEAL-PASS lab openiter 1 →
22026-07-22#1 · future-perturbation invariance (causality floor)GROUNDEDiter 2 →
32026-07-22#0 · CPCV purge/embargo (leakage-free partition)CHECKPOINT 6/7 · PBO openiter 3 →
42026-07-22#0 · CPCV purge/embargo (supersedes iter 3) — ★ substrate gate PASSGROUNDEDiter 4 →
52026-07-22#2 · block-permutation shuffled-label null (realness) · P2GROUNDEDiter 5 →
62026-07-22#3 · effective-n deflation + BH-FDR (realness) · P2GROUNDEDiter 6 →
72026-07-23#6 · SFI single-feature OOS (usefulness) · P2GROUNDEDiter 7 →
82026-07-23#8 · Deflated Sharpe Ratio (on SFI paths) · P2CHECKPOINT 3/5 · SR0 calibrationiter 8 →
92026-07-23#8 · Deflated Sharpe Ratio (supersedes iter 8) — permutation SR0GROUNDEDiter 9 →
102026-07-23#9 · PBO / CSCV (on the SFI trial matrix) · P2CHECKPOINT 1/7 · null≈.5 ✓, thresholds marginaliter 10 →
112026-07-23#9 · PBO / CSCV (supersedes iter 10) — within-block IC + full-shuffle null + K=100GROUNDED 7/7 · 6 seedsiter 11 →
122026-07-23#10 · Harvey–Liu–Zhu t≥3 (M_eff) · P2 · realness axis completeGROUNDED 6/6 · 5 seeds · perm-calibrated FWERiter 12 →
132026-07-23#4 · Rank IC + ICIR + HAC-t · usefulness axis opensCHECKPOINT 2/5 · injection fixed · period-IC rewriteiter 13 →
142026-07-23#4 · Rank IC (supersedes iter 13) — period-IC rewriteCHECKPOINT 4/5 robust · FPR lag-tension → operatoriter 14 →
152026-07-23#4 · Rank IC (supersedes iter 13, 14) — #10 perm-FPR resolves the flagGROUNDED 5/5 · 5 seeds · first usefulnessiter 15 →
162026-07-23#5 · IC-decay / half-life · usefulnessGROUNDED 4/4 · 5 seeds · overlap→HAC load-bearingiter 16 →
172026-07-23#7 · MDA + clustered-MDA (ONC) · usefulnessGROUNDED 5/5 · 5 seeds · ONC defeats substitutioniter 17 →
182026-07-23#19 · Quantile monotonicity + PT/RW MR · usefulnessCHECKPOINT 5/6 base · per-test perm FPR · 3 openiter 18 →
192026-07-23#19 · Quantile monotonicity (supersedes iter 18) — tie-robust + both-halves RWGROUNDED 6/6 · 5 seeds · usefulness roster completeiter 19 →
202026-07-23#11 · Conditional MI I(f;Y\|S) · conditional axis opensCHECKPOINT 5/5 slice · 2 seeds · marg≈0 · iid/AR(1)+high-dim-S deferrediter 20 →
212026-07-23#11 · Conditional MI (supersedes iter 20) — all 4 nulls + high-dim-S + imperfect-S envelopeGROUNDED 8/8 · 2 seeds · AR(1) no-inflate · conditional axisiter 21 →
222026-07-23#12 · Model-X Knockoffs · conditional axis · slice 1CHECKPOINT MVR power 0.95 · iid-FDR inflates 0.25 → block/TSKI nextiter 22 →
232026-07-23#12 · Model-X Knockoffs · slice 2 — course-correctionCHECKPOINT FDR≠autocorr (falsified); plain-knockoff anti-conservative, knockoff+ 0.0; interaction RF-W 1.0 vs lasso 0.0iter 23 →
242026-07-24#12 · Model-X Knockoffs · slice 3 — power contourCHECKPOINT wide panel + KnockoffFilter; power .71→1.0 (IC .03→.07), FDP ~1.5× q → conservative-q (PATTERN #2)iter 24 →
252026-07-24#12 · Model-X Knockoffs · slice 4 — standard construction exhaustedOPERATOR RULING power ceiling 0.67 @IC=.03; conservative-q FAILS (FDR stuck ~1.3×); recommend route→#13iter 25 →