initial: import DOLPHIN baseline 2026-04-21 from dolphinng5_predict working tree

Includes core prod + GREEN/BLUE subsystems:
- prod/ (BLUE harness, configs, scripts, docs)
- nautilus_dolphin/ (GREEN Nautilus-native impl + dvae/ preserved)
- adaptive_exit/ (AEM engine + models/bucket_assignments.pkl)
- Observability/ (EsoF advisor, TUI, dashboards)
- external_factors/ (EsoF producer)
- mc_forewarning_qlabs_fork/ (MC regime/envelope)

Excludes runtime caches, logs, backups, and reproducible artifacts per .gitignore.
This commit is contained in:
hjnormey
2026-04-21 16:58:38 +02:00
commit 01c19662cb
643 changed files with 260241 additions and 0 deletions

36
prod/exf_fetcher_flow_fast.py Executable file
View File

@@ -0,0 +1,36 @@
#!/usr/bin/env python3
"""
FAST ExF Fetcher - 100ms HZ Push Interval
==========================================
Optimized version with 5x faster Hazelcast updates (100ms vs 500ms).
Trade-offs:
- Latency: 100ms (vs 500ms) = 5x faster
- CPU: ~5% more usage (acceptable)
- Network: 5x more HZ writes (acceptable for localhost)
Use this when you need sub-100ms data freshness.
"""
import sys
sys.path.insert(0, '/mnt/dolphinng5_predict')
sys.path.insert(0, '/mnt/dolphinng5_predict/external_factors')
sys.path.insert(0, '/mnt/dolphinng5_predict/prod')
# Just change the interval constant and import the main flow
import exf_fetcher_flow
exf_fetcher_flow.HZ_PUSH_INTERVAL_S = 0.1 # 100ms instead of 500ms
exf_fetcher_flow.LOG_STATUS_INTERVAL = 600 # Log every 60 seconds (600 * 0.1s)
# Re-run the main flow
if __name__ == "__main__":
import argparse
parser = argparse.ArgumentParser(description="DOLPHIN ExF fast daemon (100ms)")
parser.add_argument("--warmup", type=int, default=exf_fetcher_flow.WARMUP_S)
args = parser.parse_args()
print("=" * 60)
print("FAST ExF Mode: HZ push every 100ms")
print("=" * 60)
exf_fetcher_flow.exf_fetcher_flow(warmup_s=args.warmup)