Goal
Adopt the multi-instance GitHub Enterprise authentication introduced by microsoft/vscode#338080 without requiring a multi-client redesign of this extension.
This is the Crawl phase: users can configure several Enterprise instances and select which Enterprise account this extension uses, alongside their separate GitHub.com account.
Implementation: #8996. This issue should close when that PR merges.
Scope
- Honor
github-enterprise.uris, including explicit [], normal configuration precedence, and workspace trust. Read the deprecated github-enterprise.uri only when no eligible plural value is configured.
- Make setup additive and cancellation-safe. Write only the plural setting, preserve existing instances, and avoid automatic settings or credential migration.
- Continue deriving authenticated API destinations from the selected session's
authorizationServer, never from list order or an unrelated remote paired with a token.
- Keep one selected Enterprise account/client and one separate GitHub.com account/client. Repositories on other Enterprise instances remain unavailable until the user selects the appropriate account.
- Explain mismatched or missing account preferences in both the Pull Requests and Login views. Provide Select Account scoped to GitHub Pull Requests and the Enterprise provider; start sign-in if no Enterprise accounts exist.
- Keep guidance concise and naturally wrapping, preserve public sign-in, and avoid remote discovery/network work during view rendering.
- Refresh account-sensitive views and caches when selection changes; reordering the configured list must not switch the active account, and removing an instance must not delete saved sign-ins.
- Require VS Code
^1.141.0; Insiders users are expected to stay current.
Acceptance
- GitHub.com plus Enterprise A works while Enterprise B is configured but not selected; B has actionable guidance rather than an apparently empty successful result.
- Switching A to B updates repository availability without reloading or exposing stale A data as B data. Colliding native account IDs do not bypass issuer checks.
- Legacy-only settings, plural precedence, explicit empty lists, invalid configuration, cancellation, and trust changes behave consistently with the built-in provider.
- Public sign-in remains usable when Enterprise configuration is invalid, and both views remain responsive while unrelated discovery is pending.
- Tests cover configuration/setup, account selection and routing, switching, and view behavior; the one-selected-Enterprise-account limitation is documented.
Out of scope
Simultaneous clients for different Enterprise hosts (Walk) and multiple accounts on the same host, including GitHub.com (Run).
Implementation specification and exploratory scenarios.
Follow-ups
Goal
Adopt the multi-instance GitHub Enterprise authentication introduced by microsoft/vscode#338080 without requiring a multi-client redesign of this extension.
This is the Crawl phase: users can configure several Enterprise instances and select which Enterprise account this extension uses, alongside their separate GitHub.com account.
Implementation: #8996. This issue should close when that PR merges.
Scope
github-enterprise.uris, including explicit[], normal configuration precedence, and workspace trust. Read the deprecatedgithub-enterprise.urionly when no eligible plural value is configured.authorizationServer, never from list order or an unrelated remote paired with a token.^1.141.0; Insiders users are expected to stay current.Acceptance
Out of scope
Simultaneous clients for different Enterprise hosts (Walk) and multiple accounts on the same host, including GitHub.com (Run).
Implementation specification and exploratory scenarios.
Follow-ups