Skip to content

Dictation regression in 1.141.0: on-device model ignores Spanish and leaks the <en-US> token (works in 1.140.0) #341152

Agent suggestions

Public preview

Description

@amIsmael

Type: Bug

VS Code version

  • Broken: 1.141.0 (commit 2a59476c9bfcb90b3ddc372c36762471b7dfad1c)
  • Works: 1.140.0 (commit 07f806f999227108933c2e30515b26eecc1fda74)
  • OS: Ubuntu (Linux x64)

Steps to reproduce

  1. Set "agents.voice.language": "es".
  2. Open Copilot Chat and use the built-in Dictation with the on-device backend (default). Model: nemotron-3.5-asr-streaming-0.6b.
  3. Dictate a sentence in Spanish (optionally mixing in some English words/abbreviations).

Expected

The Spanish text is transcribed and inserted correctly into the chat input.

Actual (on 1.141.0)

  • The audio is transcribed as if it were English, and the language tag token <en-US> is leaked into the inserted text.
  • Sometimes nothing gets inserted into the input.
  • Happens with the exact same settings that work perfectly on 1.140.0.

Evidence / root-cause analysis

  • The only relevant change between the two versions in product.json is the dictation runtime:
    • 1.140.0: "dictationRuntime": { "version": "1.2.3", "urlTemplate": "https://main.vscode-cdn.net/dictation-runtime/foundry-local/1.2.3/{target}.tgz" }
    • 1.141.0: "dictationRuntime": { "version": "2.0.1", ... }
  • Language resolution for the local backend is identical in both versions (_startLocalSession() -> ihn(configurationService.getValue("agents.voice.language"), navigator.language)). With "es", Eso("es") returns "es-US" (internal table cAr = { ..., es: "es-US", ... }; navigator.language is en-US).
  • That value is passed to Foundry Local: session.settings.language = "es-US" (see out/vs/platform/localTranscription/node/localTranscriptionMain.js).
  • The 2.0.1 runtime (libfoundry_local.so) only contains lowercase language strings - de-de, en-gb, en-us, es-es, es-us, fr-ca, fr-fr, it-it, pt-br, pt-pt - and includes this failure path:
    Failed to set Nemotron lang_id '{}' for '{}': {}
  • Result: es-US is not applied, the model falls back to English, and it emits the <en-US> token (present in the model vocab at index 2948).

Workaround

Downgrade to 1.140.0 (which uses runtime 1.2.3) and hold it:

sudo dpkg -i code-1.140.0.deb
sudo apt-mark hold code

Dictation works again immediately.

Suggested fix

  • Compare language codes case-insensitively when setting lang_id (es-US -> es-us), and/or make the 2.0.1 runtime accept the case produced by the workbench (Eso/Intl.getCanonicalLocales always outputs Title-Case regions).
  • Consider exposing the Spanish-specific local model nemotron-speech-streaming-es-0.6b-ft (already in foundry.modelinfo.json) in the dictation.model picker.

Attachments

  • Developer: Show Logs... (Window channel) captured while reproducing on 1.141.0.
  • Screenshot of the inserted text containing <en-US>.

VS Code version: Code 1.140.0 (07f806f, 2026-09-30T10:38:38+02:00)
OS version: Linux x64 7.0.0-38-generic
Modes:

System Info
Item Value
CPUs AMD Ryzen 5 5600X 6-Core Processor (12 x 4650)
GPU Status 2d_canvas: enabled
GPU0: VENDOR= 0x10de [Google Inc. (NVIDIA Corporation)], DEVICE=0x21c4 [ANGLE (NVIDIA Corporation, NVIDIA GeForce GTX 1660 SUPER/PCIe/SSE2, OpenGL ES 3.2 NVIDIA 595.99.02)], DRIVER_VENDOR=NVIDIA, DRIVER_VERSION=595.99.02 ACTIVE
Machine model name:
Machine model version:
direct_rendering_display_compositor: disabled_off_ok
gpu_compositing: enabled
multiple_raster_threads: enabled_on
opengl: enabled_on
rasterization: enabled
raw_draw: disabled_off_ok
skia_graphite: disabled_off
trees_in_viz: disabled_off
video_decode: enabled
video_encode: disabled_software
vulkan: enabled_on
webgl: enabled
webgpu: enabled
webgpu_on_vk_via_gl_interop: enabled
webnn: disabled_off
Load (avg) 0, 1, 0
Memory (System) 15.03GB (6.39GB free)
Process Argv --crash-reporter-id 5ece63ac-3edc-4af6-9bd0-3f187e96b69b
Screen Reader no
VM 0%
DESKTOP_SESSION ubuntu
XDG_CURRENT_DESKTOP ubuntu:GNOME
XDG_SESSION_DESKTOP ubuntu
XDG_SESSION_TYPE wayland
Extensions (27)
Name Identifier Author Version
lit-html bierner.lit-html bierner 1.11.1
Tailwind CSS IntelliSense bradlc.vscode-tailwindcss bradlc 0.16.0
Bruno bruno-api-client.bruno bruno-api-client 6.0.0
npm Intellisense christian-kohler.npm-intellisense christian-kohler 1.4.5
ESLint dbaeumer.vscode-eslint dbaeumer 3.0.34
ES7+ React/Redux/React-Native snippets dsznajder.es7-react-js-snippets dsznajder 4.4.3
HTML CSS Support ecmel.vscode-html-css ecmel 2.0.14
Prettier - Code formatter esbenp.prettier-vscode esbenp 12.4.0
Auto Rename Tag formulahendry.auto-rename-tag formulahendry 0.1.10
GraphQL: Language Feature Support graphql.vscode-graphql GraphQL 0.13.4
GraphQL: Syntax Highlighting graphql.vscode-graphql-syntax GraphQL 1.3.13
Activitus Bar gruntfuggly.activitusbar Gruntfuggly 0.0.47
Peacock johnpapa.vscode-peacock johnpapa 4.5.1
Babel JavaScript mgmcdermott.vscode-language-babel mgmcdermott 0.0.40
Git Graph mhutchie.git-graph mhutchie 1.30.0
VS Code Speech ms-vscode.vscode-speech ms-vscode 0.16.0
Live Share ms-vsliveshare.vsliveshare ms-vsliveshare 1.1.122
indent-rainbow oderwat.indent-rainbow oderwat 8.3.1
Material Icon Theme pkief.material-icon-theme PKief 5.39.0
TypeScript Importer pmneo.tsimporter pmneo 2.0.1
Shopify Liquid shopify.theme-check-vscode Shopify 3.11.12
Liquid sissel.shopify-liquid sissel 4.0.1
Ayu teabyii.ayu teabyii 1.4.1
CMake twxs.cmake twxs 0.0.17
DeepSeek V4 for Copilot Chat vizards.deepseek-v4-for-copilot Vizards 0.9.4
JavaScript (ES6) code snippets xabikos.javascriptsnippets xabikos 1.8.0
Pretty TypeScript Errors yoavbls.pretty-ts-errors YoavBls 0.8.7
A/B Experiments
vsliv368cf:30146710
vswsl492:30256859
pythonvspyt551cf:31249601
binariesv615:30325510
nativeloc1:31344060
dwcopilot:31170013
dwoutputs:31242946
copilot_t_ci:31333650
e5gg6876:31282496
pythonrdcb7:31342333
6518g693:31463988
aj953862:31281341
82j33506:31327384
envsactivate1:31551504
cloudbuttont:31379625
3efgi100_wstrepl:31403338
bj468946:31457056
ddidt:31399633
ec5jj548:31422691
cp_cls_t_966_ss:31526232
4je02754:31466945
c3h7c220:31478652
cp_cls_c_1081:31454833
conptydll_true:31498968
e9c30283:31461165
46204921:31447328
capico_axe_098a3278:31590238
ei9d7968:31496641
chat:31457767
8hig5102:31480529
89g7j272:31518289
2d1bi976:31596492
i2gc6536:31499202
52612955:31516516
23c7c724:31520045
ddid_c:31478207
hmra_i5g22:31518061
7df3h592:31512476
cp_cls_t_1082:31535311
logging_enabled_new:31498466
j0d79568:31499440
jb_cp_cls_t_632:31543129
56dj4588:31512888
32d76977:31512328
ha629193:31508444
jh5f2457_c:31540921
jbcp_cls_pctr_t:31531130
cp_intellij_t_nes:31548657
ahp-both-windows:31556933
ihg5j128:31534457
9gg7f176:31542112
sandbox-ui-on-2:31543161
nes-ex-cf-euporie-03:31542868
enable_editor_pane_layout:31569726
allow-none:31555437
36h42362:31564511
1h923230:31564177
treatment-23-1:31555779
unuse_dynamic_mcp:31555281
0d8dfbc3:31570291
0c1h4866:31566224
session-mark-done:31591648
a3a5c856:31594158
multi-root:31593626
5b8j3302:31564601
autotiers:31584978
mangle-name-control:31572633
atk_rai_validation_enable:31598258
allow-signed-out:31592042
80db41fc-e686-49f5-b9db-830fbb843f14:31589249
intellij_nes_preview_t:31580086
multiv2:31574985
2bfb8b39:31585911
links-treatment:31596176
aw-autom-on:31583758
issue9151-8b8b39eb:31597539
usage_tips_endabled_0911:31587631
7g328426_fixed:31595622
codex-agent-host-stable-control:31596218
54hd3363:31588611
skill-budget-30000:31597277
0485115c-2712-4002-b6e9-b5d4e30fb963:31595629
sessioninlinediffenabled_disabled:31587634
intellij_copilot_command_preview_c:31598260
welcomesignin9359t:31590011
b169b0b1-b17e-475c-9032-91b9b24dde97:31589214
ca19f5eb-b04f-4f52-8e6b-9f6927d4e0dc:31589210
873a6c30-1450-474f-862d-8084643bbc8e:31593167
5a177259:31598249
57iha306:31595867
9hh48893:31595853
permission_prompt_control:1332567
ccr_pr_nudge_adoption:1319471
vsc_wsm_c:1340633
g03gg798:1417072
cfee5631:1379228
c_920dh436:1401463
jc553158:1433349
cmc_aa_t:1435711
seataa-a98d0257:1447868

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

bugIssue identified by VS Code Team member as probable bugdictation

Type

No type

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions