Skip to content

Releases: NikitaHerndlhofer/superwhisper-rag

v1.1.1

27 May 23:34

Choose a tag to compare

v1.1.0

27 May 19:10

Choose a tag to compare

Full Changelog: v1.0.0...v1.1.0

v1.0.0

27 May 17:42

Choose a tag to compare

Full Changelog: v0.6.3...v1.0.0

v0.9.12

27 May 15:16

Choose a tag to compare

Full Changelog: v0.9.11...v0.9.12

v0.9.11

26 May 11:49

Choose a tag to compare

v0.9.11

Fixes

  • VPIO no longer ducks live audio while recording.
    setVoiceProcessingEnabled(true) (re-enabled in v0.9.3 for the
    AEC + AGC + NR pipeline) implicitly activated macOS's
    communication-audio mode, which ducks every other app's output to
    prioritize a VOIP session. We're a passive recorder — the
    meeting's audio is exactly what the user is listening to, and
    ducking it made the call quieter while we recorded. macOS 14+
    exposes the knob (voiceProcessingOtherAudioDuckingConfiguration
    enableAdvancedDucking=false + duckingLevel=.min) and we now
    set it on every recorder start. VPIO's noise / echo / gain
    features stay on.

  • Opt-in global hotkey for explicit stop.
    Auto-stop for browser-based meetings has been chronically flaky.
    The menubar now optionally registers a system-wide keyboard
    monitor while recording is active, so the user can stop without
    reaching for the menu bar. Off by default; opt in via:

    swrag meeting config set hotkeys.stop_recording \"cmd+shift+s\"
    

    Global monitors require macOS Accessibility permission; the
    permissions-check probe now reports that grant state.

Touches

  • New accessibility field on the permissions probe (granted /
    denied via AXIsProcessTrustedWithOptions).
  • New HotkeysSchema in the meeting popup config. Legacy stored
    configs default to stop_recording: null (no surprise hotkeys).
  • Daemon's subscribed envelope + status response carry the
    hotkey config so the menubar can arm the monitor on connect.

v0.9.10

25 May 22:51

Choose a tag to compare

v0.9.10: broaden stop-popup trigger (HIGH → MEDIUM debounce)

v0.9.9's per-process audio listener fix relied on kAudioProcessProperty* populating the mic-owners list so we could subtract our own recorder PID. In production on macOS Tahoe 26 some users observe owners=[] while mic_in_use=true, which puts the detector in degraded mode — raw mic_in_use is held true for the duration of the recording, so the HIGH → NONE edge the stop popup logic depended on never commits.

v0.9.10 broadens the trigger. While recording, the stop banner now fires on:

  • any edge to NONE (unchanged) — clean mic release in non-degraded mode
  • HIGH → MEDIUM after a 30 s grace window — covers the degraded-owners case where the mic side can't be the trigger (closing a Meet tab in Comet while we still hold the mic drops browser_url match, committing the HIGH → MEDIUM edge)

The grace window absorbs brief tab/app switches during a real meeting; recovery to HIGH inside the window cancels. The banner defaults to keep on dismiss / timeout, so false positives are recoverable. The pending timer is cancelled on manual stop, popup-driven save, and daemon shutdown.

Test coverage

  • HIGH → MEDIUM with active recording fires the popup after the grace window
  • HIGH → MEDIUM → HIGH inside the window cancels (no popup)
  • HIGH → MEDIUM with no active recording is a no-op
  • HIGH → MEDIUM → NONE: the NONE edge supersedes the timer (single popup, no double-fire)
  • record_stop cancels a pending timer

419 tests pass / 0 fail. Typecheck clean. Build clean.

Full Changelog: v0.9.9...v0.9.10

v0.9.9

25 May 21:15

Choose a tag to compare

Full Changelog: v0.9.8...v0.9.9

v0.9.8

25 May 20:45

Choose a tag to compare

Full Changelog: v0.9.7...v0.9.8

v0.9.7

25 May 20:11

Choose a tag to compare

Full Changelog: v0.9.6...v0.9.7

v0.9.6

25 May 14:18

Choose a tag to compare

Full Changelog: v0.9.5...v0.9.6