chore: remove sample portfolio module
This commit is contained in:
@@ -4,14 +4,14 @@
|
||||
|
||||
이 모듈은 비즈니스 로직을 담지 않는다. Spring Boot 기동, 런타임 설정 바인딩, 기본 runtime
|
||||
모듈 간 최종 와이어링, 그리고 composition classpath를 대상으로 한 중앙 아키텍처 테스트만 둔다.
|
||||
19개 leaf 전체의 프로젝트 edge와 두 composition root의 실제 runtime membership은 JSON registry를
|
||||
18개 leaf 전체의 프로젝트 edge와 production composition root의 실제 runtime membership은 JSON registry를
|
||||
읽는 Gradle gate가 별도로 검사한다. 허용/금지 의존, 책임 범위, 테스트 명령 같은 **모듈 규칙**의
|
||||
SSOT 는 [CLAUDE.md](CLAUDE.md) 다.
|
||||
|
||||
기본 composition은 `build.gradle`의 main project dependency와 registry의
|
||||
`runtime_memberships=["app-bootstrap"]`가 정확히 일치해야 한다. GraphQL, gRPC, WebSocket,
|
||||
MongoDB leaf의 membership은 비어 있어 두 shipped runtime에 포함되지 않는다. object storage는
|
||||
sample runtime에만 있고 file server는 기본 app runtime에 이미 포함된다.
|
||||
MongoDB와 object storage leaf의 membership은 비어 있어 production runtime에 포함되지 않는다.
|
||||
file server는 기본 app runtime에 이미 포함된다.
|
||||
|
||||
`conditionalTransportTest`는 GraphQL/gRPC/WebSocket 세 leaf를 test-only classpath에서 함께
|
||||
resolve하는 명시적 qualification composition이다. main `implementation`/`runtimeOnly` edge가 아니므로
|
||||
@@ -870,10 +870,6 @@ ArchUnit 규칙이 **금지**하는 타입을 fixture 가 일부러 import 해
|
||||
- `spring-cloud-context` — `@RefreshScope` 금지(no-refresh-scope) fixture 용. Spring Cloud 는
|
||||
production 에 없고 규칙은 애너테이션을 FQN 문자열로 참조한다. BOM 이 spring-cloud 좌표를 관리하지
|
||||
않아 버전을 명시 고정한다.
|
||||
- **`testImplementation project(':sample-portfolio')`** — ArchUnit 이 템플릿 reference 구현을 분석하려고
|
||||
test 경로에만 둔다. **production 은 절대 sample-portfolio 에 의존 금지** —
|
||||
`production_code_does_not_depend_on_sample_portfolio` 규칙이 강제한다.
|
||||
|
||||
### 빌드 설정
|
||||
- **test JVM UTC 고정(`-Duser.timezone=UTC`)** — `RuntimeHealthLifecycleContractTest`가
|
||||
`TimeZone.getDefault().getID() == "UTC"`를 단언해, 호스트 로케일과 무관하게 타임스탬프 산술이
|
||||
|
||||
Reference in New Issue
Block a user