@cogitator-ai/express 0.9.6 → 0.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/README.md +65 -8
  2. package/dist/index.d.ts +2 -2
  3. package/dist/index.d.ts.map +1 -1
  4. package/dist/index.js +1 -1
  5. package/dist/index.js.map +1 -1
  6. package/dist/middleware/auth.d.ts +6 -0
  7. package/dist/middleware/auth.d.ts.map +1 -1
  8. package/dist/middleware/auth.js +17 -6
  9. package/dist/middleware/auth.js.map +1 -1
  10. package/dist/middleware/error-handler.d.ts.map +1 -1
  11. package/dist/middleware/error-handler.js +16 -36
  12. package/dist/middleware/error-handler.js.map +1 -1
  13. package/dist/middleware/index.d.ts +1 -1
  14. package/dist/middleware/index.d.ts.map +1 -1
  15. package/dist/middleware/index.js +1 -1
  16. package/dist/middleware/index.js.map +1 -1
  17. package/dist/middleware/json-body.d.ts.map +1 -1
  18. package/dist/middleware/json-body.js +2 -1
  19. package/dist/middleware/json-body.js.map +1 -1
  20. package/dist/middleware/rate-limit.d.ts.map +1 -1
  21. package/dist/middleware/rate-limit.js +6 -6
  22. package/dist/middleware/rate-limit.js.map +1 -1
  23. package/dist/routes/agents.d.ts.map +1 -1
  24. package/dist/routes/agents.js +13 -1
  25. package/dist/routes/agents.js.map +1 -1
  26. package/dist/routes/swarms.d.ts.map +1 -1
  27. package/dist/routes/swarms.js +8 -4
  28. package/dist/routes/swarms.js.map +1 -1
  29. package/dist/routes/threads.d.ts.map +1 -1
  30. package/dist/routes/threads.js +15 -18
  31. package/dist/routes/threads.js.map +1 -1
  32. package/dist/routes/utils.d.ts +26 -8
  33. package/dist/routes/utils.d.ts.map +1 -1
  34. package/dist/routes/utils.js +52 -12
  35. package/dist/routes/utils.js.map +1 -1
  36. package/dist/routes/workflows.d.ts.map +1 -1
  37. package/dist/routes/workflows.js +6 -5
  38. package/dist/routes/workflows.js.map +1 -1
  39. package/dist/server.d.ts +2 -1
  40. package/dist/server.d.ts.map +1 -1
  41. package/dist/server.js +11 -6
  42. package/dist/server.js.map +1 -1
  43. package/dist/types.d.ts +48 -2
  44. package/dist/types.d.ts.map +1 -1
  45. package/dist/websocket/ws-handler.d.ts +2 -2
  46. package/dist/websocket/ws-handler.d.ts.map +1 -1
  47. package/dist/websocket/ws-handler.js +123 -28
  48. package/dist/websocket/ws-handler.js.map +1 -1
  49. package/package.json +7 -7
@@ -1,5 +1,5 @@
1
1
  import { getLogger } from '@cogitator-ai/core';
2
- import { isJsonObject, parseResumeRequest, parseRunRequest, toAgentRunResponse, toAgentToolCall, } from '@cogitator-ai/server-shared';
2
+ import { admitCaller, authorizeThreadAccess, isJsonObject, parseResumeRequest, parseRunRequest, toAgentRunResponse, toAgentToolCall, } from '@cogitator-ai/server-shared';
3
3
  import { generateId } from '../streaming/helpers.js';
4
4
  import { resolveError } from '../routes/utils.js';
5
5
  const WS_OPEN = 1;
@@ -14,18 +14,24 @@ const MESSAGE_TYPES = new Set([
14
14
  'ping',
15
15
  ]);
16
16
  /**
17
- * Run events fan out only to subscribers acting as the user who started the run,
18
- * so one user's prompts and results never reach another user's socket.
17
+ * The subscribers of each channel, with what authentication returned for them. A run's events
18
+ * reach a subscriber only when it acts as the user who started the run and `authorizeThread`
19
+ * lets it on the run's thread, so a caller never sees the prompts and results of a run it
20
+ * could not open itself.
19
21
  */
20
22
  class ChannelHub {
23
+ authorizeThread;
21
24
  channels = new Map();
22
- subscribe(ws, channel, userId) {
25
+ constructor(authorizeThread) {
26
+ this.authorizeThread = authorizeThread;
27
+ }
28
+ subscribe(ws, channel, auth) {
23
29
  let members = this.channels.get(channel);
24
30
  if (!members) {
25
31
  members = new Map();
26
32
  this.channels.set(channel, members);
27
33
  }
28
- members.set(ws, userId);
34
+ members.set(ws, auth);
29
35
  }
30
36
  unsubscribe(ws, channel) {
31
37
  const members = this.channels.get(channel);
@@ -35,17 +41,74 @@ class ChannelHub {
35
41
  if (members.size === 0)
36
42
  this.channels.delete(channel);
37
43
  }
38
- publish(channel, response, origin) {
39
- const members = this.channels.get(channel);
44
+ /** The fan-out of one run's events to the subscribers of `channel` */
45
+ broadcast(channel, origin) {
46
+ return new RunBroadcast(() => this.channels.get(channel), channel, origin, this.authorizeThread);
47
+ }
48
+ }
49
+ /**
50
+ * Sends one run's events to the subscribers allowed to see them. Whether a subscriber may is
51
+ * asked of `authorizeThread` once per run, with the run's thread, and its events wait for the
52
+ * answer in the order they were published. A subscriber the authorizer refuses, or throws for,
53
+ * gets none of them, and with an authorizer set a run whose thread is not known yet is shown
54
+ * to nobody.
55
+ */
56
+ class RunBroadcast {
57
+ members;
58
+ channel;
59
+ origin;
60
+ authorizeThread;
61
+ threadId;
62
+ deliveries = new Map();
63
+ constructor(members, channel, origin, authorizeThread) {
64
+ this.members = members;
65
+ this.channel = channel;
66
+ this.origin = origin;
67
+ this.authorizeThread = authorizeThread;
68
+ }
69
+ /** Names the thread the run is on, once it is known */
70
+ onThread(threadId) {
71
+ this.threadId = threadId;
72
+ }
73
+ publish(response) {
74
+ const members = this.members();
40
75
  if (!members)
41
76
  return;
42
- for (const [member, userId] of members) {
43
- if (member !== origin.ws && userId === origin.userId) {
44
- sendResponse(member, { ...response, channel });
45
- }
77
+ for (const [member, auth] of members) {
78
+ if (member === this.origin.ws || auth?.userId !== this.origin.auth?.userId)
79
+ continue;
80
+ const admitted = this.deliveries.get(member) ?? this.admit(auth);
81
+ this.deliveries.set(member, admitted.then((allowed) => {
82
+ if (allowed)
83
+ sendResponse(member, { ...response, channel: this.channel });
84
+ return allowed;
85
+ }));
86
+ }
87
+ }
88
+ async admit(auth) {
89
+ if (!this.authorizeThread)
90
+ return true;
91
+ if (this.threadId === undefined)
92
+ return false;
93
+ try {
94
+ return await new Promise((resolve, reject) => {
95
+ const timer = setTimeout(() => resolve(false), SUBSCRIBER_AUTHORIZATION_MS);
96
+ authorizeThreadAccess(this.authorizeThread, auth, this.threadId)
97
+ .then((refusal) => resolve(refusal === undefined), reject)
98
+ .finally(() => clearTimeout(timer));
99
+ });
100
+ }
101
+ catch (error) {
102
+ console.error('[CogitatorServer] authorizeThread failed for a WebSocket subscriber:', error);
103
+ return false;
46
104
  }
47
105
  }
48
106
  }
107
+ /**
108
+ * How long `authorizeThread` may take to answer for a subscriber before it counts as a refusal,
109
+ * so a hook that hangs never holds the run's events for the subscriber in memory
110
+ */
111
+ const SUBSCRIBER_AUTHORIZATION_MS = 5000;
49
112
  function parseMessage(raw) {
50
113
  let data;
51
114
  try {
@@ -98,8 +161,8 @@ function isModuleNotFound(error) {
98
161
  * Attach the Cogitator WebSocket protocol to an HTTP server.
99
162
  *
100
163
  * When `ctx.config.auth` is set it is called with the upgrade request; connections whose
101
- * auth function throws are rejected with 401. Returns `null` when the optional `ws`
102
- * package is not installed.
164
+ * auth function throws, or that carry no user id under `anonymous: 'deny'`, are rejected
165
+ * with 401. Returns `null` when the optional `ws` package is not installed.
103
166
  */
104
167
  export async function setupWebSocket(server, ctx, config = {}) {
105
168
  let wsModule;
@@ -113,18 +176,23 @@ export async function setupWebSocket(server, ctx, config = {}) {
113
176
  return null;
114
177
  }
115
178
  const authFn = ctx.config.auth;
179
+ const anonymous = ctx.config.anonymous;
116
180
  const authResults = new WeakMap();
117
- const hub = new ChannelHub();
181
+ const hub = new ChannelHub(ctx.config.authorizeThread);
118
182
  const path = config.path || `${ctx.config.basePath}/ws`;
119
183
  const wss = new wsModule.WebSocketServer({
120
184
  server,
121
185
  path,
122
186
  maxPayload: config.maxPayloadSize || 1024 * 1024,
123
- verifyClient: authFn
187
+ verifyClient: authFn || anonymous === 'deny'
124
188
  ? (info, callback) => {
125
189
  Promise.resolve()
126
- .then(() => authFn(info.req))
190
+ .then(() => authFn?.(info.req))
127
191
  .then((auth) => {
192
+ if (admitCaller(auth?.userId, anonymous)) {
193
+ callback(false, 401, 'Unauthorized');
194
+ return;
195
+ }
128
196
  authResults.set(info.req, auth);
129
197
  callback(true);
130
198
  })
@@ -136,6 +204,7 @@ export async function setupWebSocket(server, ctx, config = {}) {
136
204
  wss.on('connection', (ws, req) => {
137
205
  const clientState = {
138
206
  id: generateId('ws'),
207
+ request: req,
139
208
  auth: authResults.get(req),
140
209
  subscriptions: new Set(),
141
210
  };
@@ -158,7 +227,7 @@ export async function setupWebSocket(server, ctx, config = {}) {
158
227
  sendResponse(ws, { type: 'error', error: 'Invalid message' });
159
228
  return;
160
229
  }
161
- void handleMessage(ws, message, ctx, clientState, hub);
230
+ void handleMessage(ws, message, ctx, config, clientState, hub);
162
231
  });
163
232
  const cleanup = () => {
164
233
  clearInterval(heartbeat);
@@ -178,7 +247,7 @@ export async function setupWebSocket(server, ctx, config = {}) {
178
247
  getLogger().debug('[CogitatorServer] WebSocket enabled', { path });
179
248
  return wss;
180
249
  }
181
- async function handleMessage(ws, message, ctx, state, hub) {
250
+ async function handleMessage(ws, message, ctx, config, state, hub) {
182
251
  switch (message.type) {
183
252
  case 'ping':
184
253
  sendResponse(ws, { type: 'pong', id: message.id });
@@ -198,7 +267,7 @@ async function handleMessage(ws, message, ctx, state, hub) {
198
267
  break;
199
268
  }
200
269
  state.subscriptions.add(channel);
201
- hub.subscribe(ws, channel, state.auth?.userId);
270
+ hub.subscribe(ws, channel, state.auth);
202
271
  sendResponse(ws, { type: 'subscribed', id: message.id, channel });
203
272
  break;
204
273
  }
@@ -210,10 +279,10 @@ async function handleMessage(ws, message, ctx, state, hub) {
210
279
  }
211
280
  break;
212
281
  case 'run':
213
- await handleRun(ws, message, ctx, state, hub);
282
+ await handleRun(ws, message, ctx, config, state, hub);
214
283
  break;
215
284
  case 'resume':
216
- await handleResume(ws, message, ctx, state, hub);
285
+ await handleResume(ws, message, ctx, config, state, hub);
217
286
  break;
218
287
  case 'stop':
219
288
  state.abortController?.abort();
@@ -221,7 +290,7 @@ async function handleMessage(ws, message, ctx, state, hub) {
221
290
  break;
222
291
  }
223
292
  }
224
- async function handleRun(ws, message, ctx, state, hub) {
293
+ async function handleRun(ws, message, ctx, config, state, hub) {
225
294
  const payload = parseRunPayload(message.payload, ctx.config.acceptContext);
226
295
  if (!payload) {
227
296
  sendResponse(ws, { type: 'error', id: message.id, error: 'Invalid run payload' });
@@ -235,26 +304,27 @@ async function handleRun(ws, message, ctx, state, hub) {
235
304
  });
236
305
  return;
237
306
  }
238
- await streamAgentRun(ws, message, ctx, state, hub, payload.name, (agent, options) => ctx.cogitator.run(agent, {
307
+ await streamAgentRun(ws, message, ctx, config, state, hub, payload, (agent, options) => ctx.cogitator.run(agent, {
239
308
  ...options,
240
309
  input: payload.input,
241
310
  context: payload.context,
242
311
  threadId: payload.threadId,
243
312
  }));
244
313
  }
245
- async function handleResume(ws, message, ctx, state, hub) {
314
+ async function handleResume(ws, message, ctx, config, state, hub) {
246
315
  const payload = parseResumePayload(message.payload);
247
316
  if (!payload) {
248
317
  sendResponse(ws, { type: 'error', id: message.id, error: 'Invalid resume payload' });
249
318
  return;
250
319
  }
251
- await streamAgentRun(ws, message, ctx, state, hub, payload.name, (agent, options) => ctx.cogitator.resume(agent, payload.threadId, {
320
+ await streamAgentRun(ws, message, ctx, config, state, hub, payload, (agent, options) => ctx.cogitator.resume(agent, payload.threadId, {
252
321
  ...options,
253
322
  decisions: payload.decisions,
254
323
  defaultDecision: payload.defaultDecision,
255
324
  }));
256
325
  }
257
- async function streamAgentRun(ws, message, ctx, state, hub, name, execute) {
326
+ async function streamAgentRun(ws, message, ctx, config, state, hub, target, execute) {
327
+ const { name } = target;
258
328
  const agent = Object.hasOwn(ctx.agents, name) ? ctx.agents[name] : undefined;
259
329
  if (!agent) {
260
330
  sendResponse(ws, {
@@ -267,17 +337,42 @@ async function streamAgentRun(ws, message, ctx, state, hub, name, execute) {
267
337
  state.abortController?.abort();
268
338
  const controller = new AbortController();
269
339
  state.abortController = controller;
270
- const channel = `agent:${name}`;
340
+ let deps;
341
+ try {
342
+ const refusal = await authorizeThreadAccess(ctx.config.authorizeThread, state.auth, target.threadId);
343
+ if (refusal) {
344
+ sendResponse(ws, { type: 'error', id: message.id, error: refusal.message });
345
+ return;
346
+ }
347
+ deps = config.deps ? { deps: await config.deps(state.request) } : {};
348
+ }
349
+ catch (error) {
350
+ sendResponse(ws, {
351
+ type: 'error',
352
+ id: message.id,
353
+ error: resolveError(error, 'WebSocket run').message,
354
+ });
355
+ return;
356
+ }
357
+ if (controller.signal.aborted || ws.readyState !== WS_OPEN)
358
+ return;
359
+ const broadcast = hub.broadcast(`agent:${name}`, { ws, auth: state.auth });
360
+ if (target.threadId !== undefined)
361
+ broadcast.onThread(target.threadId);
271
362
  const emit = (eventPayload) => {
272
363
  const response = { type: 'event', id: message.id, payload: eventPayload };
273
364
  sendResponse(ws, response);
274
- hub.publish(channel, response, { ws, userId: state.auth?.userId });
365
+ broadcast.publish(response);
275
366
  };
276
367
  try {
277
368
  const result = await execute(agent, {
278
369
  userId: state.auth?.userId,
279
370
  signal: controller.signal,
280
371
  stream: true,
372
+ ...deps,
373
+ onRunStart: ({ threadId }) => {
374
+ broadcast.onThread(threadId);
375
+ },
281
376
  onToken: (token) => {
282
377
  emit({ type: 'token', delta: token });
283
378
  },
@@ -1 +1 @@
1
- {"version":3,"file":"ws-handler.js","sourceRoot":"","sources":["../../src/websocket/ws-handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ws-handler.js","sourceRoot":"","sources":["../../src/websocket/ws-handler.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAc,MAAM,oBAAoB,CAAC;AAS3D,OAAO,EACL,WAAW,EACX,qBAAqB,EACrB,YAAY,EAEZ,kBAAkB,EAClB,eAAe,EACf,kBAAkB,EAClB,eAAe,GAGhB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAKlD,MAAM,OAAO,GAAG,CAAC,CAAC;AAClB,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAC7B,MAAM,kBAAkB,GAAG,GAAG,CAAC;AAC/B,MAAM,aAAa,GAAwB,IAAI,GAAG,CAAC;IACjD,WAAW;IACX,aAAa;IACb,KAAK;IACL,QAAQ;IACR,MAAM;IACN,MAAM;CACP,CAAC,CAAC;AAoCH;;;;;GAKG;AACH,MAAM,UAAU;IAGe;IAFZ,QAAQ,GAAG,IAAI,GAAG,EAAuD,CAAC;IAE3F,YAA6B,eAAyD;QAAzD,oBAAe,GAAf,eAAe,CAA0C;IAAG,CAAC;IAE1F,SAAS,CAAC,EAAiB,EAAE,OAAe,EAAE,IAA6B;QACzE,IAAI,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACzC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,GAAG,IAAI,GAAG,EAAE,CAAC;YACpB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACtC,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACxB,CAAC;IAED,WAAW,CAAC,EAAiB,EAAE,OAAe;QAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC3C,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACnB,IAAI,OAAO,CAAC,IAAI,KAAK,CAAC;YAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACxD,CAAC;IAED,sEAAsE;IACtE,SAAS,CACP,OAAe,EACf,MAA4D;QAE5D,OAAO,IAAI,YAAY,CACrB,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAChC,OAAO,EACP,MAAM,EACN,IAAI,CAAC,eAAe,CACrB,CAAC;IACJ,CAAC;CACF;AAED;;;;;;GAMG;AACH,MAAM,YAAY;IAKG;IACA;IACA;IACA;IAPX,QAAQ,CAAqB;IACpB,UAAU,GAAG,IAAI,GAAG,EAAmC,CAAC;IAEzE,YACmB,OAA8E,EAC9E,OAAe,EACf,MAA4D,EAC5D,eAAyD;QAHzD,YAAO,GAAP,OAAO,CAAuE;QAC9E,YAAO,GAAP,OAAO,CAAQ;QACf,WAAM,GAAN,MAAM,CAAsD;QAC5D,oBAAe,GAAf,eAAe,CAA0C;IACzE,CAAC;IAEJ,uDAAuD;IACvD,QAAQ,CAAC,QAAgB;QACvB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,OAAO,CAAC,QAA2B;QACjC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC/B,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,KAAK,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,OAAO,EAAE,CAAC;YACrC,IAAI,MAAM,KAAK,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM;gBAAE,SAAS;YACrF,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACjE,IAAI,CAAC,UAAU,CAAC,GAAG,CACjB,MAAM,EACN,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;gBACxB,IAAI,OAAO;oBAAE,YAAY,CAAC,MAAM,EAAE,EAAE,GAAG,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC1E,OAAO,OAAO,CAAC;YACjB,CAAC,CAAC,CACH,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,KAAK,CAAC,IAA6B;QAC/C,IAAI,CAAC,IAAI,CAAC,eAAe;YAAE,OAAO,IAAI,CAAC;QACvC,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;YAAE,OAAO,KAAK,CAAC;QAC9C,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,OAAO,CAAU,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBACpD,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,2BAA2B,CAAC,CAAC;gBAC5E,qBAAqB,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC;qBAC7D,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,EAAE,MAAM,CAAC;qBACzD,OAAO,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;YACxC,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,sEAAsE,EAAE,KAAK,CAAC,CAAC;YAC7F,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,2BAA2B,GAAG,IAAI,CAAC;AAEzC,SAAS,YAAY,CAAC,GAAW;IAC/B,IAAI,IAAa,CAAC;IAClB,IAAI,CAAC;QACH,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1F,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,IAAI,CAAC,EAAE,KAAK,SAAS,IAAI,OAAO,IAAI,CAAC,EAAE,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACtE,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAChF,OAAO;QACL,IAAI,EAAE,IAAI,CAAC,IAAgC;QAC3C,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,OAAO,EAAE,IAAI,CAAC,OAAO;KACtB,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,OAAgB,EAAE,aAA4B;IACrE,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC;QAAE,OAAO,IAAI,CAAC;IACxC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;IAC/B,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,OAAO;QAAE,OAAO,IAAI,CAAC;IAC7E,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACnD,MAAM,MAAM,GAAG,eAAe,CAAC,OAAO,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC;IAC3D,OAAO,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AAC5D,CAAC;AAED,SAAS,kBAAkB,CAAC,OAAgB;IAC1C,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC;QAAE,OAAO,IAAI,CAAC;IACxC,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;IACzB,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACnD,MAAM,MAAM,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAC3C,OAAO,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACtD,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAc;IACtC,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACd,MAAM,IAAI,KAAK;QACf,CAAC,KAAK,CAAC,IAAI,KAAK,sBAAsB,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,CAAC,CAC7E,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,MAAkB,EAClB,GAAiB,EACjB,SAA0B,EAAE;IAE5B,IAAI,QAA6B,CAAC;IAClC,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC;YAAE,MAAM,KAAK,CAAC;QAC1C,OAAO,CAAC,IAAI,CAAC,qEAAqE,CAAC,CAAC;QACpF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;IAC/B,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC;IACvC,MAAM,WAAW,GAAG,IAAI,OAAO,EAA4C,CAAC;IAC5E,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IACvD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,QAAQ,KAAK,CAAC;IAExD,MAAM,GAAG,GAAG,IAAI,QAAQ,CAAC,eAAe,CAAC;QACvC,MAAM;QACN,IAAI;QACJ,UAAU,EAAE,MAAM,CAAC,cAAc,IAAI,IAAI,GAAG,IAAI;QAChD,YAAY,EACV,MAAM,IAAI,SAAS,KAAK,MAAM;YAC5B,CAAC,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE;gBACjB,OAAO,CAAC,OAAO,EAAE;qBACd,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,GAAc,CAAC,CAAC;qBACzC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;oBACb,IAAI,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC;wBACzC,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE,cAAc,CAAC,CAAC;wBACrC,OAAO;oBACT,CAAC;oBACD,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;oBAChC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACjB,CAAC,CAAC;qBACD,KAAK,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE,cAAc,CAAC,CAAC,CAAC;YACvD,CAAC;YACH,CAAC,CAAC,SAAS;KAChB,CAAC,CAAC;IAEH,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,IAAI,KAAK,CAAC;IAElD,GAAG,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC,EAAiB,EAAE,GAAoB,EAAE,EAAE;QAC/D,MAAM,WAAW,GAAgB;YAC/B,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC;YACpB,OAAO,EAAE,GAAG;YACZ,IAAI,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC;YAC1B,aAAa,EAAE,IAAI,GAAG,EAAE;SACzB,CAAC;QAEF,IAAI,KAAK,GAAG,IAAI,CAAC;QACjB,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE;YACjC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,aAAa,CAAC,SAAS,CAAC,CAAC;gBACzB,EAAE,CAAC,SAAS,EAAE,CAAC;gBACf,OAAO;YACT,CAAC;YACD,KAAK,GAAG,KAAK,CAAC;YACd,EAAE,CAAC,IAAI,EAAE,CAAC;QACZ,CAAC,EAAE,YAAY,CAAC,CAAC;QAEjB,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;YACjB,KAAK,GAAG,IAAI,CAAC;QACf,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,IAAY,EAAE,EAAE;YAChC,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC9C,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC,CAAC;gBAC9D,OAAO;YACT,CAAC;YACD,KAAK,aAAa,CAAC,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,GAAG,EAAE;YACnB,aAAa,CAAC,SAAS,CAAC,CAAC;YACzB,WAAW,CAAC,eAAe,EAAE,KAAK,EAAE,CAAC;YACrC,WAAW,CAAC,eAAe,GAAG,SAAS,CAAC;YACxC,KAAK,MAAM,OAAO,IAAI,WAAW,CAAC,aAAa;gBAAE,GAAG,CAAC,WAAW,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;YAC9E,WAAW,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QACpC,CAAC,CAAC;QAEF,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;QACnB,KAAK,MAAM,MAAM,IAAI,GAAG,CAAC,OAAO;YAAE,MAAM,CAAC,SAAS,EAAE,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,SAAS,EAAE,CAAC,KAAK,CAAC,qCAAqC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IACnE,OAAO,GAAG,CAAC;AACb,CAAC;AAED,KAAK,UAAU,aAAa,CAC1B,EAAiB,EACjB,OAAyB,EACzB,GAAiB,EACjB,MAAuB,EACvB,KAAkB,EAClB,GAAe;IAEf,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;QACrB,KAAK,MAAM;YACT,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;YACnD,MAAM;QAER,KAAK,WAAW,CAAC,CAAC,CAAC;YACjB,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;YAChC,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,kBAAkB,EAAE,CAAC;gBACpD,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC,CAAC;gBAC9E,MAAM;YACR,CAAC;YACD,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,aAAa,CAAC,IAAI,IAAI,iBAAiB,EAAE,CAAC;gBACvF,YAAY,CAAC,EAAE,EAAE;oBACf,IAAI,EAAE,OAAO;oBACb,EAAE,EAAE,OAAO,CAAC,EAAE;oBACd,KAAK,EAAE,mCAAmC,iBAAiB,GAAG;iBAC/D,CAAC,CAAC;gBACH,MAAM;YACR,CAAC;YACD,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACjC,GAAG,CAAC,SAAS,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YACvC,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;YAClE,MAAM;QACR,CAAC;QAED,KAAK,aAAa;YAChB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACpB,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBAC5C,GAAG,CAAC,WAAW,CAAC,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;gBACrC,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;YACvF,CAAC;YACD,MAAM;QAER,KAAK,KAAK;YACR,MAAM,SAAS,CAAC,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;YACtD,MAAM;QAER,KAAK,QAAQ;YACX,MAAM,YAAY,CAAC,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;YACzD,MAAM;QAER,KAAK,MAAM;YACT,KAAK,CAAC,eAAe,EAAE,KAAK,EAAE,CAAC;YAC/B,KAAK,CAAC,eAAe,GAAG,SAAS,CAAC;YAClC,MAAM;IACV,CAAC;AACH,CAAC;AAED,KAAK,UAAU,SAAS,CACtB,EAAiB,EACjB,OAAyB,EACzB,GAAiB,EACjB,MAAuB,EACvB,KAAkB,EAClB,GAAe;IAEf,MAAM,OAAO,GAAG,eAAe,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IAE3E,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,qBAAqB,EAAE,CAAC,CAAC;QAClF,OAAO;IACT,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC7B,YAAY,CAAC,EAAE,EAAE;YACf,IAAI,EAAE,OAAO;YACb,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,KAAK,EAAE,aAAa,OAAO,CAAC,IAAI,mCAAmC;SACpE,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IAED,MAAM,cAAc,CAAC,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,CACrF,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE;QACvB,GAAG,OAAO;QACV,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,QAAQ,EAAE,OAAO,CAAC,QAAQ;KAC3B,CAAC,CACH,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,YAAY,CACzB,EAAiB,EACjB,OAAyB,EACzB,GAAiB,EACjB,MAAuB,EACvB,KAAkB,EAClB,GAAe;IAEf,MAAM,OAAO,GAAG,kBAAkB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAEpD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,wBAAwB,EAAE,CAAC,CAAC;QACrF,OAAO;IACT,CAAC;IAED,MAAM,cAAc,CAAC,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,CACrF,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,QAAQ,EAAE;QAC5C,GAAG,OAAO;QACV,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,eAAe,EAAE,OAAO,CAAC,eAAe;KACzC,CAAC,CACH,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,cAAc,CAC3B,EAAiB,EACjB,OAAyB,EACzB,GAAiB,EACjB,MAAuB,EACvB,KAAkB,EAClB,GAAe,EACf,MAA2C,EAC3C,OAAwE;IAExE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;IACxB,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC7E,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,YAAY,CAAC,EAAE,EAAE;YACf,IAAI,EAAE,OAAO;YACb,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,KAAK,EAAE,UAAU,IAAI,aAAa;SACnC,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IAED,KAAK,CAAC,eAAe,EAAE,KAAK,EAAE,CAAC;IAC/B,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,KAAK,CAAC,eAAe,GAAG,UAAU,CAAC;IAEnC,IAAI,IAAwB,CAAC;IAC7B,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,qBAAqB,CACzC,GAAG,CAAC,MAAM,CAAC,eAAe,EAC1B,KAAK,CAAC,IAAI,EACV,MAAM,CAAC,QAAQ,CAChB,CAAC;QACF,IAAI,OAAO,EAAE,CAAC;YACZ,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;YAC5E,OAAO;QACT,CAAC;QACD,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACvE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,YAAY,CAAC,EAAE,EAAE;YACf,IAAI,EAAE,OAAO;YACb,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,KAAK,EAAE,YAAY,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC,OAAO;SACpD,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IACD,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,UAAU,KAAK,OAAO;QAAE,OAAO;IAEnE,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC,SAAS,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IAC3E,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS;QAAE,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACvE,MAAM,IAAI,GAAG,CAAC,YAAqC,EAAE,EAAE;QACrD,MAAM,QAAQ,GAAsB,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC;QAC7F,YAAY,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QAC3B,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC9B,CAAC,CAAC;IAEF,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,KAAK,EAAE;YAClC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM;YAC1B,MAAM,EAAE,UAAU,CAAC,MAAM;YACzB,MAAM,EAAE,IAAI;YACZ,GAAG,IAAI;YACP,UAAU,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;gBAC3B,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAC/B,CAAC;YACD,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;gBACjB,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;YACxC,CAAC;YACD,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE;gBACrB,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;YACrC,CAAC;YACD,UAAU,EAAE,CAAC,QAAQ,EAAE,EAAE;gBACvB,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAC5D,CAAC;YACD,YAAY,EAAE,CAAC,UAAU,EAAE,EAAE;gBAC3B,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,UAAU,EAAE,CAAC,CAAC;YAC/C,CAAC;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACjE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YAC9B,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;QAC9B,CAAC;aAAM,CAAC;YACN,YAAY,CAAC,EAAE,EAAE;gBACf,IAAI,EAAE,OAAO;gBACb,EAAE,EAAE,OAAO,CAAC,EAAE;gBACd,KAAK,EAAE,YAAY,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC,OAAO;aACpD,CAAC,CAAC;QACL,CAAC;IACH,CAAC;YAAS,CAAC;QACT,IAAI,KAAK,CAAC,eAAe,KAAK,UAAU;YAAE,KAAK,CAAC,eAAe,GAAG,SAAS,CAAC;IAC9E,CAAC;AACH,CAAC;AAED,SAAS,YAAY,CAAC,EAAiB,EAAE,QAA2B;IAClE,IAAI,EAAE,CAAC,UAAU,KAAK,OAAO;QAAE,OAAO;IACtC,IAAI,CAAC;QACH,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;IACpC,CAAC;IAAC,MAAM,CAAC,CAAA,CAAC;AACZ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cogitator-ai/express",
3
- "version": "0.9.6",
3
+ "version": "0.10.0",
4
4
  "description": "Express.js server adapter for Cogitator AI runtime",
5
5
  "type": "module",
6
6
  "exports": {
@@ -20,21 +20,21 @@
20
20
  "node": ">=22.12.0"
21
21
  },
22
22
  "dependencies": {
23
- "@cogitator-ai/core": "0.56.3",
23
+ "@cogitator-ai/core": "0.56.4",
24
24
  "@cogitator-ai/types": "0.61.0",
25
- "@cogitator-ai/server-shared": "0.6.6"
25
+ "@cogitator-ai/server-shared": "0.7.0"
26
26
  },
27
27
  "peerDependencies": {
28
28
  "express": ">=4.18.0"
29
29
  },
30
30
  "optionalDependencies": {
31
- "@cogitator-ai/workflows": "0.14.1",
32
- "@cogitator-ai/swarms": "0.14.0",
31
+ "@cogitator-ai/workflows": "0.14.2",
32
+ "@cogitator-ai/swarms": "0.14.1",
33
33
  "ws": "^8.22.0"
34
34
  },
35
35
  "devDependencies": {
36
- "@cogitator-ai/workflows": "0.14.1",
37
- "@cogitator-ai/swarms": "0.14.0",
36
+ "@cogitator-ai/workflows": "0.14.2",
37
+ "@cogitator-ai/swarms": "0.14.1",
38
38
  "@types/express": "^5.0.6",
39
39
  "@types/supertest": "^7.2.1",
40
40
  "@types/ws": "^8.18.2",