mirror of
https://github.com/stablyai/orca.git
synced 2026-11-15 02:17:31 +00:00
* fix(serve): keep `orca serve` running while it probes the login shell
`orca serve` started from an interactive terminal stopped itself ("[1]+
Stopped") before printing its pairing link. orcad inherits the terminal
and probes the login shell with `$SHELL -ilc`; an interactive bash 5 or
zsh takes the terminal's foreground job, so orcad's next terminal access
raised SIGTTOU/SIGTTIN. Give both shell probes (login environment and
PATH) a POSIX session of their own so they never hold a controlling
terminal. Windows keeps attached spawns, where `detached` would open a
console.
Refs #38347
* fix(serve): end a detached shell probe with its owner and on timeout
A probe in its own session no longer receives the terminal's Ctrl+C or
hangup, so a hung rc could outlive `orca serve`. Kill the probe's process
group by its own pid when it times out and when its owner exits while it
still runs; orcad and Electron turn INT/TERM into an exit, so a Ctrl+C
reaches it that way. No signal listeners: one would replace Electron's
graceful signal quit. The timeout now also ends what the rc started, not
just the shell.
Refs #38347
34 lines
1.7 KiB
JavaScript
34 lines
1.7 KiB
JavaScript
// Files whose edits run the real-shell contracts job (shell_contracts in pr.yml).
|
|
export const SHELL_PREFIXES = [
|
|
'src/main/daemon/shell-readiness/testing/repro-13767-shell-ready-marker-lost-to-exec.test.ts',
|
|
'src/main/daemon/shell-readiness/shell-ready.ts',
|
|
'src/main/daemon/shell-readiness/testing/shell-ready-bash-wrapper.test.ts',
|
|
'src/main/daemon/shell-readiness/testing/shell-ready.test.ts',
|
|
'src/main/daemon/shell-readiness/daemon-bash-shell-ready-rcfile.ts',
|
|
'src/main/daemon/shell-readiness/daemon-shell-ready-wrapper-fileset.ts',
|
|
'src/main/daemon/pty-subprocess/testing/node-pty-fd-leak.test.ts',
|
|
'src/main/providers/local-pty/local-pty-shell-ready',
|
|
'src/main/pty/',
|
|
'src/main/runtime/agent-session/environment/structured-session-cli-login-shell',
|
|
'src/main/runtime/agent-session/environment/structured-session-login-shell-test-harness',
|
|
'src/main/runtime/agent-session/environment/structured-session-child-env',
|
|
'src/main/startup/shell-probe-terminal-detach',
|
|
'src/main/startup/shell-probe-lifetime',
|
|
'src/main/startup/hydrate-shell-path',
|
|
'src/main/startup/login-shell-environment',
|
|
'src/main/startup/shell-path-probe',
|
|
'src/renderer/src/components/terminal-pane/fish-color-scheme',
|
|
'src/shared/fish-',
|
|
'src/shared/terminal/pty/ingress/pty-reply-echo-shapes',
|
|
'src/shared/startup-shell-portability',
|
|
'src/shared/posix-command-path-lookup',
|
|
'src/main/wsl/filesystem/wsl-shell-cwd-report',
|
|
'src/main/wsl/filesystem/wsl-sh-cwd-report',
|
|
'src/shared/wsl-login-shell-command',
|
|
'config/patches/node-pty@',
|
|
'config/scripts/ensure-native-runtime',
|
|
'config/scripts/native-build/node-addons/ensure-native-runtime',
|
|
'config/scripts/node-pty-job-ownership',
|
|
'config/scripts/native-build/node-addons/node-pty-job-ownership'
|
|
]
|