Files
orca/src/main/wsl
Neil 8cf6e12009 fix(wsl): stop runWslProcess inheriting a removable spawn directory (#17837)
#17834 named an explicit Windows cwd for the wsl.exe spawns in
wsl-command-resolution and wsl.ts, but runWslProcess -- which 25 production
files route through, the bulk of WSL spawns -- still passed none, so #16463
survived on the majority path: an inherited cwd that is later deleted (the
worktree Orca launched from) fails every subsequent spawn for the session.

The test asserted `cwd` was undefined, so the fix turned it red. That
assertion was over-tight rather than a contract this violates. Its name and
the production comment both state the real invariant -- "that is a *Windows*
directory for wsl.exe", i.e. the GUEST path must never leak into it -- and
withGuestCwd still cds inside the guest, so the invariant holds. Undefined was
a proxy for it, and an inherited directory satisfies the proxy while being the
bug. Retargeted to assert what is actually meant: not the guest path, and
present.

Deliberately not silent: the salvage agent hit this, reverted rather than
overrule a documented contract in a module it was not sent to change, and
escalated. That was the right call to escalate; this is the answer.
2026-09-02 21:33:45 -07:00
..