# evaluation-protocol.md — 평가 프로토콜

## 개요
MoAI 하네스의 산출물을 평가하는 프로토콜입니다.
결정론적 검증(파일/섹션/포맷)은 verification-protocol에서 처리하며, 본 프로토콜은 AI 판단이 필요한 품질 평가를 담당합니다.

<!-- 강제 0-100% 점수화 제거: Opus 4.6이 자기평가를 자연스럽게 수행. 강제 점수화는 레거시 보상 패턴. -->
<!-- 강제 피드백 수집 제거: /project evolve 실행 시에만 트리거. 매 실행마다 수집은 사용자 피로 유발. -->
<!-- .moai/projects/{id}/evaluation/ 강제 디렉터리 제거: 파일 저장은 사용자 요청 시에만. -->

---

## 역할 구분

본 프로토콜은 **확률적 평가(AI 판단)**를 담당한다.
구조적 완전성, 포맷, 필수 섹션 존재 등 **결정론적 검증**은 execution-protocol.md §3.5의 검증 루프에서 사전 수행된다.
evaluation-protocol은 결정론적 검증 통과 후 실행되며, AI만 판단할 수 있는 정확성·완전성·실용성·톤·도메인 적합성을 평가한다.

---

## 1. 평가 프레임워크

### 1-1. 5개 평가 차원

| 차원 | 정의 | 가중치 | 만점 |
|-----|------|-------|------|
| **정확성** | 사실/데이터의 정확도 | 20% | 100 |
| **완전성** | 요구사항 충족도 | 25% | 100 |
| **실용성** | 실행 가능성/유용성 | 25% | 100 |
| **톤 적합성** | 사용자 선호 톤 일치도 | 15% | 100 |
| **도메인 적합성** | 업계/산업 맥락 반영도 | 15% | 100 |

**최종 점수 = Σ(차원_점수 × 가중치)**

---

## 2. 정확성 평가

### 2-1. 체크리스트

```
신뢰성 검증:
[ ] 인용된 통계/데이터의 출처 명확
[ ] 날짜/숫자의 정확성 (± 10% 오류 범위)
[ ] 용어 정의의 정확성
[ ] 상충하는 정보 없음
[ ] 최신 정보 (90일 이내)

채점 기준:
90-100: 모든 사실 검증됨
70-89: 1-2개 부정확 요소
50-69: 여러 부정확 요소 또는 오래된 정보
0-49: 심각한 오류 또는 신뢰성 부족
```

### 2-2. 자동 검증
```
AI 기반 검증:
- 사실 확인 (웹 검색)
- 논리 일관성 검사
- 시간 민감도 평가
- 출처 신뢰도 평가
```

---

## 3. 완전성 평가

### 3-1. 요구사항 체크리스트

```
사용자 요청 항목별 충족도:

요청: "블로그 글 작성 (SEO 최적화)"
[ ] 제목 (메인 키워드 포함)
[ ] 메타 디스크립션
[ ] 본문 (2,000자 이상)
[ ] 내부 링크 (3개 이상)
[ ] 외부 링크 (2개 이상)
[ ] 이미지 제안 (섹션별)
[ ] CTA (클릭 유도)

충족 항목 수 / 전체 항목 수 = 완전성 %
```

### 3-2. 깊이 평가
```
기본 완전성: 60점
  + 예시 추가: +10점
  + 시각화 제안: +10점
  + 대안 제시: +10점
  + 추가 참고자료: +10점
→ 최대 100점
```

---

## 4. 실용성 평가

### 4-1. 실행 가능성 점검

```
[ ] 단계별 설명이 명확한가?
[ ] 필수 도구/리소스 명시되었는가?
[ ] 소요 시간 예상치가 있는가?
[ ] 예상 결과가 명확한가?
[ ] 예외 케이스 처리가 있는가?
[ ] 성공/실패 기준이 명확한가?

점수:
90-100: 모두 충족 + 비용 추정치 있음
70-89: 대부분 충족
50-69: 절반 이상 충족
0-49: 부족하거나 불명확
```

### 4-2. 맥락 반영도
```
[ ] 사용자의 현 상황 파악했는가?
[ ] 업계/산업 특성 반영했는가?
[ ] 조직 규모 맞게 제안했는가?
[ ] 예산 수준 고려했는가?
[ ] 기술 수준 고려했는가?

점수:
90-100: 5개 모두 반영
70-89: 4개 반영
50-69: 3개 반영
0-49: 2개 이하
```

---

## 5. 톤 적합성 평가

### 5-1. 톤 요소별 평가

```
사용자 프로필 톤: "professional yet approachable"

요소별 체크:
[ ] 어휘 수준 적절 (너무 기술적이거나 너무 단순하지 않음)
[ ] 문장 길이 적절 (10~20자 평균)
[ ] 이모지/특수문자 사용 적절
[ ] 첫 인상 신뢰도 (타사 대비 경쟁력)
[ ] 호칭/경어 일관성
[ ] 유머/따뜻함 정도

채점:
90-100: 완벽하게 일치
70-89: 대체로 일치, 1-2개 요소 조정 필요
50-69: 부분 일치, 3-4개 요소 조정 필요
0-49: 거의 일치하지 않음
```

### 5-2. 일관성 검사
```
[ ] 문단별 톤이 일관적인가?
[ ] 용어 선택이 일관적인가? (예: "고객" vs "클라이언트")
[ ] 스타일이 회사 브랜드 톤과 맞는가?
[ ] 시간 경과에 따라 톤 변화 있는가?
```

---

## 6. 도메인 적합성 평가

### 6-1. 산업/업계 맥락 체크

```
사용자 산업: IT/소프트웨어 (예시)

[ ] 언어: 해당 산업의 전문용어 정확 사용
[ ] 사례: 산업 내 실제 사례/모범 사례 포함
[ ] 규제: 해당 산업의 규제 요건 반영 (금융감독, 보안, 개인정보 등)
[ ] 도구/플랫폼: 산업에서 일반적으로 사용하는 도구 명시
[ ] 타이밍: 산업 사이클/시즌 고려
[ ] 경쟁: 경쟁사 동향 또는 산업 트렌드 반영
[ ] 우려사항: 산업 특화 리스크/과제 언급
[ ] 역할 매칭: 사용자 역할에 맞는 관점과 책임 범위

점수:
90-100: 8개 모두 충족
70-89: 6-7개 충족
50-69: 4-5개 충족
0-49: 3개 이하
```

### 6-2. 회사 규모 맥락
```
[ ] 회사 규모별 현실성 (1인 vs 1000명 기업)
[ ] 예산 제약 고려 (스타트업 vs 대기업)
[ ] 성숙도 단계 맞춤 (초기/성장/안정)
[ ] 기술 수준 고려
```

---

## 7. 등급 매핑

### 7-1. 최종 점수 → 등급

```
평가 점수 (가중평균) → 등급

S등급 (95-100): 탁월함
A등급 (85-94): 우수함
B등급 (75-84): 양호함
C등급 (65-74): 보통
D등급 (0-64): 미흡

예시 계산:
정확성: 92 × 0.20 = 18.4
완전성: 88 × 0.25 = 22.0
실용성: 85 × 0.25 = 21.25
톤적합성: 80 × 0.15 = 12.0
도메인적합성: 87 × 0.15 = 13.05
────────────────────────
합계: 86.7 → A등급 (우수)
```

---

## 8. 개선 제안 생성

### 8-1. 자동 개선안

평가 후 산출물에서 개선이 필요한 부분을 자연스럽게 제안한다:

```
A등급 수준:
"훌륭한 결과입니다! 특히 {최고 차원}이 돋보였습니다."

B등급 수준:
"좋습니다. 다음 항목 개선을 제안합니다:
1. {개선점 1}
2. {개선점 2}"

C등급 이하:
"다음 항목 개선이 필요합니다:
1. {심각한 문제}
재작업 후 다시 평가하겠습니다."
```

---

## 9. 피드백 수집 (/project evolve 전용)

<!-- 매 실행 후 강제 피드백 수집 제거: 사용자 피로 유발. -->
<!-- 피드백은 /project evolve 실행 시에만 소크라테스식으로 수집. -->

`/project evolve` 실행 시에만 아래 소크라테스식 피드백 수집을 수행한다.

```
[유용성 탐색] "이 결과에서 가장 도움이 된 부분은 어디인가요?"
[기대 대비]  "기대하셨던 것과 다른 부분이 있었나요?"
[개선 방향]  "다음에 같은 작업을 한다면 어떤 점을 바꾸면 좋을까요?"

적용 규칙:
  - 질문은 최대 2개 (피로 방지)
  - 사용자가 간단히 답하면 추가 질문 하지 않음
  - 수집된 피드백을 evolution-protocol.md의 패턴 발견 입력으로 활용
```

