Conversation
* iOS 프로젝트의 타겟 이름을 'kokomennative'에서 'kokomen'으로 변경 * 새로운 AppDelegate 및 Info.plist 파일 추가 * SplashScreen 및 아이콘 관련 리소스 추가 * Podfile 및 Podfile.lock 업데이트 * react-native-apple-authentication 및 apollo-client 관련 의존성 추가 * 기존 kokomennative 관련 파일 삭제
* .yarnrc.yml: 글로벌 캐시 비활성화 설정 추가 * package.json: 새로운 의존성(class-transformer, class-validator, cookie-parser) 추가 * yarn.lock: 새로운 의존성 및 관련 패키지 버전 업데이트 * axios 및 @nestjs/axios 패키지 추가
* useWebviewEvents 훅 추가: 음성 인식 및 웹뷰 메시지 처리 기능 포함 * useLogin 훅 추가: 애플 로그인 기능 구현 * InterviewMainScreen 및 DashboardScreen에서 useWebviewEvents 훅 사용으로 코드 정리
* Dockerfile: 새로운 local.Dockerfile 추가 및 Yarn Berry 환경 설정 * compose.server.local.yaml: Nginx 설정 및 서비스 구성 변경, 볼륨 마운트
* auth.module.ts: 인증 관련 모듈 및 서비스 등록 * auth.resolver.ts: 애플 로그인 뮤테이션 구현 * apple-auth.dto.ts: 애플 인증 입력 및 응답 DTO 정의 * apple-auth.service.ts: 애플 인증 토큰 검증 로직 추가 * auth.service.ts: 애플 로그인 처리 로직 구현 * socialLogin.service.ts: 소셜 로그인 관련 서비스 추가 * spring-session.service.ts: 세션 관리 로직 추가 * javaSerializer.ts: Redis Java 직렬화 유틸리티 추가 * session-auth.guard.ts: 세션 인증 가드 구현 * apple-credential-state.enum.ts: 애플 자격 상태 열거형 추가
* token.module.ts: 토큰 관련 모듈 정의 및 서비스 등록 * token.ts: 토큰 엔티티 및 비즈니스 로직 구현 * token.service.ts: 토큰 생성, 사용 및 검증을 위한 서비스 로직 추가
* member.service.ts: 회원 생성 시 트랜잭션 매니저 사용으로 변경 * member.ts: 회원 엔티티에 소셜 로그인 필드 추가 및 kakaoId, nickname 필드 수정 * memberSocialLogin.ts: 회원 소셜 로그인 엔티티 추가 및 관계 설정
* app.module.ts: AuthModule 추가 * main.ts: CORS 설정에 로컬 및 HTTPS 주소 추가
* transactionManager.ts: GraphQL 컨텍스트에서 트랜잭션 매니저를 가져오는 데코레이터 추가 * transactionInterceptor.ts: 트랜잭션 시작, 커밋 및 롤백을 처리하는 인터셉터 구현
* index.ts: 웹뷰에서 사용할 초기 스크립트 상수 추가 * interviewMain.tsx, dashboard.tsx: 초기 스크립트를 상수로 대체하여 코드 정리 * OS를 추가하여 웹뷰 IOS 환경일 때만 apple 로그인이 가능하도록 설정
* main.tsx: ApolloProvider 추가 및 ApolloClient 설정 * gql.ts: 애플 로그인 뮤테이션 및 입력 타입 정의 * useLogin.ts: 애플 로그인 처리 로직 및 메시지 핸들링 구현 * index.tsx: 애플 로그인 버튼 추가 및 로그인 훅 사용
* rankCard.tsx: 오류 처리 추가 및 UI 마진 수정 * __root.tsx: 스크롤바 숨김 클래스 추가 * button/index.tsx: 버튼 변형에 'none' 추가
|
Claude encountered an error —— View job I'll analyze this and get back to you. |
Summary of ChangesHello @alsgud8311, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! 이 PR은 iOS 네이티브 앱과 백엔드 서버에 Apple 로그인 기능을 통합하는 것을 목표로 합니다. 이를 위해 네이티브 앱의 웹뷰 통신 방식을 개선하고, 백엔드에 새로운 인증 모듈과 Spring 세션 호환 Redis 기반 세션 관리 시스템을 도입했습니다. 또한, GraphQL 뮤테이션에 대한 트랜잭션 처리와 사용자 토큰 관리 시스템을 구축했습니다. 전반적으로 'kokomennative'라는 프로젝트 이름을 'kokomen'으로 변경하는 리팩토링도 포함되어 있습니다. Highlights
Ignored Files
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
🛠️ Build SummaryStatus: ✅ SUCCESS 📋 Build Output (마지막 45줄)🤖 Generated by GitHub Actions at Tue Sep 30 14:02:16 UTC 2025 |
🚀 Lighthouse Report for TEST1📅 Date: 9/30/2025
📊 Performance Details
🚀 Lighthouse Report for TEST2📅 Date: 9/30/2025
📊 Performance Details
🚀 Lighthouse Report for TEST3📅 Date: 9/30/2025
📊 Performance Details
🚀 Lighthouse Report for TEST4📅 Date: 9/30/2025
📊 Performance Details
🚀 Lighthouse Report for TEST5📅 Date: 9/30/2025
📊 Performance Details
|
* useLogin.ts: 애플 로그인 관련 훅 및 로직 삭제
* main.tsx: GraphQL API URL을 환경 변수로 변경 * vite-env.d.ts: VITE_GRAPHQL_API_URL 환경 변수 정의 추가
* useWebviewEvents.ts: 음성 인식 권한 요청 후 결과에 따라 메시지 전송 로직을 간소화하여 코드 가독성 향상
* auth.resolver.ts: JSESSIONID 쿠키의 Max-Age를 86400초로 변경 * auth.service.ts: 애플 로그인 제공자 상수를 추가하고, 닉네임 생성 로직을 수정하여 한국어로 변경 * transactionInterceptor.ts: 트랜잭션 오류 로깅을 console에서 Logger로 변경하여 코드 일관성 향상
|
Claude encountered an error —— View job I'll analyze this and get back to you. |
🛠️ Build SummaryStatus: ✅ SUCCESS 📋 Build Output (마지막 45줄)🤖 Generated by GitHub Actions at Tue Sep 30 16:18:39 UTC 2025 |
🚀 Lighthouse Report for TEST1📅 Date: 9/30/2025
📊 Performance Details
🚀 Lighthouse Report for TEST2📅 Date: 9/30/2025
📊 Performance Details
🚀 Lighthouse Report for TEST3📅 Date: 9/30/2025
📊 Performance Details
🚀 Lighthouse Report for TEST4📅 Date: 9/30/2025
📊 Performance Details
🚀 Lighthouse Report for TEST5📅 Date: 9/30/2025
📊 Performance Details
|
|
Claude encountered an error —— View job I'll analyze this and get back to you. |
🛠️ Build SummaryStatus: ✅ SUCCESS 📋 Build Output (마지막 45줄)🤖 Generated by GitHub Actions at Wed Oct 1 12:03:32 UTC 2025 |
🚀 Lighthouse Report for TEST1📅 Date: 10/1/2025
📊 Performance Details
🚀 Lighthouse Report for TEST2📅 Date: 10/1/2025
📊 Performance Details
🚀 Lighthouse Report for TEST3📅 Date: 10/1/2025
📊 Performance Details
🚀 Lighthouse Report for TEST4📅 Date: 10/1/2025
📊 Performance Details
🚀 Lighthouse Report for TEST5📅 Date: 10/1/2025
📊 Performance Details
|
📌 개요
✅ 작업 내용
🧪 테스트
📝 참고 사항
애플 네이티브 로그인을 웹뷰에서 하기
애플 네이티브 로그인의 경우, 웹에서 리다이렉트 하는 방식이 아닌 네이티브의 로그인 UI를 사용하는 방식입니다.
앱 환경에서는 최대한 앱과 비슷한 환경을 제공하고자 네이티브 로그인을 사용할 수 있는 방법을 고민했습니다.
와 같은 방식으로 기존 로그인 방식과 같은 세션 방식을 추가된 서버에서 구현하여 호환성 있도록 설계 및 구현하였습니다.
📎 관련 이슈
Closes #177