배경
MATCH_RESULT("같은 답을 한 사람을 찾았어요")·NO_MATCH 푸시의 deepLink 가 그 주의 매칭 유형과 상관없이 /matching/으로 고정돼 있다(PushNotifier.deepLinkOf). /matching/은 1:1 결과 화면이라 그룹 매칭 주에는 후보가 없다고 뜬다. GROUP_NOT_FORMED도 그룹 전용인데 /matching/으로 간다.
그룹 결과 화면은 홈 카드에서 여는 모달이라 URL 이 없다. 채팅의 /chat/group/·/chat/one-on-one/ 과 같은 이분법으로 FE 에 /matching/group/ 라우트를 만들고(ditto-fe#23) 서버는 그 경로로 보낸다.
작업 내용
MATCH_RESULT·NO_MATCH: target_id(quiz_set.id)로 퀴즈셋의 matchingType을 읽어 GROUP 이면 /matching/group/, ONE_TO_ONE 이면 /matching/. 퀴즈셋이 없으면 유형을 몰라 deepLink 없이 보낸다
GROUP_NOT_FORMED: /matching/group/ 고정
MATCH_REQUESTED·MATCH_ACCEPTED·MATCH_REJECTED: 1:1 전용(target 이 personal_match)이라 분기 없이 /matching/ 유지
PushNotifierTest·docs/domains/notification.md deepLink 표 갱신
범위 밖
- 알림 센터(FE
toNotificationTarget)도 /matching 고정이다. FE 는 type+targetId 만으로 그 주 유형을 알 수 없어, 알림 목록 응답에 deepLink 필드를 추가하는 방향을 별도 이슈로 검토한다.
배경
MATCH_RESULT("같은 답을 한 사람을 찾았어요")·NO_MATCH푸시의 deepLink 가 그 주의 매칭 유형과 상관없이/matching/으로 고정돼 있다(PushNotifier.deepLinkOf)./matching/은 1:1 결과 화면이라 그룹 매칭 주에는 후보가 없다고 뜬다.GROUP_NOT_FORMED도 그룹 전용인데/matching/으로 간다.그룹 결과 화면은 홈 카드에서 여는 모달이라 URL 이 없다. 채팅의
/chat/group/·/chat/one-on-one/과 같은 이분법으로 FE 에/matching/group/라우트를 만들고(ditto-fe#23) 서버는 그 경로로 보낸다.작업 내용
MATCH_RESULT·NO_MATCH:target_id(quiz_set.id)로 퀴즈셋의matchingType을 읽어 GROUP 이면/matching/group/, ONE_TO_ONE 이면/matching/. 퀴즈셋이 없으면 유형을 몰라 deepLink 없이 보낸다GROUP_NOT_FORMED:/matching/group/고정MATCH_REQUESTED·MATCH_ACCEPTED·MATCH_REJECTED: 1:1 전용(target 이 personal_match)이라 분기 없이/matching/유지PushNotifierTest·docs/domains/notification.mddeepLink 표 갱신범위 밖
toNotificationTarget)도/matching고정이다. FE 는 type+targetId 만으로 그 주 유형을 알 수 없어, 알림 목록 응답에deepLink필드를 추가하는 방향을 별도 이슈로 검토한다.