Improve voice dictation reliability#3922
Conversation
# Conflicts: # src/main/speech/stt-service.ts # src/main/speech/stt-worker.ts # src/renderer/src/components/dictation/DictationController.tsx
Co-authored-by: Orca <help@stably.ai>
…, remove dead dictation-hold-release module) Co-authored-by: Orca <help@stably.ai>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
💤 Files with no reviewable changes (1)
📝 WalkthroughWalkthrough
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches📝 Generate docstrings
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Co-authored-by: Orca <help@stably.ai>
There was a problem hiding this comment.
Actionable comments posted: 1
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository UI
Review profile: CHILL
Plan: Pro
Run ID: a3537949-69b5-453d-a1d4-7843889fe344
📒 Files selected for processing (3)
src/main/speech/stt-service.test.tssrc/main/speech/stt-service.tssrc/main/speech/stt-worker-model-config.ts
Summary
stopped,error,exit, ortimeoutinstead of waiting indefinitely on worker termination, and tracks the in-flight stop so concurrent stop/teardown calls coordinate on the same worker rather than racing.ready, and harden the reuse fast-path against a stop that starts concurrently on the same warm worker.path.joininstead of hardcoded/separators (cross-platform).stoppingflag exception-safe so a failedpostMessagecan't permanently drop dictation audio.Checks
pnpm typecheck— passingpnpm exec vitest run src/main/speech/stt-service.test.ts— 22 passingpnpm lintruns in CI (local oxlint binary predates.oxlintrc.json's rule set, so the pre-commit lint hook can't run locally)Electron validation skipped by request.
Risk: medium — touches speech worker lifecycle in the main process.