Skip to content

♻️ [Refactor] invalidateQueries 처리 기준 통일 및 retry 전략 세분화 #241

@Seojegyeong

Description

@Seojegyeong

선행 조건 #240

🛠️ Issue Description

  • invalidateQueries 호출 시 void와 await 방식이 혼재되어 있어, 화면 전환·모달 닫기 등이 캐시 갱신 완료 이전에 실행될 수 있습니다.
  • 또한 전역 retry: 1 설정이 axiosInstance 인터셉터의 401 재발급 재시도 로직과 중복되어 불필요한 재요청이 발생할 수 있습니다. - 두 항목의 처리 기준을 명확히 정립하고 통일합니다.

💭 Cause and effect

  • 화면 전환·모달 닫기가 캐시 갱신 완료 이후 실행됨을 보장
  • 4xx 에러 시 불필요한 재시도 요청 제거
  • 팀 내 invalidateQueries 사용 기준이 명문화됨

📝 check-lists

  • invalidateQueries 사용 기준 정립 — UI 동작(화면 전환·모달 닫기)이 후속으로 있으면 await, 단순 백그라운드 갱신이면 void 허용으로 주석 또는 커밋 메시지에 명시
  • MemberManagement.tsx - onSuccess 내 void invalidateQueries 처리 방식 검토 및 필요 시 await로 교체
  • InviteMemberModal.tsx — 모달 닫기 연계 여부 확인 후 처리 방식 결정
  • useCampaignGroup.ts — 성공 모달 표시 전 invalidation 완료 보장 필요 여부 검토
  • Workspace.tsx — createWorkspace 성공 후 처리 방식 검토
  • lib/queryClient.ts — retry: 1 → retry: (count, error) => ... 형태로 세분화 (5xx만 재시도, 4xx 즉시 실패)

Metadata

Metadata

Assignees

Labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions