@uluops/core 0.5.0 → 0.7.1

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 (93) hide show
  1. package/LICENSE +6 -0
  2. package/README.md +120 -27
  3. package/dist/ai/AIProvider.d.ts +23 -3
  4. package/dist/ai/AIProvider.d.ts.map +1 -1
  5. package/dist/ai/AIProvider.js +156 -116
  6. package/dist/ai/AIProvider.js.map +1 -1
  7. package/dist/ai/ShellExecutor.d.ts +5 -4
  8. package/dist/ai/ShellExecutor.d.ts.map +1 -1
  9. package/dist/ai/ShellExecutor.js +1 -1
  10. package/dist/ai/ShellExecutor.js.map +1 -1
  11. package/dist/client/UluOpsClient.d.ts +40 -7
  12. package/dist/client/UluOpsClient.d.ts.map +1 -1
  13. package/dist/client/UluOpsClient.js +45 -9
  14. package/dist/client/UluOpsClient.js.map +1 -1
  15. package/dist/constants.d.ts +27 -0
  16. package/dist/constants.d.ts.map +1 -1
  17. package/dist/constants.js +35 -0
  18. package/dist/constants.js.map +1 -1
  19. package/dist/errors/UluOpsError.d.ts +19 -0
  20. package/dist/errors/UluOpsError.d.ts.map +1 -1
  21. package/dist/errors/UluOpsError.js +25 -0
  22. package/dist/errors/UluOpsError.js.map +1 -1
  23. package/dist/errors/index.d.ts +26 -3
  24. package/dist/errors/index.d.ts.map +1 -1
  25. package/dist/errors/index.js +31 -3
  26. package/dist/errors/index.js.map +1 -1
  27. package/dist/executor/AgentExecutor.d.ts +43 -5
  28. package/dist/executor/AgentExecutor.d.ts.map +1 -1
  29. package/dist/executor/AgentExecutor.js +130 -121
  30. package/dist/executor/AgentExecutor.js.map +1 -1
  31. package/dist/executor/CommandExecutor.d.ts +1 -0
  32. package/dist/executor/CommandExecutor.d.ts.map +1 -1
  33. package/dist/executor/CommandExecutor.js +43 -25
  34. package/dist/executor/CommandExecutor.js.map +1 -1
  35. package/dist/executor/PipelineExecutor.d.ts +1 -0
  36. package/dist/executor/PipelineExecutor.d.ts.map +1 -1
  37. package/dist/executor/PipelineExecutor.js +16 -20
  38. package/dist/executor/PipelineExecutor.js.map +1 -1
  39. package/dist/executor/ToolHandler.d.ts +6 -3
  40. package/dist/executor/ToolHandler.d.ts.map +1 -1
  41. package/dist/executor/ToolHandler.js +23 -134
  42. package/dist/executor/ToolHandler.js.map +1 -1
  43. package/dist/executor/WorkflowExecutor.d.ts +14 -0
  44. package/dist/executor/WorkflowExecutor.d.ts.map +1 -1
  45. package/dist/executor/WorkflowExecutor.js +93 -70
  46. package/dist/executor/WorkflowExecutor.js.map +1 -1
  47. package/dist/executor/classifyDecision.d.ts +52 -0
  48. package/dist/executor/classifyDecision.d.ts.map +1 -0
  49. package/dist/executor/classifyDecision.js +77 -0
  50. package/dist/executor/classifyDecision.js.map +1 -0
  51. package/dist/executor/preflight.js +22 -5
  52. package/dist/executor/preflight.js.map +1 -1
  53. package/dist/index.d.ts +5 -3
  54. package/dist/index.d.ts.map +1 -1
  55. package/dist/index.js +2 -1
  56. package/dist/index.js.map +1 -1
  57. package/dist/parser/OutputExtractor.d.ts +1 -1
  58. package/dist/parser/OutputExtractor.d.ts.map +1 -1
  59. package/dist/parser/OutputExtractor.js +15 -16
  60. package/dist/parser/OutputExtractor.js.map +1 -1
  61. package/dist/parser/outputSchemas.d.ts +76 -67
  62. package/dist/parser/outputSchemas.d.ts.map +1 -1
  63. package/dist/parser/outputSchemas.js +19 -26
  64. package/dist/parser/outputSchemas.js.map +1 -1
  65. package/dist/registry/RegistryClient.d.ts.map +1 -1
  66. package/dist/registry/RegistryClient.js +9 -4
  67. package/dist/registry/RegistryClient.js.map +1 -1
  68. package/dist/types/agent.d.ts +23 -38
  69. package/dist/types/agent.d.ts.map +1 -1
  70. package/dist/types/command.d.ts +12 -7
  71. package/dist/types/command.d.ts.map +1 -1
  72. package/dist/types/config.d.ts +7 -0
  73. package/dist/types/config.d.ts.map +1 -1
  74. package/dist/types/execution.d.ts +15 -5
  75. package/dist/types/execution.d.ts.map +1 -1
  76. package/dist/types/index.d.ts +3 -3
  77. package/dist/types/index.d.ts.map +1 -1
  78. package/dist/types/parser.d.ts +1 -1
  79. package/dist/types/parser.d.ts.map +1 -1
  80. package/dist/types/pipeline.d.ts +5 -2
  81. package/dist/types/pipeline.d.ts.map +1 -1
  82. package/dist/types/registry.d.ts +1 -0
  83. package/dist/types/registry.d.ts.map +1 -1
  84. package/dist/types/tools.d.ts +0 -12
  85. package/dist/types/tools.d.ts.map +1 -1
  86. package/dist/types/validation.d.ts +0 -125
  87. package/dist/types/validation.d.ts.map +1 -1
  88. package/dist/types/workflow.d.ts +12 -4
  89. package/dist/types/workflow.d.ts.map +1 -1
  90. package/dist/validation/ValidationClient.d.ts.map +1 -1
  91. package/dist/validation/ValidationClient.js +1 -2
  92. package/dist/validation/ValidationClient.js.map +1 -1
  93. package/package.json +2 -2
@@ -2,7 +2,10 @@ import { ToolHandler, extToLanguage } from './ToolHandler.js';
2
2
  import { ToolAdapter } from '../ai/ToolAdapter.js';
3
3
  import { TokenBudgetTracker } from '../ai/TokenBudgetTracker.js';
4
4
  import { OutputExtractor } from '../parser/OutputExtractor.js';
5
- import { validatorOutputSchema, executorOutputSchema, genericOutputSchema, } from '../parser/outputSchemas.js';
5
+ import { agentOutputSchema } from '../parser/outputSchemas.js';
6
+ import { ExecutionError } from '../errors/index.js';
7
+ import { classifyDecision, buildVocabularyMap } from './classifyDecision.js';
8
+ import { DEFAULT_PASS_THRESHOLD, DEFAULT_WARN_THRESHOLD, DEFAULT_MAX_STEPS, DEFAULT_MODEL_ALIAS } from '../constants.js';
6
9
  /**
7
10
  * Primary executor for single-agent runs.
8
11
  *
@@ -26,53 +29,80 @@ export class AgentExecutor {
26
29
  this.logger = logger;
27
30
  }
28
31
  /**
29
- * Execute an agent with optional runtime options
32
+ * Execute an agent against a target directory and return structured results.
33
+ *
34
+ * Orchestrates prompt rendering, tool setup, LLM generation (with tool loop),
35
+ * output parsing, and result construction for a single agent run.
36
+ *
37
+ * @param resolved - Registry-resolved agent definition (must have `type: 'agent'`)
38
+ * @param input - Execution input containing the target directory path and optional config
39
+ * @param options - Runtime overrides for model, thresholds, temperature, timeout, etc.
40
+ * @returns Universal `AgentResult` with score, categories, artifacts, and passthrough decision
41
+ * @throws {ExecutionError} When the resolved definition is not an agent (type mismatch)
42
+ * @throws {ConfigurationError} When AI provider cannot be initialized (missing API key, unknown provider)
43
+ * @throws {ModelNotFoundError} When the model alias cannot be resolved via the model catalog
44
+ * @throws {CapabilityError} When the resolved model lacks required capabilities
45
+ * @throws {ParseError} When the LLM output cannot be extracted as structured JSON
30
46
  */
31
47
  async execute(resolved, input, options) {
32
48
  const startTime = Date.now();
33
49
  const agentType = resolved.agentType ?? 'validator';
34
50
  this.logger.info(`Agent: ${resolved.name} v${resolved.version} (${agentType})`);
35
51
  this.logger.debug(`Target: ${input.target}`);
36
- // 1. Merge options with agent defaults
52
+ // 1. Setup execution context and tools
37
53
  const context = this.resolveContext(resolved, options);
38
54
  this.logger.debug(`Context: model=${context.model}, maxSteps=${context.maxSteps}, temp=${context.temperature}, timeout=${context.timeoutMs}ms`);
39
- // 2. Determine if shell tool should be enabled (opt-in via agent tools list)
40
- const runtime = resolved.runtime;
41
- const agentTools = runtime.interface?.tools;
42
- let additionalTools;
43
- if (agentTools?.includes('bash')) {
44
- // Resolve model early to determine the provider for shell tool selection
45
- const modelInput = options?.model ?? runtime.defaults?.model ?? this.config.ai.modelOverride ?? 'sonnet';
46
- const resolvedModel = await this.aiProvider.resolveModel(modelInput);
47
- additionalTools = this.aiProvider.createProviderShellTool(resolvedModel.provider, input.target, context.timeoutMs);
48
- }
49
- // 3. Setup tool handler, budget tracker, and AI SDK tool adapter
50
- const toolHandler = new ToolHandler(input.target, this.logger);
51
- const contextBudget = this.config.contextBudget;
52
- const budgetTracker = new TokenBudgetTracker(contextBudget);
53
- const toolAdapter = new ToolAdapter(toolHandler, additionalTools, budgetTracker);
54
- // 4. Get the system prompt
55
- const systemPrompt = runtime.prompt;
56
- // 5. Build initial context message
57
- const initialMessage = await this.buildInitialMessage(input, toolHandler);
58
- // 6. Execute via AI SDK (tool loop handled automatically)
59
- const outputSchema = this.getOutputSchema(agentType);
55
+ const runtime = this.assertAgentRuntime(resolved);
56
+ const toolAdapter = await this.setupTools(runtime, input, options, context);
57
+ // 2. Execute LLM with tool loop
58
+ const initialMessage = await this.buildInitialMessage(input, toolAdapter.toolHandler);
60
59
  const result = await this.aiProvider.generate({
61
60
  model: context.model,
62
- system: systemPrompt,
61
+ system: runtime.prompt,
63
62
  prompt: initialMessage,
64
- tools: toolAdapter.getTools(),
63
+ tools: toolAdapter.adapter.getTools(),
65
64
  maxTokens: context.maxTokens,
66
65
  maxSteps: context.maxSteps,
67
66
  timeoutMs: context.timeoutMs,
68
67
  temperature: context.temperature,
69
- contextBudget,
70
- budgetTracker,
71
- output: outputSchema,
68
+ contextBudget: this.config.contextBudget,
69
+ budgetTracker: toolAdapter.budgetTracker,
70
+ output: { schema: agentOutputSchema, name: 'AgentResult' },
72
71
  });
73
- // 6b. Log raw LLM output for cross-model diagnosis
72
+ // 3. Parse and extract output
74
73
  const rawText = result.text ?? '';
75
- this.logger.debug(`Raw output: ${rawText.length} chars, finishReason=${result.finishReason}`);
74
+ this.logRawOutput(rawText, result.finishReason);
75
+ const { parsed, extraction } = this.parseOutput(result, agentType);
76
+ this.logExtraction(parsed, extraction);
77
+ // 4. Build result
78
+ const recommendations = this.flattenRecommendations(parsed, resolved.name);
79
+ this.logger.info(`Result: decision=${parsed.decision}, score=${parsed.score ?? 'N/A'}, recommendations=${recommendations.length}`);
80
+ const durationMs = Date.now() - startTime;
81
+ const metrics = this.buildMetrics(result, durationMs);
82
+ const decisionCategory = this.classifyAgentDecision(resolved, parsed.decision);
83
+ return this.buildResult(resolved, agentType, context, parsed, recommendations, durationMs, metrics, decisionCategory, rawText);
84
+ }
85
+ /**
86
+ * Setup tool handler, budget tracker, and optional shell tool.
87
+ */
88
+ async setupTools(runtime, input, options, context) {
89
+ const agentTools = runtime.interface?.tools;
90
+ let additionalTools;
91
+ if (agentTools?.includes('bash')) {
92
+ const modelInput = options?.model ?? runtime.defaults?.model ?? this.config.ai.modelOverride ?? DEFAULT_MODEL_ALIAS;
93
+ const resolvedModel = await this.aiProvider.resolveModel(modelInput);
94
+ additionalTools = this.aiProvider.createProviderShellTool(resolvedModel.provider, input.target, context.timeoutMs);
95
+ }
96
+ const toolHandler = new ToolHandler(input.target, this.logger);
97
+ const budgetTracker = new TokenBudgetTracker(this.config.contextBudget);
98
+ const adapter = new ToolAdapter(toolHandler, additionalTools, budgetTracker);
99
+ return { toolHandler, budgetTracker, adapter };
100
+ }
101
+ /**
102
+ * Log raw LLM output for cross-model diagnosis.
103
+ */
104
+ logRawOutput(rawText, finishReason) {
105
+ this.logger.debug(`Raw output: ${rawText.length} chars, finishReason=${finishReason}`);
76
106
  if (rawText.length > 0 && rawText.length <= 5000) {
77
107
  this.logger.debug(`Raw output text:\n${rawText}`);
78
108
  }
@@ -82,24 +112,26 @@ export class AgentExecutor {
82
112
  else {
83
113
  this.logger.warn('Empty output — model likely hit maxSteps while still calling tools');
84
114
  }
85
- // 7. Parse output — prefer structured output, fall back to extraction
86
- let parsed;
87
- let extraction;
115
+ }
116
+ /**
117
+ * Parse LLM output — prefer structured output, fall back to text extraction.
118
+ */
119
+ parseOutput(result, agentType) {
88
120
  if (result.structuredOutput) {
89
- parsed = this.mapStructuredOutput(result.structuredOutput, agentType);
90
- extraction = {
91
- output: parsed,
92
- method: 'structured_output',
93
- confidence: 1.0,
94
- warnings: [],
121
+ const parsed = this.mapStructuredOutput(result.structuredOutput);
122
+ return {
123
+ parsed,
124
+ extraction: { output: parsed, method: 'structured_output', confidence: 1.0, warnings: [] },
95
125
  };
96
- this.logger.info('Output extraction: method=structured_output, confidence=1.0');
97
- }
98
- else {
99
- extraction = this.outputExtractor.extractWithMetadata(result.text, agentType);
100
- parsed = extraction.output;
101
- this.logger.info(`Output extraction: method=${extraction.method}, confidence=${extraction.confidence}`);
102
126
  }
127
+ const extraction = this.outputExtractor.extractWithMetadata(result.text, agentType);
128
+ return { parsed: extraction.output, extraction };
129
+ }
130
+ /**
131
+ * Log extraction details and warnings.
132
+ */
133
+ logExtraction(parsed, extraction) {
134
+ this.logger.info(`Output extraction: method=${extraction.method}, confidence=${extraction.confidence}`);
103
135
  this.logger.debug(`Parsed output: decision=${parsed.decision}, score=${parsed.score}, hasRawJson=${!!parsed.rawJson}`);
104
136
  if (parsed.rawJson) {
105
137
  const keys = Object.keys(parsed.rawJson);
@@ -109,12 +141,12 @@ export class AgentExecutor {
109
141
  if (extraction.warnings.length > 0) {
110
142
  this.logger.warn(`Extraction warnings: ${extraction.warnings.join('; ')}`);
111
143
  }
112
- // 7. Build recommendations
113
- const recommendations = this.flattenRecommendations(parsed, resolved.name);
114
- this.logger.info(`Result: decision=${parsed.decision}, score=${parsed.score ?? 'N/A'}, recommendations=${recommendations.length}`);
115
- // 8. Compute metrics
116
- const durationMs = Date.now() - startTime;
117
- const metrics = {
144
+ }
145
+ /**
146
+ * Build execution metrics from AI result.
147
+ */
148
+ buildMetrics(result, durationMs) {
149
+ return {
118
150
  inputTokens: result.usage.input_tokens,
119
151
  outputTokens: result.usage.output_tokens,
120
152
  cacheCreationTokens: result.usage.cache_creation_input_tokens,
@@ -125,37 +157,35 @@ export class AgentExecutor {
125
157
  model: result.model,
126
158
  toolCallCount: result.toolCallCount,
127
159
  };
128
- // 9. Return discriminated result
129
- if (agentType === 'validator') {
130
- return {
131
- type: 'agent',
132
- agentType: 'validator',
133
- name: resolved.name,
134
- version: resolved.version,
135
- definitionHash: resolved.hash,
136
- decision: parsed.decision ?? 'FAIL',
137
- score: parsed.score ?? 0,
138
- maxScore: parsed.maxScore ?? 100,
139
- threshold: context.thresholds?.pass,
140
- categories: parsed.categories?.map(c => ({
141
- name: c.name,
142
- score: c.score,
143
- maxScore: c.maxPoints,
144
- findings: c.findings,
145
- })),
146
- recommendations,
147
- durationMs,
148
- metrics,
149
- rawOutput: rawText || undefined,
150
- };
151
- }
160
+ }
161
+ /**
162
+ * Classify decision using agent definition vocabulary.
163
+ */
164
+ classifyAgentDecision(resolved, decision) {
165
+ const vocabularyMap = buildVocabularyMap(resolved.definition);
166
+ return classifyDecision(decision, vocabularyMap);
167
+ }
168
+ /**
169
+ * Build discriminated agent result based on agent type.
170
+ */
171
+ buildResult(resolved, agentType, context, parsed, recommendations, durationMs, metrics, decisionCategory, rawText) {
152
172
  return {
153
173
  type: 'agent',
154
- agentType: 'executor',
174
+ agentType,
155
175
  name: resolved.name,
156
176
  version: resolved.version,
157
177
  definitionHash: resolved.hash,
158
- decision: parsed.decision ?? 'FAILED',
178
+ decision: parsed.decision ?? 'FAIL',
179
+ decisionCategory,
180
+ score: parsed.score ?? 0,
181
+ maxScore: parsed.maxScore ?? 100,
182
+ threshold: context.thresholds?.pass,
183
+ categories: parsed.categories?.map(c => ({
184
+ name: c.name,
185
+ score: c.score,
186
+ maxScore: c.maxScore,
187
+ findings: c.findings,
188
+ })),
159
189
  artifacts: parsed.artifacts,
160
190
  recommendations,
161
191
  durationMs,
@@ -168,25 +198,31 @@ export class AgentExecutor {
168
198
  * Priority: options > agent defaults > config defaults
169
199
  */
170
200
  resolveContext(resolved, options) {
171
- const runtime = resolved.runtime;
201
+ const runtime = this.assertAgentRuntime(resolved);
172
202
  const defaults = runtime?.defaults;
173
203
  return {
174
- model: options?.model ?? defaults?.model ?? this.config.ai.modelOverride ?? 'sonnet',
204
+ model: options?.model ?? defaults?.model ?? this.config.ai.modelOverride ?? DEFAULT_MODEL_ALIAS,
175
205
  maxTokens: options?.maxTokens ?? defaults?.maxTokens ?? 8192,
176
206
  timeoutMs: options?.timeoutMs ?? defaults?.timeout ?? this.config.timeout ?? 300_000,
177
207
  temperature: options?.temperature ?? defaults?.temperature ?? 0,
178
- maxSteps: options?.maxSteps ?? 50,
208
+ maxSteps: options?.maxSteps ?? DEFAULT_MAX_STEPS,
179
209
  thresholds: this.resolveThresholds(options?.thresholds, defaults && 'thresholds' in defaults ? defaults.thresholds : undefined),
180
210
  trackResults: options?.trackResults ?? this.config.trackingEnabled,
181
211
  project: options?.project ?? this.config.defaultProject,
182
212
  };
183
213
  }
214
+ assertAgentRuntime(resolved) {
215
+ if (resolved.type !== 'agent') {
216
+ throw new ExecutionError(`AgentExecutor received a '${resolved.type}' definition (expected 'agent')`);
217
+ }
218
+ return resolved.runtime;
219
+ }
184
220
  resolveThresholds(optThresholds, defThresholds) {
185
221
  const pass = optThresholds?.pass ?? defThresholds?.pass;
186
222
  const warn = optThresholds?.warn ?? defThresholds?.warn;
187
223
  if (pass === undefined && warn === undefined)
188
224
  return undefined;
189
- return { pass: pass ?? 75, warn: warn ?? 50 };
225
+ return { pass: pass ?? DEFAULT_PASS_THRESHOLD, warn: warn ?? DEFAULT_WARN_THRESHOLD };
190
226
  }
191
227
  /**
192
228
  * Build the initial user message with project structure context
@@ -254,48 +290,21 @@ export class AgentExecutor {
254
290
  tree += `\n ... and ${remaining} more files`;
255
291
  return tree;
256
292
  }
257
- /**
258
- * Get the appropriate output schema for an agent type.
259
- */
260
- getOutputSchema(agentType) {
261
- switch (agentType) {
262
- case 'validator':
263
- return { schema: validatorOutputSchema, name: 'ValidationResult' };
264
- case 'executor':
265
- return { schema: executorOutputSchema, name: 'ExecutionResult' };
266
- case 'analyst':
267
- case 'generator':
268
- case 'explorer':
269
- case 'forecaster':
270
- return { schema: genericOutputSchema, name: 'AgentResult' };
271
- }
272
- }
273
293
  /**
274
294
  * Map structured output to ParsedOutput.
275
295
  * Null values from .nullable() fields are converted to undefined.
276
296
  */
277
- mapStructuredOutput(output, agentType) {
278
- const base = output;
279
- const result = {
280
- decision: base.decision,
281
- score: base.score,
282
- maxScore: base.maxScore,
283
- summary: base.summary ?? undefined,
297
+ mapStructuredOutput(output) {
298
+ const o = output;
299
+ return {
300
+ decision: o.decision,
301
+ score: o.score,
302
+ maxScore: o.maxScore,
303
+ summary: o.summary ?? undefined,
304
+ categories: o.categories ?? undefined,
305
+ artifacts: o.artifacts ?? undefined,
284
306
  rawJson: output,
285
307
  };
286
- if (agentType === 'validator') {
287
- const v = output;
288
- if (v.categories) {
289
- result.categories = v.categories;
290
- }
291
- }
292
- else if (agentType === 'executor') {
293
- const e = output;
294
- if (e.artifacts) {
295
- result.artifacts = e.artifacts;
296
- }
297
- }
298
- return result;
299
308
  }
300
309
  /**
301
310
  * Flatten parsed categories → flat Recommendation array
@@ -306,10 +315,10 @@ export class AgentExecutor {
306
315
  for (const finding of category.findings ?? []) {
307
316
  for (const issue of finding.issues ?? []) {
308
317
  recommendations.push({
309
- validator: agentName,
318
+ agent: agentName,
310
319
  title: issue.title,
311
- priority: issue.priority,
312
- severity: issue.severity,
320
+ priority: issue.priority ?? 'suggested',
321
+ severity: issue.severity ?? 'medium',
313
322
  failureCode: issue.failureCode,
314
323
  filePath: issue.filePath,
315
324
  lineNumber: issue.lineNumber,
@@ -1 +1 @@
1
- {"version":3,"file":"AgentExecutor.js","sourceRoot":"","sources":["../../src/executor/AgentExecutor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AgentExecutor.js","sourceRoot":"","sources":["../../src/executor/AgentExecutor.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,7 @@ export declare class CommandExecutor {
21
21
  */
22
22
  execute(resolved: ResolvedDefinition, input: ExecutionInput): Promise<CommandResult>;
23
23
  private executeSequentially;
24
+ private executeParallel;
24
25
  /**
25
26
  * Wrap a single agent result as a CommandResult
26
27
  */
@@ -1 +1 @@
1
- {"version":3,"file":"CommandExecutor.d.ts","sourceRoot":"","sources":["../../src/executor/CommandExecutor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAEpE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE/D,OAAO,KAAK,EAAE,cAAc,EAAkB,MAAM,uBAAuB,CAAC;AAC5E,OAAO,KAAK,EAAE,aAAa,EAAkB,MAAM,qBAAqB,CAAC;AAKzE;;;;;;;;GAQG;AACH,qBAAa,eAAe;IAExB,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,QAAQ;gBADR,aAAa,EAAE,aAAa,EAC5B,QAAQ,EAAE,cAAc;IAGlC;;OAEG;IACG,OAAO,CAAC,QAAQ,EAAE,kBAAkB,EAAE,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC;YAmD5E,mBAAmB;IAWjC;;OAEG;IACH,OAAO,CAAC,eAAe;IA4CvB;;OAEG;IACH,OAAO,CAAC,gBAAgB;CAyFzB"}
1
+ {"version":3,"file":"CommandExecutor.d.ts","sourceRoot":"","sources":["../../src/executor/CommandExecutor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAEpE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE/D,OAAO,KAAK,EAAE,cAAc,EAAkB,MAAM,uBAAuB,CAAC;AAC5E,OAAO,KAAK,EAAE,aAAa,EAAkB,MAAM,qBAAqB,CAAC;AAOzE;;;;;;;;GAQG;AACH,qBAAa,eAAe;IAExB,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,QAAQ;gBADR,aAAa,EAAE,aAAa,EAC5B,QAAQ,EAAE,cAAc;IAGlC;;OAEG;IACG,OAAO,CAAC,QAAQ,EAAE,kBAAkB,EAAE,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC;YAsD5E,mBAAmB;YAWnB,eAAe;IAwB7B;;OAEG;IACH,OAAO,CAAC,eAAe;IAqCvB;;OAEG;IACH,OAAO,CAAC,gBAAgB;CAuFzB"}
@@ -1,6 +1,8 @@
1
1
  import { runPreflightChecks } from './preflight.js';
2
+ import { ExecutionError } from '../errors/index.js';
2
3
  import { parseRef } from '../utils/parseRef.js';
3
4
  import { sumTokenMetrics } from '../utils/sumTokenMetrics.js';
5
+ import { DEFAULT_PASS_THRESHOLD, DEFAULT_WARN_THRESHOLD } from '../constants.js';
4
6
  /**
5
7
  * Executes command definitions.
6
8
  *
@@ -22,6 +24,9 @@ export class CommandExecutor {
22
24
  */
23
25
  async execute(resolved, input) {
24
26
  const startTime = Date.now();
27
+ if (resolved.type !== 'command') {
28
+ throw new ExecutionError(`CommandExecutor received a '${resolved.type}' definition (expected 'command')`);
29
+ }
25
30
  const def = resolved.definition;
26
31
  // 1. Run preflight checks
27
32
  if (def.command.execution.preflight) {
@@ -53,7 +58,7 @@ export class CommandExecutor {
53
58
  });
54
59
  };
55
60
  const agentResults = def.command.execution.sequential === false
56
- ? await Promise.all(agentRefs.map(executeAgent))
61
+ ? await this.executeParallel(agentRefs, executeAgent)
57
62
  : await this.executeSequentially(agentRefs, executeAgent);
58
63
  return this.aggregateResults(agentResults, def, resolved.hash, startTime, def.command.aggregation ?? { method: 'average' });
59
64
  }
@@ -64,6 +69,24 @@ export class CommandExecutor {
64
69
  }
65
70
  return results;
66
71
  }
72
+ async executeParallel(refs, fn) {
73
+ const settled = await Promise.allSettled(refs.map(fn));
74
+ const results = [];
75
+ const errors = [];
76
+ for (let i = 0; i < settled.length; i++) {
77
+ const outcome = settled[i];
78
+ if (outcome.status === 'fulfilled') {
79
+ results.push(outcome.value);
80
+ }
81
+ else {
82
+ errors.push(outcome.reason instanceof Error ? outcome.reason.message : String(outcome.reason));
83
+ }
84
+ }
85
+ if (results.length === 0) {
86
+ throw new Error(`All parallel agents failed: ${errors.join('; ')}`);
87
+ }
88
+ return results;
89
+ }
67
90
  /**
68
91
  * Wrap a single agent result as a CommandResult
69
92
  */
@@ -74,32 +97,27 @@ export class CommandExecutor {
74
97
  durationMs,
75
98
  toolCalls: agentResult.metrics.toolCallCount ?? 0,
76
99
  };
77
- const base = {
100
+ return {
78
101
  type: 'command',
79
102
  name: def.command.interface.name,
80
103
  version: def.command.interface.version,
81
104
  definitionHash: hash,
82
105
  agentType: agentResult.agentType,
83
106
  decision: agentResult.decision,
107
+ score: agentResult.score,
108
+ maxScore: agentResult.maxScore,
84
109
  threshold: def.command.execution.thresholds?.pass,
110
+ categories: agentResult.categories?.map(c => ({
111
+ name: c.name,
112
+ score: c.score,
113
+ maxScore: c.maxScore,
114
+ findings: c.findings,
115
+ })),
116
+ artifacts: agentResult.artifacts,
85
117
  recommendations: agentResult.recommendations,
86
118
  durationMs,
87
119
  metrics,
88
120
  };
89
- if (agentResult.agentType === 'validator') {
90
- return {
91
- ...base,
92
- score: agentResult.score,
93
- maxScore: agentResult.maxScore,
94
- categories: agentResult.categories?.map(c => ({
95
- name: c.name,
96
- score: c.score,
97
- maxPoints: c.maxScore,
98
- findings: c.findings,
99
- })),
100
- };
101
- }
102
- return { ...base, artifacts: agentResult.artifacts };
103
121
  }
104
122
  /**
105
123
  * Aggregate multiple agent results into a single CommandResult
@@ -108,12 +126,12 @@ export class CommandExecutor {
108
126
  const durationMs = Date.now() - startTime;
109
127
  // Collect all recommendations
110
128
  const recommendations = results.flatMap(r => r.recommendations);
111
- // Aggregate scores (for validators)
112
- const validatorResults = results.filter((r) => r.agentType === 'validator');
129
+ // Aggregate scores from all scored agents
130
+ const scoredResults = results.filter(r => r.score !== undefined);
113
131
  let score;
114
132
  let maxScore;
115
- if (validatorResults.length > 0) {
116
- const scores = validatorResults.map(r => r.score);
133
+ if (scoredResults.length > 0) {
134
+ const scores = scoredResults.map(r => r.score);
117
135
  switch (aggregation.method) {
118
136
  case 'min':
119
137
  score = Math.min(...scores);
@@ -125,7 +143,7 @@ export class CommandExecutor {
125
143
  const weights = aggregation.weights ?? {};
126
144
  let totalWeight = 0;
127
145
  let weightedSum = 0;
128
- for (const r of validatorResults) {
146
+ for (const r of scoredResults) {
129
147
  const w = weights[r.name] ?? 1;
130
148
  totalWeight += w;
131
149
  weightedSum += r.score * w;
@@ -137,11 +155,11 @@ export class CommandExecutor {
137
155
  default:
138
156
  score = scores.reduce((a, b) => a + b, 0) / scores.length;
139
157
  }
140
- maxScore = Math.max(...validatorResults.map(r => r.maxScore ?? 100));
158
+ maxScore = Math.max(...scoredResults.map(r => r.maxScore ?? 100));
141
159
  }
142
160
  // Determine overall decision
143
- const threshold = def.command.execution.thresholds?.pass ?? 70;
144
- const warnThreshold = def.command.execution.thresholds?.warn ?? 50;
161
+ const threshold = def.command.execution.thresholds?.pass ?? DEFAULT_PASS_THRESHOLD;
162
+ const warnThreshold = def.command.execution.thresholds?.warn ?? DEFAULT_WARN_THRESHOLD;
145
163
  let decision;
146
164
  if (score !== undefined) {
147
165
  if (score >= threshold)
@@ -169,7 +187,7 @@ export class CommandExecutor {
169
187
  name: def.command.interface.name,
170
188
  version: def.command.interface.version,
171
189
  definitionHash: hash,
172
- agentType: validatorResults.length > 0 ? 'validator' : 'executor',
190
+ agentType: results[0]?.agentType ?? 'validator',
173
191
  decision,
174
192
  score,
175
193
  maxScore,
@@ -1 +1 @@
1
- {"version":3,"file":"CommandExecutor.js","sourceRoot":"","sources":["../../src/executor/CommandExecutor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CommandExecutor.js","sourceRoot":"","sources":["../../src/executor/CommandExecutor.ts"],"names":[],"mappings":"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"}
@@ -25,6 +25,7 @@ export declare class PipelineExecutor {
25
25
  */
26
26
  execute(resolved: ResolvedDefinition, input: ExecutionInput): Promise<PipelineResult>;
27
27
  private executeAsync;
28
+ private assertPipelineDefinition;
28
29
  private executeStage;
29
30
  private checkStageDependencies;
30
31
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"PipelineExecutor.d.ts","sourceRoot":"","sources":["../../src/executor/PipelineExecutor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,KAAK,EAAuC,cAAc,EAAe,aAAa,EAAE,cAAc,IAAI,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC/J,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAM5D;;;;;GAKG;AACH,qBAAa,gBAAgB;IAEzB,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,eAAe;IACvB,OAAO,CAAC,QAAQ;gBAFR,gBAAgB,EAAE,gBAAgB,EAClC,eAAe,EAAE,eAAe,EAChC,QAAQ,EAAE,cAAc;IAGlC;;;OAGG;IACG,KAAK,CAAC,QAAQ,EAAE,kBAAkB,EAAE,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;IA0BzF;;OAEG;IACG,OAAO,CAAC,QAAQ,EAAE,kBAAkB,EAAE,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;YAK7E,YAAY;YAyCZ,YAAY;IAuC1B,OAAO,CAAC,sBAAsB;IAO9B;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IA2BzB,0FAA0F;IAC1F,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,kBAAkB;CAU3B;AAED;;GAEG;AACH,cAAM,cAAe,YAAW,eAAe;IAC7C,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,OAAO,CAAC,KAAK,CAAgB;IAC7B,OAAO,CAAC,SAAS,CAAgB;gBAErB,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC;IAMzE,MAAM,IAAI,OAAO,CAAC,cAAc,CAAC;IAIvC,UAAU,IAAI,OAAO;IAIf,IAAI,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAevD,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAU7B,OAAO,CAAC,WAAW;IAiDnB,OAAO,CAAC,eAAe;CAkBxB"}
1
+ {"version":3,"file":"PipelineExecutor.d.ts","sourceRoot":"","sources":["../../src/executor/PipelineExecutor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,KAAK,EAAuC,cAAc,EAAe,aAAa,EAAE,cAAc,IAAI,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC/J,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAO5D;;;;;GAKG;AACH,qBAAa,gBAAgB;IAEzB,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,eAAe;IACvB,OAAO,CAAC,QAAQ;gBAFR,gBAAgB,EAAE,gBAAgB,EAClC,eAAe,EAAE,eAAe,EAChC,QAAQ,EAAE,cAAc;IAGlC;;;OAGG;IACG,KAAK,CAAC,QAAQ,EAAE,kBAAkB,EAAE,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;IA0BzF;;OAEG;IACG,OAAO,CAAC,QAAQ,EAAE,kBAAkB,EAAE,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;YAK7E,YAAY;IAyC1B,OAAO,CAAC,wBAAwB;YAUlB,YAAY;IAuC1B,OAAO,CAAC,sBAAsB;IAO9B;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IA2BzB,0FAA0F;IAC1F,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,kBAAkB;CAU3B;AAED;;GAEG;AACH,cAAM,cAAe,YAAW,eAAe;IAC7C,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,OAAO,CAAC,KAAK,CAAgB;IAC7B,OAAO,CAAC,SAAS,CAAgB;gBAErB,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC;IAMzE,MAAM,IAAI,OAAO,CAAC,cAAc,CAAC;IAIvC,UAAU,IAAI,OAAO;IAIf,IAAI,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAgBvD,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAW7B,OAAO,CAAC,WAAW;IA4CnB,OAAO,CAAC,eAAe;CAgBxB"}