mirror of
https://github.com/openai/codex.git
synced 2026-09-13 11:47:17 +00:00
## Why Terminating a Windows execution session must also stop child processes, while a normal root-process exit must continue to allow background descendants to run. ## What changed - Assign Windows pipe, ConPTY, and sandbox processes to job objects and terminate the job when a session is cancelled, times out, or is explicitly stopped. - Preserve descendants when the root process exits normally. - Attach ConPTY and sandbox processes to their jobs atomically at creation; keep root-process termination as a fallback where job setup is unavailable. ## Testing Added Windows coverage for descendant termination and preservation across pipe, ConPTY, capture, cancellation, and legacy sandbox execution paths. GitOrigin-RevId: 8f831f2fc4caaa7b79ce842a3ed7192bd02dd3b4
39 lines
819 B
TOML
39 lines
819 B
TOML
[package]
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
name = "codex-utils-pty"
|
|
version.workspace = true
|
|
|
|
[lints]
|
|
workspace = true
|
|
|
|
[dependencies]
|
|
anyhow = { workspace = true }
|
|
portable-pty = { workspace = true }
|
|
tokio = { workspace = true, features = ["io-util", "macros", "process", "rt-multi-thread", "sync", "time"] }
|
|
|
|
[dev-dependencies]
|
|
pretty_assertions = { workspace = true }
|
|
|
|
[target.'cfg(windows)'.dependencies]
|
|
filedescriptor = "0.8.3"
|
|
lazy_static = { workspace = true }
|
|
log = { workspace = true }
|
|
shared_library = "0.1.9"
|
|
winapi = { version = "0.3.9", features = [
|
|
"handleapi",
|
|
"jobapi2",
|
|
"minwinbase",
|
|
"processthreadsapi",
|
|
"synchapi",
|
|
"winbase",
|
|
"wincon",
|
|
"winerror",
|
|
"winnt",
|
|
] }
|
|
[target.'cfg(unix)'.dependencies]
|
|
libc = { workspace = true }
|
|
|
|
[lib]
|
|
doctest = false
|