fix(cli): support non-ASCII Windows agent paths - #2244
lorenzozanee wants to merge 1 commit into
Conversation
Signed-off-by: lorenzozanee <wyz0707@proton.me>
|
Thanks for opening this — it has been seen, and it is queued. This note is automated, but it is not a brush-off: it exists so you know where your PR stands instead of having to guess from silence. Current review status: working through a backlog. What that means for this PR, concretely:
Things that will genuinely speed it up whenever review does happen:
If this fixes a bug, a reproduction we can run is worth more than a description of the symptom. Thanks for contributing, and sorry in advance for the wait. |
|
Thank you — this is the right fix, and I checked the part of it most likely to bite before saying so. The production change is correct on every platform. One real failure, and it is a one-character fix. It is not a Unicode problem. return cbm_mkdir(tmp) == 0 || errno == EEXIST ? 0 : -1;and the test reads it as a boolean: if (!test_mkdirp(claude_dir))
FAIL("could not create non-ASCII Windows profile path");
The other red is ours, not yours: Push the one-line fix and I will re-review promptly — once that test actually runs, it becomes the proof that the production change works on a real non-ASCII Windows profile, which is the part I cannot verify locally today. |
What does PR do?
On Windows, agent detection could report no agents when the profile path contained non-ASCII characters because the lookup used narrow
stat(). This switches detection to the existing UTF-8 path metadata wrapper, which uses the wide Windows filesystem API.Adds a Windows regression test covering a non-ASCII profile path containing
.claude. Production syntax and diff checks pass; related suites passed on the existing baseline binary. The Windows runtime regression, full rebuilt test suite, and lint require follow-up in CI or a suitable Windows/tooling environment.Checklist
git commit -s) — required, CI rejects unsigned commits (DCO, CONTRIBUTING.md)make -f Makefile.cbm test)make -f Makefile.cbm lint-ci)Fixes #2145