# 네이버 블로그 2건: 이미지 생성 400 에러 + ~다 체 혼입 방지

## 수정 1: 이미지 생성 400 에러

### 현재 상태
- "이미지 생성" 클릭 → 서버 오류 (400)
- task-1602.1에서 미해결로 남음

### 확인 + 수정
1. `POST /api/naver-blog/generate-images` 엔드포인트 확인
   ```bash
   curl -s -X POST http://localhost:8000/api/naver-blog/generate-images \
     -H "Content-Type: application/json" \
     -d '{"descriptions":["테스트 이미지"]}' 2>&1
   ```
2. 에러 원인 파악 (요청 body 불일치? API 키 미설정? 엔드포인트 미구현?)
3. 이미지 생성 방법:
   - Gemini 이미지 생성: `.env.keys`에서 `GOOGLE_AI_API_KEY` 로드
   - 또는 `google.generativeai` 패키지 사용
   - 또는 내부 claude CLI로 이미지 생성 프롬프트 → 외부 API 호출
4. 생성된 이미지를 `/home/jay/workspace/output/blog/naver/images/` 에 저장
5. 프론트엔드에 이미지 URL 반환

## 수정 2: ~다 체 혼입 방지

### 현재 문제
혼합체 선택 시에도 "~다" 체(평서형 종결)가 섞여 나옴:
- "제공한다", "구별된다", "운영이다" ← ~다 체 (블로그 글에 부적합)

### 원인
프롬프트에 "~다 체 사용 금지" 규칙이 없음. 어투 규칙에 ~니다/~요/~습니다만 명시했지만, AI가 ~다 체를 자의적으로 사용.

### 수정
`server.py`의 `_build_naver_blog_prompt()` 함수 — 어투 규칙 섹션에 추가:

모든 tone에 공통으로 아래 규칙 추가:
```
- ⚠️ "~다" 체(평서형 종결) 절대 금지: "~한다", "~된다", "~이다" 등 사용 불가
  · 금지 예시: "제공한다", "구별된다", "운영이다", "정리한다"
  · 올바른 예시: "제공합니다", "구별됩니다", "운영이에요", "정리하죠"
- 모든 문장은 반드시 위에서 지정한 어미 체계(~니다/~요/~습니다) 중 하나로 종결할 것
```

이 규칙은 `tone_rules`의 각 값(mixed, formal, casual) 앞에 공통으로 삽입하거나, tone_ending_rules 삽입 직전에 별도 추가.

## 테스트
1. 이미지 생성 클릭 → 400 에러 없이 이미지 생성 확인
2. 글 생성 후 "~다"로 끝나는 문장이 없는지 확인
3. 서버 재시작 후 전체 동작 확인

## 보고서
`/home/jay/workspace/memory/reports/task-1604.md`에 작성