All notable changes to TradingChassis Ops Lab are documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
docs/failure-modes.md— authoritative failure mode contract and inventory. Maps all local operational failure modes to trigger, expected exit, artifact/signal, journal event, metric/dashboard signal, recovery/verification steps, and0.8.0status. Covers: artifact health, evidence, safety, connectivity readiness, connectivity probe, reconciliation/drills, and observability failure modes. MkDocs nav entry added under Concepts.- Artifact-backed Prometheus metrics for existing
drills/*.jsonartifacts (Unit 2):tradingchassis_ops_lab_failure_drill_executed_total{run_id, drill_name}— 1 per discovered drill artifact.tradingchassis_ops_lab_failure_drill_last_pass{run_id, drill_name}—1(pass),0(fail),-1(unknown).tradingchassis_ops_lab_failure_drill_last_outcome{run_id, drill_name}— stable integer outcome encoding.
- Grafana dashboard panels in
tradingchassis-ops-lab-run-observability.json(Unit 3):Reconciliation Status— queriestradingchassis_ops_lab_reconciliation_status; artifact-backed fromreconciliation_result.json.Failure Drill Last Pass— queriestradingchassis_ops_lab_failure_drill_last_pass; value-mapped 1=pass, 0=fail, -1=unknown.Failure Drill Outcome— queriestradingchassis_ops_lab_failure_drill_last_outcome; value-mapped 1=expected_warning, 2=expected_mismatch, 3=simulated_recovery_ok, -1=unknown.
- Four new runbooks (Unit 4):
docs/runbooks/artifact-health.md— missing/malformed run artifacts.docs/runbooks/evidence-compare.md—tc evidence comparediagnostics.docs/runbooks/safety-gate.md— paper blocked by kill switch.docs/runbooks/observability-no-data.md— Grafana/Prometheus no-data states.
- MkDocs nav updated to include all four new runbooks.
docs/demo-flow.md§13 expanded with 0.8.0 drill/metrics/Grafana panel/runbook demo guidance.
docs/failure-modes.md— all "planned Unit N" status entries updated to "implemented" after each unit shipped; runbook cross-links added to all applicable failure mode rows.docs/roadmap.md—0.8.0moved from near-term to completed milestones; current position table and capability gap analysis updated to reflect0.8.0state.docs/roadmap.md— failure modes and runbooks row updated to reflect complete0.8.0state.docs/limitations.md— deferred failure mode categories documented with cross-link tofailure-modes.md.docs/scope.md— forward reference to0.8.0failure-mode visibility added.docs/run-model.md— cross-link tofailure-modes.mdadded.
- No new CLI commands.
- No new drills.
- No new artifact types or artifact roots.
- No metrics behavior changes beyond Unit 2 additions.
- No dashboard alerts.
- No Alertmanager integration.
- No live/testnet/exchange connectivity.
- No real orders/fills/account/balance/position state.
- No PnL/performance analytics.
- No Kubernetes/GitOps.
- Backtest-vs-paper evidence schema v1 and pure operational comparison contract.
- Evidence compare CLI:
tc evidence compare --backtest-run-id <id> --paper-run-id <id>
- Evidence artifacts under
artifacts/evidence/<backtest_run_id>__<paper_run_id>/:backtest_vs_paper_evidence.jsonbacktest_vs_paper_evidence.md
- Path-safety validation for run IDs used in evidence artifact path handling.
- Aggregate artifact-backed evidence metrics:
tradingchassis_ops_lab_evidence_backtest_vs_paper_status_totaltradingchassis_ops_lab_evidence_backtest_vs_paper_statustradingchassis_ops_lab_evidence_artifacts_present_totaltradingchassis_ops_lab_evidence_known_gaps_totaltradingchassis_ops_lab_evidence_journal_shared_events_totaltradingchassis_ops_lab_evidence_compared_fields_total
- Grafana evidence panels:
Backtest vs Paper Evidence StatusEvidence Known Gaps
tc metrics serve --evidence-rootfor aggregate evidence metrics in local Prometheus/Grafana workflows.
- README, quickstart, demo flow, run model, backtest-vs-paper, scope, limitations, and architecture docs now include the backtest-vs-paper evidence workflow and evidence metrics visibility path.
- Scope/limitations/index/roadmap docs now mark
0.7.0as implemented and emphasize operational evidence boundaries. tc metrics serveguidance now consistently includes--evidence-root artifacts/evidencewhen demonstrating evidence panel visibility.
0.7.0demonstrates operational evidence and expected mode differences between backtest and synthetic paper runs.0.7.0does not include PnL/performance analytics (no Sharpe/Sortino/returns/profitability claims).0.7.0does not include real orders/fills, live/testnet/exchange evidence, or equivalence claims.0.7.0does not include account/balance/position state evidence.0.7.0does not include a generic run diff framework.0.7.0does not include strategy plugin framework work.0.7.0does not include external state reconciliation across venues.0.7.0does not include Kubernetes/GitOps work.
- Grafana connectivity readiness dashboard panel:
Connectivity Readiness. - Local loopback-only connectivity probe command:
tc connectivity probe --spec <path> --url <loopback-url> [--timeout-ms <int>]
- Deterministic probe artifact output:
artifacts/runs/<run_id>/connectivity_probe.json. - Metadata probe summary patch under
metadata["connectivity_probe"]. - Journal event append:
connectivity_probe_evaluated. - Report probe section update behavior when
report.mdalready exists. - Artifact-backed probe Prometheus metrics:
tradingchassis_ops_lab_connectivity_probe_statetradingchassis_ops_lab_connectivity_probe_performedtradingchassis_ops_lab_connectivity_probe_latency_secondstradingchassis_ops_lab_connectivity_probe_http_status
- Grafana probe panels:
Connectivity Probe StateConnectivity Probe Latency
- Local probe docs/demo flow updates for loopback probe workflow and artifact inspection.
- Connectivity probe failure runbook:
docs/runbooks/connectivity-probe-failed.md.
- Clarified docs wording that
binance/binance_testnetare RunSpec venue labels and do not imply active external connectivity. - Expanded Quickstart and Demo Flow with local loopback probe workflow and artifact inspection path.
- Clarified probe metrics caveat:
tc metrics exportstill requiresmetrics.json; init+probe alone does not create it.
0.6.0is the local loopback connectivity probe milestone.- Probe is local-only and loopback-only; no real Binance/testnet/live connectivity is included.
- No non-loopback network access is included.
- Probe remains read-only and does not submit/cancel/flatten orders.
- No account/balance/position fetching is included.
- No signed endpoint handling is included.
- No credential validation is included.
- Probe artifacts/metadata/journal/report and probe metrics do not store response body.
- No adapter framework is included.
- No Kubernetes/GitOps work is included.
- RunSpec
connectivity_readinesscontract block for local-only readiness metadata. - Validation for readiness placeholder env names, duplicate/overlap placeholders, and readiness venue matching top-level venue.
- Local readiness command:
tc connectivity readiness --spec <path>. - Local readiness states:
disabledmissing_credentialsconfiguredinvalid_configunknown
- Readiness artifact output:
artifacts/runs/<run_id>/connectivity_readiness.json. - Metadata readiness summary patch under
metadata["connectivity_readiness"]. - Journal event append:
connectivity_readiness_evaluated. - Report readiness section update behavior when
report.mdalready exists. - Artifact-backed readiness Prometheus metrics:
tradingchassis_ops_lab_connectivity_readiness_statetradingchassis_ops_lab_connectivity_readiness_enabledtradingchassis_ops_lab_connectivity_readiness_missing_required_env_totaltradingchassis_ops_lab_connectivity_readiness_probe_performed
- Readiness is local preflight only; no network calls are performed.
- Env var values are never stored in readiness artifacts, metadata, journal, reports, or metrics output.
- Readiness metrics do not expose env var names.
tc metrics exportstill requiresmetrics.json; readiness-onlytc run init+tc connectivity readinessruns do not createmetrics.json.- No exchange/testnet/live connectivity is included.
- No provider API calls are included.
- No real credential validation is included.
- No account/balance/position fetching is included.
- No order submission/cancel/flatten behavior is included.
- No external reconciliation is included.
- No adapter framework is included.
- No dashboard/alerting expansion is included.
- No Kubernetes/GitOps work is included.
- Built-in Nautilus demo scenario for local backtest runs:
ops_smoke_demo. - Hardcoded scenario registry with clear validation failure for unknown scenario names.
- Scenario execution facts in run artifacts (
metadata.json,metrics.json,journal.jsonl,report.md). - Artifact-backed Prometheus scenario metrics derived from
metrics.json:tradingchassis_ops_lab_backtest_scenario_strategy_registeredtradingchassis_ops_lab_backtest_scenario_bars_seen_totaltradingchassis_ops_lab_backtest_scenario_orders_submitted_totaltradingchassis_ops_lab_backtest_scenario_fills_totaltradingchassis_ops_lab_backtest_scenario_deterministic_action_triggered
- Renamed example RunSpec scenario identity from
toy_mean_reversiontoops_smoke_demoto avoid implying a real alpha strategy implementation. - Clarified RunSpec strategy contract:
strategy.name/strategy.versionare scenario identity and traceability metadata in current scope. - Updated README, quickstart, demo flow, run model, and roadmap wording for the built-in local scenario behavior and metrics verification path.
- No dynamic custom strategy loading/plugin framework is included.
- No strategy parameters, optimization, or parameter sweeps are included.
ops_smoke_demodoes not submit orders (orders_submitted = 0,fills_count = 0).- No PnL/Sharpe/returns/profitability/alpha metrics are included.
- No orderbook/L2 support is included.
- No exchange/testnet/live connectivity is included.
- Artifact-backed runtime safety snapshot integration for kill-switch state in run metadata.
- Kill-switch state metric export via
tradingchassis_ops_lab_kill_switch_state. - Deterministic paper lifecycle safety gate path with
safety_blockedartifact status when kill switch is active. Safety statusreport section for paper lifecycle safety outcomes.- Grafana
Kill Switch Statepanel in the local run observability dashboard.
- Demo flow and docs now include explicit active -> blocked -> clear -> normal paper safety walkthrough.
- Roadmap tracking now marks Runtime Safety Integration as completed in
0.3.0.
- No real order cancellation is included.
- No position flattening is included.
- No production safety guarantees are implied.
- No exchange/testnet/live connectivity is included.
- Local artifact-backed metrics serving via
tc metrics serveat/metrics. - Local Prometheus + Grafana Compose stack under
deploy/observability/. - Provisioned Prometheus datasource and Grafana dashboard wiring for local runs.
- Configurable local observability environment variables:
TC_METRICS_TARGETTC_PROMETHEUS_PORTTC_GRAFANA_PORT
- Local observability documentation was aligned for Dev-Container-first and host-Compose workflows across
README.md, quickstart, demo flow, and roadmap.
- No live exchange connectivity is included.
- No testnet connectivity is included.
- No production monitoring guarantees are implied.
- No profitability or strategy-performance claims are made.
- RunSpec validation and run artifact initialization workflow.
- Local synthetic dataset preparation for the fixture-backed demo path.
- Deterministic dataset fingerprint generation.
- Minimal NautilusTrader smoke backtest execution path.
- Paper lifecycle skeleton with no exchange or testnet connectivity.
- Artifact-driven Prometheus text metrics export.
- File-based kill switch state and event workflow.
- File-based reconciliation checks from expected vs observed inputs.
- Deterministic local failure drills with corresponding runbooks.
- Curated sample artifacts for portfolio review.
- MkDocs Material documentation site with GitHub Pages publishing workflow.
- Contribution guardrails in
CONTRIBUTING.mdand repository checks inscripts/check.sh.
- No live exchange connectivity is included.
- No production trading safety guarantees are implied.
- No profitability or strategy-performance claims are made.