# BAT-030: 자산 중심 cutover — 라이브 전환·집행 정본·모델 완성 (dcy-020 BAT-δ) - Status: release-candidate - 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](./planning.md) - Design: [design.md](./design.md) - Implementation: [implementation.md](./implementation.md) - Verification: [verification.md](./verification.md) ## Notes - Source discovery 단일(dcy-020). BAT-027/028/029 후속, dcy-020 최종. - **최고 위험**: 라이브 데이터·집행 전환. **실 cutover 는 운영자 실행**(본 배치는 마이그레이션·코드·리허설 제공). design 체크포인트에서 cutover 절차·롤백·운영자 입회·전환 순서 확정 후 구현. - 본 배치 완료 후 REQ-056~065 confirm-req-implemented → REL. - 2026-06-10 (CHG-20260610-03): 데이터 보존 cutover → DB 재초기화(`trex-core-reset`)로 전환 (마이그레이션 009 legacy 충돌 결함). 폴더명의 'cutover' 는 역사적 표기로 유지.