@almadar/server 2.0.0 → 2.0.2

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 (85) hide show
  1. package/dist/deepagent/__tests__/memory.test.d.ts +6 -0
  2. package/dist/deepagent/__tests__/memory.test.d.ts.map +1 -0
  3. package/dist/deepagent/__tests__/session.test.d.ts +6 -0
  4. package/dist/deepagent/__tests__/session.test.d.ts.map +1 -0
  5. package/dist/deepagent/__tests__/skill-agent.test.d.ts +6 -0
  6. package/dist/deepagent/__tests__/skill-agent.test.d.ts.map +1 -0
  7. package/dist/deepagent/memory.d.ts +17 -0
  8. package/dist/deepagent/memory.d.ts.map +1 -0
  9. package/dist/deepagent/session.d.ts +17 -0
  10. package/dist/deepagent/session.d.ts.map +1 -0
  11. package/dist/deepagent/skill-agent.d.ts +22 -0
  12. package/dist/deepagent/skill-agent.d.ts.map +1 -0
  13. package/dist/index.d.ts +35 -0
  14. package/dist/index.d.ts.map +1 -0
  15. package/dist/index.js +48 -19
  16. package/dist/index.js.map +1 -1
  17. package/dist/lib/db.d.ts +36 -0
  18. package/dist/lib/db.d.ts.map +1 -0
  19. package/dist/lib/debugRouter.d.ts +20 -0
  20. package/dist/lib/debugRouter.d.ts.map +1 -0
  21. package/dist/lib/env.d.ts +16 -0
  22. package/dist/lib/env.d.ts.map +1 -0
  23. package/dist/lib/eventBus.d.ts +44 -0
  24. package/dist/lib/eventBus.d.ts.map +1 -0
  25. package/dist/lib/eventBusTransport.d.ts +143 -0
  26. package/dist/lib/eventBusTransport.d.ts.map +1 -0
  27. package/dist/lib/eventPersistence.d.ts +151 -0
  28. package/dist/lib/eventPersistence.d.ts.map +1 -0
  29. package/dist/lib/index.d.ts +6 -0
  30. package/dist/lib/index.d.ts.map +1 -0
  31. package/dist/lib/index.js +17 -7
  32. package/dist/lib/index.js.map +1 -1
  33. package/dist/lib/logger.d.ts +7 -0
  34. package/dist/lib/logger.d.ts.map +1 -0
  35. package/dist/lib/serviceDiscovery.d.ts +168 -0
  36. package/dist/lib/serviceDiscovery.d.ts.map +1 -0
  37. package/dist/lib/websocket.d.ts +41 -0
  38. package/dist/lib/websocket.d.ts.map +1 -0
  39. package/dist/middleware/__tests__/multi-user.test.d.ts +6 -0
  40. package/dist/middleware/__tests__/multi-user.test.d.ts.map +1 -0
  41. package/dist/middleware/authenticateFirebase.d.ts +4 -0
  42. package/dist/middleware/authenticateFirebase.d.ts.map +1 -0
  43. package/dist/middleware/errorHandler.d.ts +53 -0
  44. package/dist/middleware/errorHandler.d.ts.map +1 -0
  45. package/dist/middleware/index.d.ts +4 -0
  46. package/dist/middleware/index.d.ts.map +1 -0
  47. package/dist/middleware/multi-user.d.ts +34 -0
  48. package/dist/middleware/multi-user.d.ts.map +1 -0
  49. package/dist/middleware/validation.d.ts +15 -0
  50. package/dist/middleware/validation.d.ts.map +1 -0
  51. package/dist/routes/__tests__/observability.test.d.ts +6 -0
  52. package/dist/routes/__tests__/observability.test.d.ts.map +1 -0
  53. package/dist/routes/observability.d.ts +10 -0
  54. package/dist/routes/observability.d.ts.map +1 -0
  55. package/dist/services/DataService.d.ts +66 -0
  56. package/dist/services/DataService.d.ts.map +1 -0
  57. package/dist/services/MockDataService.d.ts +110 -0
  58. package/dist/services/MockDataService.d.ts.map +1 -0
  59. package/dist/services/index.d.ts +8 -0
  60. package/dist/services/index.d.ts.map +1 -0
  61. package/dist/services/index.js +29 -10
  62. package/dist/services/index.js.map +1 -1
  63. package/dist/stores/ChangeSetStore.d.ts +24 -0
  64. package/dist/stores/ChangeSetStore.d.ts.map +1 -0
  65. package/dist/stores/SchemaProtectionService.d.ts +23 -0
  66. package/dist/stores/SchemaProtectionService.d.ts.map +1 -0
  67. package/dist/stores/SchemaStore.d.ts +52 -0
  68. package/dist/stores/SchemaStore.d.ts.map +1 -0
  69. package/dist/stores/SnapshotStore.d.ts +26 -0
  70. package/dist/stores/SnapshotStore.d.ts.map +1 -0
  71. package/dist/stores/ValidationStore.d.ts +19 -0
  72. package/dist/stores/ValidationStore.d.ts.map +1 -0
  73. package/dist/stores/firestoreFormat.d.ts +21 -0
  74. package/dist/stores/firestoreFormat.d.ts.map +1 -0
  75. package/dist/stores/index.d.ts +14 -0
  76. package/dist/stores/index.d.ts.map +1 -0
  77. package/dist/utils/index.d.ts +9 -0
  78. package/dist/utils/index.d.ts.map +1 -0
  79. package/dist/utils/queryFilters.d.ts +77 -0
  80. package/dist/utils/queryFilters.d.ts.map +1 -0
  81. package/dist/websocket/__tests__/state-sync.test.d.ts +6 -0
  82. package/dist/websocket/__tests__/state-sync.test.d.ts.map +1 -0
  83. package/dist/websocket/state-sync.d.ts +39 -0
  84. package/dist/websocket/state-sync.d.ts.map +1 -0
  85. package/package.json +4 -4
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @fileoverview Unit tests for MemoryManager integration
3
+ * @module @almadar/server/deepagent/memory.test
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=memory.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory.test.d.ts","sourceRoot":"","sources":["../../../src/deepagent/__tests__/memory.test.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @fileoverview Unit tests for SessionManager integration
3
+ * @module @almadar/server/deepagent/session.test
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=session.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session.test.d.ts","sourceRoot":"","sources":["../../../src/deepagent/__tests__/session.test.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @fileoverview Unit tests for skill agent factory
3
+ * @module @almadar/server/deepagent/skill-agent.test
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=skill-agent.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill-agent.test.d.ts","sourceRoot":"","sources":["../../../src/deepagent/__tests__/skill-agent.test.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Memory Manager Singleton
3
+ *
4
+ * Provides Firestore-backed memory management for DeepAgent.
5
+ *
6
+ * @packageDocumentation
7
+ */
8
+ import { MemoryManager } from '@almadar/agent';
9
+ /**
10
+ * Get or create the MemoryManager singleton
11
+ */
12
+ export declare function getMemoryManager(): MemoryManager;
13
+ /**
14
+ * Reset the MemoryManager (useful for testing)
15
+ */
16
+ export declare function resetMemoryManager(): void;
17
+ //# sourceMappingURL=memory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../src/deepagent/memory.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAK/C;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,aAAa,CAehD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Session Manager Singleton
3
+ *
4
+ * Provides Firestore-backed session management with full GAP features.
5
+ *
6
+ * @packageDocumentation
7
+ */
8
+ import { SessionManager } from '@almadar/agent';
9
+ /**
10
+ * Get or create the SessionManager singleton
11
+ */
12
+ export declare function getSessionManager(): SessionManager;
13
+ /**
14
+ * Reset the SessionManager (useful for testing)
15
+ */
16
+ export declare function resetSessionManager(): void;
17
+ //# sourceMappingURL=session.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/deepagent/session.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAchD;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,cAAc,CAclD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,IAAI,CAE1C"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Skill Agent Factory
3
+ *
4
+ * Creates DeepAgent instances with full GAP feature integration.
5
+ *
6
+ * @packageDocumentation
7
+ */
8
+ import { type SkillAgentOptions, type SkillAgentResult } from '@almadar/agent';
9
+ import { getMemoryManager } from './memory.js';
10
+ import { getSessionManager } from './session.js';
11
+ interface ServerSkillAgentOptions extends SkillAgentOptions {
12
+ /** User ID from Firebase Auth */
13
+ userId: string;
14
+ /** App/Project ID for context */
15
+ appId?: string;
16
+ }
17
+ /**
18
+ * Create a skill agent with full server-side GAP integration
19
+ */
20
+ export declare function createServerSkillAgent(options: ServerSkillAgentOptions): Promise<SkillAgentResult>;
21
+ export { getMemoryManager, getSessionManager };
22
+ //# sourceMappingURL=skill-agent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill-agent.d.ts","sourceRoot":"","sources":["../../src/deepagent/skill-agent.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAKL,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEjD,UAAU,uBAAwB,SAAQ,iBAAiB;IACzD,iCAAiC;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,iCAAiC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,gBAAgB,CAAC,CAsD3B;AAGD,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,CAAC"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * @almadar/server - Shared server infrastructure for Almadar applications
3
+ *
4
+ * This package provides:
5
+ * - Database utilities (Firebase/Firestore)
6
+ * - Event bus for cross-trait communication
7
+ * - Express middleware (auth, error handling, validation)
8
+ * - Data services (mock and production)
9
+ * - Query filter utilities
10
+ *
11
+ * @packageDocumentation
12
+ */
13
+ export { env } from './lib/env.js';
14
+ export { logger } from './lib/logger.js';
15
+ export { EventBus, getServerEventBus, resetServerEventBus, emitEntityEvent, type EventLogEntry } from './lib/eventBus.js';
16
+ export { DistributedEventBus, InMemoryTransport, RedisTransport, type IEventBusTransport, type TransportMessage, type TransportReceiver, type RedisTransportOptions, } from './lib/eventBusTransport.js';
17
+ export { EventPersistence, InMemoryEventStore, type PersistedEvent, type EventQuery, type EventPersistenceOptions, type IEventStore, } from './lib/eventPersistence.js';
18
+ export { debugEventsRouter } from './lib/debugRouter.js';
19
+ export { initializeFirebase, getFirestore, getAuth, admin, db } from './lib/db.js';
20
+ export { setupEventBroadcast, getWebSocketServer, closeWebSocketServer, getConnectedClientCount, } from './lib/websocket.js';
21
+ export { errorHandler, notFoundHandler, asyncHandler, AppError, NotFoundError, ValidationError, UnauthorizedError, ForbiddenError, ConflictError, } from './middleware/errorHandler.js';
22
+ export { validateBody, validateQuery, validateParams } from './middleware/validation.js';
23
+ export { authenticateFirebase } from './middleware/authenticateFirebase.js';
24
+ export { MockDataService, getMockDataService, resetMockDataService, type FieldSchema, type EntitySchema, } from './services/MockDataService.js';
25
+ export { getDataService, resetDataService, seedMockData, type DataService, type EntitySeedConfig, type PaginationOptions, type PaginatedResult, } from './services/DataService.js';
26
+ export { toFirestoreFormat, fromFirestoreFormat, SchemaStore, SnapshotStore, ChangeSetStore, ValidationStore, SchemaProtectionService, } from './stores/index.js';
27
+ export { parseQueryFilters, applyFiltersToQuery, extractPaginationParams, type ParsedFilter, type FirestoreWhereFilterOp, type PaginationParams, } from './utils/queryFilters.js';
28
+ export { getMemoryManager, resetMemoryManager, } from './deepagent/memory.js';
29
+ export { getSessionManager, resetSessionManager, } from './deepagent/session.js';
30
+ export { createServerSkillAgent, getMemoryManager as getAgentMemoryManager, getSessionManager as getAgentSessionManager, } from './deepagent/skill-agent.js';
31
+ export { multiUserMiddleware, verifyFirebaseAuth, } from './middleware/multi-user.js';
32
+ export { setupStateSyncWebSocket } from './websocket/state-sync.js';
33
+ export { ServiceDiscovery, InMemoryServiceRegistry, type ServiceRegistration, type ServiceRegistryOptions, type IServiceRegistry, } from './lib/serviceDiscovery.js';
34
+ export { default as observabilityRouter } from './routes/observability.js';
35
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AACnC,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,eAAe,EAAE,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAC1H,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,cAAc,EACd,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,GAC3B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,uBAAuB,EAC5B,KAAK,WAAW,GACjB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AACnF,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,QAAQ,EACR,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,aAAa,GACd,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACzF,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAG5E,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,oBAAoB,EACpB,KAAK,WAAW,EAChB,KAAK,YAAY,GAClB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,eAAe,GACrB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,WAAW,EACX,aAAa,EACb,cAAc,EACd,eAAe,EACf,uBAAuB,GACxB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,uBAAuB,EACvB,KAAK,YAAY,EACjB,KAAK,sBAAsB,EAC3B,KAAK,gBAAgB,GACtB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EACL,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,sBAAsB,EACtB,gBAAgB,IAAI,qBAAqB,EACzC,iBAAiB,IAAI,sBAAsB,GAC5C,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EACL,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAGpE,OAAO,EACL,gBAAgB,EAChB,uBAAuB,EACvB,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAC3B,KAAK,gBAAgB,GACtB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,2BAA2B,CAAC"}
package/dist/index.js CHANGED
@@ -169,12 +169,22 @@ var EventBus = class {
169
169
  this.eventLog.length = 0;
170
170
  }
171
171
  };
172
- var serverEventBus = new EventBus({
173
- debug: process.env.NODE_ENV === "development"
174
- });
172
+ var _serverEventBus = null;
173
+ function getServerEventBus() {
174
+ if (!_serverEventBus) {
175
+ _serverEventBus = new EventBus({
176
+ debug: process.env.NODE_ENV === "development"
177
+ });
178
+ }
179
+ return _serverEventBus;
180
+ }
181
+ function resetServerEventBus() {
182
+ _serverEventBus?.clear();
183
+ _serverEventBus = null;
184
+ }
175
185
  function emitEntityEvent(entityType, action, payload) {
176
186
  const eventType = `${entityType.toUpperCase()}_${action}`;
177
- serverEventBus.emit(eventType, payload, { orbital: entityType });
187
+ getServerEventBus().emit(eventType, payload, { orbital: entityType });
178
188
  }
179
189
 
180
190
  // src/lib/eventBusTransport.ts
@@ -449,15 +459,15 @@ function debugEventsRouter() {
449
459
  }
450
460
  router2.get("/event-log", (_req, res) => {
451
461
  const limit = parseInt(String(_req.query.limit) || "50", 10);
452
- const events = serverEventBus.getRecentEvents(limit);
462
+ const events = getServerEventBus().getRecentEvents(limit);
453
463
  res.json({ count: events.length, events });
454
464
  });
455
465
  router2.delete("/event-log", (_req, res) => {
456
- serverEventBus.clearEventLog();
466
+ getServerEventBus().clearEventLog();
457
467
  res.json({ cleared: true });
458
468
  });
459
469
  router2.get("/listeners", (_req, res) => {
460
- const counts = serverEventBus.getListenerCounts();
470
+ const counts = getServerEventBus().getListenerCounts();
461
471
  const total = Object.values(counts).reduce((sum, n) => sum + n, 0);
462
472
  res.json({ total, events: counts });
463
473
  });
@@ -550,7 +560,7 @@ function setupEventBroadcast(server, path = "/ws/events") {
550
560
  const message = JSON.parse(data.toString());
551
561
  logger.debug(`[WebSocket] Received from ${clientId}:`, message);
552
562
  if (message.type && message.payload) {
553
- serverEventBus.emit(message.type, message.payload, {
563
+ getServerEventBus().emit(message.type, message.payload, {
554
564
  orbital: "client",
555
565
  entity: clientId
556
566
  });
@@ -566,7 +576,7 @@ function setupEventBroadcast(server, path = "/ws/events") {
566
576
  logger.error(`[WebSocket] Client error:`, error);
567
577
  });
568
578
  });
569
- serverEventBus.on("*", (event) => {
579
+ getServerEventBus().on("*", (event) => {
570
580
  if (!wss) return;
571
581
  const typedEvent = event;
572
582
  const message = JSON.stringify({
@@ -1037,7 +1047,17 @@ var MockDataService = class {
1037
1047
  return store.size;
1038
1048
  }
1039
1049
  };
1040
- var mockDataService = new MockDataService();
1050
+ var _mockDataService = null;
1051
+ function getMockDataService() {
1052
+ if (!_mockDataService) {
1053
+ _mockDataService = new MockDataService();
1054
+ }
1055
+ return _mockDataService;
1056
+ }
1057
+ function resetMockDataService() {
1058
+ _mockDataService?.clearAll();
1059
+ _mockDataService = null;
1060
+ }
1041
1061
 
1042
1062
  // src/utils/queryFilters.ts
1043
1063
  var OPERATOR_MAP = {
@@ -1174,7 +1194,7 @@ function applyFilterCondition(value, operator, filterValue) {
1174
1194
  }
1175
1195
  var MockDataServiceAdapter = class {
1176
1196
  async list(collection) {
1177
- return mockDataService.list(collection);
1197
+ return getMockDataService().list(collection);
1178
1198
  }
1179
1199
  async listPaginated(collection, options = {}) {
1180
1200
  const {
@@ -1186,7 +1206,7 @@ var MockDataServiceAdapter = class {
1186
1206
  sortOrder = "asc",
1187
1207
  filters
1188
1208
  } = options;
1189
- let items = mockDataService.list(collection);
1209
+ let items = getMockDataService().list(collection);
1190
1210
  if (filters && filters.length > 0) {
1191
1211
  items = items.filter((item) => {
1192
1212
  const record = item;
@@ -1226,16 +1246,16 @@ var MockDataServiceAdapter = class {
1226
1246
  return { data, total, page, pageSize, totalPages };
1227
1247
  }
1228
1248
  async getById(collection, id) {
1229
- return mockDataService.getById(collection, id);
1249
+ return getMockDataService().getById(collection, id);
1230
1250
  }
1231
1251
  async create(collection, data) {
1232
- return mockDataService.create(collection, data);
1252
+ return getMockDataService().create(collection, data);
1233
1253
  }
1234
1254
  async update(collection, id, data) {
1235
- return mockDataService.update(collection, id, data);
1255
+ return getMockDataService().update(collection, id, data);
1236
1256
  }
1237
1257
  async delete(collection, id) {
1238
- return mockDataService.delete(collection, id);
1258
+ return getMockDataService().delete(collection, id);
1239
1259
  }
1240
1260
  };
1241
1261
  var FirebaseDataService = class {
@@ -1354,7 +1374,16 @@ function createDataService() {
1354
1374
  logger.info("[DataService] Using FirebaseDataService");
1355
1375
  return new FirebaseDataService();
1356
1376
  }
1357
- var dataService = createDataService();
1377
+ var _dataService = null;
1378
+ function getDataService() {
1379
+ if (!_dataService) {
1380
+ _dataService = createDataService();
1381
+ }
1382
+ return _dataService;
1383
+ }
1384
+ function resetDataService() {
1385
+ _dataService = null;
1386
+ }
1358
1387
  function seedMockData(entities) {
1359
1388
  if (!env.USE_MOCK_DATA) {
1360
1389
  logger.info("[DataService] Mock mode disabled, skipping seed");
@@ -1362,7 +1391,7 @@ function seedMockData(entities) {
1362
1391
  }
1363
1392
  logger.info("[DataService] Seeding mock data...");
1364
1393
  for (const entity of entities) {
1365
- mockDataService.seed(entity.name, entity.fields, entity.seedCount);
1394
+ getMockDataService().seed(entity.name, entity.fields, entity.seedCount);
1366
1395
  }
1367
1396
  logger.info("[DataService] Mock data seeding complete");
1368
1397
  }
@@ -2265,6 +2294,6 @@ router.get("/active-sessions", async (req, res) => {
2265
2294
  });
2266
2295
  var observability_default = router;
2267
2296
 
2268
- export { AppError, ChangeSetStore, ConflictError, DistributedEventBus, EventBus, EventPersistence, ForbiddenError, InMemoryEventStore, InMemoryServiceRegistry, InMemoryTransport, MockDataService, NotFoundError, RedisTransport, SchemaProtectionService, SchemaStore, ServiceDiscovery, SnapshotStore, UnauthorizedError, ValidationError, ValidationStore, applyFiltersToQuery, asyncHandler, authenticateFirebase, closeWebSocketServer, createServerSkillAgent, dataService, db, debugEventsRouter, emitEntityEvent, env, errorHandler, extractPaginationParams, fromFirestoreFormat, getMemoryManager as getAgentMemoryManager, getSessionManager as getAgentSessionManager, getAuth, getConnectedClientCount, getFirestore, getMemoryManager, getSessionManager, getWebSocketServer, initializeFirebase, logger, mockDataService, multiUserMiddleware, notFoundHandler, observability_default as observabilityRouter, parseQueryFilters, resetMemoryManager, resetSessionManager, seedMockData, serverEventBus, setupEventBroadcast, setupStateSyncWebSocket, toFirestoreFormat, validateBody, validateParams, validateQuery, verifyFirebaseAuth };
2297
+ export { AppError, ChangeSetStore, ConflictError, DistributedEventBus, EventBus, EventPersistence, ForbiddenError, InMemoryEventStore, InMemoryServiceRegistry, InMemoryTransport, MockDataService, NotFoundError, RedisTransport, SchemaProtectionService, SchemaStore, ServiceDiscovery, SnapshotStore, UnauthorizedError, ValidationError, ValidationStore, applyFiltersToQuery, asyncHandler, authenticateFirebase, closeWebSocketServer, createServerSkillAgent, db, debugEventsRouter, emitEntityEvent, env, errorHandler, extractPaginationParams, fromFirestoreFormat, getMemoryManager as getAgentMemoryManager, getSessionManager as getAgentSessionManager, getAuth, getConnectedClientCount, getDataService, getFirestore, getMemoryManager, getMockDataService, getServerEventBus, getSessionManager, getWebSocketServer, initializeFirebase, logger, multiUserMiddleware, notFoundHandler, observability_default as observabilityRouter, parseQueryFilters, resetDataService, resetMemoryManager, resetMockDataService, resetServerEventBus, resetSessionManager, seedMockData, setupEventBroadcast, setupStateSyncWebSocket, toFirestoreFormat, validateBody, validateParams, validateQuery, verifyFirebaseAuth };
2269
2298
  //# sourceMappingURL=index.js.map
2270
2299
  //# sourceMappingURL=index.js.map