# YazSes v2.1.0-dev.1 — Wave D (developer preview)

**Pre-release · not published to PyPI/Snap/APT** (publish workflows are pinned to the
`v0.x`/`v1.x` lines; v2 dev tags intentionally do not ship). **v1.4.1 remains the
stable release.** Every feature is **OFF by default**.

Wave D opens a **v2.1** line on top of the complete v2 feature set — a fresh
state-of-the-art research round (11 candidate features) and the first four, all
on-device and privacy-first. Design in `design/vision/v2-research/06-wave-d.md` +
`design/adr/adr-v2-014..017`.

## New features (ship-now tier, all off by default)

- **Speech Translation** (ADR-v2-014, `[translate]`) — dictate in another language, type
  English. Uses Whisper's built-in translate task (X→English, **zero new downloads**);
  other targets via the opt-in `seamless` backend.
- **Tone-Aware Formatting** (ADR-v2-017, `[affect]`) — reflects vocal tone as light
  punctuation (`!`/`?`) beyond timing-based Prosody Ink. Conservative by default; the SER
  model is opt-in behind the `affect` extra.
- **Predictive Completion** (ADR-v2-016, `[predict]`) — a tiny on-device model proposes the
  rest of a phrase; accept by voice. Generator opt-in behind the `predict` extra, runs in a
  background thread so it never blocks injection.
- **Noise Suppression** (ADR-v2-015, `[denoise]`) — denoise/dereverb before STT so dictation
  survives noisy rooms and quiet speech clears the VAD gate. Identity passthrough when off;
  DeepFilterNet backend opt-in behind the `denoise` extra. Wired into the decode path.

Manage them with `yazses features` (31 capabilities now; new: `translate`, `affect`,
`predict`, `denoise`).

## Researched, not yet built (Wave D backlog)
Ambient Meeting Scribe (streaming diarization), continuous voice-biometric anti-spoof gate,
neural-codec ultra-low-latency streaming (Kyutai), voice-grounded RAG over personal docs,
silent-speech (sEMG), VLM screen commanding, atypical-speech LoRA. See the research doc.

## Quality
910 tests green across Linux × macOS × Windows on Python 3.11 and 3.12. Every new feature's
pure logic is unit-tested; heavy backends stay lazy behind optional extras, so the default
install and the v1 dictation path are unchanged when everything is off.
