← Docs hub

Speaker Identity Test Plan

이 문서는 화자 분리/인식 PoC를 서비스 레벨로 확장할 때 필요한 테스트 축을 정리한다. 테스트는 모델 정확도만 보지 않고, STT/diarization/identification/safety gate/Cloud A2A/memory/task manager를 단계별로 검증해야 한다.

Test Plan Overview

1. 테스트 계층

Test Layers

계층 검증 항목 성공 기준
Audio input sample rate, mono/stereo 변환 16kHz FloatArray 입력 정합성
Diarization speaker count, segment boundary 단일/다화자 구분
Identification speaker score, threshold 등록 화자 accepted, unknown rejected
Stability session/recent boost 연속 턴 흔들림 감소
Safety gate far/overlap/too many/low confidence 위험 상황 실행 차단
Cloud contract speaker_context payload 필드 누락 없이 전달
Memory speaker별 기록 분리 잘못된 사용자 기록 오염 없음
Task Manager owner/authority/side-effect gate 다른 speaker의 변경/취소 통제

2. 온디바이스 PoC 테스트

테스트 케이스:

케이스 입력 기대
등록 화자 1명 같은 사람 WAV 5개 등록 성공
미등록 화자 다른 사람 발화 unknown
동일 화자 연속 발화 20초 내 같은 speaker stability boost 적용
3명 이상 speakerCount >= 3 too many 안내
겹침 overlapRatio >= 0.35 overlap 안내
먼 거리 rms/hf_ratio 조건 distance 안내

3. Cloud A2A 계약 테스트

Contract Test Flow

확인 항목:

4. 메모리 분리 테스트

시나리오:

user_001: 내 방 청정해줘 -> 안방
user_002: 내 방 청정해줘 -> 아이방
unknown: 내 방 청정해줘 -> 어느 공간인지 확인

검증:

5. 복합명령 owner 테스트

시나리오:

user_001: 거실 청정하고 10분 뒤에 침실로 와
user_002: 그거 취소해

기대:

6. 릴리즈 게이트

Release Gate

릴리즈 전 최소 조건:

Keyboard shortcuts

⌘K / Ctrl+KOpen command palette
/Focus search
g hGo to home
g pGo to projects
g sGo to sessions
j / kNext / prev row (tables)
?Show this help
EscClose dialogs

Structured queries

Mix key:value filters with free text in the palette:

type:sessionOnly session pages
project:llm-wikiFilter by project name (substring)
model:claudeFilter by model name (substring)
date:>2026-03-01Sessions after a date
date:<2026-04-01Sessions before a date
tags:rustPages mentioning a tag/topic
sort:dateSort results by date (newest first)

Example: type:session project:llm-wiki date:>2026-04 sort:date