You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
feat(agents): support hosted voice conversation engines - #10900
require voice_conversation_engine/1.0.0 for Hosted Voice conversation-engine targets
preserve ordinary invocations_ws support as an independent protocol, including targets declaring both protocols
report the dedicated CE WebSocket endpoint and AGENT_<KEY>_VOICE_CONVERSATION_ENGINE_ENDPOINT
avoid unsupported Inspector/invoke guidance for CE-only local runs
Scope
This is an independent PR based on main. It does not depend on #10901 and does not change Voice preview flags or release metadata. Changes are confined to the azure.ai.agents extension: target validation, endpoint reporting, local guidance, focused tests, and necessary README updates. No schema, request mapping, init lifecycle, telemetry, or deployment-order changes.
Validation
full extension tests on latest main: GOWORK=off go test -p 1 ./...
Azure Pipelines:
Successfully started running 2 pipeline(s).
25 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.
The reason will be displayed to describe this comment to others. Learn more.
🟡 Changes recommended
Conversation-engine-only targets receive unsupported invoke guidance, while validation hints and documentation inaccurately describe the requirements for the supported voice paths.
The reason will be displayed to describe this comment to others. Learn more.
🟡 Changes recommended
Conversation-engine-only local runs print “In another terminal, try:” without a command because the heading is emitted even when the suggestion list is empty.
Scenario 10 cloud validation passed on the Foundry Dev Tools TTL 3-day subscription using the PR extension bundle (8419ba523): pinned public conversation-engine sample, provision/deploy, target readback with voice_conversation_engine/1.0.0, wrapper conversation_engine readback, Voice endpoint, text and audio smoke (input transcript, completed story, 561,600 output-audio bytes), repeat deploy/smoke, Vienna rejection of target protocol 2.0.0, and cleanup. Both Agents independently returned 404 and the dedicated resource group was deleted.
The reason will be displayed to describe this comment to others. Learn more.
🔵 Needs a closer look
Conversation-engine-only targets still auto-launch Agent Inspector or display its installation instructions, even though Inspector does not support that protocol.
No open issues 🎉
1 previously missed issue
In code that hasn't changed since last review
Suppress Agent Inspector for conversation-engine-only targets
For a conversation-engine-only target, runRun still auto-launches Agent Inspector (or prints its install instructions), even though Inspector only handles Responses/Invocations. Extend the run client profile to suppress that client for conversation-engine-only targets, while preserving it when an Inspector-supported protocol is co-declared.
The reason will be displayed to describe this comment to others. Learn more.
🟡 Changes recommended
Conversation-engine-only targets trigger false missing-deployment errors and an incompatible Inspector client, while cancellation can still produce a misleading “Agent ready” message.
The reason will be displayed to describe this comment to others. Learn more.
🟡 Changes recommended
Private monitoring defaults can silently disrupt unrelated workloads’ telemetry on existing VNets, while incomplete DNS checks allow changes to shared zones without adequate safeguards.
The reason will be displayed to describe this comment to others. Learn more.
🟡 Changes recommended
Targets declaring both voice and A2A protocols incorrectly launch or recommend installing Agent Inspector, which supports neither protocol, instead of preserving client-free A2A invocation guidance.
The reason will be displayed to describe this comment to others. Learn more.
🔵 Needs a closer look
Human assessment is needed because the conversation-engine shortcut can bypass required setup for endpoint-only Activity profiles, potentially breaking local messaging.
The reason will be displayed to describe this comment to others. Learn more.
🟡 Changes recommended
Hosted endpoint show can fail without a default environment despite successful project resolution, and can expose stale conversation-engine URLs because saved metadata completeness and project identity are not validated.
The reason will be displayed to describe this comment to others. Learn more.
🟡 Changes recommended
Comparing raw saved endpoints against normalized endpoints causes endpoint show to omit the conversation-engine URL for valid deployments with uppercase hostnames.
The reason will be displayed to describe this comment to others. Learn more.
🔵 Needs a closer look
Human assessment is needed because snapshots can retain stale CE URLs across extension versions and deployment changes, causing endpoint reporting to present outdated endpoints as callable.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
voice_conversation_engine/1.0.0for Hosted Voice conversation-engine targetsinvocations_wssupport as an independent protocol, including targets declaring both protocolsAGENT_<KEY>_VOICE_CONVERSATION_ENGINE_ENDPOINTScope
This is an independent PR based on main. It does not depend on #10901 and does not change Voice preview flags or release metadata. Changes are confined to the azure.ai.agents extension: target validation, endpoint reporting, local guidance, focused tests, and necessary README updates. No schema, request mapping, init lifecycle, telemetry, or deployment-order changes.
Validation
GOWORK=off go test -p 1 ./...The cloud evidence was collected on the earlier PR build; local tests/build have been rerun on this independently rebased head.