abcVideo 플레이어 소스 (client / server / shared / pythonsource / docs / .claude). .gitignore 적용으로 node_modules·storage·samplevideo·미디어 등 대용량 일괄 제외. 103 files, ~964K. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
41 lines
1.0 KiB
Markdown
41 lines
1.0 KiB
Markdown
---
|
|
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 으로 분류하세요.
|