โ€บNavigation

Iteration 1 โ€” Scaffold: Rulebook Frozen + Forex Defect Diagnosed FROZEN

What happened in this iteration, in plain words: we built the certification lab itself and locked its rulebook. No instrument has been judged yet โ€” that starts next iteration. But this iteration also produced one real forensic finding for free: we traced exactly why forex has zero regime-invariance results (it was a five-word list of crypto column names silently starving the instrument), wrote the fix plan, and pinned it as the loop's first repair job.

What was achieved (layman's list)

#AchievementWhy it matters
1The rulebook is written and frozen. The pre-registration fixes the six interview questions, the pass/fail rules, the verdict grammar, and the never-true stop condition โ€” before any candidate is seen. The git commit that lands it is the tamper-proof timestamp.Nobody (including us) can move the goalposts after seeing a result we don't like. This is the anti-self-deception anchor.
2The six-gate interview (M0โ€“M5) is specified, ordered cheapโ†’expensive, default = reject.Candidates die cheaply; only serious ones reach the expensive tests; the lab can't drift into hoarding gauges.
3The judge will be judged first. Four self-test controls (disguised duplicate, noise dial, planted signal, historical replay) are defined and BLOCKING โ€” no real candidate until all four pass.A lab that can't catch a fake or spot a plant produces worthless verdicts. We prove the lab before trusting it.
4The reject-list (boneyard) is seeded with 15 instruments, each with the reason it died on record.Rejected ideas can't sneak back in next quarter wearing a new name. Knowledge we never re-buy.
5The work queue (frontier) is pinned: โ‘  fix forex wiring โ†’ โ‘ก count k-of-N per regime โ†’ โ‘ข stronger stability falsifier (F014) โ†’ โ‘ฃ expiry alarm (deferred by operator).The loop starts on the items that unlock the most status declarations, not on whatever is easiest.
6The forex blackout is solved on paper. Root cause found at the exact lines of code; fix plan + acceptance criteria written; fail-loud guard designed so this class of silent failure can never recur.Half the goal (all forex statuses) was structurally impossible. Now it's one code change + one capped re-run away.
7Operator decisions recorded before the freeze: the expiry alarm (CTM monitor) is deferred until enough instruments are certified; an interim freshness rule applies meanwhile.The rulebook reflects the operator's actual priorities, and the deferral itself is on the record.

The forex defect โ€” how a five-word list blinded half the goal

The regime-invariance instrument (ICP) orients itself using five "anchor" columns. Those five names are crypto column names. The forex table has entirely different columns. The code's reaction to finding fewer than 3 anchors was continue โ€” skip silently. Every forex regime got skipped, so the instrument returned an empty page that looked like "no findings" instead of "I never looked."
ACTIVE = ["vwap_close_deviation", "trade_intensity",        โ† 5 CRYPTO column names
          "kyle_lambda_proxy", "ofi", "volume_per_trade"]      (tier_a_scale_spike_v2.py:23)
                       โ”‚
        for each of the 10 FOREX regime environments:
                       โ”‚
        act = [a for a in ACTIVE if a in idx]                โ† finds 0 of 5 on fxview
        if len(act) < 3: continue                            โ† SILENT skip (line 159-160)
                       โ”‚
        all 10 environments skipped โ†’ len(envs) < 3 โ†’ NaN for every feature
                       โ”‚
        result: "forex|EURUSD|5": {}          โ† empty page, no error, no log line
                       โ–ผ
        downstream: FRAGILE / CONDITIONAL / STABLE undeclarable for ALL forex features
THE FIX (planned, awaiting operator go for the re-run):
1. ACTIVE โ†’ per-market map: crypto names + forex names
   (forex anchors already computed, data-driven:
    duration_us ยท intra_duration_us ยท max_gap_duration_us(?) ยท intra_intensity_qps ยท intra_burstiness)
2. thread the market through ICP + granger echo
3. FAIL LOUDLY: all-environments-skipped must raise, never return {}
4. re-run Tier-A EURUSD@5 (capped, read-only) โ†’ accept iff forex ICP map non-empty,
   nulls still collapse, crypto results bit-identical

Technical record

ItemValue
Audit twin (machine-readable SSoT)findings/evolution/audits/2026-07-02-matrix-admission-paradox-loop/
Frozen documentM0-MATRIX-ADMISSION-PRE-REGISTRATION.md โ€” freeze = the landing commit SHA (operator decision 2026-07-03)
Frozen labelwalk-forward orthogonality persistence (S0 ยง2 inherited); no return/money label
GatesM0 status-linkage ยท M1 trust-anchor ยท M2 substrate validity ยท M3 redundancy attack ยท M4 incremental value (held-out, S0 ยง5 rule) ยท M5 power (planted signal); T1โ€“T4 leakage guard wraps M4/M5
Verdict grammarADMIT(market, regime-scope, role, expiry) ยท INCLUDE-IF(condition) ยท EXCLUDE(reason โˆˆ OFF-GOAL/POLICY/TEXTBOOK-ONLY/DUPLICATE-GAUGE/DEAD-WEIGHT/BLIND-GAUGE)
Standing rulesper-substrate verdicts (no cross-market transfer) ยท every ADMIT carries expiry ยท Loop-2 may only consume certified, unexpired instruments
Defect evidenceicp_v3_cross_regime.json โ†’ "forex|EURUSD|5": {} ยท attribution in FULL-GRID-SCALE-VERDICT.md (2026-06-12) ยท root cause tier_a_scale_spike_v2.py:23,117,158-160 ยท forex anchors in e123_v3_results.json โ†’ forex_central_columns.top5
Ledger stateempty (first four rows will be the self-test controls)
Compute / prod impactnone โ€” documentation + diagnosis only; zero ClickHouse access this iteration

โ–ถ Next iteration

Iteration 1 ยท 2026-07-03 ยท scaffold + freeze + diagnosis ยท read-only ยท append-only