# v2.43.2 — no more words nobody said

**Released 2026-10-18.** Upgrade:

```sh
sudo snap refresh yazses     # snap
pipx upgrade yazses          # or: uv tool upgrade yazses
scoop update yazses          # Windows
```

Restart the daemon afterwards (`yazses restart`). A newly started YazSes replaces an older running one since
v2.43.1.

## A loud burst with no speech in it is not typed

Press the hotkey in a room with a fan, or close your eyes for the face switch without saying anything, and
YazSes could type **"The app is called YazSes."** ([#598](https://github.com/MSKazemi/yazses/issues/598)). That
sentence is the name hint the speech model is primed with. Given a burst with no speech in it, the model does not
answer with nothing: it answers with the words it was primed with. This reproduced on synthetic noise (no one's
audio) with the `small`, `base.en` and `tiny.en` models, and a personal vocabulary came back the same way. The
volume gate cannot tell a talker from a fan, and the model's own "no speech" score is too close between the two
to use.

Before decoding, the daemon now asks the speech detector that `yazses verify` and file transcription already use,
and drops a burst only when it positively finds no speech. The log says
`No speech in a 1.2s burst … -- discarding.` with the length and level only, never audio or text. Saying the
sentence still types it: the rule looks at the audio, not the words.

What was measured, on a public-domain speech sample cut into 22 one-word bursts and on 27 seeded noise bursts: no
voiced word was lost at normal or one-tenth volume, and no noise got through. A crude stand-in for whispering lost
3 of 22 words, so **whispering is the weak spot**; real whispered, accented and dysarthric speech was not
measured. The check is skipped in Whisper / Low-Effort mode, Dysfluency-Friendly mode and the sotto-voce command
channel, does nothing if the detector cannot run, and can be switched off with
`[accessibility] speech_presence_check = false`. See
[silent audio discarding](../how-to/silent-audio-discarding.md) if quiet speech is being dropped.

## Eyes-closed dictation: three fixes

- A stray hold-release no longer **re-types the previous dictation**. In the first live run one closure was typed
  and two more releases with no recording typed the same clip again.
- Binding "eyes closed" in **Settings → Hands-free control** no longer dictates on every blink: it now also raises
  the hold before any face switch counts, from 0.2 s to 0.8 s.
- With hands-free safety on, a face switch whose every binding is a hold **re-arms itself** once your face has
  been back for a second, instead of staying off until Resume after a glance at the keyboard.

## Smaller fixes

- The tray supervisor's relaunch line now says what `tray.lock` looked like, so a "tray is not running" line next
  to an old error can be read correctly ([#578](https://github.com/MSKazemi/yazses/issues/578)).
- The gaze grounding resolver no longer grounds a candidate with no extent (a height so small it rounds to zero).
- The release check no longer marks a release incomplete for having only one Windows installer; v2.43.1 had been
  demoted to a pre-release by it and was restored by hand.
- Settings windows: face-switch mapping boxes are no longer cut off, `&` in category titles is shown, and "resume
  from the tray" names a menu item that exists.

The complete list is in the [changelog](https://github.com/MSKazemi/yazses/blob/main/CHANGELOG.md).
