Harden speaker identity samples
PR and Push Build/Test / build-and-test (push) Successful in 7m0s

This commit is contained in:
2026-05-28 12:02:44 +02:00
parent c84f8a984a
commit a72cda0c03
23 changed files with 1251 additions and 123 deletions
@@ -0,0 +1,24 @@
## 1. Specification
- [x] Add requirements for minimum uninterrupted speaker samples.
- [x] Add requirements for optional pyannote secondary validation.
## 2. Tests
- [x] Cover sample collection waiting for the configured minimum uninterrupted speech duration.
- [x] Cover sample collection resetting when another speaker interrupts.
- [x] Cover pyannote sample validation rejecting multi-speaker samples.
- [x] Cover pyannote match validation rejecting an Azure-confirmed match.
- [x] Update existing live matching tests to configure short samples where they intentionally exercise fast matching.
## 3. Implementation
- [x] Add speaker identification configuration for minimum sample duration and pyannote validation.
- [x] Refactor live sample collection to accumulate continuous same-speaker spans.
- [x] Add pyannote diarization reuse for speaker identity validation.
- [x] Add secondary validation into the identity matching pipeline.
## 4. Verification
- [x] Run focused speaker/transcription tests.
- [x] Run `openspec validate harden-speaker-samples-and-pyannote-validation --strict`.