fix: pipeline health — stuck docs, price fallback, sentiment normalization, signal-engine scale, quality gate

- Scheduler: lower stale threshold 240→30 min, batch limit 100→500, TTL 14400→3600
- Prediction snapshot: add 24h market_snapshots time-window fallback
- Aggregation: add normalize_impact_scores() z-score normalization
- Helm: signal-engine replicas → 0 (idle when dual pipeline disabled)
- Quality gate: max_snapshot_age_hours 24→48
- Add backfill script for NULL price_at_prediction snapshots
- Add PBT bug condition and preservation tests (14 tests)
This commit is contained in:
Celes Renata
2026-07-10 20:16:01 +00:00
parent a4f51c00e1
commit ca712ad4a0
15 changed files with 1815 additions and 9 deletions
@@ -17,6 +17,8 @@ services:
replicas: 1
dashboard:
replicas: 1
signalEngine:
replicas: 0
## Beta-specific config overrides
## Beta shares the paper DB — DEPLOY_STAGE=beta isolates Redis keys
@@ -52,3 +52,5 @@ ingress:
services:
extractor:
replicas: 1
signalEngine:
replicas: 0
+1 -1
View File
@@ -128,7 +128,7 @@ services:
limits: { cpu: 200m, memory: 128Mi }
signalEngine:
replicas: 1
replicas: 0
pipeline: true
image: signal-engine
command: "python -m services.signal_engine.main"