[#720] Google 로그인을 공통 서버 callback과 Firebase custom token 흐름으로 전환한다#729
Merged
Conversation
Contributor
There was a problem hiding this comment.
Code Review
이번 풀 리퀘스트는 GoogleSignIn SDK 의존성을 제거하고, 백엔드 커스텀 토큰 흐름을 활용한 Google 로그인 및 계정 연결 방식으로 전환하는 작업을 포함하고 있습니다. 이에 따라 불필요해진 SDK 관련 코드, 설정 파일, 그리고 TopViewControllerProvider 등의 유틸리티 클래스를 정리하고 관련 테스트 코드를 업데이트했습니다. 리뷰 피드백으로는 OAuthWebAuthenticationSession 클래스에서 @MainActor 격리를 제거할 경우 Swift 6 및 strict concurrency 환경에서 동시성 경고나 컴파일 에러가 발생할 수 있으므로, 클래스 전체에 @MainActor 격리를 유지할 것을 권장합니다.
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.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
🔗 연관된 이슈
🎯 의도
GoogleSignInSDK와 provider token을 직접 다루던 책임을 제거📝 작업 내용
📌 요약
OAuthAuthenticationTicketRequester와OAuthTicketExchangeHandler를 통해 GitHub·Google이 공통 ticket 요청 흐름을 사용하도록 정리GoogleSignInSDK 의존성, URL handler, URL scheme, top view controller 탐색, 클라이언트 token 처리 제거🔍 상세
/auth/google/sign-in-sessions,/auth/google/custom-token,/auth/google/account-link-sessions,/auth/google/account-link,/auth/google/access-tokenendpoint 추가GoogleAuthenticationServiceImpl에서ASWebAuthenticationSessioncallback ticket을 서버에 전달하고, 반환된customToken으로FirebaseAuthsign-in 수행currentUser.reload()를 유지하고, 일반 로그아웃은 Firebase/FCM 세션 정리만 수행하도록 분리AuthenticationAPIError로 provider 연결 충돌과lastProvider오류 매핑을 공통화하고, 계정 연결 API에서 불필요한email매개변수 제거AuthenticationRepository.restore()계약과 관련 구현을 제거하고, Firebase auth session 관찰 흐름만 유지OAuthWebAuthenticationSession타입 전체의MainActor격리를 줄이고, callback host 비교를 대소문자 차이 없이 처리FunctionAPIEndpointTests,OAuthTicketExchangeHandlerTests를 Google endpoint와 ticket 처리 기준으로 갱신GoogleSignInpackage,GoogleSignInURLHandler,GIDClientIDURL scheme,TopViewControllerProvider, 관련 README 표기 제거📸 영상 / 이미지 (Optional)