# 감정 기반 호칭 시스템 UX 시나리오 **작성일**: 2025-12-04 **테스트 대상**: 김종태 (UUID: 1a7ebe8c-1cfd-4acf-a821-2cc526313706) --- ## 시나리오 1: 긍정 감정 + 직책 있음 **입력**: "고마워요! 오늘 일정 알려주세요" **감정**: happiness **예상 호칭**: "CTO님" **검증**: 응답에 "CTO님" 포함 ## 시나리오 2: 부정 감정 + 직책 있음 **입력**: "너무 힘들어요... 스트레스 받아요" **감정**: sadness **예상 호칭**: "CTO님" (직책 우선) **검증**: 응답에 "CTO님" 포함 ## 시나리오 3: 중립 감정 + 직책 있음 **입력**: "오늘 날씨 어때요?" **감정**: neutral **예상 호칭**: "CTO님" **검증**: 응답에 "CTO님" 포함 ## 시나리오 4: 긍정 감정 + nickname 설정 **설정**: metadata에 nickname="JT" 추가, position 제거 **입력**: "좋은 아침이에요!" **감정**: happiness **예상 호칭**: "JT님" **검증**: 응답에 "JT님" 포함 ## 시나리오 5: 부정 감정 + nickname 설정 **설정**: metadata에 nickname="JT", position 없음 **입력**: "힘들어요... 도와주세요" **감정**: sadness **예상 호칭**: "김종태님" (정식 이름) **검증**: 응답에 "김종태님" 포함 ## 시나리오 6: metadata 없음 + 긍정 감정 **설정**: metadata={} **입력**: "감사합니다!" **감정**: happiness **예상 호칭**: "종태님" (성 제외) **검증**: 응답에 "종태님" 포함 ## 시나리오 7: metadata 없음 + 부정 감정 **설정**: metadata={} **입력**: "화가 나요..." **감정**: anger **예상 호칭**: "김종태님" (정식 이름) **검증**: 응답에 "김종태님" 포함 ## 시나리오 8: 복합 감정 (fear + sadness) **입력**: "불안하고 걱정돼요..." **감정**: fear **예상 호칭**: "CTO님" (직책 우선) **검증**: 응답에 "CTO님" 포함, 위로 톤 ## 시나리오 9: 연속 대화 (감정 변화) **1단계**: "힘들어요" (sadness) → "CTO님" **2단계**: "고마워요!" (happiness) → "CTO님" **검증**: 감정 변화에도 직책 호칭 유지 ## 시나리오 10: 감정 분석 실패 케이스 **설정**: USE_EMOTION_ANALYSIS=false **입력**: "안녕하세요" **예상 호칭**: "CTO님" (기본값) **검증**: 에러 없이 정상 응답 --- ## 검증 방법 1. 웹 UI 직접 테스트 (http://localhost:8000) 2. API 엔드포인트 테스트 (curl) 3. Docker 로그 확인 (Preferred name) 4. emotion_readings 테이블 확인