fix(wsl): preserve single-letter POSIX terminal cwd - #13859
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (14)
📝 WalkthroughWalkthroughThe daemon protocol advances from version 32 to 33 and adds a WSL POSIX CWD protocol gate. Legacy protocol version 32 remains supported, including session routing. PTY startup defers fresh-session CWD validation until after stable-pane adoption. Local spawns validate Windows and WSL paths, record validated CWD data, and pass matching prevalidation evidence to providers. Tests cover WSL, Windows, Git Bash, SSH, fallback, and adopted-pane scenarios. 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
@coderabbitai full review |
✅ Action performedFull review finished. |
There was a problem hiding this comment.
Actionable comments posted: 1
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository UI
Review profile: CHILL
Plan: Pro Plus
Run ID: 34225254-a3e5-4c03-b981-ada1bd67c78a
📒 Files selected for processing (14)
src/main/daemon/daemon-foreground-confirmation-protocol.test.tssrc/main/daemon/daemon-protocol-version.test.tssrc/main/daemon/daemon-protocol-version.tssrc/main/daemon/daemon-pty-router.test.tssrc/main/daemon/pty-subprocess.test.tssrc/main/ipc/pty.test.tssrc/main/ipc/pty.tssrc/main/providers/local-pty-provider.test.tssrc/main/providers/local-pty-provider.tssrc/main/providers/pty-provider-contract.tssrc/main/providers/windows-shell-args.test.tssrc/main/providers/windows-shell-args.tssrc/shared/local-build-compatibility-contract.jsonsrc/shared/local-build-compatibility-contract.ts
|
@coderabbitai full review |
✅ Action performedFull review finished. |
(cherry picked from commit e6eec11)
(cherry picked from commit e6eec11)
Summary
/aand/c, when the selected Windows runtime is WSL.This is the latest-main release audit follow-up for historical PR #13420.
Linear: STA-3925
Screenshots
No visual change.
Testing
pnpm lintpnpm typecheckpnpm testpnpm buildCompleted proportional validation:
origin/main: baseline RED, candidate GREEN, in-memory revert RED for both/aand/c.Ubuntu-24.04) proof: exact/aand/c; missingwsl.exe --cd /qwarns, returns/, and exits 0; inode-guarded cleanup verified./a->C:\a,/c->C:\c; Git Bash/MSYS:/a->A:\,/c->C:\.AI Review Report
Fresh adversarial, performance, and internal reviews are clean. Review explicitly covered macOS, Linux, and Windows path/shell behavior; WSL vs native/MSYS authority; SSH and folder workspaces; stable-pane probe cost; daemon generation skew; test quality; and Electron main/daemon boundaries.
Review findings addressed:
/aor/cspawns./a//c, timing attribution, and local-build compatibility coverage.Security Audit
Reviewed cwd input handling, path normalization, WSL command construction/quoting, IPC/provider trust boundaries, SSH isolation, and daemon protocol skew. The exact-path prevalidation hint remains in-process only and must equal the provider’s independently resolved path; it is not sent over daemon or SSH RPC. No auth, secret, dependency, or new external-command surface was added.
Notes
pty.test.tshas three unchanged Windows host-coupling failures, and fullpty-subprocess.test.tshas two unchanged default-distro expectation failures. Focused changed contracts pass.