**task-1690.1 완료 보고** (dev5-team) **완료 보고서** (7분 25초) **핵심 결과** 서버에 모델별 타임아웃(sonnet 300초, haiku 180초, gemini 300초, gpt 120초)을 설정하고 `subprocess.TimeoutExpired` 예외 처리를 추가하여 504 응답과 구체적 에러 메시지를 반환하도록 수정했다. 프론트엔드에는 AbortController(330초 타임아웃) 추가 + 에러 메시지 3단계 분기(AbortError/Failed to fetch/기타)를 구현했다. 히스토리에서는 키워드분석/글작성 탭 모두에 "이 키워드로 글 재생성" 버튼을 추가하여, 클릭 시 키워드가 글 생성 단계(step=1)로 전달되고 어투/모델 선택 후 재생성 가능하다. ## 수정 파일 목록 - `/home/jay/workspace/dashboard/server.py` (라인 5292-5334) - `/home/jay/workspace/dashboard/components/NaverBlogView.js` (라인 558-597, 1561, 1686-1698, 1701-1726, 1797-1801) ## 변경 상세 ### 1. Failed to fetch 에러 수정 **발견/해결 이슈 2건** 1. **recommended_json 키 불일치** — `keyword` → `relKeyword`로 수정 (NaverBlogView.js:1712) 2. **input_keyword 쉼표 구분 문자열 처리** — split(',') 파싱 추가 (NaverBlogView.js:1714-1715)