Skip to content

[#575] TodoEditorView에 TCA를 적용한다#593

Merged
opficdev merged 12 commits into
developfrom
refactor/#575-TodoEditorView-TCA
Jun 12, 2026
Merged

[#575] TodoEditorView에 TCA를 적용한다#593
opficdev merged 12 commits into
developfrom
refactor/#575-TodoEditorView-TCA

Conversation

@opficdev

Copy link
Copy Markdown
Owner

🔗 연관된 이슈

🎯 의도

  • TodoEditorView의 상태 관리를 기존 TodoEditorViewModel 기반 StorePattern에서 TCA 기반 Feature/Store 구조로 전환하기 위함

📝 작업 내용

📌 요약

TodoEditorFeature를 추가하고 TodoEditorView가 StoreOf를 사용하도록 변경함

🔍 상세

  • TodoEditorViewModel 제거 및 TodoEditorFeature 추가
  • Todo 생성/수정, 태그, 완료 상태, 마감일, 카테고리, 미리보기 참조 Todo 해석 상태 관리 이관
  • AlertState, LoadingFeature, BindingAction, @presents 기반 sheet state 적용
  • info sheet와 참조 Todo sheet 상태를 TodoEditorFeature.SheetState로 통합
  • TodoEditorView 생성 지점들을 Store 생성 방식으로 변경
  • TestStore 기반 TodoEditorFeatureTests와 테스트 더블 추가
  • 기존 ViewModel 상태 관리와 동일한 흐름 검증 추가
  • 변경 파일 SwiftLint 및 TodoEditorFeatureTests 통과
  • 기존 file_length warning 유지

📸 영상 / 이미지 (Optional)

@opficdev opficdev self-assigned this Jun 12, 2026

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

이번 PR은 기존의 TodoEditorViewModel을 Composable Architecture(TCA) 기반의 TodoEditorFeature 리듀서로 마이그레이션하고, 이에 맞춰 TodoEditorView 및 관련 뷰와 코디네이터들을 업데이트하며 테스트 코드를 추가하는 변경사항을 담고 있습니다. 리뷰어는 SwiftUI 렌더링 클로저 내에서 Store를 직접 생성하여 상태 초기화나 이펙트 취소 버그가 발생할 수 있는 부분을 지적하며 자식 상태로 통합할 것을 권장했습니다. 또한, 비동기 마크다운 해석 이펙트(resolveMarkdownEffect)에서 발생할 수 있는 레이스 컨디션을 방지하기 위해 .cancellable을 적용하도록 개선을 제안했습니다.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

@opficdev opficdev merged commit a00f5c7 into develop Jun 12, 2026
5 checks passed
@opficdev opficdev deleted the refactor/#575-TodoEditorView-TCA branch June 12, 2026 07:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

TodoEditorView에 TCA를 적용한다

1 participant