Entry-path unification (step 1): shared anti-chase gates on the live auto path
Closes the safety gap the consolidation pass found: the anti-chase / halt guards (the source-trader blow-up protections) ran ONLY on the fast trigger path, leaving live auto entries — which is where 100% of fills actually originate — unprotected. - Extract _anti_chase_skip(entry_ref, trigger, day_open, halted) from submit_breakout_now (pure refactor; the fast path is behaviour-identical, 60 trigger/exec tests still green). - Thread day_open through the setup dict (setup_evaluator) + query_ready_signals_snapshot so the auto path has the gate input. - request_approvals_for_ready_signals calls the shared gate behind TRADING_UNIFIED_ENTRY (env default on). The auto path rests a limit AT the trigger so it can't chase above it (over_extended is a no-op); the gate that bites is day-extension — don't enter a name whose breakout level is already >30% above the session open. Fail-open on missing day_open; halted=False (a resting limit won't fill mid-halt). Emits rule_type=over_extended_day on skip. - Boot log shows "anti-chase ON (auto path)". Tests: _anti_chase_skip logic, parabolic-day blocked when on, allowed when off, fail-open on missing day_open, normal day allowed. Full path suites green (73). Note: this is step 1 (the safety win). Full single-chokepoint + fill-model unification + halt-status-on-auto-path remain staged per docs/CONSOLIDATION_PLAN.md. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
1 parent
fb3f771935
commit
5de420fed9
5 files changed
+104
-16
No files matched your search
@@ -806,6 +806,7 @@ def main(argv: list[str] | None = None) -> int:
|
||||
if _es is not None:
|
||||
print(
|
||||
f"[boot] entry gates: VWAP {'ENFORCED' if _es.require_above_vwap else 'shadow-only'}"
|
||||
f", anti-chase {'ON (auto path)' if _es.unified_entry else 'fast-path only'}"
|
||||
f", daily-cap {_es.max_fresh_entries_per_day or 'off'}"
|
||||
f", risk-cap ${_es.max_risk_dollars:.0f}"
|
||||
)
|
||||
|
||||
Reference in new issue
Block a user