Repository navigation
fix(voice): preserve thinking pauses and Android dictation - #705
ludovicfourrage wants to merge 2 commits into
Conversation
|
Thank you for this, and for the thorough description. This PR adds a Stop after silence setting (provider default, 3/6/15/30 s or Manual) so dictation survives thinking pauses. It also fixes a real bug: on master, tapping the mic during Claude dictation dropped the transcript, and with this change the final frame is kept. Two things on the Claude path need fixing before merge:
Smaller items, fine in the same push:
One question is open, and it is not one for you to change in this PR: Manual has no upper bound on the Deepgram and Web Speech paths (Claude streams still stop at the relay's 5 minute cap, Once the two Claude-path fixes are in, this goes back through review. |
|
Updated this branch with both requested Claude fixes and the smaller review items:
The update also includes the reporter-tested Chrome/Android correction for repeated transcripts, missing late final text, and speech activity bars. The reporter confirmed the deployed Android fix works. Manual's overall duration ceiling remains unchanged, as requested. Validation: 115 focused tests, three Chromium browser fixtures, typecheck, lint, frontend syntax, scoped formatting, and build passed. Independent review found no blocking issues. The browser speech service is simulated in automation; native Android confirmation comes from the reporter, and the additional Claude fixes have automated coverage. |
|
Thank you for the second round, and for covering every item from the first review with a test. This PR adds a Stop after silence setting (provider default, 3/6/15/30 s or Manual), keeps Claude dictation going across utterance endpoints until Stop, and reworks Web Speech so Chrome on Android no longer repeats growing phrases. Two things need fixing before merge:
Also in the same push:
Nits, optional:
The question from the first review is still open, and it is not one for you to change in this PR: Manual has no upper bound on the Deepgram and Web Speech paths, so a forgotten tab on Manual keeps streaming to Deepgram on the user's key. Whether Manual needs a ceiling there, and how long, is not settled. Once the test stubs and the empty-run cap are fixed and the branch is rebased, this goes back through review. |
Dictation should survive a thinking pause and keep the final words when the microphone is stopped. Chrome on Android also needs different native recognition handling: its continuous mode can turn growing partial phrases into repeated final results, producing a much longer transcript than was spoken.
This change adds Stop after silence in Voice settings: provider default, 3/6/15/30 seconds, or Manual. Provider default retains the 6-second Claude / 3-second Deepgram and Web Speech deadlines, but finalized phrases no longer stop Deepgram or Web Speech immediately.
Validation:
npm run typecheck,npm run lint,npm run check:frontend-syntax(46 files), scoped formatting checks, andnpm run buildpassed.