From a50b5e34a295d325023dfb705a29f378d6597ae5 Mon Sep 17 00:00:00 2001 From: Justin Ko Date: Sun, 28 Jun 2026 19:51:39 +0900 Subject: [PATCH] docs(req-113,req-115): dcy-036 confirm-req-implemented (BAT-054) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit BAT-054로 REQ-113 AC-2/AC-4, REQ-115 AC-1 충족 → Approved→Implemented. QC(opus) PASS-WITH-NOTES, blocker 0. REQ-115 AC-1 통합검증은 배포후 릴리즈 스모크(단서 부기). Co-Authored-By: Claude Opus 4.8 Claude-Session: https://claude.ai/code/session_01VHtM5Ws1HKCKQ4JGi6GRb5 --- ..._kisconfig-fetch-source-priority-and-break-glass.md | 9 ++++++++- ...15_daystart-intraday-resilience-credential-cache.md | 10 +++++++++- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/docs/srs/Configuration/req-113_kisconfig-fetch-source-priority-and-break-glass.md b/docs/srs/Configuration/req-113_kisconfig-fetch-source-priority-and-break-glass.md index 309a942..2074ede 100644 --- a/docs/srs/Configuration/req-113_kisconfig-fetch-source-priority-and-break-glass.md +++ b/docs/srs/Configuration/req-113_kisconfig-fetch-source-priority-and-break-glass.md @@ -1,6 +1,6 @@ # req-113: KISConfig 소스 우선순위 — portfolio-hub fetch 1차 + env break-glass + opt-in -- Status: Approved +- Status: Implemented - Type: Configuration - Priority: High - Owner: trex-core-dev @@ -91,3 +91,10 @@ - Date: 2026-06-28 - Author: 팀장(Claude) - 부분 구현 — BAT-053 PR #34 머지(merge commit 01655ab). credential_fetch_enabled TOML 플래그 신규 필드, opt-in off 회귀보존(AC-1), break-glass 코드, TOML 기본 False(AC-7) 구현·머지 완료. **연기: AC-2(fetch 결과로 KISConfig 조립)는 KISBroker 런타임 재조립 필요 → M3 후속 batch.** AC-4 break-glass 로그 내용 assert 보강도 후속. Status `Approved` 유지(미충족 AC 존재). + +### CHG-20260628-04 +- Date: 2026-06-28 +- Author: 팀장(Claude) — confirm-req-implemented: `Approved` → `Implemented` +- 근거: BAT-054(dcy-036 KISBroker 양의 경로 주입), 커밋 11decaa. QC(opus) **PASS-WITH-NOTES, Blocker 0** — 독립 테스트 재실행 757 passed/회귀 0. **연기됐던 AC-2(fetch 결과로 KISConfig 조립 = KISBroker `reinitialize()` 런타임 재주입)** 및 **AC-4(break-glass 로그 'break-glass' 키워드 assert 보강)** 충족·검증. opt-in off 기본 경로 byte-for-byte 회귀보존(AC-1) 유지 확인. fail-closed 불변식 미파괴(reinit 실패가 entry_allowed 불변), secret 평문 로그 미노출, domain 순수·AMQP 무변경 QC 확인. +- 후속(비차단): QC Minor #3(design D1의 L2 token_cache.invalidate 호출이 구현에선 키-miss 전략으로 대체 — 설계-구현 문서 정합) 정정. AC-4 로그 assert 강도는 키워드 수준(수용). +- 게이트: 머지(PR)는 사장님 결재 게이트(실거래 주입=외부 비가역). diff --git a/docs/srs/Non-Functional/req-115_daystart-intraday-resilience-credential-cache.md b/docs/srs/Non-Functional/req-115_daystart-intraday-resilience-credential-cache.md index 527e491..610ed4b 100644 --- a/docs/srs/Non-Functional/req-115_daystart-intraday-resilience-credential-cache.md +++ b/docs/srs/Non-Functional/req-115_daystart-intraday-resilience-credential-cache.md @@ -1,6 +1,6 @@ # req-115: 그날-시작 장중 무중단 보장 — 그날 고정 인증정보 캐시 + portfolio-hub 장애 비중단 -- Status: Approved +- Status: Implemented - Type: Non-Functional - Priority: High - Owner: trex-core-dev @@ -89,3 +89,11 @@ - Date: 2026-06-28 - Author: 팀장(Claude) - 부분 구현 — BAT-053 PR #34 머지(merge commit 01655ab). 그날 고정 캐시 저장(AC-3), app_secret 메모리 한정(AC-5), ledger_outbox 무손실 재확인(AC-2), env-only 회귀보존(AC-4) 구현·머지 완료. **연기: AC-1(캐시된 인증정보를 실 KIS 거래에 주입=KISBroker 런타임 재조립) → M3 후속 batch.** AC-9 전용 테스트 보강도 후속. Status `Approved` 유지(미충족 AC 존재). + +### CHG-20260628-04 +- Date: 2026-06-28 +- Author: 팀장(Claude) — confirm-req-implemented: `Approved` → `Implemented` +- 근거: BAT-054(dcy-036 KISBroker 양의 경로 주입), 커밋 11decaa. QC(opus) **PASS-WITH-NOTES, Blocker 0** — 독립 테스트 재실행 757 passed/회귀 0. **연기됐던 AC-1(그날-시작 fetch한 인증정보를 실 KISBroker에 `reinitialize()`로 주입)** 충족·단위검증. 그날 고정 캐시 의미론(장중 무재호출, AC-3) 유지, 장중 portfolio-hub 장애에도 그날 실행 무중단(reinit 실패 시 graceful degrade) 검증. +- ⚠️ **단서(정직성)**: AC-1의 **실 KIS mock end-to-end 통합검증은 stub 한정**(코드/단위 레벨 PASS). "그날-시작 fetch → 실 KISBroker → 장중 PH 다운 중 실주문 지속" 통합검증은 **portfolio-hub dcy-010 배포 후 릴리즈 스모크로 수행** = **릴리즈 go 선결 조건**(M2식 "Implemented이나 라이브 미검증" 패턴). +- 후속(백로그): QC Minor #2 — L2 Redis 토큰 secret-회전 invalidate 보강(account_ref+app_key last-4 동일 + app_secret만 회전 시 stale 토큰 재사용 저확률 edge). 실거래라 등록. +- 게이트: 머지(PR)는 사장님 결재 게이트.