Why I made the app refuse to guess a name
Jiva knows there are two people on a call long before it knows their names. Putting a real name on a voice too early is how you poison the record.
There is a temptation, once you have a working transcript, to fill in the names as fast as possible. Speaker 1 said this, Speaker 2 said that — surely I can read the calendar invite and label them. I decided, deliberately, to make the app refuse to do that until it has real evidence.
Here is why. The app knows there are two distinct voices on a call long before it knows whose voices they are. If it rushes to attach a name — from the invite, from a guess — it will sometimes attach the wrong one. And a wrong name is not a small error. It is the most damaging error a memory product can make, because you will believe it. You will go back months later, read that a specific person committed to a specific thing, and act on it, and it will be wrong.
Note that the primary driver here is not naming more lines, rather naming fewer lines wrongly. Precision over recall. So Jiva only puts a real name on a voice when the conversation and the voice identity actually corroborate it, and otherwise it leaves the speaker as a stable, un-named Speaker N. An honest “Speaker 2, consistently” beats a confident “Rahul” that is really two different people.
This is slower and it looks less finished. A demo where everyone is already named is more impressive than one with “Speaker 1” and “Speaker 2” sitting there. But the whole point of the product is a record you can trust a year from now, and you do not get that by guessing early. You get it by earning the name.
More soon.