microsoft / microsoft/vscode-remote-release

Remote SSH: PendingMigrationError about navigator global breaks extension host initialization

Open
#11,659 0 comments 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

ssh
Dominant language
Dockerfile
Stars
4.2k
Forks
469
Avg merge
1d 1h
Merged PRs (30d)
1

Description

Is there an existing issue for this bug?
  • I have searched the existing open issues and found none that apply.
  • If I find any issue of interest that is related or closed, I will included a link to it in this issue.
Required Troubleshooting Steps
  • I have read and performed the troubleshooting steps
  • I have tried both values of the remote.SSH.useLocalServer setting
  • My issue was not covered in the Tips and Tricks linked from the Troubleshooting Wiki.
  • I will include a complete copy of my Remote - SSH logs by running Remote-SSH: Show Log in the command palette or from View > Output in the menu bar
[Optional] Diagnose with Copilot

I asked @remote-ssh but it did not help

In step 2 of the troubleshooting wiki, what was the result of running the generated SSH command verbatim outside of VS Code?

I could NOT successfully SSH to the remote machine, and the error was the SAME to what I saw in VS Code

Remote-SSH Log
PendingMigrationError: navigator is now a global in nodejs, please see https://aka.ms/vscode-extensions/navigator for additional info on this error.
    at get (file:///Applications/Visual%20Studio%20Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:805:7210)
    at .../ms-vscode-remote.remote-ssh-0.124.2026052215/out/extension.js:2:282499
    at ...
  • Remote SSH starts connecting
  • The extension host throws the PendingMigrationError
  • Connection setup becomes unresponsive or remote workspace extensions fail to activate

The @remote-ssh is not working at all; No activated agent with id "remote-ssh", and git as well as copilot can also not initialize.

Detail Log

2026-05-25 07:18:34.878 [error] PendingMigrationError: navigator is now a global in nodejs, please see https://aka.ms/vscode-extensions/navigator for additional info on this error.
at get (file:///Applications/Visual%20Studio%20Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:805:7210)
at Et (/Users/local_user/.vscode/extensions/ms-vscode-remote.remote-ssh-0.123.0/out/extension.js:2:282499)
at $ (/Users/local_user/.vscode/extensions/ms-vscode-remote.remote-ssh-0.123.0/out/extension.js:2:276797)
at /Users/local_user/.vscode/extensions/ms-vscode-remote.remote-ssh-0.123.0/out/extension.js:2:282292
at E (/Users/local_user/.vscode/extensions/ms-vscode-remote.remote-ssh-0.123.0/out/extension.js:2:226065)
at /Users/local_user/.vscode/extensions/ms-vscode-remote.remote-ssh-0.123.0/out/extension.js:2:162854
at Object.f [as use] (/Users/local_user/.vscode/extensions/ms-vscode-remote.remote-ssh-0.123.0/out/extension.js:2:204467)
at /Users/local_user/.vscode/extensions/ms-vscode-remote.remote-ssh-0.123.0/out/extension.js:2:203815
at s. [as watch] (/Users/local_user/.vscode/extensions/ms-vscode-remote.remote-ssh-0.123.0/out/extension.js:2:203826)
at w (/Users/local_user/.vscode/extensions/ms-vscode-remote.remote-ssh-0.123.0/out/extension.js:2:205680)
at e. [as initialize] (/Users/local_user/.vscode/extensions/ms-vscode-remote.remote-ssh-0.123.0/out/extension.js:2:162165)
at e.n [as initialize] (/Users/local_user/.vscode/extensions/ms-vscode-remote.remote-ssh-0.123.0/out/extension.js:2:271092)
at /Users/local_user/.vscode/extensions/ms-vscode-remote.remote-ssh-0.123.0/out/extension.js:2:169921
at f (/Users/local_user/.vscode/extensions/ms-vscode-remote.remote-ssh-0.123.0/out/extension.js:2:235702)
at e. [as initialize] (/Users/local_user/.vscode/extensions/ms-vscode-remote.remote-ssh-0.123.0/out/extension.js:2:169185)
at t.n [as initialize] (/Users/local_user/.vscode/extensions/ms-vscode-remote.remote-ssh-0.123.0/out/extension.js:2:271092)
at Array. (/Users/local_user/.vscode/extensions/ms-vscode-remote.remote-ssh-0.123.0/out/extension.js:2:240942)
at ge (/Users/local_user/.vscode/extensions/ms-vscode-remote.remote-ssh-0.123.0/out/extension.js:2:278358)
at u (/Users/local_user/.vscode/extensions/ms-vscode-remote.remote-ssh-0.123.0/out/extension.js:2:240904)
at ie (/Users/local_user/.vscode/extensions/ms-vscode-remote.remote-ssh-0.123.0/out/extension.js:2:210159)
at e. (/Users/local_user/.vscode/extensions/ms-vscode-remote.remote-ssh-0.123.0/out/extension.js:2:212646)
at Object.initialize (/Users/local_user/.vscode/extensions/ms-vscode-remote.remote-ssh-0.123.0/out/extension.js:2:271838)
at /Users/local_user/.vscode/extensions/ms-vscode-remote.remote-ssh-0.123.0/out/extension.js:2:140356
at f (/Users/local_user/.vscode/extensions/ms-vscode-remote.remote-ssh-0.123.0/out/extension.js:2:235702)
at e. [as initialize] (/Users/local_user/.vscode/extensions/ms-vscode-remote.remote-ssh-0.123.0/out/extension.js:2:140284)
at t.n [as initialize] (/Users/local_user/.vscode/extensions/ms-vscode-remote.remote-ssh-0.123.0/out/extension.js:2:271092)
at /Users/local_user/.vscode/extensions/ms-vscode-remote.remote-ssh-0.123.0/out/extension.js:2:335309
at async t.oneDataSystemClientFactory (/Users/local_user/.vscode/extensions/ms-vscode-remote.remote-ssh-0.123.0/out/extension.js:2:334713)

Expected Behavior

Remote SSH should initialize normally and connect without a fatal runtime error.

Actual Behavior

I’m seeing a PendingMigrationError mentioning navigator is now a global in nodejs when starting a Remote SSH session. The remote extension host fails during initialization, and the connection either stalls or remote extensions never become available.

Steps To Reproduce
  • VS Code: recent stable build
  • Connection type: Remote SSH
  • Remote OS: Linux
  • Local OS: macOS / Windows
  • Remote extension version: latest Remote SSH extension available at the time
Anything else?

This appears to be related to code in the Remote SSH extension accessing navigator in a Node.js environment without handling the new global behavior safely.

Related Issues:

  • #11600
  • #11601
  • #11609

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the Remote SSH extension bundle at out/extension.js and the Remote-SSH log showing the navigator access during extension-host initialization. Reproduce a Remote SSH connection on the listed VS Code and operating-system combinations, then verify that initialization completes without PendingMigrationError and that remote extensions activate.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, node.js
Domain
devtools
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.