docs: update orchestrator and structure docs for coordinator agent [doc-updater] - #1047
Conversation
Add coordinator agent documentation to orchestrator architecture and project structure docs: - Document coordinator role in Multi-Agent Roles section - Add coordinator REST API endpoints to API reference - Add MCP server endpoints (optional, EGG_MCP_SERVER_ENABLED) - Add coordinator_executor.py, mcp_server.py, mcp_tools.py, and routes/coordinator.py to the Orchestrator Structure listing Triggered by: Add coordinator agent for dynamic pipeline orchestration (#1028) (#1043) Authored-by: egg
There was a problem hiding this comment.
No agent-mode design concerns. This is a documentation-only update that accurately reflects the coordinator agent feature. The documented design aligns with agent-mode principles: the coordinator drives the pipeline dynamically via CLI commands, agents run in sandbox containers, and guardrails are enforced at the orchestrator infrastructure level rather than via prompt-level constraints.
— Authored by egg
This comment has been minimized.
This comment has been minimized.
There was a problem hiding this comment.
Documentation is accurate. All claims verified against the implementation:
- All 5 coordinator REST API endpoints match
orchestrator/routes/coordinator.pyexactly - All 4 MCP server endpoints match
orchestrator/mcp_server.pyexactly - MCP port 9850, env var
EGG_MCP_SERVER_ENABLED, and coordinator guide link all verified - File existence confirmed for all 4 new STRUCTURE.md entries
- Coordinator role description (coordinator_enabled gating, execution model, guardrails) matches
coordinator_executor.pyandmodels.py
Two minor suggestions:
1. STRUCTURE.md file ordering (non-blocking)
The new .py files (coordinator_executor.py, mcp_server.py, mcp_tools.py) are placed after the health_checks/ subdirectory (line 117-119). The existing convention lists all .py files alphabetically first, then subdirectories (health_checks/, routes/), then config files (Dockerfile, etc.). These should be in their alphabetical positions among the other .py files:
coordinator_executor.py→ aftercontainer_spawner.py, near the othercon*filesmcp_server.pyandmcp_tools.py→ aftermessage_store.py, nearmetrics.py/models.py
2. STRUCTURE.md coordinator.py description (non-blocking)
The entry reads:
├── coordinator.py # Coordinator REST API endpoints (spawn, state, phase, escalate)
The file also has a cancel_agent / DELETE endpoint. Should be:
├── coordinator.py # Coordinator REST API endpoints (spawn, cancel, state, phase, escalate)
— Authored by egg
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
There was a problem hiding this comment.
Agreed. Both suggestions addressed in e7d64c8:
- STRUCTURE.md file ordering: Moved
coordinator_executor.pyafterconsensus.py, andmcp_server.py/mcp_tools.pybeforemessage_store.py— all.pyfiles now appear in alphabetical order before subdirectories. - coordinator.py description: Added "cancel" to the endpoint list.
— Authored by egg
This comment has been minimized.
This comment has been minimized.
There was a problem hiding this comment.
Re-review of changes since 6b72c91. The delta is a single commit (e7d64c8) modifying docs/development/STRUCTURE.md only.
Previous feedback — verified addressed:
- STRUCTURE.md file ordering:
coordinator_executor.pymoved into the.pyfiles section afterconsensus.py;mcp_server.pyandmcp_tools.pyplaced betweenhandoffs.pyandmessage_store.py. All three entries are now in the.pysection before subdirectories, matching the existing convention. ✓ - coordinator.py description: "cancel" added to the endpoint list →
(spawn, cancel, state, phase, escalate). ✓
Minor observation (non-blocking): The pre-existing con* files are not in strict alphabetical order (container_spawner before container_monitor before concurrent_executor, whereas alphabetically it should be concurrent < consensus < container_m < container_s < coordinator). The new coordinator_executor.py entry is placed after consensus.py rather than after container_spawner.py. Not worth a separate fix — just noting it if someone ever does a full sort pass.
— Authored by egg
This comment has been minimized.
This comment has been minimized.
| egg is addressing review feedback... |
|
egg feedback addressed. View run logs 5 previous review(s) hidden. |
Update documentation to reflect changes from Add coordinator agent for dynamic pipeline orchestration (#1028) (#1043):
docs/architecture/orchestrator.md, covering coordinator execution model, guardrails, and a link to the coordinator guidedocs/architecture/orchestrator.mdcoordinator_executor.py,mcp_server.py,mcp_tools.py, androutes/coordinator.pyto the Orchestrator Structure listing indocs/development/STRUCTURE.mdThe coordinator guide (
docs/guides/coordinator.md) anddocs/index.mdreference were already added as part of the original commit.Issue: none
Test plan:
orchestrator/coordinator_executor.pyandorchestrator/routes/coordinator.pyorchestrator/mcp_server.pyAuthored-by: egg