C-5 마스킹 보완 — 이름·번지 누락 0 · 어미·조사 과잉 제거 · 서버 골든 테스트 v1-150

무엇을

2026-09-17 로컬 E2E 에서 이름·번지가 원문으로 자막·DB 에 남았다(SEC-1 · 절대 원칙 3). 같은 날 골든셋 v1-150 규칙 채점도 누락 4·오분류 1 이었다. 누락을 막으려 규칙을 넓히면 자막이 지워지므로 누락과 과잉을 같은 측정으로 보면서 고쳤다.

담당: server/apps/masking 은 장민석 님 주 담당이다. decisions/302(server/ 누구나 고친다)에 따라 류준이 고쳤고, 다른 브랜치·진행 중 티켓에 겹치는 작업이 없음을 먼저 확인했다(origin/server 0커밋 앞섬). 검토는 장민석 님께 부탁한다. ai/apps/pii_ner(NER 겹)은 류준 몫이다.

고친 것

측정 (2026-09-17, 커밋 b73ca59 작업 트리, 로컬)

  고치기 전 고친 뒤 명령·표본
골든셋 v1-150 규칙만 누락 / 오분류 4 / 1 0 / 0 run_eval.py --runs 3 --no-ner · n=28
골든셋 v1-150 규칙+NER 누락 / 오분류 0 / 0 0 / 0 run_eval.py --runs 3 --ner-model models/koelectra-ner
오류 내성 곡선 규칙만 누락(WER 0/5/10/15/20%) 4·5·5·5·5 (09-15) 0·2·3·4·4 measure_error_tolerance.py --only masking · 판정 24 · 시드 3 최저
오류 내성 곡선 규칙+NER 누락 0·1·2·2·2 (09-15) 0·0·0·1·1 (GS-037) 같음 · 음성 과잉 0/4 유지
합성 대본 라벨 누락 / 과잉 턴 — 규칙만 11 / 8 0 / 0 scripts/persona_sim/dasan-v0 전 라벨
합성 대본 라벨 누락 / 과잉 턴 — 규칙+NER 3 / 9 0 / 0 같음
AI Hub 실제 발화에서 P6·P7 로 가려진 발화 — 규칙만 459 44 민원 질의응답 validation 다산 20,278건
같음 — 규칙+NER 538 91 같음

⚠ 마지막 두 줄은 라벨이 없다. 줄어든 것은 과잉이 줄었다는 근거이지 누락이 없다는 근거가 아니다 — 남은 44건 대부분은 진짜 주소(「강동구 명일동 000번지」·「101동 707호」)다. 누락은 라벨이 있는 골든셋·합성 대본으로만 말한다. 측정 스크립트는 세션 scratchpad mask_bench.py — 채택하면 scripts/ 로 옮긴다. ⚠ 골든셋 값은 규칙을 본 뒤의 값이라 상한이다. 합성 대본도 같은 사람이 만들었다.

완료 조건

2026-09-21 — 닫음 (내 몫 끝)

코드·측정·테스트는 09-17·18 에 끝났고 09-19 운영에 떠 있는 것이 확인됐다(정성윤 님 SSM). 남은 「장민석 님 검토」는 남의 몫이라 미결 항목에서 추적한다 — 검토에서 고칠 것이 나오면 새 티켓으로.


머지 주석 (2026-09-21, 정성윤) — 아래 「보드 최신화」는 위 닫음 기록(ai 11:06)과 거의 같은 시각(main 976f42e, 11:14)에 서로 못 본 채 따로 쓴 것이다. 상태는 front matter(done)가 맞고, 아래 메모의 「상태는 그대로」·「류준 님이 정한다」는 위 닫음으로 이미 답이 났다. 지우지 않고 남긴다(절대 원칙 8).


보드 최신화 (2026-09-21, 정성윤 — 사용자 지시로 전체 보드를 한 번에 맞췄다). 상태는 그대로 in-progress 다. 코드는 끝났고 운영에 떠 있다 — server:0.1.18 이후 · 서버 골든 테스트 73 passed(09-19) · 운영 구성 하네스 누락 0 · n 28(09-21). 09-20 운영 왕복에서 본 것은 전화번호(P4) 마스킹뿐이라 「이름·번지가 운영에서 가려지는가」는 아직 열려 있다. 「장민석 님 검토」는 w5-server-change-review로 묶었다. ⚠ 「누락 0」은 오류 없는 전사 한정이다 — STT 오류 5% 에서 2건 뚫린다(STATE.md 실측값). 규칙이 못 잡는 몫은 NER → w6-gpu-model-instance.