@turingfocus/chat-runtime 0.5.0 → 0.6.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.
@@ -1 +1 @@
1
- {"version":3,"file":"chat-client.d.ts","sourceRoot":"","sources":["../src/chat-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAQL,KAAK,sBAAsB,EAC3B,KAAK,wBAAwB,EAE7B,KAAK,WAAW,EAChB,KAAK,YAAY,EAEjB,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,uBAAuB,EAC5B,KAAK,qBAAqB,EAC1B,KAAK,aAAa,EAElB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,KAAK,aAAa,EAClB,KAAK,eAAe,EACrB,MAAM,4BAA4B,CAAC;AAiBpC,OAAO,EAEL,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,EAC1B,MAAM,qBAAqB,CAAC;AAG7B,MAAM,WAAW,iBAAiB;IAChC,6EAA6E;IAC7E,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;IAC9B,gFAAgF;IAChF,QAAQ,CAAC,gBAAgB,CAAC,EACxB,CAAC,CAAC,OAAO,EAAE,wBAAwB,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;CAC7D;AAED,MAAM,MAAM,8BAA8B,GACxC,UAAU,GAAG,sBAAsB,CAAC;AAEtC,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7C,QAAQ,CAAC,MAAM,EAAE,8BAA8B,CAAC;CACjD;AAED,MAAM,MAAM,oBAAoB,GAAG,gBAAgB,CAAC;AACpD,MAAM,MAAM,sBAAsB,GAAG,oBAAoB,CAAC;AAuE1D;;;GAGG;AACH,qBAAa,UAAU;;gBAkBT,OAAO,EAAE,iBAAiB;IAUtC,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,WAAW,IAAI,YAAY,GAAG,IAAI;IAIlC,SAAS,CAAC,QAAQ,EAAE,oBAAoB,GAAG,sBAAsB;IAIjE;;;;OAIG;IACH,6BAA6B,IAAI,IAAI;IAO/B,iBAAiB,CACrB,KAAK,EAAE,sBAAsB,GAC5B,OAAO,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;IAkBrC,kBAAkB,CACtB,KAAK,EAAE,uBAAuB,GAC7B,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;IA2BjC,gBAAgB,CACpB,KAAK,EAAE,qBAAqB,GAC3B,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;IAkJjC,QAAQ,CACZ,KAAK,EAAE,aAAa,GACnB,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;IAiBpC,iBAAiB,CACrB,KAAK,EAAE,sBAAsB,GAC5B,OAAO,CAAC,aAAa,CAAC,wBAAwB,CAAC,CAAC;IAkI7C,SAAS,CACb,KAAK,EAAE,iBAAiB,GACvB,OAAO,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC;IAwC9C,OAAO,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;CA0UvD;AAED,eAAO,MAAM,gBAAgB,GAAI,SAAS,iBAAiB,KAAG,UACrC,CAAC"}
1
+ {"version":3,"file":"chat-client.d.ts","sourceRoot":"","sources":["../src/chat-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAQL,KAAK,sBAAsB,EAC3B,KAAK,wBAAwB,EAG7B,KAAK,WAAW,EAChB,KAAK,YAAY,EAEjB,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,uBAAuB,EAC5B,KAAK,qBAAqB,EAC1B,KAAK,aAAa,EAElB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,KAAK,aAAa,EAClB,KAAK,eAAe,EACrB,MAAM,4BAA4B,CAAC;AAiBpC,OAAO,EAEL,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,EAC1B,MAAM,qBAAqB,CAAC;AAG7B,MAAM,WAAW,iBAAiB;IAChC,6EAA6E;IAC7E,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;IAC9B,gFAAgF;IAChF,QAAQ,CAAC,gBAAgB,CAAC,EACxB,CAAC,CAAC,OAAO,EAAE,wBAAwB,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;CAC7D;AAED,MAAM,MAAM,8BAA8B,GACxC,UAAU,GAAG,sBAAsB,CAAC;AAEtC,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7C,QAAQ,CAAC,MAAM,EAAE,8BAA8B,CAAC;CACjD;AAED,MAAM,MAAM,oBAAoB,GAAG,gBAAgB,CAAC;AACpD,MAAM,MAAM,sBAAsB,GAAG,oBAAoB,CAAC;AA4E1D;;;GAGG;AACH,qBAAa,UAAU;;gBAoBT,OAAO,EAAE,iBAAiB;IAUtC,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,WAAW,IAAI,YAAY,GAAG,IAAI;IAIlC,SAAS,CAAC,QAAQ,EAAE,oBAAoB,GAAG,sBAAsB;IAIjE;;;;OAIG;IACH,6BAA6B,IAAI,IAAI;IAO/B,iBAAiB,CACrB,KAAK,EAAE,sBAAsB,GAC5B,OAAO,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;IAkBrC,kBAAkB,CACtB,KAAK,EAAE,uBAAuB,GAC7B,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;IA2BjC,gBAAgB,CACpB,KAAK,EAAE,qBAAqB,GAC3B,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;IAkJjC,QAAQ,CACZ,KAAK,EAAE,aAAa,GACnB,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;IAiBpC,iBAAiB,CACrB,KAAK,EAAE,sBAAsB,GAC5B,OAAO,CAAC,aAAa,CAAC,wBAAwB,CAAC,CAAC;IAkI7C,SAAS,CACb,KAAK,EAAE,iBAAiB,GACvB,OAAO,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC;IAwC9C,OAAO,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;CA6avD;AAED,eAAO,MAAM,gBAAgB,GAAI,SAAS,iBAAiB,KAAG,UACrC,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { answerInteractionInputSchema, createConversationInputSchema, createGatewayDeadlineExceededError, getAskUserInteractionAnswerValidationError, isGatewayDeadlineExceeded, isGatewayOperationSupported, listConversationsInputSchema, } from "@turingfocus/chat-protocol";
2
2
  import { createGatewayNotificationQueue, } from "./gateway-notification-queue.js";
3
3
  import { cloneImmutable, deepEqual } from "./immutable.js";
4
- import { applySnapshotError, applySnapshotUpdate, createSnapshotState, rebaseSnapshotState, updateConversationId, updateSnapshotState, } from "./snapshot-state.js";
4
+ import { applySnapshotUpdate, applyRuntimeSnapshotError, createSnapshotState, rebaseSnapshotState, updateConversationId, updateSnapshotState, } from "./snapshot-state.js";
5
5
  import { SnapshotStore, } from "./snapshot-store.js";
6
6
  import { mergeHistoryTimeline } from "./timeline.js";
7
7
  const runtimeFailure = (code, message, conversationId) => ({
@@ -45,6 +45,7 @@ export class ChatClient {
45
45
  #snapshotStore;
46
46
  #disposed = false;
47
47
  #disposePromise;
48
+ #errorSequence = 0;
48
49
  #conversationEpoch = 0;
49
50
  #generation = 0;
50
51
  #gatewaySubscription;
@@ -53,6 +54,7 @@ export class ChatClient {
53
54
  #supersededInteractionAnswers = new Set();
54
55
  #historyRequestId = 0;
55
56
  #loadRequestId = 0;
57
+ #structuredGatewayErrorMarker;
56
58
  #pendingLoadRequestId;
57
59
  #pendingHandoff;
58
60
  constructor(options) {
@@ -234,7 +236,7 @@ export class ChatClient {
234
236
  const generation = this.#generation;
235
237
  const result = await this.#gateway.sendText(input);
236
238
  if (!result.ok)
237
- this.#reportError(result.error, generation);
239
+ this.#reportError(result.error, generation, "command");
238
240
  return result;
239
241
  }
240
242
  async answerInteraction(input) {
@@ -287,7 +289,7 @@ export class ChatClient {
287
289
  }
288
290
  if (!result.ok) {
289
291
  if (hasSameInteractionIdentity(currentPending, pending)) {
290
- this.#reportError(result.error, this.#generation);
292
+ this.#reportError(result.error, this.#generation, "command");
291
293
  }
292
294
  return result;
293
295
  }
@@ -328,7 +330,7 @@ export class ChatClient {
328
330
  this.#snapshotStore.state?.snapshot.run?.id === runId &&
329
331
  this.#snapshotStore.state.snapshot.conversation.id ===
330
332
  input.conversationId) {
331
- this.#reportError(result.error, generation);
333
+ this.#reportError(result.error, generation, "command");
332
334
  }
333
335
  return result;
334
336
  }
@@ -383,7 +385,7 @@ export class ChatClient {
383
385
  baselineCursor) {
384
386
  return runtimeFailure("conflict", "History load was superseded", input.conversationId);
385
387
  }
386
- this.#reportError(loaded.error, generation);
388
+ this.#reportError(loaded.error, generation, "command");
387
389
  return loaded;
388
390
  }
389
391
  if (this.#disposed ||
@@ -422,6 +424,18 @@ export class ChatClient {
422
424
  if (this.#snapshotStore.state?.snapshot.conversation.id !== conversationId) {
423
425
  return runtimeFailure("conflict", "Conversation is not active in this ChatClient", conversationId);
424
426
  }
427
+ const lifecycle = this.#snapshotStore.state.snapshot.lifecycle;
428
+ if (lifecycle !== undefined &&
429
+ (lifecycle.status !== "active" ||
430
+ lifecycle.recovery?.complete === false ||
431
+ ((lifecycle.reconnectAttempt ?? 0) > 0 &&
432
+ lifecycle.recovery?.complete !== true))) {
433
+ return runtimeFailure(lifecycle.status === "auth-required"
434
+ ? "authentication"
435
+ : lifecycle.status === "subscription-failed"
436
+ ? "network"
437
+ : "conflict", `Conversation is not operable while lifecycle is ${lifecycle.status}`, conversationId);
438
+ }
425
439
  return { ok: true, value: this.#snapshotStore.state.snapshot };
426
440
  }
427
441
  #subscribeGateway(input, notificationQueue) {
@@ -448,13 +462,24 @@ export class ChatClient {
448
462
  }
449
463
  #captureHandoff(notification, generation) {
450
464
  const handoff = this.#pendingHandoff;
465
+ const state = this.#snapshotStore.state;
451
466
  if (handoff === undefined ||
452
467
  handoff.sourceGeneration !== generation ||
453
- this.#snapshotStore.state?.snapshot.conversation.id !==
454
- handoff.conversationId) {
468
+ state?.snapshot.conversation.id !== handoff.conversationId) {
455
469
  return;
456
470
  }
457
471
  if (notification.kind === "update") {
472
+ if (notification.update.kind === "lifecycle.changed" ||
473
+ (notification.update.kind === "error.reported" &&
474
+ notification.update.scope?.kind === "subscription")) {
475
+ return;
476
+ }
477
+ if (notification.update.kind === "error.resolved") {
478
+ const errorId = notification.update.errorId;
479
+ const occurrence = state.snapshot.activeErrors?.find(({ id }) => id === errorId);
480
+ if (occurrence?.scope.kind === "subscription")
481
+ return;
482
+ }
458
483
  const targetConversationId = updateConversationId(notification.update);
459
484
  if (targetConversationId !== undefined &&
460
485
  targetConversationId !== handoff.conversationId) {
@@ -462,13 +487,28 @@ export class ChatClient {
462
487
  }
463
488
  }
464
489
  if (notification.kind === "error" &&
465
- notification.error.conversationId !== undefined &&
466
- notification.error.conversationId !== handoff.conversationId) {
490
+ notification.error.conversationId !== undefined) {
467
491
  return;
468
492
  }
469
493
  handoff.enqueue(notification);
470
494
  }
471
495
  #applyGatewayUpdate(update, generation) {
496
+ if (update.kind === "error.reported" &&
497
+ update.errorId !== undefined &&
498
+ update.source !== undefined &&
499
+ update.scope !== undefined &&
500
+ update.generation !== undefined) {
501
+ const marker = { error: update.error, generation };
502
+ this.#structuredGatewayErrorMarker = marker;
503
+ void Promise.resolve().then(() => {
504
+ if (this.#structuredGatewayErrorMarker === marker) {
505
+ this.#structuredGatewayErrorMarker = undefined;
506
+ }
507
+ });
508
+ }
509
+ else {
510
+ this.#structuredGatewayErrorMarker = undefined;
511
+ }
472
512
  this.#captureHandoff({ kind: "update", update }, generation);
473
513
  if (this.#disposed ||
474
514
  generation !== this.#generation ||
@@ -484,10 +524,10 @@ export class ChatClient {
484
524
  if (candidateInteraction !== undefined &&
485
525
  !hasSameInteractionIdentity(currentInteraction, candidateInteraction) &&
486
526
  this.#retiredInteractionIdentities.has(interactionIdentityKey(candidateInteraction))) {
487
- return updateSnapshotState(candidate, {
527
+ const guarded = updateSnapshotState(candidate, {
488
528
  pendingInteraction: currentInteraction,
489
- error: retiredInteractionError(current.snapshot.conversation.id),
490
529
  });
530
+ return applyRuntimeSnapshotError(guarded, retiredInteractionError(current.snapshot.conversation.id), `runtime:retired-interaction:${candidateInteraction.requestId}:${candidateInteraction.revision}`);
491
531
  }
492
532
  if (currentInteraction !== undefined &&
493
533
  !hasSameInteractionIdentity(currentInteraction, candidateInteraction)) {
@@ -514,10 +554,15 @@ export class ChatClient {
514
554
  }
515
555
  }
516
556
  #applyGatewayError(error, generation) {
557
+ const marker = this.#structuredGatewayErrorMarker;
558
+ this.#structuredGatewayErrorMarker = undefined;
559
+ if (marker?.generation === generation && deepEqual(marker.error, error)) {
560
+ return;
561
+ }
517
562
  this.#captureHandoff({ kind: "error", error }, generation);
518
563
  this.#reportError(error, generation);
519
564
  }
520
- #reportError(error, generation) {
565
+ #reportError(error, generation, source = "runtime") {
521
566
  if (this.#disposed ||
522
567
  generation !== this.#generation ||
523
568
  this.#snapshotStore.state === null ||
@@ -527,7 +572,41 @@ export class ChatClient {
527
572
  return;
528
573
  }
529
574
  const state = this.#snapshotStore.latestState();
530
- this.#snapshotStore.commit(applySnapshotError(state, error));
575
+ const immutableError = cloneImmutable(error);
576
+ const errorId = `runtime:${generation}:error:${++this.#errorSequence}`;
577
+ const existingOccurrences = state.snapshot.activeErrors ??
578
+ (state.snapshot.error === undefined
579
+ ? []
580
+ : [
581
+ cloneImmutable({
582
+ id: "runtime:legacy-snapshot",
583
+ error: state.snapshot.error,
584
+ source: "runtime",
585
+ scope: {
586
+ kind: "conversation",
587
+ id: state.snapshot.conversation.id,
588
+ },
589
+ generation: state.snapshot.lifecycle?.generation ?? 0,
590
+ }),
591
+ ]);
592
+ const occurrence = cloneImmutable({
593
+ id: errorId,
594
+ error: immutableError,
595
+ source,
596
+ scope: source === "command"
597
+ ? { kind: "command", id: errorId }
598
+ : immutableError.conversationId === undefined
599
+ ? { kind: "global" }
600
+ : {
601
+ kind: "conversation",
602
+ id: immutableError.conversationId,
603
+ },
604
+ generation,
605
+ });
606
+ this.#snapshotStore.commit(updateSnapshotState(state, {
607
+ activeErrors: Object.freeze([...existingOccurrences, occurrence]),
608
+ error: occurrence.error,
609
+ }));
531
610
  }
532
611
  #reportUnhandledError(failure) {
533
612
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"chat-client.js","sourceRoot":"","sources":["../src/chat-client.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,4BAA4B,EAC5B,6BAA6B,EAC7B,kCAAkC,EAClC,0CAA0C,EAC1C,yBAAyB,EACzB,2BAA2B,EAC3B,4BAA4B,GAmB7B,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EACL,8BAA8B,GAG/B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EAEnB,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,aAAa,GAGd,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AA8BrD,MAAM,cAAc,GAAG,CACrB,IAAuB,EACvB,OAAe,EACf,cAAuB,EACL,EAAE,CAAC,CAAC;IACtB,EAAE,EAAE,KAAK;IACT,KAAK,EAAE,cAAc,CAAC;QACpB,IAAI;QACJ,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;AAOH,MAAM,kCAAkC,GAAG,GAAG,CAAC;AAE/C,MAAM,sBAAsB,GAAG,CAAC,EAC9B,SAAS,EACT,QAAQ,GACY,EAAU,EAAE,CAChC,GAAG,SAAS,CAAC,MAAM,IAAI,SAAS,IAAI,QAAQ,CAAC,MAAM,IAAI,QAAQ,EAAE,CAAC;AAEpE,MAAM,4BAA4B,GAAG,CACnC,iBAAyB,EACzB,cAAsB,EACtB,QAA6B,EACrB,EAAE,CACV,GAAG,iBAAiB,IAAI,cAAc,CAAC,MAAM,IAAI,cAAc,IAAI,sBAAsB,CAAC,QAAQ,CAAC,EAAE,CAAC;AAExG,MAAM,0BAA0B,GAAG,CACjC,IAAqC,EACrC,KAAsC,EAC7B,EAAE;IACX,IAAI,IAAI,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,IAAI,KAAK,KAAK,CAAC;IACrE,OAAO,IAAI,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,CAAC;AAChF,CAAC,CAAC;AAEF,MAAM,uBAAuB,GAAG,CAAC,cAAsB,EAAa,EAAE,CACpE,cAAc,CAAC;IACb,IAAI,EAAE,UAAU;IAChB,cAAc;IACd,OAAO,EAAE,4DAA4D;IACrE,SAAS,EAAE,KAAK;CACjB,CAAC,CAAC;AAEL,MAAM,UAAU,GAAG,KAAK,EACtB,OAAsB,EACtB,OAAiC,EAClB,EAAE;IACjB,IAAI,CAAC;QACH,MAAM,OAAO,EAAE,CAAC;IAClB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,CAAC;IACjB,CAAC;AACH,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,OAAO,UAAU;IACZ,QAAQ,CAAc;IACtB,iBAAiB,CACkC;IACnD,cAAc,CAAgB;IACvC,SAAS,GAAG,KAAK,CAAC;IAClB,eAAe,CAA4B;IAC3C,kBAAkB,GAAG,CAAC,CAAC;IACvB,WAAW,GAAG,CAAC,CAAC;IAChB,oBAAoB,CAAkC;IAC7C,2BAA2B,GAAG,IAAI,GAAG,EAAU,CAAC;IAChD,6BAA6B,GAAG,IAAI,GAAG,EAAU,CAAC;IAClD,6BAA6B,GAAG,IAAI,GAAG,EAAU,CAAC;IAC3D,iBAAiB,GAAG,CAAC,CAAC;IACtB,cAAc,GAAG,CAAC,CAAC;IACnB,qBAAqB,CAAqB;IAC1C,eAAe,CAA6B;IAE5C,YAAY,OAA0B;QACpC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;QAChC,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC;QAClD,IAAI,CAAC,cAAc,GAAG,IAAI,aAAa,CAAC;YACtC,eAAe,EAAE,CAAC,KAAK,EAAE,EAAE;gBACzB,IAAI,CAAC,qBAAqB,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;YAC5D,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;IAC3C,CAAC;IAED,SAAS,CAAC,QAA8B;QACtC,OAAO,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACjD,CAAC;IAED;;;;OAIG;IACH,6BAA6B;QAC3B,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,qBAAqB,KAAK,SAAS;YAAE,OAAO;QACvE,IAAI,CAAC,cAAc,IAAI,CAAC,CAAC;QACzB,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC;QACvC,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,KAA6B;QAE7B,MAAM,MAAM,GAAG,4BAA4B,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC7D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,cAAc,CAAC,YAAY,EAAE,oCAAoC,CAAC,CAAC;QAC5E,CAAC;QACD,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,OAAO,cAAc,CAAC,UAAU,EAAE,sCAAsC,CAAC,CAAC;QAC5E,CAAC;QACD,IAAI,yBAAyB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3C,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,kCAAkC,EAAE,EAAE,CAAC;QACpE,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAClE,OAAO,IAAI,CAAC,SAAS;YACnB,CAAC,CAAC,cAAc,CAAC,UAAU,EAAE,qCAAqC,CAAC;YACnE,CAAC,CAAC,MAAM,CAAC;IACb,CAAC;IAED,KAAK,CAAC,kBAAkB,CACtB,KAA8B;QAE9B,MAAM,MAAM,GAAG,6BAA6B,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC9D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,cAAc,CACnB,YAAY,EACZ,wCAAwC,CACzC,CAAC;QACJ,CAAC;QACD,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,OAAO,cAAc,CAAC,UAAU,EAAE,sCAAsC,CAAC,CAAC;QAC5E,CAAC;QACD,IAAI,yBAAyB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3C,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,kCAAkC,EAAE,EAAE,CAAC;QACpE,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;YACnD,OAAO,cAAc,CACnB,aAAa,EACb,sCAAsC,CACvC,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACnE,OAAO,IAAI,CAAC,SAAS;YACnB,CAAC,CAAC,cAAc,CAAC,UAAU,EAAE,sCAAsC,CAAC;YACpE,CAAC,CAAC,MAAM,CAAC;IACb,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,KAA4B;QAE5B,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,OAAO,cAAc,CACnB,UAAU,EACV,sCAAsC,EACtC,KAAK,CAAC,cAAc,CACrB,CAAC;QACJ,CAAC;QACD,IAAI,KAAK,CAAC,cAAc,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QAExE,MAAM,SAAS,GAAG,EAAE,IAAI,CAAC,cAAc,CAAC;QACxC,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,OAAO,cAAc,CACnB,UAAU,EACV,kCAAkC,EAClC,KAAK,CAAC,cAAc,CACrB,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC;QAEvC,MAAM,iBAAiB,GAAG,8BAA8B,CACtD,CAAC,YAAY,EAAE,UAAU,EAAE,EAAE;YAC3B,IAAI,YAAY,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACnC,IAAI,CAAC,mBAAmB,CAAC,YAAY,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;YAC5D,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC,CACF,CAAC;QACF,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;QAC3C,IAAI,QAAQ,EAAE,QAAQ,CAAC,YAAY,CAAC,EAAE,KAAK,KAAK,CAAC,cAAc,EAAE,CAAC;YAChE,IAAI,CAAC,eAAe,GAAG;gBACrB,QAAQ;gBACR,cAAc,EAAE,KAAK,CAAC,cAAc;gBACpC,OAAO,EAAE,iBAAiB,CAAC,OAAO;gBAClC,SAAS;gBACT,gBAAgB,EAAE,IAAI,CAAC,WAAW;aACnC,CAAC;QACJ,CAAC;QACD,0EAA0E;QAC1E,qEAAqE;QACrE,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC;QAC1E,IAAI,IAAI,CAAC,SAAS,IAAI,SAAS,KAAK,IAAI,CAAC,cAAc,EAAE,CAAC;YACxD,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;YAClC,MAAM,IAAI,CAAC,2BAA2B,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YAC1D,OAAO,cAAc,CACnB,UAAU,EACV,kCAAkC,EAClC,KAAK,CAAC,cAAc,CACrB,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAC3D,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;YAClC,MAAM,IAAI,CAAC,2BAA2B,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YAC1D,IAAI,IAAI,CAAC,SAAS,IAAI,SAAS,KAAK,IAAI,CAAC,cAAc,EAAE,CAAC;gBACxD,OAAO,cAAc,CACnB,UAAU,EACV,kCAAkC,EAClC,KAAK,CAAC,cAAc,CACrB,CAAC;YACJ,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,IAAI,IAAI,CAAC,SAAS,IAAI,SAAS,KAAK,IAAI,CAAC,cAAc,EAAE,CAAC;YACxD,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;YAClC,MAAM,IAAI,CAAC,2BAA2B,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YAC1D,OAAO,cAAc,CACnB,UAAU,EACV,kCAAkC,EAClC,KAAK,CAAC,cAAc,CACrB,CAAC;QACJ,CAAC;QACD,IAAI,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,KAAK,KAAK,CAAC,cAAc,EAAE,CAAC;YAC1D,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;YAClC,MAAM,IAAI,CAAC,2BAA2B,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YAC1D,OAAO,cAAc,CACnB,YAAY,EACZ,0DAA0D,EAC1D,KAAK,CAAC,cAAc,CACrB,CAAC;QACJ,CAAC;QACD,IAAI,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,WAAW,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;YAC5D,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;YAClC,IAAI,IAAI,CAAC,SAAS,IAAI,SAAS,KAAK,IAAI,CAAC,cAAc,EAAE,CAAC;gBACxD,OAAO,cAAc,CACnB,UAAU,EACV,kCAAkC,EAClC,KAAK,CAAC,cAAc,CACrB,CAAC;YACJ,CAAC;YACD,OAAO,UAAU,CAAC;QACpB,CAAC;QACD,IAAI,qBAAqB,GAAG,KAAK,CAAC;QAClC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;YAC3C,MAAM,IAAI,CAAC,2BAA2B,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YAC1D,qBAAqB,GAAG,IAAI,CAAC;QAC/B,CAAC;QACD,IAAI,IAAI,CAAC,SAAS,IAAI,SAAS,KAAK,IAAI,CAAC,cAAc,EAAE,CAAC;YACxD,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;YAClC,IAAI,CAAC,qBAAqB,EAAE,CAAC;gBAC3B,MAAM,IAAI,CAAC,2BAA2B,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YAC5D,CAAC;YACD,OAAO,cAAc,CACnB,UAAU,EACV,kCAAkC,EAClC,KAAK,CAAC,cAAc,CACrB,CAAC;QACJ,CAAC;QAED,MAAM,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,CAAC;QACvD,MAAM,UAAU,GAAG,EAAE,IAAI,CAAC,WAAW,CAAC;QACtC,IAAI,CAAC,iBAAiB,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,oBAAoB;YACvB,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,WAAW,IAAI,UAAU,CAAC,EAAE;gBACpD,CAAC,CAAC,UAAU,CAAC,KAAK;gBAClB,CAAC,CAAC,SAAS,CAAC;QAChB,MAAM,WAAW,GAAG,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACtD,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;QAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC;QACrC,IAAI,SAAS,GACX,OAAO,EAAE,SAAS,KAAK,SAAS,IAAI,YAAY,KAAK,IAAI;YACvD,CAAC,CAAC,mBAAmB,CAAC,OAAO,CAAC,QAAQ,EAAE,WAAW,EAAE,YAAY,CAAC;YAClE,CAAC,CAAC,WAAW,CAAC;QAClB,IACE,YAAY,EAAE,QAAQ,CAAC,YAAY,CAAC,EAAE;YACtC,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,EAClC,CAAC;YACD,IAAI,CAAC,kBAAkB,IAAI,CAAC,CAAC;YAC7B,IAAI,CAAC,6BAA6B,CAAC,KAAK,EAAE,CAAC;QAC7C,CAAC;aAAM,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;YACjC,SAAS,GAAG,IAAI,CAAC,2BAA2B,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;QACxE,CAAC;QACD,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAClC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACtC,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,iBAAiB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC5D,MAAM,iBAAiB,GACrB,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,QAAQ,IAAI,SAAS,CAAC,QAAQ,CAAC;QAC5D,MAAM,IAAI,CAAC,uBAAuB,CAChC,GAAG,EAAE,CAAC,oBAAoB,EAAE,OAAO,CAAC,KAAK,CAAC,EAC1C,KAAK,CAAC,cAAc,CACrB,CAAC;QACF,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC;IAChD,CAAC;IAED,KAAK,CAAC,QAAQ,CACZ,KAAoB;QAEpB,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QACtD,IAAI,CAAC,KAAK,CAAC,EAAE;YAAE,OAAO,KAAK,CAAC;QAC5B,IAAI,CAAC,2BAA2B,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,UAAU,CAAC,EAAE,CAAC;YACvE,OAAO,cAAc,CACnB,aAAa,EACb,6BAA6B,EAC7B,KAAK,CAAC,cAAc,CACrB,CAAC;QACJ,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;QACpC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACnD,IAAI,CAAC,MAAM,CAAC,EAAE;YAAE,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;QAC5D,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,KAA6B;QAE7B,MAAM,MAAM,GAAG,4BAA4B,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC7D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,cAAc,CACnB,YAAY,EACZ,qCAAqC,EACrC,OAAO,KAAK,CAAC,cAAc,KAAK,QAAQ;gBACtC,CAAC,CAAC,KAAK,CAAC,cAAc;gBACtB,CAAC,CAAC,SAAS,CACd,CAAC;QACJ,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC;QAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QACxD,IAAI,CAAC,KAAK,CAAC,EAAE;YAAE,OAAO,KAAK,CAAC;QAC5B,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,kBAAkB,CAAC;QAC/C,IACE,OAAO,KAAK,SAAS;YACrB,OAAO,CAAC,SAAS,KAAK,OAAO,CAAC,MAAM,CAAC,SAAS;YAC9C,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,MAAM,CAAC,QAAQ,EAC5C,CAAC;YACD,OAAO,cAAc,CACnB,UAAU,EACV,0CAA0C,EAC1C,OAAO,CAAC,cAAc,CACvB,CAAC;QACJ,CAAC;QACD,MAAM,iBAAiB,GAAG,IAAI,CAAC,kBAAkB,CAAC;QAClD,MAAM,WAAW,GAAG,4BAA4B,CAC9C,iBAAiB,EACjB,OAAO,CAAC,cAAc,EACtB,OAAO,CAAC,MAAM,CACf,CAAC;QACF,IAAI,IAAI,CAAC,2BAA2B,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;YACtD,OAAO,cAAc,CACnB,UAAU,EACV,+CAA+C,EAC/C,OAAO,CAAC,cAAc,CACvB,CAAC;QACJ,CAAC;QACD,IACE,CAAC,2BAA2B,CAC1B,KAAK,CAAC,KAAK,CAAC,YAAY,EACxB,mBAAmB,CACpB;YACD,IAAI,CAAC,QAAQ,CAAC,iBAAiB,KAAK,SAAS,EAC7C,CAAC;YACD,OAAO,cAAc,CACnB,aAAa,EACb,qCAAqC,EACrC,OAAO,CAAC,cAAc,CACvB,CAAC;QACJ,CAAC;QACD,IACE,0CAA0C,CAAC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC;YACnE,SAAS,EACT,CAAC;YACD,OAAO,cAAc,CACnB,YAAY,EACZ,wDAAwD,EACxD,OAAO,CAAC,cAAc,CACvB,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,2BAA2B,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAClD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAC9D,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,QAAQ,CAAC;YACpD,MAAM,sBAAsB,GAC1B,CAAC,IAAI,CAAC,SAAS;gBACf,iBAAiB,KAAK,IAAI,CAAC,kBAAkB;gBAC7C,OAAO,EAAE,YAAY,CAAC,EAAE,KAAK,OAAO,CAAC,cAAc,CAAC;YACtD,IAAI,CAAC,sBAAsB,EAAE,CAAC;gBAC5B,OAAO,cAAc,CACnB,UAAU,EACV,mCAAmC,EACnC,OAAO,CAAC,cAAc,CACvB,CAAC;YACJ,CAAC;YACD,IAAI,IAAI,CAAC,6BAA6B,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;gBACxD,OAAO,cAAc,CACnB,UAAU,EACV,mCAAmC,EACnC,OAAO,CAAC,cAAc,CACvB,CAAC;YACJ,CAAC;YACD,MAAM,cAAc,GAAG,OAAO,CAAC,kBAAkB,CAAC;YAClD,IACE,cAAc,KAAK,SAAS;gBAC5B,CAAC,0BAA0B,CAAC,cAAc,EAAE,OAAO,CAAC,EACpD,CAAC;gBACD,OAAO,cAAc,CACnB,UAAU,EACV,mCAAmC,EACnC,OAAO,CAAC,cAAc,CACvB,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;gBACf,IAAI,0BAA0B,CAAC,cAAc,EAAE,OAAO,CAAC,EAAE,CAAC;oBACxD,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;gBACpD,CAAC;gBACD,OAAO,MAAM,CAAC;YAChB,CAAC;YACD,IACE,MAAM,CAAC,KAAK,CAAC,SAAS,KAAK,OAAO,CAAC,MAAM,CAAC,SAAS;gBACnD,MAAM,CAAC,KAAK,CAAC,QAAQ,KAAK,OAAO,CAAC,MAAM,CAAC,QAAQ,EACjD,CAAC;gBACD,OAAO,cAAc,CACnB,YAAY,EACZ,sDAAsD,EACtD,OAAO,CAAC,cAAc,CACvB,CAAC;YACJ,CAAC;YACD,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YACjD,IACE,MAAM,KAAK,IAAI;gBACf,0BAA0B,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAC,EACvE,CAAC;gBACD,IAAI,CAAC,cAAc,CAAC,MAAM,CACxB,IAAI,CAAC,2BAA2B,CAC9B,MAAM,EACN,mBAAmB,CAAC,MAAM,EAAE,EAAE,kBAAkB,EAAE,SAAS,EAAE,CAAC,CAC/D,CACF,CAAC;YACJ,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YACrD,IAAI,CAAC,6BAA6B,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,SAAS,CACb,KAAwB;QAExB,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QACtD,IAAI,CAAC,KAAK,CAAC,EAAE;YAAE,OAAO,KAAK,CAAC;QAC5B,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;QAC5B,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,KAAK,KAAK,GAAG,EAAE,EAAE,EAAE,CAAC;YACzD,OAAO,cAAc,CACnB,UAAU,EACV,8CAA8C,EAC9C,KAAK,CAAC,cAAc,CACrB,CAAC;QACJ,CAAC;QACD,IACE,CAAC,2BAA2B,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,WAAW,EAAE,GAAG,CAAC,EACxE,CAAC;YACD,OAAO,cAAc,CACnB,aAAa,EACb,sCAAsC,EACtC,KAAK,CAAC,cAAc,CACrB,CAAC;QACJ,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;QACpC,MAAM,KAAK,GAAG,GAAI,CAAC,EAAE,CAAC;QACtB,0EAA0E;QAC1E,wEAAwE;QACxE,4CAA4C;QAC5C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,CAC1C,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CACxD,CAAC;QACF,IACE,CAAC,MAAM,CAAC,EAAE;YACV,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,EAAE,EAAE,KAAK,KAAK;YACrD,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;gBAChD,KAAK,CAAC,cAAc,EACtB,CAAC;YACD,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;QAC9C,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,OAAO,CAAC,OAA8B;QACpC,IAAI,IAAI,CAAC,eAAe,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC,eAAe,CAAC;QAEpE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,kBAAkB,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC;QACtB,IAAI,CAAC,iBAAiB,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,2BAA2B,CAAC,KAAK,EAAE,CAAC;QACzC,IAAI,CAAC,6BAA6B,CAAC,KAAK,EAAE,CAAC;QAC3C,IAAI,CAAC,6BAA6B,CAAC,KAAK,EAAE,CAAC;QAC3C,IAAI,CAAC,cAAc,IAAI,CAAC,CAAC;QACzB,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC;QACvC,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;QACjC,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;QAC5B,MAAM,YAAY,GAAG,IAAI,CAAC,oBAAoB,CAAC;QAC/C,IAAI,CAAC,oBAAoB,GAAG,SAAS,CAAC;QAEtC,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC;YACxC,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,YAAY,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;YAC5D,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;SAC7D,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;YAClB,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAC1C,MAAM,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CACpD,CAAC;YACF,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;gBAAE,MAAM,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC7C,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxB,MAAM,IAAI,cAAc,CACtB,QAAQ,EACR,kDAAkD,CACnD,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,KAA4B;QAE5B,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QACvD,IAAI,CAAC,MAAM,CAAC,EAAE;YAAE,OAAO,MAAM,CAAC;QAC9B,IACE,CAAC,2BAA2B,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,aAAa,CAAC,EACtE,CAAC;YACD,OAAO,cAAc,CACnB,aAAa,EACb,gCAAgC,EAChC,KAAK,CAAC,cAAc,CACrB,CAAC;QACJ,CAAC;QAED,IAAI,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,cAAc,KAAK,KAAK,CAAC,cAAc,EAAE,CAAC;YAClE,OAAO,cAAc,CACnB,UAAU,EACV,qCAAqC,EACrC,KAAK,CAAC,cAAc,CACrB,CAAC;QACJ,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;QACpC,MAAM,SAAS,GAAG,EAAE,IAAI,CAAC,iBAAiB,CAAC;QAC3C,MAAM,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC;QAC5D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAC3D,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,IACE,IAAI,CAAC,SAAS;gBACd,UAAU,KAAK,IAAI,CAAC,WAAW;gBAC/B,SAAS,KAAK,IAAI,CAAC,iBAAiB;gBACpC,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC,cAAc;oBACzD,cAAc,EAChB,CAAC;gBACD,OAAO,cAAc,CACnB,UAAU,EACV,6BAA6B,EAC7B,KAAK,CAAC,cAAc,CACrB,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;YAC5C,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,IACE,IAAI,CAAC,SAAS;YACd,UAAU,KAAK,IAAI,CAAC,WAAW;YAC/B,SAAS,KAAK,IAAI,CAAC,iBAAiB;YACpC,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC,cAAc;gBACzD,cAAc;YAChB,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,QAAQ,CAAC,YAAY,CAAC,EAAE;gBACjD,KAAK,CAAC,cAAc,EACtB,CAAC;YACD,OAAO,cAAc,CACnB,UAAU,EACV,6BAA6B,EAC7B,KAAK,CAAC,cAAc,CACrB,CAAC;QACJ,CAAC;QACD,IAAI,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,KAAK,KAAK,CAAC,cAAc,EAAE,CAAC;YAC1D,OAAO,cAAc,CACnB,YAAY,EACZ,uDAAuD,EACvD,KAAK,CAAC,cAAc,CACrB,CAAC;QACJ,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,KAAM,CAAC;QACzC,MAAM,QAAQ,GAAG,oBAAoB,CACnC,KAAK,CAAC,QAAQ,EACd,MAAM,CAAC,KAAK,CAAC,QAAQ,CACtB,CAAC;QACF,MAAM,QAAQ,GAAG,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACvD,IACE,QAAQ,KAAK,KAAK,CAAC,QAAQ;YAC3B,CAAC,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAC7C,CAAC;YACD,IAAI,CAAC,cAAc,CAAC,MAAM,CACxB,mBAAmB,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CACnD,CAAC;QACJ,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;QAC5C,IACE,IAAI,CAAC,SAAS;YACd,UAAU,KAAK,IAAI,CAAC,WAAW;YAC/B,SAAS,KAAK,IAAI,CAAC,iBAAiB;YACpC,SAAS,KAAK,IAAI;YAClB,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,KAAK,KAAK,CAAC,cAAc,EAC3D,CAAC;YACD,OAAO,cAAc,CACnB,UAAU,EACV,6BAA6B,EAC7B,KAAK,CAAC,cAAc,CACrB,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,QAAQ,EAAE,CAAC;IACjD,CAAC;IAED,YAAY,CAAC,cAAsB;QACjC,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,OAAO,cAAc,CACnB,UAAU,EACV,sCAAsC,EACtC,cAAc,CACf,CAAC;QACJ,CAAC;QACD,IACE,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,QAAQ,CAAC,YAAY,CAAC,EAAE,KAAK,cAAc,EACtE,CAAC;YACD,OAAO,cAAc,CACnB,UAAU,EACV,+CAA+C,EAC/C,cAAc,CACf,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;IACjE,CAAC;IAED,iBAAiB,CACf,KAA4B,EAC5B,iBAA2C;QAE3C,OAAO,OAAO,CAAC,OAAO,CACpB,IAAI,CAAC,QAAQ,CAAC,SAAS,CACrB;YACE,cAAc,EAAE,KAAK,CAAC,cAAc;YACpC,UAAU,EAAE,KAAK,CAAC,UAAU;SAC7B,EACD;YACE,IAAI,EAAE,CAAC,MAAM,EAAE,EAAE,CACf,iBAAiB,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;YACvD,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;SACtE,CACF,CACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,2BAA2B,CAC/B,UAA8C,EAC9C,KAA4B;QAE5B,IAAI,CAAC,UAAU,CAAC,EAAE;YAAE,OAAO;QAC3B,MAAM,IAAI,CAAC,uBAAuB,CAChC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EACrC,KAAK,CAAC,cAAc,CACrB,CAAC;IACJ,CAAC;IAED,iBAAiB,CAAC,SAAiB;QACjC,IAAI,IAAI,CAAC,qBAAqB,KAAK,SAAS,EAAE,CAAC;YAC7C,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC;QACzC,CAAC;QACD,IAAI,IAAI,CAAC,eAAe,EAAE,SAAS,KAAK,SAAS,EAAE,CAAC;YAClD,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;QACnC,CAAC;IACH,CAAC;IAED,eAAe,CAAC,YAAiC,EAAE,UAAkB;QACnE,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC;QACrC,IACE,OAAO,KAAK,SAAS;YACrB,OAAO,CAAC,gBAAgB,KAAK,UAAU;YACvC,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,QAAQ,CAAC,YAAY,CAAC,EAAE;gBACjD,OAAO,CAAC,cAAc,EACxB,CAAC;YACD,OAAO;QACT,CAAC;QACD,IAAI,YAAY,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACnC,MAAM,oBAAoB,GAAG,oBAAoB,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YACvE,IACE,oBAAoB,KAAK,SAAS;gBAClC,oBAAoB,KAAK,OAAO,CAAC,cAAc,EAC/C,CAAC;gBACD,OAAO;YACT,CAAC;QACH,CAAC;QACD,IACE,YAAY,CAAC,IAAI,KAAK,OAAO;YAC7B,YAAY,CAAC,KAAK,CAAC,cAAc,KAAK,SAAS;YAC/C,YAAY,CAAC,KAAK,CAAC,cAAc,KAAK,OAAO,CAAC,cAAc,EAC5D,CAAC;YACD,OAAO;QACT,CAAC;QACD,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAChC,CAAC;IAED,mBAAmB,CAAC,MAAkB,EAAE,UAAkB;QACxD,IAAI,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,UAAU,CAAC,CAAC;QAC7D,IACE,IAAI,CAAC,SAAS;YACd,UAAU,KAAK,IAAI,CAAC,WAAW;YAC/B,IAAI,CAAC,cAAc,CAAC,KAAK,KAAK,IAAI,EAClC,CAAC;YACD,OAAO;QACT,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,EAAG,CAAC;QACjD,IAAI,CAAC,cAAc,CAAC,MAAM,CACxB,IAAI,CAAC,2BAA2B,CAC9B,KAAK,EACL,mBAAmB,CAAC,KAAK,EAAE,MAAM,CAAC,CACnC,CACF,CAAC;IACJ,CAAC;IAED,2BAA2B,CACzB,OAAsB,EACtB,SAAwB;QAExB,MAAM,kBAAkB,GAAG,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC;QAC/D,MAAM,oBAAoB,GAAG,SAAS,CAAC,QAAQ,CAAC,kBAAkB,CAAC;QACnE,IACE,oBAAoB,KAAK,SAAS;YAClC,CAAC,0BAA0B,CAAC,kBAAkB,EAAE,oBAAoB,CAAC;YACrE,IAAI,CAAC,6BAA6B,CAAC,GAAG,CACpC,sBAAsB,CAAC,oBAAoB,CAAC,CAC7C,EACD,CAAC;YACD,OAAO,mBAAmB,CAAC,SAAS,EAAE;gBACpC,kBAAkB,EAAE,kBAAkB;gBACtC,KAAK,EAAE,uBAAuB,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;aACjE,CAAC,CAAC;QACL,CAAC;QACD,IACE,kBAAkB,KAAK,SAAS;YAChC,CAAC,0BAA0B,CAAC,kBAAkB,EAAE,oBAAoB,CAAC,EACrE,CAAC;YACD,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;gBACvC,MAAM,WAAW,GAAG,4BAA4B,CAC9C,IAAI,CAAC,kBAAkB,EACvB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,EAChC,kBAAkB,CACnB,CAAC;gBACF,IAAI,IAAI,CAAC,2BAA2B,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;oBACtD,IAAI,CAAC,6BAA6B,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gBACtD,CAAC;YACH,CAAC;YACD,IAAI,CAAC,0BAA0B,CAAC,kBAAkB,CAAC,CAAC;QACtD,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,0BAA0B,CAAC,QAA6B;QACtD,MAAM,GAAG,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAC7C,IAAI,CAAC,6BAA6B,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC/C,IAAI,CAAC,6BAA6B,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC5C,OACE,IAAI,CAAC,6BAA6B,CAAC,IAAI;YACvC,kCAAkC,EAClC,CAAC;YACD,MAAM,MAAM,GAAG,IAAI,CAAC,6BAA6B,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;YACxE,IAAI,MAAM,KAAK,SAAS;gBAAE,OAAO;YACjC,IAAI,CAAC,6BAA6B,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IAED,kBAAkB,CAAC,KAAgB,EAAE,UAAkB;QACrD,IAAI,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,UAAU,CAAC,CAAC;QAC3D,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IACvC,CAAC;IAED,YAAY,CAAC,KAAgB,EAAE,UAAkB;QAC/C,IACE,IAAI,CAAC,SAAS;YACd,UAAU,KAAK,IAAI,CAAC,WAAW;YAC/B,IAAI,CAAC,cAAc,CAAC,KAAK,KAAK,IAAI;YAClC,CAAC,KAAK,CAAC,cAAc,KAAK,SAAS;gBACjC,KAAK,CAAC,cAAc;oBAClB,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,EACvD,CAAC;YACD,OAAO;QACT,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,EAAG,CAAC;QACjD,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;IAC/D,CAAC;IAED,qBAAqB,CAAC,OAAiC;QACrD,IAAI,CAAC;YACH,IAAI,CAAC,iBAAiB,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QACnD,CAAC;QAAC,MAAM,CAAC;YACP,uEAAuE;QACzE,CAAC;IACH,CAAC;IAED,uBAAuB,CACrB,OAAsB,EACtB,cAAsB;QAEtB,OAAO,UAAU,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YACnC,IAAI,CAAC,qBAAqB,CAAC;gBACzB,KAAK;gBACL,cAAc;gBACd,MAAM,EAAE,sBAAsB;aAC/B,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,OAA0B,EAAc,EAAE,CACzE,IAAI,UAAU,CAAC,OAAO,CAAC,CAAC"}
1
+ {"version":3,"file":"chat-client.js","sourceRoot":"","sources":["../src/chat-client.ts"],"names":[],"mappings":"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"}
@@ -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
@@ -1 +1 @@
1
- {"version":3,"file":"snapshot-state.js","sourceRoot":"","sources":["../src/snapshot-state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"snapshot-state.js","sourceRoot":"","sources":["../src/snapshot-state.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,4BAA4B,EAC5B,+BAA+B,GAQhC,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EAEnB,kBAAkB,GACnB,MAAM,eAAe,CAAC;AAQvB,MAAM,cAAc,GAAG,CAAC,QAAsB,EAAgB,EAAE,CAC9D,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AAE1B,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,QAAsB,EAAiB,EAAE;IAC3E,MAAM,QAAQ,GAAG,mBAAmB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACxD,MAAM,YAAY,GAChB,QAAQ,CAAC,YAAY,KAAK,SAAS;QACjC,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IAC5C,MAAM,cAAc,GAClB,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC;IAC3E,OAAO;QACL,aAAa,EAAE,CAAC;QAChB,QAAQ;QACR,QAAQ,EAAE,cAAc,CAAC;YACvB,YAAY,EAAE,cAAc,CAAC,QAAQ,CAAC,YAAY,CAAC;YACnD,QAAQ,EAAE,QAAQ,CAAC,KAAK;YACxB,GAAG,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,CAAC;YACjC,YAAY,EAAE,cAAc,CAAC,QAAQ,CAAC,YAAY,CAAC;YACnD,QAAQ,EAAE,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAC3C,GAAG,CAAC,QAAQ,CAAC,kBAAkB,KAAK,SAAS;gBAC3C,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,kBAAkB,EAAE,cAAc,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;YACxE,GAAG,CAAC,QAAQ,CAAC,SAAS,KAAK,SAAS;gBAClC,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,SAAS,EAAE,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACtD,GAAG,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC;YACvD,GAAG,CAAC,cAAc,KAAK,SAAS;gBAC9B,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,KAAK,EAAE,cAAc,CAAC,cAAc,CAAC,EAAE,CAAC;SAC/C,CAAC;KACH,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,KAAoB,EACpB,OAEC,EACc,EAAE;IACjB,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC;IACpD,MAAM,QAAQ,GAAG,cAAc,CAAC;QAC9B,GAAG,KAAK,CAAC,QAAQ;QACjB,GAAG,OAAO;QACV,QAAQ,EAAE,QAAQ,CAAC,KAAK;KACzB,CAAC,CAAC;IACH,OAAO,EAAE,aAAa,EAAE,KAAK,CAAC,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;AACpE,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAI,QAAW,EAAE,MAAS,EAAE,OAAU,EAAK,EAAE,CAC/D,SAAS,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;AAElD,MAAM,wBAAwB,GAAG,CAAC,cAAsB,EAAa,EAAE,CACrE,cAAc,CAAC;IACb,IAAI,EAAE,YAAY;IAClB,OAAO,EAAE,+DAA+D;IACxE,SAAS,EAAE,KAAK;IAChB,cAAc;CACf,CAAC,CAAC;AAEL,MAAM,0BAA0B,GAAG,CACjC,IAA2C,EAC3C,KAA4C,EACnC,EAAE,CACX,IAAI,KAAK,SAAS;IAClB,KAAK,KAAK,SAAS;IACnB,IAAI,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS;IAClC,IAAI,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,CAAC;AAEnC,MAAM,iCAAiC,GAAG,CACxC,QAA+C,EAC/C,QAA+C,EACtC,EAAE,CACX,0BAA0B,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC9C,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;AAEjC;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,QAAuB,EACvB,MAAqB,EACrB,OAAsB,EACP,EAAE;IACjB,MAAM,QAAQ,GAAG,mBAAmB,CAClC,QAAQ,CAAC,QAAQ,EACjB,MAAM,CAAC,QAAQ,EACf,OAAO,CAAC,QAAQ,CACjB,CAAC;IACF,MAAM,YAAY,GAAG,WAAW,CAC9B,QAAQ,CAAC,QAAQ,CAAC,KAAK,EACvB,MAAM,CAAC,QAAQ,CAAC,KAAK,EACrB,OAAO,CAAC,QAAQ,CAAC,KAAK,CACvB,CAAC;IACF,MAAM,eAAe,GAAG,IAAI,GAAG,CAC7B,OAAO,CAAC,QAAQ,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CACzD,CAAC;IACF,MAAM,wBAAwB,GAAG,IAAI,GAAG,CACtC,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,IAAI,EAAE,CAAC;SACnC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;SAC5C,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CACvB,CAAC;IACF,MAAM,YAAY,GAAG,IAAI,GAAG,EAA+B,CAAC;IAC5D,KAAK,MAAM,UAAU,IAAI,MAAM,CAAC,QAAQ,CAAC,YAAY,IAAI,EAAE,EAAE,CAAC;QAC5D,IACE,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,cAAc;YACxC,CAAC,wBAAwB,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,EAC5C,CAAC;YACD,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC;IACD,KAAK,MAAM,UAAU,IAAI,OAAO,CAAC,QAAQ,CAAC,YAAY,IAAI,EAAE,EAAE,CAAC;QAC7D,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;YAC7C,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC;IACD,MAAM,YAAY,GAChB,MAAM,CAAC,QAAQ,CAAC,YAAY,KAAK,SAAS;QAC1C,OAAO,CAAC,QAAQ,CAAC,YAAY,KAAK,SAAS;QACzC,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAChD,MAAM,aAAa,GACjB,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC;IACzE,MAAM,mBAAmB,GAAG,SAAS,CACnC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,EACnC,QAAQ,CAAC,QAAQ,CAAC,kBAAkB,CACrC,CAAC;IACF,MAAM,4BAA4B,GAChC,mBAAmB;QACnB,iCAAiC,CAC/B,OAAO,CAAC,QAAQ,CAAC,kBAAkB,EACnC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CACnC,CAAC;IACJ,MAAM,kBAAkB,GAAG,4BAA4B;QACrD,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,kBAAkB;QACrC,CAAC,CAAC,WAAW,CACT,QAAQ,CAAC,QAAQ,CAAC,kBAAkB,EACpC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAClC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CACpC,CAAC;IACN,MAAM,OAAO,GAAkB;QAC7B,aAAa,EAAE,IAAI,CAAC,GAAG,CACrB,QAAQ,CAAC,aAAa,EACtB,MAAM,CAAC,aAAa,EACpB,OAAO,CAAC,aAAa,CACtB;QACD,QAAQ;QACR,QAAQ,EAAE,cAAc,CAAC;YACvB,YAAY,EAAE,WAAW,CACvB,QAAQ,CAAC,QAAQ,CAAC,YAAY,EAC9B,MAAM,CAAC,QAAQ,CAAC,YAAY,EAC5B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAC9B;YACD,QAAQ,EAAE,QAAQ,CAAC,KAAK;YACxB,GAAG,EAAE,WAAW,CACd,QAAQ,CAAC,QAAQ,CAAC,GAAG,EACrB,MAAM,CAAC,QAAQ,CAAC,GAAG,EACnB,OAAO,CAAC,QAAQ,CAAC,GAAG,CACrB;YACD,YAAY,EAAE,WAAW,CACvB,QAAQ,CAAC,QAAQ,CAAC,YAAY,EAC9B,MAAM,CAAC,QAAQ,CAAC,YAAY,EAC5B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAC9B;YACD,QAAQ,EAAE,WAAW,CACnB,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAC1B,MAAM,CAAC,QAAQ,CAAC,QAAQ,EACxB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAC1B;YACD,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,KAAK,SAAS;gBACzC,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;YAC7C,GAAG,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC;YACvD,GAAG,CAAC,kBAAkB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,CAAC;YACnE,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;SACjE,CAAC;KACH,CAAC;IACF,MAAM,MAAM,GAAG,4BAA4B;QACzC,CAAC,CAAC,yBAAyB,CACvB,OAAO,EACP,wBAAwB,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,EAC1D,uBAAuB,OAAO,CAAC,QAAQ,CAAC,kBAAkB,EAAE,SAAS,IAAI,SAAS,IAAI,OAAO,CAAC,QAAQ,CAAC,kBAAkB,EAAE,QAAQ,IAAI,CAAC,EAAE,CAC3I;QACH,CAAC,CAAC,OAAO,CAAC;IAEZ,IACE,MAAM,CAAC,aAAa,KAAK,OAAO,CAAC,aAAa;QAC9C,SAAS,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,EAC5C,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,IACE,MAAM,CAAC,aAAa,KAAK,MAAM,CAAC,aAAa;QAC7C,SAAS,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,EAC3C,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,CAAC,cAAsB,EAAa,EAAE,CAC/D,cAAc,CAAC;IACb,IAAI,EAAE,YAAY;IAClB,OAAO,EAAE,+DAA+D;IACxE,SAAS,EAAE,KAAK;IAChB,cAAc;CACf,CAAC,CAAC;AAEL,MAAM,mBAAmB,GAAG,CAC1B,QAAqB,EAC2B,EAAE,CAClD,QAAQ,EAAE,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,CAAC;AAE3D,MAAM,eAAe,GAAG,CACtB,MAAkC,EAClC,QAAqB,EACT,EAAE;IACd,MAAM,SAAS,GACb,QAAQ,EAAE,SAAS;QACnB,MAAM,CAAC,KAAK,CAAC,SAAS;QACtB,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC;IACrC,IAAI,MAAM,CAAC,KAAK,CAAC,aAAa,KAAK,MAAM,EAAE,CAAC;QAC1C,MAAM,IAAI,GAAG,IAAI,GAAG,CAClB,QAAQ,EAAE,aAAa,KAAK,MAAM;YAChC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;YACvE,CAAC,CAAC,EAAE,CACP,CAAC;QACF,MAAM,UAAU,GAAG,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC3D,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QACpC,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAC/B,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,4BAA4B,CAAC,CACtD,CAAC;QACF,MAAM,MAAM,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC;QACnC,OAAO,cAAc,CAAC;YACpB,IAAI,EAAE,aAAa;YACnB,aAAa,EAAE,MAAM;YACrB,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE;YACnB,cAAc,EAAE,MAAM,CAAC,cAAc;YACrC,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,SAAS;YACjC,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,SAAS;YACT,SAAS,EAAE,MAAM,CAAC,UAAU;YAC5B,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS;gBACrC,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACxC,GAAG,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS;gBAC9B,CAAC,CAAC,QAAQ,EAAE,OAAO,KAAK,SAAS;oBAC/B,CAAC,CAAC,EAAE;oBACJ,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE;gBACjC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;YAChC,GAAG,mBAAmB,CAAC,QAAQ,CAAC;YAChC,WAAW;SACZ,CAAC,CAAC;IACL,CAAC;IAED,MAAM,IAAI,GAAG,IAAI,GAAG,CAClB,QAAQ,EAAE,aAAa,KAAK,SAAS;QACnC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QACvE,CAAC,CAAC,EAAE,CACP,CAAC;IACF,MAAM,UAAU,GAAG,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAC3D,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;IACpC,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAC/B,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,4BAA4B,CAAC,CACtD,CAAC;IACF,MAAM,MAAM,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC;IACnC,OAAO,cAAc,CAAC;QACpB,IAAI,EAAE,aAAa;QACnB,aAAa,EAAE,SAAS;QACxB,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE;QACnB,cAAc,EAAE,MAAM,CAAC,cAAc;QACrC,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,SAAS;QACjC,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,SAAS;QACT,SAAS,EAAE,MAAM,CAAC,UAAU;QAC5B,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS;YACrC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;QACxC,GAAG,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS;YAC9B,CAAC,CAAC,QAAQ,EAAE,OAAO,KAAK,SAAS;gBAC/B,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE;YACjC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;QAChC,GAAG,mBAAmB,CAAC,QAAQ,CAAC;QAChC,WAAW;KACZ,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CACtB,KAAoB,EACpB,MAAkC,EACnB,EAAE;IACjB,MAAM,QAAQ,GAAG,qBAAqB,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACxE,IACE,QAAQ,KAAK,SAAS;QACtB,CAAC,QAAQ,CAAC,IAAI,KAAK,aAAa;YAC9B,CAAC,+BAA+B,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,EACrD,CAAC;QACD,OAAO,yBAAyB,CAC9B,KAAK,EACL,kBAAkB,CAAC,MAAM,CAAC,cAAc,CAAC,EACzC,0BAA0B,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,CAC5C,CAAC;IACJ,CAAC;IAED,MAAM,KAAK,GAAG,eAAe,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAChD,MAAM,QAAQ,GAAG,kBAAkB,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC3D,OAAO,QAAQ,KAAK,KAAK,CAAC,QAAQ;QAChC,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,mBAAmB,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;AAC/C,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,MAAkB,EACE,EAAE;IACtB,IAAI,MAAM,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;QACvC,OAAO,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;IACzC,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,KAAK,qBAAqB;QAAE,OAAO,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC;IACzE,IAAI,MAAM,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;QACrC,OAAO,CACL,MAAM,CAAC,cAAc;YACrB,MAAM,CAAC,KAAK,CAAC,cAAc;YAC3B,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,KAAK,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CACtE,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,KAAK,gBAAgB;QAAE,OAAO,MAAM,CAAC,cAAc,CAAC;IACnE,OAAO,MAAM,CAAC,cAAc,CAAC;AAC/B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,KAAoB,EACpB,MAAkB,EACH,EAAE;IACjB,MAAM,oBAAoB,GAAG,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;IAC5D,MAAM,oBAAoB,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAC1D,IACE,oBAAoB,KAAK,SAAS;QAClC,oBAAoB,KAAK,oBAAoB,EAC7C,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;QACpB,KAAK,kBAAkB,CAAC,CAAC,CAAC;YACxB,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC/D,MAAM,WAAW,GAAG;gBAClB,GAAG,iBAAiB;gBACpB,aAAa,EAAE,KAAK,CAAC,aAAa;aACnC,CAAC;YACF,IACE,iCAAiC,CAC/B,KAAK,CAAC,QAAQ,CAAC,kBAAkB,EACjC,WAAW,CAAC,QAAQ,CAAC,kBAAkB,CACxC,EACD,CAAC;gBACD,MAAM,OAAO,GAAG,mBAAmB,CAAC,WAAW,EAAE;oBAC/C,kBAAkB,EAAE,KAAK,CAAC,QAAQ,CAAC,kBAAkB;iBACtD,CAAC,CAAC;gBACH,OAAO,4BAA4B,CACjC,OAAO,EACP,wBAAwB,CAAC,oBAAoB,CAAC,EAC9C,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAClC,CAAC;YACJ,CAAC;YACD,OAAO,SAAS,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC;gBACpD,CAAC,CAAC,KAAK;gBACP,CAAC,CAAC,WAAW,CAAC;QAClB,CAAC;QACD,KAAK,qBAAqB,CAAC,CAAC,CAAC;YAC3B,MAAM,YAAY,GAAG,cAAc,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YACzD,OAAO,SAAS,CAAC,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC;gBACzD,CAAC,CAAC,KAAK;gBACP,CAAC,CAAC,mBAAmB,CAAC,KAAK,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC;QACnD,CAAC;QACD,KAAK,iBAAiB,CAAC,CAAC,CAAC;YACvB,MAAM,QAAQ,GAAG,kBAAkB,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;YACjE,OAAO,QAAQ,KAAK,KAAK,CAAC,QAAQ;gBAChC,CAAC,CAAC,KAAK;gBACP,CAAC,CAAC,mBAAmB,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC/C,CAAC;QACD,KAAK,yBAAyB;YAC5B,OAAO,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACxC,KAAK,aAAa,CAAC,CAAC,CAAC;YACnB,MAAM,GAAG,GAAG,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACvC,OAAO,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC;gBACvC,CAAC,CAAC,KAAK;gBACP,CAAC,CAAC,mBAAmB,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;QAC1C,CAAC;QACD,KAAK,sBAAsB,CAAC,CAAC,CAAC;YAC5B,MAAM,YAAY,GAAG,cAAc,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YACzD,OAAO,SAAS,CAAC,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC;gBACzD,CAAC,CAAC,KAAK;gBACP,CAAC,CAAC,mBAAmB,CAAC,KAAK,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC;QACnD,CAAC;QACD,KAAK,qBAAqB,CAAC,CAAC,CAAC;YAC3B,MAAM,kBAAkB,GAAG,cAAc,CACvC,MAAM,CAAC,WAAW,IAAI,SAAS,CAChC,CAAC;YACF,IACE,iCAAiC,CAC/B,KAAK,CAAC,QAAQ,CAAC,kBAAkB,EACjC,kBAAkB,CACnB,EACD,CAAC;gBACD,OAAO,4BAA4B,CACjC,KAAK,EACL,wBAAwB,CAAC,oBAAoB,CAAC,EAC9C,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAClC,CAAC;YACJ,CAAC;YACD,OAAO,SAAS,CAAC,kBAAkB,EAAE,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC;gBACrE,CAAC,CAAC,KAAK;gBACP,CAAC,CAAC,mBAAmB,CAAC,KAAK,EAAE,EAAE,kBAAkB,EAAE,CAAC,CAAC;QACzD,CAAC;QACD,KAAK,mBAAmB,CAAC,CAAC,CAAC;YACzB,MAAM,SAAS,GAAG,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACnD,OAAO,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;gBACnD,CAAC,CAAC,KAAK;gBACP,CAAC,CAAC,mBAAmB,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC;QAChD,CAAC;QACD,KAAK,gBAAgB;YACnB,OAAO,0BAA0B,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACnD,KAAK,gBAAgB;YACnB,OAAO,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IACvD,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CACnB,MAAgE,EAC/B,EAAE;IACnC,IACE,MAAM,CAAC,OAAO,KAAK,SAAS;QAC5B,MAAM,CAAC,MAAM,KAAK,SAAS;QAC3B,MAAM,CAAC,KAAK,KAAK,SAAS;QAC1B,MAAM,CAAC,UAAU,KAAK,SAAS,EAC/B,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,cAAc,CAAC;QACpB,EAAE,EAAE,MAAM,CAAC,OAAO;QAClB,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,UAAU,EAAE,MAAM,CAAC,UAAU;KAC9B,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,wBAAwB,GAAG,CAC/B,KAAoB,EACY,EAAE;IAClC,IAAI,KAAK,CAAC,QAAQ,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QAC9C,OAAO,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC;IACrC,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IAClD,OAAO;QACL,cAAc,CAAC;YACb,EAAE,EAAE,yBAAyB;YAC7B,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK;YAC3B,MAAM,EAAE,SAAkB;YAC1B,KAAK,EAAE;gBACL,IAAI,EAAE,cAAuB;gBAC7B,EAAE,EAAE,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;aACnC;YACD,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,SAAS,EAAE,UAAU,IAAI,CAAC;SACtD,CAAC;KACH,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG,CACvC,KAAoB,EACpB,KAAgB,EAChB,OAAe,EACA,EAAE;IACjB,MAAM,UAAU,GAAG,cAAc,CAAC;QAChC,EAAE,EAAE,OAAO;QACX,KAAK;QACL,MAAM,EAAE,SAAkB;QAC1B,KAAK,EAAE;YACL,IAAI,EAAE,cAAuB;YAC7B,EAAE,EAAE,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;SACnC;QACD,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,SAAS,EAAE,UAAU,IAAI,CAAC;KACtD,CAAC,CAAC;IACH,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC;QACjC,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,CAAC;QAC3E,UAAU;KACX,CAAC,CAAC;IACH,OAAO,mBAAmB,CAAC,KAAK,EAAE;QAChC,YAAY;QACZ,KAAK,EAAE,UAAU,CAAC,KAAK;KACxB,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,4BAA4B,GAAG,CACnC,KAAoB,EACpB,KAAgB,EAChB,WAAkD,EACnC,EAAE,CACjB,yBAAyB,CACvB,KAAK,EACL,KAAK,EACL,uBAAuB,WAAW,EAAE,SAAS,IAAI,SAAS,IAAI,WAAW,EAAE,QAAQ,IAAI,CAAC,EAAE,CAC3F,CAAC;AAEJ,MAAM,0BAA0B,GAAG,CACjC,KAAoB,EACpB,MAAgE,EACjD,EAAE;IACjB,MAAM,UAAU,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACxC,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,MAAM,aAAa,GAAG,KAAK,CAAC,aAAa,GAAG,CAAC,CAAC;QAC9C,MAAM,IAAI,GAAG,yBAAyB,CACpC,KAAK,EACL,MAAM,CAAC,KAAK,EACZ,kBAAkB,KAAK,CAAC,QAAQ,CAAC,SAAS,EAAE,UAAU,IAAI,CAAC,IAAI,aAAa,EAAE,CAC/E,CAAC;QACF,OAAO,EAAE,GAAG,IAAI,EAAE,aAAa,EAAE,CAAC;IACpC,CAAC;IACD,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC;QACjC,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC,MAAM,CACvC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,CACxC;QACD,UAAU;KACX,CAAC,CAAC;IACH,IACE,SAAS,CAAC,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC;QACpD,SAAS,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EACjD,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,mBAAmB,CAAC,KAAK,EAAE;QAChC,YAAY;QACZ,KAAK,EAAE,UAAU,CAAC,KAAK;KACxB,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAC3B,KAAoB,EACpB,OAAe,EACA,EAAE;IACjB,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC;IAC5C,IAAI,OAAO,KAAK,SAAS,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC;QAC5E,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAChC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,OAAO,CAAC,CAChD,CAAC;IACF,OAAO,mBAAmB,CAAC,KAAK,EAAE;QAChC,YAAY;QACZ,KAAK,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK;KAClC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAChC,KAAoB,EACpB,KAAgB,EACD,EAAE;IACjB,MAAM,aAAa,GAAG,KAAK,CAAC,aAAa,GAAG,CAAC,CAAC;IAC9C,MAAM,IAAI,GAAG,yBAAyB,CACpC,KAAK,EACL,KAAK,EACL,2BAA2B,KAAK,CAAC,QAAQ,CAAC,SAAS,EAAE,UAAU,IAAI,CAAC,IAAI,aAAa,EAAE,CACxF,CAAC;IACF,OAAO,EAAE,GAAG,IAAI,EAAE,aAAa,EAAE,CAAC;AACpC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@turingfocus/chat-runtime",
3
- "version": "0.5.0",
3
+ "version": "0.6.0",
4
4
  "description": "Headless, instance-scoped chat runtime",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -28,7 +28,7 @@
28
28
  }
29
29
  },
30
30
  "dependencies": {
31
- "@turingfocus/chat-protocol": "^0.5.0"
31
+ "@turingfocus/chat-protocol": "^0.6.0"
32
32
  },
33
33
  "publishConfig": {
34
34
  "access": "public",