DOCS/troubleshooting/250827_claude_conversation_log_user_mapping.md
happybell80 e851a072d7 docs: 분리 운영 방안으로 문서 간소화
- 대화 로그 사용자 매핑: 분리 운영 선택
- JWT 보안 문서: 핵심만 정리
- Slack과 웹 각각의 인증 체계 유지
2025-08-27 18:42:59 +09:00

46 lines
1.2 KiB
Markdown

# 대화 로그 사용자 매핑 불일치
## 상태: 해결 방안 제시 (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 개발자*