Skip to content

dev 알림 템플릿을 prod 형상과 동일하게 맞추기 #962

Description

@sevineleven

  • dev 와 prod 의 알림 템플릿(notification_templates) 문구·푸시 토글이 어긋나 있다. 두 환경은 같은 Flyway 마이그레이션을 돌려 seed + 마이그레이션 상태는 동일하지만, 백오피스(/admin/templates)에서 런타임으로 편집한 내용은 코드·마이그레이션에 남지 않아 그만큼 갈라진다.
  • prod 가 실제 서비스 형상의 기준이므로, dev 를 prod 와 동일한 템플릿 형상으로 맞춰 개발·검증 환경의 문구가 실제와 일치하게 한다.

무엇을

  • prod 의 현재 notification_templates 행(type / title_template / body_template / push_enabled)을 기준으로, dev 를 그 값으로 맞추는 UPDATE 마이그레이션 한 개를 추가한다.
  • 컨벤션 준수: Flyway, ${} 리터럴이 placeholder 로 오인되지 않게 JDBC BaseJavaMigration 으로 UPDATE, forward-only, destructive 없음, FK 무관.
  • push_enabled 가 바뀌면 NotificationPushPolicySeedIntegrationTest 의 기대 맵도 함께 갱신한다(그 테스트가 시드 정본을 단언하므로).

착수 전 준비 (블로커)

prod 의 실제 행 값을 확보해야 한다 - 손 편집분이라 코드에 없다. prod 에서 아래를 뽑아 온다.

SELECT type, title_template, body_template, push_enabled
FROM notification_templates
ORDER BY type;

title/body${...} 변수 포함 원문 그대로, 빈값 vs 공백 구분까지 확인한다.

참고: 착수 시점 dev 현재 형상 (마이그레이션 재구성)

type title_template body_template push
TOURNAMENT_JOINED ${actorName}님이 참가했어요 (빈값) ON
TOURNAMENT_ITEM_ADDED ${actorName}님이 아이템을 추가했어요 (빈값) OFF
TOURNAMENT_ITEM_DELETED ${actorName}님이 '${itemName}'을(를) 삭제했어요 (빈값) OFF
TOURNAMENT_STARTED ${actorName}님이 토너먼트를 시작했어요 (빈값) ON
TOURNAMENT_PLAYED_FROM_LINK ${actorName}님이 회원님 토너먼트를 플레이했어요 (빈값) ON
TOURNAMENT_COMPLETED ${actorName}님이 회원님 토너먼트를 완료했어요 (빈값) ON
TOURNAMENT_RESULT_READY 참여하신 ${actorName}님의 토너먼트 결과가 나왔어요 (빈값) ON
ITEM_PARSING_COMPLETED ${itemName} ${completionMessage} ON
ITEM_PARSING_INCOMPLETE ${itemName} 일부 정보만 찾았어요. 나머지는 직접 채워주세요. ON
ITEM_PARSING_FAILED 상품 정보를 가져오지 못했어요 (빈값) ON
ANNOUNCEMENT ${title} ${body} ON

Metadata

Metadata

Assignees

Labels

chore그 외 (빌드·deps·ci·도구·설정·잡일)

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions