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

3.1 KiB

title, source_type, status, related_branches, related_projects, tags, created, status_label
title source_type status related_branches related_projects tags created status_label
error / startup-log-suppression-spotless-format-2026-07-03 error-note raw
feature-startup-failure-log-suppression
ca-tmpl
error
ca-tmpl
testing
gradle
static-analysis
2026-07-03 resolved

error: startup-log-suppression-spotless-format-2026-07-03

Parent / 부모

증상 / Symptom

  • 에러 메시지 (원문 그대로):
    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 운용 메모로 충분하다.