DOCS/troubleshooting/250831_happybell80_skill-email_UUID_inconsistency_URGENT.md
happybell80 4872bd85f9 docs: Fix database schema documentation errors
- conversation_log 테이블명 수정 (s 없음)
- slack_user_mapping 테이블 존재하지 않음
- slack_user_id 컬럼 존재하지 않음
- user.oauth_id에 Slack ID 저장됨
2025-09-18 18:32:56 +09:00

1.9 KiB

skill-email UUID 불일치로 인한 500 에러 - URGENT

날짜: 2025-08-31

작성자: happybell80 & Claude

관련 서비스: rb8001, skill-email

상태: 진행 중

긴급도: 높음 (사용자 서비스 중단)


1. 문제 발견

  • 증상: "이메일 서비스 연결에 실패했습니다" 오류
  • 원인: skill-email 500 Internal Server Error
  • 로그: No equipped Gmail token found for user: 1e16e9d5-59f3-54da-a661-8abeabff4230

2. 근본 원인

rb8001이 UUID를 전달하지만 skill-email은 Slack ID 기대:

rb8001 → skill-email: UUID (1e16e9d5-...)
skill-email DB 조회: Slack ID로 저장됨 (U0925SXQFDK)
결과: 토큰 조회 실패 → 500 에러

3. 역사적 맥락

  • 8/22: UUID5 변환 시도 → 네임스페이스 불일치 실패
  • 8/25: UUID 포기, Slack ID 직접 사용으로 전환
  • 8/31: rb8001은 여전히 UUID 전달 중 (미수정)

4. 해결 방안

단기 해결 (즉시)

rb8001의 email_integration.py 수정:

  • 이메일 조회 시: UUID → Slack ID 역변환
  • user.oauth_id에서 Slack ID 조회
  • 참고: slack_user_mapping 테이블 없음, gmail_token에 slack 컬럼 없음

장기 해결 (권장)

모든 내부 시스템 UUID Primary Key 통일:

  1. gmail_tokens 테이블 user_id를 UUID로 마이그레이션
  2. skill-email UUID 조회 지원
  3. Slack ID는 매핑 테이블에서만 관리

5. 영향 범위

  • Gmail 관련 모든 기능 작동 불가
  • 이메일 조회, 발송, 일일 요약 등

6. 참조 문서

7. Action Items

  • rb8001 email_integration.py UUID → Slack ID 변환 추가
  • skill-email UUID 지원 확인
  • 테스트 및 배포