uds: add async Unix socket crate (#18254)

## Summary
- add a codex-uds crate with async UnixListener and UnixStream wrappers
- expose helpers for private socket directory setup and stale socket
path checks
- migrate codex-stdio-to-uds onto codex-uds and Tokio-based stdio/socket
relaying
- update the CLI stdio-to-uds command path for the async runner

## Tests
- cargo test -p codex-uds -p codex-stdio-to-uds
- cargo test -p codex-cli
- just fmt
- just fix -p codex-uds
- just fix -p codex-stdio-to-uds
- just fix -p codex-cli
- just bazel-lock-check
- git diff --check
This commit is contained in:
Ruslan Nigmatullin authored and GitHub committed 2026-04-20 15:59:05 -07:00
1 parent 1029742cf7
commit 97d4b42583
12 files changed
+641 -133

No files matched your search

+15 -1
View File
@@ -2891,10 +2891,11 @@ name = "codex-stdio-to-uds"
version = "0.0.0"
dependencies = [
"anyhow",
"codex-uds",
"codex-utils-cargo-bin",
"pretty_assertions",
"tempfile",
"uds_windows",
"tokio",
]
[[package]]
@@ -3058,6 +3059,18 @@ dependencies = [
"winsplit",
]
[[package]]
name = "codex-uds"
version = "0.0.0"
dependencies = [
"async-io",
"pretty_assertions",
"tempfile",
"tokio",
"tokio-util",
"uds_windows",
]
[[package]]
name = "codex-utils-absolute-path"
version = "0.0.0"
@@ -10970,6 +10983,7 @@ checksum = "9ae9cec805b01e8fc3fd2fe289f89149a9b66dd16786abd8b19cfa7b48cb0098"
dependencies = [
"bytes",
"futures-core",
"futures-io",
"futures-sink",
"futures-util",
"pin-project-lite",