@auto-engineer/cli 0.8.4 → 0.8.6

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 (55) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/dist/src/index.d.ts.map +1 -1
  3. package/dist/src/index.js +3 -2
  4. package/dist/src/index.js.map +1 -1
  5. package/dist/src/plugin-loader.d.ts +1 -0
  6. package/dist/src/plugin-loader.d.ts.map +1 -1
  7. package/dist/src/plugin-loader.js +22 -29
  8. package/dist/src/plugin-loader.js.map +1 -1
  9. package/dist/src/server/dashboard.html +330 -52
  10. package/dist/src/server/event-processor.d.ts +21 -9
  11. package/dist/src/server/event-processor.d.ts.map +1 -1
  12. package/dist/src/server/event-processor.js +101 -25
  13. package/dist/src/server/event-processor.js.map +1 -1
  14. package/dist/src/server/file-syncer/discovery/bareImports.d.ts +3 -0
  15. package/dist/src/server/file-syncer/discovery/bareImports.d.ts.map +1 -0
  16. package/dist/src/server/file-syncer/discovery/bareImports.js +36 -0
  17. package/dist/src/server/file-syncer/discovery/bareImports.js.map +1 -0
  18. package/dist/src/server/file-syncer/discovery/dts.d.ts +11 -0
  19. package/dist/src/server/file-syncer/discovery/dts.d.ts.map +1 -0
  20. package/dist/src/server/file-syncer/discovery/dts.js +108 -0
  21. package/dist/src/server/file-syncer/discovery/dts.js.map +1 -0
  22. package/dist/src/server/file-syncer/index.d.ts +17 -0
  23. package/dist/src/server/file-syncer/index.d.ts.map +1 -0
  24. package/dist/src/server/file-syncer/index.js +210 -0
  25. package/dist/src/server/file-syncer/index.js.map +1 -0
  26. package/dist/src/server/file-syncer/sync/resolveSyncFileSet.d.ts +7 -0
  27. package/dist/src/server/file-syncer/sync/resolveSyncFileSet.d.ts.map +1 -0
  28. package/dist/src/server/file-syncer/sync/resolveSyncFileSet.js +76 -0
  29. package/dist/src/server/file-syncer/sync/resolveSyncFileSet.js.map +1 -0
  30. package/dist/src/server/file-syncer/types/wire.d.ts +14 -0
  31. package/dist/src/server/file-syncer/types/wire.d.ts.map +1 -0
  32. package/dist/src/server/file-syncer/types/wire.js +2 -0
  33. package/dist/src/server/file-syncer/types/wire.js.map +1 -0
  34. package/dist/src/server/file-syncer/utils/hash.d.ts +5 -0
  35. package/dist/src/server/file-syncer/utils/hash.d.ts.map +1 -0
  36. package/dist/src/server/file-syncer/utils/hash.js +20 -0
  37. package/dist/src/server/file-syncer/utils/hash.js.map +1 -0
  38. package/dist/src/server/file-syncer/utils/path.d.ts +15 -0
  39. package/dist/src/server/file-syncer/utils/path.d.ts.map +1 -0
  40. package/dist/src/server/file-syncer/utils/path.js +100 -0
  41. package/dist/src/server/file-syncer/utils/path.js.map +1 -0
  42. package/dist/src/server/http-routes.d.ts +4 -5
  43. package/dist/src/server/http-routes.d.ts.map +1 -1
  44. package/dist/src/server/http-routes.js +234 -31
  45. package/dist/src/server/http-routes.js.map +1 -1
  46. package/dist/src/server/server.d.ts +8 -10
  47. package/dist/src/server/server.d.ts.map +1 -1
  48. package/dist/src/server/server.js +21 -13
  49. package/dist/src/server/server.js.map +1 -1
  50. package/dist/tsconfig.tsbuildinfo +1 -1
  51. package/package.json +8 -4
  52. package/dist/src/server/file-syncer.d.ts +0 -21
  53. package/dist/src/server/file-syncer.d.ts.map +0 -1
  54. package/dist/src/server/file-syncer.js +0 -101
  55. package/dist/src/server/file-syncer.js.map +0 -1
@@ -2,6 +2,48 @@ import { fileURLToPath } from 'url';
2
2
  import { dirname, join } from 'path';
3
3
  import createDebug from 'debug';
4
4
  const debugHttp = createDebug('auto-engineer:server:http');
5
+ // Helper functions to reduce complexity
6
+ function validateCommandStructure(command) {
7
+ if (!command.type || !('data' in command)) {
8
+ return 'Invalid command structure. Must have type and data fields.';
9
+ }
10
+ return null;
11
+ }
12
+ function addMissingIds(command) {
13
+ const hasRequestId = command.requestId !== null && command.requestId !== undefined && command.requestId !== '';
14
+ const hasCorrelationId = command.correlationId !== null && command.correlationId !== undefined && command.correlationId !== '';
15
+ return {
16
+ ...command,
17
+ requestId: hasRequestId ? command.requestId : `req-${Date.now()}-${Math.random().toString(36).substring(2, 11)}`,
18
+ correlationId: hasCorrelationId
19
+ ? command.correlationId
20
+ : `corr-${Date.now()}-${Math.random().toString(36).substring(2, 11)}`,
21
+ };
22
+ }
23
+ function validateCommandHandler(commandType, availableCommands) {
24
+ if (!availableCommands.includes(commandType)) {
25
+ return `Command handler not found for command: ${commandType}`;
26
+ }
27
+ return null;
28
+ }
29
+ async function processCommand(messageBus, command, config) {
30
+ try {
31
+ await messageBus.sendCommand(command);
32
+ debugHttp('Command processed successfully:', command.type);
33
+ }
34
+ catch (err) {
35
+ const isTest = process.env.NODE_ENV === 'test' || process.env.VITEST === 'true';
36
+ if (!isTest) {
37
+ console.error('Command failed:', err);
38
+ }
39
+ debugHttp('Command failed (suppressed in tests):', err);
40
+ config.onCommandError({
41
+ commandId: command.requestId ?? 'unknown',
42
+ error: err instanceof Error ? err.message : String(err),
43
+ timestamp: new Date().toISOString(),
44
+ });
45
+ }
46
+ }
5
47
  export function setupHttpRoutes(app, messageBus, stateManager, config) {
6
48
  // Health check endpoint
7
49
  app.get('/health', (_req, res) => {
@@ -43,14 +85,191 @@ export function setupHttpRoutes(app, messageBus, stateManager, config) {
43
85
  })),
44
86
  });
45
87
  });
46
- // Get event history
47
- app.get('/events', (_req, res) => {
48
- res.json(config.eventHistory);
88
+ // Get all messages with filtering
89
+ // eslint-disable-next-line complexity, @typescript-eslint/no-misused-promises
90
+ app.get('/messages', async (req, res) => {
91
+ try {
92
+ const filter = {};
93
+ // Parse query parameters
94
+ if (req.query.messageType !== undefined && req.query.messageType !== null) {
95
+ filter.messageType = req.query.messageType;
96
+ }
97
+ if (req.query.messageNames !== undefined && req.query.messageNames !== null) {
98
+ filter.messageNames = Array.isArray(req.query.messageNames)
99
+ ? req.query.messageNames
100
+ : [req.query.messageNames];
101
+ }
102
+ if (req.query.streamId !== undefined && req.query.streamId !== null) {
103
+ filter.streamId = req.query.streamId;
104
+ }
105
+ if (req.query.sessionId !== undefined && req.query.sessionId !== null) {
106
+ filter.sessionId = req.query.sessionId;
107
+ }
108
+ if (req.query.correlationId !== undefined && req.query.correlationId !== null) {
109
+ filter.correlationId = req.query.correlationId;
110
+ }
111
+ if (req.query.requestId !== undefined && req.query.requestId !== null) {
112
+ filter.requestId = req.query.requestId;
113
+ }
114
+ if (req.query.fromPosition !== undefined && req.query.fromPosition !== null) {
115
+ filter.fromPosition = BigInt(req.query.fromPosition);
116
+ }
117
+ if (req.query.toPosition !== undefined && req.query.toPosition !== null) {
118
+ filter.toPosition = BigInt(req.query.toPosition);
119
+ }
120
+ if (req.query.jsonFilter !== undefined && req.query.jsonFilter !== null) {
121
+ try {
122
+ filter.jsonFilter = JSON.parse(req.query.jsonFilter);
123
+ }
124
+ catch {
125
+ return res.status(400).json({ error: 'Invalid JSON filter' });
126
+ }
127
+ }
128
+ const count = req.query.count !== undefined && req.query.count !== null ? parseInt(req.query.count) : 1000;
129
+ const messages = await config.messageStore.getAllMessages(filter, count);
130
+ // Convert BigInt fields to strings for JSON serialization
131
+ const serializedMessages = messages.map((message) => ({
132
+ ...message,
133
+ revision: message.revision.toString(),
134
+ position: message.position.toString(),
135
+ }));
136
+ res.json(serializedMessages);
137
+ }
138
+ catch (error) {
139
+ debugHttp('Error fetching messages:', error);
140
+ console.error('Detailed error fetching messages:', error);
141
+ res
142
+ .status(500)
143
+ .json({ error: 'Failed to fetch messages', details: error instanceof Error ? error.message : String(error) });
144
+ }
145
+ });
146
+ // Get commands only
147
+ app.get('/commands', (req, res) => {
148
+ (async () => {
149
+ try {
150
+ const count = req.query.count !== undefined && req.query.count !== null ? parseInt(req.query.count) : 1000;
151
+ const commands = await config.messageStore.getAllCommands(undefined, count);
152
+ // Convert BigInt fields to strings for JSON serialization
153
+ const serializedCommands = commands.map((command) => ({
154
+ ...command,
155
+ revision: command.revision.toString(),
156
+ position: command.position.toString(),
157
+ }));
158
+ res.json(serializedCommands);
159
+ }
160
+ catch (error) {
161
+ console.error('Error fetching commands:', error);
162
+ res.status(500).json({ error: 'Failed to fetch commands' });
163
+ }
164
+ })().catch((error) => {
165
+ console.error('Unhandled error in /commands:', error);
166
+ if (!res.headersSent) {
167
+ res.status(500).json({ error: 'Internal server error' });
168
+ }
169
+ });
170
+ });
171
+ // Get events only (backward compatibility)
172
+ // eslint-disable-next-line @typescript-eslint/no-misused-promises
173
+ app.get('/events', async (req, res) => {
174
+ try {
175
+ const count = req.query.count !== undefined && req.query.count !== null ? parseInt(req.query.count) : 1000;
176
+ const events = await config.messageStore.getAllEvents(undefined, count);
177
+ // Transform to legacy format for backward compatibility
178
+ const legacyFormat = events.map((event) => ({
179
+ event: event.message,
180
+ timestamp: event.timestamp.toISOString(),
181
+ }));
182
+ res.json(legacyFormat);
183
+ }
184
+ catch (error) {
185
+ debugHttp('Error fetching events:', error);
186
+ res.status(500).json({ error: 'Failed to fetch events' });
187
+ }
49
188
  });
50
189
  // Get current state
51
190
  app.get('/state', (_req, res) => {
52
191
  res.json(stateManager.getState());
53
192
  });
193
+ // Get sessions
194
+ app.get('/sessions', (_req, res) => {
195
+ (async () => {
196
+ try {
197
+ const sessions = await config.messageStore.getSessions();
198
+ res.json(sessions);
199
+ }
200
+ catch (error) {
201
+ console.error('Error fetching sessions:', error);
202
+ res.status(500).json({ error: 'Failed to fetch sessions' });
203
+ }
204
+ })().catch((error) => {
205
+ console.error('Unhandled error in /sessions:', error);
206
+ if (!res.headersSent) {
207
+ res.status(500).json({ error: 'Internal server error' });
208
+ }
209
+ });
210
+ });
211
+ // Get streams
212
+ app.get('/streams', (_req, res) => {
213
+ (async () => {
214
+ try {
215
+ const streams = await config.messageStore.getStreams();
216
+ res.json(streams);
217
+ }
218
+ catch (error) {
219
+ console.error('Error fetching streams:', error);
220
+ res.status(500).json({ error: 'Failed to fetch streams' });
221
+ }
222
+ })().catch((error) => {
223
+ console.error('Unhandled error in /streams:', error);
224
+ if (!res.headersSent) {
225
+ res.status(500).json({ error: 'Internal server error' });
226
+ }
227
+ });
228
+ });
229
+ // Get messages from specific stream
230
+ app.get('/streams/:streamId', (req, res) => {
231
+ (async () => {
232
+ try {
233
+ const streamId = req.params.streamId;
234
+ const count = req.query.count !== undefined && req.query.count !== null ? parseInt(req.query.count) : 1000;
235
+ const messages = await config.messageStore.getMessages(streamId, undefined, count);
236
+ // Convert BigInt fields to strings for JSON serialization
237
+ const serializedMessages = messages.map((message) => ({
238
+ ...message,
239
+ revision: message.revision.toString(),
240
+ position: message.position.toString(),
241
+ }));
242
+ res.json(serializedMessages);
243
+ }
244
+ catch (error) {
245
+ console.error('Error fetching stream messages:', error);
246
+ res.status(500).json({ error: 'Failed to fetch stream messages' });
247
+ }
248
+ })().catch((error) => {
249
+ console.error('Unhandled error in /streams/:streamId:', error);
250
+ if (!res.headersSent) {
251
+ res.status(500).json({ error: 'Internal server error' });
252
+ }
253
+ });
254
+ });
255
+ // Get stats
256
+ app.get('/stats', (_req, res) => {
257
+ (async () => {
258
+ try {
259
+ const stats = await config.messageStore.getStats();
260
+ res.json(stats);
261
+ }
262
+ catch (error) {
263
+ console.error('Error fetching stats:', error);
264
+ res.status(500).json({ error: 'Failed to fetch stats' });
265
+ }
266
+ })().catch((error) => {
267
+ console.error('Unhandled error in /stats:', error);
268
+ if (!res.headersSent) {
269
+ res.status(500).json({ error: 'Internal server error' });
270
+ }
271
+ });
272
+ });
54
273
  // Command endpoint
55
274
  app.post('/command', (req, res) => {
56
275
  (async () => {
@@ -59,44 +278,28 @@ export function setupHttpRoutes(app, messageBus, stateManager, config) {
59
278
  debugHttp('Received command:', command.type);
60
279
  debugHttp('Command data:', command.data);
61
280
  // Validate command structure
62
- if (!command.type || !('data' in command)) {
281
+ const structureError = validateCommandStructure(command);
282
+ if (structureError !== null && structureError !== '') {
63
283
  return res.status(400).json({
64
284
  status: 'nack',
65
- error: 'Invalid command structure. Must have type and data fields.',
285
+ error: structureError,
66
286
  });
67
287
  }
68
- // Add request ID if not present
69
- const hasRequestId = command.requestId !== null && command.requestId !== undefined && command.requestId !== '';
70
- const cmdWithId = hasRequestId
71
- ? command
72
- : { ...command, requestId: `req-${Date.now()}-${Math.random().toString(36).substring(2, 11)}` };
288
+ // Add missing IDs
289
+ const cmdWithId = addMissingIds(command);
73
290
  // Check if command handler exists
74
- if (!config.commandHandlerNames.includes(cmdWithId.type)) {
291
+ const handlerError = validateCommandHandler(cmdWithId.type, config.commandHandlerNames);
292
+ if (handlerError !== null && handlerError !== '') {
75
293
  return res.status(404).json({
76
294
  status: 'nack',
77
- error: `Command handler not found for command: ${cmdWithId.type}`,
295
+ error: handlerError,
78
296
  availableCommands: config.commandHandlerNames,
79
297
  });
80
298
  }
81
- // Send to message bus (non-blocking)
82
- messageBus
83
- .sendCommand(cmdWithId)
84
- .then(() => {
85
- debugHttp('Command processed successfully:', cmdWithId.type);
86
- })
87
- .catch((err) => {
88
- const isTest = process.env.NODE_ENV === 'test' || process.env.VITEST === 'true';
89
- if (!isTest) {
90
- console.error('Command failed:', err);
91
- }
92
- debugHttp('Command failed (suppressed in tests):', err);
93
- // Emit error event for UI to capture
94
- config.onCommandError({
95
- commandId: cmdWithId.requestId ?? 'unknown',
96
- error: err instanceof Error ? err.message : String(err),
97
- timestamp: new Date().toISOString(),
98
- });
99
- });
299
+ // Store command in message store first
300
+ await config.onCommandReceived(cmdWithId);
301
+ // Process command asynchronously
302
+ await processCommand(messageBus, cmdWithId, config);
100
303
  // Return acknowledgment immediately
101
304
  res.json({
102
305
  status: 'ack',
@@ -1 +1 @@
1
- {"version":3,"file":"http-routes.js","sourceRoot":"","sources":["../../../src/server/http-routes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http-routes.js","sourceRoot":"","sources":["../../../src/server/http-routes.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
- import { type MessageBus, type Event } from '@auto-engineer/message-bus';
1
+ import { type MessageBus } from '@auto-engineer/message-bus';
2
+ import { type ILocalMessageStore } from '@auto-engineer/message-store';
2
3
  import { StateManager } from './state-manager';
3
4
  import type { EventRegistration, FoldRegistration } from '../dsl/types';
4
5
  export interface MessageBusServerConfig {
@@ -7,17 +8,21 @@ export interface MessageBusServerConfig {
7
8
  fileSyncDir?: string;
8
9
  fileSyncExtensions?: string[];
9
10
  enableFileSync?: boolean;
11
+ messageStore?: ILocalMessageStore;
12
+ maxMessages?: number;
10
13
  }
11
14
  export declare class MessageBusServer {
12
15
  private app;
13
16
  private httpServer;
14
17
  private io;
15
18
  private messageBus;
19
+ private messageStore;
16
20
  private stateManager;
17
21
  private fileSyncer?;
18
22
  private config;
19
23
  private eventProcessor;
20
24
  private commandRegistry;
25
+ private currentSessionId?;
21
26
  constructor(config?: MessageBusServerConfig);
22
27
  /**
23
28
  * Set up HTTP routes
@@ -70,15 +75,8 @@ export declare class MessageBusServer {
70
75
  */
71
76
  getStateManager(): StateManager<Record<string, unknown>>;
72
77
  /**
73
- * Get the event history
78
+ * Get the message store instance
74
79
  */
75
- getEventHistory(): Array<{
76
- event: Event;
77
- timestamp: string;
78
- }>;
79
- /**
80
- * Clear event history
81
- */
82
- clearEventHistory(): void;
80
+ getMessageStore(): ILocalMessageStore;
83
81
  }
84
82
  //# sourceMappingURL=server.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/server/server.ts"],"names":[],"mappings":"AAIA,OAAO,EAAoB,KAAK,UAAU,EAAE,KAAK,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAE3F,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAQxE,MAAM,WAAW,sBAAsB;IACrC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,GAAG,CAAsB;IACjC,OAAO,CAAC,UAAU,CAAkC;IACpD,OAAO,CAAC,EAAE,CAAiB;IAC3B,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,YAAY,CAAwC;IAC5D,OAAO,CAAC,UAAU,CAAC,CAAa;IAChC,OAAO,CAAC,MAAM,CAAyB;IACvC,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,eAAe,CAAkB;gBAE7B,MAAM,GAAE,sBAA2B;IA4C/C;;OAEG;IACH,OAAO,CAAC,WAAW;IAanB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAI9B;;OAEG;IACH,oBAAoB,CAAC,YAAY,EAAE,iBAAiB,GAAG,IAAI;IAI3D;;OAEG;IACH,YAAY,CAAC,YAAY,EAAE,gBAAgB,GAAG,IAAI;IAIlD;;OAEG;IACH,kBAAkB,CAChB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GACrG,IAAI;IAIP;;OAEG;IACH,uBAAuB,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI;IAIlD;;OAEG;IACH,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IASrC;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAsC5B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAoB3B;;OAEG;IACH,aAAa,IAAI,UAAU;IAI3B;;OAEG;IACH,eAAe,IAAI,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAIxD;;OAEG;IACH,eAAe,IAAI,KAAK,CAAC;QAAE,KAAK,EAAE,KAAK,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAI7D;;OAEG;IACH,iBAAiB,IAAI,IAAI;CAG1B"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/server/server.ts"],"names":[],"mappings":"AAIA,OAAO,EAAoB,KAAK,UAAU,EAA4B,MAAM,4BAA4B,CAAC;AACzG,OAAO,EAAsB,KAAK,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAE3F,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAQxE,MAAM,WAAW,sBAAsB;IACrC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,GAAG,CAAsB;IACjC,OAAO,CAAC,UAAU,CAAkC;IACpD,OAAO,CAAC,EAAE,CAAiB;IAC3B,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,YAAY,CAAwC;IAC5D,OAAO,CAAC,UAAU,CAAC,CAAa;IAChC,OAAO,CAAC,MAAM,CAAyB;IACvC,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,gBAAgB,CAAC,CAAS;gBAEtB,MAAM,GAAE,sBAA2B;IA8C/C;;OAEG;IACH,OAAO,CAAC,WAAW;IAgBnB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAI9B;;OAEG;IACH,oBAAoB,CAAC,YAAY,EAAE,iBAAiB,GAAG,IAAI;IAI3D;;OAEG;IACH,YAAY,CAAC,YAAY,EAAE,gBAAgB,GAAG,IAAI;IAIlD;;OAEG;IACH,kBAAkB,CAChB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GACrG,IAAI;IAIP;;OAEG;IACH,uBAAuB,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI;IAIlD;;OAEG;IACH,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IASrC;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA0C5B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IA0B3B;;OAEG;IACH,aAAa,IAAI,UAAU;IAI3B;;OAEG;IACH,eAAe,IAAI,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAIxD;;OAEG;IACH,eAAe,IAAI,kBAAkB;CAGtC"}
@@ -3,9 +3,10 @@ import cors from 'cors';
3
3
  import { createServer } from 'http';
4
4
  import { Server as SocketIOServer } from 'socket.io';
5
5
  import { createMessageBus } from '@auto-engineer/message-bus';
6
+ import { MemoryMessageStore } from '@auto-engineer/message-store';
6
7
  import createDebug from 'debug';
7
8
  import { StateManager } from './state-manager.js';
8
- import { FileSyncer } from './file-syncer.js';
9
+ import { FileSyncer } from './file-syncer/index.js';
9
10
  import { setupHttpRoutes } from './http-routes.js';
10
11
  import { setupWebSocketHandlers } from './websocket-handler.js';
11
12
  import { EventProcessor } from './event-processor.js';
@@ -19,6 +20,7 @@ export class MessageBusServer {
19
20
  fileSyncDir: config.fileSyncDir ?? '.',
20
21
  fileSyncExtensions: config.fileSyncExtensions ?? ['.js', '.html', '.css'],
21
22
  enableFileSync: config.enableFileSync !== false,
23
+ maxMessages: config.maxMessages ?? 50000,
22
24
  };
23
25
  // Initialize Express app
24
26
  this.app = express();
@@ -30,11 +32,12 @@ export class MessageBusServer {
30
32
  this.io = new SocketIOServer(this.httpServer, {
31
33
  cors: { origin: '*' },
32
34
  });
33
- // Initialize message bus and state manager
35
+ // Initialize message bus, message store, and state manager
34
36
  this.messageBus = createMessageBus();
37
+ this.messageStore = config.messageStore ?? new MemoryMessageStore();
35
38
  this.stateManager = new StateManager();
36
39
  // Initialize modules
37
- this.eventProcessor = new EventProcessor(this.messageBus, this.stateManager, (event) => this.io.emit('event', event));
40
+ this.eventProcessor = new EventProcessor(this.messageBus, this.messageStore, this.stateManager, (event) => this.io.emit('event', event));
38
41
  this.commandRegistry = new CommandRegistry(this.messageBus, this.stateManager);
39
42
  // Set up global event listener for state management
40
43
  this.eventProcessor.setupGlobalEventListener();
@@ -53,10 +56,13 @@ export class MessageBusServer {
53
56
  commandMetadata: this.commandRegistry.getCommandMetadata(),
54
57
  eventHandlers: this.eventProcessor.getEventHandlers(),
55
58
  foldRegistry: this.commandRegistry.getFoldRegistry(),
56
- eventHistory: this.eventProcessor.getEventHistory(),
59
+ messageStore: this.messageStore,
57
60
  onCommandError: (error) => {
58
61
  this.io.emit('commandError', error);
59
62
  },
63
+ onCommandReceived: async (command) => {
64
+ await this.eventProcessor.storeCommand(command);
65
+ },
60
66
  });
61
67
  }
62
68
  /**
@@ -105,6 +111,9 @@ export class MessageBusServer {
105
111
  */
106
112
  async start() {
107
113
  const { port, enableFileSync, fileSyncDir, fileSyncExtensions } = this.config;
114
+ // Create a new session for this server startup
115
+ this.currentSessionId = await this.messageStore.createSession();
116
+ debug(`Created new session: ${this.currentSessionId}`);
108
117
  // Start file syncer if enabled
109
118
  if (enableFileSync === true) {
110
119
  this.fileSyncer = new FileSyncer(this.io, fileSyncDir, fileSyncExtensions);
@@ -140,6 +149,11 @@ export class MessageBusServer {
140
149
  */
141
150
  async stop() {
142
151
  debug('Stopping message bus server');
152
+ // End current session if exists
153
+ if (this.currentSessionId !== undefined && this.currentSessionId !== null && this.currentSessionId !== '') {
154
+ await this.messageStore.endSession(this.currentSessionId);
155
+ debug(`Ended session: ${this.currentSessionId}`);
156
+ }
143
157
  // Stop file syncer
144
158
  if (this.fileSyncer) {
145
159
  this.fileSyncer.stop();
@@ -167,16 +181,10 @@ export class MessageBusServer {
167
181
  return this.stateManager;
168
182
  }
169
183
  /**
170
- * Get the event history
171
- */
172
- getEventHistory() {
173
- return this.eventProcessor.getEventHistory();
174
- }
175
- /**
176
- * Clear event history
184
+ * Get the message store instance
177
185
  */
178
- clearEventHistory() {
179
- this.eventProcessor.clearEventHistory();
186
+ getMessageStore() {
187
+ return this.messageStore;
180
188
  }
181
189
  }
182
190
  //# sourceMappingURL=server.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/server/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/server/server.ts"],"names":[],"mappings":"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"}