# 순환 참조 제거 및 감정 DB 저장 수정

**작성일**: 2025-10-02 16:06
**완료일**: 2025-10-02 16:10
**커밋**: 29c0317

## 문제

### 1. 응답 시간 23.6초
- Gemini API 429 quota 에러 반복
- EMOTIONS 변수 참조 에러 14회

### 2. 순환 참조 발견
- llm_service.py → emotion_llm.py → llm_service.py (순환)
- emotion_llm.py:137에서 LLMService() 생성
- generate_response_with_emotion()에서 LLM 재호출

## 원인
- emotion_llm.py가 LLM 호출 (계층 위반)
- 중복 LLM 호출: handler.chat + emotion_llm LLM

## 해결

### emotion_llm.py
- generate_response_with_emotion() 제거 (100-199줄)
- save_emotion_to_db() 추가 (DB 저장만)

### llm_service.py
- 감정 분석 → 프롬프트 조절 → LLM 호출 → DB 저장 (86-110줄)
- 순환 참조 해소: llm_service → emotion_llm (단방향)

## 결과
- 응답 시간: 23.6초 → 1.9초
- 감정 DB 저장 정상 작동
- 16:06:32 KST: surprise 39.53%

## 교훈
- 순환 참조는 성능 문제 직결
- 계층 원칙 준수: LLM 호출은 llm_service만
- emotion_llm은 분석 + DB 저장만
