Skip to content

fix: keep idle steering fallback host-owned - #441

Open
fontanierh wants to merge 1 commit into
agentclientprotocol:mainfrom
fontanierh:fix/host-owned-steering
Open

fix: keep idle steering fallback host-owned#441
fontanierh wants to merge 1 commit into
agentclientprotocol:mainfrom
fontanierh:fix/host-owned-steering

Conversation

@fontanierh

Copy link
Copy Markdown

Lifecycle

active turn  -> inject                 -> original session/prompt completes
idle + opt-in -> promptRequired        -> host starts owned session/prompt
idle default  -> startedNewTurn        -> existing behavior

Adds the promptRequired opt-in already shipped by claude-agent-acp in #919. Invalid idle policies fail closed.

Tests cover idle, the completion race, legacy behavior, and malformed metadata.

Fixes #440.

srid added a commit to juspay/olai that referenced this pull request Sep 6, 2026
Sending another message while Codex was working opened an overlapping
ACP prompt. Older requests could remain unanswered after Codex finished,
leaving the panel stuck on “Codex is working…”. Busy sends now use
steering when the agent advertises steering without a prompt queue;
queue-capable agents retain their existing behavior.

Keep codex-acp 1.10.0 / Codex 0.153.3 and use Nix `fetchpatch` to
backport [upstream PR
#441](agentclientprotocol/codex-acp#441), pinned
to its commit and content hash. If a turn finishes before steering
arrives, the adapter returns the message to Olai to start a tracked
prompt. The upstream PR remains open; its branch is based on an older
adapter release.

Browser coverage exercises multiple busy sends, completion,
cancellation, refused-steering retry, and completion/cancellation races.
Chat documentation is updated.

Validation:

- Full `just ci` passed on `274a7f483`: 49 successful jobs, including
all 1,485 browser scenarios.
- The packaged build includes 10 upstream steering tests.
- Passed on rerun without code changes; earlier attempts hit
intermittent conversation-restoration timeouts.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Steering should support a host-owned idle fallback

1 participant