Problem
AgentEngine._resolve_loop() calls build_execution_loop() without passing plan_execute_config. This means PlanExecuteLoop instances created via auto-selection always use default PlanExecuteConfig() -- there is no way to customize planner_model, executor_model, or max_replans through the agent engine when using auto-selection.
Affected code
src/synthorg/engine/agent_engine.py lines ~1062-1066:
return build_execution_loop(
loop_type,
approval_gate=self._approval_gate,
stagnation_detector=self._stagnation_detector,
# Missing: plan_execute_config=...
)
Impact
Users cannot configure plan-execute loop behavior (model tiering, replan limits) when using auto-selection. The build_execution_loop() factory accepts plan_execute_config but it is never passed from the agent engine.
Similarly, hybrid_loop_config was wired through in #199, but only at the AgentEngine.__init__ level -- a more comprehensive solution should allow per-task or per-complexity config overrides.
Fix
Add plan_execute_config parameter to AgentEngine.__init__ and pass through in _resolve_loop(), matching the pattern used for hybrid_loop_config.
Discovered during #199 (Hybrid execution loop implementation).
Problem
AgentEngine._resolve_loop()callsbuild_execution_loop()without passingplan_execute_config. This meansPlanExecuteLoopinstances created via auto-selection always use defaultPlanExecuteConfig()-- there is no way to customizeplanner_model,executor_model, ormax_replansthrough the agent engine when using auto-selection.Affected code
src/synthorg/engine/agent_engine.pylines ~1062-1066:Impact
Users cannot configure plan-execute loop behavior (model tiering, replan limits) when using auto-selection. The
build_execution_loop()factory acceptsplan_execute_configbut it is never passed from the agent engine.Similarly,
hybrid_loop_configwas wired through in #199, but only at theAgentEngine.__init__level -- a more comprehensive solution should allow per-task or per-complexity config overrides.Fix
Add
plan_execute_configparameter toAgentEngine.__init__and pass through in_resolve_loop(), matching the pattern used forhybrid_loop_config.Discovered during #199 (Hybrid execution loop implementation).