fix(content): 추천 섹션 순서를 조정한다

This commit is contained in:
2026-07-09 08:28:23 +09:00
parent 1baf3ac7e0
commit dace1416c5
3 changed files with 64 additions and 22 deletions

View File

@@ -517,3 +517,19 @@
- 2026-06-23: Phase 4~6 코드 리뷰 및 검증을 재수행했다. 배너/오리지널 시리즈/공통 오디오 카드/New&Hot/최근 댓글 adapter, 실제 API 상태 observer, section visibility, 오디오/시리즈/배너 routing, 제외 섹션 미추가 상태를 확인했고 blocking issue는 발견하지 못했다. `./gradlew :app:testDebugUnitTest --tests "kr.co.vividnext.sodalive.v2.main.content.*"`, `./gradlew :app:mergeDebugResources`, `./gradlew :app:compileDebugKotlin`, `./gradlew :app:ktlintCheck`, `git diff --check` 결과 모두 성공했다. `:app:mergeDebugResources`는 최초 sandbox 실행에서 `~/.gradle` lock 파일 권한으로 실패해 승인 후 재실행했고 성공했다.
- 2026-06-23: Phase 7 통합 검증으로 `./gradlew :app:testDebugUnitTest --tests "kr.co.vividnext.sodalive.v2.main.content.*"`, `./gradlew :app:mergeDebugResources`, `./gradlew :app:compileDebugKotlin`, `./gradlew :app:ktlintCheck`, `git diff --check`를 순차 실행했고 모두 성공했다. 실제 기기 `SM-G960N - Android 10`에 debug APK를 설치해 콘텐츠 탭 진입, title-bar/tab-bar 고정 영역, 제외 섹션 미표시를 확인했다. 다만 실제 API 응답이 빈 상태여서 non-empty 섹션과 item routing은 실기기에서 확인하지 못했고 기존 source/mapper 테스트와 컴파일 검증으로 대체했다.
- 2026-06-25: 리뷰 지적에 따라 `ContentRecyclerItemLayoutParams`의 grid item offset을 left column 여부 기반 계산에서 `spanCount``columnIndex` 기반 계산으로 수정했다. 기본 2열은 기존처럼 인접 gap `4dp + 4dp`를 유지하고, 전체 탭 3열은 1-2열/2-3열 사이 gap이 모두 `8dp`가 되도록 보정했다. 회귀 방지를 위해 `ContentMainFragmentSourceTest`에 3열 spacing 계약을 추가했고, `./gradlew :app:testDebugUnitTest --tests "kr.co.vividnext.sodalive.v2.main.content.ContentMainFragmentSourceTest"`, `./gradlew :app:compileDebugKotlin`, `./gradlew :app:ktlintCheck`를 실행해 모두 `BUILD SUCCESSFUL`을 확인했다. `ktlintCheck``.editorconfig disabled_rules` deprecation 경고와 Gradle deprecation warning은 기존 경고로 이번 변경과 무관하다.
### 2026-07-09 후속 변경: 메인 콘텐츠 추천 섹션 순서 변경
- [x] **Task 8.1: 추천 탭 XML 섹션 순서 변경**
- 수정:
- `app/src/main/res/layout/fragment_v2_main_content.xml`
- `app/src/test/java/kr/co/vividnext/sodalive/v2/main/content/ContentMainFragmentSourceTest.kt`
- 작업:
- 추천 탭 섹션 순서를 `오직 보이스온에서만!``New&Hot``새로 올라온 오디오``무료 오디오``포인트 오디오``댓글 많은 오디오``추천 오디오`로 변경한다.
- adapter, ViewModel, routing 로직은 변경하지 않는다.
- 검증:
- `./gradlew :app:testDebugUnitTest --tests "kr.co.vividnext.sodalive.v2.main.content.ContentMainFragmentSourceTest"`
- `./gradlew :app:mergeDebugResources`
- `./gradlew :app:compileDebugKotlin`
- 검증 기록:
- 2026-07-09: 먼저 `ContentMainFragmentSourceTest.content 추천 layout은 요청된 섹션 순서로 배치한다`를 추가하고 기존 XML에서 `newAndHotIndex < latestAudioIndex` 조건 실패를 RED로 확인했다. 이후 `fragment_v2_main_content.xml`에서 `New&Hot` 섹션을 `새로 올라온 오디오` 위로 이동했고, `./gradlew :app:testDebugUnitTest --tests "kr.co.vividnext.sodalive.v2.main.content.ContentMainFragmentSourceTest"`, `./gradlew :app:mergeDebugResources`, `./gradlew :app:compileDebugKotlin`, `git diff --check` 결과 모두 성공했다. Gradle deprecation warning과 Agora namespace warning은 기존 경고로 이번 변경과 무관하다.