Atlas Check-In — FLAG-044 Episode Cap + Anchor Idle Mode¶
What Happened in S47¶
S47 halted at 33 ticks (~2.5 minutes) with degraded_episode_limit_halt. The FLAG-044 episode cap (3 episodes per source) fired before the cool-down had any meaningful effect.
Sequence:
1. Episode 1 — Drift guard (condition C): no opposing fill after 16 ticks → DEGRADED → cancel_all → truth check ok → EXIT DEGRADED. Drift cool-down armed (120 ticks, ~8 min).
2. Episode 2 — Anchor saturation: mean=−7.11 bps, 64% prevalence, fired immediately on the same tick cluster. Anchor has no cool-down yet → DEGRADED again. Different source, different episode counter.
3. Episode 3 — Another anchor/overlap event: 3rd episode hits → degraded_episode_limit_halt.
The drift cool-down worked exactly as designed. But the anchor guard, as a separate source, had no protection — it could fire immediately and push the episode count to 3 in under 3 minutes.
The Gap¶
FLAG-044's locked principle: "A bad regime is not, by itself, a reason to terminate the session."
But a 3-episode cap that fires in 33 ticks is functionally equivalent to halting on a bad regime — it just takes two extra steps. The cool-down doesn't help if a second guard fires immediately and drives the session to the cap before the first cool-down expires.
In a 2-hour session with a genuinely hostile anchor regime (50%+ >5bps, firing persistently), the anchor guard will keep re-entering DEGRADED regardless of the drift cool-down. The engine is currently not designed to wait out a prolonged anchor-hostile period.
Katja's Question — Two Possible Directions¶
Option A: Raise the episode cap / extend cool-down timing¶
Increase max_degraded_episodes_per_source_per_session (e.g., 5–10) or increase the cool-down duration so the breathing room is longer before the cap is reachable. Simple change, low risk.
Concern: This is still a blunt instrument. It delays the halt but doesn't change the fundamental dynamic — in a persistently hostile anchor regime, the engine will eventually hit the cap no matter how high it is.
Option B: Dedicated "Anchor Idle" mode (Katja's instinct)¶
Treat anchor saturation differently from other DEGRADED triggers. Introduce a lightweight ANCHOR_IDLE state that: - Pauses new quote placement (same as DEGRADED) - Cancels open orders (same as DEGRADED) - Does NOT count as a DEGRADED episode toward the FLAG-044 cap - Does NOT trigger the full DEGRADED recovery/retry machinery - Simply watches the anchor signal and resumes quoting automatically when anchor normalizes
Conceptually: anchor saturation is a market condition (CLOB-AMM divergence is hostile), not a safety/truth concern. The engine should be able to sit quietly in ANCHOR_IDLE for an extended period — potentially the entire 2-hour session if necessary — without consuming episode budget or escalating to halt.
DEGRADED episodes (and the episode cap) would then apply only to guards that indicate something more serious: directional drift (flow protection), inventory corridor (position risk), or truth divergence (safety). Those are the cases where repeated failure should escalate.
Rough state model:
ACTIVE
├── anchor hostile → ANCHOR_IDLE (no episode count, resume when anchor normalizes)
├── drift/corridor/truth → DEGRADED (episode count, recovery machinery, cap → halt)
└── ANCHOR_IDLE
└── anchor normalizes → ACTIVE
└── drift/corridor/truth fires while idle → DEGRADED (episode counted)
Questions for Atlas¶
Q1: Is Option B (ANCHOR_IDLE as a distinct state) architecturally sound? Does separating "regime pause" from "safety pause" align with your framework?
Q2: If Option B is approved, should ANCHOR_IDLE also handle directional drift, or is drift more like a safety concern (flow manipulation risk) that belongs in DEGRADED? Katja's instinct is that anchor is the main "wait it out" candidate — drift feels more urgent.
Q3: If Option A (raise the cap) is the preferred near-term path, what cap value do you recommend for 2-hour sessions? And does the cool-down duration (120 ticks) also need increasing?
Q4: Is there a hybrid — raise the cap for anchor saturation specifically (e.g., 10 anchor episodes per session) while keeping the current cap (3) for drift/corridor/truth?
Context¶
- S47 is the first session with FLAG-037 confirmed fixed. No phantom fills, truth check clean throughout. The only remaining obstacle is regime-driven early halts.
- Anchor regime has shifted from positive (+9 bps in S43-S45) to negative (−5 to −6 bps in S46-S47). CLOB-AMM gap improved to 1-3 bps during S47 — potentially favorable conditions ahead if the engine has more time to wait.
- Phase 7.4 requires 2 clean sessions (
duration_elapsed, guards active). Getting there requires the engine to survive 2 hours in the current regime without halting prematurely.
— Katja, BlueFly AI Enterprises