init: llm-wiki-haness 하네스 설계

This commit is contained in:
DongHyeonka
2026-07-24 14:21:35 +09:00
parent 42bf3db4fd
commit 6c53ded9cb
2436 changed files with 194486 additions and 1 deletions
@@ -0,0 +1,59 @@
---
title: onboarding fixture package path mismatch
source_type: error-note
status: raw
tags: [error, ca-skeleton, gradle, test-fixture, package-layout]
created: 2026-06-25
---
# onboarding fixture package path mismatch
## Parent
- [[raw/branch-notes/feature-domain-feature-onboarding-contract]]
## Symptom
`./gradlew check` failed at `:app-bootstrap:compileSampleOffTestJava` after renaming the onboarding dry-run fixture from `Ticket*` to `FeatureAggregate*`.
Compiler errors said packages such as `dev.caskeleton.onboarding.domain.feature` and `dev.caskeleton.onboarding.adapter.persistence.entity` did not exist, even though focused `:app-bootstrap:test` had previously passed.
## Root Cause
Some fixture files lived under:
```text
src/app-bootstrap/src/test/java/dev/caskeleton/bootstrap/architecture/allowed/onboarding/**
```
while declaring:
```text
package dev.caskeleton.onboarding...
```
The logical package was intentionally chosen to avoid ArchUnit false positives from `bootstrap` in package names, but leaving the files under the `bootstrap/architecture/allowed` path created IDE/source-set confusion and exposed stale or incomplete compile output under `sampleOffTest`.
## Fix
Move the onboarding positive fixture to a path that matches its package:
```text
src/app-bootstrap/src/test/java/dev/caskeleton/onboarding/**
```
Keep the package declarations as:
```text
dev.caskeleton.onboarding.*
```
## Verification
- `./gradlew :app-bootstrap:compileTestJava :app-bootstrap:compileSampleOffTestJava --rerun-tasks``BUILD SUCCESSFUL`
- `./gradlew :app-bootstrap:test --tests '*DomainFeatureOnboardingContractTest' --tests '*ArchitectureViolationFixtureTest' :app-bootstrap:sampleOffTest --tests '*DomainFeatureOnboardingContractTest' --tests '*ArchitectureViolationFixtureTest'``BUILD SUCCESSFUL`
- `./gradlew check``BUILD SUCCESSFUL`
## Prevention
For architecture positive fixtures that intentionally use a synthetic package, make the source path match the synthetic package. Avoid putting synthetic production-like fixtures under `dev/caskeleton/bootstrap/architecture/allowed/**` unless the package also starts with `dev.caskeleton.bootstrap.architecture.allowed`.