================================================================================
                     MOMENTUM SYSTEM - QUICK REFERENCE
================================================================================

PHASE 1 (✅ COMPLETE): Core Infrastructure
────────────────────────────────────────────────────────────────────────────

What was built:
  ✓ core/contracts.py         Module I/O contracts (5 modules × 2 types each)
  ✓ core/telemetry.py         Metric collection + event emission
  ✓ core/validation.py        Data validation (schema, ranges, checksums, rules)
  ✓ 3 new event types        (ModuleTickEvent, DataValidationEvent, SymbolEvaluationDetailEvent)

Why it matters:
  BEFORE: ingest_live_minute_bars() → [silence] → "did it work?"
  AFTER:  "500 bars collected, 0 validation failures, completed in 245ms"

Key classes:
  TelemetryCollector        Record what's happening during execution
  TelemetryEmitter          Emit events to event store + callbacks
  ModuleMetrics             duration_ms, input_count, output_count, custom_metrics
  SchemaValidator           Check required fields and types
  BarDataValidator          Pre-built OHLCV validation

Quick import:
  from core.telemetry import TelemetryCollector, emit_module_tick
  from core.validation import SchemaValidator, BarDataValidator

Quick usage:
  collector = TelemetryCollector("evaluation")
  collector.record_input(5)
  collector.record_metric("gap_pct", 2.5)
  metrics = collector.finalize()
  emit_module_tick("evaluation", "completed", metrics)

================================================================================

PHASE 2 (📍 NEXT): Module Instrumentation (~4 hours)
────────────────────────────────────────────────────────────────────────────

What you'll do:
  1. Wrap ingest_live_minute_bars() with TelemetryCollector
  2. Wrap evaluate_setup() with telemetry + SymbolEvaluationDetailEvent
  3. Wrap research, execution, broker modules
  4. Update run_live_paper.py to initialize emitter
  5. Test and verify events appear in event store

Each module will emit:
  ✓ ModuleTickEvent at completion (duration, counts, metrics)
  ✓ DataValidationEvent when data validated
  ✓ SymbolEvaluationDetailEvent for each evaluation stage (evaluation module only)

See: PHASE2_PREVIEW.md for exact code examples

================================================================================

PHASE 3 (🔲 TODO): Inspection Dashboard API (~6 hours)
────────────────────────────────────────────────────────────────────────────

Build: api/inspection.py with REST endpoints

Endpoints:
  GET  /api/inspection/modules              module metrics table
  GET  /api/inspection/pipeline              pipeline flow diagram data
  GET  /api/inspection/symbol/:symbol        eval timeline for symbol
  GET  /api/inspection/data-quality          validation report
  GET  /api/inspection/events               SSE stream of events
  GET  /api/inspection/module/:m/history     last N executions

Projections to build:
  query_module_performance()
  query_symbol_evaluation_detail(symbol)
  query_data_quality_snapshot()
  query_pipeline_stats(session_id)

================================================================================

PHASE 4 (🔲 TODO): React Dashboard (~8 hours)
────────────────────────────────────────────────────────────────────────────

Build: api/inspection/ directory with React SPA

Features:
  □ Pipeline diagram (Mermaid auto-layout)
  □ Module performance grid (5x5 table with metrics)
  □ Symbol inspector (search + expandable stages)
  □ Sparkline charts (OHLCV with entry/stop lines)
  □ Event timeline (live feed with filtering)
  □ Data quality report (heatmap + validation stats)
  □ Live SSE updates + polling fallback
  □ Mobile responsive

Port: http://127.0.0.1:8011 (separate from execution dashboard :8010)

================================================================================

PHASES 5-8 (OPTIONAL): Refactoring & Testing
────────────────────────────────────────────────────────────────────────────

Phase 5: Module refactoring into explicit contracts
  modules/ingestion.py, research.py, evaluation.py, execution.py, broker.py

Phase 6: Module-level testing
  tests/modules/test_*.py (one per module)
  Fixtures for synthetic data (bull_flag_bars, fading_bars, etc.)

Phase 7: Dry-run mode + synthetic data
  python run_live_paper.py --dry-run --bars-provider synthetic:bull_flag

Phase 8: Rich TUI (terminal UI)
  python run_live_paper.py --tui
  (useful for SSH, CI/CD, no browser needed)

================================================================================

CURRENT FILES CREATED
────────────────────────────────────────────────────────────────────────────

Core:
  core/__init__.py
  core/contracts.py                          5 module contracts
  core/telemetry.py                          Metric collection + emission
  core/validation.py                         Multi-layer validation

Extended:
  storage/event_schema.py                    +3 event types

Documentation:
  README_ARCHITECTURE_REDESIGN.md            Start here! Big picture
  BUILD_SUMMARY.md                           All 8 phases + timeline
  PHASE1_IMPLEMENTATION.md                   How Phase 1 works
  PHASE2_PREVIEW.md                          Exact Phase 2 code examples
  INSPECTION_ROADMAP.md                      What you'll see after Phase 4
  QUICK_REFERENCE.txt                        This file

Old (no longer needed):
  ARCHITECTURE_VISUAL.html                   Old static visualization
  SYSTEM_FLOW.txt                            Old text flow diagram
  DATA_TRANSFORMATIONS.md                    Old transformation doc

================================================================================

TIMELINE
────────────────────────────────────────────────────────────────────────────

Week 1:
  Phase 1: Core infrastructure               ✅ DONE (~2 hours)
  Phase 2: Module instrumentation            📍 START (~4 hours)

Week 2:
  Phase 3: Inspection API backend            (~6 hours)
  Phase 4: React dashboard frontend          (~8 hours)

Week 3:
  Phase 5: Module refactoring                (~6 hours)
  Phase 6: Testing framework                 (~5 hours)

Week 4:
  Phase 7: Dry-run mode                      (~4 hours)
  Phase 8: TUI (optional)                    (~3 hours)

Total: ~4 weeks for full implementation, or ~2 weeks for core (1-4)

================================================================================

SUCCESS METRICS
────────────────────────────────────────────────────────────────────────────

After Phase 4, you'll be able to:

  ✓ Open http://127.0.0.1:8011 (inspection dashboard)
  ✓ See real-time module pipeline (ingestion → research → eval → exec → broker)
  ✓ Search for a symbol → see complete evaluation journey
  ✓ Understand why AAPL is blocked (exact stage, metric, threshold)
  ✓ View timestamps, metrics, and raw data for each stage
  ✓ See live event stream
  ✓ Access data quality report

Time to answer "why isn't AAPL signaling?" → 10 seconds (was 30 minutes)

================================================================================

KEY INSIGHTS
────────────────────────────────────────────────────────────────────────────

The System Used to Work Like:
  Alpaca API → [silence] → Signal ready → [silence] → Order submitted
  ❓ Were bars validated?
  ❓ Which criterion failed?
  ❓ How long did evaluation take?
  ❓ What was the gap%?

The System Will Work Like:
  Alpaca API → ModuleTickEvent(500 rows in, 245ms) → Signal ready
             → SymbolEvaluationDetailEvent(gap_checked: 2.1% ✓)
             → SymbolEvaluationDetailEvent(rvol_calculated: 1.2x ✗)
             → SymbolEvaluationDetailEvent(score: 48% < 60%)
             → Order rejected (criteria not met)

  Dashboard shows all of this in real-time

================================================================================

NEXT IMMEDIATE STEPS
────────────────────────────────────────────────────────────────────────────

1. Read README_ARCHITECTURE_REDESIGN.md          (10 minutes)
2. Read BUILD_SUMMARY.md                         (20 minutes)
3. Review PHASE1_IMPLEMENTATION.md               (15 minutes)
4. Skim PHASE2_PREVIEW.md for code examples      (10 minutes)
5. Decide: Start Phase 2 or want clarifications?

If starting Phase 2:
  Use PHASE2_PREVIEW.md as your code template
  Follow task list in BUILD_SUMMARY.md
  Test after each module (verify events in DB)
  Expected time: ~4 hours

================================================================================

QUESTIONS?
────────────────────────────────────────────────────────────────────────────

Common questions answered in:

  "How do I use TelemetryCollector?"
    → PHASE1_IMPLEMENTATION.md, "Usage Pattern" section

  "What does Phase 2 code look like?"
    → PHASE2_PREVIEW.md, Examples 1-4

  "What will the dashboard show me?"
    → INSPECTION_ROADMAP.md, "Real-Time Module Dashboard" section

  "Can I test modules independently?"
    → Phase 6, coming soon (BUILD_SUMMARY.md)

  "How do I run without API keys?"
    → Phase 7, --dry-run mode (BUILD_SUMMARY.md)

  "Where do I look if ingestion fails?"
    → Inspection dashboard, Module Grid, click "ingestion", see error

  "How do I know bars are being collected?"
    → ModuleTickEvent shows input_count after Phase 2

  "How do I verify research data?"
    → DataValidationEvent after Phase 2, dashboard after Phase 4

================================================================================

READY TO START?
────────────────────────────────────────────────────────────────────────────

Phase 1 is complete. You have the foundation.

Phase 2 is ~4 hours of work:
  - Wrap 5 modules with TelemetryCollector
  - Add validation checkpoints
  - Emit completion events
  - Test

After Phase 2, you'll start seeing telemetry events in your event store.
After Phase 4, you'll have a fully functional inspection dashboard.

Let's go!

================================================================================
