| Step | Result |
|---|---|
| Run 1 โ iid row-permutation null (K=99, shared) | DEGENERATE โ n_acc=0 for all 29 features ร 15 subsets. Vacuous M3 (constant readout, ฯโก0). NOT reported as a pass. |
| Attack (verify-before-report) | iid permutation destroys serial dependence โ deflated null spread of block means โ systematic over-rejection. The harvest dossier's autocorr note predicted precisely this: "block-null calibration at ~2K bars/regime required." |
| Run 2 โ chunk-permutation null (200 chunks ร L=103, within-chunk serial structure preserved; ยง0 doctrine: permutations of real values) | Readout de-degenerates: bimodal n_acc โ {0, 15} โ 5/29 features all-accept (invariance-rich), rest all-reject. Worst |ฯ| = 0.252 < 0.95 vs e-ICP-fp min_e/n_acc, k_v, mean redundancy โ M3 CLEAR, non-vacuously. |
The five invariance-rich features: price_impact, bar_categorical_recurrence_rate, bar_sign_markov_flux, bar_ehlers_increment_asymmetry, bar_cox_stuart_trend_z. The last two are 2 of the 3 features e-ICP-fp produced identified invariant sets for (row 34) โ agreement across mechanically unrelated instruments (env-labelled e-value fold-products vs label-free time-block statistics). Disagreement on aggression_ratio (e-ICP identifies; seqICP rejects) recorded. Standing rule for this candidate: crypto runs REQUIRE the block-aware null.