@turingfocus/chat-runtime 0.5.0 → 0.7.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.
@@ -2,7 +2,9 @@ import { cloneImmutable, deepEqual } from "./immutable.js";
2
2
  const INITIAL_SNAPSHOT = cloneImmutable({
3
3
  conversations: [],
4
4
  creating: false,
5
+ deletingConversationIds: [],
5
6
  listStatus: "idle",
7
+ renamingConversationIds: [],
6
8
  selectionStatus: "idle",
7
9
  });
8
10
  const controllerFailure = (message, conversationId) => ({
@@ -57,6 +59,7 @@ export class ConversationWorkspaceController {
57
59
  #clientSubscription;
58
60
  #createInFlight = 0;
59
61
  #createRevision = 0;
62
+ #deletingConversationIds = new Set();
60
63
  #disposed = false;
61
64
  #getDeadlineAt;
62
65
  #initialSelection;
@@ -65,6 +68,7 @@ export class ConversationWorkspaceController {
65
68
  #onUnhandledError;
66
69
  #orderConversations;
67
70
  #pageSize;
71
+ #renamingConversationIds = new Set();
68
72
  #selectionIntentRevision = 0;
69
73
  #selectionRevision = 0;
70
74
  #snapshot = INITIAL_SNAPSHOT;
@@ -75,8 +79,11 @@ export class ConversationWorkspaceController {
75
79
  this.#onUnhandledError = options.onUnhandledError;
76
80
  this.#orderConversations = options.orderConversations;
77
81
  this.#pageSize = options.pageSize;
78
- this.#clientSubscription = this.#client.subscribe((snapshot) => {
79
- this.#handleClientSnapshot(snapshot);
82
+ this.#clientSubscription = this.#client.subscribeState((snapshot) => {
83
+ if (snapshot === null)
84
+ this.#handleClientSnapshotCleared();
85
+ else
86
+ this.#handleClientSnapshot(snapshot);
80
87
  });
81
88
  }
82
89
  get disposed() {
@@ -243,6 +250,106 @@ export class ConversationWorkspaceController {
243
250
  }
244
251
  return result;
245
252
  }
253
+ async renameConversation(input) {
254
+ if (this.#disposed) {
255
+ return controllerFailure("Conversation workspace has already been disposed", input.conversationId);
256
+ }
257
+ if (this.#renamingConversationIds.has(input.conversationId) ||
258
+ this.#deletingConversationIds.has(input.conversationId)) {
259
+ return controllerFailure("Conversation mutation is already in progress", input.conversationId);
260
+ }
261
+ this.#renamingConversationIds.add(input.conversationId);
262
+ this.#commitMutationState(undefined);
263
+ const requestOptions = this.#requestOptions(input.conversationId);
264
+ const result = requestOptions.ok
265
+ ? await this.#client.renameConversation({
266
+ conversationId: input.conversationId,
267
+ deadlineAt: requestOptions.value,
268
+ title: input.title,
269
+ })
270
+ : requestOptions;
271
+ this.#renamingConversationIds.delete(input.conversationId);
272
+ if (this.#disposed)
273
+ return result;
274
+ if (!result.ok) {
275
+ this.#commitMutationState(result.error);
276
+ return result;
277
+ }
278
+ this.#listRevision += 1;
279
+ this.#commit({
280
+ ...this.#snapshot,
281
+ conversations: this.#upsertConversation(result.value),
282
+ conversationMutationError: undefined,
283
+ listError: undefined,
284
+ listStatus: "ready",
285
+ renamingConversationIds: [...this.#renamingConversationIds],
286
+ });
287
+ return result;
288
+ }
289
+ async deleteConversation(conversationId) {
290
+ if (this.#disposed) {
291
+ return controllerFailure("Conversation workspace has already been disposed", conversationId);
292
+ }
293
+ if (this.#deletingConversationIds.has(conversationId) ||
294
+ this.#renamingConversationIds.has(conversationId)) {
295
+ return controllerFailure("Conversation mutation is already in progress", conversationId);
296
+ }
297
+ this.#deletingConversationIds.add(conversationId);
298
+ this.#commitMutationState(undefined);
299
+ const requestOptions = this.#requestOptions(conversationId);
300
+ const result = requestOptions.ok
301
+ ? await this.#client.deleteConversation({
302
+ conversationId,
303
+ deadlineAt: requestOptions.value,
304
+ })
305
+ : requestOptions;
306
+ this.#deletingConversationIds.delete(conversationId);
307
+ if (this.#disposed)
308
+ return result;
309
+ if (!result.ok) {
310
+ this.#commitMutationState(result.error);
311
+ return result;
312
+ }
313
+ this.#listRevision += 1;
314
+ const conversations = this.#snapshot.conversations.filter((conversation) => conversation.id !== conversationId);
315
+ const deletesSelected = this.#snapshot.selectedConversationId === conversationId;
316
+ const deletesPending = this.#snapshot.pendingConversationId === conversationId;
317
+ if (deletesSelected || deletesPending) {
318
+ this.#selectionIntentRevision += 1;
319
+ this.#selectionRevision += 1;
320
+ this.#automaticSelectionRevision = undefined;
321
+ this.#client.cancelPendingConversationLoad();
322
+ }
323
+ this.#commit({
324
+ ...this.#snapshot,
325
+ conversations,
326
+ conversationMutationError: undefined,
327
+ deletingConversationIds: [...this.#deletingConversationIds],
328
+ listError: undefined,
329
+ listStatus: "ready",
330
+ ...(deletesSelected
331
+ ? {
332
+ pendingConversationId: undefined,
333
+ selectedConversationId: undefined,
334
+ selectionError: undefined,
335
+ selectionStatus: conversations.length === 0
336
+ ? "empty"
337
+ : "idle",
338
+ }
339
+ : deletesPending
340
+ ? {
341
+ pendingConversationId: undefined,
342
+ selectionError: undefined,
343
+ selectionStatus: this.#snapshot.selectedConversationId === undefined
344
+ ? conversations.length === 0
345
+ ? "empty"
346
+ : "idle"
347
+ : "ready",
348
+ }
349
+ : {}),
350
+ });
351
+ return result;
352
+ }
246
353
  async selectConversation(conversationId) {
247
354
  this.#automaticSelectionRevision = undefined;
248
355
  this.#selectionIntentRevision += 1;
@@ -399,6 +506,14 @@ export class ConversationWorkspaceController {
399
506
  return callbackFailure("Conversation workspace deadline provider failed", conversationId);
400
507
  }
401
508
  }
509
+ #commitMutationState(error) {
510
+ this.#commit({
511
+ ...this.#snapshot,
512
+ conversationMutationError: error,
513
+ deletingConversationIds: [...this.#deletingConversationIds],
514
+ renamingConversationIds: [...this.#renamingConversationIds],
515
+ });
516
+ }
402
517
  #cancelAutomaticSelection() {
403
518
  if (this.#automaticSelectionRevision === undefined ||
404
519
  this.#automaticSelectionRevision !== this.#selectionRevision) {
@@ -474,6 +589,29 @@ export class ConversationWorkspaceController {
474
589
  conversations: this.#upsertConversation(snapshot.conversation),
475
590
  });
476
591
  }
592
+ #handleClientSnapshotCleared() {
593
+ if (this.#disposed)
594
+ return;
595
+ const conversationId = this.#snapshot.selectedConversationId ??
596
+ this.#snapshot.pendingConversationId;
597
+ if (conversationId === undefined)
598
+ return;
599
+ const conversations = this.#snapshot.conversations.filter((conversation) => conversation.id !== conversationId);
600
+ this.#listRevision += 1;
601
+ this.#selectionIntentRevision += 1;
602
+ this.#selectionRevision += 1;
603
+ this.#automaticSelectionRevision = undefined;
604
+ this.#commit({
605
+ ...this.#snapshot,
606
+ conversations,
607
+ listError: undefined,
608
+ listStatus: "ready",
609
+ pendingConversationId: undefined,
610
+ selectedConversationId: undefined,
611
+ selectionError: undefined,
612
+ selectionStatus: conversations.length === 0 ? "empty" : "idle",
613
+ });
614
+ }
477
615
  #isCurrentList(revision) {
478
616
  return !this.#disposed && revision === this.#listRevision;
479
617
  }
@@ -1 +1 @@
1
- {"version":3,"file":"conversation-workspace.js","sourceRoot":"","sources":["../src/conversation-workspace.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"conversation-workspace.js","sourceRoot":"","sources":["../src/conversation-workspace.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAiE3D,MAAM,gBAAgB,GAAkC,cAAc,CAAC;IACrE,aAAa,EAAE,EAAE;IACjB,QAAQ,EAAE,KAAK;IACf,uBAAuB,EAAE,EAAE;IAC3B,UAAU,EAAE,MAAM;IAClB,uBAAuB,EAAE,EAAE;IAC3B,eAAe,EAAE,MAAM;CACxB,CAAC,CAAC;AAEH,MAAM,iBAAiB,GAAG,CACxB,OAAe,EACf,cAAuB,EACD,EAAE,CAAC,CAAC;IAC1B,EAAE,EAAE,KAAK;IACT,KAAK,EAAE,cAAc,CAAC;QACpB,IAAI,EAAE,UAAU;QAChB,OAAO;QACP,SAAS,EAAE,KAAK;QAChB,GAAG,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC;KAC5D,CAAC;CACH,CAAC,CAAC;AAEH,MAAM,eAAe,GAAG,CACtB,OAAe,EACf,cAAuB,EACD,EAAE,CAAC,CAAC;IAC1B,EAAE,EAAE,KAAK;IACT,KAAK,EAAE,cAAc,CAAC;QACpB,IAAI,EAAE,SAAS;QACf,OAAO;QACP,SAAS,EAAE,KAAK;QAChB,GAAG,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC;KAC5D,CAAC;CACH,CAAC,CAAC;AAEH,MAAM,wBAAwB,GAAG,CAC/B,aAAsC,EACb,EAAE;IAC3B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC,YAAY,EAAE,EAAE;QAC3C,IAAI,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;YAAE,OAAO,KAAK,CAAC;QAC5C,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAC3C,aAAsC,EACb,EAAE,CAC3B,aAAa;KACV,GAAG,CAAC,CAAC,YAAY,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;KACvD,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;IACpB,MAAM,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC;IAClD,MAAM,cAAc,GAAG,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC;IACpD,IAAI,aAAa,KAAK,SAAS,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;QAChE,OAAO,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;IAClC,CAAC;IACD,IAAI,aAAa,KAAK,SAAS;QAAE,OAAO,CAAC,CAAC;IAC1C,IAAI,cAAc,KAAK,SAAS;QAAE,OAAO,CAAC,CAAC,CAAC;IAC5C,OAAO,cAAc,GAAG,aAAa,IAAI,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;AACpE,CAAC,CAAC;KACD,GAAG,CAAC,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC;AAE7C;;;GAGG;AACH,MAAM,OAAO,+BAA+B;IAC1C,2BAA2B,CAAqB;IACvC,OAAO,CAAa;IACpB,mBAAmB,CAAoC;IAChE,eAAe,GAAG,CAAC,CAAC;IACpB,eAAe,GAAG,CAAC,CAAC;IACX,wBAAwB,GAAG,IAAI,GAAG,EAAU,CAAC;IACtD,SAAS,GAAG,KAAK,CAAC;IACT,cAAc,CAAe;IAC7B,iBAAiB,CAAmB;IAC7C,aAAa,GAAG,CAAC,CAAC;IACT,UAAU,GAAG,IAAI,GAAG,EAAwB,CAAC;IAC7C,iBAAiB,CAAyC;IAC1D,mBAAmB,CAEd;IACL,SAAS,CAAqB;IAC9B,wBAAwB,GAAG,IAAI,GAAG,EAAU,CAAC;IACtD,wBAAwB,GAAG,CAAC,CAAC;IAC7B,kBAAkB,GAAG,CAAC,CAAC;IACvB,SAAS,GAAkC,gBAAgB,CAAC;IAE5D,YAAY,OAA+C;QACzD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;QAC9B,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC;QAC5C,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC;QAC7D,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC;QAClD,IAAI,CAAC,mBAAmB,GAAG,OAAO,CAAC,kBAAkB,CAAC;QACtD,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC;QAClC,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,QAAQ,EAAE,EAAE;YAClE,IAAI,QAAQ,KAAK,IAAI;gBAAE,IAAI,CAAC,4BAA4B,EAAE,CAAC;;gBACtD,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,SAAS,CACP,QAA2D;QAE3D,MAAM,YAAY,GAAyB;YACzC,MAAM,EAAE,CAAC,IAAI,CAAC,SAAS;YACvB,QAAQ;SACT,CAAC;QACF,IAAI,YAAY,CAAC,MAAM,EAAE,CAAC;YACxB,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YAClC,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;QACnC,CAAC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,IAAI,MAAM;gBACR,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC;YAC9B,CAAC;YACD,OAAO,EAAE,GAAG,EAAE;gBACZ,IAAI,CAAC,YAAY,CAAC,MAAM;oBAAE,OAAO;gBACjC,YAAY,CAAC,MAAM,GAAG,KAAK,CAAC;gBAC5B,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YACvC,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,OAAO;QACX,MAAM,uBAAuB,GAAG,IAAI,CAAC,wBAAwB,CAAC;QAC9D,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAC5C,IACE,CAAC,SAAS,CAAC,OAAO;YAClB,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE;YACpB,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,QAAQ,CAAC;YACxC,uBAAuB,KAAK,IAAI,CAAC,wBAAwB,EACzD,CAAC;YACD,OAAO,SAAS,CAAC,MAAM,CAAC;QAC1B,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QAC9C,IACE,KAAK,KAAK,SAAS;YACnB,IAAI,CAAC,SAAS,CAAC,sBAAsB,KAAK,SAAS;YACnD,IAAI,CAAC,SAAS,CAAC,qBAAqB,KAAK,SAAS,EAClD,CAAC;YACD,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,IAAI,CAAC,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,CAAC;QAChE,CAAC;aAAM,IACL,KAAK,KAAK,SAAS;YACnB,IAAI,CAAC,iBAAiB,KAAK,OAAO;YAClC,IAAI,CAAC,SAAS,CAAC,sBAAsB,KAAK,SAAS;YACnD,IAAI,CAAC,SAAS,CAAC,qBAAqB,KAAK,SAAS,EAClD,CAAC;YACD,MAAM,IAAI,CAAC,0BAA0B,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAClD,CAAC;aAAM,IACL,IAAI,CAAC,SAAS,CAAC,sBAAsB,KAAK,SAAS;YACnD,IAAI,CAAC,SAAS,CAAC,qBAAqB,KAAK,SAAS,EAClD,CAAC;YACD,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,IAAI,CAAC,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,CAAC;QAChE,CAAC;QACD,OAAO,SAAS,CAAC,MAAM,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,OAAO,iBAAiB,CACtB,kDAAkD,CACnD,CAAC;QACJ,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;QACzC,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,SAAS,CAAC;QAC3C,MAAM,QAAQ,GAAG,EAAE,IAAI,CAAC,aAAa,CAAC;QACtC,IAAI,CAAC,OAAO,CAAC;YACX,GAAG,IAAI,CAAC,SAAS;YACjB,SAAS,EAAE,SAAS;YACpB,UAAU,EAAE,cAAc;SAC3B,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;YACnC,OAAO,iBAAiB,CAAC,wCAAwC,CAAC,CAAC;QACrE,CAAC;QACD,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAC9C,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;YACnC,OAAO,iBAAiB,CAAC,wCAAwC,CAAC,CAAC;QACrE,CAAC;QACD,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC;YACvB,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;YACvD,OAAO,cAAc,CAAC;QACxB,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC;YAClD,MAAM;YACN,UAAU,EAAE,cAAc,CAAC,KAAK;YAChC,GAAG,CAAC,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC;SACnE,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC;YAAE,OAAO,MAAM,CAAC;QAClD,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;YAC/C,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,IAAI,CAAC,OAAO,CAAC;YACX,GAAG,IAAI,CAAC,SAAS;YACjB,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC;gBAC3B,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa;gBAC/B,GAAG,MAAM,CAAC,KAAK,CAAC,aAAa;aAC9B,CAAC;YACF,SAAS,EAAE,SAAS;YACpB,UAAU,EAAE,OAAO;YACnB,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU;SACpC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,kBAAkB,CACtB,KAAuC;QAEvC,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,OAAO,iBAAiB,CACtB,kDAAkD,CACnD,CAAC;QACJ,CAAC;QACD,MAAM,cAAc,GAAG,EAAE,IAAI,CAAC,eAAe,CAAC;QAC9C,MAAM,uBAAuB,GAAG,IAAI,CAAC,wBAAwB,CAAC;QAC9D,IAAI,CAAC,eAAe,IAAI,CAAC,CAAC;QAC1B,IAAI,CAAC,OAAO,CAAC;YACX,GAAG,IAAI,CAAC,SAAS;YACjB,QAAQ,EAAE,IAAI;YACd,aAAa,EAAE,SAAS;SACzB,CAAC,CAAC;QACH,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,IAAI,CAAC,eAAe,IAAI,CAAC,CAAC;YAC1B,OAAO,iBAAiB,CAAC,sCAAsC,CAAC,CAAC;QACnE,CAAC;QACD,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAC9C,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,IAAI,CAAC,eAAe,IAAI,CAAC,CAAC;YAC1B,OAAO,iBAAiB,CAAC,sCAAsC,CAAC,CAAC;QACnE,CAAC;QACD,MAAM,MAAM,GAAG,cAAc,CAAC,EAAE;YAC9B,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;gBACpC,UAAU,EAAE,cAAc,CAAC,KAAK;gBAChC,KAAK,EAAE,KAAK,CAAC,KAAK;aACnB,CAAC;YACJ,CAAC,CAAC,cAAc,CAAC;QACnB,IAAI,CAAC,eAAe,IAAI,CAAC,CAAC;QAC1B,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO,MAAM,CAAC;QAClC,MAAM,cAAc,GAAG,cAAc,KAAK,IAAI,CAAC,eAAe,CAAC;QAC/D,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,IAAI,CAAC,OAAO,CAAC;gBACX,GAAG,IAAI,CAAC,SAAS;gBACjB,QAAQ,EAAE,IAAI,CAAC,eAAe,GAAG,CAAC;gBAClC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC3D,CAAC,CAAC;YACH,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,IAAI,CAAC,aAAa,IAAI,CAAC,CAAC;QACxB,IAAI,CAAC,OAAO,CAAC;YACX,GAAG,IAAI,CAAC,SAAS;YACjB,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC;gBAC3B,MAAM,CAAC,KAAK;gBACZ,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa;aAChC,CAAC;YACF,QAAQ,EAAE,IAAI,CAAC,eAAe,GAAG,CAAC;YAClC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvD,SAAS,EAAE,SAAS;YACpB,UAAU,EAAE,OAAO;SACpB,CAAC,CAAC;QACH,IACE,KAAK,CAAC,MAAM,KAAK,KAAK;YACtB,CAAC,IAAI,CAAC,SAAS;YACf,cAAc,KAAK,IAAI,CAAC,eAAe;YACvC,uBAAuB,KAAK,IAAI,CAAC,wBAAwB,EACzD,CAAC;YACD,IAAI,CAAC,2BAA2B,GAAG,SAAS,CAAC;YAC7C,MAAM,IAAI,CAAC,mBAAmB,CAC5B,MAAM,CAAC,KAAK,CAAC,EAAE,EACf,EAAE,IAAI,CAAC,kBAAkB,CAC1B,CAAC;QACJ,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,kBAAkB,CACtB,KAAuC;QAEvC,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,OAAO,iBAAiB,CACtB,kDAAkD,EAClD,KAAK,CAAC,cAAc,CACrB,CAAC;QACJ,CAAC;QACD,IACE,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC;YACvD,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,EACvD,CAAC;YACD,OAAO,iBAAiB,CACtB,8CAA8C,EAC9C,KAAK,CAAC,cAAc,CACrB,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QACxD,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;QACrC,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAClE,MAAM,MAAM,GAAG,cAAc,CAAC,EAAE;YAC9B,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;gBACpC,cAAc,EAAE,KAAK,CAAC,cAAc;gBACpC,UAAU,EAAE,cAAc,CAAC,KAAK;gBAChC,KAAK,EAAE,KAAK,CAAC,KAAK;aACnB,CAAC;YACJ,CAAC,CAAC,cAAc,CAAC;QACnB,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAC3D,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO,MAAM,CAAC;QAClC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACxC,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,IAAI,CAAC,aAAa,IAAI,CAAC,CAAC;QACxB,IAAI,CAAC,OAAO,CAAC;YACX,GAAG,IAAI,CAAC,SAAS;YACjB,aAAa,EAAE,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC;YACrD,yBAAyB,EAAE,SAAS;YACpC,SAAS,EAAE,SAAS;YACpB,UAAU,EAAE,OAAO;YACnB,uBAAuB,EAAE,CAAC,GAAG,IAAI,CAAC,wBAAwB,CAAC;SAC5D,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,kBAAkB,CACtB,cAAsB;QAEtB,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,OAAO,iBAAiB,CACtB,kDAAkD,EAClD,cAAc,CACf,CAAC;QACJ,CAAC;QACD,IACE,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,cAAc,CAAC;YACjD,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,cAAc,CAAC,EACjD,CAAC;YACD,OAAO,iBAAiB,CACtB,8CAA8C,EAC9C,cAAc,CACf,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAClD,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;QACrC,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;QAC5D,MAAM,MAAM,GAAG,cAAc,CAAC,EAAE;YAC9B,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;gBACpC,cAAc;gBACd,UAAU,EAAE,cAAc,CAAC,KAAK;aACjC,CAAC;YACJ,CAAC,CAAC,cAAc,CAAC;QACnB,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QACrD,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO,MAAM,CAAC;QAClC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACxC,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,IAAI,CAAC,aAAa,IAAI,CAAC,CAAC;QACxB,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,MAAM,CACvD,CAAC,YAAY,EAAE,EAAE,CAAC,YAAY,CAAC,EAAE,KAAK,cAAc,CACrD,CAAC;QACF,MAAM,eAAe,GACnB,IAAI,CAAC,SAAS,CAAC,sBAAsB,KAAK,cAAc,CAAC;QAC3D,MAAM,cAAc,GAClB,IAAI,CAAC,SAAS,CAAC,qBAAqB,KAAK,cAAc,CAAC;QAC1D,IAAI,eAAe,IAAI,cAAc,EAAE,CAAC;YACtC,IAAI,CAAC,wBAAwB,IAAI,CAAC,CAAC;YACnC,IAAI,CAAC,kBAAkB,IAAI,CAAC,CAAC;YAC7B,IAAI,CAAC,2BAA2B,GAAG,SAAS,CAAC;YAC7C,IAAI,CAAC,OAAO,CAAC,6BAA6B,EAAE,CAAC;QAC/C,CAAC;QACD,IAAI,CAAC,OAAO,CAAC;YACX,GAAG,IAAI,CAAC,SAAS;YACjB,aAAa;YACb,yBAAyB,EAAE,SAAS;YACpC,uBAAuB,EAAE,CAAC,GAAG,IAAI,CAAC,wBAAwB,CAAC;YAC3D,SAAS,EAAE,SAAS;YACpB,UAAU,EAAE,OAAO;YACnB,GAAG,CAAC,eAAe;gBACjB,CAAC,CAAC;oBACE,qBAAqB,EAAE,SAAS;oBAChC,sBAAsB,EAAE,SAAS;oBACjC,cAAc,EAAE,SAAS;oBACzB,eAAe,EACb,aAAa,CAAC,MAAM,KAAK,CAAC;wBACxB,CAAC,CAAE,OAAiB;wBACpB,CAAC,CAAE,MAAgB;iBACxB;gBACH,CAAC,CAAC,cAAc;oBACd,CAAC,CAAC;wBACE,qBAAqB,EAAE,SAAS;wBAChC,cAAc,EAAE,SAAS;wBACzB,eAAe,EACb,IAAI,CAAC,SAAS,CAAC,sBAAsB,KAAK,SAAS;4BACjD,CAAC,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC;gCAC1B,CAAC,CAAE,OAAiB;gCACpB,CAAC,CAAE,MAAgB;4BACrB,CAAC,CAAE,OAAiB;qBACzB;oBACH,CAAC,CAAC,EAAE,CAAC;SACV,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,kBAAkB,CACtB,cAAsB;QAEtB,IAAI,CAAC,2BAA2B,GAAG,SAAS,CAAC;QAC7C,IAAI,CAAC,wBAAwB,IAAI,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC,mBAAmB,CAAC,cAAc,EAAE,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAC7E,CAAC;IAED,OAAO;QACL,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO;QAC3B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,aAAa,IAAI,CAAC,CAAC;QACxB,IAAI,CAAC,wBAAwB,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,kBAAkB,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,eAAe,IAAI,CAAC,CAAC;QAC1B,IAAI,IAAI,CAAC,SAAS,CAAC,qBAAqB,KAAK,SAAS,EAAE,CAAC;YACvD,IAAI,CAAC,OAAO,CAAC,6BAA6B,EAAE,CAAC;QAC/C,CAAC;QACD,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,CAAC;QACnC,KAAK,MAAM,YAAY,IAAI,IAAI,CAAC,UAAU;YAAE,YAAY,CAAC,MAAM,GAAG,KAAK,CAAC;QACxE,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,QAAQ,EAAE,IAAI,CAAC,aAAa;gBAC5B,MAAM,EAAE,iBAAiB,CACvB,kDAAkD,CACnD;aACF,CAAC;QACJ,CAAC;QACD,MAAM,QAAQ,GAAG,EAAE,IAAI,CAAC,aAAa,CAAC;QACtC,MAAM,2BAA2B,GAAG,IAAI,CAAC,yBAAyB,EAAE,CAAC;QACrE,IAAI,CAAC,OAAO,CAAC;YACX,GAAG,IAAI,CAAC,SAAS;YACjB,SAAS,EAAE,SAAS;YACpB,UAAU,EAAE,SAAS;YACrB,GAAG,CAAC,2BAA2B;gBAC7B,CAAC,CAAC;oBACE,qBAAqB,EAAE,SAAS;oBAChC,cAAc,EAAE,SAAS;oBACzB,eAAe,EACb,IAAI,CAAC,SAAS,CAAC,sBAAsB,KAAK,SAAS;wBACjD,CAAC,CAAE,MAAgB;wBACnB,CAAC,CAAE,OAAiB;iBACzB;gBACH,CAAC,CAAC,EAAE,CAAC;SACR,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;YACnC,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,QAAQ;gBACR,MAAM,EAAE,iBAAiB,CAAC,qCAAqC,CAAC;aACjE,CAAC;QACJ,CAAC;QACD,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAC9C,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;YACnC,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,QAAQ;gBACR,MAAM,EAAE,iBAAiB,CAAC,qCAAqC,CAAC;aACjE,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC;YACvB,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;YACvD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC;QAC7D,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC;YAClD,UAAU,EAAE,cAAc,CAAC,KAAK;YAChC,GAAG,CAAC,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC;SACnE,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;YACnC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;QAC9C,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;YAC/C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;QAC7C,CAAC;QAED,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAChE,IAAI,CAAC,OAAO,CAAC;YACX,GAAG,IAAI,CAAC,SAAS;YACjB,aAAa;YACb,SAAS,EAAE,SAAS;YACpB,UAAU,EAAE,OAAO;YACnB,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU;YACnC,GAAG,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC;gBAC9B,IAAI,CAAC,SAAS,CAAC,sBAAsB,KAAK,SAAS;gBACnD,IAAI,CAAC,SAAS,CAAC,qBAAqB,KAAK,SAAS;gBAChD,CAAC,CAAC,EAAE,eAAe,EAAE,OAAgB,EAAE;gBACvC,CAAC,CAAC,EAAE,CAAC;SACR,CAAC,CAAC;QACH,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,0BAA0B,CAAC,cAAsB;QACrD,MAAM,QAAQ,GAAG,EAAE,IAAI,CAAC,kBAAkB,CAAC;QAC3C,IAAI,CAAC,2BAA2B,GAAG,QAAQ,CAAC;QAC5C,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,mBAAmB,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;QAC3D,CAAC;gBAAS,CAAC;YACT,IAAI,IAAI,CAAC,2BAA2B,KAAK,QAAQ,EAAE,CAAC;gBAClD,IAAI,CAAC,2BAA2B,GAAG,SAAS,CAAC;YAC/C,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,mBAAmB,CACvB,cAAsB,EACtB,QAAgB;QAEhB,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,OAAO,iBAAiB,CACtB,kDAAkD,EAClD,cAAc,CACf,CAAC;QACJ,CAAC;QACD,IAAI,QAAQ,KAAK,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACzC,OAAO,iBAAiB,CACtB,uCAAuC,EACvC,cAAc,CACf,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,6BAA6B,EAAE,CAAC;QAC7C,IAAI,CAAC,OAAO,CAAC;YACX,GAAG,IAAI,CAAC,SAAS;YACjB,qBAAqB,EAAE,cAAc;YACrC,cAAc,EAAE,SAAS;YACzB,eAAe,EAAE,SAAS;SAC3B,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxC,OAAO,iBAAiB,CACtB,uCAAuC,EACvC,cAAc,CACf,CAAC;QACJ,CAAC;QACD,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;QAC5D,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxC,OAAO,iBAAiB,CACtB,uCAAuC,EACvC,cAAc,CACf,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC;YACvB,IAAI,CAAC,sBAAsB,CAAC,cAAc,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;YAC5D,OAAO,cAAc,CAAC;QACxB,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC;YACjD,cAAc;YACd,UAAU,EAAE,cAAc,CAAC,KAAK;SACjC,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC;YAAE,OAAO,MAAM,CAAC;QACvD,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;YACpD,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,IAAI,CAAC,OAAO,CAAC;YACX,GAAG,IAAI,CAAC,SAAS;YACjB,aAAa,EAAE,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC;YAClE,qBAAqB,EAAE,SAAS;YAChC,sBAAsB,EAAE,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE;YACpD,cAAc,EAAE,SAAS;YACzB,eAAe,EAAE,OAAO;SACzB,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,eAAe,CAAC,cAAuB;QACrC,IAAI,CAAC;YACH,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC;QACpD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;YAClC,OAAO,eAAe,CACpB,iDAAiD,EACjD,cAAc,CACf,CAAC;QACJ,CAAC;IACH,CAAC;IAED,oBAAoB,CAAC,KAA4B;QAC/C,IAAI,CAAC,OAAO,CAAC;YACX,GAAG,IAAI,CAAC,SAAS;YACjB,yBAAyB,EAAE,KAAK;YAChC,uBAAuB,EAAE,CAAC,GAAG,IAAI,CAAC,wBAAwB,CAAC;YAC3D,uBAAuB,EAAE,CAAC,GAAG,IAAI,CAAC,wBAAwB,CAAC;SAC5D,CAAC,CAAC;IACL,CAAC;IAED,yBAAyB;QACvB,IACE,IAAI,CAAC,2BAA2B,KAAK,SAAS;YAC9C,IAAI,CAAC,2BAA2B,KAAK,IAAI,CAAC,kBAAkB,EAC5D,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,IAAI,CAAC,SAAS,CAAC,qBAAqB,KAAK,SAAS,EAAE,CAAC;YACvD,IAAI,CAAC,2BAA2B,GAAG,SAAS,CAAC;YAC7C,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,CAAC,2BAA2B,GAAG,SAAS,CAAC;QAC7C,IAAI,CAAC,kBAAkB,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,OAAO,CAAC,6BAA6B,EAAE,CAAC;QAC7C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,iBAAiB,CAAC,KAAgB,EAAE,QAAgB;QAClD,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC;YAAE,OAAO;QAC3C,IAAI,CAAC,OAAO,CAAC;YACX,GAAG,IAAI,CAAC,SAAS;YACjB,SAAS,EAAE,KAAK;YAChB,UAAU,EAAE,OAAO;SACpB,CAAC,CAAC;IACL,CAAC;IAED,sBAAsB,CAAC,KAAgB,EAAE,QAAgB;QACvD,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC;YAAE,OAAO;QAChD,IAAI,CAAC,OAAO,CAAC;YACX,GAAG,IAAI,CAAC,SAAS;YACjB,qBAAqB,EAAE,SAAS;YAChC,cAAc,EAAE,KAAK;YACrB,eAAe,EAAE,OAAO;SACzB,CAAC,CAAC;IACL,CAAC;IAED,mBAAmB,CAAC,YAA0B;QAC5C,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,SAAS,CAC1D,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,YAAY,CAAC,EAAE,CACnC,CAAC;QACF,IAAI,aAAa,KAAK,CAAC,CAAC,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,YAAY,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC;QACxE,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAClB,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAC/C,KAAK,KAAK,aAAa,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAC9C,CACF,CAAC;IACJ,CAAC;IAED,QAAQ,CAAC,aAAsC;QAC7C,MAAM,YAAY,GAAG,wBAAwB,CAAC,aAAa,CAAC,CAAC;QAC7D,IAAI,IAAI,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;YAC3C,OAAO,cAAc,CAAC,YAAY,CAAC,CAAC;QACtC,CAAC;QACD,IAAI,CAAC;YACH,OAAO,cAAc,CACnB,wBAAwB,CACtB,IAAI,CAAC,mBAAmB,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CACvD,CACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;YAClC,OAAO,cAAc,CAAC,YAAY,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;IAED,qBAAqB,CAAC,QAAsB;QAC1C,IACE,IAAI,CAAC,SAAS;YACd,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,KAAK,IAAI,CAAC,SAAS,CAAC,sBAAsB;gBACjE,QAAQ,CAAC,YAAY,CAAC,EAAE,KAAK,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,EACpE,CAAC;YACD,OAAO;QACT,CAAC;QACD,IAAI,QAAQ,CAAC,YAAY,CAAC,EAAE,KAAK,IAAI,CAAC,SAAS,CAAC,qBAAqB,EAAE,CAAC;YACtE,IAAI,CAAC,OAAO,CAAC;gBACX,GAAG,IAAI,CAAC,SAAS;gBACjB,aAAa,EAAE,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,YAAY,CAAC;gBAC9D,qBAAqB,EAAE,SAAS;gBAChC,sBAAsB,EAAE,QAAQ,CAAC,YAAY,CAAC,EAAE;gBAChD,cAAc,EAAE,SAAS;gBACzB,eAAe,EAAE,OAAO;aACzB,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QACD,IAAI,CAAC,OAAO,CAAC;YACX,GAAG,IAAI,CAAC,SAAS;YACjB,aAAa,EAAE,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,YAAY,CAAC;SAC/D,CAAC,CAAC;IACL,CAAC;IAED,4BAA4B;QAC1B,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO;QAC3B,MAAM,cAAc,GAClB,IAAI,CAAC,SAAS,CAAC,sBAAsB;YACrC,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC;QACvC,IAAI,cAAc,KAAK,SAAS;YAAE,OAAO;QACzC,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,MAAM,CACvD,CAAC,YAAY,EAAE,EAAE,CAAC,YAAY,CAAC,EAAE,KAAK,cAAc,CACrD,CAAC;QACF,IAAI,CAAC,aAAa,IAAI,CAAC,CAAC;QACxB,IAAI,CAAC,wBAAwB,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,kBAAkB,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,2BAA2B,GAAG,SAAS,CAAC;QAC7C,IAAI,CAAC,OAAO,CAAC;YACX,GAAG,IAAI,CAAC,SAAS;YACjB,aAAa;YACb,SAAS,EAAE,SAAS;YACpB,UAAU,EAAE,OAAO;YACnB,qBAAqB,EAAE,SAAS;YAChC,sBAAsB,EAAE,SAAS;YACjC,cAAc,EAAE,SAAS;YACzB,eAAe,EACb,aAAa,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAE,OAAiB,CAAC,CAAC,CAAE,MAAgB;SACtE,CAAC,CAAC;IACL,CAAC;IAED,cAAc,CAAC,QAAgB;QAC7B,OAAO,CAAC,IAAI,CAAC,SAAS,IAAI,QAAQ,KAAK,IAAI,CAAC,aAAa,CAAC;IAC5D,CAAC;IAED,mBAAmB,CAAC,QAAgB;QAClC,OAAO,CAAC,IAAI,CAAC,SAAS,IAAI,QAAQ,KAAK,IAAI,CAAC,kBAAkB,CAAC;IACjE,CAAC;IAED,OAAO,CAAC,QAAuC;QAC7C,IAAI,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC;YAAE,OAAO;QAClE,IAAI,CAAC,SAAS,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;QAC1C,KAAK,MAAM,YAAY,IAAI,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YAChD,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;IAED,aAAa,CAAC,YAAkC;QAC9C,IAAI,CAAC,YAAY,CAAC,MAAM;YAAE,OAAO;QACjC,IAAI,CAAC;YACH,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACxC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IAED,qBAAqB,CAAC,KAAc;QAClC,IAAI,CAAC;YACH,IAAI,CAAC,iBAAiB,EAAE,CAAC,KAAK,CAAC,CAAC;QAClC,CAAC;QAAC,MAAM,CAAC;YACP,qEAAqE;QACvE,CAAC;IACH,CAAC;CACF;AAED,MAAM,CAAC,MAAM,qCAAqC,GAAG,CACnD,OAA+C,EACd,EAAE,CACnC,IAAI,+BAA+B,CAAC,OAAO,CAAC,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- export { ChatClient, createChatClient, type ChatClientOptions, type ChatClientSubscription, type ChatSnapshotListener, type ChatClientUnhandledError, type ChatClientUnhandledErrorSource, } from "./chat-client.js";
2
- export { ConversationWorkspaceController, createConversationWorkspaceController, orderConversationsByUpdatedAt, type ConversationWorkspaceControllerOptions, type ConversationWorkspaceListStatus, type ConversationWorkspaceSelectionStatus, type ConversationWorkspaceSnapshot, type ConversationWorkspaceSubscription, type CreateWorkspaceConversationInput, } from "./conversation-workspace.js";
1
+ export { ChatClient, createChatClient, type ChatClientOptions, type ChatClientSubscription, type ChatSnapshotListener, type ChatSnapshotStateListener, type ChatClientUnhandledError, type ChatClientUnhandledErrorSource, } from "./chat-client.js";
2
+ export { ConversationWorkspaceController, createConversationWorkspaceController, orderConversationsByUpdatedAt, type ConversationWorkspaceControllerOptions, type ConversationWorkspaceListStatus, type ConversationWorkspaceSelectionStatus, type ConversationWorkspaceSnapshot, type ConversationWorkspaceSubscription, type CreateWorkspaceConversationInput, type RenameWorkspaceConversationInput, } from "./conversation-workspace.js";
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,KAAK,iBAAiB,EACtB,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EACzB,KAAK,wBAAwB,EAC7B,KAAK,8BAA8B,GACpC,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,+BAA+B,EAC/B,qCAAqC,EACrC,6BAA6B,EAC7B,KAAK,sCAAsC,EAC3C,KAAK,+BAA+B,EACpC,KAAK,oCAAoC,EACzC,KAAK,6BAA6B,EAClC,KAAK,iCAAiC,EACtC,KAAK,gCAAgC,GACtC,MAAM,6BAA6B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,KAAK,iBAAiB,EACtB,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EACzB,KAAK,yBAAyB,EAC9B,KAAK,wBAAwB,EAC7B,KAAK,8BAA8B,GACpC,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,+BAA+B,EAC/B,qCAAqC,EACrC,6BAA6B,EAC7B,KAAK,sCAAsC,EAC3C,KAAK,+BAA+B,EACpC,KAAK,oCAAoC,EACzC,KAAK,6BAA6B,EAClC,KAAK,iCAAiC,EACtC,KAAK,gCAAgC,EACrC,KAAK,gCAAgC,GACtC,MAAM,6BAA6B,CAAC"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,gBAAgB,GAMjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,+BAA+B,EAC/B,qCAAqC,EACrC,6BAA6B,GAO9B,MAAM,6BAA6B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,gBAAgB,GAOjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,+BAA+B,EAC/B,qCAAqC,EACrC,6BAA6B,GAQ9B,MAAM,6BAA6B,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import { type ChatError, type ChatSnapshot, type ChatUpdate } from "@turingfocus/chat-protocol";
2
2
  import { type TimelineState } from "./timeline.js";
3
3
  export interface SnapshotState {
4
+ readonly errorSequence: number;
4
5
  readonly snapshot: ChatSnapshot;
5
6
  readonly timeline: TimelineState;
6
7
  }
@@ -16,5 +17,6 @@ export declare const updateSnapshotState: (state: SnapshotState, changes: Partia
16
17
  export declare const rebaseSnapshotState: (baseline: SnapshotState, loaded: SnapshotState, current: SnapshotState) => SnapshotState;
17
18
  export declare const updateConversationId: (update: ChatUpdate) => string | undefined;
18
19
  export declare const applySnapshotUpdate: (state: SnapshotState, update: ChatUpdate) => SnapshotState;
20
+ export declare const applyRuntimeSnapshotError: (state: SnapshotState, error: ChatError, errorId: string) => SnapshotState;
19
21
  export declare const applySnapshotError: (state: SnapshotState, error: ChatError) => SnapshotState;
20
22
  //# sourceMappingURL=snapshot-state.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"snapshot-state.d.ts","sourceRoot":"","sources":["../src/snapshot-state.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,SAAS,EACd,KAAK,YAAY,EACjB,KAAK,UAAU,EAChB,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EAIL,KAAK,aAAa,EAEnB,MAAM,eAAe,CAAC;AAEvB,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;IAChC,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;CAClC;AAKD,eAAO,MAAM,mBAAmB,GAAI,UAAU,YAAY,KAAG,aAkB5D,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAC9B,OAAO,aAAa,EACpB,SAAS,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC,GAAG;IACjD,QAAQ,CAAC,QAAQ,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;CAC/C,KACA,aAQF,CAAC;AA6BF;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,GAC9B,UAAU,aAAa,EACvB,QAAQ,aAAa,EACrB,SAAS,aAAa,KACrB,aA+DF,CAAC;AAiHF,eAAO,MAAM,oBAAoB,GAC/B,QAAQ,UAAU,KACjB,MAAM,GAAG,SASX,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAC9B,OAAO,aAAa,EACpB,QAAQ,UAAU,KACjB,aA4EF,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAC7B,OAAO,aAAa,EACpB,OAAO,SAAS,KACf,aAKF,CAAC"}
1
+ {"version":3,"file":"snapshot-state.d.ts","sourceRoot":"","sources":["../src/snapshot-state.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,SAAS,EAEd,KAAK,YAAY,EACjB,KAAK,UAAU,EAChB,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EAIL,KAAK,aAAa,EAEnB,MAAM,eAAe,CAAC;AAEvB,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;IAChC,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;CAClC;AAKD,eAAO,MAAM,mBAAmB,GAAI,UAAU,YAAY,KAAG,aA6B5D,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAC9B,OAAO,aAAa,EACpB,SAAS,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC,GAAG;IACjD,QAAQ,CAAC,QAAQ,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;CAC/C,KACA,aAQF,CAAC;AA6BF;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,GAC9B,UAAU,aAAa,EACvB,QAAQ,aAAa,EACrB,SAAS,aAAa,KACrB,aAmHF,CAAC;AAkHF,eAAO,MAAM,oBAAoB,GAC/B,QAAQ,UAAU,KACjB,MAAM,GAAG,SAcX,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAC9B,OAAO,aAAa,EACpB,QAAQ,UAAU,KACjB,aA6FF,CAAC;AA2CF,eAAO,MAAM,yBAAyB,GACpC,OAAO,aAAa,EACpB,OAAO,SAAS,EAChB,SAAS,MAAM,KACd,aAmBF,CAAC;AA8DF,eAAO,MAAM,kBAAkB,GAC7B,OAAO,aAAa,EACpB,OAAO,SAAS,KACf,aAQF,CAAC"}
@@ -4,7 +4,12 @@ import { createTimelineState, findEventTimelineItem, rebaseTimelineState, upsert
4
4
  const freezeSnapshot = (snapshot) => Object.freeze(snapshot);
5
5
  export const createSnapshotState = (snapshot) => {
6
6
  const timeline = createTimelineState(snapshot.timeline);
7
+ const activeErrors = snapshot.activeErrors === undefined
8
+ ? undefined
9
+ : cloneImmutable(snapshot.activeErrors);
10
+ const projectedError = activeErrors === undefined ? snapshot.error : activeErrors.at(-1)?.error;
7
11
  return {
12
+ errorSequence: 0,
8
13
  timeline,
9
14
  snapshot: freezeSnapshot({
10
15
  conversation: cloneImmutable(snapshot.conversation),
@@ -15,9 +20,13 @@ export const createSnapshotState = (snapshot) => {
15
20
  ...(snapshot.pendingInteraction === undefined
16
21
  ? {}
17
22
  : { pendingInteraction: cloneImmutable(snapshot.pendingInteraction) }),
18
- ...(snapshot.error === undefined
23
+ ...(snapshot.lifecycle === undefined
19
24
  ? {}
20
- : { error: cloneImmutable(snapshot.error) }),
25
+ : { lifecycle: cloneImmutable(snapshot.lifecycle) }),
26
+ ...(activeErrors === undefined ? {} : { activeErrors }),
27
+ ...(projectedError === undefined
28
+ ? {}
29
+ : { error: cloneImmutable(projectedError) }),
21
30
  }),
22
31
  };
23
32
  };
@@ -28,7 +37,7 @@ export const updateSnapshotState = (state, changes) => {
28
37
  ...changes,
29
38
  timeline: timeline.items,
30
39
  });
31
- return { timeline, snapshot };
40
+ return { errorSequence: state.errorSequence, timeline, snapshot };
32
41
  };
33
42
  const rebaseValue = (baseline, loaded, current) => deepEqual(current, baseline) ? loaded : current;
34
43
  const interactionMetadataError = (conversationId) => cloneImmutable({
@@ -51,16 +60,35 @@ const hasConflictingInteractionMetadata = (existing, incoming) => hasSameInterac
51
60
  export const rebaseSnapshotState = (baseline, loaded, current) => {
52
61
  const timeline = rebaseTimelineState(baseline.timeline, loaded.timeline, current.timeline);
53
62
  const rebasedError = rebaseValue(baseline.snapshot.error, loaded.snapshot.error, current.snapshot.error);
63
+ const currentErrorIds = new Set(current.snapshot.activeErrors?.map(({ id }) => id) ?? []);
64
+ const resolvedBaselineErrorIds = new Set((baseline.snapshot.activeErrors ?? [])
65
+ .filter(({ id }) => !currentErrorIds.has(id))
66
+ .map(({ id }) => id));
67
+ const mergedErrors = new Map();
68
+ for (const occurrence of loaded.snapshot.activeErrors ?? []) {
69
+ if (occurrence.scope.kind !== "subscription" &&
70
+ !resolvedBaselineErrorIds.has(occurrence.id)) {
71
+ mergedErrors.set(occurrence.id, occurrence);
72
+ }
73
+ }
74
+ for (const occurrence of current.snapshot.activeErrors ?? []) {
75
+ if (occurrence.scope.kind !== "subscription") {
76
+ mergedErrors.set(occurrence.id, occurrence);
77
+ }
78
+ }
79
+ const activeErrors = loaded.snapshot.activeErrors === undefined &&
80
+ current.snapshot.activeErrors === undefined
81
+ ? undefined
82
+ : Object.freeze([...mergedErrors.values()]);
83
+ const retainedError = activeErrors !== undefined ? activeErrors.at(-1)?.error : rebasedError;
54
84
  const pendingWasUnchanged = deepEqual(current.snapshot.pendingInteraction, baseline.snapshot.pendingInteraction);
55
85
  const hasLoadedInteractionConflict = pendingWasUnchanged &&
56
86
  hasConflictingInteractionMetadata(current.snapshot.pendingInteraction, loaded.snapshot.pendingInteraction);
57
87
  const pendingInteraction = hasLoadedInteractionConflict
58
88
  ? current.snapshot.pendingInteraction
59
89
  : rebaseValue(baseline.snapshot.pendingInteraction, loaded.snapshot.pendingInteraction, current.snapshot.pendingInteraction);
60
- const error = hasLoadedInteractionConflict
61
- ? interactionMetadataError(current.snapshot.conversation.id)
62
- : rebasedError;
63
90
  const rebased = {
91
+ errorSequence: Math.max(baseline.errorSequence, loaded.errorSequence, current.errorSequence),
64
92
  timeline,
65
93
  snapshot: freezeSnapshot({
66
94
  conversation: rebaseValue(baseline.snapshot.conversation, loaded.snapshot.conversation, current.snapshot.conversation),
@@ -68,15 +96,26 @@ export const rebaseSnapshotState = (baseline, loaded, current) => {
68
96
  run: rebaseValue(baseline.snapshot.run, loaded.snapshot.run, current.snapshot.run),
69
97
  capabilities: rebaseValue(baseline.snapshot.capabilities, loaded.snapshot.capabilities, current.snapshot.capabilities),
70
98
  pageInfo: rebaseValue(baseline.snapshot.pageInfo, loaded.snapshot.pageInfo, current.snapshot.pageInfo),
99
+ ...(loaded.snapshot.lifecycle === undefined
100
+ ? {}
101
+ : { lifecycle: loaded.snapshot.lifecycle }),
102
+ ...(activeErrors === undefined ? {} : { activeErrors }),
71
103
  ...(pendingInteraction === undefined ? {} : { pendingInteraction }),
72
- ...(error === undefined ? {} : { error }),
104
+ ...(retainedError === undefined ? {} : { error: retainedError }),
73
105
  }),
74
106
  };
75
- if (deepEqual(rebased.snapshot, current.snapshot))
107
+ const result = hasLoadedInteractionConflict
108
+ ? applyRuntimeSnapshotError(rebased, interactionMetadataError(current.snapshot.conversation.id), `runtime:interaction:${current.snapshot.pendingInteraction?.requestId ?? "unknown"}:${current.snapshot.pendingInteraction?.revision ?? 0}`)
109
+ : rebased;
110
+ if (result.errorSequence === current.errorSequence &&
111
+ deepEqual(result.snapshot, current.snapshot)) {
76
112
  return current;
77
- if (deepEqual(rebased.snapshot, loaded.snapshot))
113
+ }
114
+ if (result.errorSequence === loaded.errorSequence &&
115
+ deepEqual(result.snapshot, loaded.snapshot)) {
78
116
  return loaded;
79
- return rebased;
117
+ }
118
+ return result;
80
119
  };
81
120
  const eventMetadataError = (conversationId) => cloneImmutable({
82
121
  code: "validation",
@@ -151,10 +190,7 @@ const applyTransition = (state, update) => {
151
190
  if (existing !== undefined &&
152
191
  (existing.kind !== "agent-event" ||
153
192
  !hasCompatibleAgentEventMetadata(existing, update))) {
154
- const error = eventMetadataError(update.conversationId);
155
- return deepEqual(state.snapshot.error, error)
156
- ? state
157
- : updateSnapshotState(state, { error });
193
+ return applyRuntimeSnapshotError(state, eventMetadataError(update.conversationId), `runtime:event-metadata:${update.event.id}`);
158
194
  }
159
195
  const event = buildAgentEvent(update, existing);
160
196
  const timeline = upsertTimelineItem(state.timeline, event);
@@ -169,8 +205,12 @@ export const updateConversationId = (update) => {
169
205
  if (update.kind === "conversation.upsert")
170
206
  return update.conversation.id;
171
207
  if (update.kind === "error.reported") {
172
- return update.conversationId ?? update.error.conversationId;
208
+ return (update.conversationId ??
209
+ update.error.conversationId ??
210
+ (update.scope?.kind === "conversation" ? update.scope.id : undefined));
173
211
  }
212
+ if (update.kind === "error.resolved")
213
+ return update.conversationId;
174
214
  return update.conversationId;
175
215
  };
176
216
  export const applySnapshotUpdate = (state, update) => {
@@ -182,12 +222,16 @@ export const applySnapshotUpdate = (state, update) => {
182
222
  }
183
223
  switch (update.kind) {
184
224
  case "snapshot.replace": {
185
- const replacement = createSnapshotState(update.snapshot);
225
+ const loadedReplacement = createSnapshotState(update.snapshot);
226
+ const replacement = {
227
+ ...loadedReplacement,
228
+ errorSequence: state.errorSequence,
229
+ };
186
230
  if (hasConflictingInteractionMetadata(state.snapshot.pendingInteraction, replacement.snapshot.pendingInteraction)) {
187
- return updateSnapshotState(replacement, {
231
+ const guarded = updateSnapshotState(replacement, {
188
232
  pendingInteraction: state.snapshot.pendingInteraction,
189
- error: interactionMetadataError(activeConversationId),
190
233
  });
234
+ return applyRuntimeInteractionError(guarded, interactionMetadataError(activeConversationId), state.snapshot.pendingInteraction);
191
235
  }
192
236
  return deepEqual(replacement.snapshot, state.snapshot)
193
237
  ? state
@@ -222,20 +266,113 @@ export const applySnapshotUpdate = (state, update) => {
222
266
  case "interaction.replace": {
223
267
  const pendingInteraction = cloneImmutable(update.interaction ?? undefined);
224
268
  if (hasConflictingInteractionMetadata(state.snapshot.pendingInteraction, pendingInteraction)) {
225
- return applySnapshotError(state, interactionMetadataError(activeConversationId));
269
+ return applyRuntimeInteractionError(state, interactionMetadataError(activeConversationId), state.snapshot.pendingInteraction);
226
270
  }
227
271
  return deepEqual(pendingInteraction, state.snapshot.pendingInteraction)
228
272
  ? state
229
273
  : updateSnapshotState(state, { pendingInteraction });
230
274
  }
275
+ case "lifecycle.changed": {
276
+ const lifecycle = cloneImmutable(update.lifecycle);
277
+ return deepEqual(lifecycle, state.snapshot.lifecycle)
278
+ ? state
279
+ : updateSnapshotState(state, { lifecycle });
280
+ }
231
281
  case "error.reported":
232
- return applySnapshotError(state, update.error);
282
+ return applySnapshotReportedError(state, update);
283
+ case "error.resolved":
284
+ return resolveSnapshotError(state, update.errorId);
285
+ }
286
+ };
287
+ const occurrenceOf = (update) => {
288
+ if (update.errorId === undefined ||
289
+ update.source === undefined ||
290
+ update.scope === undefined ||
291
+ update.generation === undefined) {
292
+ return undefined;
293
+ }
294
+ return cloneImmutable({
295
+ id: update.errorId,
296
+ error: update.error,
297
+ source: update.source,
298
+ scope: update.scope,
299
+ generation: update.generation,
300
+ });
301
+ };
302
+ const existingErrorOccurrences = (state) => {
303
+ if (state.snapshot.activeErrors !== undefined) {
304
+ return state.snapshot.activeErrors;
233
305
  }
306
+ if (state.snapshot.error === undefined)
307
+ return [];
308
+ return [
309
+ cloneImmutable({
310
+ id: "runtime:legacy-snapshot",
311
+ error: state.snapshot.error,
312
+ source: "runtime",
313
+ scope: {
314
+ kind: "conversation",
315
+ id: state.snapshot.conversation.id,
316
+ },
317
+ generation: state.snapshot.lifecycle?.generation ?? 0,
318
+ }),
319
+ ];
320
+ };
321
+ export const applyRuntimeSnapshotError = (state, error, errorId) => {
322
+ const occurrence = cloneImmutable({
323
+ id: errorId,
324
+ error,
325
+ source: "runtime",
326
+ scope: {
327
+ kind: "conversation",
328
+ id: state.snapshot.conversation.id,
329
+ },
330
+ generation: state.snapshot.lifecycle?.generation ?? 0,
331
+ });
332
+ const activeErrors = Object.freeze([
333
+ ...existingErrorOccurrences(state).filter(({ id }) => id !== occurrence.id),
334
+ occurrence,
335
+ ]);
336
+ return updateSnapshotState(state, {
337
+ activeErrors,
338
+ error: occurrence.error,
339
+ });
340
+ };
341
+ const applyRuntimeInteractionError = (state, error, interaction) => applyRuntimeSnapshotError(state, error, `runtime:interaction:${interaction?.requestId ?? "unknown"}:${interaction?.revision ?? 0}`);
342
+ const applySnapshotReportedError = (state, update) => {
343
+ const occurrence = occurrenceOf(update);
344
+ if (occurrence === undefined) {
345
+ const errorSequence = state.errorSequence + 1;
346
+ const next = applyRuntimeSnapshotError(state, update.error, `runtime:legacy:${state.snapshot.lifecycle?.generation ?? 0}:${errorSequence}`);
347
+ return { ...next, errorSequence };
348
+ }
349
+ const activeErrors = Object.freeze([
350
+ ...existingErrorOccurrences(state).filter((active) => active.id !== occurrence.id),
351
+ occurrence,
352
+ ]);
353
+ if (deepEqual(activeErrors, state.snapshot.activeErrors) &&
354
+ deepEqual(occurrence.error, state.snapshot.error)) {
355
+ return state;
356
+ }
357
+ return updateSnapshotState(state, {
358
+ activeErrors,
359
+ error: occurrence.error,
360
+ });
361
+ };
362
+ const resolveSnapshotError = (state, errorId) => {
363
+ const current = state.snapshot.activeErrors;
364
+ if (current === undefined || !current.some((error) => error.id === errorId)) {
365
+ return state;
366
+ }
367
+ const activeErrors = Object.freeze(current.filter((error) => error.id !== errorId));
368
+ return updateSnapshotState(state, {
369
+ activeErrors,
370
+ error: activeErrors.at(-1)?.error,
371
+ });
234
372
  };
235
373
  export const applySnapshotError = (state, error) => {
236
- const immutableError = cloneImmutable(error);
237
- return deepEqual(immutableError, state.snapshot.error)
238
- ? state
239
- : updateSnapshotState(state, { error: immutableError });
374
+ const errorSequence = state.errorSequence + 1;
375
+ const next = applyRuntimeSnapshotError(state, error, `runtime:legacy-observer:${state.snapshot.lifecycle?.generation ?? 0}:${errorSequence}`);
376
+ return { ...next, errorSequence };
240
377
  };
241
378
  //# sourceMappingURL=snapshot-state.js.map