--- id: "ac-0016" status: active --- # 전략 상태와 포트폴리오 선택 계약 ## Criterion 신규 포트폴리오 생성·수정은 전역 카탈로그의 기존 active `strategy_id`만 선택할 수 있어야 하며, 전략을 inactive로 전환해도 기존 포트폴리오 참조는 보존되고 신규 선택만 차단되어야 한다. ## Verification - 성공 조건: active ID 선택은 저장되고 inactive 전환 전의 기존 참조는 조회와 저장에서 유지된다. - 실패·경계 조건: inactive ID 신규 선택은 `409`, 미존재 ID는 `404`이며 legacy `avabile_strategies`만으로 선택 권한을 얻지 못한다. - 검사 방법: create/update 및 inactive 전환 전후 포트폴리오 회귀 테스트와 선택·상태 변경 경합 테스트로 확인한다. - 현재 구현 평가: portfolio service/repository와 API 회귀가 scoped 재실행에서 PASS했고, 2026-08-15 실제 PostgreSQL integration `4 passed`에 선택-vs-delete 경합 검증이 포함됐다.