Required prerequisites
Motivation
Currently, the system uses a "flat list" approach for task decomposition (despite dependencies existing). When a high-level task is received, it is proactively decomposed into a complete list of atomic subtasks (e.g., Task 1 to Task $N$). The Coordinator Agent is responsible for managing the assignment, execution, and dependency handling of every single atomic task.
Pain Points:
- As the number of subtasks increases, the Coordinator's prompt context (tasks_info) explodes.
- The Coordinator must handle fine-grained routing for every single task, increasing the chance of routing errors.
- Similar tasks (e.g., 50 parallel research tasks) must be tracked individually rather than as a batch.
Solution
Instead of a flat list, the task_agent should decompose high-level tasks into Task Groups.
- A Task Group contains a set of related tasks that can be handled by a specific Worker Group (Worker Pool).
- Assignment: The Coordinator Agent assigns the Task Group to a Worker Group, rather than assigning individual tasks to specific workers.
- Internal Routing: Once assigned, the tasks within the group are distributed/handled within the Worker Group, relieving the Coordinator from micro-management.
Alternatives
No response
Additional context
No response
Required prerequisites
Motivation
Currently, the system uses a "flat list" approach for task decomposition (despite dependencies existing). When a high-level task is received, it is proactively decomposed into a complete list of atomic subtasks (e.g., Task 1 to Task$N$ ). The Coordinator Agent is responsible for managing the assignment, execution, and dependency handling of every single atomic task.
Pain Points:
Solution
Instead of a flat list, the task_agent should decompose high-level tasks into Task Groups.
Alternatives
No response
Additional context
No response