Skip to content

[TWI-124] fix: 양쪽 목표 완료 시 발행되던 DAILY_GOAL_ACHIEVED 알림 폐기#102

Merged
ParkIsComing merged 1 commit into
devfrom
twi-124
Jun 4, 2026
Merged

[TWI-124] fix: 양쪽 목표 완료 시 발행되던 DAILY_GOAL_ACHIEVED 알림 폐기#102
ParkIsComing merged 1 commit into
devfrom
twi-124

Conversation

@ParkIsComing

Copy link
Copy Markdown
Collaborator

배경 / 문제

포토로그 업로드 시 알림이 두 갈래로 발행됨:

  1. PhotologCreatedEvent → 파트너에게 GOAL_COMPLETED
  2. 양쪽 다 완료 시 DailyGoalAchievedEvent양쪽 모두에게 DAILY_GOAL_ACHIEVED

→ 두 번째로 인증샷을 올린 사람의 파트너가 GOAL_COMPLETED + DAILY_GOAL_ACHIEVED를 거의 동시에 수신(푸시 폭탄). 발행이 목표(goal)별이라 공유 목표가 많으면 더 심함.

변경 내용

"양쪽 다 완료" 케이스의 알림을 FCM·알림센터(DB) 모두에서 미발행 처리.

  • PhotoLogService: checkAndPublishDailyGoalAchieved 호출/메서드/import 제거
  • NotificationEventListener: handleDailyGoalAchieved 핸들러 제거
  • NotificationEvents: DailyGoalAchievedEvent 제거
  • 관련 테스트(NotificationEventListenerTest) 및 NotificationTestApiSpec 예제 정리

⚠️ 데이터 호환성

Notification 엔티티가 @Enumerated(EnumType.STRING)이라 기존 알림 row에 "DAILY_GOAL_ACHIEVED" 문자열이 저장돼 있음.
enum 상수 NotificationType.DAILY_GOAL_ACHIEVED는 유지(삭제 시 기존 알림센터 조회 깨짐).

검증

  • :love:application:test 통과
  • web 모듈 컴파일 통과
  • GOAL_COMPLETED 알림 정상 동작 유지
  • 기존 DAILY_GOAL_ACHIEVED 알림 조회 정상 (enum 유지)

🤖 Generated with Claude Code

두 번째로 인증샷을 올린 사람의 파트너가 GOAL_COMPLETED와
DAILY_GOAL_ACHIEVED를 거의 동시에 받는 푸시 폭탄 문제 해결.
"양쪽 다 완료" 케이스의 알림을 FCM·알림센터 모두에서 미발행 처리.

- PhotoLogService: checkAndPublishDailyGoalAchieved 호출/메서드 제거
- NotificationEventListener: handleDailyGoalAchieved 핸들러 제거
- NotificationEvents: DailyGoalAchievedEvent 제거
- 관련 테스트 및 NotificationTestApiSpec 예제 정리
- NotificationType.DAILY_GOAL_ACHIEVED enum은 기존 알림 데이터
  호환성을 위해 유지(@Enumerated(EnumType.STRING))

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@linear-code

linear-code Bot commented Jun 4, 2026

Copy link
Copy Markdown

TWI-124

@github-actions

github-actions Bot commented Jun 4, 2026

Copy link
Copy Markdown

Test Results

 22 files  ±0   22 suites  ±0   5s ⏱️ -1s
117 tests  - 1  117 ✅  - 1  0 💤 ±0  0 ❌ ±0 
128 runs   - 2  128 ✅  - 2  0 💤 ±0  0 ❌ ±0 

Results for commit 7b99b52. ± Comparison against base commit c94cd1a.

This pull request removes 1 test.
com.yapp.love.application.notification.event.NotificationEventListenerTest ‑ 양쪽 사용자에게 DAILY_GOAL_ACHIEVED 알림을 전송한다

@ParkIsComing ParkIsComing changed the title fix: 양쪽 목표 완료 시 발행되던 DAILY_GOAL_ACHIEVED 알림 폐기 [TWI-124] fix: 양쪽 목표 완료 시 발행되던 DAILY_GOAL_ACHIEVED 알림 폐기 Jun 4, 2026
@ParkIsComing ParkIsComing merged commit f80566a into dev Jun 4, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant