docs(auth): 콘텐츠 설정 요구사항과 검증 결과를 기록한다

This commit is contained in:
Yu Sung
2026-10-13 11:37:26 +09:00
parent 61bfa46c11
commit 1b50f559bd
6 changed files with 894 additions and 0 deletions
@@ -0,0 +1,59 @@
# 콘텐츠 높이 커스텀 BottomSheet 리뷰
## 1. 리뷰 정보
| 항목 | 내용 |
|---|---|
| 대상 | Phase4 / P4-T1 / 현재 main working tree의 표시 방식 변경 |
| 일자 | 2026-10-12 |
| 기준 | `../prd.md` §10.0, `../plan-task.md` P4-T1 |
| 리뷰어 | 기능 독립 검토 + 시각 독립 검토 + coordinator 증거 확인 |
| 상태 | P4 APPROVE / 기존 P3 실서버 통합 미검증은 유지 |
## 2. 목적과 범위
- `AuthContentSettingsSheet.swift`의 native sheet를 투명 fullScreenCover + 콘텐츠 자연 높이의 전폭 하단 패널로 바꾼 변경만 검토한다.
- 배경 노출/입력 차단, 자연 높이, safe area, overflow 스크롤, 확인 후 dismiss 콜백을 확인한다.
- 기존 인증 API/회원 동기화/실서버 검증 공백은 이번 UI-only 판정과 분리한다.
## 3. 판정 기준
일반 화면에서 높이는 내용으로 결정되고 외곽 floating 여백이 없어야 한다. 실제 공간 초과 때만 본문을 스크롤하며 확인 버튼 접근과 닫힘 완료 후 제출 연결을 유지해야 한다.
## 4. 근거와 실행 검증
- 실제 소스 hash: `9b88f2e4999f9dfd28f32576385ced5b6078002671f6092f199f243ea43b1a27`.
- native 증거 root: `/var/folders/yh/8xsbvpsj5wg2qnxzxdp11_gm0000gn/T/opencode/auth-settings-qa`.
- 실제 production View/modifier/font/I18n/token을 직접 컴파일한 임시 앱이다. VM과 toast는 stub으로 실제 서버나 오류 toast 검증은 아니다.
| 검사 | 결과 | 근거 |
|---|---|---|
| ko ON / OFF geometry | PASS | 화면402×874pt, 패널 `(0,502,402,372)` / `(0,587,402,287)` |
| en ON geometry | PASS | 높이383.67pt로 실제 줄바꿈에 따라 증가 |
| 배경 투명/입력 차단 | PASS | marker RGBA `[24,84,102,255]`, 뒤 버튼 unhittable, backgroundTaps0 |
| toggle/radio/배경·드래그 차단/확인 | PASS | `IntrinsicPanelPass.xcresult` 3 tests, 0 failures |
| 가로·시스템 최대 글자 overflow | PASS | `IntrinsicOverflow.xcresult` 1 test, 0 failures. 본문 스크롤·확인 접근 |
| Swift parse / 두 앱 Debug Simulator build | PASS | coordinator 실제 실행 exit0, 기존 SDK/중복 소스/dSYM 경고 유지 |
| serializer / VM 격리 driver / 기존 regression | PASS | 실제 DTO4조합, 기존 상태 전이, work/tests 전체 |
캡처 대조:
- `intrinsic-panel-attachments/5BBF64BD-30D4-4FE3-A0F7-D1667609709A.png`: ko ON.
- `intrinsic-panel-attachments/CDE33DE3-749C-4C73-9594-5C7D55BF0F8A.png`: ko OFF.
- `intrinsic-panel-attachments/F0FACA4C-7025-488D-BC25-38D44F79E8DD.png`: en ON.
- `intrinsic-overflow-attachments/41F47EE5-69D0-40DD-86E9-5033A1F5E49F.png`, `0C90E2E0-8109-476C-AC95-C680FFE681E4.png`: 가로 최대 글자 스크롤 전/후.
## 5. 발견 사항
**확정 발견 사항 없음(P4 범위).** 기능/시각 검토 모두 APPROVE다. 코드에서 고정 높이·`.large` 분기가 제거됐으며, 두 layout 후보는 동일 binding의 본문을 공유하고 부수효과가 없다. 확인 버튼은 두 후보 밖에 유지된다.
## 6. plan·goal 전환
새로운 회귀 수정 Task 없음. P4-T1은 완료하고 기존 P3-QA의 실제 인증 통합 미검증은 별도로 보존한다.
## 7. 종료 판정과 한계
**P4 표시 방식 변경 승인.** 실제 네이티브 캡처·geometry assertions와 현재 소스가 일치한다. pixel-perfect 차이율은 측정하지 않았다. iOS16.6 기기 실행 및 실제 계정/서버와 연결된 7개 caller의 전체 흐름은 검증하지 않았다. LSP 도구는 미제공이며 compiler/build로 검증했다.
## 8. 정리 기록
QA app/runner 제거와 작업 소유 simulator 종료를 실행했다. `simctl list devices booted`에 실행 기기 없음, `pgrep -fl 'xcodebuild|AuthSettingsQA'`에 남은 프로세스 없음. 증거는 tmp 경로에 보존했다.