--- name: review description: 최근 코드 변경사항을 CLAUDE.md 규칙 기준으로 리뷰합니다. disable-model-invocation: true context: fork agent: code-reviewer --- ## 코드 리뷰 최근 변경사항을 CLAUDE.md의 핵심 구현 규칙 기준으로 리뷰하세요. ### 리뷰 범위 변경된 파일 확인: !`git diff --name-only HEAD~1 2>/dev/null || echo "git diff 불가 - 전체 파일 리뷰"` ### 리뷰 기준 (CLAUDE.md에서 발췌) **보안:** - Path traversal 방어 (path.resolve + 허용 디렉토리 검증) - 업로드 MIME + FFprobe 검증 - CORS 설정 **메모리:** - URL.createObjectURL → revokeObjectURL 쌍 - Canvas 재사용 - hls.js backBufferLength: 30 **성능:** - timeupdate 직접 DOM 조작 금지 - requestAnimationFrame/requestVideoFrameCallback 사용 - 이진 탐색 O(log n) **패턴 준수:** - Range Request: createReadStream + pipeline - FFmpeg: child_process.spawn 래퍼 - Video.js: ref + useEffect 패턴 피드백을 Critical / Warning / Suggestion 으로 분류하세요.