* fix(terminal): give plain shells and cmd.exe Codex launches --no-daemon
Plain bash, zsh and fish tabs were never wrapped, so a typed codex skipped the
shell function that adds --no-daemon. Wrap them (bash keeps its prompt and
DEBUG trap untouched unless Orca asked for command markers), add --no-daemon
host-side where no function can run (cmd.exe, path-named binaries), and move
new tabs to a v38 terminal daemon so they get the new wrappers.
* fix(terminal): keep plain bash a login shell and give the setup gate the codex function
Plain bash and Git Bash tabs launch exactly as before again: the rcfile
wrapper would have made every one a non-login shell. Plain tabs on the
user's configured shell args stay unwrapped on both transports. The
wait-for-setup gate's bash -lc now defines the codex function, so a
sequenced Codex launch gets --no-daemon from the binary it actually runs.
* fix(terminal): define the setup gate's codex function after setup finishes
Setup can be what puts codex on PATH, so defining the function before the
marker wait found no binary and skipped --no-daemon.
* refactor(terminal): fold the SSH/WSL guard into the Codex launch planner and bound the gate test
* fix(terminal): honour the pane's env deletions in the Codex opt-out check
Also pin the setup-gate test's fake codex ahead of path_helper's PATH.
* revert(terminal): launch plain zsh and fish tabs exactly as on main
Drops the always-wrap for plain zsh and fish, the configured-args guard
that only served it, and the v38 daemon bump: the daemon's launch configs
and generated wrappers are byte-identical to main again. Keeps the
host-side --no-daemon for cmd.exe and path-named launches and the setup
gate's codex function.