Files
sodalive-backend-spring-boot/docs/20260507_번역작업원문언어제한.md

1.7 KiB

번역 작업 원문 언어 제한

작업 항목

  • TranslationJobSchedulerTest에 지원하지 않는 sourceLanguage 입력 시 TranslationJob을 저장하지 않는 RED 테스트를 추가한다.
  • TranslationJobScheduler에서 sourceLanguage를 소문자 정규화한 뒤 ko, en, ja가 아니면 등록을 중단한다.
  • focused test와 관련 검증 명령을 실행해 변경 결과를 확인한다.

설계

  • TranslationJob 등록의 최종 방어선인 TranslationJobScheduler.scheduleMissingTranslation()에서 검증한다.
  • 허용값은 현재 번역 지원 언어와 동일하게 ko, en, ja로 제한한다.
  • 지원하지 않는 원문 언어는 예외를 던지지 않고 기존 early return 흐름처럼 job 등록만 생략한다.

검증 기록

  • 2026-05-07: RED 확인: ./gradlew test --tests 'kr.co.vividnext.sodalive.i18n.translation.TranslationJobSchedulerTest.shouldNotCreateJobWhenSourceLanguageIsUnsupported' 실행 시 TranslationJobSchedulerTest.kt:102verifyNoInteractions 검증 실패로 unsupported sourceLanguage가 repository 호출까지 진행됨을 확인했다.
  • 2026-05-07: GREEN 확인: 동일 focused test가 BUILD SUCCESSFUL로 통과해 unsupported sourceLanguage가 등록되지 않음을 확인했다.
  • 2026-05-07: 회귀 확인: ./gradlew test --tests 'kr.co.vividnext.sodalive.i18n.translation.TranslationJobSchedulerTest'BUILD SUCCESSFUL로 통과했다.
  • 2026-05-07: 스타일 확인: ./gradlew ktlintCheckBUILD SUCCESSFUL로 통과했다.
  • 2026-05-07: Kotlin LSP는 현재 환경에 .kt 서버가 설정되어 있지 않아 lsp_diagnostics 실행이 불가했다. 대신 Gradle 컴파일 포함 focused/class test와 ktlint로 검증했다.