text: Title: `(cd subdir && ls)` gives error
  Body: <!--- Provide a general summary of the issue in the Title above -->
  <!--- If you have a question along the lines of "How do I do this Bash command in xonsh"
  please first look over the Bash to Xonsh translation guide: https://xon.sh/bash_to_xsh.html
  If you don't find an answer there, please do open an issue! -->
  
  ## xonfig
  
  <details>
  
  ```
  $ xonfig
  +------------------+-----------------+
  | xonsh            | 0.14.3          |
  | Python           | 3.11.6          |
  | PLY              | 3.11            |
  | have readline    | True            |
  | prompt toolkit   | 3.0.41          |
  | shell type       | prompt_toolkit  |
  | history backend  | json            |
  | pygments         | 2.17.2          |
  | on posix         | True            |
  | on linux         | False           |
  | on darwin        | True            |
  | on windows       | False           |
  | on cygwin        | False           |
  | on msys2         | False           |
  | is superuser     | False           |
  | default encoding | utf-8           |
  | xonsh encoding   | utf-8           |
  | encoding errors  | surrogateescape |
  | xontrib          | []              |
  | RC file          | []              |
  +------------------+-----------------+
  ```
  
  </details>
  
  ## Expected Behavior
  `(cd subdir && ls)` should print out the contents of `subdir` assuming a directory by that name exists, without prefixing the names by `subdir/`.  If I understand the semantics of `()` correctly, the shell's cwd should remain unchanged.
  
  ## Current Behavior
  <!--- Tell us what happens instead of the expected behavior -->
  <!--- If part of your bug report is a traceback, please first enter debug mode before triggering the error
  To enter debug mode, set the environment variable `XONSH_DEBUG=1` _before_ starting `xonsh`.
  On Linux and OSX, an easy way to to do this is to run `env XONSH_DEBUG=1 xonsh` -->
  
  xonsh says `cd: no such file or directory: subdir` and skips the `ls`.  But the shell's cwd is switched to `subdir` anyway.
  
  ### Traceback (if applicable)
  
  N/A
  
  ## Steps to Reproduce
  <!--- Please try to write out a minimal reproducible snippet to trigger the bug, it will help us fix it! -->
  Start up xonsh and type 
  ```xsh
  mkdir subdir
  touch subdir/file-a
  (cd subdir && ls)
  ```
  
  ## For community
  ⬇️  **Please click the 👍 reaction instead of leaving a `+1` or 👍  comment**
  