docs: 빌드·CI 감사 계획과 진행 중이던 문서 정리
- CI 단계 분리 계획 추가 (docs/superpowers/plans/2026-09-16-ci-stage-separation.md). 빌드·CI 레이어 전수 리뷰 133건의 결론과 Track A/B/C 작업 순서를 담는다. - public-path 보안 기준선을 실제 배포 기본값(/v1/healthcheck)으로 재생성. 이전 값은 gitignore 된 src/.env 에서 유래해 재현이 불가능했다. - 진행 중이던 ADR·리뷰·테스트 전략 문서 반영, 대체된 grpc 계획 문서 제거. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
21234e38cd
commit
2a8d34f85c
@@ -668,7 +668,7 @@ class CompositionScanNarrownessTest {
|
||||
Pattern excluded = Pattern.compile(regexExcludeOf(APPLICATION.getAnnotation(ComponentScan.class).excludeFilters()));
|
||||
for (String type :
|
||||
new String[] {
|
||||
"dev.caskeleton.bootstrap.autoconfigure.persistencejpa.PersistenceJpaRootAutoConfiguration",
|
||||
"dev.caskeleton.bootstrap.autoconfigure.jpa.PersistenceJpaRootAutoConfiguration",
|
||||
"dev.caskeleton.adapter.outbound.mongo.MongoPersistenceConfig",
|
||||
"dev.caskeleton.adapter.outbound.messaging.MessagingSettings",
|
||||
"dev.caskeleton.adapter.outbound.notification.platform.autoconfigure.NotificationPlatformSettings",
|
||||
@@ -800,7 +800,7 @@ design:
|
||||
- [ ] **Step 1: Write the failing test**
|
||||
|
||||
```java
|
||||
package dev.caskeleton.bootstrap.autoconfigure.persistencejpa;
|
||||
package dev.caskeleton.bootstrap.autoconfigure.jpa;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
@@ -871,7 +871,7 @@ class JpaMasterGateTest {
|
||||
- [ ] **Step 3: Write `DataSourceRequirement`**
|
||||
|
||||
```java
|
||||
package dev.caskeleton.bootstrap.autoconfigure.persistencejpa;
|
||||
package dev.caskeleton.bootstrap.autoconfigure.jpa;
|
||||
|
||||
import dev.caskeleton.shared.activation.MasterSwitch;
|
||||
import java.util.ArrayList;
|
||||
@@ -943,7 +943,7 @@ public final class DataSourceRequirement {
|
||||
- [ ] **Step 4: Write the off-filter**
|
||||
|
||||
```java
|
||||
package dev.caskeleton.bootstrap.autoconfigure.persistencejpa;
|
||||
package dev.caskeleton.bootstrap.autoconfigure.jpa;
|
||||
|
||||
import java.util.Set;
|
||||
import org.springframework.boot.autoconfigure.AutoConfigurationImportFilter;
|
||||
@@ -1008,7 +1008,7 @@ public final class JpaOffAutoConfigurationImportFilter
|
||||
Create `PersistenceJpaRootAutoConfiguration`:
|
||||
|
||||
```java
|
||||
package dev.caskeleton.bootstrap.autoconfigure.persistencejpa;
|
||||
package dev.caskeleton.bootstrap.autoconfigure.jpa;
|
||||
|
||||
import dev.caskeleton.bootstrap.autoconfigure.jpa.JpaPlatformRuntimeAutoConfiguration;
|
||||
import dev.caskeleton.bootstrap.autoconfigure.jpa.JpaSafetySettings;
|
||||
@@ -1048,9 +1048,9 @@ Then:
|
||||
owns that import — and keep the vendor-specific beans.
|
||||
- Remove `dev.caskeleton.bootstrap.autoconfigure.jpa.JpaPlatformRuntimeAutoConfiguration` from
|
||||
`AutoConfiguration.imports` and add
|
||||
`dev.caskeleton.bootstrap.autoconfigure.persistencejpa.PersistenceJpaRootAutoConfiguration`.
|
||||
`dev.caskeleton.bootstrap.autoconfigure.jpa.PersistenceJpaRootAutoConfiguration`.
|
||||
- Create `AutoConfigurationImportFilter.imports` containing
|
||||
`dev.caskeleton.bootstrap.autoconfigure.persistencejpa.JpaOffAutoConfigurationImportFilter`.
|
||||
`dev.caskeleton.bootstrap.autoconfigure.jpa.JpaOffAutoConfigurationImportFilter`.
|
||||
|
||||
- [ ] **Step 6: Run the test to verify it passes.**
|
||||
Run: `cd src && ./gradlew :app-bootstrap:test --tests '*JpaMasterGateTest*' --console=plain --no-daemon`
|
||||
|
||||
Reference in New Issue
Block a user