🔥 Issue 내용
앱 전반의 비동기 처리 방식을 기존 동작을 유지하는 조건으로 검토하고, 과도하거나 부적합한 부분만 개선합니다.
목표는 무조건적인 generation 비교 정책 제거가 아닌, 더 적합한 비동기 처리 방식의 탐색과 적용입니다. 세대값 비교가 적절한 경우 유지하며, 취소·공유 Task·직렬 실행·최신 의도 보관·제한 병렬 처리 등과 비교하여 효율성, 성능, 가독성 및 컨벤션 준수를 개선합니다. Clean Architecture, TCA의 책임 경계, SOLID 및 Clean Code 원칙을 준수합니다.
변경하지 않는 사항
- 사용자 입력 수용·취소·무시 기준과 처리 순서, 기존 병렬 실행 의도
- 페이지네이션, 캐시, 낙관적 갱신·롤백 및 서버 변경 요청의 의미
- 오류 안내, 세션 만료, 화면 전환, 이벤트 수집 정책
동작 변화가 의심되거나 계약이 불명확하면 구현 전에 기획의도를 재확인합니다. 요청 취소를 서버 변경 취소로 간주하거나 actor 격리만으로 전체 유즈케이스의 원자성을 보장한다고 판단하지 않습니다.
검토 및 진행 방법
- 기준 커밋을 확정하고 앱 전반의 비동기 처리 위치와 책임을 목록화합니다.
- 대표 구현을 상세 검토하고 유사 구현은 차이 위주로 확인하여 반복 조사 비용을 줄입니다.
- 유즈케이스별 현재 보장, 대안, 비용, 부작용과 유지·변경 근거를 정리합니다.
- 응답 역전, 취소, 공유 작업, 화면 수명, 캐시 초기화, 세션 교체, 버그 발견, 문제를 해결하기 위한 더 적합한 비동기 처리 방식을 다각면에서 검토, 아키텍처 규칙과 컨벤션 준수 여부 관점에서 계획을 반복 검토합니다.
- 작은 개선 단위별 승인 후 구현하고 자체 리뷰 및 검증을 수행합니다.
효과 검증
정적 사실, 조건부 계산, 실제 측정 결과를 구분하여 동일 시나리오의 전후 효과를 설명합니다. 실측 없이 CPU·메모리·응답 시간 개선율을 주장하지 않습니다. Instruments·시뮬레이터 측정은 꼭 필요한 경우에만 사전 허가를 받습니다. 테스트 코드 추가·실행은 제외합니다.
작업 완료 전까지 로컬 임시 기준 문서 CONCURRENCY_REVIEW_WORKING.md를 매 작업 단위 시작·편집·검토·컨텍스트 복구 시 확인하고 갱신합니다. 이 문서는 현재 커밋 대상이 아니며, 확정 결정과 미확정 제안을 구분하여 기록합니다.
✅ To-do
🔥 Issue 내용
앱 전반의 비동기 처리 방식을 기존 동작을 유지하는 조건으로 검토하고, 과도하거나 부적합한 부분만 개선합니다.
목표는 무조건적인 generation 비교 정책 제거가 아닌, 더 적합한 비동기 처리 방식의 탐색과 적용입니다. 세대값 비교가 적절한 경우 유지하며, 취소·공유 Task·직렬 실행·최신 의도 보관·제한 병렬 처리 등과 비교하여 효율성, 성능, 가독성 및 컨벤션 준수를 개선합니다. Clean Architecture, TCA의 책임 경계, SOLID 및 Clean Code 원칙을 준수합니다.
변경하지 않는 사항
동작 변화가 의심되거나 계약이 불명확하면 구현 전에 기획의도를 재확인합니다. 요청 취소를 서버 변경 취소로 간주하거나 actor 격리만으로 전체 유즈케이스의 원자성을 보장한다고 판단하지 않습니다.
검토 및 진행 방법
효과 검증
정적 사실, 조건부 계산, 실제 측정 결과를 구분하여 동일 시나리오의 전후 효과를 설명합니다. 실측 없이 CPU·메모리·응답 시간 개선율을 주장하지 않습니다. Instruments·시뮬레이터 측정은 꼭 필요한 경우에만 사전 허가를 받습니다. 테스트 코드 추가·실행은 제외합니다.
작업 완료 전까지 로컬 임시 기준 문서
CONCURRENCY_REVIEW_WORKING.md를 매 작업 단위 시작·편집·검토·컨텍스트 복구 시 확인하고 갱신합니다. 이 문서는 현재 커밋 대상이 아니며, 확정 결정과 미확정 제안을 구분하여 기록합니다.✅ To-do