Standard Repo Gate
Run these before opening or merging a PR:
uv run ruff check --exclude nautilus_pm .
uv run ruff format --check --exclude nautilus_pm .
uv run pytest tests/ -q
You can also use the equivalent Make targets:
make check
make test
Useful Smoke Checks
uv run python backtests/kalshi_trade_tick_breakout.py
uv run python backtests/polymarket_trade_tick_vwap_reversion.py
uv run python backtests/polymarket_quote_tick_pmxt_ema_crossover.py
Quote-tick PMXT runners use the source path pinned in DATA.sources inside the
file. Public PMXT runners now pin local:/Volumes/LaCie/pmxt_raws first,
archive:r2.pmxt.dev second, and relay:209-209-10-83.sslip.io third. If that
local mirror path is absent, the loader falls through to archive and relay.
Those prefixes are the contract; do not use unprefixed hosts or ad hoc aliases.
Coverage is mixed by design:
- fast unit tests for strategy, loader, cache, and relay logic
- relay processor and API integration tests against temp dirs
- smoke tests that exercise real backtest flows
- generated chart output redirected to temp dirs during tests so the working tree stays clean
Docs Validation
When you change docs, README navigation, or MkDocs config, also run:
uv run mkdocs build --strict