표준답변 품질 기준점 — 승인·게이트·버전 정본
최초 작성 — 2026-06-23 · 기획자(planner)
세 전문가(IT·CS·QA) 기여물을 종합·정제한 품질·승인 기준점 단일 정본.
수집·분류·승인 프로세스는 STANDARD-ANSWER-CURATION.md가 정본이다.
이 문서는 각 상태 전이의 통과 조건(품질 게이트) 과 버전 규칙을 구체화한다.이 문서가 해소하는 미정 항목:
- STANDARD-ANSWER-CURATION.md §3-4 미정 TODO T3 (approved 수정·버전 규칙)
- STANDARD-ANSWER-CURATION.md §7-2 T3 (세부 규칙)
→ CURATION.md §3-4와 §7-2(T3)에 "→ STANDARD-ANSWER-QUALITY.md §6으로 해소" 교차링크를 추가해야 한다(정합 §10).
1. 개요·목적·범위
1-1. 원칙
표준답변(hp_standard_answer)은 챗봇 1순위 응답 소스(FR-1 AC-1.2)다. 따라서 approval_status='approved'로의 전이는 단순 관리 액션이 아닌 품질 보증 선언이다.
승인 = 품질 보증. 승인된 표준답변은 자동으로 챗봇에 노출되므로, 게이트를 통과하지 못한 답변이 승인 상태에 진입하는 것은 허용되지 않는다.
1-2. 적용 범위
| 포함 | 제외 |
|---|---|
hp_standard_answer Q&A 품질 기준 | hp_announce 안내글(공유하는 승인 워크플로는 준용, 톤·구조 기준 차이는 해당 문서 운영) |
| 상태 게이트별 통과 조건 | 챗봇 매칭 알고리즘·파이프라인(FR-1) |
| approved 버전 규칙(오타 vs 의미 변경) | 중복 감지·병합 정책(CURATION §4) |
| reject 사유 표준 코드 | PII·비공개 세부 규칙(재정의 금지 — §8로 위임) |
| 품질 점수 체계 및 한계 | DDL·인덱스·코드 구현(dba/api/admin 핸드오프 §10) |
1-3. 분류 정본 참조
| 축 | 정본 | 건수 |
|---|---|---|
토픽(topic_id) | TOPIC-CATALOG.md | 24토픽(common 20 + service 4) |
서비스(service_id) | PMS-INQUIRY-HARVEST.md §4-2 | 7서비스(OTT·범용·글로벌·공공·유지보수·환급·독립) |
2. 품질 차원별 합격 기준
qa-eval 5축 정본: A 응답속도 · B 정확성 · C 명확성 · D 표준화 가능성 · E 친절도·태도
표준답변에 A(응답속도) 미적용. 표준답변은 텍스트 자산이며 실시간 생성이 아니므로 A축은 평가 대상 외다. B·C·D·E 4축으로 평가한다.
① B축 — 정확성
| 코드 | 기준 | 합격 조건 |
|---|---|---|
| B1 | 사실 정확성 | 언급된 모든 기능·절차·수치가 현행 제품·정책과 일치 |
| B2 | 출처 정합성 | 주장의 근거가 자료(hp_material) 또는 확인 가능한 공개 정책에 있음 |
| B3 | 범위 이탈 없음 | 질문이 요구하지 않는 정보를 추가 단언하지 않음 |
| B4 | 추측·단정 금지 | "~일 것입니다", "아마도" 류의 추측 표현 없음; 불확실하면 에스컬레이션 안내 |
| B5 | 버전·날짜 정합 | 특정 버전·기간을 언급 시 현행 기준이거나 유효 범위 명시 |
합격 임계: B 평균 4점 이상(5점 만점), B1 단독 3점 이하는 자동 반려.
② 완전성
| 기준 | 합격 조건 |
|---|---|
| 핵심 시나리오 포함 | 질문의 주된 케이스를 누락 없이 다룸 |
| 예외·주의 안내 | 흔한 실패 케이스나 주의사항이 있으면 1줄 이상 언급 |
| 다음 단계 안내 | 독립 해결 불가 시 다음 행동(관리자 문의·에스컬레이션 경로) 제시 |
| 길이 적절성 | 해결에 필요한 정보를 담되 300자 이하 단답형이 답이면 장황한 서술 불필요 |
완전성은 별도 점수축을 두지 않고 B2·C축 항목에 흡수한다.
③ C축 — 명확성·가독성
| 코드 | 기준 | 합격 조건 |
|---|---|---|
| C1 | 문장 명료성 | 한 문장에 두 가지 이상 의미를 담지 않음; 중의적 표현 없음 |
| C2 | 단계 번호화 | 3단계 이상 절차는 번호 목록으로 분리 |
| C3 | 전문용어 설명 | 일반 사용자가 모를 수 있는 약어·내부 용어는 괄호로 풀어씀 |
| C4 | 시각 구조 | 제목·목록·강조(**굵게**)가 정보 위계를 반영; 무분별한 마크업 남용 없음 |
| C5 | 200자 규칙 | 단일 단락이 200자를 초과하면 분단 또는 목록으로 쪼갬 |
합격 임계: C 평균 4점 이상(5점 만점)
④ E축 — 톤·격식
표준답변은 기본 격식체(존댓말) 를 기준으로 한다. 아래 3가지 톤 유형이 있으며, 각 답변의 분류·용도에 맞는 톤을 선택해야 한다.
| 톤 유형 | 용도 | 핵심 특징 |
|---|---|---|
| 기본 | 일반 절차·기능 안내 | 중립·명확·간결. 과잉 친절 표현 없음 |
| 공감·사과 | 오류·장애·환불 거절 상황 | 불편 공감 선행(1문장), 사실 안내 후행. 과도한 사과 반복 없음 |
| 격식 | 계약·공공·법령·공식 정책 안내 | 경어체 강화, 비공식 축약어·구어체 배제 |
| 코드 | 기준 | 합격 조건 |
|---|---|---|
| E1 | 존댓말 일관성 | 전체 답변에서 경어·반말 혼용 없음 |
| E2 | 톤 적절성 | 분류·상황에 맞는 톤 유형 선택(위 표) |
| E3 | 과잉 표현 배제 | "최선을 다하겠습니다" 류 공허한 다짐·과도한 고객 칭찬 없음 |
| E4 | 부정·책임전가 어조 배제 | "저희는 책임이 없습니다", "원칙적으로 불가능합니다" 류 단정적 부정 없음 |
| E5 | 고객관점 언어 | 내부 시스템 명칭·직원 간 약어를 고객이 이해할 수 있는 언어로 변환 |
합격 임계: E 평균 3점 이상(5점 만점)
⑤ D축 — 구조·마크업
D축은 "이 답변이 챗봇 응답으로 재사용 가능한 형태인가"를 평가한다.
| 코드 | 기준 | 합격 조건 |
|---|---|---|
| D1 | 스타일 적합성 | §9 D축 6스타일 중 하나에 해당(혼합 사용 시 명시) |
| D2 | 마크다운 안전성 | 렌더링 환경에서 깨지는 특수문자·HTML 태그 미사용. 표·이미지는 챗봇 렌더링 지원 여부 확인 후 사용 |
| D3 | 이미지 URL 정규화 | 인용 이미지는 절대 URL(PMS_ASSET_BASE 기반). 상대 경로 없음 |
| D4 | 재사용 가능성 | 특정 날짜·1회성 이벤트·특정 고객사 고유 조건에 묶이지 않음 |
합격 임계: D 평균 3점 이상(5점 만점)
⑥ 분류·라벨 정합
| 기준 | 합격 조건 |
|---|---|
| topic_id 지정 | reviewing 진입 전 topic_id가 24토픽 카탈로그 내 값으로 지정됨 |
| scope·service_id 정합 | scope='service'이면 service_id가 7서비스 중 하나; scope='common'이면 service_id=NULL |
| 라벨 의미 정합 | 지정된 topic이 답변 본문이 실제 다루는 주제와 일치 |
분류가 미지정(topic_id=NULL)인 채 reviewing으로 전이하는 것은 원칙적으로 허용하지 않는다. 단, 긴급한 경우 reviewing 진입을 허용하되 approved 전이 전까지 분류 필수 지정(CK-5 참조).
⑦ 최신성
| 기준 | 합격 조건 |
|---|---|
| F1 — 마지막 검증일 | last_verified_at이 180일(6개월) 이내. 초과 시 재검증 필요 신호 |
| F2 — 제품 버전 정합 | 언급한 기능·UI가 현행 제품에 존재함을 확인 |
| F3 — 외부 정책 정합 | 법령·외부 규격(고용보험법·공공조달 요건 등) 언급 시 최신 시행 조건 반영 |
| F4 — 무효화 신호 감지 | 제품 릴리즈·정책 변경 이벤트 발생 시 관련 approved 답변 재검증 큐에 자동 적재(후속 자동탐지 §8-2 참조) |
최신성 위반은 approved 상태에서도 archived 전이 사유가 된다(§4).
⑧ PII·비공개
이 항목은 P2-EXPOSURE-GUARD.md §4-2를 준용한다. 여기서 재정의하지 않는다.
reviewing→approved 전이 시 P2-EXPOSURE-GUARD §4-2 체크리스트 전 항목을 통과해야 한다. 구체적으로:
- 본문·이미지 캡션 PII 없음(또는 마스킹)
- 비공개 출처 파생 확인
- 고유식별정보(주민번호 등) 없음 — 있으면 승인 불가, 원천 제거 필수
- 이미지 보유 시
image_pii_status롤업이clear/removed/masked상태
3. 통합 승인 체크리스트
CK 항목 전체 통과 시에만
approved전이 가능. 자동(A) 항목은 api가, 수동(M) 항목은 승인자가 체크.
admin UI에서 M 항목은 필수 체크박스로 구현하며, 미체크 시 승인 버튼 비활성.
| # | 코드 | 구분 | 체크 항목 | 근거 |
|---|---|---|---|---|
| 1 | CK-1 | A | topic_id가 24토픽 카탈로그 내 유효값이다 | §2-⑥ |
| 2 | CK-2 | A | scope='service'이면 service_id가 지정됐고 7서비스 내 값이다 | §2-⑥ |
| 3 | CK-3 | A | B1(사실 정확성) 자동 신호 없음 — 버전 불일치 키워드(deprecated·구버전 UI명칭) 탐지 0건 | §2-① B1 |
| 4 | CK-4 | A | PII 패턴 매치 0건(또는 C1 자동 스캔 결과 승인자 확인 완료) | P2 §4-1 C1 |
| 5 | CK-5 | M | 지정된 topic이 본문 주제와 실제 일치함을 확인했다 | §2-⑥ |
| 6 | CK-6 | M | B1~B5 정확성을 검토했으며 현행 제품·정책과 일치한다 | §2-① |
| 7 | CK-7 | M | C1~C5 명확성·가독성이 합격 수준이다(C 평균 4점 이상) | §2-③ |
| 8 | CK-8 | M | E1~E5 톤·격식이 분류·상황에 적합하다(E 평균 3점 이상) | §2-④ |
| 9 | CK-9 | M | D1~D4 구조·마크업이 챗봇 렌더링에 안전하다 | §2-⑤ |
| 10 | CK-10 | M | 최신성 — last_verified_at 180일 이내 또는 이번 승인이 최신성 확인을 포함한다 | §2-⑦ F1 |
| 11 | CK-11 | M | 본문·이미지 캡션에 PII 없다(또는 마스킹 완료); 주민번호 등 고유식별정보 없다 | P2 §4-2 |
| 12 | CK-12 | M | 비공개 댓글(private_yn='Y') 파생 내용이 본문에 없다 | P2 §4-2 |
| 13 | CK-13 | M | (이미지 보유 시) 모든 인용 이미지의 image_pii_status ∈ clear/removed/masked다 | P2 §4-2 |
| 14 | CK-14 | M | 재사용 가능성 — 특정 날짜·단일 고객사 고유 조건에 묶이지 않는다 | §2-⑤ D4 |
4. 상태 게이트별 통과 조건
CURATION §3-3의 상태 다이어그램을 계승하며, 이 문서는 각 전이의 품질 게이트를 구체화한다.
(신규) → draft
- 게이트 없음. 모든 수집 진입점(PMS·suggestions·uncovered·자료)은 검증 없이
draft로 진입. approval_status='draft'저장 시 C1 자동 스캔 병행(PII 패턴·비공개 출처 플래그 세팅만, 저장 차단 아님).
draft → reviewing
| 조건 | 필수 여부 |
|---|---|
question·answer 본문 비어있지 않음 | 필수 |
topic_id 지정(NULL이면 경고, 진입은 허용) | 권고(단 approved 전 필수) |
| 작성자 본인 또는 developer/admin이 트리거 | 필수(권한, CURATION §1-3) |
이 전이는 "검토 준비 완료 선언"이며 품질 평가는 아직 일어나지 않는다.
reviewing → approved ← 핵심 게이트
CK-1~14 전항목 통과 시에만 전이 허용.
- A 항목(CK-1~4)은 api가 자동 검사 후 결과를 승인 화면에 표시.
- M 항목(CK-5~14)은 승인자(developer/admin)가 admin UI 체크박스를 직접 체크.
- 미체크 항목이 하나라도 있으면 승인 버튼 비활성.
- B1 단독 3점 이하 또는 PII 발견(마스킹 미완료) 는 자동 반려 사유 — 승인 시도 자체를 차단.
- 승인자·타임스탬프는
approved_by·approved_at·last_verified_at에 기록.
reviewing → rejected / draft → rejected
rejection_reason필수(비어있으면 전이 거부).- 사유는 §7 표준 코드(
ERR_*) 중 하나 이상 선택 + 자유 메모 허용.
approved → archived
- 트리거: (a) 신규본(
approved)으로 대체 시, (b) 180일 재검증 실패, (c) 제품 폐기 도메인. - 대체 보관 시
superseded_by_id에 신규본 id 기록. archived_reason기록(대체·노후·도메인폐기 중 선택).- archive 후 챗봇 노출에서 즉시 제외.
archived → reviewing (복원)
- developer/admin만 가능.
- 복원 시
last_verified_at초기화 → 재검증 필수.
5. 품질 점수 임계 및 한계
5-1. 점수 임계 (5점 만점 각 축)
| 축 | 임계 | 위반 시 |
|---|---|---|
| B(정확성) | 평균 4점 이상, B1 단독 최소 4점 | 자동 반려 불가 — 승인자 M 체크 필수. B1 단독 3점 이하는 즉각 반려 |
| C(명확성) | 평균 4점 이상 | 반려 권고; 승인자가 수정 후 재제출 요청 |
| D(표준화) | 평균 3점 이상 | 반려 권고 |
| E(친절도·태도) | 평균 3점 이상 | 반려 권고 |
5-2. 운영 전제
- 교차 채점: 단일 평가자 편향을 줄이기 위해 경영진/CS 리드가 월 1회 무작위 표본(최소 10건)을 2인 독립 채점 후 평균.
- 점수 임계의 가정: 위 임계(B·C≥4, D·E≥3)는 현행 가정이다. 운영 3개월 후 챗봇 채택률·사용자 만족도 데이터로 재보정.
- A축(응답속도) 비적용 근거: 표준답변은 저장된 텍스트 자산으로 실시간 생성 지연이 없다. A축은 Phase 2 챗봇 응답 품질 평가(LLM 생성 답변)에서 사용한다.
- 자동 평가 한계: B1·B2 정확성·최신성은 자동 신호(버전 키워드 탐지·
last_verified_at)로 후보를 가릴 뿐이며, 실제 사실 확인은 사람 평가가 필요하다. 자동 "합격"은 없다.
6. approved 수정·버전 규칙
CURATION §3-4 미정 TODO T3을 이 섹션에서 확정·해소한다. → CURATION.md §3-4와 §7-2(T3)에 "→ STANDARD-ANSWER-QUALITY.md §6으로 해소" 교차링크 추가 필요.
6-1. 수정 유형 분류
| 유형 | 정의 | 경계 기준 |
|---|---|---|
| 오타·표기 수정 | 맞춤법 오류, 오탈자, 마크다운 깨짐, URL 정규화 | 의미·내용·절차·수치가 변경되지 않음 |
| 의미 변경 | 절차 단계 추가/삭제/재순서, 수치·조건 변경, 정책 반영, 주제 확장/축소 | 답변을 읽은 사용자의 행동이 달라질 수 있는 모든 변경 |
경계 판정 원칙: 판단이 모호하면 의미 변경으로 처리한다(보수 원칙). 예시:
| 예시 변경 | 판정 | 이유 |
|---|---|---|
| "로그인" → "로그인하기" | 오타 수정 | 의미 동일 |
| "3일" → "5일" | 의미 변경 | 수치 변경 |
| 단계 순서 재배치 | 의미 변경 | 행동 순서 달라짐 |
| URL 상대경로 → 절대경로 | 오타 수정 | 동일 자원, 형식만 교정 |
| 예외 케이스 1줄 추가 | 의미 변경 | 정보 추가 |
마크다운 * → ** 강조 수정 | 오타 수정 | 의미 동일, 표시 형식만 |
6-2. 오타 수정 처리 (in-place)
approved 상태 in-place 수정 (원자적 전이)
1. approved → reviewing (즉시, 자동)
2. 수정 적용
3. CK 체크리스트 재확인(오타 수정은 간소 — CK-6~9 재확인 필수, 나머지는 변경 없으면 생략)
4. reviewing → approved (승인자 재승인)
- 수정 중 상태는
reviewing이므로 챗봇에서 잠시 제외된다. updated_at갱신,last_verified_at갱신.- 동일
idrow 유지(새 row 생성 없음).
6-3. 의미 변경 처리 (new row)
의미 변경 처리 (원자적 전이, 단일 트랜잭션)
1. 신규 row INSERT (approval_status='draft', supersedes_id = 기존 id)
2. 기존 row: approved → archived (archived_reason='superseded', superseded_by_id = 신규 id)
→ 두 전이는 동일 트랜잭션으로(중간 상태 없음)
3. 신규 row: draft → reviewing → approved (정규 승인 절차)
- 기존 row는
archived로 보관(삭제 아님) — HP-SCHEMA §1-6 버전 보존 원칙 계승. superseded_by_id(신규 id)와supersedes_id(구 id) 양방향 링크 — 역추적 가능.- 신규 row가
approved되기 전까지 기존 row가approved유지 또는 즉시 archive 중 선택:- 권고: 즉시 archive. 의미가 다른 두 버전이 동시에
approved이면 챗봇이 양쪽을 모두 매칭해 일관성을 해친다. 신규본이approved되는 기간 동안 해당 주제 챗봇 응답이 빈다는 의도적 트레이드오프다. - 예외: 챗봇 공백이 허용되지 않는 핵심 토픽(결제·오류)이라면 신규본 승인 완료 후 구본 archive. 이 경우 승인자가 CK-5 단계에서 명시.
- 권고: 즉시 archive. 의미가 다른 두 버전이 동시에
6-4. 버전 링크 컬럼 요약 (dba §10 참조)
| 컬럼 | 의미 |
|---|---|
supersedes_id | 이 row가 대체하는 구 버전 id |
superseded_by_id | 이 row를 대체한 신 버전 id (archive 시 기록) |
archived_reason | superseded / outdated / domain_closed |
7. reject 사유 표준 코드
반려(reviewing→rejected 또는 draft→rejected) 시 rejection_reason에 기록. ERR_* 코드(IT 시스템 관점)와 고객관점 사유(CS 관점)를 단일 표로 통합.
| 코드 | 명칭 | 설명 | 고객관점 사유 | 재작업 방향 |
|---|---|---|---|---|
| ERR_FACT | 사실 오류 | B1·B2 위반 — 잘못된 기능/절차/수치 | 잘못된 안내로 고객 혼란 야기 | 제품·정책 재확인 후 수정 |
| ERR_OUTDATED | 최신성 부재 | 폐기된 UI명칭·구버전 절차·만료 정책 언급 | 존재하지 않는 메뉴를 안내 | 현행 버전 기준으로 재작성 |
| ERR_SCOPE | 범위 이탈 | B3 위반 — 질문이 묻지 않은 단언 또는 범위 초과 | 관련 없는 정보로 고객 혼란 | 질문 범위로 내용 축소 |
| ERR_SPECULATIVE | 추측·단정 | B4 위반 — 확인되지 않은 추측 표현 | 틀릴 수 있는 정보를 사실처럼 안내 | 불확실 사항은 에스컬레이션 안내로 교체 |
| ERR_UNCLEAR | 불명확·가독성 | C1~C5 위반 — 중의적 표현·구조 없는 장문 | 읽어도 무엇을 해야 할지 모름 | 단계 번호화·문장 분리·전문용어 풀어쓰기 |
| ERR_TONE | 톤·격식 불일치 | E1~E5 위반 — 혼용 경어·과잉 다짐·부정 어조 | 불쾌하거나 도움 안 되는 말투 | 해당 톤 유형(§2-④)으로 재작성 |
| ERR_MARKUP | 마크업 오류 | D2·D3 위반 — 렌더링 깨짐·상대 경로 이미지 | 화면에 깨진 글자/이미지 | URL 절대경로 변환, 마크다운 수정 |
| ERR_CLASSIFY | 분류 불일치 | CK-1·2·5 위반 — topic/service 지정 오류 또는 미지정 | (직접 고객 영향 없음) | 24토픽·7서비스 카탈로그 재확인 후 재지정 |
| ERR_PII | PII·비공개 포함 | P2 §4-2 위반 — 개인정보·비공개 파생 내용 | 타인 개인정보 노출 위험 | PII 제거·마스킹 또는 일반화 재작성 후 P2 게이트 재통과 |
| ERR_REUSE | 재사용성 부족 | D4 위반 — 특정 날짜·고객사에 묶인 1회성 내용 | 다른 고객에게는 맞지 않는 안내 | 일반화 재작성 또는 hp_announce(안내글)로 이관 |
| ERR_INCOMPLETE | 완전성 부족 | 핵심 시나리오 누락·다음 단계 안내 없음 | 문제 해결 못 하고 추가 문의 발생 | 누락 케이스 추가, 에스컬레이션 경로 명시 |
| ERR_DUPLICATE | 중복 | 동일 topic에 이미 approved 표준답변이 존재 | (직접 고객 영향 없음) | 기존 답변 편집 병합 또는 이 row soft-delete |
코드가 겹치는 복합 오류는 해당 코드를 콤마로 나열(예:
ERR_FACT,ERR_OUTDATED).
코드 없이 자유 메모만 입력하는 것은 허용되지 않는다(자유 메모는 코드 선택 후 추가 설명으로).
8. 회귀·유지 점검
8-1. 정기 재검증 주기
| 대상 | 주기 | 기준 |
|---|---|---|
| 전체 approved | 6개월(180일) | last_verified_at < now - 180d → 재검증 큐 자동 적재 |
| 핵심 토픽(결제·오류·로그인·수료증) | 3개월(90일) | 제품 릴리즈 주기와 동기 |
| service 토픽(고용보험·공공조달) | 연 1회(관련 법령 개정 기준) | 법령·정책 사이클에 맞춤 |
| 신규 제품 릴리즈 시 | 릴리즈 직후 | 관련 토픽 approved 전체 재검증 큐 |
last_verified_at은 승인 시점 및 재검증 확인 시점에 갱신한다.
8-2. 자동 탐지 후보
아래는 Phase 2 이후 도입을 목표로 하는 자동 신호 탐지 목록이다. Phase 1에서는 수동 점검으로 대체.
| 신호 코드 | 내용 | 탐지 방법 | 대응 |
|---|---|---|---|
| S1 | 챗봇 저채택 approved 답변 | usage_count=0 AND last_used_at < now-90d | 재검토·archive 후보 큐 |
| S2 | 버전 불일치 키워드 포함 | 답변 본문에 폐기된 메뉴명·deprecated 기능 키워드 탐지(운영 설정 키워드 목록) | ERR_OUTDATED 반려 후보 |
| S3 | 고채택 rejected 답변 | usage_count > threshold AND approval_status='rejected' — 반려됐지만 과거에 많이 채택됐던 경우 | 재검토 우선 대상 |
| S4 | PII 패턴 신규 감지 | pii_patterns 정규식 보강 후 기존 approved 재스캔 | 재검증 큐 강제 적재 |
| S5 | last_verified_at 경과 | 주기 도달 | 재검증 큐 |
| S6 | 연관 자료(hp_material) 업데이트 | 동일 topic의 자료가 갱신되면 approved 표준답변 체크 신호 | 관련 approved 답변 재검증 큐 |
9. D축 6스타일 선택 가이드
표준답변 작성 시 목적·내용에 맞는 스타일을 먼저 선택하고, 그 형식에 맞게 구조화한다.
| 스타일 | 코드 | 용도 | 길이 | 구조 특징 |
|---|---|---|---|---|
| 짧은 답변 | D-S | 단순 사실 확인·단답형 | ~150자 | 1~2문장, 구조 없음 |
| 긴 설명 | D-L | 배경·개념 설명이 필요한 복잡 주제 | 400~800자 | 소제목 + 단락 구분 |
| 친절 안내 | D-F | 오류·불편·민감 상황(공감·사과 톤 동반) | 200~400자 | 공감 1문장 → 사실 → 다음 단계 |
| 비즈니스·격식 | D-B | 계약·법령·공공·공식 정책 안내 | 300~600자 | 경어체 강화, 번호 목록, 참조 명시 |
| FAQ 형식 | D-Q | 자주 묻는 변형 질문을 한 번에 | 400~700자 | Q1/A1, Q2/A2 쌍 구조 |
| 단계별 절차 | D-P | 3단계 이상 순서가 있는 작업 | 250~600자 | 번호 순서 목록 필수, 각 단계 1줄 |
선택 기준 플로우:
- 절차가 3단계 이상인가? → D-P
- 공감·사과가 필요한 오류/환불/불편 상황인가? → D-F
- 계약·법령·공공기관 대상인가? → D-B
- 자주 묻는 변형이 3개 이상인가? → D-Q
- 배경·개념 설명이 필요한가? → D-L
- 위 모두 아니면 → D-S
혼합 사용(예: D-P + D-F)은 허용하되, 지배적 스타일 코드를 tags에 명시(예: ["style:D-P"]).
10. 정합·후속 핸드오프
10-1. CURATION.md 교차링크 추가 (기획 — 즉시)
| 위치 | 추가 내용 |
|---|---|
| CURATION §3-4 마지막 줄 | → 세부 규칙: [STANDARD-ANSWER-QUALITY.md §6](./STANDARD-ANSWER-QUALITY.md#6-approved-수정버전-규칙)으로 해소 (2026-06-23) |
| CURATION §7-2 T3 행 | (해소) → STANDARD-ANSWER-QUALITY.md §6 참조 |
10-2. dba — 스키마 보강 요청 (003/004 마이그레이션 후보)
hp_standard_answer 및 hp_announce에 아래 컬럼 추가. CURATION §9-A에서 요청한 컬럼 외 이 문서에서 추가 요청하는 항목만 기재.
| 컬럼 | 타입(제안) | 이유 | 비고 |
|---|---|---|---|
last_verified_at | DATETIME NULL | 최신성 관리 §2-⑦ F1·§8-1 주기 기준 | 승인 시 approved_at으로 초기화, 재검증 시 갱신 |
archived_reason | ENUM('superseded','outdated','domain_closed') NULL | §4 archive 사유 영속화 | archive 전이 시 필수 기록 |
supersedes_id | INT NULL | §6-3 신규본 → 구본 링크 | 의미 변경 new row에 기록 |
superseded_by_id | INT NULL | §6-3 구본 → 신규본 링크 | archive 시 기록 (CURATION §9-A merged_into_id와 별개) |
qa_eval_b | TINYINT(1) NULL | B축 점수 저장(1~5) | 선택적 — 운영 중 평가 데이터 축적 시 도입 |
qa_eval_c | TINYINT(1) NULL | C축 점수 저장 | 동상 |
qa_eval_d | TINYINT(1) NULL | D축 점수 저장 | 동상 |
qa_eval_e | TINYINT(1) NULL | E축 점수 저장 | 동상 |
qa_eval_* 컬럼은 운영 초기에는 수동 입력·선택적 사용이며, Phase 2 이후 자동화 점수 파이프라인 연동 시 활성화한다. 도입 시기는 미정(dba와 추가 합의).
P2-EXPOSURE-GUARD.md §4-B에서 요청한 pii_text_status·private_source_flag·image_pii_status·pii_checked_by/at 컬럼은 P2 §4-B가 정본이며 이 문서에서 중복 요청하지 않는다.
10-3. api — 전이 시 자동 게이트 요청
| 기능 | 요건 |
|---|---|
PATCH /standard-answers/:id/transition | reviewing→approved 전이 시 CK-1~4(자동 항목) 검사 결과를 응답에 포함; 하나라도 실패하면 전이 거부 |
| approved→archived 원자적 처리 | §6-3 의미 변경 처리 — 신규 row INSERT + 구 row archive가 단일 트랜잭션으로 |
last_verified_at 갱신 | 승인·재검증 확인 시 자동 갱신 |
| 재검증 큐 조회 | GET /standard-answers?needsVerification=true — last_verified_at < now-180d AND approval_status='approved' 필터 |
| 자동 탐지 신호 | S1·S2·S5는 Phase 1 범위에서 단순 필터로 구현 가능. S3·S4·S6은 Phase 2 목표 |
10-4. admin — 승인 UI 요청
| 기능 | 요건 |
|---|---|
| CK 체크리스트 패널 | reviewing 상태 상세 화면에 CK-1~14 체크박스 표시. A 항목은 자동 결과 표시(수정 불가), M 항목은 승인자 체크 |
| 승인 버튼 비활성 조건 | M 항목 미체크 + CK-1~4 자동 실패 시 승인 버튼 비활성 |
| 반려 사유 선택 | §7 ERR_* 코드 다중 선택 드롭다운 + 자유 메모 입력 |
| 재검증 큐 배지 | 사이드바 또는 홈에 "재검증 필요 N건" 배지 |
| 버전 히스토리 | supersedes_id·superseded_by_id 기반 버전 체인 표시 |
11. 결정 사항 요약
| 결정 | 근거 | 섹션 |
|---|---|---|
| 표준답변 qa-eval 4축 적용(A 제외): B 정확성·C 명확성·D 표준화·E 친절도 | A(응답속도)는 텍스트 자산에 해당 없음 | §2 |
| 합격 임계: B·C ≥ 4, D·E ≥ 3 (5점 만점) | QA 기여물 기준, 운영 3개월 후 재보정 | §5-1 |
| B1 단독 3점 이하 = 즉각 반려 | 잘못된 정보의 챗봇 노출 방지 | §3 CK-3, §5-1 |
| CK-1~14 전항목 통과 시에만 approved | 품질 보증 = 승인 원칙 | §3, §4 |
| 오타 수정 = in-place (동일 row, reviewing 경유 재승인) | 이력 추적·버전 증식 억제 균형 | §6-2 |
| 의미 변경 = new row append + 구본 archive (원자적 트랜잭션) | HP-SCHEMA §1-6 버전 보존, 챗봇 일관성 | §6-3 |
| 의미 변경 시 기존 row 즉시 archive 권고 (동시 approved 방지) | 챗봇 중복 매칭·일관성 위협 방지 | §6-3 |
| reject 사유 코드 = ERR_* 12종 단일 표 통합 | IT ERR_*·CS 고객관점 사유 중복 제거 | §7 |
last_verified_at 180일 주기 재검증 | 최신성 부재 방지, §8-1 | §2-⑦, §8 |
| PII·비공개는 P2-EXPOSURE-GUARD §4-2 준용, 재정의 안 함 | 정본 분리 원칙 | §2-⑧ |
| CURATION §3-4 T3 해소 — §6으로 확정 | 미정 TODO 해소 | §6, §10-1 |
12. 알려진 한계·후속
- 점수 임계 재보정: 현 B·C≥4, D·E≥3은 운영 전 가정값. 채택률·사용자 피드백 데이터가 쌓이면 재보정.
- 자동 평가 미구현: B1 정확성·C 명확성의 자동 점수 산출은 현재 미구현. Phase 2 LLM 기반 평가 파이프라인 도입 시 자동화 가능.
- qa_eval_ 컬럼*: 도입 시기 미정(dba + 기획 추가 합의 필요).
- D-스타일 혼합 기준: 혼합 사용 시 "지배적 스타일"의 경계 판정이 주관적일 수 있음 — 운영 중 사례 축적 후 판정 가이드 보완.
- S3~S6 자동 탐지: Phase 2 목표. Phase 1에서는 수동 재검증으로 대체.
hp_announce준용: 이 문서의 기준은 Q&A에 최적화됐으며, 안내글(hp_announce)은 유효기간·말투 등 차이가 있으므로 별도 기준 보완 문서가 필요할 수 있다(미정 TODO).