fix(content-preference): 조회 API 선호도 쿼리 파라미터를 제거한다
This commit is contained in:
44
docs/20260328_콘텐츠조회파라미터제거및비로그인기본값고정.md
Normal file
44
docs/20260328_콘텐츠조회파라미터제거및비로그인기본값고정.md
Normal file
@@ -0,0 +1,44 @@
|
||||
# 20260328 콘텐츠 조회 파라미터 제거 및 비로그인 기본값 고정
|
||||
|
||||
## 목적
|
||||
- 모든 API에서 `isAdultContentVisible`, `contentType` 요청 파라미터를 제거한다.
|
||||
- 비로그인 사용자는 항상 `isAdultContentVisible = false`, `contentType = ContentType.ALL`로 처리한다.
|
||||
- 로그인 사용자는 기존과 동일하게 `MemberContentPreference` 기반 로직을 유지한다.
|
||||
|
||||
## 구현 체크리스트
|
||||
- [x] `isAdultContentVisible`, `contentType`를 받는 잔여 API 시그니처를 모두 제거한다.
|
||||
- QA: `grep("@RequestParam(\"isAdultContentVisible\"|@RequestParam(\"contentType\")")` 결과가 0인지 확인
|
||||
- [x] 연관 서비스 메서드 시그니처/호출부를 정리한다.
|
||||
- QA: `compileKotlin` 성공으로 시그니처 불일치가 없는지 확인
|
||||
- [x] 비로그인 기본값을 `false/ALL`로 고정한다.
|
||||
- QA: 익명 분기 `ViewerContentPreference(false/ALL)` 코드 확인 + 관련 테스트 통과
|
||||
- [x] 로그인 분기는 기존 `memberContentPreferenceService.resolveForQuery(member = member)` 흐름을 유지한다.
|
||||
- QA: 관련 컨트롤러/서비스에서 로그인 분기 호출 유지 확인
|
||||
- [x] 회귀 검증을 수행한다.
|
||||
- QA: `./gradlew test`, `./gradlew build` 성공
|
||||
|
||||
## 구현 완료 후 기록
|
||||
### 1차 구현
|
||||
- 무엇을:
|
||||
- 잔여 API 파라미터를 전부 제거했다.
|
||||
- `HomeController`, `LiveApiController`, `LiveRoomController`, `AudioContentController`, `AudioContentMainTabHomeController`
|
||||
- 연관 서비스 시그니처와 호출부를 정리했다.
|
||||
- `HomeService`, `LiveApiService`, `LiveRoomService`
|
||||
- 비로그인 분기 기본값을 `ViewerContentPreference(isAdultContentVisible = false, contentType = ContentType.ALL, isAdult = false)`로 고정했다.
|
||||
- 왜:
|
||||
- 요청사항이 “모든 API에서 해당 파라미터 제거 + 비로그인 기본값 고정 + 로그인 기존 동작 유지”로 명확했기 때문이다.
|
||||
- 어떻게:
|
||||
- 명령:
|
||||
- `./gradlew compileKotlin compileTestKotlin`
|
||||
- `grep("@RequestParam(\"isAdultContentVisible\"|@RequestParam(\"contentType\")", include="*Controller.kt")`
|
||||
- `ast-grep: ViewerContentPreference(isAdultContentVisible = false, contentType = ContentType.ALL)`
|
||||
- `./gradlew test`
|
||||
- `./gradlew build`
|
||||
- `lsp_diagnostics`(수정된 `.kt` 파일 대상)
|
||||
- 결과:
|
||||
- 컴파일 성공(`compileKotlin`, `compileTestKotlin`).
|
||||
- 컨트롤러의 `@RequestParam("isAdultContentVisible")`, `@RequestParam("contentType")` 검색 결과 0건.
|
||||
- 비로그인 기본값 고정 분기 5개 위치 확인(`HomeService`, `LiveApiService`, `LiveRoomService`, `AudioContentController`, `AudioContentMainTabHomeController`).
|
||||
- `./gradlew test` 성공.
|
||||
- `./gradlew build` 성공.
|
||||
- 현재 환경은 Kotlin LSP 서버 미구성으로 `lsp_diagnostics(.kt)` 실행 불가였고, Gradle 컴파일/테스트/빌드로 정합성 검증 완료.
|
||||
Reference in New Issue
Block a user