Repository navigation
docs(afternote): 평탄화 이후 끊긴 KDoc 참조 13건 정정 — author.detail 옛 경로 잔재 (#1092 후속) #1775
Description
작업 유형
documentation — 문서
주 담당 모듈
afternote — 애프터노트
개요
문제
PR #1587(커밋 2fd2bf1ce refactor(afternote): flatten presentation packages (#1092))이 feature:afternote:presentation 의 author/detail/ 을 detail/ 로 평탄화하면서, KDoc 링크가 가리키는 FQN 은 옛 경로 그대로 남았다.
KDoc 의 [com.foo.Bar] 링크는 해석에 실패해도 컴파일 에러가 아니다. 그래서 컴파일·ktlint·Konsist 어느 게이트도 이 13건을 잡지 못한다.
실제 손실은 하나다 — IDE 문서 팝업에서 죽은 평문이 되어 Ctrl+클릭으로 따라갈 수 없다. 이 저장소는 Dokka 를 쓰지 않으므로 생성 문서 쪽 영향은 없다. 평탄화 커밋이 2026-08-30 이라 아직 나흘째이고, 그래서 급한 건은 아니다.
재현
git grep -n "presentation\.author\.detail" -- '*.kt'
origin/develop (d925fc1) 기준 13건 — 모두 main 소스셋의 KDoc 링크다. 옛 경로를 import 하는 코드는 남아 있지 않다(있었다면 컴파일이 깨졌을 것).
잔재 13건
| 파일 | 줄 | 끊긴 참조 |
|---|---|---|
detail/AfternoteDetailRoute.kt |
50 | author.detail.AfternoteDetailUiState.Success.isDeleting |
detail/AfternoteDetailRoute.kt |
112 | author.detail.AfternoteDetailUiState.Success.deleteResult |
detail/AfternoteDetailRoute.kt |
118 | author.detail.AfternoteDetailViewModel.onDeleteResultConsumed |
detail/AfternoteDetailState.kt |
12 | author.detail.account.AccountDetailScreen |
detail/AfternoteDetailUiState.kt |
13 | author.detail.AfternoteDetailViewModel.onDeleteResultConsumed |
detail/AfternoteDetailUiState.kt |
31 | author.detail.AfternoteDetailViewModel.onDeleteResultConsumed |
detail/GalleryDetailScreen.kt |
54 | author.detail.account.AccountDetailScreen |
detail/MemorialDetailScreen.kt |
80 | author.detail.account.AccountDetailScreen |
receiver/detail/GalleryReceivedDetailScreen.kt |
28 | author.detail.GalleryDetailScreen |
receiver/detail/ReceivedAfternoteDetailViewModel.kt |
30 | author.detail.AfternoteDetailViewModel |
receiver/detail/ReceivedDetailContentUiModel.kt |
10 | author.detail.DetailContentUiModel |
receiver/detail/SocialNetworkReceivedDetailScreen.kt |
39 | author.detail.account.AccountDetailScreen |
shared/detail/DetailStateContents.kt |
50 | author.detail.AfternoteDetailUiState.Error |
(경로는 feature/afternote/presentation/src/main/kotlin/com/afternote/feature/afternote/presentation/ 이하, FQN 은 com.afternote.feature.afternote.presentation. 이하 생략)
참조 대상의 실제 현재 위치
파일명이 아니라 선언 심볼로 확인한 결과 — 평탄화가 균일하지 않아 AccountDetailScreen 하나만 하위 패키지에 남았다.
| 심볼 | 현재 패키지 | 선언 위치 |
|---|---|---|
AfternoteDetailUiState |
presentation.detail |
detail/AfternoteDetailUiState.kt:19 |
AfternoteDetailViewModel |
presentation.detail |
detail/AfternoteDetailViewModel.kt:44 |
DetailContentUiModel |
presentation.detail |
detail/AfternoteDetailSuccessMapper.kt:72 |
GalleryDetailScreen |
presentation.detail |
detail/GalleryDetailScreen.kt:57 |
MemorialDetailScreen |
presentation.detail |
detail/MemorialDetailScreen.kt:83 |
AccountDetailScreen |
presentation.detail.**account** |
detail/account/AccountDetailScreen.kt:49 |
DetailContentUiModel 은 파일명이 DetailContentUiModel.kt 가 아니라 AfternoteDetailSuccessMapper.kt 안에 선언돼 있다 — 파일명 grep 으로는 못 찾는다.
완료 조건
-
git grep "presentation\.author\.detail" -- '*.kt'가 0건 - 참조하는 쪽과 같은 패키지인 링크는 FQN 을 걷고 짧은
[SymbolName]형태로 —detail/안에서detail심볼을 가리키는 8건이 해당 - 패키지가 다른 링크(
receiver/detail·shared/detail→detail,detail→detail.account)는author.만 걷어낸 정확한 FQN 으로 -
:feature:afternote:presentation:compileDebugUnitTestKotlin·:ktlintCheck초록
참고
- 동작 변경 0 — KDoc 주석 텍스트만 바뀐다. 프로덕션·테스트 코드 경로 변경 없음.
- 평탄화 본 이슈는 presentation 깊이를 2단계로 평탄화 — 116개 파일 중 57개가 3단계 이상, 최대 6단계 (#945 실행분) #1092 (closed), 그 상위는 presentation 패키지 구조 통일 — 타입별 묶음을 기능별로 (모듈마다 규칙이 다름) #945 (closed).
- 착수 시점에 이 10개 파일을 만지는 열린 PR 은 없다. 인접 PR 3건은 다른 파일이다 — refactor(afternote): DetailContent.Memorial 의 MemorialDetail 래퍼를 걷어 songs·media 로 평탄화한다 (#1746) #1747
detail/AfternoteDetailSuccessMapper.kt, refactor(afternote,core): UserProfileRepository 과도기 별칭을 걷는다 (#1523) #1721detail/AfternoteDetailViewModel.kt, refactor(core,afternote): 수정·삭제 액션 팝업을 core:ui AfternoteActionMenu 로 승격 (#1729) #1611shared/detail/EditDropdownMenu.kt.
Activity