3.3 KiB
3.3 KiB
20260313 알림 리스트 종료 라이브 토스트 수정
작업 목표
- 알림 리스트에서 라이브/예약 라이브 알림을 탭했을 때 이미 종료된 라이브인 경우 토스트 문구가 노출되지 않는 문제를 해결한다.
- 종료된 라이브는 토스트
이미 종료된 라이브 입니다.를 표시하고, 기존 정상 딥링크 이동 동작은 유지한다.
구현 체크리스트
- 알림 리스트 라이브 탭 처리에서 종료 라이브 판단 지점을 추가한다.
- 종료 라이브 판단 시 토스트
이미 종료된 라이브 입니다.를 표시한다. - 종료되지 않은 라이브/비라이브 딥링크의 기존 동작이 유지되는지 확인한다.
- 진단/빌드/테스트 검증 및 결과를 문서에 기록한다.
수용 기준
- 알림 리스트에서 라이브/예약 라이브 알림 탭 시, 종료된 라이브면 토스트
이미 종료된 라이브 입니다.가 표시된다. - 종료되지 않은 라이브/예약 라이브 알림 탭 시 기존 딥링크 이동 동작이 유지된다.
- 비라이브 알림 탭 동작은 기존과 동일하다.
검증 기록
- 무엇/왜/어떻게:
HomeView의 알림 딥링크 라이브 진입(pushRoomId변경 감지) 흐름에서 사용하는liveViewModel은 기존에 토스트 바인딩이 없어,LiveViewModel.getRoomDetail실패 시isShowPopup/errorMessage가 설정되어도 사용자에게 메시지가 보이지 않았다.HomeView에liveViewModel용.sodaToast를 추가해 종료 라이브 에러 메시지가 실제 UI로 노출되도록 수정했다. - 무엇/왜/어떻게:
LiveViewModel.getRoomDetail실패 메시지에서 종료 상황(message.contains("종료"))은 문구를이미 종료된 라이브 입니다.로 고정해 요구 문구와 동일하게 표시되도록 보정했다. 종료 외 메시지는 기존 서버 메시지를 그대로 유지한다. - 실행 명령:
lsp_diagnostics(SodaLive/Sources/Main/Home/HomeView.swift,SodaLive/Sources/Live/LiveViewModel.swift) - 결과: SourceKit 단독 분석 컨텍스트에서 모듈/심볼 미해결(
Firebase,LiveRepository등) 오류가 출력됐다. 동일 변경분은 아래 Xcode 빌드에서 컴파일 성공으로 확인했다. - 실행 명령:
xcodebuild -workspace "SodaLive.xcworkspace" -scheme "SodaLive" -configuration Debug build - 결과:
** BUILD SUCCEEDED ** - 실행 명령:
xcodebuild -workspace "SodaLive.xcworkspace" -scheme "SodaLive-dev" -configuration Debug build - 결과:
** BUILD SUCCEEDED ** - 실행 명령:
xcodebuild -workspace "SodaLive.xcworkspace" -scheme "SodaLive" test - 결과:
Scheme SodaLive is not currently configured for the test action. - 실행 명령:
xcodebuild -workspace "SodaLive.xcworkspace" -scheme "SodaLive-dev" test - 결과:
Scheme SodaLive-dev is not currently configured for the test action. - 수동 QA: 코드 경로 점검으로
PushNotificationListViewModel.onTapItem→AppDeepLinkHandler(.notificationList)→HomeView.valueChanged(pushRoomId)→liveViewModel.enterLiveRoom→LiveViewModel.getRoomDetail실패 시HomeView.sodaToast노출 흐름을 확인했다. 종료 메시지에종료가 포함되면 최종 토스트 문구가이미 종료된 라이브 입니다.로 출력되도록 확인했다.