You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
refactor(timeletter): 목록 화면의 screenshotTest용 Content 경계 분리 #1361
#1130은 screenshotTest와 baseline을 추가하는 테스트 작업이다. 테스트 구현 과정에서 PR #1338(81748be4)가 production TimeletterScreen.kt에 TimeletterScreenContent를 추출하고 아래 상태·이벤트 연결을 재배선했다.
ViewMode와 변경 콜백
Snackbar 상태
상세·설정·작성·수정·수신자 필터 이동 콜백
삭제 대상 선택 콜백
테스트 PR이 production 화면 구조를 대신 결정하지 않도록, 이 변경은 타임레터 담당자가 소유하는 별도 production refactor로 분리한다.
작업 범위
TimeletterScreen의 ViewModel/Route 경계와 고정 상태 렌더링용 Content 경계를 설계한다.
목록·필터·보기 방식·삭제 확인과 내비게이션 이벤트의 소유 위치를 명시한다.
loading/error/success 상태와 기존 Snackbar·삭제 흐름을 보존한다.
production refactor와 #1130의 테스트/baseline 변경을 별도 PR로 유지한다.
완료 조건
production PR에는 구조 변경과 동작 보존 검증만 포함한다.
#1130의 screenshotTest PR은 production src/main을 수정하지 않고 확정된 경계를 사용한다.
MVI 전환(#1811) 착수에 맞춰 blocked_by #1806(timeletter MVI 전환)을 걸었습니다.
이 이슈는 TimeletterScreen 의 «ViewModel/Route 경계와 고정 상태 렌더링용 Content 경계를 설계»하고 «목록·필터·보기 방식·삭제 확인과 내비게이션 이벤트의 소유 위치를 명시»합니다. #1806 이 같은 화면을 Screen / Content(state, onIntent) 2단으로 가르므로 그 설계가 그대로 재작성됩니다.
Activity
OnlyReadOneBook commentedon Sep 3, 2026
MVI 전환(#1811) 착수에 맞춰
blocked_by #1806(timeletter MVI 전환)을 걸었습니다.이 이슈는
TimeletterScreen의 «ViewModel/Route 경계와 고정 상태 렌더링용 Content 경계를 설계»하고 «목록·필터·보기 방식·삭제 확인과 내비게이션 이벤트의 소유 위치를 명시»합니다. #1806 이 같은 화면을Screen/Content(state, onIntent)2단으로 가르므로 그 설계가 그대로 재작성됩니다.#1130 은 이미 닫혀 있어 이 이슈가 테스트 작업을 막지는 않습니다.
순서가 뒤집혀 남는 diff 가 없다면 이 이슈를 #1806 으로 흡수하는 선택지도 있습니다. 그 판정은 이 이슈에서 담당자가 합니다.
fix(ci): 기대 실패 목록 0건을 schemaVersion 검증으로 안전하게 허용한다