summaryrefslogtreecommitdiff
path: root/internal/agentchannel
diff options
context:
space:
mode:
Diffstat (limited to 'internal/agentchannel')
-rw-r--r--internal/agentchannel/agentchannel.go8
1 files changed, 8 insertions, 0 deletions
diff --git a/internal/agentchannel/agentchannel.go b/internal/agentchannel/agentchannel.go
index 2730dfa..42eacbc 100644
--- a/internal/agentchannel/agentchannel.go
+++ b/internal/agentchannel/agentchannel.go
@@ -34,6 +34,14 @@ type SubtaskSpec struct {
Instructions string
Model string
MaxBudgetUSD float64
+ // Role, when non-empty, names an internal/role.RoleConfig the child task
+ // should dispatch through (task.AgentConfig.Role — see Phase 5's
+ // role-based dispatch in internal/executor.Pool.execute()). When set, the
+ // storeChannel implementation leaves Agent.Type/Model empty on the child
+ // so tier 0 of the role's escalation ladder resolves them, exactly like
+ // any other role-typed task. Empty (the default) preserves the prior
+ // hardcoded "claude" behavior for backward compatibility.
+ Role string
}
// AgentChannel is how a Runner reports agent-originated signals to the rest of