Files
trex-core/docs/batches/bat-027_20260610_asset-permanent-slot-foundation/verification.md
T
genichinandClaude Opus 4.8 5330f32247 docs(batch): BAT-030 verification 승인 + REQ-056~065 Implemented (dcy-020 delivery 완료)
draft/confirm-batch-verification: BAT-030 AC 매핑(REQ-056·057·062·064·065) +
evidence(단위 367/PG 29/MQ 21, cutover 리허설 8건, run-the-app e2e) 기록,
Ready for Release: true → release-candidate 승격.
BAT-027/028/029 의 보류 사유(dcy-020 전체 delivery 미완)가 BAT-030 완성으로
해소되어 함께 release-candidate 승격.
confirm-req-implemented: REQ-056~065 전부 Approved → Implemented
(각 REQ Change Log CHG-20260610-IMPL + srs index 갱신).
실 운영 cutover(REQ-064)는 REL 단계 운영자 실행으로 위임.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-10 15:20:52 +09:00

2.5 KiB
Raw Blame History

BAT-027 Verification

  • Status: verified (배치 범위 — 안 B 토대)
  • Batch: BAT-027

Acceptance Mapping

REQ-056 (영구 슬롯 스키마, 안 B 부분)

AC 상태 Evidence
instance_key·retired_at·UNIQUE(instance_key, portfolio_id) 존재 ✅ 마이그레이션 009 + test_migration_and_drift(PG) green
EXPECTED_SLOT_FIELDS ↔ daily_slot 컬럼 일치(+instance_key/retired_at) ✅ test_contract + test_migration_and_drift(PG)
중복 (instance_key, portfolio_id) 거부 ✅ 부분 UNIQUE 인덱스(WHERE portfolio_id NOT NULL)
entry_count/슬롯 trading_date 컬럼 부재 ⏳ 이월(BAT-δ) 안 B로 유지 — cutover(REQ-064)에서 drop

REQ-057 (상태머신 재정의 + 인스턴스 lock)

AC 상태 Evidence
전이 집합 inactive 기준(closed→idle 제거) ✅ test_state(allowed/disallowed/size 12)
종료 시 inactive 복귀(idle/closed 별칭) ✅(별칭) test_state·test_service. 엄밀 literal inactive 산출 전면 전환은 BAT-δ
인스턴스별 락 비교차 ✅ test_state::test_slot_advisory_lock_id_is_instance_scoped
동일 슬롯 직렬화(단일 writer) ✅ test_service Advisory lock 직렬화
holding 로컬 정본 ✅ status 로컬(hub 미의존) — 수량 정본 분리는 REQ-062/BAT-γ

Evidence

  • 단위 전체: 375 passed / 35 skipped / 1 deselected(KIS sandbox live-env 1건 deselect).
  • PG-gated(실 trex_core_test): 8 passed — 마이그레이션 009 적용 + 드리프트 가드(instance_key/retired_at 포함) + lifecycle/closed→idle 거부/closed→pending_buy reallocation.
  • ruff check trex_core tests All passed.

Carried-Over (REQ 완전 충족은 후속 배치)

  • REQ-056 entry_count/trading_date 컬럼 drop → BAT-δ(cutover, REQ-064).
  • REQ-057 literal inactive 전면 산출(별칭 제거) → BAT-δ.
  • admission/capacity(REQ-059)·reconcile(REQ-058)·intent 자산 키(REQ-061)·수량/불일치(REQ-062)·운영자 뷰(REQ-063) → BAT-β/γ.
  • 따라서 REQ-056/057 은 본 배치에서 Implemented 로 확정하지 않고 Approved 유지(토대만 충족; 전체 AC 는 dcy-020 후속 배치 완료 시 confirm-req-implemented).

Result

  • Ready for Release: true (BAT-030(δ) 완성·검증(2026-06-10)으로 'dcy-020 전체 delivery 미완' 보류 해소 — confirm-batch-verification 승격)
  • Blocking Issues: 없음(배치 범위 단위/PG green). 단, dcy-020 REQ 완전 충족은 BAT-β/γ/δ 필요.