Describe the bug
Three notebooks could not be migrated as part of #544 because the primitives they relied on were removed from the public agent_framework API surface and replaced with a new architecture that isn't a one-to-one rename:
14-microsoft-agent-framework/code-samples/14-handoff.ipynb — uses HandoffBuilder, HandoffUserInputRequest, RequestInfoEvent, WorkflowOutputEvent, WorkflowStatusEvent. None of these are exported from agent_framework anymore.
14-microsoft-agent-framework/code-samples/14-human-loop.ipynb — uses RequestInfoExecutor, RequestInfoEvent, RequestInfoMessage, RequestResponse, WorkflowOutputEvent, WorkflowStatusEvent. None of these are exported from agent_framework anymore. Equivalents seem to live in private modules (agent_framework._workflows._request_info_mixin.RequestInfoMixin, agent_framework.orchestrations.AgentRequestInfoResponse) but the public HITL pattern isn't documented in the installed package and there are no shipped samples.
08-multi-agent/code_samples/workflows-agent-framework/python/04.python-agent-framework-workflow-aifoundry-condition.ipynb — uses HostedWebSearchTool, which is removed. The web-search tool now needs to be obtained via OpenAIChatClient.get_web_search_tool(), which doesn't compose with the AzureAIProjectAgentProvider path the rest of the migrated notebooks use.
To Reproduce
- Pull
main.
pip install -r requirements.txt (resolves agent-framework==1.0.0b260212).
- Open any of the three notebooks above and run the import cell. It fails with
ImportError for the names listed above.
Expected behavior
Each notebook should import cleanly and run end-to-end. The teaching points (handoff orchestration, human-in-the-loop, conditional workflow with web-search) should be expressible in the current agent_framework API.
Additional context
- Python 3.13.5 on Windows 11
agent-framework 1.0.0b260212
Each of these is a near-rewrite rather than a translation, because the replacement pattern is structurally different (e.g. HITL has moved from RequestInfoExecutor + RequestResponse to a different mixin/orchestration approach). It would help to have one official sample per pattern so contributors aren't reverse-engineering from private modules.
Describe the bug
Three notebooks could not be migrated as part of #544 because the primitives they relied on were removed from the public
agent_frameworkAPI surface and replaced with a new architecture that isn't a one-to-one rename:14-microsoft-agent-framework/code-samples/14-handoff.ipynb— usesHandoffBuilder,HandoffUserInputRequest,RequestInfoEvent,WorkflowOutputEvent,WorkflowStatusEvent. None of these are exported fromagent_frameworkanymore.14-microsoft-agent-framework/code-samples/14-human-loop.ipynb— usesRequestInfoExecutor,RequestInfoEvent,RequestInfoMessage,RequestResponse,WorkflowOutputEvent,WorkflowStatusEvent. None of these are exported fromagent_frameworkanymore. Equivalents seem to live in private modules (agent_framework._workflows._request_info_mixin.RequestInfoMixin,agent_framework.orchestrations.AgentRequestInfoResponse) but the public HITL pattern isn't documented in the installed package and there are no shipped samples.08-multi-agent/code_samples/workflows-agent-framework/python/04.python-agent-framework-workflow-aifoundry-condition.ipynb— usesHostedWebSearchTool, which is removed. The web-search tool now needs to be obtained viaOpenAIChatClient.get_web_search_tool(), which doesn't compose with theAzureAIProjectAgentProviderpath the rest of the migrated notebooks use.To Reproduce
main.pip install -r requirements.txt(resolvesagent-framework==1.0.0b260212).ImportErrorfor the names listed above.Expected behavior
Each notebook should import cleanly and run end-to-end. The teaching points (handoff orchestration, human-in-the-loop, conditional workflow with web-search) should be expressible in the current
agent_frameworkAPI.Additional context
agent-framework1.0.0b260212Each of these is a near-rewrite rather than a translation, because the replacement pattern is structurally different (e.g. HITL has moved from
RequestInfoExecutor+RequestResponseto a different mixin/orchestration approach). It would help to have one official sample per pattern so contributors aren't reverse-engineering from private modules.