diff --git a/README.md b/README.md index 7d537ca..54a5e7a 100644 --- a/README.md +++ b/README.md @@ -38,7 +38,7 @@ Controls are remappable in SteamVR. Grip gestures may be unavailable with the da ## Status / not yet validated -Native ARM64 build, CPU inference on a public clip, overlay visibility, Gamescope API discovery, a controls-only Right X probe and native-only installation have been exercised on Frame. **Live microphone → reviewed transcript → real target delivery has not been formally accepted.** Focus guard and insertion have offline/owned-target checks, not general app compatibility or human headset acceptance. Global bindings, physical gesture feel, Auto insert with speech, latency, battery/thermal cost and controller coexistence still require opt-in headset testing. Front-prefix loss on repeated submissions (P1) remains under separate investigation; do not treat it as fixed. An old-code fixture crashed the Gamescope session, not the OS, and does not prove the new delivery path. Local code/build status does not mean the device was updated. A completed Gamescope IME call means *input queued*, not that an app consumed or submitted it. +Native ARM64 build, CPU inference, overlay visibility, Gamescope API discovery and native-only installation have been exercised on Frame. The owner uses live microphone → reviewed transcript → paced delivery into real apps day to day, and the earlier front-prefix loss on repeated submissions (P1) is no longer observed. General app compatibility (for example browser fields), Auto insert with speech, physical resize, battery/thermal cost and a clean-account install are not yet validated. Local code/build status does not mean the device was updated. A completed Gamescope IME call means *input queued*, not that an app consumed or submitted it. The native app normally keeps the mic device open while Ready and discards idle audio; it never mutes other applications' microphones. Settings → **Close mic when idle** (default OFF) closes it between clips, but reopening on PTT can cause an audio spike, delay or first-syllable clipping. **Lasers anytime** (default OFF) requests system-wide lasers while the panel is visible, potentially affecting games; it is not SteamVR's experimental input override. Review, settings, placement and diagnostic details: [overlay](docs/overlay.md), [worker](docs/worker.md), [design](docs/design.md). diff --git a/TODO.md b/TODO.md index 0f45db6..4990131 100644 --- a/TODO.md +++ b/TODO.md @@ -26,7 +26,10 @@ accepted; local code/tests cannot establish a fixed delivery regression. ## Priority regression (reported during implementation) -- [ ] **P1. Repeated delivery loses the beginning of later submissions.** After +- [x] **P1. Repeated delivery loses the beginning of later submissions.** + **Closed 2026-09-25 by owner confirmation:** the owner has been dictating + into real apps with live voice typing on the paced build and sees no + front-prefix loss. History below is kept for context. After the first Type + Enter, later text reportedly loses a dozen to a few dozen leading bytes. Investigate preview versus destination loss, retain the full bounded literal transcript, and add repeated/long/Unicode delivery regression tests. @@ -47,6 +50,16 @@ accepted; local code/tests cannot establish a fixed delivery regression. ## A. First release (v0.1) blockers +Remaining release gates (2026-09-25): implement D4 (pip runtime install), then a +fresh clean install on Frame that also checks the missing-runtime panel message +(H), then tag `v0.1.` and update the README install section. + +- [x] **A8. UI polish batch (local; deploy pending).** Removed the fixed + "Type adds a space" hint, grew the review card to six lines to close the empty + band, added L/HMD/R battery readouts and a Buttons ready/paused dashboard chip, + and made Type with nothing to review send Enter. Which batteries Frame reports + needs a headset check (`--check-controls` prints them). + - [x] **A1. Remove the runtime-license blocker notes.** Upstream's Kestrel README states local inference is free; blocker text removed from README/docs/scripts and replaced with a neutral dependency note in `docs/third-party.md`. @@ -173,8 +186,9 @@ this app is future design and out of scope for v0.1. - [ ] Verify the exact missing-runtime panel message and Steam's shortcut persistence across a normal restart (without restarting sessions just for the test). Confirm no runtime/model environment override before future live checks. -- [ ] Live acceptance on Frame: microphone → reviewed text → real target delivery, - Auto insert with speech, physical resize and a verified deployed version. +- [x] Live acceptance on Frame: microphone → reviewed text → real target delivery. + Confirmed by the owner's daily live voice typing (2026-09-25). Auto insert with + speech and physical resize were not separately reported. ---