microsoft / microsoft/AI-Engineering-Coach
WSL path parsing should support all workspace path formats (Linux, Windows mount, UNC, and remote URI)
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
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- 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