test: make execution gate worktree portable
This commit is contained in:
@@ -12,6 +12,7 @@
|
||||
- `trex_core/domain/capital_allocation.py`
|
||||
- `tests/domain/test_capital_allocation.py`
|
||||
- `tests/integration/test_kis_submission_recovery_virtual.py`
|
||||
- `validation/trading-execution-adapter.json`
|
||||
- `docs/project-structure.md`
|
||||
- `docs/discovery/dcy-042_20260729_shared-account-capital-allocation-policy.md`
|
||||
- `docs/srs/Interface/req-127_shared-account-capital-allocation-policy.md`
|
||||
@@ -27,6 +28,8 @@
|
||||
5. 로컬 KIS 어댑터의 중복 계산을 Core 정책 호출로 대체했다.
|
||||
6. 선행 Core 브랜치의 가상 KIS 복구 테스트 시계를 거래 가능 시각으로 고정해
|
||||
야간 실행에서도 같은 주문 복구 경로를 검증하도록 했다.
|
||||
7. Core 공용 인증의 pytest 단계를 `uv --with pytest`로 고정해 격리 작업트리의
|
||||
로컬 가상환경 상태와 무관하게 재현되도록 했다.
|
||||
|
||||
## Validation
|
||||
|
||||
|
||||
@@ -35,6 +35,8 @@
|
||||
→fault injection→restart recovery→ledger reconcile 1~7단계 PASS.
|
||||
- 선행 Core 가상 KIS 복구 3건은 거래 가능 시각을 고정해 야간 회귀에서도
|
||||
주문 결과불명·재시작·거부 후 재시도 경로가 결정적으로 통과한다.
|
||||
- Core 공용 인증은 테스트 도구를 명시적으로 설치해 격리 작업트리에서도 같은
|
||||
1~7단계를 실행한다.
|
||||
- Manual:
|
||||
- Core는 순수 계산, 어댑터는 현금·호가, 전략은 후보·슬롯·최종 수량,
|
||||
Portfolio Hub는 원장 정본으로 책임 경계를 대조했다.
|
||||
|
||||
@@ -7,32 +7,32 @@
|
||||
"stages": [
|
||||
{
|
||||
"id": "logic",
|
||||
"command": ["uv", "run", "pytest", "-q", "tests/application/test_execution.py", "tests/application/test_account_snapshot.py", "tests/application/test_asset_centric_admission.py"],
|
||||
"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", "pytest", "-q"],
|
||||
"command": ["uv", "run", "--with", "pytest", "pytest", "-q"],
|
||||
"timeout_seconds": 900
|
||||
},
|
||||
{
|
||||
"id": "virtual_contract",
|
||||
"command": ["uv", "run", "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"],
|
||||
"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", "pytest", "-q", "tests/integration/test_kis_submission_recovery_virtual.py"],
|
||||
"command": ["uv", "run", "--with", "pytest", "pytest", "-q", "tests/integration/test_kis_submission_recovery_virtual.py"],
|
||||
"timeout_seconds": 300
|
||||
},
|
||||
{
|
||||
"id": "fault_injection",
|
||||
"command": ["uv", "run", "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"],
|
||||
"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", "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"],
|
||||
"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
|
||||
},
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user