fix: speaker gate only parks when a voice is actually unresolved - #161
Open
nixfred wants to merge 1 commit into
Open
fix: speaker gate only parks when a voice is actually unresolved#161nixfred wants to merge 1 commit into
nixfred wants to merge 1 commit into
Conversation
WHAT: after identify, the pipeline gated at awaiting_speaker_id unconditionally (unless the per-meeting skip flag was set) — even when every detected voice auto-matched the roster, and even when zero voices were detected. Now it gates only when at least one meeting speaker has no roster link; all-matched and zero-voice meetings flow straight through, re-merging real names exactly like the skip path does. WHY: the README promises 'name voices once and they're recognized across meetings' — but every meeting still demanded a Continue click, and a silent/zero-speech recording parked at a gate with nothing to name. Recurring-colleague workflows never become hands-free. The matcher's own confidence threshold already decides linkage, so low-confidence guesses still gate. TESTED: pipeline suite 10/10 — gate tests updated to model unresolved voices explicitly, plus new all-matched and zero-voice sail-through tests; verified live (identify matched 2/2 yet gated before the fix). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Fx2epy4XwaBS3S8Y5J7FX9
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The pipeline gated at
awaiting_speaker_idunconditionally unless the per-meeting skip flag was set — even when identify matched every voice to the roster (observed live:identify:done matched:2 total:2→ stillawaiting_user), and even for zero-voice recordings, which parked at a gate with nothing to name.Now the gate engages only when at least one meeting speaker has no roster link. All-matched meetings and zero-voice recordings flow straight through, re-merging real names into the transcript exactly like the skip path already does. The matcher's confidence threshold still decides linkage, so low-confidence guesses gate as before — this changes nothing about unknown voices, it just delivers on the README's 'name voices once and they're recognized across meetings' for known ones.
Testing: pipeline suite 10/10 — existing gate tests updated to model unresolved voices explicitly, plus new all-matched and zero-voice sail-through tests.
🤖 Generated with Claude Code
https://claude.ai/code/session_01Fx2epy4XwaBS3S8Y5J7FX9