docs: 콜드메일 IR 분석 에러 4 추가 및 99줄로 축약

- 에러 4: coldmail_briefing.py:166 try-except 누락
- IR 분석 실패 시 Slack 전송 중단 문제 명시
- 120줄 → 99줄로 축약 (100줄 이하 준수)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
happybell80 2025-10-13 23:49:36 +09:00
parent eacbfd0d05
commit e487679828

View File

@ -23,55 +23,49 @@
### 에러 1: RAG 쿼리 404 (6회 발생)
**에러 메시지:**
```
ERROR:app.services.ir_analyzer:RAG query failed: 404
```
**원인:**
- ir_analyzer.py:28 - `/api/query` 엔드포인트 호출
- skill-rag-file은 POST `/api/search` 제공 (search.py:19)
- 엔드포인트 불일치
- ir_analyzer.py:28 - `/api/query` 호출하지만 skill-rag-file은 `/api/search` 제공
**수정 필요:**
**수정:**
- ir_analyzer.py:28: `/api/query``/api/search`
- ir_analyzer.py:29-32: payload 구조 변경 (document_id 제거, team_id 추가)
- ir_analyzer.py:29-32: payload에 team_id 추가, document_id 제거
### 에러 2: LLM 연결 실패
**에러 메시지:**
```
ERROR:app.services.ir_analyzer:Error calling LLM: Cannot connect to host localhost:8080
```
**원인:**
- ir_analyzer.py:15: LLM_API_URL = http://localhost:8080/api/llm
- rb8001 컨테이너 내부에 localhost:8080 LLM 서비스 없음
- rb8001은 자체 LLM 서비스 사용 (app/llm/llm_service.py)
- ir_analyzer.py:15: localhost:8080 LLM 서비스 없음
- rb8001은 app/llm/llm_service.py 사용
**수정 필요:**
- ir_analyzer.py:48-74: call_llm() 함수를 rb8001 LLM 서비스 사용으로 변경
- app/llm/llm_service.py의 LLMService, LLMRequest 사용
**수정:**
- ir_analyzer.py:48-74: LLMService, LLMRequest로 전체 변경
### 에러 3: DB 제약조건 없음
**에러 메시지:**
```
asyncpg.exceptions.InvalidColumnReferenceError: there is no unique or exclusion constraint
```
**원인:**
- startup_valuation.py:249: ON CONFLICT 절 사용하나 UNIQUE 제약조건 미설정
**수정:**
- 51123 서버 DB: startup_valuation 테이블 UNIQUE 제약조건 추가
### 에러 4: Slack 전송 도달 불가
**원인:**
- startup_valuation.py:249: ON CONFLICT 절 사용
- startup_valuation 테이블에 UNIQUE 제약조건 미설정
- coldmail_briefing.py:166: extract_ir_metrics() 예외 시 for loop 중단
- 172-244줄(Slack 전송) 실행 안됨
**수정 필요:**
- 51123 서버 DB: startup_valuation 테이블에 UNIQUE 제약조건 추가
**수정:**
- coldmail_briefing.py:165-170: try-except 추가
---
## 해결 방안
### 우선순위 1: ir_analyzer.py 수정
### 우선순위 1: coldmail_briefing.py 에러 핸들링 추가
**수정 위치 (165-170줄):**
- IR 분석 실패 시에도 Slack 메시지 전송되도록 try-except 추가
### 우선순위 2: ir_analyzer.py 수정
**query_rag() 함수 (18-45줄):**
- 18줄: 파라미터 document_id → team_id로 변경
@ -82,11 +76,11 @@ asyncpg.exceptions.InvalidColumnReferenceError: there is no unique or exclusion
- rb8001 LLM 서비스(app/llm/llm_service.py) 사용으로 전체 변경
- LLMService, LLMRequest import 추가
### 우선순위 2: DB 제약조건 추가
### 우선순위 3: DB 제약조건 추가
- 51123 서버: startup_valuation 테이블 UNIQUE 제약조건 추가
### 우선순위 3: 테스트 재실행
### 우선순위 4: 테스트 재실행
- git push → Gitea Actions 배포 → 테스트 재실행