# 대화 로그 사용자 매핑 불일치 ## 상태: 해결 방안 제시 (2025-08-27) ## 문제 같은 사용자가 Slack/웹 접속 시 각각 다른 ID로 저장 ### 현상 - **Slack**: slack_user_id만 저장 (UUID NULL) - **웹**: user_id(UUID)만 저장 (slack_user_id NULL) - **결과**: 동일 사용자가 2명으로 분리 ## 원인 - **Slack 경로**: JWT 없이 Slack ID만 사용 - **웹 경로**: JWT에서 UUID만 추출 - **State Service**: 두 ID를 연결하는 매픹 로직 없음 ## 영향 - 동일 사용자 통계 분리 - 채널 간 대화 기록 단절 - 개인화 컨텍스트 손실 ## 해결 방안: 분리 운영 ### 선택한 방안 - **Slack과 웹을 별도 체계로 운영** - Slack: Slack ID + Slack 서명 검증 - 웹: UUID + JWT 검증 ### 구현 1. conversation_logs 테이블 현 구조 유지 - slack_user_id: Slack 사용자만 - user_id: 웹 사용자만 2. 통계 조회 시 JOIN - slack_user_mapping 테이블 활용 - WHERE user_id = ? OR slack_user_id IN (SELECT...) ## 결론 - 분리 운영이 가장 현실적 - 각 채널 특성에 맞는 인증 체계 유지 - 필요 시 slack_user_mapping 테이블로 통합 조회 --- *작성: Claude* *검토 필요: State Service 개발자*