Repository navigation
[Bug]: iPhone 1.2.0 voice input recognizes Korean speech as unrelated English words #12743
Description
Before submitting
- I searched existing issues and did not find a duplicate.
- I included enough detail to reproduce or investigate the problem.
Area
apps/mobile
Summary
On T3 Code for iPhone 1.2.0, speaking Korean into the built-in composer microphone produces unrelated English words that sound similar to the Korean speech. This is phonetic misrecognition, not translation into meaningful English. The iPhone is configured in Korean.
Steps to reproduce
- Use T3 Code 1.2.0 on an iPhone configured in Korean.
- Start voice input using the T3 composer microphone (not the iOS keyboard dictation button).
- Speak Korean and confirm transcription.
- Observe the inserted draft text.
These describe the reporter's observed workflow; independent reproduction on another iPhone has not been performed.
Expected behavior
Korean speech should produce Korean text when the recognition language is Korean. If the device/engine does not support Korean, show an explicit unsupported-language message rather than interpreting the audio as English.
Actual behavior
The resulting text consists of phonetically similar but unrelated English words.
Impact
Major degradation or frequent failure: built-in Korean voice input is unusable for the reporter.
Version or commit
Installed iPhone app: 1.2.0.
Source inspected: the commit bumping the mobile version to 1.2.0, 6dbea7ed0947. The exact App Store build/OTA revision has not been verified.
Environment
- iPhone; system language reported as Korean.
- Exact iPhone model and iOS version are not yet recorded.
- This report concerns the native iPhone composer voice input, not desktop voice input.
Investigation: suspected locale selection issue, not a confirmed root cause
The implementation derives its recognition language from:
function getDeviceLocale(): string {
return Intl.DateTimeFormat().resolvedOptions().locale;
}It then passes that locale to AppleTranscription.prepare(locale) and transcribes with the resolved locale. There is no explicit voice-language override in this path.
Source at the 1.2.0 version-bump commit
A separate, minimal Foundation test on a Korean-configured Mac demonstrated that the current app locale can differ from the user's preferred language:
import Foundation
print(Locale.preferredLanguages)
print(Locale.current.identifier)
print(Bundle.main.preferredLocalizations)For a test app bundle with CFBundleDevelopmentRegion = en and only an en.lproj resource directory:
preferred: ["ko-KR"]
current: en_KR
bundle: ["en"]
After adding ko.lproj to that same test bundle:
preferred: ["ko-KR"]
current: ko_KR
bundle: ["ko"]
This is supporting evidence for a locale mismatch hypothesis, not an iPhone reproduction or a runtime trace from T3. en_KR represents English with the Korea region, not Korean. The affected iPhone's actual Intl locale and the locale returned by AppleTranscription.prepare() have not been captured.
Suggested investigation
- Capture the user's preferred languages, the
Intllocale, and the locale returned byAppleTranscription.prepare()on the affected iPhone. - Check whether the app's supported localizations cause an English locale to be selected despite a Korean system language.
- Consider selecting the recognition language from the user's preferred language or exposing a voice-language selector, while retaining Apple's supported-locale checks.
Logs or stack traces
No iPhone runtime logs or audio recordings are available. Source review and the separate macOS locale experiment were performed with AI assistance.
Workaround
No workaround has been verified on the affected iPhone.
Related discussion
Chinese speech recognition and desktop composer voice #10489 discusses a related language-selection concern; this report is specifically about Korean misrecognition on iPhone 1.2.0.
Activity
juliusmarminge commentedon Sep 20, 2026
Triage
This looks like a real iOS voice-input locale bug, not translation and not keyboard dictation.
On 1.2.0 (and still on current
main/ 1.2.1), the composer mic binds Apple’s on-device transcriber with:There is no preferred-language read and no voice-language setting. T3 Code’s iOS app does not declare extra localizations, so a Korean-configured iPhone commonly gets an app locale like
en_KR/en-KR(English + Korea region). Apple’sSpeechTranscriber.supportedLocale(equivalentTo:)then picks an English equivalent. English is supported, so we never show “unsupported language” — we just transcribe Korean audio as English. That matches the phonetic-English result.Apple’s iOS 26
SpeechTranscribersupported list includesko_KR, so Korean should work once we request it.Not confirmed on device: no iPhone model / iOS version, and no dump of preferred languages, the
Intllocale, or the locale returned byAppleTranscription.prepare(). The macOSen_KRexperiment in the report is supporting evidence only.Related
Intlpath)Next step
Bind recognition to the user’s preferred language (
Locale.preferredLanguages/ equivalent), then keep Apple’s supported-locale and asset checks. A settings picker can come later; it does not fix the default. Addingko.lprojonly to flipLocale.currentis the wrong primary fix.If you can, please add iPhone model, iOS version, and (if easy) the
Intllocale plus preferred languages from the affected phone. Not required to start the fix.Gitarcitano commentedon Oct 5, 2026
Hey @juliusmarminge, adding another data point here. I'm hitting the same bug with Brazilian Portuguese, so it's not only Korean or German.
My setup:
The mic button shows up and there is no "unsupported language" error, but when I talk in Portuguese the transcript is a bunch of wrong words, like the recognizer was expecting English. That matches your diagnosis.
I also looked at the sources to double check the root cause:
There is already an open PR for this: #13312, which reads AppleLanguages through Settings (JS only). Just linking it here since the comments don't mention it yet.
I have a Mac, so I can build a dev client and test #13312 on my phone. I can also log the real Intl locale and AppleLanguages on the device if you want that for the issue. Let me know.