Navigation
FXView forex · ODB pipeline · Chatterjee ξ keeper-confirmation · nasimubd · autonomous loop

Iteration 2 — SOTA hardening + Challenge-and-Held → PR 1

Before letting the ξ probe touch a single candidate, this iteration hardened it against the SOTA literature and put it through a two-agent Attacker/Defender adversarial review (20 challenges). The conceded gaps were fixed; PR 1 (harness build) is open for review. The headline finding: the "universal absorber" from iter 1 was an overlapping-window artifact and collapsed under disjoint sampling.

11
SOTA concepts (8 applied)
20
challenges → 19 fixed
0.95→0.55
hawkes absorber collapse
harness build (do not merge)
Headline — the iter-1 "universal absorber" was an artifact. Under iter-1's overlapping windows (stride 1–4, 199/200 shared bars) hawkes_intensity_bar_last appeared to absorb ~14/16 candidates at ξ 0.83–0.95. The SOTA (Lin & Han 2022) says heavily-overlapping windows make every rolled feature near-identical row-to-row, spuriously inflating ξ. Switching to disjoint sampling (stride ≥ 200) dropped the max absorber to 0.47–0.55 and hawkes vanished from the top slot. Had we run the full battery on the v1 probe, we'd have wrongly dropped most of the slate. This is exactly why the mission mandates hardening before the run.

Phase 2 — SOTA robustness (applied vs deferred)

Primary-source review (Chatterjee 2021; Lin & Han 2022/23/24; Shi-Drton-Han 2022; Dalitz 2024; Politis-Romano 1994; Holm 1979; Hill 1973). Real-data methods only — anything needing synthetic/surrogate data is forbidden here.

conceptdecisionwhy
Disjoint (stride ≥ window) samplingAPPLIEDkills overlapping-window ξ inflation — the #1 correctness win
Tie-aware general ξₙ + pairwise-NaN-dropAPPLIEDfinancial bars are tie-heavy; impute = synthetic = forbidden
Seeded permutation X-tie-breakAPPLIEDunbiased (random within ties) AND replay-bit-exact
Independence p √(5n/2)·ξ→N(0,1)APPLIED (support)tie-frac-vetoed; anti-conservative under regime persistence → never gates
Holm step-down over 143 colsAPPLIED (support)family gate stays effect-size + ≥2-symbol replication
Scale-free degeneracy = effective levelsAPPLIEDquantile-bin perplexity + near-zero-magnitude prong; replaces range<1e-9
Per-pair n floor + full ξ-vector auditAPPLIEDkills thin-pairing inflation; HOLD calls auditable
Lin–Han boosted ξ_{n,M} (higher power)DEFERREDchanges null calibration; 0.50 cut is ~9σ above the n=149 null — no extra power needed
Politis–Romano subsampling CI (real-data)DEFERREDpoint-estimate gate is canon; survivors-only CI is a later add; bootstrap-w/-replacement is forbidden + proven inconsistent (Lin & Han 2024)
FOCI / CODEC (Azadkia–Chatterjee)OUTremoved from the battery per operator directive

Phase 3 — Challenge and Held (Attacker + Defender)

An ATTACKER subagent raised 20 concrete challenges; conceded gaps were fixed; a DEFENDER subagent adjudicated each against the fixed code. 18 HELD / CONCEDED→FIXED, 1 fixed post-adjudication, 1 minor structural by design. Full per-challenge verdicts with line-level evidence are in the committed 2026-06-06-xi-harness-hardening-and-challenge-held.md (PR 1).

#sevchallengeverdict
1/20CRITaggregate ingested sibling-dir unhardened JSONs as good cellsFIXED schema HARD-HALT (verified: skipped 44, refused to emit)
2MAJORresume-skip keyed on filename only → stale cells inheritedFIXED resume now checks schema, else recomputes
4MAJORdeterministic tie-break biases ξ on discrete columnsFIXED seeded permutation; self-test 0.990 / −0.282
6MAJORindependence p anti-conservative under tiesFIXED tie-frac veto wired into p + Holm
13MAJORthin pairwise-n inflates the top absorberFIXED per-pair n≥80 floor for eligibility
15MAJORHOLD adjudication not recoverable (only top absorber stored)FIXED full ξ-vector + WATCH; shoelace↔log_return_bar_sum=0.431
3,5,10,11,14,19magnitude prong / tie-ceiling / self-substrate / Holm-family / gap-mask / point-substrateHELD with code evidence
8MINORreplication biased toward liquid majors (thin slices)by design made transparent via per_symbol_cells

Validation evidence

[xi-selftest] xi(x->x^2)=0.990 (>0.80)  xi(x^2->x)=-0.282 (< fwd-0.15)  xi(x->indep)=0.029 (<0.20) => PASS
EURUSD_5_gold_rally  n=149 prod=125 cands=16 maxXI(c->c)=0.36 maxXI_abs(prod->c)=0.48   (disjoint; hawkes gone)
[aggregate-xi @ v1 dir]  SKIPPED 44 non-xi_v2_hardened JSONs; HARD-HALT: refusing to emit a verdict.
updown_cjs -> degenerate (magnitude prong, p50~3e-7);  candle_shoelace_area -> NOT degenerate (range 1.13e-4 > 1e-4)

What's next

Generated 2026-06-06 · iteration 2 · harness commit aaafdca · PR #86 (do not merge)