Files
trex-core/validation/trading-execution-adapter.json
T

78 lines
2.9 KiB
JSON

{
"schema_version": "trading-validation-project/v1",
"project_id": "trex-core-execution",
"project_root": "..",
"adapter_version": "v2",
"require_clean_worktree": true,
"stages": [
{
"id": "logic",
"command": ["uv", "run", "--with", "pytest", "pytest", "-q", "tests/application/test_execution.py", "tests/application/test_account_snapshot.py", "tests/application/test_asset_centric_admission.py"],
"timeout_seconds": 300
},
{
"id": "regression",
"command": ["uv", "run", "--with", "pytest", "pytest", "-q"],
"timeout_seconds": 900
},
{
"id": "virtual_contract",
"command": ["uv", "run", "--with", "pytest", "pytest", "-q", "tests/adapters/broker/test_kis.py", "tests/adapters/broker/test_kis_cancel.py", "tests/adapters/broker/test_venue.py", "tests/adapters/broker/test_ownership.py", "tests/runtime/test_account_snapshot_config.py"],
"timeout_seconds": 300
},
{
"id": "virtual_e2e",
"command": ["uv", "run", "--with", "pytest", "pytest", "-q", "tests/integration/test_kis_submission_recovery_virtual.py"],
"timeout_seconds": 300
},
{
"id": "fault_injection",
"command": ["uv", "run", "--with", "pytest", "pytest", "-q", "tests/integration/test_kis_submission_recovery_virtual.py", "tests/adapters/broker/test_kis.py", "tests/application/test_account_snapshot.py", "tests/application/test_execution_cancel.py"],
"timeout_seconds": 300
},
{
"id": "restart_recovery",
"command": ["uv", "run", "--with", "pytest", "pytest", "-q", "tests/integration/test_kis_submission_recovery_virtual.py", "tests/application/test_execution.py", "tests/application/test_execution_cancel.py", "tests/application/test_venue_intent_flow.py"],
"timeout_seconds": 300
},
{
"id": "ledger_reconcile",
"command": ["uv", "run", "python", "scripts/virtual_execution_final_state.py"],
"timeout_seconds": 300,
"required_files": ["${RUN_DIR}/ledger_reconcile/final_state.json"],
"json_checks": [
{
"file": "${RUN_DIR}/ledger_reconcile/final_state.json",
"pointer": "/status",
"equals": "PASS"
},
{
"file": "${RUN_DIR}/ledger_reconcile/final_state.json",
"pointer": "/open_orders",
"equals": 0
},
{
"file": "${RUN_DIR}/ledger_reconcile/final_state.json",
"pointer": "/positions",
"equals": 0
},
{
"file": "${RUN_DIR}/ledger_reconcile/final_state.json",
"pointer": "/duplicate_orders",
"equals": 0
},
{
"file": "${RUN_DIR}/ledger_reconcile/final_state.json",
"pointer": "/ledger_consistent",
"equals": true
},
{
"file": "${RUN_DIR}/ledger_reconcile/final_state.json",
"pointer": "/real_order_allowed",
"equals": false
}
]
}
]
}