refactor: wire role agent plan into runtime

This commit is contained in:
Eyejoker
2026-03-31 09:35:19 +09:00
parent a39dad4c8c
commit 7f8a361f24
5 changed files with 135 additions and 20 deletions

View File

@@ -29,6 +29,7 @@ import {
} from './paired-execution-context.js';
import {
resolveActiveRole,
resolveConfiguredRoleAgentPlan,
resolveEffectiveAgentType,
resolveSessionFolder,
} from './message-runtime-rules.js';
@@ -115,13 +116,17 @@ export async function runAgentForGroup(
: currentLease.owner_service_id;
const reviewerMode = activeRole === 'reviewer';
const arbiterMode = activeRole === 'arbiter';
const roleAgentPlan = resolveConfiguredRoleAgentPlan(
currentLease.reviewer_service_id != null,
group.agentType,
);
const effectiveAgentType = resolveEffectiveAgentType(
activeRole,
group.agentType,
);
const effectiveGroup =
effectiveAgentType !== (group.agentType || 'claude-code')
effectiveAgentType !== roleAgentPlan.ownerAgentType
? { ...group, agentType: effectiveAgentType }
: group;
const isClaudeCodeAgent = effectiveAgentType === 'claude-code';
@@ -140,7 +145,7 @@ export async function runAgentForGroup(
groupName: group.name,
}).catch(() => undefined);
const tasks = getAllTasks(group.agentType || 'claude-code');
const tasks = getAllTasks(roleAgentPlan.ownerAgentType);
writeTasksSnapshot(
group.folder,
isMain,