문서

표준답변 토픽 정본 (hp_topic 카탈로그)

최초 작성 — 2026-06-18 · 기획자(planner) · hp_topic 토픽 정본

근거: TOPIC-CATALOG-DRAFT.md(api가 2022~2026 PMS 문의 43,614건·고객 26,636건 분석으로 도출한 26토픽 후보) 를 planner가 검토·확정한 정본.

이 문서는 STANDARD-ANSWER-CURATION.md §2-2·T1(hp_topic 정본)·T7(서비스 특화 토픽) 와 PMS-INQUIRY-HARVEST.md §5-5(토픽 LLM 분류 카탈로그 입력)·H7 의 토픽 축 정본이다. hp_service(서비스 축) 정본은 PMS-INQUIRY-HARVEST.md §4-2(7서비스)가 정본이며 본 문서와 직교(別축)다.


0. TL;DR

  • DRAFT 26토픽(common 22 + service 4)을 검토해 확정 24토픽(common 20 + service 4)으로 승격.
  • slug 컨벤션 = kebab-case ASCII로 통일. 002 시드의 단일어 slug(login/payment)는 폐기하고 서술형 kebab-case로 재시드(예: loginlogin-account).
  • 토픽 생성 범위 = 2022~2026 전 프로젝트(확정 — DRAFT 분석 대상과 동일).
  • 신규 고빈도 토픽 채택: homepage-design(빈도 2위급, 0.10)·member-management·notification-send·board-notice·remote-support·contract-quote·coupon-point·integration-api·mobile-access 등.
  • 병합·축소: payment-refund 통합 유지(일반 환불). global-lms·public-security 는 service로 유지하되 "약한 service 신호" 경고 태깅. DRAFT 26 → 24(아래 §3 변경 내역).
  • hp_topic 재시드 SQL(INSERT) 을 §4에 포함 — dba가 그대로 시드.

1. 확정 정책 (이 문서로 결정)

결정근거
slug 컨벤션kebab-case ASCII(서술형 허용)DRAFT 26토픽은 의미 분해가 세밀해 단일어로는 충돌·모호. catalog UI는 label(한글)을 보여주므로 slug는 식별성 우선. hp_topic.(scope,slug) UNIQUE(002)와 호환
002 단일어 slug폐기·재시드login/payment/refund/content/step 등 002 시드 10건은 목업 기준 가상값. 실데이터 기반 24토픽으로 재시드(§4)
토픽 생성 범위2022~2026 전 프로젝트(확정)DRAFT 분석 대상(43,614건)과 동일. CS·기획 합의
payment / refund 분리 여부통합(payment-refund)결제/환불 키워드가 제목에서 함께 출현(세금계산서·가상계좌 환불). 002의 분리는 가상값. 단 service refund-employment-insurance(고용보험 환급)는 동음이의로 별개 유지
global-lms·public-security scopeservice 유지 + 약신호 경고hp_service가 7서비스(global/public 포함)로 실체화돼 service 축이 존재. 다만 키워드가 common과 겹쳐 분류 시 common 토픽으로도 떨어질 수 있음 → 분류기 신뢰도 게이트(HARVEST §5-5)로 흡수
est_share참고값(우선순위용)LLM 키워드 빈도 추정. 합≈1 비보장. sort_order·운영 우선순위 산정에만 사용, 정밀 비중 아님

slug 변경의 파급: 002 시드를 쓰는 곳(아직 hp_standard_answer.topic_id 참조 미실체화 — CURATION §8-B)이 없어 재시드 데이터 유실 위험 낮음. dba는 §5 핸드오프 참조.


2. 토픽 정본 카탈로그 (24)

각 토픽: slug / scope / label / description / sort_order. scope: common=전 서비스 공통 / service=특정 서비스 도메인. sort_order는 10단위(운영 삽입 여유).

2-1. common 토픽 (20)

sortsluglabeldescriptionest_share
10payment-refund결제/환불결제·환불·세금계산서·가상계좌 처리0.11
20system-error시스템 오류접속 장애·서버 오류·에러 메시지0.11
30homepage-design홈페이지 관리메인·배너·메뉴·디자인 노출 수정0.10
40login-account로그인/회원가입ID·비밀번호·본인인증·계정 이슈0.085
50course-management강의 관리강의 등록·수정·삭제·자료 업로드0.07
60enrollment수강 관리수강신청·수강생 등록·수강완료/취소0.06
70member-management회원 관리회원정보 일괄·삭제·필수항목 변경0.05
80video-playback동영상 재생플레이어·인코딩·재생 오류(콜러스 등)0.05
90certificate수료증 관리수료증·수강확인증 발급·기준·양식0.04
100exam-evaluation시험/평가시험·평가·채점·문제은행·과제0.04
110board-notice게시판/공지공지·게시판·카테고리·팝업0.035
120site-domain사이트/도메인도메인·호스팅·서버·네임서버0.02
130notification-send알림/발송문자·SMS·메일·알림톡 발송0.02
140learning-progress학습 진행진도율·수강완료 처리·미수료0.015
150mobile-access모바일 접속모바일·앱·하이브리드앱·모바일 메뉴0.015
160remote-support원격지원원격지원·기술지원 요청0.01
170contract-quote계약/견적계약·견적·갱신·종료0.01
180coupon-point쿠폰/포인트쿠폰·포인트·할인코드0.01
190usage-guide사용법 안내매뉴얼·가이드·도움말0.01
200integration-api연동/APIAPI·SSO·SMS·뿌리오·카카오 연동0.005

2-2. service 토픽 (4)

sortsluglabeldescriptionest_share대상 서비스(hp_service)
10refund-employment-insurance환급/고용보험고용보험 환급과정·안전보건진흥원·본인인증0.03refund(환급)
20public-procurement공공/조달공공기관 조달·제출서류·약관·일괄등록0.015public(공공)
30global-lms글로벌 LMS영문페이지·영문 수료증·다국어0.015global(글로벌)
40ott-subscriptionOTT 서비스이용권·구독·자막·에피소드0.005ott(OTT)

scope 운영 메모(분류기 입력):

  • refund-employment-insurance·ott-subscription 은 도메인이 명확히 달라 service 근거 강함.
  • public-procurement·global-lms 는 키워드가 common 토픽(data-security성·홈페이지·수료증)과 겹친다. 약한 service 신호 — HARVEST §5-5 토픽 분류기는 본문에 "공공 조달/제출서류" 또는 "영문/다국어" 명시 신호가 있을 때만 이 service 토픽으로 떨어뜨리고, 그 외엔 common 토픽으로 분류(저신뢰 보류 게이트 적용).

2-3. DRAFT 대비 변경 내역 (26 → 24)

처리DRAFT slug결정근거
삭제(흡수)data-securitymember-management(개인정보 처리)·integration-api(보안 연동)·site-domain(백업/서버)로 분산est_share 0.01, common 다른 토픽과 신호 중복. 단독 토픽 유지 가치 낮음. 보안 특화 문의는 service public-procurement 또는 자유 tags:["보안"]
삭제(흡수)search-seohomepage-design(SEO·메타)·integration-api(애널리틱스 태그)로 분산est_share 0.005 최저. 단독 토픽 운영비 대비 빈도 낮음
renamepublic-securitypublic-procurementlabel "공공/조달"DRAFT public-security는 "보안"이 common과 겹쳐 혼동. 공공의 진짜 특화는 조달·제출서류·일괄등록이므로 slug/label을 조달 중심으로 명확화
유지(통합)payment-refund통합 유지§1 결정
유지(채택)homepage-design·member-management·notification-send·board-notice·remote-support·contract-quote·coupon-point·integration-api·mobile-access·learning-progress002 미수록 → 정본 채택실데이터 고빈도. 특히 homepage-design(0.10, 결제·오류 다음)

data-security·search-seo 2건은 삭제가 아니라 보류도 가능했으나, 빈도 최저(0.005~0.01)·신호 중복이라 토픽 증식 억제(분류기 정확도·운영 단순성) 원칙으로 흡수 처리. 운영 중 미커버 클러스터(CURATION §4-3)에서 해당 도메인 문의가 누적되면 그때 토픽 신설 검토.


3. 002 시드 → 정본 매핑 (재시드 대조표)

dba 재시드 시 002 기존 10토픽이 정본 24토픽으로 어떻게 매핑되는지(데이터 유실 점검용).

002 slug(scope)정본 slug(scope)처리
login(common)login-account(common)rename(회원가입 흡수)
enrollment(common)enrollment(common)유지(slug 동일)
payment(common)payment-refund(common)merge(refund 흡수)
refund(common)payment-refund(common)merge
certificate(common)certificate(common)유지
content(common)course-management + video-playback(common)split(세분)
schedule(common)learning-progress/enrollment로 분산흡수(단독 빈도 낮음)
technical(common)system-error(common)rename
step(service)(해당 없음)삭제 — STEP 서비스 문의 미관측, 002 가상값. hp_service에도 step 없음(7서비스로 재정의됨)
lms-global(service)global-lms(service)rename

데이터 유실 위험: hp_standard_answer.topic_id가 아직 002 토픽을 참조하지 않으므로(CURATION §8-B 분류 컬럼 미실체화) 재시드 시 FK 끊김 없음. 만약 운영 catalog에서 002 토픽에 이미 표준답변이 연결됐다면 dba가 위 매핑표로 topic_id UPDATE 후 재시드(§5 H-T2).


4. hp_topic 재시드 SQL (dba 시드 제안)

hp_topic 스키마(002 실체): id PK · slug · scope ENUM('common','service') · label · description · sort_order · active · status · (scope,slug) UNIQUE.

⚠ 본 SQL은 planner 제안이다. 002 기존 10토픽 정리 방식(soft-delete vs UPDATE rename)·실행은 dba가 §5 H-T1/H-T2 결정 후 확정한다. hp_topic DDL은 본 문서가 다루지 않는다(HP-SCHEMA = dba 소관).

-- 1) 002 기존 시드 정리 (dba 택1 — 권고: 매핑되는 것은 UPDATE rename, 나머지는 soft-delete)
--    예시(권고안): step 토픽은 미사용 가상값 → soft-delete
UPDATE hp_topic SET status = -1 WHERE scope = 'service' AND slug = 'step';

-- 2) 정본 24토픽 시드 (kebab-case ASCII)
--    (scope, slug) UNIQUE 이므로 ON DUPLICATE KEY로 멱등 시드.
INSERT INTO hp_topic (slug, scope, label, description, sort_order, active, status) VALUES
  -- common (20)
  ('payment-refund',     'common', '결제/환불',   '결제·환불·세금계산서·가상계좌 처리',     10, 1, 1),
  ('system-error',       'common', '시스템 오류', '접속 장애·서버 오류·에러 메시지',        20, 1, 1),
  ('homepage-design',    'common', '홈페이지 관리','메인·배너·메뉴·디자인 노출 수정',        30, 1, 1),
  ('login-account',      'common', '로그인/회원가입','ID·비밀번호·본인인증·계정 이슈',        40, 1, 1),
  ('course-management',  'common', '강의 관리',   '강의 등록·수정·삭제·자료 업로드',        50, 1, 1),
  ('enrollment',         'common', '수강 관리',   '수강신청·수강생 등록·수강완료/취소',     60, 1, 1),
  ('member-management',  'common', '회원 관리',   '회원정보 일괄·삭제·필수항목 변경',       70, 1, 1),
  ('video-playback',     'common', '동영상 재생', '플레이어·인코딩·재생 오류',              80, 1, 1),
  ('certificate',        'common', '수료증 관리', '수료증·수강확인증 발급·기준·양식',       90, 1, 1),
  ('exam-evaluation',    'common', '시험/평가',   '시험·평가·채점·문제은행·과제',          100, 1, 1),
  ('board-notice',       'common', '게시판/공지', '공지·게시판·카테고리·팝업',             110, 1, 1),
  ('site-domain',        'common', '사이트/도메인','도메인·호스팅·서버·네임서버',           120, 1, 1),
  ('notification-send',  'common', '알림/발송',   '문자·SMS·메일·알림톡 발송',             130, 1, 1),
  ('learning-progress',  'common', '학습 진행',   '진도율·수강완료 처리·미수료',           140, 1, 1),
  ('mobile-access',      'common', '모바일 접속', '모바일·앱·하이브리드앱·모바일 메뉴',     150, 1, 1),
  ('remote-support',     'common', '원격지원',    '원격지원·기술지원 요청',                160, 1, 1),
  ('contract-quote',     'common', '계약/견적',   '계약·견적·갱신·종료',                   170, 1, 1),
  ('coupon-point',       'common', '쿠폰/포인트', '쿠폰·포인트·할인코드',                  180, 1, 1),
  ('usage-guide',        'common', '사용법 안내', '매뉴얼·가이드·도움말',                  190, 1, 1),
  ('integration-api',    'common', '연동/API',    'API·SSO·SMS·뿌리오·카카오 연동',        200, 1, 1),
  -- service (4)
  ('refund-employment-insurance', 'service', '환급/고용보험', '고용보험 환급과정·안전보건진흥원·본인인증', 10, 1, 1),
  ('public-procurement',          'service', '공공/조달',     '공공기관 조달·제출서류·약관·일괄등록',       20, 1, 1),
  ('global-lms',                  'service', '글로벌 LMS',    '영문페이지·영문 수료증·다국어',              30, 1, 1),
  ('ott-subscription',            'service', 'OTT 서비스',    '이용권·구독·자막·에피소드',                  40, 1, 1)
ON DUPLICATE KEY UPDATE
  label = VALUES(label), description = VALUES(description),
  sort_order = VALUES(sort_order), active = VALUES(active), status = 1;

기계 판독용 JSON(분류기·시드 자동화 입력)은 TOPIC-CATALOG-DRAFT.md §2-3 을 본 정본 24토픽 기준으로 갱신해 재사용(api 토픽 분류기 §5-5 입력). DRAFT JSON에서 data-security·search-seo 제거, public-securitypublic-procurement 변경 반영.


5. 핸드오프 / 미정 TODO

5-1. 핸드오프

대상넘기는 것
dba§4 hp_topic 24토픽 재시드(002 10토픽 정리). 002→정본 매핑(§3)으로 topic_id 무참조 확인 후 실행. hp_topic DDL 무변경(컬럼 그대로)
api토픽 분류기(HARVEST §5-5 /pms/harvest/classify-topic) 카탈로그 입력을 24토픽으로. service 토픽 약신호 게이트(§2-2) 반영. catalog CRUD(/topics)는 변경 없음
admin/catalog 토픽 목록이 24토픽으로 자동 반영(재시드 후). ADMIN-PLAN §4-3-1 기본 topic 표(현행 domain/seo/it-general… 예시값)를 본 24토픽으로 현행화

5-2. 미정 TODO

#항목누가영향
T-T1002 기존 토픽 정리 방식 — soft-delete vs rename UPDATEdba§3·§4
T-T2운영 catalog에서 002 토픽에 연결된 표준답변 존재 여부 확인(있으면 매핑 UPDATE 선행)dba§3
T-T3public-procurement·global-lms service 유지 최종 확정(운영 1~2개월 후 분류 정확도로 재검)기획+api§2-2
T-T4흡수된 data-security·search-seo 도메인이 미커버 클러스터로 재부상 시 토픽 신설도메인 오너§2-3
T-T5est_share 정밀 비중이 필요하면 토픽별 키워드 매칭으로 별도 산정api§1

6. 정합·현행화

ID충돌현행화 방향
T-ACURATION §2-2·T1·T7 토픽 정본 미확정본 문서로 확정. CURATION §2-2 hp_topic 시드 표를 24토픽으로, T1을 "토픽=확정" 으로, T7(legal 토픽)을 "미채택 — service public-procurement/refund-employment-insurance로 법령 문의 수용" 으로 갱신
T-BHARVEST §5-5 토픽 분류 카탈로그 입력·H7 미확정본 24토픽이 분류기 입력. H7 해소
T-CADMIN-PLAN §4-3-1 기본 topic 표가 초기 예시값(domain/seo/it-general/account/payment/feature/legal/policy/pricing/integration)본 24토픽으로 현행화(admin 핸드오프)

본 문서 확정 시 CURATION T1·T7, HARVEST H7 이 해소된다. 큰 결정이므로 docs/history/history.20260618.md 에 누적.

Malgn Helper(고객상담 AI 챗봇) 프로젝트 문서·작업 이력