Name speakers from 1:1 participants and unique voiceprints - #7100
Merged
ComputelessComputer merged 5 commits intoAug 26, 2026
Conversation
When the participant list is just you plus one other person, label their remote/speaker turns instead of leaving them as Speaker 1. Do not guess when more people or speakers are present. Co-authored-by: John Jeong <ComputelessComputer@users.noreply.github.com>
✅ Deploy Preview for anarlog canceled.
|
Remember speakers is now on for anyone who has not opted out. After extracting embeddings, uniquely matching voices among this meeting's participants are assigned automatically. 1:1 meetings still use the participant list, and thin or colliding matches stay unlabeled. Co-authored-by: John Jeong <ComputelessComputer@users.noreply.github.com>
The persist loop was consuming the vectors, so assignment could not borrow them afterward. Co-authored-by: John Jeong <ComputelessComputer@users.noreply.github.com>
ComputelessComputer
marked this pull request as ready for review
August 26, 2026 01:39
Enhance now drops owner-email duplicates so a John + Marco meeting still has one remote candidate. Voiceprint assignment also retries from stored embeddings when extract has already run or the hints write races. Co-authored-by: John Jeong <ComputelessComputer@users.noreply.github.com>
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using default effort and found 2 potential issues.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 000e717. Configure here.
Keep assignment on the transcript snapshot used for extraction, abort if words change under a hints-write conflict, and skip stored candidates whose speaker keys no longer exist. Treat participant-row email as equivalent to human email when dropping calendar self-copies. Co-authored-by: John Jeong <ComputelessComputer@users.noreply.github.com>
ComputelessComputer
deleted the
cursor/auto-assign-one-on-one-speakers-b269
branch
August 27, 2026 06:32
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.

When a transcript has only you on the mic and one other participant, we should label their turns instead of leaving them as
Speaker 1. In larger meetings, named voiceprints should identify people only when the match is unique and high-confidence.The summary already inferred names (
Marco (Speaker 1)), but the transcript did not:Changes
human.email/participant.email, so a calendar copy whose address lives only on the participant row still drops from the remote count.words_jsonchanged), abort instead of labeling the wrong clusters. Stored candidates are skipped when their speaker keys are missing from the current transcript.Validation
pnpm -F desktop typecheckpnpm -F desktop exec vitest runon speaker-attribution, content-queries, content-mutations, and stt/queries testspnpm exec oxlint --quiet --format=githubon the changed desktop filespnpm exec dprint checkon the changed filescargo test -p tauri-plugin-transcriptioncould not run here (gdk-3.0.pcmissing)