M1 literal inactive 전면화: SlotState 5-state(idle/closed 별칭 제거), 마이그레이션 010(CHECK 교체+행 rewrite), ops_checks 를 transition_log 기반 재작성. M2 집행 매도 수량 브로커 정본(D3): dispatch 매도 qty=broker hldg_qty, 미러 fallback 없음, 브로커 0 → skip+WARN, 리스트 기반 dispatch(head-block 방지). M3 컬럼 drop + legacy pool 제거: 마이그레이션 011(trading_date·entry_count DROP), repo 계약 instance 스코프 개편(집행 큐 포함), preallocation 폐기(데몬 7스레드), admission 자산 중심 단일 경로(slot_id 정본), capacity 재정의(available=M−active), daily_symbol_entries 코드 경로 제거. M4 cutover 도구(D1·D4): trex-core-cutover(전체 rebuild, preflight/브로커 carry-over/ --allow-unmapped/--promote-unique/dry-run) + PG 리허설 테스트 8건. M5 baseline 마감: data-model/runtime-flows/project-structure/interface-contract 자산 중심 최종 갱신 + run-trex-core-daemon 스킬 정합. 검증: 단위 367 passed + ruff clean; PG-gated 29 passed(010/011 round-trip·드리프트 가드·cutover 리허설); RabbitMQ 21 passed; run-the-app e2e(test DB+실 MQ, M=1): reconcile 슬롯 생성→slot_id 매수→dedup→capacity_full→fill→already_active→ 매도→inactive(자산 바인딩 보존)→영구 슬롯 재활성 전 구간 green. 실 cutover 는 운영자 실행(REL 단계, D4). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2.2 KiB
2.2 KiB
BAT-030: 자산 중심 cutover — 라이브 전환·집행 정본·모델 완성 (dcy-020 BAT-δ)
- Status: in-delivery
- Profile: standard
- Source Discovery: dcy-020
- Included REQ: REQ-064 (풀→영구 cutover), REQ-062 (잔여: 청산 수량 브로커 정본), REQ-056/057/065 (잔여: entry_count/trading_date drop·literal inactive·baseline 마감)
Summary
- dcy-020 의 마지막 배치(BAT-δ) — 자산 중심 모델을 완성하고 라이브로 전환한다. 가장 위험: 라이브 트레이딩 데이터 cutover + 집행 동작 변경 + 모델 완성(별칭/컬럼 정리).
- 핵심: (1) 라이브 cutover(풀 행→영구 자산 행, 보유 carry-over, instance_key 태깅), (2) 집행 dispatch 매도 수량 = 브로커 잔고 정본(REQ-062 잔여, M2(b)), (3) literal
inactive전면화 +idle/closed별칭 제거 + CHECK 제약 갱신, (4)entry_count/슬롯trading_date컬럼 drop, (5) 자산 중심 default 운영 전환(max_active_slots), (6) baseline 문서 마감(REQ-065).
Scope
- In Scope:
- REQ-064: cutover 마이그레이션 + 절차 + 롤백(라이브는 운영자 실행)
- REQ-062 잔여: execution dispatch 매도 수량 브로커 잔고 정본(M2(b))
- REQ-056/057 잔여: literal inactive(+CHECK 마이그레이션), idle/closed 별칭 제거, entry_count/trading_date 컬럼 drop
- REQ-065: baseline 3문서 마감 + dcy-001/014/019 폐기 확정
- 자산 중심 default 전환(운영 config) + run-the-app(자산 중심 e2e)
- Out of Scope:
- 포지션 사이징(issue #1, OQ-4 분리 — 후속 Discovery)
- 신규 기능(본 배치는 모델 완성·전환만)
Documents
- Planning: planning.md
- Design: design.md
- Implementation: implementation.md
- Verification: verification.md
Notes
- Source discovery 단일(dcy-020). BAT-027/028/029 후속, dcy-020 최종.
- 최고 위험: 라이브 데이터·집행 전환. 실 cutover 는 운영자 실행(본 배치는 마이그레이션·코드·리허설 제공). design 체크포인트에서 cutover 절차·롤백·운영자 입회·전환 순서 확정 후 구현.
- 본 배치 완료 후 REQ-056~065 confirm-req-implemented → REL.