Repository navigation
[FIX] 라이브 공유 모달 레이어 및 청중 선입장 대기 화면 - #505
Conversation
- 공유 버튼/모달 래퍼에 z-20을 주어 타이머와 라운드 버튼 위에 그려지고 클릭되도록 함 - 공유 모달에 불투명 배경과 그림자를 주어 뒤의 타이머가 비치지 않도록 함 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
청중이 사회자보다 먼저 들어오면 1초 뒤 첫 순서 타이머를 정지 상태로 띄우고, 이어서 CHAIRMAN_ABSENT를 받으면 "사회자 연결이 끊겼어요" 오버레이가 표시되었다. - 첫 메시지 전 초기 타이머 화면(createInitialDisplayData) fallback 제거 - 사회자 메시지를 받기 전까지는 CHAIRMAN_ABSENT를 받아도 waiting 상태를 유지 - 사회자 SYNC를 받으면 곧바로 타이머 화면으로 전환 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- 토론 시작 대기 화면을 DebateWaitingNotice 컴포넌트로 분리 - 모래시계 아이콘을 주기적으로 뒤집어 화면이 멈춘 것이 아니라 기다리는 중임을 표시 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
소켓 훅만 대체하고 청중 상태 훅, 화면 판단 로직, 페이지를 실제 코드로 검증한다. - 사회자 부재 알림과 부재 판단 시간이 지나도 토론 대기 화면 유지 - 사회자 SYNC 수신 시 타이머 화면으로 전환 - 사회자가 한 번 연결된 뒤 부재 알림을 받으면 끊김 안내 표시 (회귀) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
아이콘을 통째로 뒤집는 방식이라 모래가 위로 올라가는 것처럼 보였다. 새 의존성 없이 SVG와 framer-motion으로 모래시계를 직접 그린다. - 위쪽 모래는 표면이 목 쪽으로 내려가며 줄어들고, 아래쪽 모래는 봉긋한 더미로 차오름 - 목에서 모래 알갱이가 시차를 두고 한 알씩 떨어지며 중력처럼 점점 빨라짐 - 모래가 다 떨어지면 모래시계를 뒤집고, 대칭 구조라 다음 주기와 끊김 없이 이어짐 - 동작 줄이기(prefers-reduced-motion) 설정이면 멈춘 모래시계만 표시 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
세로로 긴 viewBox(64x80) 안에서 모래시계를 돌리면 가로로 눕는 순간 폭이 영역을 넘어 잘렸다. 중심에서 가장 먼 모서리까지 담기는 정사각형 viewBox로 바꿔 어느 각도에서도 잘리지 않게 한다. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (11)
💤 Files with no reviewable changes (1)
Included review availability: This review used your included allowance. Your plan provides up to 1 included review per hour; 0 remain after this review. Walkthrough청중이 첫 사회자 메시지를 받기 전에는 부재 알림이나 타임아웃 후에도 대기 화면을 유지하도록 변경했습니다. 대기 화면에 모래시계 애니메이션을 추가했습니다. 라이브 공유 버튼과 모달의 레이어 순서를 높이고 모달 배경을 적용했습니다. Changes청중 첫 메시지 대기
라이브 공유 모달 표시
Priority: ➖ Normal Estimated code review effort: 3 (Moderate) | ~25 minutes Change: Bug fix · Severity of issue fixed: Medium Suggested reviewers: Merge Risk: ⚪ Minimal · up to The audience waiting flow and live-share modal changes have no established merge-blocking issue; the change is mergeable after normal checks. Security Architecture ReviewSecurity architecture risk: 🔵 Low · up to The changed audience flow waits for a live message instead of showing an initial timer, and the review found no demonstrated new path to a privileged operation. The authority of messages delivered over the room channel could not be verified here. Retained concerns Security review detailsSecurity Blast Radius
Trust Boundaries and Controls
Resilience and Maintainability Implications
Hardening Proposals
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
Full details: Docstring CoverageExplanation Docstring coverage is 33.33% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 6 functions across 9 files. (1 skipped: 1 unsupported.)
✨ 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 |
🚀 Preview 배포 완료!
|
|
🧹 Preview 배포가 정리되었습니다. |
배경
공유 모달 레이어: 타이머 화면이 작아지면 라이브 공유 모달이 타이머·라운드 버튼 밑에 깔리거나 비쳐 보이고, 닫기 버튼이 클릭되지 않았다. 공유 영역에 z-index가 없어 DOM상 뒤에 오는 타이머 요소가 위에 그려졌고, 모달에 배경색이 없었다.
청중 선입장: 사회자보다 청중이 먼저 들어오면 1초 뒤 첫 순서 타이머가 정지 상태로 뜨고, 서버의
CHAIRMAN_ABSENT(또는 15초 경과)를 받으면 "사회자 연결이 끊겼어요" 화면으로 바뀌었다. 사회자가 아직 연결한 적 없는 상황이므로 대기 상태로 보여야 한다.작업
공유 모달 레이어
z-20(헤더z-30보다 낮고 타이머보다 높게)청중 대기 화면
createInitialDisplayData) fallback 제거CHAIRMAN_ABSENT를 받아도 "토론 시작을 대기 중입니다." 유지, 사회자SYNC(heartbeat 5초)를 받으면 타이머 화면으로 전환대기 애니메이션
DebateWaitingNotice컴포넌트 분리prefers-reduced-motion이면 정지 상태로 표시그 외
docs/live-share-timer-sync.md에 청중 선입장 시 대기 화면 유지 규약 추가테스트
TimerPage.liveShare.test.tsx(모달 레이어, 불투명 배경, 닫기),AudienceSharePage.integration.test.tsx(소켓 훅만 대체한 선입장 →CHAIRMAN_ABSENT→SYNC흐름, 연결 후 부재 회귀)useAudienceShareState,AudienceSharePagenpm run test519개 통과,npm run lint·npm run build통과Closes #504
🤖 Generated with Claude Code
Summary by CodeRabbit