docs: slack_user_mapping 검증 결과 추가 - DB 매핑 정상 확인, 코드에서 미사용 문제 발견

This commit is contained in:
Claude-51124 2025-08-19 12:58:49 +09:00
parent e7df863892
commit 8c9531925c

View File

@ -126,14 +126,6 @@ CREATE TABLE user_identity_mapping (
2. **중요**: 슬랙 봇 토큰 통일 (사용자 경험)
3. **개선**: Gateway 통합 (아키텍처 일관성)
## 예상 작업량
- ChromaDB 분리: 2-3시간 (코드 수정 + 테스트)
- 데이터 마이그레이션: 1시간
- 슬랙 토큰 통일: 30분
- 전체 테스트: 2시간
**총 예상**: 5-6시간
## 위험 및 고려사항
@ -181,4 +173,68 @@ CREATE TABLE user_identity_mapping (
---
## 추가 검증 결과 (2025-08-19 12:30)
### slack_user_mapping 테이블 검증 완료
#### 데이터베이스 상태
- **테이블 존재**: ✅ auth_db.slack_user_mapping
- **정확한 매핑 데이터**:
```
U0925SXQFDK → aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa → 김종태
U091UNVE41M → bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb → 전희재
UHHYONG91 → cccccccc-cccc-cccc-cccc-cccccccccccc → 황한용
```
#### 코드 분석 결과
1. **rb8001**:
- slack_user_mapping 테이블 조회 로직 없음
- Slack user_id만 ChromaDB metadata에 저장
- 실제 사용자 이름 변환 없이 LLM에 전달
2. **rb10508_micro**:
- 마찬가지로 slack_user_mapping 미사용
- ChromaDB identity 컬렉션 자체가 없음
- 사용자 이름은 get_identity()로 조회하나 실제 데이터 없음
### 문제 근본 원인 확정
**DB에는 올바른 매핑이 있으나, 서비스 코드에서 이를 활용하지 않음**
- slack_user_mapping 테이블 생성: 2025-08-12 22:11
- 서비스 코드 업데이트: 없음
- 결과: LLM이 ChromaDB의 오염된 메모리에서 잘못된 이름 학습
### 로그 증거
```
INFO:app.router.slack_handler:Event: app_mention from U0925SXQFDK
INFO:app.router.router:Conversation saved for user U0925SXQFDK
INFO:app.router.slack_handler:Router result: {
'content': '전희재님, 8001이 무엇을 의미하는지...'
}
```
종태님(U0925SXQFDK) 이벤트에 "전희재님"으로 응답하는 명확한 증거
### 개선 필요 코드 위치
1. **rb8001/app/router/router.py**:
- route_message() 함수에서 slack_user_mapping 조회 추가
- user_name을 LLM context에 전달
2. **rb8001/app/llm/gemini_handler.py**:
- 시스템 프롬프트에 정확한 사용자 이름 포함
3. **rb10508_micro/app/core/brain.py**:
- think() 함수에서 slack_user_mapping 조회
- user_name 파라미터에 실제 이름 전달
### 필수 해결 방안
1. slack_user_mapping 테이블 활용 코드 추가
2. ChromaDB 사용자별 컬렉션 분리
3. LLM 프롬프트에 정확한 사용자 정보 전달
---
**문서 끝**