Repository navigation
DepthSight Open Beta 0.3
·
63 commits
to main
since this release
Release Notes v0.3.0-beta
This release focuses on a deep architectural refactoring of the API and Celery integration layers, stabilizing the test suite by eliminating flaky test behaviors, and preparing the repository for continuous integration (CI/CD) with code coverage tracking.
Architectural Changes and Refactoring
- Circular Dependency Elimination: Celery/Redis configuration and environment variable loading have been decoupled from the API core and moved into a dedicated infrastructure layer (
infra/config.pyandinfra/celery_app.py). This fully resolves theapi.celery_app -> bot_module.configdependency cycle. - Streamlined API Routing: Replaced the legacy
ModuleProxy(lambda: depthsight_api...)implementation in endpoint definitions. Requests are now routed directly through explicit route submodules (api.routes.backtestsandapi.routes.diagnostics). - Backward Compatibility: Retained a compatibility import layer to ensure existing tests and third-party integrations do not break.
Test Suite and CI/CD Stability
- Pandas 3.0 Compatibility: Resolved chained assignment warnings/errors (caused by
inplace=Trueoperations on Series copies) that left the ATR column populated with NaNs under new Pandas versions in the CI environment. - Deterministic Strategy Builder Tests: Converted
test_limit_retest_orderandtest_limit_break_signal_mode_and_entry_pricefrom random walk candles to fully deterministic layouts with explicit stop-loss triggering to guarantee reliable local and remote runs. - Isolated ML Model Tests: Added a module-level skip check to
test_oracle_integration.pythat bypasses the oracle test suite when the heavy ML weights filedata/oracle_model.joblibis not checked into the repository (typical for headless CI runners). - CI Environment Mocks: Configured mock values for environment-level secrets (
JWT_SECRET_KEY,API_ENCRYPTION_KEY,API_KEY_SECRET) inconftest.pyto prevent FastAPI bootstrap crashes during isolated pipeline stages. - Isolated Test Strategy Registration: Registered
VolumeBreakoutandFakeBreakoutstrategies dynamically within the portfolio backtester test suite to keep test environments decoupled from production registry constraints.
Dependency and Coverage Management
- CI Python Runtime Upgrade: Upgraded the setup-python action version to
3.12to mirror the production Docker container and fix package compilation issues on Python 3.13. - Locked Dependencies: Pinned critical package versions (
ccxt==4.4.89,redis==6.2.0,fakeredis==2.30.0) inrequirements.txtto eliminate behavioral differences between development machines and Actions runners. - Codecov Integration: Configured XML test coverage reporting (
pytest-cov) and integrated the official Codecov GitHub Action to track code coverage stats on pull requests and commits.