From 7d3e72b9a4a5385512c80eeb7b655a9faa26bd8a Mon Sep 17 00:00:00 2001 From: happybell80 Date: Tue, 16 Sep 2025 22:48:14 +0900 Subject: [PATCH] =?UTF-8?q?docs:=20Slack=20=EC=82=AC=EC=9A=A9=EC=9E=90=20U?= =?UTF-8?q?UID=20=EB=A7=A4=ED=95=91=20=EC=8B=A4=ED=8C=A8=20=EB=AC=B8?= =?UTF-8?q?=EC=A0=9C=20=EB=AC=B8=EC=84=9C=ED=99=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - PostgreSQL user_id NULL 제약 위반 에러 - slack_user_to_uuid() 반환값 None 문제 - JWT username 필드 None 관련 --- ...ybell80_slack_user_uuid_mapping_failure.md | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 troubleshooting/250916_happybell80_slack_user_uuid_mapping_failure.md diff --git a/troubleshooting/250916_happybell80_slack_user_uuid_mapping_failure.md b/troubleshooting/250916_happybell80_slack_user_uuid_mapping_failure.md new file mode 100644 index 0000000..760422b --- /dev/null +++ b/troubleshooting/250916_happybell80_slack_user_uuid_mapping_failure.md @@ -0,0 +1,43 @@ +# Slack 사용자 UUID 매핑 실패 및 user_id NULL 에러 + +## 배경 +- **날짜**: 2025-09-16 +- **작성자**: happybell80 +- **문제**: Slack 사용자 DB 저장 시 user_id NULL 제약 위반 + +## 문제 상황 + +### PostgreSQL 에러 +``` +null value in column "user_id" violates not-null constraint +``` + +### 로그 확인 내역 +- rb8001 서비스: Slack ID → UUID 매핑 실패 WARNING +- robeing-gateway: JWT의 username 필드가 None +- 사용자: 김종태 (goeun2dc@gmail.com) - Slack OAuth 인증 + +## 현재 코드 상태 + +### robeing-gateway +- /home/happybell/projects/ivada/robeing-gateway/app/main.py:544행 +- `slack_user_to_uuid(team_id, slack_user_id)` 호출 +- 반환값이 None일 때 user_id NULL 에러 발생 + +### DB 스키마 +- user 테이블: id (UUID), username, email, slack_user_id, slack_team_id +- conversation_log 등 테이블: user_id NOT NULL 제약 + +## 관련 파일 +- robeing-gateway/app/main.py: slack_user_to_uuid() 함수 +- robeing-gateway/app/db/: DB 쿼리 로직 +- rb8001: Slack 메시지 처리 시 user_id 필요 + +## 영향 범위 +- Slack 메시지 저장 불가 +- 대화 히스토리 누락 +- 사용자별 컨텍스트 관리 실패 + +## 현재 상태 +- 미해결 +- Slack OAuth 직접 인증 사용 중 (auth-server 경유 안함) \ No newline at end of file