refactor: 죽은 합류 다이얼로그·프로필 SVG fallback 정리 및 게스트 배너 일러스트 단일화 - #540
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Discord 스레드 연동용 메타데이터입니다. discord-pr-bot 워크플로가 자동 생성하며, 수정·삭제하면 PR 과 Discord 알림 연동이 끊깁니다. |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Plus Run ID: ⛔ Files ignored due to path filters (5)
📒 Files selected for processing (21)
💤 Files with no reviewable changes (5)
Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review. 📝 WalkthroughWalkthrough구형 합류 확인 플로우와 프로필 fallback을 제거했다. 사용자 타입과 초대 세션 정리 유틸리티를 분리했다. 토너먼트 시작·삭제 성공 시 초대 상태를 삭제한다. 결과 배너와 플레이 링크 경로도 갱신했다. Changes토너먼트 합류 및 초대 흐름
프로필 표시 및 타입 정리
기타 UI 및 규칙 갱신
Estimated code review effort: 3 (Moderate) | ~20 minutes Merge Risk: ⚪ Minimal · up to This refactor removes unreachable UI and unused assets, tightens display types, consolidates an illustration, and adds invite-state cleanup; no actionable merge-blocking risk remains. Possibly related issues
Possibly related PRs
Suggested labels: Suggested reviewers: 🚥 Pre-merge checks | ✅ 3 | ❌ 2❌ Failed checks (2 warnings)
✅ Passed checks (3 passed)
✨ Finishing Touches 💡 1📝 Generate docstrings 💡
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
작업 요약
id: string·name·imageUrl) 타입으로 정리합니다piki:inviteSentlocalStorage 키에 수명 관리를 추가합니다.types.ts로 분리하고 미사용.cursorrules를 삭제합니다작업 세부 내용
1. 실행 불가한 합류 확인 다이얼로그 잔재 삭제
MemberJoinConfirmDialog는 sessionStoragepiki:joinConfirm키를 읽어야 열리는데, writer(setJoinConfirm)가 feat: 소셜 토너먼트 전체 (4개 PR 통합 — #142/#156/#159/#163) #167 내부 리워크(9f032ee)에서 삭제된 뒤 두 달간 렌더링될 수 없는 상태였습니다. 현재 합류 확인/환영 UI는?action=WELCOME_JOIN쿼리 기반WelcomeJoinDialog가 담당합니다MemberJoinConfirmDialog.tsx,joinSession.ts(reader·orphanwriteJson포함),TournamentCreateClient의confirmPayloadstate·렌더 블록을 삭제했습니다2. 프로필 기본 SVG fallback 제거 (서버가 이미지 URL 항상 보장)
profileImage를 항상 내려주는 것을 확인하고, 도달 불가능한 방어 분기를 걷어냈습니다UserProfile:imageUrl없을 때 blue/yellow SVG를 그리던 분기 삭제 — 항상 이미지 렌더링FriendListDialog:pickProfileType해시 함수와profileImagetruthy 분기 삭제, 로컬 타입을profileImage: string필수로 좁힘ParticipantChip의?? '익명',ParticipantPanel의imageUrltruthy flatMap 가드도 같은 이유로 제거UserT를userProfile.const.ts→userProfile.types.ts로 옮기고{ id: string; name: string; imageUrl: string }전부 필수로 정리했습니다 (PROFILE_SVG·ProfileTypeT·profileType삭제)3. 결과 게스트 배너 일러스트 단일 에셋 통합
result-guest-banner-illustration.svg(87×53)로 교체했습니다 (피그마 node 1183-19928 대조)user-profile-blue/yellow/green.svg,result-guest-banner-group.svg— 이로써assets/images미사용 에셋 0건4. 죽은 상수·불필요 export 정리 + inviteSent 키 수명 관리
ENDPOINTS.USER_PROFILE_IMAGE삭제,PlateShareDialog의 인라인/play/{id}중복을 죽어있던ROUTES.PLAY_FROM_LINK상수 사용으로 교체ScrollAnchorT·InstagramStoryShareResultT의export제거piki:inviteSent:{id}키는 지우는 코드가 없어 영구 누적됐습니다.clearInviteSent()를 추가해 담기 마감 정책이 끝나는 두 시점(토너먼트 시작·삭제 성공)에 정리하고, 전역 훅(useDeleteTournament)에서 쓰게 되어 유틸을create/_utils/→src/utils/로 승격했습니다5. 문서·기타
.const.ts, 타입은.types.ts로 분리.cursorrules삭제py-1→py-1.5보정 (#538에서 누락된 시안 수치)참고
tournamentResponse.ts:110의 옛 스펙 주석("참여자 2명 이상이면 true") 정정은 별도 처리가 필요합니다연관 이슈
closes #539
Summary by CodeRabbit