# Pending Guideline Fixes (September 2025) ## Overview The following gaps violate our "no stubs, no synthetic data" policy and must be resolved before the dashboard can operate in production. Inline TODOs with matching wording have been added in the codebase. ## Items 1. **Prediction aggregation** – `TradingOrchestrator._get_all_predictions` still raises until the real ModelManager integration is written. The decision loop intentionally skips synthetic fallback signals. 2. **Device handling for CNN checkpoints** – the orchestrator references `self.device` while loading weights; define and manage the device before the load occurs. 3. **Trading balance access** – `TradingExecutor.get_balance` is currently `NotImplementedError`. Provide a real balance snapshot (simulation and live). 4. **Fallback pricing** – `_get_current_price` now raises when no market price is available. Implement a real degraded-mode data path instead of hardcoded ETH/BTC prices. 5. **Pivot context prerequisites** – ensure pivot bounds exist (or are freshly calculated) before requesting normalized pivot features. 6. **Decision-fusion training features** – the dashboard still relies on random vectors for decision fusion. Replace them with real feature tensors derived from market data. ## Next Steps - Prioritise restoring real prediction outputs so the orchestrator can resume trading decisions without synthetic stand-ins. - Sequence the remaining work so that downstream components (dashboard panels, executor feedback) receive genuine data once more.