Skip to content

feat: backend-core v26.7.1 프론트 계약 마이그레이션 - #28

Draft
aryu1217 wants to merge 11 commits into
mainfrom
feat/backend-core-v26-7-1
Draft

feat: backend-core v26.7.1 프론트 계약 마이그레이션#28
aryu1217 wants to merge 11 commits into
mainfrom
feat/backend-core-v26-7-1

Conversation

@aryu1217

Copy link
Copy Markdown
Member

변경 내용

  • 음악력 계약을 UPVOTE | DOWNVOTE PUT/DELETE로 전환하고 badge 식별자를 badgeCode로 통일했습니다.
  • 방의 /state 의존성을 playback/participants/playlist/history query로 분리하고 queue cursor + revision, 409 재시작, history pagination을 적용했습니다.
  • 상태 메시지, follow presence, 지난 곡 UI, badge SSE 순차 모달, 방 WebSocket 캐시 동기화를 추가했습니다.
  • 제거된 방 썸네일 편집, 검색 통계, regionRestriction 참조를 정리하고 GET 429의 Retry-After 재시도를 추가했습니다.

변경 이유

backend-core v26.7.1-beta.1의 breaking/additive 계약을 전체 프론트에 반영해 API/UI/React Query/실시간 상태 경계를 일치시키기 위함입니다.

영향 범위

  • UI / 사용자 흐름
  • API 요청·응답 계약
  • React Query 캐시
  • WebSocket / 실시간 상태
  • 인증 / 보안
  • 문서 / 개발 도구

검증

  • npm run lint
  • npm run test — 30 files, 77 tests
  • npm run build
  • 관련 수동 시나리오 확인
  • 실패·로딩·빈 상태 확인

검증 결과 및 재현 방법:

  • fresh read-only QA: pass
  • 로컬 HTTPS 서버에서 /home, /search, /room/nonexistent-v26-qa 200 및 서버 렌더 오류 없음
  • 인증된 두 계정과 실제 SSE/STOMP fixture가 필요한 통합 수동 시나리오는 미수행이며 QA 보고서에 잔여 위험을 기록했습니다.

리뷰 포인트

  • queue 다음 페이지에 동일 응답의 queueRevision이 전달되고 409 conflict 재시작이 1회로 제한되는지
  • 음악력 mutation/WebSocket 갱신에서 myVote가 보존되는지
  • badge SSE와 follow/room STOMP 연결이 앱/방 범위에서 중복 구독되지 않는지
  • profile statusMessage의 미전송/빈 문자열 삭제 규칙이 맞는지

기능별 커밋

  • 3d46756 API 계약, 큐 페이지 계약, Retry-After, 제거 API 정리와 테스트
  • 45067d3 상태 메시지, follow presence와 테스트
  • 6e5801e 음악력 3상태 버튼, 분리된 방 데이터, 지난 곡 UI와 테스트
  • 2b8325b badge SSE, room WebSocket runtime guard/재구독과 테스트
  • 9c21713 실행 계획 및 QA 증거

위험 및 후속 작업

  • 통합 환경에서 두 계정 음악력 동기화, 실제 badge SSE 재연결/연속 모달, follow 사용자의 방 이동, 공개·비공개 방 비밀번호 헤더를 수동 확인해야 합니다.
  • API 문서와 실제 응답이 다를 경우 호환 필드를 추정하지 말고 네트워크 증거를 기준으로 후속 수정해야 합니다.

추적 정보

  • Linked issue: 없음
  • Execution plan: docs/exec-plans/active/2026-07-29-backend-core-v26-7-1/
  • Selected skills: queuing-feature-delivery, queuing-orchestrator, queuing-api-boundary, queuing-ui-flow, frontend-architecture-guardrails, queuing-qa-reviewer, github:yeet
  • QA result: pass

@gemini-code-assist

Copy link
Copy Markdown

Caution

The consumer version of Gemini Code Assist on GitHub has been sunset. All code review activity has officially ceased.

@vercel

vercel Bot commented Jul 29, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
queuing Ready Ready Preview Jul 31, 2026 7:20am

@coderabbitai

coderabbitai Bot commented Jul 29, 2026

Copy link
Copy Markdown

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 19704225-8dfc-405b-8574-0336344fadd0

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

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