@tienne/gestalt 0.25.1 → 0.26.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (106) hide show
  1. package/dist/package.json +7 -2
  2. package/dist/src/cli/commands/init.d.ts.map +1 -1
  3. package/dist/src/cli/commands/init.js.map +1 -1
  4. package/dist/src/cli/commands/update.d.ts.map +1 -1
  5. package/dist/src/cli/commands/update.js.map +1 -1
  6. package/dist/src/code-graph/engine.d.ts +5 -0
  7. package/dist/src/code-graph/engine.d.ts.map +1 -1
  8. package/dist/src/code-graph/engine.js +15 -2
  9. package/dist/src/code-graph/engine.js.map +1 -1
  10. package/dist/src/code-graph/plugins/java.js +1 -1
  11. package/dist/src/code-graph/plugins/java.js.map +1 -1
  12. package/dist/src/code-graph/storage.d.ts.map +1 -1
  13. package/dist/src/code-graph/storage.js +12 -2
  14. package/dist/src/code-graph/storage.js.map +1 -1
  15. package/dist/src/core/config.js +1 -1
  16. package/dist/src/core/config.js.map +1 -1
  17. package/dist/src/core/errors.d.ts.map +1 -1
  18. package/dist/src/core/errors.js.map +1 -1
  19. package/dist/src/events/store.d.ts +21 -2
  20. package/dist/src/events/store.d.ts.map +1 -1
  21. package/dist/src/events/store.js +141 -20
  22. package/dist/src/events/store.js.map +1 -1
  23. package/dist/src/execute/orchestrators/evaluation.d.ts.map +1 -1
  24. package/dist/src/execute/orchestrators/evaluation.js +1 -1
  25. package/dist/src/execute/orchestrators/evaluation.js.map +1 -1
  26. package/dist/src/execute/repository.d.ts +2 -2
  27. package/dist/src/execute/repository.d.ts.map +1 -1
  28. package/dist/src/execute/repository.js.map +1 -1
  29. package/dist/src/execute/session.d.ts +2 -2
  30. package/dist/src/execute/session.d.ts.map +1 -1
  31. package/dist/src/execute/session.js.map +1 -1
  32. package/dist/src/gestalt/analyzer.d.ts.map +1 -1
  33. package/dist/src/gestalt/analyzer.js.map +1 -1
  34. package/dist/src/interview/passthrough-engine.d.ts +1 -1
  35. package/dist/src/interview/passthrough-engine.d.ts.map +1 -1
  36. package/dist/src/interview/passthrough-engine.js +4 -1
  37. package/dist/src/interview/passthrough-engine.js.map +1 -1
  38. package/dist/src/interview/repository.d.ts +2 -2
  39. package/dist/src/interview/repository.d.ts.map +1 -1
  40. package/dist/src/interview/repository.js.map +1 -1
  41. package/dist/src/interview/session.d.ts +2 -2
  42. package/dist/src/interview/session.d.ts.map +1 -1
  43. package/dist/src/interview/session.js.map +1 -1
  44. package/dist/src/knowledge-base/embedding-index.d.ts.map +1 -1
  45. package/dist/src/knowledge-base/embedding-index.js.map +1 -1
  46. package/dist/src/knowledge-base/generator.d.ts.map +1 -1
  47. package/dist/src/knowledge-base/generator.js +1 -11
  48. package/dist/src/knowledge-base/generator.js.map +1 -1
  49. package/dist/src/mcp/schemas.d.ts +10 -10
  50. package/dist/src/mcp/tools/execute/evaluate.d.ts +5 -0
  51. package/dist/src/mcp/tools/execute/evaluate.d.ts.map +1 -0
  52. package/dist/src/mcp/tools/execute/evaluate.js +133 -0
  53. package/dist/src/mcp/tools/execute/evaluate.js.map +1 -0
  54. package/dist/src/mcp/tools/execute/evolve.d.ts +10 -0
  55. package/dist/src/mcp/tools/execute/evolve.d.ts.map +1 -0
  56. package/dist/src/mcp/tools/execute/evolve.js +273 -0
  57. package/dist/src/mcp/tools/execute/evolve.js.map +1 -0
  58. package/dist/src/mcp/tools/execute/execution.d.ts +6 -0
  59. package/dist/src/mcp/tools/execute/execution.d.ts.map +1 -0
  60. package/dist/src/mcp/tools/execute/execution.js +145 -0
  61. package/dist/src/mcp/tools/execute/execution.js.map +1 -0
  62. package/dist/src/mcp/tools/execute/planning.d.ts +7 -0
  63. package/dist/src/mcp/tools/execute/planning.d.ts.map +1 -0
  64. package/dist/src/mcp/tools/execute/planning.js +138 -0
  65. package/dist/src/mcp/tools/execute/planning.js.map +1 -0
  66. package/dist/src/mcp/tools/execute/roles.d.ts +6 -0
  67. package/dist/src/mcp/tools/execute/roles.d.ts.map +1 -0
  68. package/dist/src/mcp/tools/execute/roles.js +73 -0
  69. package/dist/src/mcp/tools/execute/roles.js.map +1 -0
  70. package/dist/src/mcp/tools/execute/types.d.ts +5 -0
  71. package/dist/src/mcp/tools/execute/types.d.ts.map +1 -0
  72. package/dist/src/mcp/tools/execute/types.js +2 -0
  73. package/dist/src/mcp/tools/execute/types.js.map +1 -0
  74. package/dist/src/mcp/tools/execute/utility.d.ts +8 -0
  75. package/dist/src/mcp/tools/execute/utility.d.ts.map +1 -0
  76. package/dist/src/mcp/tools/execute/utility.js +206 -0
  77. package/dist/src/mcp/tools/execute/utility.js.map +1 -0
  78. package/dist/src/mcp/tools/execute/utils.d.ts +5 -0
  79. package/dist/src/mcp/tools/execute/utils.d.ts.map +1 -0
  80. package/dist/src/mcp/tools/execute/utils.js +44 -0
  81. package/dist/src/mcp/tools/execute/utils.js.map +1 -0
  82. package/dist/src/mcp/tools/execute-passthrough.d.ts +1 -1
  83. package/dist/src/mcp/tools/execute-passthrough.d.ts.map +1 -1
  84. package/dist/src/mcp/tools/execute-passthrough.js +31 -997
  85. package/dist/src/mcp/tools/execute-passthrough.js.map +1 -1
  86. package/dist/src/mcp/tools/generate-kb.d.ts.map +1 -1
  87. package/dist/src/mcp/tools/generate-kb.js +1 -1
  88. package/dist/src/mcp/tools/generate-kb.js.map +1 -1
  89. package/dist/src/mcp/tools/interview-passthrough.d.ts.map +1 -1
  90. package/dist/src/mcp/tools/interview-passthrough.js +7 -1
  91. package/dist/src/mcp/tools/interview-passthrough.js.map +1 -1
  92. package/dist/src/mcp/tools/spec-passthrough.d.ts.map +1 -1
  93. package/dist/src/mcp/tools/spec-passthrough.js +6 -2
  94. package/dist/src/mcp/tools/spec-passthrough.js.map +1 -1
  95. package/dist/src/mcp/tools/status.js.map +1 -1
  96. package/dist/src/registry/base-registry.d.ts.map +1 -1
  97. package/dist/src/registry/base-registry.js +16 -3
  98. package/dist/src/registry/base-registry.js.map +1 -1
  99. package/dist/src/review/context-collector.d.ts +4 -3
  100. package/dist/src/review/context-collector.d.ts.map +1 -1
  101. package/dist/src/review/context-collector.js +22 -5
  102. package/dist/src/review/context-collector.js.map +1 -1
  103. package/dist/src/review/passthrough-engine.d.ts.map +1 -1
  104. package/dist/src/review/passthrough-engine.js +1 -1
  105. package/dist/src/review/passthrough-engine.js.map +1 -1
  106. package/package.json +7 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"evolve.js","sourceRoot":"","sources":["../../../../../src/mcp/tools/execute/evolve.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import type { PassthroughExecuteEngine } from '../../../execute/passthrough-engine.js';
2
+ import type { ExecuteInput } from '../../schemas.js';
3
+ import { type ClientType } from '../../../execute/rule-writer.js';
4
+ export declare function handleExecuteStart(engine: PassthroughExecuteEngine, input: ExecuteInput, client: ClientType): Promise<string>;
5
+ export declare function handleExecuteTask(engine: PassthroughExecuteEngine, input: ExecuteInput, client: ClientType): Promise<string>;
6
+ //# sourceMappingURL=execution.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../../../../../src/mcp/tools/execute/execution.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AACvF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAGrD,OAAO,EAIL,KAAK,UAAU,EAChB,MAAM,iCAAiC,CAAC;AAGzC,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,wBAAwB,EAChC,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,UAAU,GACjB,OAAO,CAAC,MAAM,CAAC,CAqEjB;AAED,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,wBAAwB,EAChC,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,UAAU,GACjB,OAAO,CAAC,MAAM,CAAC,CA4GjB"}
@@ -0,0 +1,145 @@
1
+ import { gestaltNotify } from '../../../utils/notifier.js';
2
+ import { writeGestaltRule, updateGestaltRule, writeActiveSession, } from '../../../execute/rule-writer.js';
3
+ import { formatError, applyTaskContextFilters, slimRetrospectiveContext } from './utils.js';
4
+ export async function handleExecuteStart(engine, input, client) {
5
+ const verbose = input.verbose !== false;
6
+ if (!input.sessionId)
7
+ return formatError('sessionId is required for execute_start action');
8
+ const result = engine.startExecution(input.sessionId);
9
+ if (!result.ok)
10
+ return formatError(result.error.message);
11
+ const { session, allTasksCompleted } = result.value;
12
+ let { taskContext } = result.value;
13
+ if (allTasksCompleted) {
14
+ const execStartDoneGuide = {
15
+ nextAction: 'evaluate',
16
+ nextActionParams: { sessionId: session.sessionId },
17
+ hint: '모든 태스크 완료. evaluate를 호출하세요.',
18
+ };
19
+ return JSON.stringify({
20
+ status: 'all_tasks_completed',
21
+ sessionId: session.sessionId,
22
+ message: 'All tasks already completed. Call evaluate to verify acceptance criteria.',
23
+ ...execStartDoneGuide,
24
+ }, null, 2);
25
+ }
26
+ // Hybrid search로 suggestedFiles 업그레이드 (codeGraphRepoRoot 있을 때)
27
+ if (taskContext && session.codeGraphRepoRoot) {
28
+ taskContext = await engine.hydrateSuggestedFiles(taskContext, session.codeGraphRepoRoot);
29
+ }
30
+ if (input.cwd) {
31
+ try {
32
+ const currentTask = taskContext
33
+ ? { taskId: taskContext.currentTask.taskId, title: taskContext.currentTask.title }
34
+ : null;
35
+ writeGestaltRule(input.cwd, { goal: session.spec.goal, constraints: session.spec.constraints }, currentTask, client);
36
+ writeActiveSession(input.cwd, session.sessionId, session.specId);
37
+ }
38
+ catch {
39
+ // Rule file creation failure should not block execution
40
+ }
41
+ }
42
+ const execStartGuide = {
43
+ nextAction: 'execute_task',
44
+ nextActionParams: { sessionId: session.sessionId },
45
+ hint: `첫 번째 태스크: ${taskContext?.currentTask.title ?? ''}. taskContext.taskPrompt를 사용해 구현하세요.`,
46
+ };
47
+ return JSON.stringify({
48
+ status: 'executing',
49
+ sessionId: session.sessionId,
50
+ taskContext: taskContext
51
+ ? applyTaskContextFilters(taskContext, verbose)
52
+ : taskContext,
53
+ message: `Execution started. Use taskContext.taskPrompt to implement the task, then submit with execute_task.`,
54
+ ...execStartGuide,
55
+ }, null, 2);
56
+ }
57
+ export async function handleExecuteTask(engine, input, client) {
58
+ const verbose = input.verbose !== false;
59
+ if (!input.sessionId)
60
+ return formatError('sessionId is required for execute_task action');
61
+ if (!input.taskResult)
62
+ return formatError('taskResult is required for execute_task action');
63
+ const result = engine.submitTaskResult(input.sessionId, input.taskResult);
64
+ if (!result.ok)
65
+ return formatError(result.error.message);
66
+ const { session, allTasksCompleted, driftScore, retrospectiveContext } = result.value;
67
+ let { taskContext } = result.value;
68
+ if (allTasksCompleted) {
69
+ gestaltNotify({
70
+ event: 'tasks_completed',
71
+ message: `모든 태스크 완료 (${session.taskResults.length}개) — evaluate를 호출하세요`,
72
+ });
73
+ const execTaskDoneGuide = {
74
+ nextAction: 'evaluate',
75
+ nextActionParams: { sessionId: session.sessionId },
76
+ hint: '모든 태스크 완료. evaluate를 호출하세요.',
77
+ };
78
+ const doneTotal = session.executionPlan?.atomicTasks.length ?? 0;
79
+ const doneCompleted = session.taskResults.length;
80
+ const doneProgress = {
81
+ completed: doneCompleted,
82
+ total: doneTotal,
83
+ percent: doneTotal > 0 ? Math.round((doneCompleted / doneTotal) * 100) : 0,
84
+ };
85
+ return JSON.stringify({
86
+ status: 'all_tasks_completed',
87
+ sessionId: session.sessionId,
88
+ completedTasks: session.taskResults.length,
89
+ progress: doneProgress,
90
+ ...(driftScore ? { driftScore } : {}),
91
+ ...(retrospectiveContext
92
+ ? {
93
+ retrospectiveContext: slimRetrospectiveContext(retrospectiveContext),
94
+ }
95
+ : {}),
96
+ message: 'All tasks completed. Call evaluate to verify acceptance criteria.',
97
+ ...execTaskDoneGuide,
98
+ }, null, 2);
99
+ }
100
+ // Hybrid search로 suggestedFiles 업그레이드
101
+ if (taskContext && session.codeGraphRepoRoot) {
102
+ taskContext = await engine.hydrateSuggestedFiles(taskContext, session.codeGraphRepoRoot);
103
+ }
104
+ if (input.cwd && taskContext) {
105
+ try {
106
+ updateGestaltRule(input.cwd, { goal: session.spec.goal, constraints: session.spec.constraints }, { taskId: taskContext.currentTask.taskId, title: taskContext.currentTask.title }, client);
107
+ }
108
+ catch {
109
+ // Rule file update failure should not block execution
110
+ }
111
+ }
112
+ const compressionAvailable = session.taskResults.length > 5;
113
+ const execTaskNextId = taskContext?.currentTask.taskId ?? '';
114
+ const execTaskGuide = {
115
+ nextAction: 'execute_task',
116
+ nextActionParams: { sessionId: session.sessionId },
117
+ hint: `다음 태스크: ${execTaskNextId}. 계속 실행하세요.`,
118
+ };
119
+ const execTotal = session.executionPlan?.atomicTasks.length ?? 0;
120
+ const execCompleted = session.taskResults.length;
121
+ const execProgress = {
122
+ completed: execCompleted,
123
+ total: execTotal,
124
+ percent: execTotal > 0 ? Math.round((execCompleted / execTotal) * 100) : 0,
125
+ };
126
+ return JSON.stringify({
127
+ status: 'executing',
128
+ sessionId: session.sessionId,
129
+ completedTasks: session.taskResults.length,
130
+ progress: execProgress,
131
+ taskContext: taskContext
132
+ ? applyTaskContextFilters(taskContext, verbose)
133
+ : taskContext,
134
+ ...(compressionAvailable ? { compressionAvailable: true } : {}),
135
+ ...(driftScore ? { driftScore } : {}),
136
+ ...(retrospectiveContext
137
+ ? {
138
+ retrospectiveContext: slimRetrospectiveContext(retrospectiveContext),
139
+ }
140
+ : {}),
141
+ message: `Task "${input.taskResult.taskId}" recorded.${driftScore?.thresholdExceeded ? ' WARNING: Drift threshold exceeded! Review retrospectiveContext.' : ''}${compressionAvailable ? ' TIP: Context is getting long — consider calling compress to summarize completed work.' : ''} Use taskContext.taskPrompt to implement the next task.`,
142
+ ...execTaskGuide,
143
+ }, null, 2);
144
+ }
145
+ //# sourceMappingURL=execution.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution.js","sourceRoot":"","sources":["../../../../../src/mcp/tools/execute/execution.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import type { PassthroughExecuteEngine } from '../../../execute/passthrough-engine.js';
2
+ import type { ExecuteInput } from '../../schemas.js';
3
+ import type { ClientType } from '../../../execute/rule-writer.js';
4
+ export declare function handleStart(engine: PassthroughExecuteEngine, input: ExecuteInput, _client: ClientType): string;
5
+ export declare function handlePlanStep(engine: PassthroughExecuteEngine, input: ExecuteInput, _client: ClientType): string;
6
+ export declare function handlePlanComplete(engine: PassthroughExecuteEngine, input: ExecuteInput, _client: ClientType): string;
7
+ //# sourceMappingURL=planning.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"planning.d.ts","sourceRoot":"","sources":["../../../../../src/mcp/tools/execute/planning.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AACvF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAGlE,wBAAgB,WAAW,CACzB,MAAM,EAAE,wBAAwB,EAChC,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,UAAU,GAClB,MAAM,CA8BR;AAED,wBAAgB,cAAc,CAC5B,MAAM,EAAE,wBAAwB,EAChC,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,UAAU,GAClB,MAAM,CAwDR;AAED,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,wBAAwB,EAChC,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,UAAU,GAClB,MAAM,CA+CR"}
@@ -0,0 +1,138 @@
1
+ import { formatError, stripContextPrompts } from './utils.js';
2
+ export function handleStart(engine, input, _client) {
3
+ const verbose = input.verbose !== false;
4
+ if (!input.spec)
5
+ return formatError('spec is required for start action');
6
+ const result = engine.start(input.spec, {
7
+ codeGraphRepoRoot: input.codeGraphRepoRoot,
8
+ });
9
+ if (!result.ok)
10
+ return formatError(result.error.message);
11
+ const { session, executeContext } = result.value;
12
+ const startGuide = {
13
+ nextAction: 'plan_step',
14
+ nextActionParams: { sessionId: session.sessionId },
15
+ hint: 'executeContext.planningPrompt를 사용해 figure_ground 분류를 수행하세요.',
16
+ };
17
+ return JSON.stringify({
18
+ status: 'started',
19
+ sessionId: session.sessionId,
20
+ specId: session.specId,
21
+ executeContext: verbose
22
+ ? executeContext
23
+ : stripContextPrompts(executeContext),
24
+ message: `Execute session started. Use the executeContext.planningPrompt with executeContext.systemPrompt to generate the Figure-Ground classification.`,
25
+ ...startGuide,
26
+ }, null, 2);
27
+ }
28
+ export function handlePlanStep(engine, input, _client) {
29
+ const verbose = input.verbose !== false;
30
+ if (!input.sessionId)
31
+ return formatError('sessionId is required for plan_step action');
32
+ if (!input.stepResult)
33
+ return formatError('stepResult is required for plan_step action');
34
+ const stepResult = buildStepResult(input.stepResult);
35
+ if (!stepResult)
36
+ return formatError('Invalid stepResult: missing required fields for the given principle');
37
+ const result = engine.planStep(input.sessionId, stepResult);
38
+ if (!result.ok)
39
+ return formatError(result.error.message);
40
+ const { session, executeContext, isLastStep } = result.value;
41
+ if (isLastStep) {
42
+ const planStepLastGuide = {
43
+ nextAction: 'plan_complete',
44
+ nextActionParams: { sessionId: session.sessionId },
45
+ hint: '4단계 Planning 완료. plan_complete를 호출하세요.',
46
+ };
47
+ return JSON.stringify({
48
+ status: 'planning_complete',
49
+ sessionId: session.sessionId,
50
+ stepsCompleted: session.planningSteps.length,
51
+ isLastStep: true,
52
+ message: 'All planning steps completed. Call plan_complete to assemble the execution plan.',
53
+ ...planStepLastGuide,
54
+ }, null, 2);
55
+ }
56
+ const currentPrinciple = executeContext?.currentPrinciple ?? 'next';
57
+ const planStepGuide = {
58
+ nextAction: 'plan_step',
59
+ nextActionParams: { sessionId: session.sessionId },
60
+ hint: `다음 단계: ${currentPrinciple}. executeContext.planningPrompt를 사용하세요.`,
61
+ };
62
+ return JSON.stringify({
63
+ status: 'planning',
64
+ sessionId: session.sessionId,
65
+ stepsCompleted: session.planningSteps.length,
66
+ isLastStep: false,
67
+ executeContext: verbose
68
+ ? executeContext
69
+ : stripContextPrompts(executeContext),
70
+ message: `Step ${session.planningSteps.length}/${4} complete. Use the executeContext.planningPrompt to generate the next step.`,
71
+ ...planStepGuide,
72
+ }, null, 2);
73
+ }
74
+ export function handlePlanComplete(engine, input, _client) {
75
+ if (!input.sessionId)
76
+ return formatError('sessionId is required for plan_complete action');
77
+ const result = engine.planComplete(input.sessionId);
78
+ if (!result.ok)
79
+ return formatError(result.error.message);
80
+ const { executionPlan } = result.value;
81
+ const planSummary = {
82
+ totalTasks: executionPlan.atomicTasks.length,
83
+ groupCount: executionPlan.taskGroups.length,
84
+ criticalPathLength: executionPlan.dagValidation.criticalPath.length,
85
+ parallelGroupCount: executionPlan.parallelGroups?.length ?? 0,
86
+ };
87
+ const planCompleteGuide = {
88
+ nextAction: 'execute_start',
89
+ nextActionParams: { sessionId: result.value.session.sessionId },
90
+ hint: '실행 계획이 준비됐습니다. execute_start를 호출하세요.',
91
+ };
92
+ return JSON.stringify({
93
+ status: 'plan_complete',
94
+ sessionId: result.value.session.sessionId,
95
+ planSummary,
96
+ executionPlan: {
97
+ planId: executionPlan.planId,
98
+ specId: executionPlan.specId,
99
+ totalTasks: executionPlan.atomicTasks.length,
100
+ totalGroups: executionPlan.taskGroups.length,
101
+ dagValid: executionPlan.dagValidation.isValid,
102
+ criticalPathLength: executionPlan.dagValidation.criticalPath.length,
103
+ classifiedACs: executionPlan.classifiedACs,
104
+ atomicTasks: executionPlan.atomicTasks,
105
+ taskGroups: executionPlan.taskGroups,
106
+ dagValidation: executionPlan.dagValidation,
107
+ parallelGroups: executionPlan.parallelGroups,
108
+ },
109
+ nextStep: 'Call execute_start to begin task execution. Tasks will run in topological order — critical path has ' +
110
+ planSummary.criticalPathLength +
111
+ ' tasks.',
112
+ message: 'Execution plan assembled and validated. Call execute_start to begin task execution.',
113
+ ...planCompleteGuide,
114
+ }, null, 2);
115
+ }
116
+ function buildStepResult(raw) {
117
+ switch (raw.principle) {
118
+ case 'figure_ground':
119
+ if (!raw.classifiedACs)
120
+ return null;
121
+ return { principle: 'figure_ground', classifiedACs: raw.classifiedACs };
122
+ case 'closure':
123
+ if (!raw.atomicTasks)
124
+ return null;
125
+ return { principle: 'closure', atomicTasks: raw.atomicTasks };
126
+ case 'proximity':
127
+ if (!raw.taskGroups)
128
+ return null;
129
+ return { principle: 'proximity', taskGroups: raw.taskGroups };
130
+ case 'continuity':
131
+ if (!raw.dagValidation)
132
+ return null;
133
+ return { principle: 'continuity', dagValidation: raw.dagValidation };
134
+ default:
135
+ return null;
136
+ }
137
+ }
138
+ //# sourceMappingURL=planning.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"planning.js","sourceRoot":"","sources":["../../../../../src/mcp/tools/execute/planning.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import type { PassthroughExecuteEngine } from '../../../execute/passthrough-engine.js';
2
+ import type { ExecuteInput } from '../../schemas.js';
3
+ import type { ClientType } from '../../../execute/rule-writer.js';
4
+ export declare function handleRoleMatch(engine: PassthroughExecuteEngine, input: ExecuteInput, _client: ClientType): string;
5
+ export declare function handleRoleConsensus(engine: PassthroughExecuteEngine, input: ExecuteInput, _client: ClientType): string;
6
+ //# sourceMappingURL=roles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"roles.d.ts","sourceRoot":"","sources":["../../../../../src/mcp/tools/execute/roles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AACvF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAGlE,wBAAgB,eAAe,CAC7B,MAAM,EAAE,wBAAwB,EAChC,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,UAAU,GAClB,MAAM,CA+CR;AAED,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,wBAAwB,EAChC,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,UAAU,GAClB,MAAM,CA6CR"}
@@ -0,0 +1,73 @@
1
+ import { formatError } from './utils.js';
2
+ export function handleRoleMatch(engine, input, _client) {
3
+ if (!input.sessionId)
4
+ return formatError('sessionId is required for role_match action');
5
+ const rmResult = engine.roleMatch(input.sessionId, input.matchResult);
6
+ if (!rmResult.ok)
7
+ return formatError(rmResult.error.message);
8
+ const { matchContext, perspectivePrompts } = rmResult.value;
9
+ if (matchContext) {
10
+ const roleMatchCall1Guide = {
11
+ nextAction: 'role_match',
12
+ nextActionParams: { sessionId: rmResult.value.session.sessionId },
13
+ hint: 'matchContext를 사용해 관련 Role Agent를 선택하고 matchResult를 제출하세요.',
14
+ };
15
+ return JSON.stringify({
16
+ status: 'role_matching',
17
+ sessionId: rmResult.value.session.sessionId,
18
+ matchContext,
19
+ message: 'Use matchContext.systemPrompt + matchContext.matchingPrompt to determine which role agents match this task. Submit matchResult with role_match.',
20
+ ...roleMatchCall1Guide,
21
+ }, null, 2);
22
+ }
23
+ const roleMatchCall2Guide = {
24
+ nextAction: 'role_consensus',
25
+ nextActionParams: { sessionId: rmResult.value.session.sessionId },
26
+ hint: '각 에이전트의 관점을 생성하고 perspectives를 제출하세요.',
27
+ };
28
+ return JSON.stringify({
29
+ status: 'role_matched',
30
+ sessionId: rmResult.value.session.sessionId,
31
+ perspectivePrompts: perspectivePrompts ?? [],
32
+ matchCount: perspectivePrompts?.length ?? 0,
33
+ message: perspectivePrompts?.length
34
+ ? `${perspectivePrompts.length} agents matched. Use each perspectivePrompt for parallel LLM calls, then submit perspectives with role_consensus.`
35
+ : 'No agents matched. Proceed directly to execute_task.',
36
+ ...roleMatchCall2Guide,
37
+ }, null, 2);
38
+ }
39
+ export function handleRoleConsensus(engine, input, _client) {
40
+ if (!input.sessionId)
41
+ return formatError('sessionId is required for role_consensus action');
42
+ const rcResult = engine.roleConsensus(input.sessionId, input.perspectives, input.consensus);
43
+ if (!rcResult.ok)
44
+ return formatError(rcResult.error.message);
45
+ const { synthesisContext, roleGuidance } = rcResult.value;
46
+ if (synthesisContext) {
47
+ const roleConsensusCall1Guide = {
48
+ nextAction: 'role_consensus',
49
+ nextActionParams: { sessionId: rcResult.value.session.sessionId },
50
+ hint: 'synthesisContext를 사용해 관점을 통합하고 consensus를 제출하세요.',
51
+ };
52
+ return JSON.stringify({
53
+ status: 'synthesizing',
54
+ sessionId: rcResult.value.session.sessionId,
55
+ synthesisContext,
56
+ message: 'Use synthesisContext.systemPrompt + synthesisContext.synthesisPrompt to synthesize consensus. Submit consensus with role_consensus.',
57
+ ...roleConsensusCall1Guide,
58
+ }, null, 2);
59
+ }
60
+ const roleConsensusCall2Guide = {
61
+ nextAction: 'execute_task',
62
+ nextActionParams: { sessionId: rcResult.value.session.sessionId },
63
+ hint: 'roleGuidance를 참조해 태스크를 실행하세요.',
64
+ };
65
+ return JSON.stringify({
66
+ status: 'consensus_complete',
67
+ sessionId: rcResult.value.session.sessionId,
68
+ roleGuidance,
69
+ message: 'Role consensus stored. Use roleGuidance to inform task implementation, then submit with execute_task.',
70
+ ...roleConsensusCall2Guide,
71
+ }, null, 2);
72
+ }
73
+ //# sourceMappingURL=roles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"roles.js","sourceRoot":"","sources":["../../../../../src/mcp/tools/execute/roles.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,MAAM,UAAU,eAAe,CAC7B,MAAgC,EAChC,KAAmB,EACnB,OAAmB;IAEnB,IAAI,CAAC,KAAK,CAAC,SAAS;QAAE,OAAO,WAAW,CAAC,6CAA6C,CAAC,CAAC;IAExF,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;IACtE,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAE7D,MAAM,EAAE,YAAY,EAAE,kBAAkB,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC;IAE5D,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,mBAAmB,GAAoB;YAC3C,UAAU,EAAE,YAAY;YACxB,gBAAgB,EAAE,EAAE,SAAS,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE;YACjE,IAAI,EAAE,2DAA2D;SAClE,CAAC;QACF,OAAO,IAAI,CAAC,SAAS,CACnB;YACE,MAAM,EAAE,eAAe;YACvB,SAAS,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS;YAC3C,YAAY;YACZ,OAAO,EACL,iJAAiJ;YACnJ,GAAG,mBAAmB;SACvB,EACD,IAAI,EACJ,CAAC,CACF,CAAC;IACJ,CAAC;IAED,MAAM,mBAAmB,GAAoB;QAC3C,UAAU,EAAE,gBAAgB;QAC5B,gBAAgB,EAAE,EAAE,SAAS,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE;QACjE,IAAI,EAAE,uCAAuC;KAC9C,CAAC;IACF,OAAO,IAAI,CAAC,SAAS,CACnB;QACE,MAAM,EAAE,cAAc;QACtB,SAAS,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS;QAC3C,kBAAkB,EAAE,kBAAkB,IAAI,EAAE;QAC5C,UAAU,EAAE,kBAAkB,EAAE,MAAM,IAAI,CAAC;QAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM;YACjC,CAAC,CAAC,GAAG,kBAAkB,CAAC,MAAM,mHAAmH;YACjJ,CAAC,CAAC,sDAAsD;QAC1D,GAAG,mBAAmB;KACvB,EACD,IAAI,EACJ,CAAC,CACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,MAAgC,EAChC,KAAmB,EACnB,OAAmB;IAEnB,IAAI,CAAC,KAAK,CAAC,SAAS;QAAE,OAAO,WAAW,CAAC,iDAAiD,CAAC,CAAC;IAE5F,MAAM,QAAQ,GAAG,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAC5F,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAE7D,MAAM,EAAE,gBAAgB,EAAE,YAAY,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC;IAE1D,IAAI,gBAAgB,EAAE,CAAC;QACrB,MAAM,uBAAuB,GAAoB;YAC/C,UAAU,EAAE,gBAAgB;YAC5B,gBAAgB,EAAE,EAAE,SAAS,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE;YACjE,IAAI,EAAE,kDAAkD;SACzD,CAAC;QACF,OAAO,IAAI,CAAC,SAAS,CACnB;YACE,MAAM,EAAE,cAAc;YACtB,SAAS,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS;YAC3C,gBAAgB;YAChB,OAAO,EACL,qIAAqI;YACvI,GAAG,uBAAuB;SAC3B,EACD,IAAI,EACJ,CAAC,CACF,CAAC;IACJ,CAAC;IAED,MAAM,uBAAuB,GAAoB;QAC/C,UAAU,EAAE,cAAc;QAC1B,gBAAgB,EAAE,EAAE,SAAS,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE;QACjE,IAAI,EAAE,+BAA+B;KACtC,CAAC;IACF,OAAO,IAAI,CAAC,SAAS,CACnB;QACE,MAAM,EAAE,oBAAoB;QAC5B,SAAS,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS;QAC3C,YAAY;QACZ,OAAO,EACL,uGAAuG;QACzG,GAAG,uBAAuB;KAC3B,EACD,IAAI,EACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { PassthroughExecuteEngine } from '../../../execute/passthrough-engine.js';
2
+ import type { ExecuteInput } from '../../schemas.js';
3
+ import type { ClientType } from '../../../execute/rule-writer.js';
4
+ export type ExecuteHandler = (engine: PassthroughExecuteEngine, input: ExecuteInput, client: ClientType) => Promise<string> | string;
5
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/mcp/tools/execute/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AACvF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAElE,MAAM,MAAM,cAAc,GAAG,CAC3B,MAAM,EAAE,wBAAwB,EAChC,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,UAAU,KACf,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/mcp/tools/execute/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,8 @@
1
+ import type { PassthroughExecuteEngine } from '../../../execute/passthrough-engine.js';
2
+ import type { ExecuteInput } from '../../schemas.js';
3
+ import type { ClientType } from '../../../execute/rule-writer.js';
4
+ export declare function handleStatusAction(engine: PassthroughExecuteEngine, input: ExecuteInput, _client: ClientType): string;
5
+ export declare function handleResume(engine: PassthroughExecuteEngine, input: ExecuteInput, _client: ClientType): string;
6
+ export declare function handleAudit(engine: PassthroughExecuteEngine, input: ExecuteInput, _client: ClientType): string;
7
+ export declare function handleSpawn(engine: PassthroughExecuteEngine, input: ExecuteInput, _client: ClientType): string;
8
+ //# sourceMappingURL=utility.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utility.d.ts","sourceRoot":"","sources":["../../../../../src/mcp/tools/execute/utility.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AACvF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAMrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAGlE,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,wBAAwB,EAChC,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,UAAU,GAClB,MAAM,CAER;AAED,wBAAgB,YAAY,CAC1B,MAAM,EAAE,wBAAwB,EAChC,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,UAAU,GAClB,MAAM,CA6CR;AAED,wBAAgB,WAAW,CACzB,MAAM,EAAE,wBAAwB,EAChC,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,UAAU,GAClB,MAAM,CAiDR;AAED,wBAAgB,WAAW,CACzB,MAAM,EAAE,wBAAwB,EAChC,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,UAAU,GAClB,MAAM,CA8CR"}