Synced from monorepo
Synced from monorepo Changes: - Cache growing transcripts on the messages backend - Tell the model when a wait was clamped instead of re-inviting it - Stop the stationarity nudge from claiming results are identical - Deliver the stationarity nudge after the tool result - Run auth provider commands through the platform shell (fixes Windows) - Keep monitor tool stdout short and prescriptive - Use UUIDs for analytics event insert IDs - Stop crashing at startup when the host runs out of threads - Delete the current session from within the session - Add project forking-settings toggle (backend and deploy-time control) - Reap a session’s bash and background commands when it closes - Reap a session’s hook child processes when it closes - Track coding-data consent decisions - Fail open the access gate to stop false CLI paywalls - Ship Agent Dashboard user guide - Enable doom-loop recovery by default - Kill agent children and the idle inhibitor when the parent process dies - Fix multi-process credential wipe and orphaned session log writers Source-Revision: 6372e41d828b8a6ee82c29e01a69e27ec895cca9
This commit is contained in:
parent
5da6962e4a
commit
500129c714
89 changed files with 3841 additions and 771 deletions
|
|
@ -215,12 +215,14 @@ async fn run_external_auth_provider(
|
|||
"auth: running external auth provider"
|
||||
);
|
||||
|
||||
let mut cmd = tokio::process::Command::new("sh");
|
||||
cmd.args(["-c", command])
|
||||
.stdin(std::process::Stdio::null())
|
||||
// `sh -c` on unix, `cmd /C` on Windows — a hardcoded `sh` cannot spawn on a
|
||||
// default Windows install, and the spawn failure fell through to the
|
||||
// built-in browser login instead of honoring `auth_provider_command`.
|
||||
let mut cmd = crate::util::subprocess::shell_c(command);
|
||||
cmd.stdin(std::process::Stdio::null())
|
||||
.stdout(std::process::Stdio::piped())
|
||||
.kill_on_drop(true);
|
||||
// TODO: `kill_on_drop` SIGKILLs only the direct `sh` child; a provider that
|
||||
// TODO: `kill_on_drop` SIGKILLs only the direct shell child; a provider that
|
||||
// backgrounds work (setsid / `&`) leaks the grandchild on shutdown-cancel.
|
||||
// Proper fix: pgid-kill via xai-tty-utils.
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue