Skip to content

Comments

Python: Fixed broken links#3830

Closed
dmytrostruk wants to merge 2 commits intomicrosoft:mainfrom
dmytrostruk:fix-broken-links
Closed

Python: Fixed broken links#3830
dmytrostruk wants to merge 2 commits intomicrosoft:mainfrom
dmytrostruk:fix-broken-links

Conversation

@dmytrostruk
Copy link
Member

Motivation and Context

Fixed broken links (samples were removed in this PR): #3781

Contribution Checklist

  • The code builds clean without any errors or warnings
  • The PR follows the Contribution Guidelines
  • All unit tests pass, and I have added new tests where possible
  • Is this a breaking change? If yes, add "[BREAKING]" prefix to the title of the PR.

@dmytrostruk dmytrostruk self-assigned this Feb 10, 2026
Copilot AI review requested due to automatic review settings February 10, 2026 23:01
@markwallace-microsoft markwallace-microsoft added documentation Improvements or additions to documentation python labels Feb 10, 2026
Copy link
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

This PR aims to fix broken links in the Python orchestration samples README by removing references to three participant factory sample files that were allegedly removed in PR #3781. However, there is a critical discrepancy: the referenced sample files still exist in the repository and are functional.

Changes:

  • Removes three table rows from the orchestrations README that document participant factory pattern samples
Comments suppressed due to low confidence (3)

python/samples/getting_started/orchestrations/README.md:41

  • This line is being removed, but the file handoff_participant_factory.py still exists in the repository at python/samples/getting_started/orchestrations/handoff_participant_factory.py. The PR description states that samples were removed in PR #3781, but this file was not actually deleted. Removing this documentation link creates broken documentation by unlinking a valid, existing sample file. The file should either remain documented in the README or be deleted from the repository.
| Handoff with Code Interpreter                     | [handoff_with_code_interpreter_file.py](./handoff_with_code_interpreter_file.py)     | Retrieve file IDs from code interpreter output in handoff workflow                                               |

python/samples/getting_started/orchestrations/README.md:47

  • This line is being removed, but the file sequential_participant_factory.py still exists in the repository at python/samples/getting_started/orchestrations/sequential_participant_factory.py. The PR description states that samples were removed in PR #3781, but this file was not actually deleted. Removing this documentation link creates broken documentation by unlinking a valid, existing sample file. The file should either remain documented in the README or be deleted from the repository.
    python/samples/getting_started/orchestrations/README.md:47
  • The PR description states that samples were removed in PR #3781, but the three sample files being unlinked from this README still exist in the repository:
  • concurrent_participant_factory.py
  • handoff_participant_factory.py
  • sequential_participant_factory.py

These files are functional and use valid API patterns (participant_factories constructor parameter and register_aggregator method). There is a discrepancy between the PR description and the actual changes. Either the PR description is incorrect, or these files should have been deleted but were not.

| Group Chat with Agent Manager                     | [group_chat_agent_manager.py](./group_chat_agent_manager.py)                         | Agent-based manager using `with_orchestrator(agent=)` to select next speaker                                     |
| Group Chat Philosophical Debate                   | [group_chat_philosophical_debate.py](./group_chat_philosophical_debate.py)           | Agent manager moderates long-form, multi-round debate across diverse participants                                |
| Group Chat with Simple Function Selector          | [group_chat_simple_selector.py](./group_chat_simple_selector.py)                     | Group chat with a simple function selector for next speaker                                                      |
| Handoff (Simple)                                  | [handoff_simple.py](./handoff_simple.py)                                             | Single-tier routing: triage agent routes to specialists, control returns to user after each specialist response  |
| Handoff (Autonomous)                              | [handoff_autonomous.py](./handoff_autonomous.py)                                     | Autonomous mode: specialists iterate independently until invoking a handoff tool using `.with_autonomous_mode()` |
| Handoff with Code Interpreter                     | [handoff_with_code_interpreter_file.py](./handoff_with_code_interpreter_file.py)     | Retrieve file IDs from code interpreter output in handoff workflow                                               |
| Magentic Workflow (Multi-Agent)                   | [magentic.py](./magentic.py)                                                         | Orchestrate multiple agents with Magentic manager and streaming                                                  |
| Magentic + Human Plan Review                      | [magentic_human_plan_review.py](./magentic_human_plan_review.py)                     | Human reviews/updates the plan before execution                                                                  |
| Magentic + Checkpoint Resume                      | [magentic_checkpoint.py](./magentic_checkpoint.py)                                   | Resume Magentic orchestration from saved checkpoints                                                             |
| Sequential Orchestration (Agents)                 | [sequential_agents.py](./sequential_agents.py)                                       | Chain agents sequentially with shared conversation context                                                       |
| Sequential Orchestration (Custom Executor)        | [sequential_custom_executors.py](./sequential_custom_executors.py)                   | Mix agents with a summarizer that appends a compact summary                                                      |

@@ -33,20 +33,17 @@ from agent_framework.orchestrations import (
| Concurrent Orchestration (Default Aggregator) | [concurrent_agents.py](./concurrent_agents.py) | Fan-out to multiple agents; fan-in with default aggregator returning combined ChatMessages |
| Concurrent Orchestration (Custom Aggregator) | [concurrent_custom_aggregator.py](./concurrent_custom_aggregator.py) | Override aggregator via callback; summarize results with an LLM |
| Concurrent Orchestration (Custom Agent Executors) | [concurrent_custom_agent_executors.py](./concurrent_custom_agent_executors.py) | Child executors own ChatAgents; concurrent fan-out/fan-in via ConcurrentBuilder |
Copy link

Copilot AI Feb 10, 2026

Choose a reason for hiding this comment

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

This line is being removed, but the file concurrent_participant_factory.py still exists in the repository at python/samples/getting_started/orchestrations/concurrent_participant_factory.py. The PR description states that samples were removed in PR #3781, but this file was not actually deleted. Removing this documentation link creates broken documentation by unlinking a valid, existing sample file. The file should either remain documented in the README or be deleted from the repository.

This issue also appears in the following locations of the same file:

  • line 41
  • line 47
  • line 36
Suggested change
| Concurrent Orchestration (Custom Agent Executors) | [concurrent_custom_agent_executors.py](./concurrent_custom_agent_executors.py) | Child executors own ChatAgents; concurrent fan-out/fan-in via ConcurrentBuilder |
| Concurrent Orchestration (Custom Agent Executors) | [concurrent_custom_agent_executors.py](./concurrent_custom_agent_executors.py) | Child executors own ChatAgents; concurrent fan-out/fan-in via ConcurrentBuilder |
| Concurrent Orchestration (Participant Factory) | [concurrent_participant_factory.py](./concurrent_participant_factory.py) | Use a participant factory to construct concurrent orchestration participants dynamically |

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

documentation Improvements or additions to documentation python

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants