refactor(ml): extract observability, stress-testing, security into sub-crates
- ml-observability (1.2K lines): alerts, dashboards, metrics modules.
Depends on ml-core + common (ModelType). 4 tests passing.
- ml-stress-testing (1.3K lines): load_generator, market_simulator,
performance_analyzer modules. Depends on ml-core + common + config.
5 tests passing.
- ml-security (1.4K lines): anomaly_detector, prediction_validator
modules. Depends on ml-core + ml-ensemble (EnsembleDecision,
ModelVote, TradingAction). 17 tests passing.
Total: 18 sub-crates extracted from ml monolith.
Workspace: 0 errors, ml tests 876 + 26 in new sub-crates.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>