InsuWiki Phase 2: 운영 안정성 패치 (task-74.1)

## 프로젝트 경로
/home/jay/projects/insuwiki/

## Phase 1 완료 상태 (참고)
- task-70.1(1팀): AI API verifyIdToken, share-target auth, encryption key 패치 완료
- task-71.1(2팀): Firestore rules isPublic→isAdmin, pdfIndexing batch 버그 수정 완료

## Phase 2 작업 목록 (5건)

### H-1. Firestore 복합 인덱스 추가
- 파일: firestore.indexes.json
- insurance_metadata, gemini_file_cache, query_logs 등 복합 쿼리에 필요한 인덱스 추가
- 코드베이스에서 .where().orderBy() 패턴을 검색해서 필요한 인덱스 도출

### H-2. 누락 컬렉션 Firestore 규칙 추가
- 파일: firestore.rules
- 현재 11개 컬렉션만 규칙 정의, insurance_chunks/query_logs/youtube_*/whitelist/apiKeys 등 누락
- 각 컬렉션의 실제 사용 패턴 파악 후 적절한 규칙 작성
- 주의: task-71.1에서 수정한 update 규칙(isAdmin) 유지할 것

### H-3. CI/CD 파이프라인 구축
- .github/workflows/ 에 PR 검증 워크플로우 생성
- 포함: next build, eslint, tsc --noEmit
- 기존 백업 워크플로우는 유지

### H-4. 프로덕션 console.log 제거 (120건)
- nextapp/src/ 하위 모든 파일에서 console.log 제거
- 단, console.error와 console.warn은 유지
- UID 등 민감 정보 노출되는 console.log 우선 제거

### H-5. node_modules 및 불필요 파일 git 추적 제거
- functions/node_modules/ → .gitignore에 추가 후 git rm -r --cached
- chrome_profile_notebooklm/ → 삭제 또는 .gitignore
- firestore-debug.log → .gitignore
- .gitignore 정리

## 주의사항
- Phase 1에서 수정된 파일들(auth-middleware.ts, encryption.ts, firestore.rules 등)의 변경사항 보존
- git commit은 하지 말 것 (아누가 검토 후 통합 커밋)
- 빌드 테스트: npm run build 통과 확인 필수

## 완료 후
- 보고서: /home/jay/workspace/memory/reports/task-74.1.md
- task-timer end: python3 /home/jay/workspace/memory/task-timer.py end task-74.1