core-agent-ide/codex-rs/cli/src
Max Johnson 7053aa5457
Reapply "Add app-server transport layer with websocket support" (#11370)
Reapply "Add app-server transport layer with websocket support" with
additional fixes from https://github.com/openai/codex/pull/11313/changes
to avoid deadlocking.

This reverts commit 47356ff83c.

## Summary

To avoid deadlocking when queues are full, we maintain separate tokio
tasks dedicated to incoming vs outgoing event handling
- split the app-server main loop into two tasks in
`run_main_with_transport`
   - inbound handling (`transport_event_rx`)
   - outbound handling (`outgoing_rx` + `thread_created_rx`)
- separate incoming and outgoing websocket tasks

## Validation

Integration tests, testing thoroughly e2e in codex app w/ >10 concurrent
requests

<img width="1365" height="979" alt="Screenshot 2026-02-10 at 2 54 22 PM"
src="https://github.com/user-attachments/assets/47ca2c13-f322-4e5c-bedd-25859cbdc45f"
/>

---------

Co-authored-by: jif-oai <jif@openai.com>
2026-02-11 18:13:39 +00:00
..
debug_sandbox add codex debug seatbelt --log-denials (#4098) 2025-11-10 22:48:14 +00:00
desktop_app Add codex app macOS launcher (#10418) 2026-02-02 17:37:04 -08:00
app_cmd.rs Add codex app macOS launcher (#10418) 2026-02-02 17:37:04 -08:00
debug_sandbox.rs feat: split codex-common into smaller utils crates (#11422) 2026-02-11 12:59:24 +00:00
exit_status.rs feat: experimental env var: CODEX_SANDBOX_NETWORK_DISABLED (#879) 2025-05-09 18:29:34 -07:00
lib.rs feat: split codex-common into smaller utils crates (#11422) 2026-02-11 12:59:24 +00:00
login.rs feat: split codex-common into smaller utils crates (#11422) 2026-02-11 12:59:24 +00:00
main.rs Reapply "Add app-server transport layer with websocket support" (#11370) 2026-02-11 18:13:39 +00:00
mcp_cmd.rs feat: split codex-common into smaller utils crates (#11422) 2026-02-11 12:59:24 +00:00
wsl_paths.rs Fix toasts on Windows under WSL 2 (#7137) 2025-12-11 15:09:00 -08:00