# Task Log: Admin Purge API Implementation

> **일시**: 2026-02-15 22:20
> **태스크 ID**: task00017
> **작성자**: Antigravity High-Code Agent
> **상태**: 완료 (Verification Pending)

---

## 1. 작업 개요
법적 요구사항(GDPR 등) 및 스팸 데이터 관리를 위해 'Soft Delete'된 문서를 영구적으로 삭제(Purge)할 수 있는 기능을 구현했습니다. 또한 기존 삭제 기능을 완전한 Soft Delete로 전환했습니다.

## 2. 작업 내용

### Backend
- **[NEW]** `src/app/api/admin/purge/route.ts`:
    - `DELETE` 메서드 지원
    - `Authorization` 헤더(Bearer Token) 검증
    - Admin 이메일 화이트리스트 체크 (`jonghyuk.jeon@gmail.com`, `drumbrab@gmail.com`)
    - `firebase-admin`의 `recursiveDelete`를 사용하여 문서 및 하위 `revisions` 컬렉션 일괄 삭제

### Frontend (`DocumentClient.tsx`)
- **[UPDATE]** `handleDelete`:
    - 기존 `deleteDoc`(Hard Delete) → `update({ isDeleted: true })`(Soft Delete)로 변경
    - 삭제 시 Home(`/`)으로 리다이렉트
- **[NEW]** `handlePurge`:
    - Admin 사용자에게만 노출되는 '영구 삭제' 버튼 기능 구현
    - `/api/admin/purge` 호출
- **[UI]**:
    - `isAdmin` 체크 로직 개선 (다중 Admin 지원)
    - 삭제된 문서(`isDeleted: true`)에서 Admin에게만 '영구 삭제' 버튼 표시

### Types
- **[UPDATE]** `src/types/firestore.ts`: `Document` 인터페이스에 `isDeleted` 필드 추가

## 3. 검증 계획
1.  일반 사용자/Admin으로 로그인.
2.  문서 삭제 시도 -> "휴지통으로 이동" 메시지 확인 (Soft Delete).
3.  Firestore 콘솔에서 `isDeleted: true` 확인.
4.  Admin 계정으로 해당 문서 접속 (URL 직접 입력 등).
5.  '영구 삭제' 버튼 클릭 -> "영구적으로 삭제되었습니다" 메시지 확인.
6.  Firestore 콘솔에서 문서 및 `revisions` 서브컬렉션이 완전히 사라졌는지 확인.
