diff --git a/.agent/references/known-issues.md b/.agent/references/known-issues.md index 7e57ef6..b3f019e 100644 --- a/.agent/references/known-issues.md +++ b/.agent/references/known-issues.md @@ -135,3 +135,21 @@ - **원인**: handler line 90이 `title` truthy면 무조건 단건 다운로드. title 유효성 검증 없음 - **해결**: `download()` resolve 실패 + episode 미지정 시 `batch_download()` fallback 추가 - **주의**: AI NLU 출력을 무비판적으로 신뢰하지 말 것. 코드에서 반드시 방어적 검증 필요 + +### [2026-03-19] anime_handler — batch mode "sub_only" 오판 +- **증상**: "이번분기 애니 자막있는것까지 업데이트" → 영상 다운로드 안 됨 +- **원인**: filter에 "sub" 있으면 `batch_download(mode="sub_only")` 호출 → `_execute_download` line 522가 영상 스킵 +- **해결**: filter의 "sub"은 "자막도 포함"이지 "자막만"이 아님 → 모든 batch를 `mode="auto"`로 +- **주의**: `sub_only`는 명시적 `action="sub_only"`일 때만 사용. filter 값으로 mode 결정하지 말 것 + +### [2026-03-19] subtitle_downloader — Content-Disposition 후 존재 체크 누락 +- **증상**: 이미 NAS에 있는 자막을 매번 다시 다운로드 +- **원인**: Google Drive `sub.filename = "subtitle_{fileId}"` → 1차 존재 체크 통과 → 다운로드 → Content-Disposition에서 실제 파일명 → **존재 체크 없이 바로 write_bytes** → 기존 파일 덮어씀 +- **해결**: Content-Disposition 파일명 결정 후, write 전에 2차 존재 체크 추가 +- **주의**: 다운로드 전 체크만으로는 부족. **실제 파일명을 알게 된 시점에서 반드시 재확인** + +### [2026-03-19] discord_bot — unified 분류 timeout 60초 부족 +- **증상**: 커피갤러리 요약 등 복잡한 요청 시 "시간 초과 (60초)" 에러 +- **원인**: `discord_bot.py:388` `timeout=60` 하드코딩 +- **해결**: `timeout=120`으로 변경 +- **주의**: 분류 프롬프트 복잡도에 따라 timeout 조정 필요. 기본값은 넉넉히 diff --git a/docs/devlog/2026-03-19.md b/docs/devlog/2026-03-19.md new file mode 100644 index 0000000..3932b9e --- /dev/null +++ b/docs/devlog/2026-03-19.md @@ -0,0 +1,6 @@ +| # | 시간 | 작업 | 커밋 | 상태 | +|----|------|------|------|------| +| 001 | 06:50 | batch mode sub_only→auto + timeout 60→120초 | `595c6ee` | ✅ | +| 002 | 07:00 | 자막 중복 다운로드 방지 — NAS 실시간 스캔 + 파일명 비교 스킵 | `f96c28a` | ✅ | +| 003 | 07:03 | subtitle_downloader Content-Disposition 2차 존재 체크 | `bb59e7c` | ✅ | +| 004 | 07:08 | architecture.md 전면 개편 — 전체 실행 흐름 문서화 | `4a35c43` | ✅ |