Skip to content

Whisper Face 0.4.0

Latest

Choose a tag to compare

@Aiml3ss Aiml3ss released this 28 Jul 20:45
· 4 commits to main since this release
ff64786

Windows has a download for the first time. Plus a release gate that remembers what quality looked like, and a real visual pass over every screen.

Windows (preview)

Download WhisperFace-0.4.0-windows-x64.zip, unzip it somewhere you can write, and double-click Install.cmd. That one file is all you run — it exists because Windows blocks a double-clicked PowerShell script, and the bundle's START HERE.txt walks through the rest.

Windows has always shared the real pipeline — the same capture, the same Tiny→Turbo cascade, the same cleanup, snippets, tones, and learning — and its installer has been exercised in CI on a real Windows runner on every change. What it has never had is something to download. Now it does.

Before you install, three things worth knowing:

  • winget must already be present (App Installer, from the Microsoft Store). The installer needs it and does not install it for you.
  • Windows will warn you. This build carries no Authenticode signature, so SmartScreen says the publisher cannot be verified. You can skip the prompt entirely by right-clicking the downloaded ZIP → Properties → Unblock before extracting, or verify the download against SHA256SUMS first.
  • Install.command sits one letter away in the same folder. That one is the macOS installer and does nothing on Windows.

Two real differences from the Mac, by design: Whisper Face lives in the tray rather than a menu bar and has no main window, and text is inserted with a plain paste instead of the Mac's verified insertion transaction, because Windows has no equivalent of the Accessibility API that path depends on. The hotkey is Right Alt.

This is a preview. No full dictation has been performed on real Windows hardware yet — CI proves it imports, installs, and passes its tests, not that dictating into Word feels right. Expect rough edges and please report them. One known gap: the installer does not install git, and Diagnostics → Exact Source shells out to it, so that one screen errors without it. Dictation is unaffected.

Every screen got looked at

A pass over all 24 rendered pages at five window sizes in both themes, fixing what was actually wrong rather than restyling:

  • The metric cards were ghosting their own text. Their offset shadow had no explicit path, so it was derived from the layer silhouette including the glyphs — and the translucent sticker fill let that text-shaped shadow show through, five points down and right. Only visible live, never in a screenshot, which is why it survived this long.
  • Tall windows no longer strand everything at the top. The Home cluster and the onboarding poster centre themselves, and the backdrop follows.
  • Every status capsule was quietly right-aligned — the model pills, the Capture badge, the onboarding kicker — because the alignment constant meant something different than assumed. All centred now.
  • "1 words in 1.38s" is gone, along with every other broken singular, handled in the string catalogue so all eleven languages can express it.
  • The Personalize face card stops reserving a row that is not there.

Quality can no longer drift quietly

quality_gate.py replays the deterministic quality suites and compares 49 pinned, content-free metrics against a checked-in baseline. Any difference fails the build — a drop is a regression, and an unrecorded improvement is a baseline that would silently absorb the next regression. Moving quality now takes a deliberate --rebaseline whose diff is reviewed beside the change that caused it. It runs on every pull request and every release.

Also fixed

  • Snippets can be named in any script. Both name normalisers stripped everything outside [a-z0-9 ], so every Cyrillic, Japanese, Korean, or Chinese name collapsed to the same empty key: the editor refused the second one as a duplicate, and saying a non-Latin name pasted whichever snippet happened to come first. Accented Latin also stops losing its accents.
  • Long status messages wrap instead of losing their tail. "Paste unverified — check target; saved in Voice Outbox" was being cut at the semicolon, which removed the half that tells you what to do.
  • The rename to whisper-face finally reached the release manifest's source offer, which had been pointing at the old repository name since the move.

Install on a Mac

Download the disk image, drag the Whisper Face folder (and the app beside it) somewhere writable like Documents, then run Install.command from that copy. The installer refuses to run from the read-only image.

Updating from 0.3.x in the same checkout preserves all personal files; the manifest links back to v0.3.0 for rollback. macOS still warns that the developer is unverified — signing and notarization remain the top of the roadmap.