@auto-engineer/cli 0.9.10 → 0.9.12

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 (41) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/src/dsl/index.d.ts +38 -5
  3. package/dist/src/dsl/index.d.ts.map +1 -1
  4. package/dist/src/dsl/index.js +369 -27
  5. package/dist/src/dsl/index.js.map +1 -1
  6. package/dist/src/dsl/types.d.ts +5 -0
  7. package/dist/src/dsl/types.d.ts.map +1 -1
  8. package/dist/src/dsl-exports.d.ts +4 -2
  9. package/dist/src/dsl-exports.d.ts.map +1 -1
  10. package/dist/src/dsl-exports.js +2 -1
  11. package/dist/src/dsl-exports.js.map +1 -1
  12. package/dist/src/server/command-metadata-service.d.ts +17 -0
  13. package/dist/src/server/command-metadata-service.d.ts.map +1 -0
  14. package/dist/src/server/command-metadata-service.js +35 -0
  15. package/dist/src/server/command-metadata-service.js.map +1 -0
  16. package/dist/src/server/command-registry.d.ts +5 -16
  17. package/dist/src/server/command-registry.d.ts.map +1 -1
  18. package/dist/src/server/command-registry.js +8 -18
  19. package/dist/src/server/command-registry.js.map +1 -1
  20. package/dist/src/server/config-loader.d.ts +2 -1
  21. package/dist/src/server/config-loader.d.ts.map +1 -1
  22. package/dist/src/server/config-loader.js +9 -1
  23. package/dist/src/server/config-loader.js.map +1 -1
  24. package/dist/src/server/event-processor.d.ts +5 -3
  25. package/dist/src/server/event-processor.d.ts.map +1 -1
  26. package/dist/src/server/event-processor.js +10 -1
  27. package/dist/src/server/event-processor.js.map +1 -1
  28. package/dist/src/server/http-routes.d.ts +3 -0
  29. package/dist/src/server/http-routes.d.ts.map +1 -1
  30. package/dist/src/server/http-routes.js +29 -8
  31. package/dist/src/server/http-routes.js.map +1 -1
  32. package/dist/src/server/server.d.ts +11 -1
  33. package/dist/src/server/server.d.ts.map +1 -1
  34. package/dist/src/server/server.js +19 -1
  35. package/dist/src/server/server.js.map +1 -1
  36. package/dist/src/server/settled-tracker.d.ts +19 -0
  37. package/dist/src/server/settled-tracker.d.ts.map +1 -0
  38. package/dist/src/server/settled-tracker.js +162 -0
  39. package/dist/src/server/settled-tracker.js.map +1 -0
  40. package/dist/tsconfig.tsbuildinfo +1 -1
  41. package/package.json +4 -4
package/CHANGELOG.md CHANGED
@@ -1,5 +1,23 @@
1
1
  # @auto-engineer/cli
2
2
 
3
+ ## 0.9.12
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies []:
8
+ - @auto-engineer/file-store@0.9.12
9
+ - @auto-engineer/message-bus@0.9.12
10
+ - @auto-engineer/message-store@0.9.12
11
+
12
+ ## 0.9.11
13
+
14
+ ### Patch Changes
15
+
16
+ - Updated dependencies []:
17
+ - @auto-engineer/file-store@0.9.11
18
+ - @auto-engineer/message-bus@0.9.11
19
+ - @auto-engineer/message-store@0.9.11
20
+
3
21
  ## 0.9.10
4
22
 
5
23
  ### Patch Changes
@@ -1,16 +1,28 @@
1
1
  import type { Command, Event } from '@auto-engineer/message-bus';
2
- import type { EventRegistration, DispatchAction, FoldRegistration, DslRegistration, ConfigDefinition, SettledRegistration } from './types';
3
- /**
4
- * Register an event handler that will execute when the specified event occurs
5
- */
2
+ import type { EventRegistration, DispatchAction, FoldRegistration, DslRegistration, ConfigDefinition, SettledRegistration, SettledHandlerConfig } from './types';
3
+ import type { CommandMetadataService } from '../server/command-metadata-service';
4
+ import type { ILocalMessageStore } from '@auto-engineer/message-store';
5
+ export type NodeStatus = 'None' | 'idle' | 'running' | 'pass' | 'fail';
6
+ export interface CommandEventMapping {
7
+ successEvent: string;
8
+ failureEvent: string;
9
+ }
10
+ export declare const COMMAND_TO_EVENT_MAP: Record<string, CommandEventMapping>;
11
+ export interface PipelineGraphConfig {
12
+ metadataService?: CommandMetadataService;
13
+ eventHandlers?: Map<string, Array<(event: Event) => void>>;
14
+ messageStore?: ILocalMessageStore;
15
+ }
6
16
  export declare function on<T extends Event>(eventType: string | ((event: T) => void), handler?: (event: T) => Command | Command[] | DispatchAction | void): EventRegistration | void;
7
17
  export declare namespace on {
8
- var settled: <T extends Command, U extends Command = never, V extends Command = never, W extends Command = never, X extends Command = never>(commandTypes: [T, U, V, W, X] extends [Command, never, never, never, never] ? [T["type"]] : [T, U, V, W, X] extends [Command, Command, never, never, never] ? [T["type"], U["type"]] : [T, U, V, W, X] extends [Command, Command, Command, never, never] ? [T["type"], U["type"], V["type"]] : [T, U, V, W, X] extends [Command, Command, Command, Command, never] ? [T["type"], U["type"], V["type"], W["type"]] : [T, U, V, W, X] extends [Command, Command, Command, Command, Command] ? [T["type"], U["type"], V["type"], W["type"], X["type"]] : never, callback: (events: [T, U, V, W, X] extends [Command, never, never, never, never] ? { [K in T["type"]]: Event[]; } : [T, U, V, W, X] extends [Command, Command, never, never, never] ? { [K in T["type"] | U["type"]]: Event[]; } : [T, U, V, W, X] extends [Command, Command, Command, never, never] ? { [K in T["type"] | U["type"] | V["type"]]: Event[]; } : [T, U, V, W, X] extends [Command, Command, Command, Command, never] ? { [K in T["type"] | U["type"] | V["type"] | W["type"]]: Event[]; } : [T, U, V, W, X] extends [Command, Command, Command, Command, Command] ? { [K in T["type"] | U["type"] | V["type"] | W["type"] | X["type"]]: Event[]; } : never) => void) => SettledRegistration;
18
+ var settled: <T extends Command, U extends Command = never, V extends Command = never, W extends Command = never, X extends Command = never>(commandTypes: [T, U, V, W, X] extends [Command, never, never, never, never] ? [T["type"]] : [T, U, V, W, X] extends [Command, Command, never, never, never] ? [T["type"], U["type"]] : [T, U, V, W, X] extends [Command, Command, Command, never, never] ? [T["type"], U["type"], V["type"]] : [T, U, V, W, X] extends [Command, Command, Command, Command, never] ? [T["type"], U["type"], V["type"], W["type"]] : [T, U, V, W, X] extends [Command, Command, Command, Command, Command] ? [T["type"], U["type"], V["type"], W["type"], X["type"]] : never, callbackOrConfig: ((events: [T, U, V, W, X] extends [Command, never, never, never, never] ? { [K in T["type"]]: Event[]; } : [T, U, V, W, X] extends [Command, Command, never, never, never] ? { [K in T["type"] | U["type"]]: Event[]; } : [T, U, V, W, X] extends [Command, Command, Command, never, never] ? { [K in T["type"] | U["type"] | V["type"]]: Event[]; } : [T, U, V, W, X] extends [Command, Command, Command, Command, never] ? { [K in T["type"] | U["type"] | V["type"] | W["type"]]: Event[]; } : [T, U, V, W, X] extends [Command, Command, Command, Command, Command] ? { [K in T["type"] | U["type"] | V["type"] | W["type"] | X["type"]]: Event[]; } : never) => void) | SettledHandlerConfig) => SettledRegistration;
9
19
  }
10
20
  /**
11
21
  * Dispatch a command to the message bus
12
22
  */
13
23
  export declare function dispatch<T extends Command>(command: T): DispatchAction;
24
+ export declare function dispatch<T extends Command>(commandType: T['type'], data: T['data']): Command;
25
+ export declare function dispatch<TDispatchCommands extends Command>(commandTypes: readonly TDispatchCommands['type'][], handler: (events: Record<string, Event[]>, send: <TCommand extends TDispatchCommands>(command: TCommand) => void) => void): SettledHandlerConfig<TDispatchCommands>;
14
26
  export declare namespace dispatch {
15
27
  var parallel: <T extends Command>(commands: T[]) => DispatchAction;
16
28
  var sequence: <T extends Command>(commands: T[]) => DispatchAction;
@@ -32,4 +44,25 @@ export declare function getPendingDispatches(): DispatchAction[];
32
44
  * Create an Auto configuration with plugins and pipeline
33
45
  */
34
46
  export declare function autoConfig(config: ConfigDefinition): ConfigDefinition;
47
+ /**
48
+ * Generate pipeline graph from current registrations
49
+ */
50
+ export declare function getPipelineGraph(config?: PipelineGraphConfig): Promise<{
51
+ nodes: Array<{
52
+ id: string;
53
+ name: string;
54
+ title: string;
55
+ alias?: string;
56
+ description?: string;
57
+ package?: string;
58
+ version?: string;
59
+ category?: string;
60
+ icon?: string;
61
+ status: NodeStatus;
62
+ }>;
63
+ edges: Array<{
64
+ from: string;
65
+ to: string;
66
+ }>;
67
+ }>;
35
68
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/dsl/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/dsl/index.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,50 @@
1
- // Track registrations when DSL functions are called
1
+ import createDebug from 'debug';
2
+ const debug = createDebug('auto-engineer:dsl:pipeline-graph');
2
3
  let registrations = [];
3
4
  let pendingDispatches = [];
4
- /**
5
- * Register an event handler that will execute when the specified event occurs
6
- */
5
+ export const COMMAND_TO_EVENT_MAP = {
6
+ ExportSchema: {
7
+ successEvent: 'SchemaExported',
8
+ failureEvent: 'SchemaExportFailed',
9
+ },
10
+ GenerateServer: {
11
+ successEvent: 'ServerGenerated',
12
+ failureEvent: 'ServerGenerationFailed',
13
+ },
14
+ GenerateIA: {
15
+ successEvent: 'IAGenerated',
16
+ failureEvent: 'IAGenerationFailed',
17
+ },
18
+ GenerateClient: {
19
+ successEvent: 'ClientGenerated',
20
+ failureEvent: 'ClientGenerationFailed',
21
+ },
22
+ ImplementClient: {
23
+ successEvent: 'ClientImplemented',
24
+ failureEvent: 'ClientImplementationFailed',
25
+ },
26
+ ImplementSlice: {
27
+ successEvent: 'SliceImplemented',
28
+ failureEvent: 'SliceImplementationFailed',
29
+ },
30
+ CheckTests: {
31
+ successEvent: 'TestsPassed',
32
+ failureEvent: 'TestsFailed',
33
+ },
34
+ CheckTypes: {
35
+ successEvent: 'TypeCheckPassed',
36
+ failureEvent: 'TypeCheckFailed',
37
+ },
38
+ CheckLint: {
39
+ successEvent: 'LintCheckPassed',
40
+ failureEvent: 'LintCheckFailed',
41
+ },
42
+ };
7
43
  export function on(eventType, handler) {
8
- // Support both forms: on('EventName', handler) and on((event: EventType) => ...)
9
44
  if (typeof eventType === 'function') {
10
- // Extract event type from function parameter type (will be handled by config parser)
11
45
  const registration = {
12
46
  type: 'on',
13
- eventType: '', // Will be inferred from type
47
+ eventType: '',
14
48
  handler: eventType,
15
49
  };
16
50
  registrations.push(registration);
@@ -26,29 +60,74 @@ export function on(eventType, handler) {
26
60
  return registration;
27
61
  }
28
62
  }
29
- /**
30
- * Wait for all specified commands to settle and collect their events
31
- */
32
- function settled(commandTypes, callback) {
33
- const registration = {
34
- type: 'on-settled',
35
- commandTypes: commandTypes,
36
- handler: callback,
37
- };
38
- registrations.push(registration);
39
- return registration;
63
+ function settled(commandTypes, callbackOrConfig) {
64
+ const commandTypesArray = commandTypes;
65
+ if (typeof callbackOrConfig === 'function') {
66
+ const registration = {
67
+ type: 'on-settled',
68
+ commandTypes: commandTypesArray,
69
+ handler: callbackOrConfig,
70
+ };
71
+ registrations.push(registration);
72
+ return registration;
73
+ }
74
+ else {
75
+ const { dispatches, handler } = callbackOrConfig;
76
+ const wrappedHandler = (events) => {
77
+ const validatedDispatch = (command) => {
78
+ if (!dispatches.includes(command.type)) {
79
+ throw new Error(`Command type "${command.type}" is not declared in dispatches list`);
80
+ }
81
+ const action = {
82
+ type: 'dispatch',
83
+ command,
84
+ };
85
+ pendingDispatches.push(action);
86
+ };
87
+ handler(events, validatedDispatch);
88
+ };
89
+ const registration = {
90
+ type: 'on-settled',
91
+ commandTypes: commandTypesArray,
92
+ handler: wrappedHandler,
93
+ dispatches,
94
+ };
95
+ registrations.push(registration);
96
+ return registration;
97
+ }
40
98
  }
41
99
  on.settled = settled;
42
- /**
43
- * Dispatch a command to the message bus
44
- */
45
- export function dispatch(command) {
46
- const action = {
47
- type: 'dispatch',
48
- command,
100
+ export function dispatch(commandOrTypeOrTypes, dataOrHandler) {
101
+ // Array pattern for on.settled
102
+ if (Array.isArray(commandOrTypeOrTypes)) {
103
+ const commandTypes = commandOrTypeOrTypes;
104
+ const handler = dataOrHandler;
105
+ return {
106
+ dispatches: commandTypes,
107
+ handler,
108
+ };
109
+ }
110
+ // Object pattern for full command
111
+ if (typeof commandOrTypeOrTypes === 'object' &&
112
+ commandOrTypeOrTypes !== null &&
113
+ !Array.isArray(commandOrTypeOrTypes)) {
114
+ const command = commandOrTypeOrTypes;
115
+ const action = {
116
+ type: 'dispatch',
117
+ command,
118
+ };
119
+ pendingDispatches.push(action);
120
+ return action;
121
+ }
122
+ // String pattern for command type + data - return the command object for event handlers
123
+ const commandType = commandOrTypeOrTypes;
124
+ const data = dataOrHandler;
125
+ const command = {
126
+ type: commandType,
127
+ data,
49
128
  };
50
- pendingDispatches.push(action);
51
- return action;
129
+ // Return the command directly for event handlers to process
130
+ return command;
52
131
  }
53
132
  /**
54
133
  * Dispatch multiple commands in parallel
@@ -129,4 +208,267 @@ export function getPendingDispatches() {
129
208
  export function autoConfig(config) {
130
209
  return config;
131
210
  }
211
+ /**
212
+ * Convert camelCase/PascalCase to title case with spaces
213
+ * E.g., "GenerateServer" -> "Generate Server", "checkTypes" -> "Check Types", "GenerateHTML" -> "Generate HTML"
214
+ */
215
+ function camelCaseToTitleCase(str) {
216
+ return str
217
+ .replace(/([a-z])([A-Z])/g, '$1 $2')
218
+ .replace(/([A-Z])([A-Z][a-z])/g, '$1 $2')
219
+ .replace(/[_-]/g, ' ')
220
+ .replace(/^./, (match) => match.toUpperCase())
221
+ .trim();
222
+ }
223
+ /**
224
+ * Extract the source command from an event type name
225
+ * E.g., "SchemaExported" -> "ExportSchema"
226
+ */
227
+ function getCommandFromEventType(eventType) {
228
+ // Map known event types to their source commands
229
+ const eventToCommandMap = {
230
+ SchemaExported: 'ExportSchema',
231
+ ServerGenerated: 'GenerateServer',
232
+ IAGenerated: 'GenerateIA',
233
+ ClientGenerated: 'GenerateClient',
234
+ SliceImplemented: 'ImplementSlice',
235
+ };
236
+ return eventToCommandMap[eventType] || null;
237
+ }
238
+ /**
239
+ * Get target commands that are typically dispatched for an event type
240
+ * Based on the pipeline configuration in auto.config.ts
241
+ */
242
+ function getTargetCommandsFromEventType(eventType) {
243
+ // Map event types to their typical target commands
244
+ const eventToTargetsMap = {
245
+ SchemaExported: ['GenerateServer'],
246
+ ServerGenerated: ['GenerateIA'],
247
+ IAGenerated: ['GenerateClient'],
248
+ ClientGenerated: ['ImplementClient'],
249
+ SliceImplemented: ['CheckTests', 'CheckTypes', 'CheckLint'],
250
+ };
251
+ return eventToTargetsMap[eventType] ?? [];
252
+ }
253
+ /**
254
+ * Calculate status for a pipeline node based on message store
255
+ */
256
+ async function calculateNodeStatus(commandType, messageStore) {
257
+ try {
258
+ // Get all messages from the message store
259
+ const allMessages = await messageStore.getAllMessages();
260
+ // Find all commands for this command type
261
+ const commands = allMessages
262
+ .filter((msg) => msg.messageType === 'command' && msg.message.type === commandType)
263
+ .sort((a, b) => a.timestamp.getTime() - b.timestamp.getTime());
264
+ if (commands.length === 0) {
265
+ return 'idle';
266
+ }
267
+ // Get the latest command
268
+ const latestCommand = commands[commands.length - 1];
269
+ const requestId = latestCommand.message.requestId;
270
+ if (requestId === undefined || requestId === null || requestId === '') {
271
+ throw new Error(`Command ${commandType} is missing requestId`);
272
+ }
273
+ const mapping = COMMAND_TO_EVENT_MAP[commandType];
274
+ if (mapping === undefined) {
275
+ return 'None';
276
+ }
277
+ // Find events that match this command's requestId
278
+ const relatedEvents = allMessages.filter((msg) => msg.messageType === 'event' && msg.message.requestId === requestId);
279
+ if (relatedEvents.length === 0) {
280
+ return 'running';
281
+ }
282
+ // Check if there's any failure event (any event with an error field)
283
+ const hasFailure = relatedEvents.some((event) => {
284
+ const data = event.message.data;
285
+ return data !== null && typeof data === 'object' && 'error' in data;
286
+ });
287
+ if (hasFailure) {
288
+ return 'fail';
289
+ }
290
+ // Check if there's a success event
291
+ const hasSuccess = relatedEvents.some((event) => event.message.type === mapping.successEvent);
292
+ if (hasSuccess) {
293
+ return 'pass';
294
+ }
295
+ return 'running';
296
+ }
297
+ catch (error) {
298
+ debug('Error calculating node status for %s: %O', commandType, error);
299
+ throw error;
300
+ }
301
+ }
302
+ /**
303
+ * Generate pipeline graph from current registrations
304
+ */
305
+ export async function getPipelineGraph(config = {}) {
306
+ const { metadataService, eventHandlers, messageStore } = config;
307
+ const commandNodes = new Set();
308
+ const edges = [];
309
+ debug('Called with metadataService=%s eventHandlers=%s eventHandlers size=%s messageStore=%s', !!metadataService, !!eventHandlers, eventHandlers?.size, !!messageStore);
310
+ function getNodeId(commandType) {
311
+ if (metadataService) {
312
+ const metadata = metadataService.getCommandMetadata(commandType);
313
+ if (metadata) {
314
+ return `${metadata.package}/${metadata.alias}`;
315
+ }
316
+ }
317
+ return commandType;
318
+ }
319
+ // If eventHandlers are provided, use them instead of DSL registrations
320
+ if (eventHandlers) {
321
+ debug('Using event handlers, found %d handlers', eventHandlers.size);
322
+ // For now, we need to reconstruct the pipeline from the event handlers
323
+ // This is a simplified approach that may need enhancement
324
+ for (const [eventType, handlers] of eventHandlers) {
325
+ debug('Processing event type %s with %d handlers', eventType, handlers.length);
326
+ // Extract command relationships from event type names
327
+ // This is based on the naming convention in auto.config.ts
328
+ const sourceCommand = getCommandFromEventType(eventType);
329
+ debug('Source command for %s = %s', eventType, sourceCommand);
330
+ if (sourceCommand !== null && sourceCommand !== '') {
331
+ commandNodes.add(sourceCommand);
332
+ // For each handler, try to extract target commands
333
+ // This would need the actual dispatch functions to be analyzed
334
+ // For now, we'll use a simplified mapping based on known patterns
335
+ const targetCommands = getTargetCommandsFromEventType(eventType);
336
+ debug('Target commands for %s = %o', eventType, targetCommands);
337
+ targetCommands.forEach((targetCommand) => {
338
+ commandNodes.add(targetCommand);
339
+ edges.push({ from: getNodeId(sourceCommand), to: getNodeId(targetCommand) });
340
+ });
341
+ }
342
+ }
343
+ debug('Final nodes: %o', Array.from(commandNodes));
344
+ debug('Final edges: %o', edges);
345
+ }
346
+ else {
347
+ // Fallback to DSL registrations (original behavior)
348
+ registrations.forEach((registration) => {
349
+ if (registration.type === 'on') {
350
+ processEventRegistration(registration, commandNodes, edges, metadataService);
351
+ }
352
+ if (registration.type === 'on-settled') {
353
+ processSettledRegistration(registration, commandNodes, edges, metadataService);
354
+ }
355
+ });
356
+ }
357
+ const nodes = await Promise.all(Array.from(commandNodes).map(async (commandType) => {
358
+ const baseNode = {
359
+ id: commandType,
360
+ name: commandType,
361
+ title: camelCaseToTitleCase(commandType),
362
+ };
363
+ let status = 'None';
364
+ if (messageStore) {
365
+ status = await calculateNodeStatus(commandType, messageStore);
366
+ }
367
+ if (metadataService) {
368
+ const metadata = metadataService.getCommandMetadata(commandType);
369
+ if (metadata) {
370
+ return {
371
+ ...baseNode,
372
+ id: `${metadata.package}/${metadata.alias}`,
373
+ title: camelCaseToTitleCase(commandType),
374
+ alias: metadata.alias,
375
+ description: metadata.description,
376
+ package: metadata.package,
377
+ version: metadata.version,
378
+ category: metadata.category,
379
+ icon: metadata.icon ?? 'terminal',
380
+ status,
381
+ };
382
+ }
383
+ }
384
+ return {
385
+ ...baseNode,
386
+ icon: 'terminal',
387
+ status,
388
+ };
389
+ }));
390
+ return { nodes, edges };
391
+ }
392
+ function processEventRegistration(registration, commandNodes, edges, metadataService) {
393
+ try {
394
+ const mockEvent = { type: registration.eventType, data: {} };
395
+ const result = registration.handler(mockEvent);
396
+ if (result && typeof result === 'object' && 'type' in result) {
397
+ addCommandAndEdge(result, registration.eventType, commandNodes, edges, metadataService);
398
+ }
399
+ else if (Array.isArray(result)) {
400
+ result.forEach((command) => {
401
+ if (command !== null && typeof command === 'object' && 'type' in command && typeof command.type === 'string') {
402
+ addCommandAndEdge(command, registration.eventType, commandNodes, edges, metadataService);
403
+ }
404
+ });
405
+ }
406
+ }
407
+ catch {
408
+ // Handler might require specific event data, skip if it fails
409
+ }
410
+ }
411
+ function processSettledRegistration(registration, commandNodes, edges, metadataService) {
412
+ function getNodeId(commandType) {
413
+ if (metadataService) {
414
+ const metadata = metadataService.getCommandMetadata(commandType);
415
+ if (metadata) {
416
+ return `${metadata.package}/${metadata.alias}`;
417
+ }
418
+ }
419
+ return commandType;
420
+ }
421
+ registration.commandTypes.forEach((commandType) => {
422
+ commandNodes.add(commandType);
423
+ });
424
+ if (registration.dispatches && registration.dispatches.length > 0) {
425
+ registration.dispatches.forEach((commandType) => {
426
+ commandNodes.add(commandType);
427
+ registration.commandTypes.forEach((settledCommand) => {
428
+ edges.push({
429
+ from: getNodeId(settledCommand),
430
+ to: getNodeId(commandType),
431
+ });
432
+ });
433
+ });
434
+ }
435
+ }
436
+ function addCommandAndEdge(command, eventType, commandNodes, edges, metadataService) {
437
+ function getNodeId(commandType) {
438
+ if (metadataService) {
439
+ const metadata = metadataService.getCommandMetadata(commandType);
440
+ if (metadata) {
441
+ return `${metadata.package}/${metadata.alias}`;
442
+ }
443
+ }
444
+ return commandType;
445
+ }
446
+ commandNodes.add(command.type);
447
+ const sourceCommand = inferSourceCommand(eventType);
448
+ if (sourceCommand !== null) {
449
+ commandNodes.add(sourceCommand);
450
+ edges.push({
451
+ from: getNodeId(sourceCommand),
452
+ to: getNodeId(command.type),
453
+ });
454
+ }
455
+ }
456
+ /**
457
+ * Infer source command from event name using naming patterns
458
+ */
459
+ function inferSourceCommand(eventType) {
460
+ // Pattern: EventExported -> ExportEvent
461
+ if (eventType.endsWith('Exported')) {
462
+ return 'Export' + eventType.replace('Exported', '');
463
+ }
464
+ // Pattern: EventGenerated -> GenerateEvent
465
+ if (eventType.endsWith('Generated')) {
466
+ return 'Generate' + eventType.replace('Generated', '');
467
+ }
468
+ // Pattern: EventImplemented -> ImplementEvent
469
+ if (eventType.endsWith('Implemented')) {
470
+ return 'Implement' + eventType.replace('Implemented', '');
471
+ }
472
+ return null;
473
+ }
132
474
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/dsl/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/dsl/index.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,11 @@ export interface SettledRegistration {
19
19
  type: 'on-settled';
20
20
  commandTypes: readonly string[];
21
21
  handler: (events: Record<string, Event[]>) => void;
22
+ dispatches?: readonly string[];
23
+ }
24
+ export interface SettledHandlerConfig<TDispatchCommands extends Command = Command> {
25
+ dispatches: readonly TDispatchCommands['type'][];
26
+ handler: (events: Record<string, Event[]>, dispatch: <T extends TDispatchCommands>(command: T) => void) => void;
22
27
  }
23
28
  export type DslRegistration = EventRegistration | DispatchAction | FoldRegistration | SettledRegistration;
24
29
  export interface ConfigDefinition {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/dsl/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAEjE,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,IAAI,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,GAAG,OAAO,EAAE,GAAG,cAAc,GAAG,IAAI,CAAC;CACxE;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,UAAU,GAAG,mBAAmB,GAAG,mBAAmB,GAAG,iBAAiB,CAAC;IACjF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,OAAO,GAAG,OAAO,EAAE,CAAC;CAC5C;AAED,MAAM,WAAW,gBAAgB,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC,GAAG,KAAK;IACtD,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,YAAY,CAAC;IACnB,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IAChC,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;CACpD;AAED,MAAM,MAAM,eAAe,GAAG,iBAAiB,GAAG,cAAc,GAAG,gBAAgB,GAAG,mBAAmB,CAAC;AAE1G,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;CACvB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/dsl/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAEjE,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,IAAI,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,GAAG,OAAO,EAAE,GAAG,cAAc,GAAG,IAAI,CAAC;CACxE;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,UAAU,GAAG,mBAAmB,GAAG,mBAAmB,GAAG,iBAAiB,CAAC;IACjF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,OAAO,GAAG,OAAO,EAAE,CAAC;CAC5C;AAED,MAAM,WAAW,gBAAgB,CAAC,CAAC,GAAG,OAAO,EAAE,CAAC,GAAG,KAAK;IACtD,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,YAAY,CAAC;IACnB,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IAChC,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;IACnD,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAChC;AAED,MAAM,WAAW,oBAAoB,CAAC,iBAAiB,SAAS,OAAO,GAAG,OAAO;IAC/E,UAAU,EAAE,SAAS,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC;IACjD,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,SAAS,iBAAiB,EAAE,OAAO,EAAE,CAAC,KAAK,IAAI,KAAK,IAAI,CAAC;CACjH;AAED,MAAM,MAAM,eAAe,GAAG,iBAAiB,GAAG,cAAc,GAAG,gBAAgB,GAAG,mBAAmB,CAAC;AAE1G,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;CACvB"}
@@ -1,3 +1,5 @@
1
- export { on, dispatch, fold, autoConfig } from './dsl/index';
2
- export type { EventRegistration, DispatchAction, FoldRegistration, DslRegistration, ConfigDefinition, } from './dsl/types';
1
+ export { on, dispatch, fold, autoConfig, getPipelineGraph } from './dsl/index';
2
+ export { CommandMetadataService } from './server/command-metadata-service';
3
+ export type { EventRegistration, DispatchAction, FoldRegistration, DslRegistration, ConfigDefinition, SettledHandlerConfig, } from './dsl/types';
4
+ export type { CommandMetadata } from './server/command-metadata-service';
3
5
  //# sourceMappingURL=dsl-exports.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"dsl-exports.d.ts","sourceRoot":"","sources":["../../src/dsl-exports.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC7D,YAAY,EACV,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,gBAAgB,GACjB,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"dsl-exports.d.ts","sourceRoot":"","sources":["../../src/dsl-exports.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAC3E,YAAY,EACV,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC"}
@@ -1,3 +1,4 @@
1
1
  // Export only the DSL functions for use in auto.config.ts
2
- export { on, dispatch, fold, autoConfig } from './dsl/index.js';
2
+ export { on, dispatch, fold, autoConfig, getPipelineGraph } from './dsl/index.js';
3
+ export { CommandMetadataService } from './server/command-metadata-service.js';
3
4
  //# sourceMappingURL=dsl-exports.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dsl-exports.js","sourceRoot":"","sources":["../../src/dsl-exports.ts"],"names":[],"mappings":"AAAA,0DAA0D;AAC1D,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"dsl-exports.js","sourceRoot":"","sources":["../../src/dsl-exports.ts"],"names":[],"mappings":"AAAA,0DAA0D;AAC1D,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC"}
@@ -0,0 +1,17 @@
1
+ export interface CommandMetadata {
2
+ alias: string;
3
+ description: string;
4
+ package: string;
5
+ version?: string;
6
+ category?: string;
7
+ icon?: string;
8
+ }
9
+ export declare class CommandMetadataService {
10
+ private commandMetadata;
11
+ extractUnifiedHandlerMetadata(handler: unknown, commandName: string): void;
12
+ setCommandMetadata(commandName: string, metadata: CommandMetadata): void;
13
+ getCommandMetadata(commandName: string): CommandMetadata | undefined;
14
+ getAllCommandMetadata(): Map<string, CommandMetadata>;
15
+ hasMetadata(commandName: string): boolean;
16
+ }
17
+ //# sourceMappingURL=command-metadata-service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command-metadata-service.d.ts","sourceRoot":"","sources":["../../../src/server/command-metadata-service.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,qBAAa,sBAAsB;IACjC,OAAO,CAAC,eAAe,CAA2C;IAElE,6BAA6B,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI;IAgB1E,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,GAAG,IAAI;IAKxE,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IAIpE,qBAAqB,IAAI,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC;IAIrD,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO;CAG1C"}