SIGN IN SIGN UP

agent host: handle elicitation requests from copilot SDK (#315882)

* agent host: handle elicitation requests from copilot SDK

- Implements the new `onElicitationRequest` hook from the Copilot SDK so that the copilot agent can surface elicitations (free-form, schema, and URL) as session input requests, dispatching the agent's reply back through the SDK once the user responds.
- Renders URL-mode elicitations in the chat UI as a proper `ChatElicitationRequestPart` that opens the URL via `IOpenerService` and dispatches Accept/Decline/Cancel, instead of falling through to the question-carousel fallback which was not designed for URL approvals.
- Adds unit tests covering the new agent-side elicitation flow as well as the workbench-side URL elicitation rendering, opener integration, decline/cancel paths, and external-completion echoes.

Fixes <no issue>

(Commit message generated by Copilot)

* address review feedback for url elicitation handling

- settle() is idempotent without short-circuiting on cancellation
- map server-side SessionInputCompleted to ElicitationState before hide()
- check IOpenerService.open() return value; treat false as Decline
- tighten boolean/number text coercion in elicitationAnswerToFieldValue
- handle free-form (no schema) accept by returning { answer: text }
- add tests covering server-side dismissal (Cancel) and opener=false
C
Connor Peet committed
acdf223a8008e8f34ed3209ebdef52caa8224765
Parent: 830b948
Committed by GitHub <noreply@github.com> on 5/11/2026, 10:39:11 PM