fix(live): 전체 라이브 제목을 On Air로 통일한다
This commit is contained in:
@@ -339,3 +339,45 @@
|
||||
|
||||
- 2026-07-06 Phase 5 검증: 홈 추천 라이브 클릭 source test를 RED 상태로 먼저 확인한 뒤, `HomeMainFragment`에서 로그인 guard, 상세 조회, `roomDetail.isAdult` 기반 성인 guard, 기존 v2 `CreatorChannelLiveCoordinator` 입장 위임을 연결했다. 이후 `HomeMainFragmentLoginGuardSourceTest`, `HomeOnAirLiveEntryPolicyTest`, `compileDebugKotlin`, `git diff --check`가 모두 통과했다.
|
||||
- 2026-07-06 Phase 5 리뷰 반영: 코드 품질 리뷰에서 `getRoomDetail` 콜백 lifecycle guard 부재와 여러 ViewModel의 `LoadingDialog` 직접 제어 race가 지적되어, 콜백 초입에 `if (!isAdded || view == null) return@getRoomDetail`를 추가하고 recommendation/ranking/following/live entry loading state를 `updateLoadingDialog()`로 통합했다. 이후 `./gradlew :app:testDebugUnitTest --tests "kr.co.vividnext.sodalive.v2.main.home.HomeMainFragmentLoginGuardSourceTest" --no-daemon`, `./gradlew :app:testDebugUnitTest --tests "kr.co.vividnext.sodalive.v2.live.onair.HomeOnAirLiveEntryPolicyTest" --no-daemon`, `./gradlew :app:compileDebugKotlin --no-daemon`, `git diff --check`가 모두 통과했다.
|
||||
|
||||
---
|
||||
|
||||
### Phase 6: 전체 라이브 리스트 상단 제목 정정
|
||||
|
||||
**Phase 결과:** 메인 홈 추천 라이브 섹션의 `전체`에서 진입한 화면 상단에 locale과 관계없이 `On Air`가 표시된다.
|
||||
|
||||
#### Task 6.1: `live_now` locale 리소스 정정
|
||||
|
||||
**Goal 실행 `P6-T1`:** 기존 화면 연결을 유지하면서 기본·영어·일본어 `live_now` 값을 `On Air`로 통일한다.
|
||||
|
||||
- **시작 조건:** `prd.md` §13 승인과 `HomeOnAirLiveActivity`의 `R.string.live_now` 소비 확인.
|
||||
- **완료 증거:** 세 locale 리소스 값 대조, debug resource merge, focused 회귀 테스트, `git diff --check` 결과.
|
||||
- **범위 밖:** Activity/layout/navigation 변경, 홈 추천 섹션 제목 변경, 레거시 `screen_live_now_all_title` 변경.
|
||||
- **TDD 예외 사유:** 실행 로직이나 분기가 없는 UI 카피 전용 변경이며 영어 리소스는 이미 목표값이다. 신규 source test는 XML 구현 문자열을 중복 고정하므로 추가하지 않는다.
|
||||
- **대체 검증 방법:** 변경 전 기본·일본어 값이 각각 `지금 라이브 중`, `ただいま配信中`임을 확인하고, 변경 후 기본·영어·일본어 값을 직접 대조한 뒤 resource merge와 기존 진입 경로 회귀 테스트를 실행한다.
|
||||
|
||||
**Files:**
|
||||
- Modify: `app/src/main/res/values/strings.xml`
|
||||
- Modify: `app/src/main/res/values-ja/strings.xml`
|
||||
- Verify unchanged: `app/src/main/res/values-en/strings.xml`
|
||||
- Verify unchanged: `app/src/main/java/kr/co/vividnext/sodalive/v2/live/onair/HomeOnAirLiveActivity.kt`
|
||||
|
||||
- [x] 기본 locale의 `live_now` 값을 `On Air`로 변경한다.
|
||||
- [x] 일본어 locale의 `live_now` 값을 `On Air`로 변경한다.
|
||||
- [x] 영어 locale과 세 locale의 최종값이 모두 `On Air`인지 확인한다.
|
||||
- [x] `./gradlew --no-daemon :app:mergeDebugResources`를 실행한다.
|
||||
- [x] `./gradlew --no-daemon :app:testDebugUnitTest --tests "kr.co.vividnext.sodalive.v2.main.home.HomeMainFragmentLoginGuardSourceTest" --tests "kr.co.vividnext.sodalive.v2.live.onair.HomeOnAirLiveEntryPolicyTest"`를 실행한다.
|
||||
- [x] 가능한 연결 기기/에뮬레이터에서 진입 화면 상단 제목을 확인하고, 불가능하면 사유를 Verification Log에 기록한다.
|
||||
- [x] `git diff --check`와 변경 파일 범위를 확인한다.
|
||||
|
||||
#### Phase 6 검증 시나리오
|
||||
- Happy path: 기본 locale에서 `HomeOnAirLiveActivity`가 소비하는 `live_now`의 병합값이 정확히 `On Air`다.
|
||||
- Edge: 영어·일본어 locale에서도 `live_now`가 정확히 `On Air`이며 빈 목록/오류 상태와 독립적인 toolbar 설정은 유지된다.
|
||||
- Adjacent regression: 홈 추천 `전체` 진입 경로와 `screen_live_now_all_title` 값은 변경되지 않는다.
|
||||
|
||||
## Verification Log 추가 기록
|
||||
- 2026-08-03 Phase 6 계획: 기존 PRD §7의 `On Air` 제목 요구사항과 구현의 기본·일본어 `live_now` 값 불일치를 확인했다. 사용자 승인에 따라 리소스 값만 정정하고 화면 코드와 레거시 제목은 유지한다.
|
||||
- 2026-08-03 Phase 6 구현: 기본·일본어 `live_now` 값을 `On Air`로 정정했고 영어값이 이미 `On Air`임을 확인했다. `screen_live_now_all_title`은 세 locale 모두 기존값을 유지했다.
|
||||
- 2026-08-03 Phase 6 자동 검증: `xmllint --noout` 성공, `./gradlew --no-daemon :app:mergeDebugResources` BUILD SUCCESSFUL, focused 2개 테스트 클래스 BUILD SUCCESSFUL, 전체 `:app:testDebugUnitTest` BUILD SUCCESSFUL, `:app:assembleDebug` BUILD SUCCESSFUL을 확인했다. 병합 산출물의 기본·일본어 `live_now`도 `On Air`였다.
|
||||
- 2026-08-03 Phase 6 실제 화면 검증: `Pixel_9_Pro` AVD에 debug APK를 설치하고 정상 홈 화면을 열었으나 현재 API 응답에 라이브 항목이 없어 `전체` 진입점이 렌더링되지 않았다. 내부 Activity 직접 실행은 `android:exported=false`로 거부됐고, 일회성 계측 QA는 첫 시도에서 DEX 공백 메서드명 제약, 두 번째 시도에서 로그인 화면 전환으로 Activity가 종료돼 assertion 전에 실패했다. 임시 계측 테스트는 제거했으며 대상 화면 스크린샷 검증은 미완료로 기록한다.
|
||||
- 2026-08-03 Phase 6 리뷰 반영: Oracle 리뷰 `REV-P6-001`에서 실제 `git diff --check` 성공과 미완료 체크박스의 문서 불일치를 확인했다. 체크박스를 완료로 정정했고 프로덕션 변경이 리소스 2개 각 1줄뿐이며 기본·영어·일본어 `live_now`가 모두 `On Air`임을 재확인했다.
|
||||
|
||||
Reference in New Issue
Block a user