Was imported locally inside handle_cancel; moved to top-level so
patch.object works correctly in test_cancel_existing_order.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Fix tests: add matcher/__init__.py to make it a Python packageβ
Required for 'from matcher.matcher import ...' in test_matcher.py
to resolve correctly when pytest runs from the project root.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Kafka-based stock exchange simulation with:
- Order matcher engine with SQLite persistence
- FIX protocol OEG server and UI clients
- Frontend order entry with real-time book/trades
- Trading dashboard with SSE streaming and charts
- Market data feeder, consumer, and snapshot viewer
- Docker Compose orchestration for all services
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>