Files
sodalive-android/docs/20260803_내_채널_팔로워_목록_연결/prd.md

6.0 KiB

내 채널 팔로워 목록 연결 PRD

문서 정보

항목 내용
문서 상태 구현 완료
작성일 2026-08-03
최종 수정일 2026-08-03
대상 제품 v2 크리에이터 채널 내 채널 팔로워 목록 연결
작성자·결정권자 사용자, Sisyphus
관련 API Contract 기존 레거시 UserFollowerListActivity / ExplorerApi.getFollowerList 재사용
관련 구현 계획 docs/20260803_내_채널_팔로워_목록_연결/plan-task.md
관련 review docs/20260803_내_채널_팔로워_목록_연결/reviews/phase1-follower-list-link-review.md

1. Overview

내 채널 소유자는 v2 크리에이터 채널 상단의 팔로워 n명 영역을 눌러 자신을 팔로우하는 사용자 목록을 확인할 수 있어야 한다. 신규 v2 화면을 만들지 않고 기존 레거시 UserFollowerListActivity를 그대로 연결한다.

2. Problem Statement

현재 v2 크리에이터 채널은 팔로워 n명을 표시하지만 클릭 동작이 없다. 사용자는 내 채널을 팔로우하는 사용자 목록으로 이동하려면 레거시 프로필 경로를 우회해야 한다.

문제를 해결했다는 판단은 내 채널에서 팔로워 n명을 터치했을 때 Constants.EXTRA_USER_ID에 현재 creatorId가 담긴 UserFollowerListActivity가 실행되는 것으로 한다.

3. Goals

3.1 제품 목표

  • 내 채널 소유자는 채널 상단 팔로워 n명에서 팔로워 목록 화면으로 이동할 수 있다.
  • 기존 레거시 팔로워 목록 화면과 API 계약을 재사용한다.
  • 타인 채널에서는 이번 연결을 노출하지 않는다.

3.2 UX 목표

  • 기존 문구, 배치, 수치 표시를 변경하지 않는다.
  • 팔로워 수가 0명이어도 같은 목록 화면으로 진입한다.
  • 별도 안내, 다이얼로그, 신규 화면을 추가하지 않는다.

4. Non-Goals

  • FollowingCreatorActivity 연결은 구현하지 않는다. 이 화면은 현재 사용자가 팔로잉한 크리에이터 목록이다.
  • 신규 v2 팔로워 목록 화면을 만들지 않는다.
  • 레거시 UserFollowerListActivity, 레거시 API, 레거시 레이아웃은 수정하지 않는다.
  • 팔로워 n명 문구를 팔로잉 n명으로 변경하지 않는다.
  • 타인 채널의 팔로워 수 클릭 동작은 추가하지 않는다.

5. Target Users and Permissions

사용자 목표 주요 작업 사용 환경
내 채널 소유자 내 채널을 팔로우하는 사용자 확인 팔로워 n명 터치 후 목록 조회 Android 앱

권한 기준은 기존 CreatorChannelActivity 진입의 로그인 가드와 UserFollowerListActivity의 기존 API 인증을 따른다.

6. 핵심 사용자 흐름

  1. 사용자가 본인 크리에이터 채널에 진입한다.
  2. 채널 상단 헤더의 팔로워 n명을 터치한다.
  3. 앱은 기존 UserFollowerListActivity를 실행하며 Constants.EXTRA_USER_ID에 현재 creatorId를 전달한다.
  4. 레거시 화면이 기존 방식대로 팔로워 목록을 조회하고 표시한다.

7. 정보 구조와 라우팅

CreatorChannelActivity
  tvFollowerCount click
    -> UserFollowerListActivity
       extra: Constants.EXTRA_USER_ID = creatorId

8. 기능 요구사항

ID 상태 요구사항 수용 기준 계약/Goal 연결
FOLLOWER-LINK-001 확정 내 채널 소유자가 팔로워 n명을 누르면 레거시 팔로워 목록으로 이동한다. UserFollowerListActivity Intent가 생성되고 Constants.EXTRA_USER_ID에 현재 creatorId가 전달된다. P1-T1
FOLLOWER-LINK-002 확정 타인 채널에서는 이번 클릭 연결이 동작하지 않는다. currentHeader.isOwner != true이면 목록 Activity를 시작하지 않는다. P1-T1
FOLLOWER-LINK-003 확정 팔로워 수 0명도 동일하게 목록 화면으로 진입한다. 클릭 조건에 followerCount > 0 제한이 없다. P1-T1

9. UI/UX Expectations

  • 기존 tv_follower_count 표시를 그대로 사용한다.
  • 레이아웃, 색상, 문구, 접근성 리소스는 변경하지 않는다.
  • 클릭 가능성 외 시각적 embellishment는 추가하지 않는다.

10. API 계약

신규 API 계약은 없다. UserFollowerListActivity가 기존 ExplorerApi.getFollowerList(userId, page, size, Authorization) 흐름을 재사용한다.

11. 보안과 데이터 취급

  • 전달 값은 기존 내부 식별자 creatorId뿐이다.
  • 토큰, API URL, 민감정보를 로그나 Toast에 추가로 노출하지 않는다.

12. 성공 기준

  • CreatorChannelActivitySourceTest가 클릭 연결, owner 제한, extra 전달 계약을 검증한다.
  • focused unit test가 RED 후 GREEN으로 통과한다.
  • :app:assembleDebug가 성공한다.
  • 실제 Android 표면 검증 또는 실행 환경 부재 사유가 계획 문서에 기록된다.

13. Open Questions

ID 상태 결정 필요 사항 현재 권고 결정 주체 결정 기한/시점 영향 Goal
없음 확정 추가 결정 없음 권장 설계 승인됨 사용자 완료 P1-T1

14. 요구사항 추적표

요구사항 범위 API Contract 계획 Phase Goal 자동 검증 수동 검증
FOLLOWER-LINK-001~003 기존 레거시 API 재사용 1 P1-T1, P1-GATE CreatorChannelActivitySourceTest 내 채널 팔로워 n명 터치

15. Decision Log

날짜 ID 상태 결정 근거 영향 요구사항·계약·Goal
2026-08-03 DEC-001 확정 FollowingCreatorActivity가 아닌 UserFollowerListActivity로 연결한다. 전자는 내가 팔로잉한 크리에이터 목록이고, 후자는 채널 팔로워 목록이다. FOLLOWER-LINK-001, P1-T1
2026-08-03 DEC-002 확정 v2 신규 화면을 만들지 않고 레거시 화면을 재사용한다. 사용자 명시 요청. FOLLOWER-LINK-001, P1-T1