refactor: Rename agent modes breakdown→plan, decompose→detail

Full rename across the codebase for clarity:
- breakdown (initiative→phases) is now "plan"
- decompose (phase→tasks) is now "detail"

Updates schema enums, TypeScript types, events, prompts, output handler,
tRPC procedures, CLI commands, frontend components, tests, and docs.
Also fixes 0022 migration multi-statement issue (adds statement-breakpoint markers).
This commit is contained in:
Lukas May
2026-02-10 10:51:42 +01:00
parent f9f8b4c185
commit 0407f05332
51 changed files with 551 additions and 483 deletions

View File

@@ -847,52 +847,52 @@ export function createCli(serverHandler?: (port?: number) => Promise<void>): Com
}
});
// cw architect breakdown <initiative-id>
// cw architect plan <initiative-id>
architectCommand
.command('breakdown <initiativeId>')
.description('Start breakdown phase for an initiative')
.command('plan <initiativeId>')
.description('Plan phases for an initiative')
.option('--name <name>', 'Agent name (auto-generated if omitted)')
.option('-s, --summary <summary>', 'Context summary from discuss phase')
.action(async (initiativeId: string, options: { name?: string; summary?: string }) => {
try {
const client = createDefaultTrpcClient();
const agent = await client.spawnArchitectBreakdown.mutate({
const agent = await client.spawnArchitectPlan.mutate({
name: options.name,
initiativeId,
contextSummary: options.summary,
});
console.log(`Started architect agent in breakdown mode`);
console.log(`Started architect agent in plan mode`);
console.log(` Agent: ${agent.name} (${agent.id})`);
console.log(` Mode: ${agent.mode}`);
console.log(` Initiative: ${initiativeId}`);
} catch (error) {
console.error('Failed to start breakdown:', (error as Error).message);
console.error('Failed to start plan:', (error as Error).message);
process.exit(1);
}
});
// cw architect decompose <phase-id>
// cw architect detail <phase-id>
architectCommand
.command('decompose <phaseId>')
.description('Decompose a phase into tasks')
.command('detail <phaseId>')
.description('Detail a phase into tasks')
.option('--name <name>', 'Agent name (auto-generated if omitted)')
.option('-t, --task-name <taskName>', 'Name for the decompose task')
.option('-t, --task-name <taskName>', 'Name for the detail task')
.option('-c, --context <context>', 'Additional context')
.action(async (phaseId: string, options: { name?: string; taskName?: string; context?: string }) => {
try {
const client = createDefaultTrpcClient();
const agent = await client.spawnArchitectDecompose.mutate({
const agent = await client.spawnArchitectDetail.mutate({
name: options.name,
phaseId,
taskName: options.taskName,
context: options.context,
});
console.log(`Started architect agent in decompose mode`);
console.log(`Started architect agent in detail mode`);
console.log(` Agent: ${agent.name} (${agent.id})`);
console.log(` Mode: ${agent.mode}`);
console.log(` Phase: ${phaseId}`);
} catch (error) {
console.error('Failed to start decompose:', (error as Error).message);
console.error('Failed to start detail:', (error as Error).message);
process.exit(1);
}
});