fix(paths): normalize displayed paths to POSIX on Windows - #72
Merged
Merged
Conversation
Splash tilde paths, listFiles glob results, and workflowStatePath responses used native backslashes on win32, breaking tests and MCP consumers that expect forward slashes. Add toPosixContextPath and apply at API boundaries.
Owner
|
Thanks for contributting!! |
Open
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Bug
On Windows, several user-facing paths used native backslashes while tests and MCP clients expect forward slashes (POSIX-style), causing Jest failures on win32.
Reproduction
npm teston Windows (Node 20+) fails for:splashScreen › shortens home-directory paths with a tilde(expected~/workspace/..., got~\workspace\...)exploreActionService › uses the configured repo path as the default list cwd(glob returnedsrc\example.ts)workflowManage › instructs the caller...(workflowStatePathcontainedC:\...\.context\runtime\...instead of.context/runtime/workflows/prevc.jsonsubstring with forward slashes)CI on Linux stays green; the bug is cross-platform consistency at API boundaries.
Fix
formatSplashDirectory: tilde-relative segments joined with/listFilesTool: normalize glob results with forward slashestoPosixContextPathhelper + apply toworkflowStatePathin workflow/plan responsesVerified locally: targeted Jest suites pass;
tsc --noEmitclean.