Skip to content

Porting Dialogs system from BotFramework Python#378

Merged
rodrigobr-msft merged 30 commits into
mainfrom
users/robrandao/dialogs
Apr 28, 2026
Merged

Porting Dialogs system from BotFramework Python#378
rodrigobr-msft merged 30 commits into
mainfrom
users/robrandao/dialogs

Conversation

@rodrigobr-msft
Copy link
Copy Markdown
Contributor

@rodrigobr-msft rodrigobr-msft commented Apr 28, 2026

PR Description

Port BotFramework Dialogs Package and Sample Restructuring

** Dialogs Package**

  • Ported BotFramework dialogs system to Microsoft Agents SDK
  • Includes dialog memory management, state persistence, and navigation utilities

** Additional Changes**

  • Test Sample Restructuring: Reorganized existing authentication samples (fic/, mi/, bizchat-sso/) for better discoverability
  • Testing Framework: Added ActivityHandlerScenario to the testing package for scenario-based test validation

Primary focus is porting the dialogs system with supporting changes to improve developer experience and testing infrastructure.

Copilot AI review requested due to automatic review settings April 28, 2026 22:40
@rodrigobr-msft rodrigobr-msft marked this pull request as ready for review April 28, 2026 22:40
@rodrigobr-msft rodrigobr-msft requested a review from a team as a code owner April 28, 2026 22:40
@rodrigobr-msft rodrigobr-msft merged commit 33bf3d4 into main Apr 28, 2026
13 checks passed
@rodrigobr-msft rodrigobr-msft deleted the users/robrandao/dialogs branch April 28, 2026 22:44
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Ports a BotFramework-style Dialogs system into the Microsoft 365 Agents SDK for Python, adds multiple compatibility samples (dialogs, Teams, agent-to-agent, weather), and wires the new dialogs package into dev setup and CI packaging.

Changes:

  • Introduces microsoft-agents-hosting-dialogs library (dialogs, prompts, memory scopes/path resolvers, choices) plus associated tests.
  • Adds several test_samples/compat samples ported from BotBuilder-Samples (dialogs, Teams task modules/pages/cards, agent-to-agent, weather agent using OpenAI Agents).
  • Updates dev setup scripts and CI workflows to build/install the new dialogs wheel.

Reviewed changes

Copilot reviewed 184 out of 224 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
test_samples/compat/weather-agent-open-ai/weather_agent.py Weather agent using OpenAI Agents runner with adaptive card/text output.
test_samples/compat/weather-agent-open-ai/tools/get_weather_tool.py Function tool returning a mock weather model.
test_samples/compat/weather-agent-open-ai/tools/date_time_tool.py Function tool returning current datetime.
test_samples/compat/weather-agent-open-ai/requirements.txt Dependencies for the weather OpenAI sample.
test_samples/compat/weather-agent-open-ai/env.TEMPLATE Env template normalization for the weather OpenAI sample.
test_samples/compat/weather-agent-open-ai/config.py Sample config for auth + Azure OpenAI settings.
test_samples/compat/weather-agent-open-ai/app.py Aiohttp host wiring for the weather OpenAI sample.
test_samples/compat/teams_agent/teams_sso.py Teams SSO handler import adjustment.
test_samples/compat/teams_agent/teams_multi_feature.py Teams multi-feature handler import adjustment.
test_samples/compat/teams_agent/pages/youtube.html Adds a Teams task module page embedding YouTube.
test_samples/compat/teams_agent/pages/customForm.html Adds a Teams task module page with a custom form.
test_samples/compat/teams_agent/helpers/ui_settings.py Adds UI settings model used by Teams task modules.
test_samples/compat/teams_agent/helpers/task_module_ui_constants.py Adds constants describing task module UI presets.
test_samples/compat/teams_agent/helpers/task_module_response_factory.py Adds factory utilities for task module responses.
test_samples/compat/teams_agent/helpers/task_module_ids.py Adds enum IDs for task modules.
test_samples/compat/teams_agent/graph_client.py Adds a simple aiohttp-based Graph client helper.
test_samples/compat/teams_agent/env.TEMPLATE Env template normalization for Teams agent sample.
test_samples/compat/teams_agent/config.py Teams agent auth/config wiring.
test_samples/compat/teams_agent/cards/UserProfileCard.json Adds adaptive card template for user profile.
test_samples/compat/teams_agent/cards/RestaurantCard.json Adds sample restaurant adaptive card.
test_samples/compat/teams_agent/cards/AdaptiveCard_TaskModule.json Adds adaptive card used in task module sample.
test_samples/compat/teams_agent/cards/AdaptiveCard.json Adds basic adaptive card sample.
test_samples/compat/teams_agent/app.py Teams agent sample host import adjustment.
test_samples/compat/dialogs/user_auth/src/main_dialog.py Ported user-auth main dialog (OAuth prompt + confirm).
test_samples/compat/dialogs/user_auth/src/main.py Aiohttp host for user-auth dialog sample.
test_samples/compat/dialogs/user_auth/src/logout_dialog.py Adds logout interception dialog base.
test_samples/compat/dialogs/user_auth/src/dialog_helper.py Helper to run dialogs via DialogSet/DialogContext.
test_samples/compat/dialogs/user_auth/src/dialog_agent.py ActivityHandler driving a root dialog and saving state.
test_samples/compat/dialogs/user_auth/src/auth_agent.py Dialog agent variant that routes invoke activities too.
test_samples/compat/dialogs/user_auth/src/init.py Package marker for user_auth sample.
test_samples/compat/dialogs/user_auth/requirements.txt Dependencies for user_auth dialog sample.
test_samples/compat/dialogs/user_auth/env.TEMPLATE Env template for user_auth dialog sample.
test_samples/compat/dialogs/user_auth/README.md Notes about the port and invoke hook usage.
test_samples/compat/dialogs/oauth_prompt/src/user_profile_dialog.py OAuth prompt sample dialog that calls Graph /me.
test_samples/compat/dialogs/oauth_prompt/src/main.py Aiohttp host for oauth_prompt dialog sample.
test_samples/compat/dialogs/oauth_prompt/src/dialog_helper.py Helper to run dialogs via DialogSet/DialogContext.
test_samples/compat/dialogs/oauth_prompt/src/create_profile_card.py Builds an adaptive card for user profile display.
test_samples/compat/dialogs/oauth_prompt/src/agent.py Dialog-driving ActivityHandler for oauth_prompt sample.
test_samples/compat/dialogs/oauth_prompt/src/init.py Package marker for oauth_prompt sample.
test_samples/compat/dialogs/oauth_prompt/requirements.txt Dependencies for oauth_prompt dialog sample.
test_samples/compat/dialogs/oauth_prompt/env.TEMPLATE Env template for oauth_prompt dialog sample.
test_samples/compat/dialogs/oauth_prompt/README.md Readme for oauth_prompt dialog sample.
test_samples/compat/dialogs/multi_turn/src/user_profile.py User profile state model for multi-turn sample.
test_samples/compat/dialogs/multi_turn/src/main.py Aiohttp host for multi_turn sample.
test_samples/compat/dialogs/multi_turn/src/dialog_helper.py Helper to run dialogs via DialogSet/DialogContext.
test_samples/compat/dialogs/multi_turn/src/agent.py Dialog-driving ActivityHandler for multi_turn sample.
test_samples/compat/dialogs/multi_turn/src/init.py Package marker for multi_turn sample.
test_samples/compat/dialogs/multi_turn/requirements.txt Dependencies for multi_turn dialog sample.
test_samples/compat/dialogs/multi_turn/env.TEMPLATE Env template for multi_turn dialog sample.
test_samples/compat/dialogs/multi_turn/README.md Readme for multi_turn dialog sample.
test_samples/compat/dialogs/custom_dialogs/src/slot_filling_dialog.py Implements a custom slot-filling dialog.
test_samples/compat/dialogs/custom_dialogs/src/slot_details.py Slot definition object for slot-filling dialog.
test_samples/compat/dialogs/custom_dialogs/src/root_dialog.py Root dialog wiring slot-filling + prompts.
test_samples/compat/dialogs/custom_dialogs/src/main.py Aiohttp host for custom_dialogs sample.
test_samples/compat/dialogs/custom_dialogs/src/dialog_helper.py Helper to run dialogs via DialogSet/DialogContext.
test_samples/compat/dialogs/custom_dialogs/src/agent.py Dialog-driving ActivityHandler for custom_dialogs sample.
test_samples/compat/dialogs/custom_dialogs/src/init.py Package marker for custom_dialogs sample.
test_samples/compat/dialogs/custom_dialogs/requirements.txt Dependencies for custom_dialogs sample.
test_samples/compat/dialogs/custom_dialogs/env.TEMPLATE Env template for custom_dialogs sample.
test_samples/compat/dialogs/custom_dialogs/README.md Readme for custom_dialogs sample.
test_samples/compat/dialogs/complex_dialog/src/user_profile.py User profile model for complex_dialog sample.
test_samples/compat/dialogs/complex_dialog/src/top_level_dialog.py Top-level dialog collecting name/age and branching.
test_samples/compat/dialogs/complex_dialog/src/review_selection_dialog.py Dialog collecting company choices (loop/replace).
test_samples/compat/dialogs/complex_dialog/src/main_dialog.py Main dialog wrapping top-level dialog and storing results.
test_samples/compat/dialogs/complex_dialog/src/main.py Aiohttp host for complex_dialog sample.
test_samples/compat/dialogs/complex_dialog/src/dialog_helper.py Helper to run dialogs via DialogSet/DialogContext.
test_samples/compat/dialogs/complex_dialog/src/dialog_and_welcome_agent.py Dialog agent that also sends welcome messages.
test_samples/compat/dialogs/complex_dialog/src/dialog_agent.py Dialog-driving ActivityHandler for complex_dialog sample.
test_samples/compat/dialogs/complex_dialog/src/init.py Package marker for complex_dialog sample.
test_samples/compat/dialogs/complex_dialog/requirements.txt Dependencies for complex_dialog sample.
test_samples/compat/dialogs/complex_dialog/env.TEMPLATE Env template for complex_dialog sample.
test_samples/compat/dialogs/complex_dialog/README.md Readme for complex_dialog sample.
test_samples/compat/agent_to_agent/agent_2/env.TEMPLATE Env template normalization for agent_2 sample.
test_samples/compat/agent_to_agent/agent_2/config.py Auth config for agent_2 sample.
test_samples/compat/agent_to_agent/agent_2/app.py Aiohttp host wiring for agent_2 sample.
test_samples/compat/agent_to_agent/agent_2/agent2.py ActivityHandler for agent_2 sample.
test_samples/compat/agent_to_agent/agent_1/env.TEMPLATE Env template normalization for agent_1 sample.
test_samples/compat/agent_to_agent/agent_1/config.py Channel host + auth config for agent_1 sample.
test_samples/compat/agent_to_agent/agent_1/app.py Aiohttp host wiring for agent_1 sample.
scripts/dev_setup.sh Installs hosting-dialogs in editable mode for local dev.
scripts/dev_setup.ps1 Installs hosting-dialogs in editable mode for local dev (Windows).
libraries/microsoft-agents-hosting-dialogs/setup.py Package setup for dialogs library dependencies/versioning.
libraries/microsoft-agents-hosting-dialogs/readme.md New dialogs library readme/quickstart.
libraries/microsoft-agents-hosting-dialogs/pyproject.toml New dialogs library project metadata.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/waterfall_step_context.py Implements WaterfallStepContext behavior including next().
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/prompts/text_prompt.py Implements TextPrompt.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/prompts/prompt_validator_context.py Implements PromptValidatorContext and attempt count.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/prompts/prompt_recognizer_result.py Adds recognizer result type.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/prompts/prompt_options.py Adds PromptOptions model.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/prompts/oauth_prompt_settings.py Adds OAuth prompt configuration model.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/prompts/number_prompt.py Implements NumberPrompt using recognizers/babel.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/prompts/datetime_resolution.py Adds DateTimeResolution model.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/prompts/datetime_prompt.py Implements DateTimePrompt using recognizers-date-time.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/prompts/attachment_prompt.py Implements AttachmentPrompt.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/prompts/init.py Exposes prompt types via package exports.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/persisted_state_keys.py Adds persisted state key container.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/persisted_state.py Adds persisted state container.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/models/dialog_turn_status.py Adds DialogTurnStatus enum.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/models/dialog_turn_result.py Adds DialogTurnResult.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/models/dialog_reason.py Adds DialogReason enum.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/models/dialog_instance.py Adds DialogInstance.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/models/dialog_events.py Adds dialog event name constants.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/models/dialog_event.py Adds DialogEvent model.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/models/init.py Exposes dialog model exports.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/memory/scopes/user_memory_scope.py Adds User memory scope.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/memory/scopes/turn_memory_scope.py Adds Turn scope + CaseInsensitiveDict.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/memory/scopes/this_memory_scope.py Adds This memory scope.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/memory/scopes/settings_memory_scope.py Adds Settings memory scope (read-only).
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/memory/scopes/memory_scope.py Adds abstract MemoryScope base.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/memory/scopes/dialog_memory_scope.py Adds Dialog memory scope.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/memory/scopes/dialog_context_memory_scope.py Adds DialogContext memory scope.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/memory/scopes/dialog_class_memory_scope.py Adds DialogClass memory scope.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/memory/scopes/conversation_memory_scope.py Adds Conversation memory scope.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/memory/scopes/class_memory_scope.py Adds Class memory scope binding dialog properties.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/memory/scopes/bot_state_memory_scope.py Adds BotState-backed memory scope implementation.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/memory/scopes/init.py Exposes memory scope exports.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/memory/scope_path.py Adds scope path constants.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/memory/path_resolvers/percent_path_resolver.py Adds % alias path resolver.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/memory/path_resolvers/hash_path_resolver.py Adds # alias path resolver.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/memory/path_resolvers/dollar_path_resolver.py Adds $ alias path resolver.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/memory/path_resolvers/at_path_resolver.py Adds @ entity path resolver.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/memory/path_resolvers/at_at_path_resolver.py Adds @@ alias path resolver.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/memory/path_resolvers/alias_path_resolver.py Adds base alias path resolver implementation.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/memory/path_resolvers/init.py Exposes path resolver exports.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/memory/path_resolver_base.py Adds abstract PathResolverBase.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/memory/dialog_state_manager_configuration.py Adds DialogStateManagerConfiguration model.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/memory/dialog_path.py Adds DialogPath helpers/constants.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/memory/component_path_resolvers_base.py Adds component path resolver interface.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/memory/component_memory_scopes_base.py Adds component memory scope interface.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/memory/init.py Exposes memory-related exports.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/dialog_state.py Adds DialogState container.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/dialog_manager_result.py Adds DialogManagerResult container.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/dialog_container.py Adds DialogContainer base class.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/dialog_component_registration.py Registers dialogs memory scopes and path resolvers.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/choices/tokenizer.py Adds choice tokenizer.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/choices/models/token.py Adds Token model.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/choices/models/sorted_value.py Adds SortedValue model.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/choices/models/model_result.py Adds ModelResult model.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/choices/models/list_style.py Adds ListStyle enum.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/choices/models/found_value.py Adds FoundValue model.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/choices/models/found_choice.py Adds FoundChoice model.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/choices/models/find_values_options.py Adds FindValuesOptions model.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/choices/models/find_choices_options.py Adds FindChoicesOptions model.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/choices/models/choice_factory_options.py Adds ChoiceFactoryOptions model.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/choices/models/choice.py Adds Choice model.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/choices/models/init.py Exposes choice model exports.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/choices/choice_recognizer.py Adds choice recognition logic (text/ordinal/number).
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/choices/channel.py Adds channel capability helpers for choices/actions.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/choices/init.py Exposes choices exports.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/_telemetry_client.py Adds telemetry client abstractions (null/no-op).
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/_component_registration.py Adds global component registration utility.
libraries/microsoft-agents-hosting-dialogs/microsoft_agents/hosting/dialogs/init.py Exposes dialogs public API surface.
libraries/microsoft-agents-hosting-dialogs/LICENSE Adds MIT license for dialogs package.
dev/testing/python-sdk-tests/tests/scenarios/init.py Improves scenario registry formatting/docs.
dev/testing/python-sdk-tests/tests/activity_handler/dialogs/scenario.py Adds ActivityHandler-based dialogs integration scenario.
dev/testing/python-sdk-tests/tests/activity_handler/dialogs/sample/user_profile.py Adds sample user profile model for integration tests.
dev/testing/python-sdk-tests/tests/activity_handler/dialogs/sample/dialog_agent.py Adds sample DialogAgent for integration tests.
dev/testing/python-sdk-tests/tests/activity_handler/dialogs/sample/booking_dialog.py Adds BookingDialog sample for integration tests.
dev/testing/microsoft-agents-testing/microsoft_agents/testing/init.py Exposes ActivityHandlerScenario types from testing pkg.
dev/hosting_dialogs/test_waterfall_step_context.py Unit tests for WaterfallStepContext behavior.
dev/hosting_dialogs/test_replace_dialog.py Tests replace_dialog flow behavior.
dev/hosting_dialogs/test_prompt_validator_context.py Tests PromptValidatorContext attempt count behavior.
dev/hosting_dialogs/test_prompt_culture_models.py Tests culture model mapping/support list.
dev/hosting_dialogs/test_dialog_set.py Tests DialogSet versioning/telemetry/duplicate add behavior.
dev/hosting_dialogs/test_dialog.py Tests base Dialog behaviors and defaults.
dev/hosting_dialogs/test_date_time_prompt.py Tests DateTimePrompt recognition + retry behavior.
dev/hosting_dialogs/memory/test_at_path_resolver.py Tests @ path resolver transformations.
dev/hosting_dialogs/memory/scopes/test_settings.py Adds settings scope test config fixture.
dev/hosting_dialogs/choices/test_choice_tokenizer.py Tests tokenizer splitting/normalization.
dev/hosting_dialogs/choices/test_choice_factory_options.py Tests ChoiceFactoryOptions property round-trips.
dev/hosting_dialogs/choices/test_choice.py Tests Choice model round-trips.
dev/hosting_dialogs/choices/test_channel.py Tests Channel capability helpers.
.github/workflows/python-package.yml Installs dialogs wheel during CI packaging job.
.azdo/ci-pr.yaml Installs dialogs wheel in Azure DevOps CI.
Comments suppressed due to low confidence (5)

test_samples/compat/teams_agent/teams_multi_feature.py:19

  • These imports point to test_samples.activity_handler..., but there is no test_samples/activity_handler package in the repo. This will raise ModuleNotFoundError at runtime. Use local/relative imports from the helpers folder (or update to the correct package path if these modules were moved).
    test_samples/compat/agent_to_agent/agent_1/app.py:25
  • These imports point to test_samples.activity_handler..., but there is no test_samples/activity_handler package in the repo. This will raise ModuleNotFoundError at runtime. Use local/relative imports (e.g., from agent1 import Agent1) or update the path to a real module.
    test_samples/compat/teams_agent/app.py:17
  • These imports point to test_samples.activity_handler..., but there is no test_samples/activity_handler package in the repo. This will raise ModuleNotFoundError at runtime. Use local/relative imports (from teams_handler import ..., etc.) or update to the correct existing module path.
    test_samples/compat/agent_to_agent/agent_2/app.py:17
  • These imports point to test_samples.activity_handler..., but there is no test_samples/activity_handler package in the repo. This will raise ModuleNotFoundError at runtime. Use local/relative imports (e.g., from agent2 import Agent2) or update the path to a real module.
    test_samples/compat/teams_agent/teams_sso.py:11
  • This import points to test_samples.activity_handler..., but there is no test_samples/activity_handler package in the repo. This will raise ModuleNotFoundError at runtime. Use a local/relative import (e.g., from .graph_client import GraphClient) or update the path to an actual module location.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +47 to +48
# Save any state changes that might have ocurred during the turn.
await self.conversation_state.save(turn_context)
Copy link

Copilot AI Apr 28, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Typo in comment: "ocurred" should be "occurred".

Copilot uses AI. Check for mistakes.
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.

Migrating Adaptive/Waterfall Dialogs from Bot Framework SDK to Agents SDK

3 participants