core-agent-ide/codex-rs/app-server/tests/suite
Owen Lin 0d8b2b74c4
feat(app-server): turn/steer API (#10821)
This PR adds a dedicated `turn/steer` API for appending user input to an
in-flight turn.

## Motivation
Currently, steering in the app is implemented by just calling
`turn/start` while a turn is running. This has some really weird quirks:
- Client gets back a new `turn.id`, even though streamed
events/approvals remained tied to the original active turn ID.
- All the various turn-level override params on `turn/start` do not
apply to the "steer", and would only apply to the next real turn.
- There can also be a race condition where the client thinks the turn is
active but the server has already completed it, so there might be bugs
if the client has baked in some client-specific behavior thinking it's a
steer when in fact the server kicked off a new turn. This is
particularly possible when running a client against a remote app-server.

Having a dedicated `turn/steer` API eliminates all those quirks.

`turn/steer` behavior:
- Requires an active turn on threadId. Returns a JSON-RPC error if there
is no active turn.
- If expectedTurnId is provided, it must match the active turn (more
useful when connecting to a remote app-server).
- Does not emit `turn/started`.
- Does not accept turn overrides (`cwd`, `model`, `sandbox`, etc.) or
`outputSchema` to accurately reflect that these are not applied when
steering.
2026-02-06 00:35:04 +00:00
..
v2 feat(app-server): turn/steer API (#10821) 2026-02-06 00:35:04 +00:00
archive_thread.rs chore: unify conversation with thread name (#8830) 2026-01-07 17:04:53 +00:00
auth.rs [chore] move app server tests from chat completion to responses (#8939) 2026-01-08 22:27:55 +00:00
codex_message_processor_flow.rs fix: flaky landlock (#10689) 2026-02-05 10:30:18 +00:00
config.rs fix: added test helpers for platform-specific paths (#7954) 2025-12-13 00:14:12 +00:00
create_thread.rs Add text element metadata to protocol, app server, and core (#9331) 2026-01-15 17:26:41 -08:00
fork_thread.rs feat: fork conversation/thread (#8866) 2026-01-08 12:54:20 -08:00
fuzzy_file_search.rs file-search: improve file query perf (#9939) 2026-01-28 10:54:43 -08:00
interrupt.rs Fix test_shell_command_interruption flake (#10649) 2026-02-04 22:19:06 +00:00
list_resume.rs chore: add phase to message responseitem (#10455) 2026-02-03 02:52:26 +00:00
login.rs [chore] move app server tests from chat completion to responses (#8939) 2026-01-08 22:27:55 +00:00
mod.rs feat: fork conversation/thread (#8866) 2026-01-08 12:54:20 -08:00
output_schema.rs Add text element metadata to protocol, app server, and core (#9331) 2026-01-15 17:26:41 -08:00
send_message.rs fix(core,app-server) resume with different model (#10719) 2026-02-05 00:40:05 -08:00
set_default_model.rs feat: arcticfox in the wild (#6906) 2025-11-19 16:31:06 +00:00
user_agent.rs fix(app-server): set originator header from initialize (re-revert) (#8988) 2026-01-09 12:09:30 -08:00
user_info.rs chore: use anyhow::Result for all app-server integration tests (#5836) 2025-10-28 08:10:23 -07:00