# task: 대시보드 캠페인뷰 고도화 — 실시간 체크리스트 + 예산 연동

## 배경 (제이회장님 피드백)
"대시보드 캠페인 뷰 아직 하드코드된 페이지만 보이고, 실제로 실행 체크리스트, 예산검토 등이 연동이 되어야 해!!!!"

현재: campaign.json에 10개 체크리스트 항목이 하드코딩
목표: 실제 체크리스트 파일(recruiting-campaign-checklist.md)에서 동적으로 읽어오고, 예산 집행 현황도 추적

## 작업

### 1. 체크리스트 동적 연동
recruiting-campaign-checklist.md (182줄, 4개 Phase, 수십 개 항목)를 파싱하여 campaign.json의 checklist에 실시간 반영.

**방법 A (추천)**: server.py에서 체크리스트 MD 파일을 파싱하는 함수 추가
- 경로: `/home/jay/workspace/memory/specs/recruiting-campaign-checklist.md`
- `- [x]` → done: true / `- [ ]` → done: false
- Phase별 섹션(## Phase 0, ## Phase 1...)으로 분류
- Phase별 완료율 자동 계산
- `/api/campaign` 응답에 통합 (기존 checklist 필드 대체)

### 2. 체크리스트 업데이트 API
POST `/api/campaign/checklist` — 항목 완료 토글
- body: `{"phase": 0, "index": 3, "done": true}`
- checklist.md 파일을 실제로 수정 (`- [ ]` ↔ `- [x]`)
- 대시보드에서 체크박스 클릭하면 바로 반영

### 3. 예산 현황 섹션 추가
campaign.json에 예산 집행 데이터 필드 추가:
```json
"budget_tracking": {
  "total_spent": 0,
  "daily_log": [],
  "channel_spent": {
    "meta": 0, "google": 0, "naver_sa": 0,
    "naver_gfa": 0, "kakao": 0, "recruit": 0, "danggeun": 0
  }
}
```
CampaignView.js에 예산 집행 현황 카드 추가:
- 월 예산 대비 집행률 (프로그레스 바)
- 채널별 집행 금액
- 일 예산 10만원 대비 오늘 집행액

### 4. CampaignView.js UI 개선
- 체크리스트 섹션: Phase별 탭 또는 아코디언으로 분리 (현재 전부 1줄 나열)
- 체크리스트 항목 클릭 시 done 토글 (API 호출)
- Phase별 완료율 표시
- 예산 현황 섹션 추가

## 수정 대상 파일
- `/home/jay/workspace/dashboard/server.py` — 체크리스트 파싱 + API 추가
- `/home/jay/workspace/dashboard/components/CampaignView.js` — UI 고도화
- `/home/jay/workspace/dashboard/data/campaign.json` — budget_tracking 필드 추가

## 참조 파일
- 체크리스트: `/home/jay/workspace/memory/specs/recruiting-campaign-checklist.md`
- 기존 CampaignView: `/home/jay/workspace/dashboard/components/CampaignView.js` (235줄)

## 완료 조건
- [ ] 체크리스트가 MD 파일에서 동적으로 읽혀옴
- [ ] Phase별 완료율 자동 계산 및 표시
- [ ] 체크박스 클릭 시 MD 파일 실제 업데이트
- [ ] 예산 집행 현황 섹션 표시
- [ ] 대시보드에서 캠페인뷰 정상 동작 확인