Make targets
All commands run from the workspace root (gordon-workspace/). These are top-level targets only — sub-repo make targets are not listed here.
Note: the seed, seed-*, fill-gaps, and precompute targets were removed 2026-04-19. Use gordon-data backfill instead — see data-seeding.
Dev
| Target | Description |
|---|---|
make dev-init | First-run: verify brew deps, initdb, run migrations, seed NATS stream (idempotent) |
make dev-up | Launch the dev stack via overmind (postgres + nats + all Rust services + console, host-native) |
make dev-down | Stop the dev stack; keeps ./data/ intact |
make dev-reset | Stop dev stack AND wipe ./data/ — full nuke, re-init needed |
make dev-seed | Backfill BTC+ETH 1y klines + overlays + GEX + macro (idempotent, ~20 min first run) |
make dev-psql | Open psql into the host Postgres (dev stack must be up) |
make dev-status | Overmind process status |
make dev-logs P=<name> | Tail logs from one process: make dev-logs P=data |
make dev-vault | Pull testnet keys from Ansible vault into .env.dev |
make dev-shell-env | Print export lines for hitting the dev console from a host shell |
make up | Start standalone PostgreSQL container |
make down | Stop standalone PostgreSQL container |
make reset | Stop PostgreSQL and delete all data |
make status | Show container status |
make logs | Tail PostgreSQL logs |
make psql | Open psql shell into the gordon database |
Test
| Target | Description |
|---|---|
make test-up | Bring up test infra: Postgres (5433) + NATS JetStream (4223), idempotent |
make test-down | Stop the test infra (keep volumes) |
make test-reset | Stop the test infra AND wipe volumes |
make test-psql | Open psql in the test Postgres as gordon_test |
make test-shell-env | Print export commands for test infra env vars |
make test-fast | Unit tier only across every Rust repo (no infra needed, target <30 s) |
make test-it | Integration tier across every Rust repo (requires make test-up) |
make test | Unit + integration tests across every Rust repo + lab (sequential — requires make test-up) |
make test-lab | Run gordon-lab tests (pytest) |
make check | Run fmt + clippy across every Rust repo + ruff on lab (sequential) |
make check-lab | Ruff lint + format check on gordon-lab |
make test-contract | Run cross-repo data contract test |
make drift-all | Run make drift in every gordon-* repo — catches OpenAPI/AsyncAPI/client drift |
make versions | Print Claude-readable cross-repo version drift table |
E2E
| Target | Description |
|---|---|
make e2e | Full run: preflight + sequential image builds + stack start + fixtures + Playwright + teardown |
make e2e-build | Build every service image sequentially (no teardown, no tests) |
make e2e-up | Start the v7 stack in the background (assumes images built) |
make e2e-soak-up | Start v7 stack in soak mode (real-time tick cadence, 60 s/kline) |
make e2e-down | Stop the v7 stack (keep postgres volume) |
make e2e-logs | Follow logs from every service |
make e2e-status | Show stack health + individual /healthz responses |
make e2e-shell-env | Print export lines for the targeted-Playwright loop |
make e2e-seed | Seed static provisioning rows for stack health |
make e2e-seed-readonly | Seed readonly-baseline fixture for the @readonly Playwright suite |
make e2e-seed-backtest-klines | Seed BTCUSDT 1d klines for the research-launch spec |
make e2e-preflight | Refuse-to-start checks: token / daemon / disk |
make e2e-recover | Detect prior-crash state + recover; named volumes preserved |
make e2e-force | Force unconditional recovery — skip detection |
make e2e-cache-clean | Aggressive Docker build cache cleanup |
make e2e-5x | Run make e2e 5 times sequentially (determinism gate) |
make e2e-binance-conformance | Conformance matrix vs both testnet + mock-binance |
make e2e-binance-conformance-mock-only | Conformance matrix vs mock-binance only (no creds) |
make e2e-binance-conformance-testnet-only | Conformance matrix vs Binance testnet only |
make e2e-money-path | money-path-02: entry fills, SL attached, trade row lands |
make e2e-emergency-flatten | money-path-04: emergency flatten + resume gate |
make e2e-risk-drawdown | money-path-05: DrawdownBreaker + halt-gate |
make e2e-risk-connectivity | money-path-06: ConnectivityBreaker |
make e2e-risk-vpin | money-path-07: VPINBreaker |
make e2e-risk-macro | money-path-08: MacroBreaker |
make e2e-risk-correlation | money-path-09: CorrelationBreaker |
make e2e-quarantine | money-path-12: quarantine state machine |
make e2e-executor-cluster | All executor-cluster bash scenarios |
make e2e-crash-drill | Scripted crash-recovery drill (money-path-19) |
Build
| Target | Description |
|---|---|
make ci-local-rust | Full CI parity across every Rust repo, serial |
make ci-local-ts | Full CI parity across every TypeScript repo, serial |
make ci-local-all | Full CI parity across workspace: versions + every repo's ci-local, serial |
make sync-crate-lock CRATE=<crate> [DEP=<dep>] [VERSION=<ver>] | Bump a per-crate Cargo.lock between releases |
make check-migrations | Assert migration idempotence + schema checksum vs pinned fixture |
make pin-schema-checksum | Regenerate schema checksum from live DB (run after new migrations) |
make new-migration NAME=<slug> | Create next migration file, open editor, apply and re-pin checksum |
make backtest | Run backtests: all strategies x 10 pairs x timeframes |
make backtest-strategy S=<name> | Run one strategy across all pairs |
make validate-overlays | Run overlay validation (60 backtests: ON vs OFF) |
make data-info | Show stored market data stats (read-only) |
Clean
| Target | Description |
|---|---|
make clean-workspace | Reclaim disk: cargo-sweep per sibling + docker prune. DRY=1 to preview. |
make clean-workspace-aggressive | Same as clean-workspace with AGGRESSIVE=1 (also clears cargo registry cache + npm cache) |
make disk-baseline | Terse disk snapshot: host df + per-repo target/ + docker system df + cargo registry |
Related
- Dev stack — dev loop workflow
- E2E testing — e2e suite details and targeted-test loop
- Data backfill —
gordon-data backfillCLI reference