v0.26.2: The live transcript is back
Minutes 0.26.2 fixes a bug that left the live transcript empty, or nearly empty, during recordings on every release from 0.25.4 through 0.26.1. Recordings and the finished meeting notes were never affected; only the real-time transcript that agents and the Live panel read during a call. (#951)
What changed
Live transcript during recordings. Since 0.25.4 the recording sidecar passed a stop signal to whisper through a whisper-rs helper that misreads its own closure. Whisper aborted almost every pass before the first token, so a 21-minute call produced one line. The sidecar now installs the callback correctly. In a replay of that same call it produces 18 lines and 787 words where 0.26.1 produced 4 and 159. Standalone minutes live was never affected. (#951)
Honest status. live-transcript-status.json reported healthy for the entire outage. It now reports degraded, with a diagnostic, after 90 seconds of detected speech with no transcribed line; minutes transcript --status and the desktop surface the same diagnostic. (#952)
Diagnostics you can read after the call. The desktop app keeps no tracing output, so the sidecar's failures were invisible. Sidecar start, whisper failures, skipped utterances, dropped audio chunks, and an end-of-session summary (lines, detected speech, drops) now persist to ~/.minutes/logs/minutes.log. (#959, #966)
Windows: live and recording could run at once. minutes live did not detect an active recording on Windows, because the recorder holds its PID file under a mandatory lock and the check tried to read it. Both would then write the same live transcript. Found by the new CI coverage, fixed. (#964)
Recall in Terminal mode. Opening Recall without selecting a meeting left the assistant with no context and a standing instruction to announce a missing CURRENT_MEETING.md. The first real question now loads the meeting-directory context, under the same sign-in gate that already protects the selected-meeting case. (#965)
Batch transcription watchdog. The old timeout (5 minutes plus three times the audio length, capped at one hour) never fired, for the same whisper-rs reason. Rather than switch it on and start cutting off long recordings on slower machines, whisper now aborts only when it has made no decoding progress for 20 minutes. A hang still ends; a slow pass keeps going. (#961)
VAD default. transcription.vad_engine defaulted to ort-silero, which no shipped build can run; every session silently fell back to whisper-silero. The default now says what it does. Setting ort-silero explicitly still works in builds that carry vad-ort and the ONNX model. (#960)
CLI / MCP / desktop impact
- Desktop and CLI: the live transcript fix, degraded status, persisted diagnostics, and the batch watchdog apply to both. The Recall change is desktop only. The PID-lock fix matters on Windows only.
- MCP:
read_live_transcriptand the status resources return real content during recordings again. No interface changes. - Rust:
whisper-guard 0.3.1addsparams::set_abort_callback, a correct replacement for whisper-rs'sset_abort_callback_safe.minutes-core 0.26.2requires it.
Breaking changes or migration notes
No migration is required. If a source build relied on the implicit ort-silero default, set vad_engine = "ort-silero" in config.toml. Auto-update remains off, so install this update explicitly. Windows desktop builds remain unsigned previews.
Known issues
Under load inside the desktop app (screen context, voice identification, dual-source capture) the sidecar can still drop utterances when the transcription worker falls behind; it now says so in the session summary. Tracked in #967. The audio_input_overload warning from 0.26.1 still fires on affected machines.
Install / update
Download the macOS DMG or Windows installer from the release assets. For the CLI, use brew upgrade silverstein/tap/minutes or cargo install minutes-cli --version 0.26.2. For MCP, use npx -y minutes-mcp@0.26.2, or replace the Claude Desktop extension with the new minutes.mcpb and restart the host.
Full comparison: v0.26.1...v0.26.2