구현 순서
목적
현재 탐색 구조와 동작을 유지하면서 MainView.swift의 UI 구성 요소와 렌더링 입력을 분리
작업 범위 및 완료 조건
책임 구분 및 선행 작업
- 기능·디자인 변경과 근거 없는 성능 향상 주장 제외
- 성능 효과를 주장할 경우 동일 시나리오 Instruments 전후 측정
- #893에서 확정한 탐색 컨테이너, 사이드바 표시 조건, 너비 조절 정책 변경 제외
제외 범위
- 원본 요구사항을 넘어서는 기능·정책 및 구조 변경
.sidebarAdaptable 복원
SideBar와 ResizableSideBarModifier의 다른 파일 또는 다른 모듈 이동
검증
- 변경 파일 SwiftLint 및
DevLog.xcworkspace의 App scheme build-only
- UI 동작 보존 확인; 실행 검증은 별도 실행 허용 후 수행
- 성능 효과를 주장할 경우 Instruments 동일 시나리오 전후 측정
참조
현재 탐색 구조 보존
- 최소 지원 버전 iOS 18과 현재 화면의 Store·탐색 경로 소유권 유지
- 제거된 화면 Coordinator와 넓은 화면 전용 상세 컨테이너 복원 제외
- 하나의
TabView(selection:)와 네 개 Tab을 화면 너비와 관계없이 같은 구조적 위치에 유지
- regular width와 Mac Designed for iPad에서 별도
SideBar를 표시하고 시스템 tab bar를 숨기는 구조 유지
- compact width에서 별도
SideBar를 숨기고 시스템 tab bar를 표시하는 구조 유지
- 별도
SideBar와 시스템 tab bar가 같은 selectedTab과 읽지 않은 알림 수를 공유하는 구조 유지
isTabContentActive, TodoEditorWindowEvent, Toast와 alert 전달 유지
- 사이드바 너비 조절, 하단 프로필 탭, 세로 safe area 구분선, iPadOS 26 창 제어 여백 처리 유지
구현 순서
TabView(selection:)구조가 기준 브랜치에 반영된 상태목적
현재 탐색 구조와 동작을 유지하면서
MainView.swift의 UI 구성 요소와 렌더링 입력을 분리작업 범위 및 완료 조건
MainView.swift의 UI 계산 속성·뷰 생성 함수를 중심으로 같은 파일의private struct View로 분리SideBar와ResizableSideBarModifier의 같은 파일 전용 접근 수준 및 동작 보존StoreOf·Coordinator·저장 클로저 전달 방지Equatable적용 강제 없이 build-only 검증Entry모듈 전체 대상 재점검책임 구분 및 선행 작업
제외 범위
.sidebarAdaptable복원SideBar와ResizableSideBarModifier의 다른 파일 또는 다른 모듈 이동검증
DevLog.xcworkspace의Appscheme build-only참조
현재 탐색 구조 보존
TabView(selection:)와 네 개Tab을 화면 너비와 관계없이 같은 구조적 위치에 유지SideBar를 표시하고 시스템 tab bar를 숨기는 구조 유지SideBar를 숨기고 시스템 tab bar를 표시하는 구조 유지SideBar와 시스템 tab bar가 같은selectedTab과 읽지 않은 알림 수를 공유하는 구조 유지isTabContentActive,TodoEditorWindowEvent, Toast와 alert 전달 유지