Fix silent watch recordings: async session activation, encoder settings, error surfacing

Watch recordings arrived on the phone as 28-byte header-only m4a files
(record() reported success but no audio was ever captured). Activate the
audio session via watchOS's async activate(options:), drop the .spokenAudio
mode experiment, match the phone recorder's proven AAC settings
(44.1 kHz / 48 kbps), and surface silent failures: an AVAudioRecorderDelegate
catches encode errors mid-take, and a stop-time guard detects a dead
header-only file, deletes it, and shows the failure on the watch instead of
shipping an unplayable note to the phone.

Claude-Session: https://claude.ai/code/session_014esDWi42URLEC6Cj17hGQ3
This commit is contained in:
2026-07-15 19:42:24 -04:00
parent 35e4d6750b
commit c29d25748a
3 changed files with 80 additions and 13 deletions
+2
View File
@@ -1,5 +1,7 @@
**July 2026**
Fixed watch voice notes arriving on the iPhone without audio, so they couldn't be played or transcribed
Transcription now supports many more languages, including Russian, Ukrainian, and Polish
A single toolbar button now starts a new note that opens straight to typing, with voice recording just one tap away