chore(web): sync speech recognition language options with SRI 0.2.1 - #522
Conversation
The launcher offered a fixed set of 8 languages and always sent one on every request. SRI 0.2.1's TranscriptionRequest accepts ~90 languages plus omission (per-file auto-detect), so 82 valid choices were unreachable and users could never opt into auto-detection. Mirror the batch transcribe launcher's 12-language curated set plus an "Auto-detect" sentinel, and default to Auto-detect. Auto-detect works by omitting the `language` field in the request body — the same mechanism the batch task uses. All values are already sent lowercased, which matches SRI's Literal[...] contract. Also portal the language ListboxOptions with `anchor="bottom start"` so the dropdown escapes the sidebar's overflow context; previously the open menu was clipped by the parameter container's height. Closes #514
ReviewNice, focused fix — the auto-detect omission logic and the A few things worth a look before merge: Regression: three previously-supported languages are dropped Wire-format mismatch vs. the launcher it claims to mirror No test coverage for the new/changed behavior
Minor / pre-existing, not introduced by this PR Nothing here blocks the core fix — the auto-detect bug and dropdown-clipping bug are real and well addressed. The main ask is confirming the language-list scope-down is intentional and actually running the manual test before merge. |
…dling
Fixes a pre-existing propType lie (LanguageSelect.language was declared
as a string but has always been an {id, name} object) and adds unit
tests for the request body shape: an explicit language becomes the
lowercased name, Auto-detect omits the field so SRI runs per-file
detection.
Summary
The service launcher offered only 8 languages and always sent one on every request. SRI 0.2.1's `TranscriptionRequest` accepts ~90 languages plus per-file auto-detect, so 82 valid values were unreachable and users could never opt into auto-detection.
Test plan
Notes
Closes #514