Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Sessions window: GH file system provider fixes#298844

Merged
osortega merged 3 commits intomainfrom
osortega/managing-marmoset
Mar 3, 2026
Merged

Sessions window: GH file system provider fixes#298844
osortega merged 3 commits intomainfrom
osortega/managing-marmoset

Conversation

@osortega
Copy link
Contributor

@osortega osortega commented Mar 3, 2026

No description provided.

Copilot AI review requested due to automatic review settings March 3, 2026 00:49
@osortega osortega self-assigned this Mar 3, 2026
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the Sessions window’s GitHub-backed virtual filesystem integration to use the github-remote-file URI format (including a ref), improve tree fetching behavior, and present more user-friendly repo/file paths in the UI.

Changes:

  • Switch cloud session repository URIs from vscode-vfs://github/... to github-remote-file://github/{owner}/{repo}/{ref}.
  • Add GitHub tree fetch request de-duplication and negative caching to reduce repeated 404 fetches.
  • Improve repo/title/path display for GitHub-backed trees and changes.

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
src/vs/sessions/contrib/workspace/browser/workspaceFolderManagement.ts Sets workspace folder naming for cloud sessions using a GitHub URI-derived display name.
src/vs/sessions/contrib/sessions/browser/sessionsManagementService.ts Constructs cloud repository URIs using the github-remote-file scheme and adds a default ref.
src/vs/sessions/contrib/fileTreeView/browser/githubFileSystemProvider.ts Adds display-name helper, request de-dupe, negative caching, and adjusts auth session lookup.
src/vs/sessions/contrib/fileTreeView/browser/fileTreeView.ts Uses metadata branch to build repo root URIs and improves tree title derivation.
src/vs/sessions/contrib/chat/browser/repoPicker.ts Updates selected repo URIs to use github-remote-file with HEAD.
src/vs/sessions/contrib/changesView/browser/changesView.ts Strips GitHub URI internal prefix for tree grouping so paths appear repo-relative.
Comments suppressed due to low confidence (3)

src/vs/sessions/contrib/fileTreeView/browser/fileTreeView.ts:355

  • When building github-remote-file URIs, ref should be encoded as a single path segment. Branch names commonly contain / (e.g. feature/foo), which would otherwise shift segments and break parseUri() (ref becomes feature, path starts with foo/...). Encode the ref segment when constructing these URIs.
				return URI.from({
					scheme: GITHUB_REMOTE_FILE_SCHEME,
					authority: 'github',
					path: `/${repository}/${ref}`,
				});

src/vs/sessions/contrib/fileTreeView/browser/fileTreeView.ts:364

  • When building github-remote-file URIs, ref should be encoded as a single path segment. Branch names commonly contain / (e.g. feature/foo), which would otherwise shift segments and break parseUri() (ref becomes feature, path starts with foo/...). Encode the ref segment when constructing these URIs.
				return URI.from({
					scheme: GITHUB_REMOTE_FILE_SCHEME,
					authority: 'github',
					path: `/${parsed.owner}/${parsed.repo}/${ref}`,
				});

src/vs/sessions/contrib/fileTreeView/browser/fileTreeView.ts:341

  • When building github-remote-file URIs, ref should be encoded as a single path segment. Branch names commonly contain / (e.g. feature/foo), which would otherwise shift segments and break parseUri() (ref becomes feature, path starts with foo/...). Encode the ref segment when constructing these URIs.
				return URI.from({
					scheme: GITHUB_REMOTE_FILE_SCHEME,
					authority: 'github',
					path: `/${parsed.owner}/${parsed.repo}/${ref}`,
				});

@osortega osortega marked this pull request as ready for review March 3, 2026 01:42
@vs-code-engineering vs-code-engineering bot added this to the March 2026 milestone Mar 3, 2026
@osortega osortega merged commit 001db3a into main Mar 3, 2026
20 checks passed
@osortega osortega deleted the osortega/managing-marmoset branch March 3, 2026 01:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants