microsoft / microsoft/AI-Engineering-Coach

WSL path parsing should support all workspace path formats (Linux, Windows mount, UNC, and remote URI)

Open
#71 0 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
4.2k
Forks
585
Avg merge
22h 5m
Merged PRs (30d)
16

Description

Summary

When running in a WSL-based setup, workspace/session locations can show up in multiple path formats. The parser should recognize and normalize all common variants so sessions are not dropped or labeled as unknown workspace.

Problem

In WSL environments, the same workspace can appear as Linux paths, Windows-mounted paths, Windows UNC paths, or remote URI paths. If only a subset is parsed, metrics and workspace attribution become incomplete or incorrect.

Path formats the parser should handle

Native Linux paths
/home//
/home//.config/Code/User/workspaceStorage
/home//.vscode-server/data/User/workspaceStorage
/home//.vscode-server-insiders/data/User/workspaceStorage

WSL-mounted Windows paths
/mnt/c/Users//AppData/Roaming/Code/User/workspaceStorage
/mnt/c/Users//AppData/Roaming/Code - Insiders/User/workspaceStorage
/mnt//Users//AppData/Roaming/Code/User/workspaceStorage (not only c drive)

Windows absolute paths
C:/Users//
C:\Users

UNC forms for WSL
\wsl$\Ubuntu\home
\wsl.localhost\Ubuntu\home

URI forms
file:///home//
file:///C:/Users//
vscode-remote://wsl+Ubuntu/home//

Encoding and formatting edge cases
  • Paths with spaces
  • Percent-encoded characters (for example %20)
  • Trailing slashes
  • Mixed slash direction from copied paths
Expected behavior

All supported forms above should resolve to a stable canonical workspace path and map to the correct workspace/session identity.

Acceptance criteria
  • Parser accepts all listed path formats and does not return unknown for valid WSL workspace paths.
  • Canonicalization is deterministic (same workspace always maps to one normalized value).
  • Tests cover each format category and edge case (spaces, encoding, trailing slash, mixed slashes).
  • Discovery logic for Windows-hosted VS Code data under WSL is not restricted to c drive only.
Why this matters

WSL users frequently have mixed path sources across tools and logs. Without robust normalization, dashboards and analysis undercount activity and fragment workspace-level insights.

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

Locate the workspace path parser and the discovery logic for Windows-hosted VS Code data under WSL, then review existing normalization tests. Add coverage for Linux, mounted Windows, Windows, UNC, and URI forms plus spaces, encoding, trailing slashes, and mixed separators. Done means every listed valid form maps deterministically to the same workspace identity and discovery is not limited to the C drive.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript, vscode
Domain
developer-experience, tooling
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
58/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.