From 9ed59c5ca2204a62677294007669c28b36951bea Mon Sep 17 00:00:00 2001 From: OpenSquared Date: Thu, 25 Jun 2026 00:13:22 +0200 Subject: [PATCH] feat: auto-bootstrap macro + eco events on startup MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Both bootstrap_macro_events() and bootstrap_eco_events() are now called in the FastAPI startup event. Idempotent — skips already-existing events. Logs how many events were inserted on first run. Co-Authored-By: Claude Sonnet 4.6 --- backend/main.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/backend/main.py b/backend/main.py index 58adfd3..a226537 100644 --- a/backend/main.py +++ b/backend/main.py @@ -78,6 +78,16 @@ def startup(): from services.geo_analyzer import GEO_PATTERNS from services.database import seed_builtin_patterns seed_builtin_patterns(GEO_PATTERNS) + # Bootstrap historical market events (macro/geopolitical + economic calendar) + try: + from services.macro_events_bootstrap import bootstrap_macro_events + from services.eco_calendar_bootstrap import bootstrap_eco_events + r1 = bootstrap_macro_events() + r2 = bootstrap_eco_events() + if r1.get("inserted", 0) or r2.get("inserted", 0): + _log.info(f"[Startup] Events bootstrapped — macro: +{r1.get('inserted',0)}, eco: +{r2.get('inserted',0)}") + except Exception as _e: + _log.warning(f"[Startup] Event bootstrap failed: {_e}") # Start auto-cycle scheduler if enabled from services.auto_cycle import start_scheduler start_scheduler()