Severity: medium · Area: engine / team execution
Capability: SynthesisSpec.strategy = 'agent_synthesis' is supposed to dispatch a synthesis agent to combine team-member outputs after a team step completes.
Documented claim: docs/design-decisions.md previously stated "agent_synthesis (dispatch a synthesis agent to combine outputs)" without a deferral caveat. agent_baton/models/execution.py docstring says "dispatch a synthesis agent to combine outputs." (docs/engine-and-runtime.md already said "(future)".)
Actual state: agent_baton/core/engine/executor.py:5142-5146 only appends a marker string to parent.deviations and sets parent.files_changed. No agent is dispatched, no DISPATCH/INTERACT action is emitted. The internal docstring at executor.py:5117-5120 admits: "the synthesis agent dispatch is deferred to Phase 3.3 (INTERACT action type) which requires invariant changes."
Why it is a stub: Phase 3.3 is unimplemented; _merge_team_member_results() silently falls through with only a marker when agent_synthesis is selected, giving callers concatenate-like behavior.
Suggested fix: Either implement Phase 3.3 (emit a DISPATCH for the synthesis agent after team-member results merge, passing combined context as the delegation prompt), or raise a validation error when a plan is saved with strategy='agent_synthesis' until the feature ships — so callers are not silently downgraded.
Evidence: agent_baton/core/engine/executor.py:5117-5146.
🤖 Filed from the capability-vs-docs audit (HEAD 12999f2). docs/design-decisions.md already updated to mark dispatch as deferred.
Severity: medium · Area: engine / team execution
Capability:
SynthesisSpec.strategy = 'agent_synthesis'is supposed to dispatch a synthesis agent to combine team-member outputs after a team step completes.Documented claim:
docs/design-decisions.mdpreviously stated "agent_synthesis (dispatch a synthesis agent to combine outputs)" without a deferral caveat.agent_baton/models/execution.pydocstring says "dispatch a synthesis agent to combine outputs." (docs/engine-and-runtime.mdalready said "(future)".)Actual state:
agent_baton/core/engine/executor.py:5142-5146only appends a marker string toparent.deviationsand setsparent.files_changed. No agent is dispatched, no DISPATCH/INTERACT action is emitted. The internal docstring atexecutor.py:5117-5120admits: "the synthesis agent dispatch is deferred to Phase 3.3 (INTERACT action type) which requires invariant changes."Why it is a stub: Phase 3.3 is unimplemented;
_merge_team_member_results()silently falls through with only a marker whenagent_synthesisis selected, giving callers concatenate-like behavior.Suggested fix: Either implement Phase 3.3 (emit a DISPATCH for the synthesis agent after team-member results merge, passing combined context as the delegation prompt), or raise a validation error when a plan is saved with
strategy='agent_synthesis'until the feature ships — so callers are not silently downgraded.Evidence:
agent_baton/core/engine/executor.py:5117-5146.🤖 Filed from the capability-vs-docs audit (HEAD
12999f2).docs/design-decisions.mdalready updated to mark dispatch as deferred.