Velora 0.4.0 — file transcription, voice commands, big audit round
New
- Transcribe Audio File… (menubar): drop in a voice memo or meeting recording — transcribed locally in chunks with live progress, result copied to the clipboard and saved as a
<name> transcript.txtnext to the audio. A live dictation always takes priority; the job pauses and resumes around it. - Voice commands v1: say just "scratch that" / "undo that" to undo the last dictation, "new line" / "press enter" for Return, "new paragraph" for a blank line. Whole-utterance only — command words inside normal dictation are never intercepted. Toggle in Settings → Dictation.
- Usage stats in History: words today / all-time, estimated time saved vs typing, and your daily streak.
- Personal dictionary import/export (Settings → Dictation): move learned corrections + vocabulary between Macs as JSON.
Faster
finalno longer waits for the audio archive write — FLAC encoding moved off the stop→final path.- Fixed a potential multi-second stall at dictation start when the target app is busy (AX timeout).
More reliable (cross-vendor audit round — all P1 findings fixed)
- Switching audio devices mid-recording (AirPods connecting, mic unplugged) no longer silently kills capture — the recording just continues on the new device.
- Model switches refused by a busy engine no longer leave the Settings picker lying; engine state is authoritative.
- Fixed a config write race that could silently revert settings changed during a model download.
- History rows can no longer be silently dropped when background vocab mining reads the DB (sqlite busy timeout).
- Learned corrections: a one-off content edit (e.g. vercel→Netlify) can no longer become an instant global rewrite; genuine mishearings still learn on first sight.
- Undo command is keyboard-layout-safe (no ⌘W surprises on AZERTY), pastes are protected on slow Electron apps, plus a dozen smaller fixes.
196 engine tests + 49 app self-checks green. All local, zero network, as always.