feat: 공식 문서 근거자료, 브랜치 기능 문서 작성
This commit is contained in:
+6
-4
@@ -205,9 +205,11 @@ Redis 는 Tier T 2개 branch 가 소유하고, Tier C 5개 branch 에 **provider
|
||||
| H5 | correctness lock · fencing | `feature-distributed-lock-contract` | D6 | #12 `feature-fenced-lock-coordination-contract` |
|
||||
| H6 | outbox 행 모델 · dispatch 전략 | `feature-domain-event-outbox-contract` | 행 상태 머신 관련 D-row 전량 | #13 `feature-outbox-dispatch-mode-contract` |
|
||||
| H7 | session · 인증 모드 | `feature-security-operational-baseline` | session 관련 D-row | #10 `feature-session-auth-mode-contract` |
|
||||
| H8 | multi-instance 활성화 검증 | `feature-background-job-async-contract` (+ `feature-runtime-health-lifecycle-contract` 의 `StartupSafetyValidator` 언급) | scheduler/outbox lock 활성화 판정 | #1 `feature-capability-provider-selection-contract` |
|
||||
| H8 | multi-instance 활성화 **판정 메커니즘** (bean 이름 presence → typed descriptor) | `feature-env-driven-runtime-configuration` | D8 의 집행 메커니즘 부분 (`APP_MULTI_INSTANCE_ENABLED` flag 와 env registry row 는 계속 env-driven 소유) | #1 `feature-capability-provider-selection-contract` |
|
||||
|
||||
> 2026-07-28 controller 메시지에서는 충돌 6건으로 보고했으나, 코드 대조 결과 H4(cache 실패 등급)와 H8(multi-instance 검증)이 추가되어 **8건**이다.
|
||||
> 2026-07-28 controller 메시지에서는 충돌 6건으로 보고했으나, 코드 대조 결과 H4(cache 실패 등급)와 H8(multi-instance 판정 메커니즘)이 추가되어 **8건**이다.
|
||||
>
|
||||
> **H8 귀속 정정 (2026-07-28, `/branch-spec` 중 발견)** — 최초 표기는 owner 를 `feature-background-job-async-contract` 로 적었으나 오류다. 실제 owner 는 [[raw/branch-notes/feature-env-driven-runtime-configuration]] D8 (`SmartInitializingSingleton` validator 로 5종 bean presence 검사, 그 자체가 `UNSUPPORTED_IMPL_DECISION` 라벨). [[raw/branch-notes/feature-background-job-async-contract]] D3 과 [[raw/branch-notes/feature-runtime-health-lifecycle-contract]] D8 은 **소비자**이며 이전 대상이 아니다.
|
||||
|
||||
### 5.2 이전 절차 (branch 당 6단계)
|
||||
|
||||
@@ -431,7 +433,7 @@ hub §7 Non-Retryable 기준의 `cache unavailable when degradation is allowed`
|
||||
| Outbound HTTP resilience | `[~]` | `[*]` | `adapter/outbound/httpclient` 38개 파일(test 15) |
|
||||
| File / Resource handling | `[~]` | `[*]` | `adapter/outbound/fileserver` 16개 파일(test 5) |
|
||||
|
||||
**`(없음)` 해소 4건**: MongoDB / GraphQL / gRPC / WebSocket 은 각각 신규 branch row 로 대체된다.
|
||||
**신규 등록 4건**: MongoDB / GraphQL / gRPC / WebSocket 은 §35 에 `(없음)` 행조차 없었다 — 행 자체가 부재했으므로 신규 branch row 로 처음 등록된다.
|
||||
|
||||
**신규 18행**: §4.2 의 branch 를 `[ ]`(미시작) 로 등록하되, Redis foundation 2건은 `[*]`(부분 구현) — Lua executor·catalog·descriptor·atomic primitives·key builder 가 이미 존재한다.
|
||||
|
||||
@@ -466,7 +468,7 @@ hub §7 Non-Retryable 기준의 `cache unavailable when degradation is allowed`
|
||||
|---|---|---|---|---|
|
||||
| D1 | Spring Boot 버전 | §34 Stack Matrix `Framework = Spring Boot 3.5.14`, §6.1 `DEC-…-STACK-FRAMEWORK-001` 동일 | **`4.0.0`** | `src/build.gradle:8` — `id 'org.springframework.boot' version '4.0.0' apply false` |
|
||||
| D2 | ca-tmpl 경로 | 헤더 25번 줄 `/home/donghyeon/workspace/ca-tmpl/` | **`/home/donghyeon/workspace/desktop-server-git/clean-architecture-backend-template/`** | 저장소 위치 확인(2026-07-28) |
|
||||
| D3 | multi-instance 활성화 판정 | §6.1 `SCHEDULER-LOCK-001` 이 "DB advisory lock 사용" 만 규정 | bean **이름 문자열 목록**으로 판정 — `distributedLockProvider`, `cacheStampedeProtection`, `outboxLeaderElection` | `src/app-bootstrap/.../runtime/StartupSafetyValidator.java:23-27` |
|
||||
| D3 | multi-instance 활성화 판정 | §6.1 `SCHEDULER-LOCK-001` 이 "DB advisory lock 사용" 만 규정 | bean **이름 문자열 목록 5개**로 판정 — `distributedLockProvider`, `cacheStampedeProtection`, `outboxLeaderElection`, `distributedRateLimiter`, `migrationStartupRunner` | `src/app-bootstrap/.../runtime/StartupSafetyValidator.java:23-31` |
|
||||
|
||||
**D1 의 파급이 크다.** §34 는 "모든 branch 가 상속하는 stack SSOT" 이고 §34 의 Stack 변경 절차는 sibling branch 영향 평가를 요구한다. 정정 시 `grep -rn "project §34" raw/branch-notes/feature-*.md` 로 영향 branch 를 식별한다. Spring Boot 4.0.0 은 3.5.x 대비 baseline 이 달라지므로, 각 branch 의 프레임워크 의존 결정(특히 security·web·data 계열)은 재평가 대상이다.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user