## 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`.