# 배너 에디터 흰 화면 버그 수정

## 증상
대시보드 배너 에디터 탭 클릭 시 흰색 바탕만 표시. 배너 목록/에디터 모두 안 보임.

## 원인 조사 필요
1. **React 렌더링 에러**: BannerEditorView.js에 JS 에러가 있어 컴포넌트가 마운트 안 될 수 있음. 브라우저 콘솔 에러 확인 필요.
2. **HTML 파일 부재**: API 응답에서 18개 배너 중 M2 6개만 `has_html: true`, M1/M3 12개는 `has_html: false`. HTML 파일이 없으면 에디터 진입 불가.
3. **CSS/스타일 문제**: 리스트가 렌더링됐지만 배경/텍스트 색상 같아서 안 보일 수 있음.

## 수정 내용

### 1. React 렌더링 디버그
- BannerEditorView.js를 읽고, useState import 누락이나 문법 에러 확인
- App.js에서 BannerEditorView import 경로 확인
- 서버 재시작 후 `/dashboard/` 접속하여 콘솔 에러 확인 (webapp-testing 스킬 활용)

### 2. HTML 파일 생성
M1/M3 배너에도 HTML 파일 생성 필요:
- `gen_m1_*_banners.py`, `gen_m3_*_banners.py` 스크립트에서 HTML 생성 부분을 파일로도 저장하도록 수정
- 또는: 기존 스크립트를 실행하여 HTML을 별도 저장하는 유틸리티 작성
- 경로: `banners/m1/m1-1-1200x628.html`, `banners/m1/m1-1-1080x1080.html` 등

### 3. 리스트 화면 수정
- `has_html: false`인 배너도 리스트에 표시 (PNG 썸네일만이라도)
- HTML 없는 배너는 "HTML 생성 필요" 표시 또는 PNG 뷰어 모드로 제공
- 배너 목록에 PNG 썸네일 이미지 표시

### 4. 동작 확인
- 대시보드 서버 재시작
- 배너 에디터 탭 진입 → 목록 표시 확인
- 배너 선택 → HTML 로드 → 편집 기능 확인
- webapp-testing 스킬로 스크린샷 캡처하여 시각적 확인

## 대상 파일
- `dashboard/components/BannerEditorView.js`
- `dashboard/server.py` (필요 시)
- `tools/ai-image-gen/gen_m1_*_banners.py` (HTML 저장 추가)
- `tools/ai-image-gen/gen_m3_*_banners.py` (HTML 저장 추가)

## 참고
- 배너 경로: `/home/jay/workspace/output/google-ads/banners/`
- API: `GET /api/banner-editor/list` — 정상 작동 확인됨
- 대시보드: `http://100.76.130.39:8000`
