UAT: subplan_parallel_spawn decisions run sequentially #6289

Open
opened 2026-04-09 19:50:23 +00:00 by HAL9000 · 0 comments
Owner

Spec

  • docs/specification.md §Plan Lifecycle > Plan Hierarchy and Parallelism (lines 18393-18399): subplan_spawn decisions execute sequentially, while subplan_parallel_spawn groups execute concurrently.

Expected

Child plans created from subplan_parallel_spawn decisions should run concurrently without requiring extra configuration.

Actual

  • Plan.subplan_config defaults to SubplanConfig(execution_mode=sequential) (src/cleveragents/domain/models/core/plan.py:516-529).
  • PlanExecutor._spawn_subplans falls back to SubplanConfig() for every plan (src/cleveragents/application/services/plan_executor.py:466-478) and does not adjust the mode based on decision type.
  • SubplanService.spawn simply echoes the plan’s existing config and does not infer parallelism from DecisionType.SUBPLAN_PARALLEL_SPAWN (src/cleveragents/application/services/subplan_service.py:234-305).
  • SubplanExecutionService.execute_all chooses scheduling strictly from config.execution_mode (src/cleveragents/application/services/subplan_execution_service.py:210-218), so even subplan_parallel_spawn decisions are executed sequentially unless callers mutate plan.subplan_config manually.

Steps to Reproduce

  1. Record a subplan_parallel_spawn decision during Strategize.
  2. Allow the executor to spawn child plans via _spawn_subplans.
  3. Observe that SubplanExecutionService.execute_all sees execution_mode == sequential and runs child plans serially.

Impact

subplan_parallel_spawn decisions do not honor the spec-mandated concurrent execution behavior, so plans that rely on parallel subplans lose the intended scheduling semantics.

Suggested Fix

Derive SubplanConfig.execution_mode from recorded decision types (or otherwise set it automatically) so that parallel spawn groups execute concurrently by default.


Automated by CleverAgents Bot
Supervisor: UAT Testing | Agent: uat-tester

### Spec - docs/specification.md §Plan Lifecycle > Plan Hierarchy and Parallelism (lines 18393-18399): `subplan_spawn` decisions execute sequentially, while `subplan_parallel_spawn` groups execute concurrently. ### Expected Child plans created from `subplan_parallel_spawn` decisions should run concurrently without requiring extra configuration. ### Actual - `Plan.subplan_config` defaults to `SubplanConfig(execution_mode=sequential)` (src/cleveragents/domain/models/core/plan.py:516-529). - `PlanExecutor._spawn_subplans` falls back to `SubplanConfig()` for every plan (src/cleveragents/application/services/plan_executor.py:466-478) and does not adjust the mode based on decision type. - `SubplanService.spawn` simply echoes the plan’s existing config and does not infer parallelism from `DecisionType.SUBPLAN_PARALLEL_SPAWN` (src/cleveragents/application/services/subplan_service.py:234-305). - `SubplanExecutionService.execute_all` chooses scheduling strictly from `config.execution_mode` (src/cleveragents/application/services/subplan_execution_service.py:210-218), so even `subplan_parallel_spawn` decisions are executed sequentially unless callers mutate `plan.subplan_config` manually. ### Steps to Reproduce 1. Record a `subplan_parallel_spawn` decision during Strategize. 2. Allow the executor to spawn child plans via `_spawn_subplans`. 3. Observe that `SubplanExecutionService.execute_all` sees `execution_mode == sequential` and runs child plans serially. ### Impact `subplan_parallel_spawn` decisions do not honor the spec-mandated concurrent execution behavior, so plans that rely on parallel subplans lose the intended scheduling semantics. ### Suggested Fix Derive `SubplanConfig.execution_mode` from recorded decision types (or otherwise set it automatically) so that parallel spawn groups execute concurrently by default. --- **Automated by CleverAgents Bot** Supervisor: UAT Testing | Agent: uat-tester
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
cleveragents/cleveragents-core#6289
No description provided.