Skip to content

feat(user): refresh profile onboarding#55

Open
popeye0618 wants to merge 1 commit into
feat/product-catalog-bundlefrom
feat/user-profile-onboarding-refresh
Open

feat(user): refresh profile onboarding#55
popeye0618 wants to merge 1 commit into
feat/product-catalog-bundlefrom
feat/user-profile-onboarding-refresh

Conversation

@popeye0618
Copy link
Copy Markdown
Member

개요

회원 프로필/온보딩 흐름을 보강하고 기본 프로필 이미지 리소스와 더미 유저 시딩 정책을 정리합니다.

@codex

변경 사항

  • ContactFrequency 역직렬화와 profileImageKey 별칭 입력을 지원합니다.
  • 온보딩 완료 응답/토큰 쿠키 설정과 실명 조회 API를 보강했습니다.
  • 탈퇴 회원 마스킹과 탈퇴 이벤트 발행 시점을 안전하게 조정했습니다.
  • 기본 프로필 이미지 파일명을 정리하고 공용 default 이미지를 추가했습니다.
  • 더미 유저 시딩의 성비/인스타그램 계정/소개문/이미지 풀을 확장했습니다.

테스트

  • 테스트를 실행했습니다. ./gradlew :common-module:test --tests com.comatching.common.domain.enums.ContactFrequencyTest
  • 테스트를 실행했습니다. ./gradlew :user-service:test --tests com.comatching.user.domain.auth.service.SignupServiceImplTest --tests com.comatching.user.domain.member.dto.ProfileUpdateRequestTest --tests com.comatching.user.domain.member.entity.ProfileTest --tests com.comatching.user.domain.member.service.MemberServiceImplTest --tests com.comatching.user.domain.member.service.ProfileServiceImplTest
  • 관련 수동 검증을 완료했습니다.
  • 테스트가 필요 없는 변경입니다.

체크리스트

  • 브랜치명이 규칙을 따릅니다.
  • 커밋 메시지가 컨벤션을 따릅니다.
  • 이슈와 PR이 연결되어 있습니다.
  • 작업 완료 후 merge 가능한 상태입니다.

스크린샷 / 참고 자료

Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

이번 풀 리퀘스트는 회원 탈퇴 시 프로필 데이터 마스킹 로직을 강화하고, 탈퇴 이벤트를 트랜잭션 커밋 이후에 발행하도록 개선하여 시스템의 안정성을 높였습니다. 또한 실명 조회 API 추가, 더미 데이터 생성 기능 고도화, 기본 프로필 이미지 로직 단순화 등의 변경사항이 포함되었습니다. 리뷰 피드백으로는 API 응답 내 contactFrequency 반환 형식이 Enum 명칭으로 변경됨에 따른 프론트엔드와의 협의 필요성과, 런타임 NPE 방지를 위한 방어적인 null 체크 추가 제안이 있었습니다.

.university(profile.getUniversity())
.major(profile.getMajor())
.contactFrequency(profile.getContactFrequency().getCode())
.contactFrequency(profile.getContactFrequency().name())
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

API 응답에서 contactFrequency를 기존의 한글 코드(getCode()) 대신 Enum 명칭(name())으로 반환하도록 변경되었습니다. 이는 API 계약(Contract)이 변경되는 사항이므로 프론트엔드 팀과의 공유가 필요합니다. 또한, 도메인 모델 상 필수값이더라도 런타임 NPE 방지를 위해 방어적인 null 체크를 추가하는 것을 권장합니다.

Suggested change
.contactFrequency(profile.getContactFrequency().name())
.contactFrequency(profile.getContactFrequency() != null ? profile.getContactFrequency().name() : null)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant