# 온톨로지 기반 Coldmail 필터 구현 계획 (Phase 1 완료)

**날짜**: 2025-10-16  
**목표**: 임베딩 한계(파인티처 메일 누락)를 온톨로지 추론으로 해결  
**상태**: Phase 1 완료, Phase 1.5 계획 분리

---

## Phase 1: Coldmail 온톨로지 (✅ 완료)

→ 상세: `troubleshooting/251014_claude_coldmail_filter_tokenization_issue.md`

### 구현 완료 내용

**파일**: `rb8001/app/services/coldmail_ontology_reasoner.py`
- 규칙 엔진 구현 (10개 규칙)
- 임베딩 분류(75%) + 온톨로지 추론 → 90%+ 달성
- Threshold: 0.7 이상 확정, 0.4-0.7은 LLM fallback

**검증 결과**:
- 파인티처 메일: coldmail 0.28 → 0.90 (성공)
- 기존 17건 재테스트: 정확도 100%

**추론 규칙 (10개)**:

**Coldmail 판정 (6개)**:
1. 제목 CONTAINS ["투자", "IR", "피칭"] + PDF 첨부 → 0.9
2. 첨부파일명 CONTAINS ["회사소개서", "IR_Deck"] → 0.85
3. 제목 "검토요청" + 첨부 → 0.8
4. 미등록 발신자 + PDF → 0.7
5. 본문 CONTAINS ["투자 유치", "펀딩", "밸류에이션"] → 0.75
6. 발신자 도메인 IN ["startup", "ventures", "capital"] → 0.6

**Normal 판정 (4개)**:
7. 제목 CONTAINS ["행사", "초대", "세미나"] → 0.9
8. 제목 CONTAINS ["영수증", "세금계산서"] → 0.95
9. 제목 CONTAINS ["회의", "공지", "보고"] → 0.85
10. 등록 발신자 + 규칙 1-6 미해당 → 0.8

---

## 후속 작업

- **Phase 1.5**: 베이지안 학습 구현 → `plans/260113_coldmail_ontology_phase1_5_bayesian_learning.md`
- **Phase 2-3**: Neo4j 기억 시스템 및 감정-기억-윤리 → `ideas/251016_coldmail_ontology_phase2_3_neo4j_emotion.md`

---

## 참고

- `troubleshooting/251014_claude_coldmail_filter_tokenization_issue.md`
- `troubleshooting/251016_ontology_filter_validation.md`
- `book/200_core_design/225_온톨로지_기반_지식_표현.md`
