docs(home): 커뮤니티 상세 이동 요구를 기록한다

This commit is contained in:
2026-07-10 10:38:59 +09:00
parent 17f77351ad
commit 2a2315ecbc
2 changed files with 37 additions and 0 deletions

View File

@@ -734,5 +734,35 @@
- 수정: `app/src/main/res/values/strings.xml`, `values-en/strings.xml`, `values-ja/strings.xml`
- 검증 기록: 2026-06-29 `ContentOverviewType.FIRST_AUDIO_CONTENT``home_recommendation_section_first_audio_contents` production 참조를 제거하고, `NEW_AND_HOT_AUDIO` 경로는 유지했다.
### Phase 13: 커뮤니티 상세 라우팅 변경
- [x] **Task 13.1: 방금 활동한 크리에이터 COMMUNITY 라우팅 변경**
- 수정: `app/src/main/java/kr/co/vividnext/sodalive/v2/main/home/model/HomeRecommendationUiModels.kt`
- 수정: `app/src/test/java/kr/co/vividnext/sodalive/v2/main/home/HomeMainFragmentLayoutTest.kt`
- 구현 내용:
- `CreatorActivityType.Community` route의 `targetId`를 커뮤니티 게시글 `postId`로 해석한다.
- `CreatorActivityType.Community` route intent는 `CreatorChannelCommunityDetailActivity.newIntent(context, postId)`로 생성한다.
- `targetId`가 없거나 0 이하이면 기존처럼 이동하지 않는다.
- 검증:
- `HomeMainFragmentLayoutTest`에서 COMMUNITY route intent component와 `extra_post_id` 전달을 확인한다.
- 검증 기록:
- 2026-07-10: `HomeMainFragmentLayoutTest`의 최근 활동 COMMUNITY intent 기대값을 `CreatorChannelCommunityDetailActivity``extra_post_id`로 먼저 변경해 기존 `CreatorCommunityAllActivity` 구현에서 RED 실패를 확인했다. 이후 `HomeRecommendationRecentlyActiveCreatorRoute.Community``targetId``postId`로 해석하고 `CreatorChannelCommunityDetailActivity.newIntent(context, postId)`를 생성하도록 수정했다.
- [x] **Task 13.2: 인기 커뮤니티 item 라우팅 변경**
- 수정: `app/src/main/java/kr/co/vividnext/sodalive/v2/main/home/HomeMainFragment.kt`
- 수정: `app/src/test/java/kr/co/vividnext/sodalive/v2/main/home/HomeMainFragmentLoginGuardSourceTest.kt`
- 구현 내용:
- 인기 커뮤니티 item 클릭 시 `FeedItem.Community.postId`를 사용해 `CreatorChannelCommunityDetailActivity`로 이동한다.
- 기존 `CreatorCommunityAllActivity``EXTRA_COMMUNITY_CREATOR_ID`, `EXTRA_COMMUNITY_POST_ID`, `EXTRA_COMMUNITY_EXIST_ORDERED` 전달을 제거한다.
- `postId`가 없거나 숫자로 변환되지 않으면 기존처럼 이동하지 않는다.
- 검증:
- `HomeMainFragmentLoginGuardSourceTest`에서 invalid `postId` return이 로그인 가드보다 먼저 유지되는지 확인한다.
- `./gradlew :app:testDebugUnitTest --tests "kr.co.vividnext.sodalive.v2.main.home.HomeMainFragmentLayoutTest.home recent activity route creates expected intents" --tests "kr.co.vividnext.sodalive.v2.main.home.HomeMainFragmentLoginGuardSourceTest"`를 실행한다.
- 검증 기록:
- 2026-07-10: `HomeMainFragmentLoginGuardSourceTest`에 인기 커뮤니티가 `CreatorChannelCommunityDetailActivity.newIntent(requireContext(), postId)`를 사용하고 기존 `CreatorCommunityAllActivity`/커뮤니티 목록 extra를 쓰지 않는 source 검증을 추가했다. 기존 구현에서 RED 실패를 확인한 뒤 `HomeMainFragment.openPopularCommunityPost()``postId`만 검증하고 상세 Activity를 열도록 수정했다.
- 2026-07-10: `./gradlew :app:testDebugUnitTest --tests "kr.co.vividnext.sodalive.v2.main.home.HomeMainFragmentLayoutTest.home recent activity route creates expected intents" --tests "kr.co.vividnext.sodalive.v2.main.home.HomeMainFragmentLoginGuardSourceTest"` 실행 결과 BUILD SUCCESSFUL을 확인했다.
## Verification Log
- 2026-07-10: Phase 13 코드 리뷰 및 검증을 재수행했다. 리뷰 범위는 최근 활동 COMMUNITY route가 `targetId``postId`로 해석해 `CreatorChannelCommunityDetailActivity.newIntent(context, postId)`를 생성하는지, 인기 커뮤니티 item이 `FeedItem.Community.postId` 기반으로 상세 Activity를 여는지, 기존 `CreatorCommunityAllActivity`/커뮤니티 목록 extra 제거 여부, 로그인 가드 전 invalid return 유지 여부다. 코드 리뷰 결과 blocking finding은 없었다. 검증으로 Phase 13 targeted test, `HomeMainFragmentLayoutTest` 전체, `./gradlew :app:compileDebugKotlin`, `./gradlew :app:ktlintCheck`, `git diff --cached --check`가 모두 통과했고, `rg`로 v2 home production 코드에 기존 커뮤니티 목록 라우팅 참조가 남지 않았음을 확인했다.
- 2026-07-10: 커뮤니티 상세 라우팅 변경 회귀 검증으로 `./gradlew :app:testDebugUnitTest --tests "kr.co.vividnext.sodalive.v2.main.home.HomeMainFragmentLayoutTest"`, `./gradlew :app:testDebugUnitTest --tests "kr.co.vividnext.sodalive.v2.main.home.HomeMainFragmentLoginGuardSourceTest"`, `./gradlew :app:compileDebugKotlin`, `./gradlew :app:ktlintCheck`, `git diff --check`를 실행했고 모두 통과했다. `ktlintCheck` 최초 실행은 이번에 수정한 source test 파일의 기존 긴 assertion 줄 때문에 실패했으며, 동작 변경 없이 줄바꿈과 긴 문자열 분리만 적용한 뒤 재실행해 BUILD SUCCESSFUL을 확인했다. `rg`로 v2 home production 코드에 `CreatorCommunityAllActivity`와 기존 커뮤니티 전체목록 extra 참조가 남지 않았고, 해당 문자열은 금지 조건 source test에만 남아 있음을 확인했다.
- 2026-06-29: `처음부터 함께 성장!` 제거 회귀 검증으로 `./gradlew :app:testDebugUnitTest --tests "kr.co.vividnext.sodalive.v2.main.home.*" --tests "kr.co.vividnext.sodalive.v2.main.content.overview.*" :app:mergeDebugResources :app:compileDebugKotlin :app:ktlintCheck`를 실행했고 BUILD SUCCESSFUL을 확인했다. `git diff --check` 출력 없음도 확인했다. Android 기기/에뮬레이터 접근이 없어 실제 화면 조작은 수행하지 못했으며, `rg``app/src/main`의 first audio/FIRST_AUDIO_CONTENT production 참조 제거를 확인했다. 리뷰 게이트에서 차단 이슈 없이 승인받았다.