-
Notifications
You must be signed in to change notification settings - Fork 2
[refactor] 믹스패널 이벤트 이름을 통일한다 #856
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[refactor] 믹스패널 이벤트 이름을 통일한다 #856
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Warning
|
| Cohort / File(s) | Summary |
|---|---|
Event Constants Definitionfrontend/src/constants/eventName.ts |
EVENT_NAME → USER_EVENT로 명칭 변경 및 키 재구성, 페이지 식별자용 PAGE_VIEW 상수 추가(APPLICATION_FORM_PAGE, CLUB_DETAIL_PAGE, MAIN_PAGE, INTRODUCE_PAGE, CLUB_UNION_PAGE) |
Header & Header Hooksfrontend/src/components/common/Header/Header.tsx, frontend/src/hooks/Header/useHeaderNavigation.ts |
EVENT_NAME 임포트→USER_EVENT로 변경; 헤더 관련 버튼(홈/도입/클럽연합/패치노트/모바일메뉴 등) 이벤트 트래킹 키 참조 업데이트 |
Photo Navigation Hookfrontend/src/hooks/PhotoList/usePhotoNavigation.ts |
EVENT_NAME → USER_EVENT 교체; PHOTO_NAVIGATION_CLICKED 트래킹 호출 업데이트 |
Application & Page Viewsfrontend/src/pages/ApplicationFormPage/ApplicationFormPage.tsx, frontend/src/pages/ClubDetailPage/ClubDetailPage.tsx, frontend/src/pages/ClubUnionPage/ClubUnionPage.tsx, frontend/src/pages/IntroducePage/IntroducePage.tsx, frontend/src/pages/MainPage/MainPage.tsx |
하드코딩 페이지명 → PAGE_VIEW.* 상수로 대체; ApplicationFormPage 제출 이벤트에서 이벤트 네임 및 페이로드 필드(club_id, club_name)로 변경 |
Club Detail Componentsfrontend/src/pages/ClubDetailPage/components/...ClubApplyButton/ClubApplyButton.tsx, ClubCard/ClubCard.tsx, InfoTabs/InfoTabs.tsx, ShareButton/ShareButton.tsx, SnsLinkIcons/SnsLinkIcons.tsx |
EVENT_NAME → USER_EVENT로 변경; 관련 이벤트 키(CLU B_APPLY_BUTTON_CLICKED, RECOMMENDED_CLUB_CLICKED, TAB_CLICKED, SHARE_BUTTON_CLICKED, SNS_LINK_CLICKED 등)로 트래킹 호출 업데이트; 불필요한 mixpanel import 제거(일부 파일) |
Main Page Componentsfrontend/src/pages/MainPage/components/...CategoryButtonList/CategoryButtonList.tsx, ClubCard/ClubCard.tsx, StatusRadioButton/StatusRadioButton.tsx |
이벤트 상수 소스 변경(EVENT_NAME → USER_EVENT), 하드코딩 이벤트명 → USER_EVENT.* 상수로 대체 |
Sequence Diagram(s)
(변경 내용이 상수명·트래킹 호출 일괄 교체와 페이지 뷰 상수 도입에 국한되어 제어 흐름 변경이 크지 않으므로 시퀀스 다이어그램은 생략합니다.)
Estimated code review effort
🎯 3 (Moderate) | ⏱️ ~20 minutes
- 이유: 동일한 리팩토링 패턴이 여러 파일에 반복 적용되었으나, 파일 수와 페이로드 변경(ApplicationFormPage) 때문에 검토 포인트가 몇 곳 존재함.
- 추가 검토 포인트:
frontend/src/constants/eventName.ts의 USER_EVENT 및 PAGE_VIEW 키 명세가 실제 사용처와 정확히 일치하는지 확인ApplicationFormPage.tsx의 제출 이벤트 페이로드 변경(club_id, club_name)과 백엔드/analytics 수집 스키마 호환성 검증- 불필요해진 mixpanel 직접 임포트 제거로 영향받는 파일(예:
ClubCard.tsx) 검증
Possibly related issues
- MOA-358: 믹스패널 이벤트 이름을 통일한다 — 본 PR은 이벤트명 통일 및 PAGE_VIEW 도입 목표와 직접적으로 연관됩니다.
- [refactor] MOA-358 믹스패널 이벤트 이름을 통일한다 #853: 이벤트명 리팩터링 관련 — EVENT_NAME→USER_EVENT 및 상수 중앙화 목표를 구현합니다.
Possibly related PRs
- PR
#676— 동일 모듈(eventName) 및 이벤트명 사용 영역을 변경한 PR로 코드 레벨 연관성 높음. - PR
#641— 기존EVENT_NAME도입 및 하드코딩 대체 작업을 수행한 PR로 직접적 연관. - PR
#746— ApplicationFormPage의 이벤트 정의·페이로드를 수정한 PR로 ApplicationForm 관련 변경과 연관.
Suggested reviewers
- lepitaaar
- Zepelown
- oesnuj
Pre-merge checks and finishing touches
✅ Passed checks (5 passed)
| Check name | Status | Explanation |
|---|---|---|
| Description Check | ✅ Passed | Check skipped - CodeRabbit’s high-level summary is enabled. |
| Title check | ✅ Passed | PR 제목은 주요 변경 사항을 명확하게 요약하고 있습니다. 믹스패널 이벤트 이름 통일이라는 핵심 목표를 잘 나타냅니다. |
| Linked Issues check | ✅ Passed | PR의 모든 코드 변경 사항이 연결된 이슈 MOA-358의 목표인 '이벤트 이름 규칙 정하고 통일'을 충족하고 있습니다. |
| Out of Scope Changes check | ✅ Passed | 모든 변경 사항이 믹스패널 이벤트 이름 통일이라는 정의된 범위 내에 있으며, 범위를 벗어난 변경 사항이 없습니다. |
| Docstring Coverage | ✅ Passed | No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. |
✨ Finishing touches
- 📝 Generate docstrings
🧪 Generate unit tests (beta)
- Create PR with unit tests
- Post copyable unit tests in a comment
- Commit unit tests in branch
refactor/#853-unify-mixpanel-event-name-MOA-358
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 @coderabbitai help to get the list of available commands and usage tips.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
Disabled knowledge base sources:
- Jira integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (18)
frontend/src/components/common/Header/Header.tsx(2 hunks)frontend/src/constants/eventName.ts(1 hunks)frontend/src/hooks/Header/useHeaderNavigation.ts(3 hunks)frontend/src/hooks/PhotoList/usePhotoNavigation.ts(3 hunks)frontend/src/pages/ApplicationFormPage/ApplicationFormPage.tsx(3 hunks)frontend/src/pages/ClubDetailPage/ClubDetailPage.tsx(2 hunks)frontend/src/pages/ClubDetailPage/components/BackNavigationBar/BackNavigationBar.tsx(1 hunks)frontend/src/pages/ClubDetailPage/components/ClubApplyButton/ClubApplyButton.tsx(2 hunks)frontend/src/pages/ClubDetailPage/components/ClubCard/ClubCard.tsx(2 hunks)frontend/src/pages/ClubDetailPage/components/InfoTabs/InfoTabs.tsx(2 hunks)frontend/src/pages/ClubDetailPage/components/ShareButton/ShareButton.tsx(2 hunks)frontend/src/pages/ClubDetailPage/components/SnsLinkIcons/SnsLinkIcons.tsx(2 hunks)frontend/src/pages/ClubUnionPage/ClubUnionPage.tsx(1 hunks)frontend/src/pages/IntroducePage/IntroducePage.tsx(1 hunks)frontend/src/pages/MainPage/MainPage.tsx(1 hunks)frontend/src/pages/MainPage/components/CategoryButtonList/CategoryButtonList.tsx(2 hunks)frontend/src/pages/MainPage/components/ClubCard/ClubCard.tsx(1 hunks)frontend/src/pages/MainPage/components/StatusRadioButton/StatusRadioButton.tsx(2 hunks)
🧰 Additional context used
🧠 Learnings (3)
📚 Learning: 2025-03-19T05:18:07.818Z
Learnt from: seongwon030
Repo: Moadong/moadong PR: 195
File: frontend/src/pages/AdminPage/AdminPage.tsx:7-7
Timestamp: 2025-03-19T05:18:07.818Z
Learning: AdminPage.tsx에서 현재 하드코딩된 클럽 ID('67d2e3b9b15c136c6acbf20b')는 로그인 기능 구현 후 동적으로 가져오는 방식으로 수정될 예정입니다.
Applied to files:
frontend/src/pages/ClubDetailPage/components/ClubApplyButton/ClubApplyButton.tsxfrontend/src/pages/ClubDetailPage/components/ClubCard/ClubCard.tsxfrontend/src/pages/ApplicationFormPage/ApplicationFormPage.tsxfrontend/src/pages/ClubDetailPage/ClubDetailPage.tsxfrontend/src/pages/MainPage/components/ClubCard/ClubCard.tsxfrontend/src/pages/ClubUnionPage/ClubUnionPage.tsxfrontend/src/pages/MainPage/MainPage.tsx
📚 Learning: 2025-09-21T02:23:27.796Z
Learnt from: seongwon030
Repo: Moadong/moadong PR: 744
File: frontend/src/pages/ClubDetailPage/components/ClubApplyButton/ClubApplyButton.tsx:47-48
Timestamp: 2025-09-21T02:23:27.796Z
Learning: ClubApplyButton 컴포넌트에서 ShareButton은 항상 렌더링되어야 하므로 정적 import를 사용하는 것이 적절함. 동적 import는 불필요함.
Applied to files:
frontend/src/pages/ClubDetailPage/components/ShareButton/ShareButton.tsx
📚 Learning: 2025-07-19T05:05:10.196Z
Learnt from: seongwon030
Repo: Moadong/moadong PR: 548
File: frontend/src/pages/ClubDetailPage/ClubDetailPage.tsx:17-57
Timestamp: 2025-07-19T05:05:10.196Z
Learning: ClubDetailPage.tsx에서 notJoinedClubNames 배열의 하드코딩은 의도적인 설계 결정입니다. 개발자가 명시적으로 하드코딩을 선택했으므로 이에 대한 리팩토링 제안을 하지 않아야 합니다.
Applied to files:
frontend/src/pages/ClubDetailPage/ClubDetailPage.tsx
🧬 Code graph analysis (17)
frontend/src/pages/ClubDetailPage/components/ClubApplyButton/ClubApplyButton.tsx (1)
frontend/src/constants/eventName.ts (1)
USER_EVENT(1-31)
frontend/src/pages/ClubDetailPage/components/ShareButton/ShareButton.tsx (1)
frontend/src/constants/eventName.ts (1)
USER_EVENT(1-31)
frontend/src/pages/ClubDetailPage/components/ClubCard/ClubCard.tsx (1)
frontend/src/constants/eventName.ts (1)
USER_EVENT(1-31)
frontend/src/hooks/PhotoList/usePhotoNavigation.ts (1)
frontend/src/constants/eventName.ts (1)
USER_EVENT(1-31)
frontend/src/pages/ClubDetailPage/components/InfoTabs/InfoTabs.tsx (1)
frontend/src/constants/eventName.ts (1)
USER_EVENT(1-31)
frontend/src/pages/ApplicationFormPage/ApplicationFormPage.tsx (1)
frontend/src/constants/eventName.ts (2)
PAGE_VIEW(33-39)USER_EVENT(1-31)
frontend/src/pages/MainPage/components/StatusRadioButton/StatusRadioButton.tsx (1)
frontend/src/constants/eventName.ts (1)
USER_EVENT(1-31)
frontend/src/pages/ClubDetailPage/components/BackNavigationBar/BackNavigationBar.tsx (1)
frontend/src/constants/eventName.ts (1)
USER_EVENT(1-31)
frontend/src/pages/ClubDetailPage/ClubDetailPage.tsx (1)
frontend/src/constants/eventName.ts (1)
PAGE_VIEW(33-39)
frontend/src/pages/MainPage/components/ClubCard/ClubCard.tsx (2)
frontend/src/types/club.ts (1)
Club(3-12)frontend/src/constants/eventName.ts (1)
USER_EVENT(1-31)
frontend/src/pages/MainPage/components/CategoryButtonList/CategoryButtonList.tsx (1)
frontend/src/constants/eventName.ts (1)
USER_EVENT(1-31)
frontend/src/pages/ClubUnionPage/ClubUnionPage.tsx (1)
frontend/src/constants/eventName.ts (1)
PAGE_VIEW(33-39)
frontend/src/pages/IntroducePage/IntroducePage.tsx (1)
frontend/src/constants/eventName.ts (1)
PAGE_VIEW(33-39)
frontend/src/pages/MainPage/MainPage.tsx (1)
frontend/src/constants/eventName.ts (1)
PAGE_VIEW(33-39)
frontend/src/hooks/Header/useHeaderNavigation.ts (1)
frontend/src/constants/eventName.ts (1)
USER_EVENT(1-31)
frontend/src/components/common/Header/Header.tsx (1)
frontend/src/constants/eventName.ts (1)
USER_EVENT(1-31)
frontend/src/pages/ClubDetailPage/components/SnsLinkIcons/SnsLinkIcons.tsx (1)
frontend/src/constants/eventName.ts (1)
USER_EVENT(1-31)
🔇 Additional comments (19)
frontend/src/pages/ClubDetailPage/components/ClubCard/ClubCard.tsx (1)
10-10: 이벤트 상수 리팩토링이 올바르게 적용되었습니다.
EVENT_NAME에서USER_EVENT로의 변경이 정확하게 반영되었으며, 이벤트 추적 로직은 동일하게 유지됩니다.Also applies to: 20-20
frontend/src/pages/ClubDetailPage/components/SnsLinkIcons/SnsLinkIcons.tsx (1)
6-6: 이벤트 네임스페이스 변경이 정확하게 적용되었습니다.
USER_EVENT.SNS_LINK_CLICKED로의 업데이트가 올바르게 반영되어 있으며, 추적 페이로드(platform, clubName)는 변경 없이 유지됩니다.Also applies to: 30-30
frontend/src/constants/eventName.ts (1)
33-39: PAGE_VIEW 분리가 잘 구조화되었습니다.페이지 추적 이벤트를
USER_EVENT와 별도의PAGE_VIEW객체로 분리한 것은 좋은 설계입니다. 이벤트 유형을 명확하게 구분하여 유지보수성을 향상시킵니다.frontend/src/pages/ClubDetailPage/components/InfoTabs/InfoTabs.tsx (1)
4-4: 탭 클릭 이벤트 추적이 올바르게 업데이트되었습니다.
USER_EVENT.TAB_CLICKED로의 변경이 정확하게 적용되었으며, 이벤트 페이로드(tabName, tabIndex)는 유지됩니다.Also applies to: 17-17
frontend/src/pages/MainPage/components/StatusRadioButton/StatusRadioButton.tsx (1)
4-4: 상태 라디오 버튼 이벤트가 정확하게 업데이트되었습니다.
USER_EVENT네임스페이스로의 마이그레이션이 올바르게 적용되었으며, 상태 추적 로직(OPEN/ALL)은 변경 없이 유지됩니다.Also applies to: 19-19
frontend/src/pages/MainPage/components/CategoryButtonList/CategoryButtonList.tsx (1)
6-6: 카테고리 버튼 이벤트 추적이 일관되게 리팩토링되었습니다.
USER_EVENT.CATEGORY_BUTTON_CLICKED로의 업데이트가 정확하며, 카테고리 정보를 포함한 이벤트 페이로드는 그대로 유지됩니다.Also applies to: 29-29
frontend/src/pages/ClubDetailPage/components/ClubApplyButton/ClubApplyButton.tsx (1)
6-6: 동아리 지원 버튼 이벤트가 올바르게 업데이트되었습니다.
USER_EVENT.CLUB_APPLY_BUTTON_CLICKED로의 변경이 정확하게 반영되었으며, 지원 버튼 클릭 추적 로직은 동일하게 유지됩니다.Also applies to: 54-54
frontend/src/pages/ClubDetailPage/components/ShareButton/ShareButton.tsx (1)
5-5: 공유 버튼 이벤트가 정확하게 업데이트되었습니다.
USER_EVENT.SHARE_BUTTON_CLICKED로의 변경이 올바르게 적용되었으며, 카카오톡 공유 기능과 이벤트 추적이 정상적으로 동작합니다.Also applies to: 48-48
frontend/src/pages/ClubUnionPage/ClubUnionPage.tsx (1)
8-11: 변경 사항이 올바릅니다.페이지 뷰 추적을 중앙화된
PAGE_VIEW.CLUB_UNION_PAGE상수로 변경하여 이벤트 이름 관리가 일관되게 개선되었습니다.frontend/src/pages/IntroducePage/IntroducePage.tsx (1)
12-16: 페이지 뷰 추적 추가가 적절합니다.중앙화된
PAGE_VIEW.INTRODUCE_PAGE상수를 사용하여 페이지 뷰 추적을 추가했습니다. 다른 페이지들과 일관된 패턴입니다.frontend/src/hooks/PhotoList/usePhotoNavigation.ts (1)
3-3: 이벤트 상수 업데이트가 올바릅니다.
EVENT_NAME에서USER_EVENT로의 마이그레이션이 일관되게 적용되었습니다. 이벤트 추적 로직은 변경되지 않았습니다.Also applies to: 38-41, 47-50
frontend/src/pages/ApplicationFormPage/ApplicationFormPage.tsx (2)
18-18: 페이지 뷰 추적 상수화가 적절합니다.중앙화된
PAGE_VIEW.APPLICATION_FORM_PAGE상수를 사용하도록 변경되었습니다.Also applies to: 38-40
92-95: Mixpanel 대시보드에서clubName속성 사용 여부 확인 필수이 이벤트 추적 페이로드 변경은
ApplicationFormPage.tsx라인 92-95에만 영향을 미칩니다. 코드베이스에서APPLICATION_FORM_SUBMITTED이벤트는 이 위치에서만 호출되므로 다른 코드 영역에는 영향을 주지 않습니다.다만, 기존 Mixpanel 대시보드나 쿼리에서
clubName속성을 사용하고 있다면 분석 데이터 수집이 중단될 수 있으므로 다음을 확인하세요:
- Mixpanel 대시보드에서 이 이벤트의
clubName속성을 사용하는 쿼리/차트 존재 여부- 필요시 대시보드를
club_name으로 업데이트하거나 마이그레이션 계획 수립frontend/src/pages/MainPage/MainPage.tsx (1)
16-19: 페이지 뷰 추적 상수화가 올바릅니다.하드코딩된 문자열을 중앙화된
PAGE_VIEW.MAIN_PAGE상수로 교체하여 일관성이 향상되었습니다.frontend/src/pages/ClubDetailPage/ClubDetailPage.tsx (1)
17-17: 페이지 뷰 추적 상수화가 적절합니다.중앙화된
PAGE_VIEW.CLUB_DETAIL_PAGE상수를 사용하도록 변경되었습니다. 클럽 이름을 두 번째 파라미터로 전달하는 기존 로직도 유지되었습니다.Also applies to: 35-35
frontend/src/components/common/Header/Header.tsx (1)
6-6: 이벤트 상수 마이그레이션이 올바릅니다.
EVENT_NAME에서USER_EVENT로의 변경이 일관되게 적용되었습니다.Also applies to: 40-40
frontend/src/pages/MainPage/components/ClubCard/ClubCard.tsx (1)
10-10: 이벤트 이름 상수화가 적절합니다.하드코딩된 이벤트 이름 문자열을
USER_EVENT.CLUB_CARD_CLICKED상수로 교체하여 관리가 개선되었습니다.Also applies to: 18-22
frontend/src/pages/ClubDetailPage/components/BackNavigationBar/BackNavigationBar.tsx (1)
5-12: LGTM! 일관된 리팩토링입니다.
EVENT_NAME에서USER_EVENT로의 변경이 import와 사용처 모두에서 올바르게 적용되었습니다. 이벤트 이름 문자열은 그대로 유지되어 기존 Mixpanel 추적 데이터와의 호환성도 보장됩니다.frontend/src/hooks/Header/useHeaderNavigation.ts (1)
5-36: LGTM! 모든 이벤트 추적이 일관되게 업데이트되었습니다.헤더 네비게이션 훅의 모든 이벤트 추적 호출(HOME_BUTTON_CLICKED, INTRODUCE_BUTTON_CLICKED, CLUB_UNION_BUTTON_CLICKED, PATCH_NOTE_BUTTON_CLICKED)이
USER_EVENT로 올바르게 변경되었습니다. 리팩토링이 완전하고 일관되게 적용되었습니다.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
🧹 Nitpick comments (1)
frontend/src/constants/eventName.ts (1)
15-15: 클릭 이벤트의 네이밍 패턴 일관성을 유지하세요.다른 클릭 이벤트들은 "Clicked" 접미사를 포함하고 있으나, 이 이벤트는 누락되어 있습니다.
다음과 같이 수정하여 일관성을 유지하세요:
- PHOTO_NAVIGATION_CLICKED: 'Photo Navigation' as const, + PHOTO_NAVIGATION_CLICKED: 'Photo Navigation Clicked' as const,
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
Disabled knowledge base sources:
- Jira integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (1)
frontend/src/constants/eventName.ts(1 hunks)
🧰 Additional context used
🧠 Learnings (2)
📚 Learning: 2025-08-24T17:33:23.092Z
Learnt from: suhyun113
Repo: Moadong/moadong PR: 698
File: frontend/src/hooks/queries/applicants/useDeleteApplicants.ts:10-16
Timestamp: 2025-08-24T17:33:23.092Z
Learning: The codebase has inconsistent console logging patterns across files - mixing console.log/console.error for errors, using both Korean and English messages, and various formatting styles (template literals vs separate arguments, with/without emojis). A unified logging format like `console.error('[ModuleName] Operation failed:', error)` should be established for better debugging consistency.
Applied to files:
frontend/src/constants/eventName.ts
📚 Learning: 2025-07-19T05:05:10.196Z
Learnt from: seongwon030
Repo: Moadong/moadong PR: 548
File: frontend/src/pages/ClubDetailPage/ClubDetailPage.tsx:17-57
Timestamp: 2025-07-19T05:05:10.196Z
Learning: ClubDetailPage.tsx에서 notJoinedClubNames 배열의 하드코딩은 의도적인 설계 결정입니다. 개발자가 명시적으로 하드코딩을 선택했으므로 이에 대한 리팩토링 제안을 하지 않아야 합니다.
Applied to files:
frontend/src/constants/eventName.ts
🔇 Additional comments (3)
frontend/src/constants/eventName.ts (3)
1-3: EVENT_NAME에서 USER_EVENT로의 리네이밍이 적절합니다.사용자 상호작용 이벤트와 페이지 뷰를 명확히 구분하여 이벤트 추적의 의도를 더 명확하게 전달합니다.
23-25: 이전 리뷰에서 지적된 언어 혼용 문제가 해결되었습니다.공유 버튼 이벤트명이 모두 영어로 통일되어 일관성이 확보되었습니다.
33-39: PAGE_VIEW 상수 분리가 명확한 관심사 분리를 제공합니다.페이지 트래킹 이벤트를 사용자 상호작용 이벤트와 분리하여 코드의 의도를 명확히 하고 유지보수성을 향상시켰습니다. 모든 페이지 식별자가 일관된 네이밍 패턴을 따릅니다.
lepitaaar
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
이벤트 정리 하신거 좋네요. 이벤트이름 한글로 설정할 수있다 하셨는데 어디서할수있나요?
https://mixpanel.com/project/3611536/view/4111120/app/lexicon/transformations/events 여기 렉시콘에서 각 이벤트의 display name을 설정할 수 있어요. 겸사겸사 Description도 추가했습니다. |
#️⃣연관된 이슈
📝작업 내용
중점적으로 리뷰받고 싶은 부분(선택)
논의하고 싶은 부분(선택)
🫡 참고사항
Summary by CodeRabbit