Files
llm-wiki/raw/errors/startup-log-suppression-spotless-format-2026-07-03.md

75 lines
3.1 KiB
Markdown

---
title: error / startup-log-suppression-spotless-format-2026-07-03
source_type: error-note
status: raw
related_branches: [feature-startup-failure-log-suppression]
related_projects: [ca-tmpl]
tags: [error, ca-tmpl, testing, gradle, static-analysis]
created: 2026-07-03
status_label: resolved
---
# error: startup-log-suppression-spotless-format-2026-07-03
## Parent / 부모
- [[raw/branch-notes/feature-startup-failure-log-suppression]]
## 증상 / Symptom
- 에러 메시지 (원문 그대로):
```text
Execution failed for task ':app-bootstrap:spotlessJavaCheck'.
> The following files had format violations:
src/main/java/dev/caskeleton/bootstrap/logging/StartupFailureSpringBootLogFilter.java
src/test/java/dev/caskeleton/bootstrap/logging/StartupFailureSpringBootLogFilterTest.java
Run './gradlew spotlessApply' to fix all violations.
```
- 발생 컨텍스트: `./gradlew check`
- 발생 시점: 2026-07-03 10:05 KST
- 발생 환경: local
- 재현 가능 여부: `always`
## 재현 절차 / Reproduction
1. startup failure log suppression Java files를 수동 편집한다.
2. `cd src && ./gradlew check`를 실행한다.
3. 기대 결과: `check` 통과.
4. 실제 결과: `:app-bootstrap:spotlessJavaCheck`가 line wrapping 차이로 실패.
## 조사 단계 / Investigation log
- 2026-07-03 10:05 — `./gradlew check` 실행 → `StartupFailureSpringBootLogFilter.java`,
`StartupFailureSpringBootLogFilterTest.java` formatting violation 확인.
- 2026-07-03 10:06 — `./gradlew :app-bootstrap:spotlessApply` 실행 → Spotless가 Java formatting 적용.
- 2026-07-03 10:07 — `./gradlew check` 재실행 → 전체 check 통과.
## 근본 원인 / Root cause
- 직접 원인: 새 Java 파일의 line wrapping이 Spotless formatter가 요구하는 형태와 달랐다.
- 근본 원인: manual patch 작성 시 formatter output을 미리 적용하지 않았다.
- 트리거 조건: `./gradlew check`가 `:app-bootstrap:spotlessJavaCheck`를 실행했다.
## Sources / 근거
- Local command output: `./gradlew check` — Spotless violation 위치와 remediation command를 출력.
- Local command output: `./gradlew :app-bootstrap:spotlessApply` — formatting 적용.
- Local command output: `./gradlew check` — formatting 적용 후 전체 check 통과.
## 해결 / Resolution
- 적용한 조치: `cd src && ./gradlew :app-bootstrap:spotlessApply`
- 검증 방법: `cd src && ./gradlew check`
- 잔여 위험 / 후속 작업: Java 파일을 수동 편집한 뒤에는 focused test 전후로 `spotlessApply` 또는
`spotlessJavaCheck`를 빠르게 돌리면 전체 `check` 재시도 비용을 줄일 수 있다.
## 회고 / Lessons
- 빨리 감지하는 신호: `spotlessJavaCheck FAILED`와 "Run './gradlew spotlessApply' to fix all violations."
- 예방 체크리스트 항목 후보: 새 Java 파일 추가 후 `./gradlew :app-bootstrap:spotlessApply` 실행.
- wiki로 끌어올릴 가치가 있는 일반화된 교훈: 없음. 프로젝트 로컬 formatter 운용 메모로 충분하다.
## Related / 관련
- 관련 branch note: [[raw/branch-notes/feature-startup-failure-log-suppression]]