refactor: 클라이언트 Webhook을 Event 명칭·경로로 마이그레이션#181
Conversation
서버에서 Webhook이 Event로 리네이밍(datagsm-server#373)됨에 따라 웹 클라이언트의 명칭·경로·API를 Event 기준으로 통일합니다. - 헤더 네비게이션 라벨 Webhook → Event, 경로 /webhooks → /events - API URL /v1/webhooks → /v1/events, 목록 응답 키 webhooks → events - webhookUrl/webhookQueryKeys → eventUrl/eventQueryKeys - entities/views/widgets의 webhooks 디렉터리 및 심볼을 events로 리네이밍 (Webhook → Event, WEBHOOK_EVENTS → EVENT_TYPES 등) - 이벤트 페이지 내 사용자 노출 문구(웹훅 → 이벤트) 통일
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
There was a problem hiding this comment.
Code Review
This pull request refactors the codebase by renaming all webhook-related features, types, components, hooks, and API endpoints to 'events'. This includes updating routing, schemas, dialogs, lists, and query keys. The feedback recommends replacing hardcoded query keys like ['events'] with the helper function eventQueryKeys.getEvents() in both EventFormDialog and EventList to ensure consistency and prevent future breakage if query keys change.
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.
개요 💡
datagsm-server#373으로 서버에서
Webhook이Event로 리네이밍되고 엔드포인트가/v1/webhooks→/v1/events로 변경됨에 따라, 웹 클라이언트의 명칭·경로·API를 모두Event기준으로 통일합니다.기존 클라이언트는 여전히
/webhooks경로와 "웹훅" UI 라벨,/v1/webhooksAPI를 사용하고 있어 server#373과 정합이 맞지 않던 상태를 해소합니다.작업내용 ⌨️
헤더 / 라우트
NAV_LINKS) 라벨Webhook→Event, 경로/webhooks→/events(client·docs·status 헤더에 자동 반영)app/webhooks/→app/events/(구/webhooks경로 제거)API (
@repo/shared)webhookUrl→eventUrl,/v1/webhooks→/v1/events,webhookId→eventIdwebhookQueryKeys→eventQueryKeyswebhooks→events(server#373EventListResDto기준)FSD 레이어 리네이밍 (
apps/client/src)entities/webhooks→entities/events,views/webhooks→views/events,widgets/webhooks→widgets/eventsWebhook→Event,WebhookFormDialog→EventFormDialog,useGetWebhooks→useGetEvents,useCreateWebhook/useUpdateWebhook/useDeleteWebhook→useCreateEvent/useUpdateEvent/useDeleteEvent,useWebhookEventSelection→useEventSelectionWEBHOOK_EVENTS→EVENT_TYPES,MAX_WEBHOOKS_PER_ACCOUNT→MAX_EVENTS_PER_ACCOUNT,WebhookEventOption→EventTypeOption사용자 노출 문구
ADD/EDIT WEBHOOK→ADD/EDIT EVENT변경 없이 유지된 계약 — 페이로드/DTO 필드(
target_url/events/secret/is_active/created_at), 이벤트 enum 값(STUDENT_GRADUATED등), 서명 헤더(X-DataGSM-Signature)는 그대로입니다(server#373에서도 미변경).관련 이슈 🚨
webhook명칭을event로 통일 datagsm-server#373 (Webhook → Event 리네이밍)리뷰 요청사항 👀
/webhooks경로는 리다이렉트 없이 제거했습니다(아직 외부 공유 링크가 없다는 전제). 우려되면 알려주세요.EventListData의events: Event[]와 각Event의events: string[](구독 이벤트 타입 목록)이 중첩되는데, 이는 server#373의EventListResDto.events/EventResDto.events구조를 그대로 따른 것입니다.pnpm check-types(모노레포 9개 패키지), clientpnpm lint(0 warning)·pnpm build모두 통과 확인했습니다.