Skip to content

[#712] GitHub 이메일 변경으로 인한 계정 연결 충돌 안내를 추가한다#713

Merged
opficdev merged 8 commits into
developfrom
refactor/#712
Jul 10, 2026
Merged

[#712] GitHub 이메일 변경으로 인한 계정 연결 충돌 안내를 추가한다#713
opficdev merged 8 commits into
developfrom
refactor/#712

Conversation

@opficdev

Copy link
Copy Markdown
Owner

🔗 연관된 이슈

🔗 연관된 이슈

🎯 의도

GitHub 이메일 변경으로 발생하는 provider 연결 충돌을 일반 가입 충돌과 분리하고, 기존 데이터를 보호하는 전용 안내 흐름 제공

📝 작업 내용

📌 요약

  • GitHub provider 연결 요청을 /auth/github/link REST endpoint로 전환
  • GitHub 이메일 변경 충돌을 위한 오류 계약과 전용 alert 추가
  • Data·Domain·Infra 계층의 오류 타입 및 소유권 정리
  • endpoint 경로와 alert 분기 테스트 추가
  • AI workflow 모델 위임 및 문서 작성 규칙 보강

🔍 상세

  • 클라이언트의 Firebase credential 직접 연결을 서버의 GitHub provider link 요청으로 전환
  • github-email-changed-account-conflictFunctionAPIErrorCode에서 해석하고 EmailError.githubEmailConflict로 변환
  • Data와 Domain 매핑을 거쳐 AuthError.githubEmailConflict까지 충돌 오류 전달
  • 기존 linkCredentialAlreadyInUse 안내와 GitHub 이메일 변경 충돌 안내 분리
  • 충돌 발생 시 전용 alert 표시와 닫기 동작 제공
  • 자동 로그아웃, 계정 전환, provider 강제 연결, 데이터 병합 동작 미추가
  • EmailFetchErrorEmailError로 정리하고 DataErrorDataLayerError로 통합
  • invalidData 오류의 Domain 소유권을 DomainLayerError로 분리
  • FunctionAPIEndpointTests에서 GitHub provider link 요청의 POST method와 경로 검증
  • AccountFeatureTests에서 AuthError.githubEmailConflict의 전용 alert 분기 검증
  • Localizable.xcstrings에 GitHub 이메일 충돌 안내의 한국어·영어 문구 추가
  • AGENT_ROLES.mdAGENT_WORKFLOWS.md에 모델 위임 fallback 및 문서 작성 workflow 규칙 추가

📸 영상 / 이미지 (Optional)

해당 없음

@opficdev opficdev self-assigned this Jul 10, 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

This pull request implements a new GitHub account linking flow via the /auth/github/link endpoint and introduces the githubEmailConflict error across the application layers to handle email conflicts during linking. It also refactors EmailFetchError to EmailError and DataError to DataLayerError. The review comments identify a missing path for the credentialAlreadyInUse error in the newly refactored EmailError and API decoding flows, providing actionable suggestions to map this error from the server response down to the domain layer.

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.

Comment thread Application/Data/Sources/Common/DataLayerError.swift
Comment thread Application/Infra/Sources/Service/FunctionAPIClient.swift
Comment thread Application/Infra/Sources/Service/FunctionAPIClient.swift
Comment thread Application/Data/Sources/Repository/AuthDataRepositoryImpl.swift
@opficdev opficdev merged commit 64ff024 into develop Jul 10, 2026
7 checks passed
@opficdev opficdev deleted the refactor/#712 branch July 10, 2026 06:09
@opficdev opficdev added the TestFlight TestFlight 배포 버전 label Jul 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

TestFlight TestFlight 배포 버전

Projects

None yet

Development

Successfully merging this pull request may close these issues.

GitHub 이메일 변경으로 인한 계정 연결 충돌 안내를 추가한다

1 participant