docs(home): 팔로잉 탭 UI 검증을 기록한다

This commit is contained in:
2026-06-25 23:34:32 +09:00
parent 01d0367f50
commit 50b45d04e5

View File

@@ -315,7 +315,7 @@
### Phase 4: 팔로잉 탭 UI surface와 adapter 연결 ### Phase 4: 팔로잉 탭 UI surface와 adapter 연결
- [ ] **Task 4.1: Fragment source RED 테스트 작성** - [x] **Task 4.1: Fragment source RED 테스트 작성**
- 생성: - 생성:
- `app/src/test/java/kr/co/vividnext/sodalive/v2/main/home/HomeFollowingFragmentSourceTest.kt` - `app/src/test/java/kr/co/vividnext/sodalive/v2/main/home/HomeFollowingFragmentSourceTest.kt`
- 테스트 케이스: - 테스트 케이스:
@@ -327,8 +327,9 @@
- 검증: - 검증:
- Run: `./gradlew :app:testDebugUnitTest --tests "kr.co.vividnext.sodalive.v2.main.home.HomeFollowingFragmentSourceTest"` - Run: `./gradlew :app:testDebugUnitTest --tests "kr.co.vividnext.sodalive.v2.main.home.HomeFollowingFragmentSourceTest"`
- Expected: layout/fragment 수정 전 RED 실패. - Expected: layout/fragment 수정 전 RED 실패.
- Result: RED 확인. layout ID와 `HomeMainFragment` 팔로잉 wiring 미구현 상태에서 6개 source test가 모두 실패했다.
- [ ] **Task 4.2: 팔로잉 content layout 추가** - [x] **Task 4.2: 팔로잉 content layout 추가**
- 수정: - 수정:
- `app/src/main/res/layout/fragment_v2_main_home.xml` - `app/src/main/res/layout/fragment_v2_main_home.xml`
- 생성: - 생성:
@@ -346,8 +347,9 @@
- 검증: - 검증:
- Run: `./gradlew :app:mergeDebugResources` - Run: `./gradlew :app:mergeDebugResources`
- Expected: 신규 layout/resource가 merge된다. - Expected: 신규 layout/resource가 merge된다.
- Result: PASS. `nsv_home_following_content`, 5개 섹션 RecyclerView, 6개 item layout이 resource merge를 통과했다.
- [ ] **Task 4.3: 팔로잉 adapter 구현** - [x] **Task 4.3: 팔로잉 adapter 구현**
- 생성: - 생성:
- `app/src/main/java/kr/co/vividnext/sodalive/v2/main/home/ui/HomeFollowingCreatorAdapter.kt` - `app/src/main/java/kr/co/vividnext/sodalive/v2/main/home/ui/HomeFollowingCreatorAdapter.kt`
- `app/src/main/java/kr/co/vividnext/sodalive/v2/main/home/ui/HomeFollowingLiveAdapter.kt` - `app/src/main/java/kr/co/vividnext/sodalive/v2/main/home/ui/HomeFollowingLiveAdapter.kt`
@@ -363,8 +365,9 @@
- 검증: - 검증:
- Run: `./gradlew :app:compileDebugKotlin` - Run: `./gradlew :app:compileDebugKotlin`
- Expected: 신규 adapter가 컴파일된다. - Expected: 신규 adapter가 컴파일된다.
- Result: PASS. 팔로잉 creator/live/chat/schedule/news adapter 5개가 `compileDebugKotlin`에서 컴파일됐다.
- [ ] **Task 4.4: HomeMainFragment에 팔로잉 탭 연결** - [x] **Task 4.4: HomeMainFragment에 팔로잉 탭 연결**
- 수정: - 수정:
- `app/src/main/java/kr/co/vividnext/sodalive/v2/main/home/HomeMainFragment.kt` - `app/src/main/java/kr/co/vividnext/sodalive/v2/main/home/HomeMainFragment.kt`
- 작업: - 작업:
@@ -378,8 +381,9 @@
- 검증: - 검증:
- Run: `./gradlew :app:testDebugUnitTest --tests "kr.co.vividnext.sodalive.v2.main.home.HomeFollowingFragmentSourceTest"` - Run: `./gradlew :app:testDebugUnitTest --tests "kr.co.vividnext.sodalive.v2.main.home.HomeFollowingFragmentSourceTest"`
- Expected: PASS. - Expected: PASS.
- Result: PASS. 팔로잉 ViewModel 주입, adapter 연결, 탭 surface 전환, 최초 1회 load, login-required/empty/error 섹션 숨김, content 섹션 binding이 source test로 검증됐다.
- [ ] **Task 4.5: UI routing skeleton 연결** - [x] **Task 4.5: UI routing skeleton 연결**
- 수정: - 수정:
- `app/src/main/java/kr/co/vividnext/sodalive/v2/main/home/HomeMainFragment.kt` - `app/src/main/java/kr/co/vividnext/sodalive/v2/main/home/HomeMainFragment.kt`
- 작업: - 작업:
@@ -390,19 +394,23 @@
- 검증: - 검증:
- Run: `rg -n "openFollowing|onFollowing|HomeFollowingSection|openCreatorProfile|HOME_TAB_FOLLOWING" app/src/main/java/kr/co/vividnext/sodalive/v2/main/home/HomeMainFragment.kt` - Run: `rg -n "openFollowing|onFollowing|HomeFollowingSection|openCreatorProfile|HOME_TAB_FOLLOWING" app/src/main/java/kr/co/vividnext/sodalive/v2/main/home/HomeMainFragment.kt`
- Expected: 팔로잉 item click과 more click 콜백 함수가 확인된다. - Expected: 팔로잉 item click과 more click 콜백 함수가 확인된다.
- Result: PASS. creator click은 `openCreatorProfile`, recent chat click은 기존 AI/DM chat 진입 flow로 연결했고 live/schedule/news/more click은 route 없는 callback skeleton으로 유지했다.
- 검증 기록:
- 2026-06-25 Phase 4 코드 리뷰: Figma `24:5682`와 PRD 기준으로 `On Air` 시작 시간, 이달의 스케줄 프로필/타입 label/On Air 상태, 최근 소식 label/title 바인딩 누락을 확인했다. 누락 항목은 `HomeFollowingFragmentSourceTest` RED로 고정한 뒤 adapter/layout 최소 수정으로 보완했다.
- 2026-06-25 Phase 4 재코드 리뷰: 현재 워킹트리 기준 `HomeMainFragment`, 팔로잉 adapter 5개, 팔로잉 layout, `HomeFollowingFragmentSourceTest`를 Figma `24:5682`/PRD와 대조했으며 blocking finding은 발견하지 못했다.
--- ---
### Phase 5: 통합 검증과 문서 기록 ### Phase 5: 통합 검증과 문서 기록
- [ ] **Task 5.1: 팔로잉 관련 단위 테스트 실행** - [x] **Task 5.1: 팔로잉 관련 단위 테스트 실행**
- 검증: - 검증:
- Run: `./gradlew :app:testDebugUnitTest --tests "kr.co.vividnext.sodalive.v2.main.home.*Following*"` - Run: `./gradlew :app:testDebugUnitTest --tests "kr.co.vividnext.sodalive.v2.main.home.*Following*"`
- Expected: 팔로잉 관련 local unit/source test가 모두 PASS. - Expected: 팔로잉 관련 local unit/source test가 모두 PASS.
- 검증 기록: - 검증 기록:
- 실행 후 결과를 이 task 아래에 한국어로 누적 기록한다. - 2026-06-25 Phase 4 리뷰 보완 후 실행 결과 PASS. 팔로잉 관련 local unit/source test가 모두 통과했다.
- [ ] **Task 5.2: 리소스/컴파일/린트 검증** - [x] **Task 5.2: 리소스/컴파일/린트 검증**
- 검증: - 검증:
- Run: `./gradlew :app:mergeDebugResources` - Run: `./gradlew :app:mergeDebugResources`
- Expected: 신규 layout/string resource merge PASS. - Expected: 신규 layout/string resource merge PASS.
@@ -413,7 +421,10 @@
- Run: `git diff --check` - Run: `git diff --check`
- Expected: whitespace error 없음. - Expected: whitespace error 없음.
- 검증 기록: - 검증 기록:
- 실행 후 결과를 이 task 아래에 한국어로 누적 기록한다. - 2026-06-25 Phase 4 리뷰 보완 후 `./gradlew :app:mergeDebugResources` PASS. 최초 sandbox lock 권한 오류 후 승인 실행으로 통과했다.
- 2026-06-25 Phase 4 리뷰 보완 후 `./gradlew :app:compileDebugKotlin` PASS.
- 2026-06-25 Phase 4 리뷰 보완 후 `./gradlew :app:ktlintCheck` PASS. 기존 `.editorconfig disabled_rules` deprecation warning만 출력됐다.
- 2026-06-25 Phase 4 리뷰 보완 후 `git diff --check` PASS.
- [ ] **Task 5.3: Figma 기준 수동 확인** - [ ] **Task 5.3: Figma 기준 수동 확인**
- 확인: - 확인:
@@ -427,10 +438,12 @@
- `isLoginRequired` 상태에서 팔로잉 섹션 content는 표시되지 않는다. - `isLoginRequired` 상태에서 팔로잉 섹션 content는 표시되지 않는다.
- 더보기 chevron 터치 시 앱이 크래시하지 않고 화면 이동은 발생하지 않는다. - 더보기 chevron 터치 시 앱이 크래시하지 않고 화면 이동은 발생하지 않는다.
- 검증 기록: - 검증 기록:
- 수동 확인 결과를 이 task 아래에 한국어로 누적 기록한다. - 2026-06-25 Figma `24:5682` 디자인 컨텍스트와 스크린샷 기준 정적 대조를 수행했다. 실제 기기/에뮬레이터에서의 수동 화면 확인은 아직 실행하지 않았다.
--- ---
## Verification Log ## Verification Log
- 2026-06-25 Phase 1-3 구현 검증: `./gradlew :app:testDebugUnitTest --tests "kr.co.vividnext.sodalive.v2.main.home.*Following*"`, `./gradlew :app:mergeDebugResources`, `./gradlew :app:compileDebugKotlin`, `./gradlew :app:ktlintCheck`, `git diff --check` 모두 PASS. - 2026-06-25 Phase 1-3 구현 검증: `./gradlew :app:testDebugUnitTest --tests "kr.co.vividnext.sodalive.v2.main.home.*Following*"`, `./gradlew :app:mergeDebugResources`, `./gradlew :app:compileDebugKotlin`, `./gradlew :app:ktlintCheck`, `git diff --check` 모두 PASS.
- 2026-06-25 Phase 1-3 코드 리뷰 및 재검증: blocking finding 없음. `./gradlew :app:mergeDebugResources`는 최초 sandbox lock 권한 오류 후 승인 실행으로 PASS했고, 나머지 검증 명령도 PASS. - 2026-06-25 Phase 1-3 코드 리뷰 및 재검증: blocking finding 없음. `./gradlew :app:mergeDebugResources`는 최초 sandbox lock 권한 오류 후 승인 실행으로 PASS했고, 나머지 검증 명령도 PASS.
- 2026-06-25 Phase 4 코드 리뷰 및 검증: Figma `24:5682` 기준 UI 필드 바인딩 누락을 보완했고, `./gradlew :app:testDebugUnitTest --tests "kr.co.vividnext.sodalive.v2.main.home.*Following*"`, `./gradlew :app:mergeDebugResources`, `./gradlew :app:compileDebugKotlin`, `./gradlew :app:ktlintCheck`, `git diff --check` 모두 PASS.
- 2026-06-25 Phase 4 재코드 리뷰 및 검증: blocking finding 없음. Figma `24:5682` 디자인 컨텍스트/스크린샷과 현재 Phase 4 변경을 정적 대조했고, `./gradlew :app:testDebugUnitTest --tests "kr.co.vividnext.sodalive.v2.main.home.*Following*"`, `./gradlew :app:mergeDebugResources`, `./gradlew :app:compileDebugKotlin`, `./gradlew :app:ktlintCheck`, `git diff --check` 모두 PASS. `mergeDebugResources`는 최초 sandbox lock 권한 오류 후 승인 실행으로 PASS했다.