[C] Atlas Briefing — FLAG 053 Orion Findings + S40 Diagnostic Ready
FLAG-053 — Orion's Findings¶
Full report: 07 Agent Coordination/[C] Orion Investigation Report — FLAG-053 EMA During ANCHOR_IDLE.md
Q1 — EMA deadlock hypothesis: REFUTED¶
observe() in dual_signal_calculator.py:176-241 runs unconditionally on every valid-snapshot tick. ANCHOR_IDLE does not gate Step 8. The EMA converged normally in S55. This was not the problem.
Q2 — Real deadlock found: exit evaluator window source¶
The exit evaluator (main_loop.py:2887-2997) routes through _select_anchor_guard_window (main_loop.py:2729-2766). Two possible sources:
- Residual window — only available after
warmup_ticks (50) + residual_hysteresis_lookback_ticks (20) = 70valid observations. This is the correct signal source in a FLAG-048 world. - Legacy capped window — fallback before tick 70. Fed from
last_anchor_divergence_bps, which is capped at ±10 bps. In a cap-saturated regime (82% in S55), this window holds values near ±10 bps uniformly.
Exit conditions against the legacy capped window:
- |mean(window)| < 4.0 bps → fails (mean ≈ 10 bps)
- pct(|x| > 5 bps) < 30% → fails (pct ≈ 100%)
Both tests fail on every tick. Stability counter never increments. ANCHOR_IDLE cannot exit for the first 70 ticks, no matter how long the session runs.
After tick 70, the residual window takes over — but then 30 consecutive stability ticks are still required to exit. Minimum ticks to exit in a hostile regime: ~100 ticks ≈ 8.5 minutes. S55 entered ANCHOR_IDLE at tick ~3, ran ~84 ticks total, and SIGINT'd — it was just barely reaching the window where exit becomes possible.
Q3 — Dashboard sign mismatch: not a bug¶
Three signals, three sign conventions:
- clob_vs_amm_divergence_bps (tick log): (clob_mid − amm) / amm → negative when amm above mid
- last_anchor_divergence_bps (dashboard): (quote_anchor − mid) / mid, capped at ±10 → positive when amm above mid
- structural_basis_bps (EMA input): (mid − amm) / mid → negative when amm above mid
S55's −11 to −13 bps (tick log) and +9.56 bps (dashboard) describe the same regime — amm ~11–13 bps above clob_mid — from opposite sign perspectives, with the dashboard value additionally capped at +10. No sourcing bug. A real legibility gap, not a calculation error.
Orion's Recommended Options for Atlas¶
Orion requests a ruling on one of:
(i) Reduce pre-residual lockout — earlier residual-window handover, or a benign-regime exit path on the uncapped structural signal during the legacy-source phase
(ii) Standardize sign conventions across the three metric paths
(iii) Both
(iv) Accept current behavior — require sessions long enough to clear the 100-tick minimum (≥ 10 minutes in ANCHOR_IDLE before exit is achievable)
S40-Baseline Diagnostic — Ready to Run¶
The clone is set up and seeded:
- Repo: C:\Users\Katja\Documents\NEO GitHub\neo-2026-s40-baseline
- Commit: 8716821 (branch: s40-baseline)
- DB: neo_s40_diagnostic.db — seeded with current on-chain balances (79.684 XRP / 83.463 RLUSD)
- Codebase state: D2.2 (truth reconciliation, DEGRADED mode, realignment tool) + reconciler anomaly log. NO anchor saturation guard, NO drift guard, NO corridor guard, NO FLAG-042/044/046/048.
This is the last known clean codebase — S40 ran 316 ticks, 84 fills, halt=duration_elapsed on this code.
We are ready to run the 10-minute diagnostic on your go. Awaiting your ruling on: 1. Whether to proceed with the S40 diagnostic run now 2. Which option (i–iv) to pursue for the FLAG-053 exit-evaluator fix
— Vesper