- 텍스트(측점/POI) 전 프레임 사전 계산 Map (requestIdleCallback 백그라운드) - 드론 데이터 이동 평균 스무딩 (smoothFrame ±N프레임) - 30fps→60fps 프레임 간 선형 보간 (performance.now() 기반) - EMA(지수이동평균) 표시 위치 스무딩 (α=0.01 기본값) - 글씨 2배 크기, bold, strokeText 테두리, 배경 박스 제거 - 카메라 파라미터 패널에 smooth/EMA α 슬라이더 추가 Co-Authored-By: Claude Sonnet 4.6 <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 으로 분류하세요.
|