@turingfocus/chat-runtime 0.6.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.
@@ -1,5 +1,5 @@
1
- import { type AnswerInteractionInput, type AnswerInteractionSuccess, type ChatGateway, type ChatSnapshot, type Conversation, type ConversationPage, type CreateConversationInput, type GatewayRequestOptions, type GatewayResult, type InterruptRunInput, type InterruptRunSuccess, type ListConversationsInput, type LoadConversationInput, type SendTextInput, type SendTextSuccess } from "@turingfocus/chat-protocol";
2
- import { type SnapshotListener, type SnapshotSubscription } from "./snapshot-store.js";
1
+ import { type AnswerInteractionInput, type AnswerInteractionSuccess, type ChatGateway, type ChatSnapshot, type Conversation, type ConversationPage, type CreateConversationInput, type DeleteConversationInput, type DeleteConversationSuccess, type GatewayRequestOptions, type GatewayResult, type InterruptRunInput, type InterruptRunSuccess, type ListConversationsInput, type LoadConversationInput, type RenameConversationInput, type SendTextInput, type SendTextSuccess } from "@turingfocus/chat-protocol";
2
+ import { type SnapshotListener, type SnapshotStateListener, type SnapshotSubscription } from "./snapshot-store.js";
3
3
  export interface ChatClientOptions {
4
4
  /** The instance-owned transport port. ChatClient disposes it on shutdown. */
5
5
  readonly gateway: ChatGateway;
@@ -13,6 +13,7 @@ export interface ChatClientUnhandledError {
13
13
  readonly source: ChatClientUnhandledErrorSource;
14
14
  }
15
15
  export type ChatSnapshotListener = SnapshotListener;
16
+ export type ChatSnapshotStateListener = SnapshotStateListener;
16
17
  export type ChatClientSubscription = SnapshotSubscription;
17
18
  /**
18
19
  * Headless, instance-scoped owner of normalized chat state and commands.
@@ -24,6 +25,8 @@ export declare class ChatClient {
24
25
  get disposed(): boolean;
25
26
  getSnapshot(): ChatSnapshot | null;
26
27
  subscribe(listener: ChatSnapshotListener): ChatClientSubscription;
28
+ /** Subscribes to active snapshot state, including `null` after deletion. */
29
+ subscribeState(listener: ChatSnapshotStateListener): ChatClientSubscription;
27
30
  /**
28
31
  * Retires the current top-level conversation load without changing an
29
32
  * already committed snapshot. Once a snapshot commits, this is a no-op and
@@ -32,6 +35,8 @@ export declare class ChatClient {
32
35
  cancelPendingConversationLoad(): void;
33
36
  listConversations(input: ListConversationsInput): Promise<GatewayResult<ConversationPage>>;
34
37
  createConversation(input: CreateConversationInput): Promise<GatewayResult<Conversation>>;
38
+ renameConversation(input: RenameConversationInput): Promise<GatewayResult<Conversation>>;
39
+ deleteConversation(input: DeleteConversationInput): Promise<GatewayResult<DeleteConversationSuccess>>;
35
40
  loadConversation(input: LoadConversationInput): Promise<GatewayResult<ChatSnapshot>>;
36
41
  sendText(input: SendTextInput): Promise<GatewayResult<SendTextSuccess>>;
37
42
  answerInteraction(input: AnswerInteractionInput): Promise<GatewayResult<AnswerInteractionSuccess>>;
@@ -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,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
+ {"version":3,"file":"chat-client.d.ts","sourceRoot":"","sources":["../src/chat-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAWL,KAAK,sBAAsB,EAC3B,KAAK,wBAAwB,EAG7B,KAAK,WAAW,EAChB,KAAK,YAAY,EAEjB,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,uBAAuB,EAC5B,KAAK,uBAAuB,EAC5B,KAAK,yBAAyB,EAC9B,KAAK,qBAAqB,EAC1B,KAAK,aAAa,EAElB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,KAAK,uBAAuB,EAC5B,KAAK,aAAa,EAClB,KAAK,eAAe,EACrB,MAAM,4BAA4B,CAAC;AAiBpC,OAAO,EAEL,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,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,yBAAyB,GAAG,qBAAqB,CAAC;AAC9D,MAAM,MAAM,sBAAsB,GAAG,oBAAoB,CAAC;AA4E1D;;;GAGG;AACH,qBAAa,UAAU;;gBAsBT,OAAO,EAAE,iBAAiB;IAUtC,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,WAAW,IAAI,YAAY,GAAG,IAAI;IAIlC,SAAS,CAAC,QAAQ,EAAE,oBAAoB,GAAG,sBAAsB;IAIjE,4EAA4E;IAC5E,cAAc,CAAC,QAAQ,EAAE,yBAAyB,GAAG,sBAAsB;IAI3E;;;;OAIG;IACH,6BAA6B,IAAI,IAAI;IAS/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,kBAAkB,CACtB,KAAK,EAAE,uBAAuB,GAC7B,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;IAuDjC,kBAAkB,CACtB,KAAK,EAAE,uBAAuB,GAC7B,OAAO,CAAC,aAAa,CAAC,yBAAyB,CAAC,CAAC;IAiF9C,gBAAgB,CACpB,KAAK,EAAE,qBAAqB,GAC3B,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;IA6JjC,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;CA2avD;AAED,eAAO,MAAM,gBAAgB,GAAI,SAAS,iBAAiB,KAAG,UACrC,CAAC"}
@@ -1,4 +1,4 @@
1
- import { answerInteractionInputSchema, createConversationInputSchema, createGatewayDeadlineExceededError, getAskUserInteractionAnswerValidationError, isGatewayDeadlineExceeded, isGatewayOperationSupported, listConversationsInputSchema, } from "@turingfocus/chat-protocol";
1
+ import { answerInteractionInputSchema, createConversationInputSchema, createGatewayDeadlineExceededError, deleteConversationInputSchema, getAskUserInteractionAnswerValidationError, isGatewayDeadlineExceeded, isChatLifecycleOperable, isGatewayOperationSupported, listConversationsInputSchema, renameConversationInputSchema, } from "@turingfocus/chat-protocol";
2
2
  import { createGatewayNotificationQueue, } from "./gateway-notification-queue.js";
3
3
  import { cloneImmutable, deepEqual } from "./immutable.js";
4
4
  import { applySnapshotUpdate, applyRuntimeSnapshotError, createSnapshotState, rebaseSnapshotState, updateConversationId, updateSnapshotState, } from "./snapshot-state.js";
@@ -55,6 +55,8 @@ export class ChatClient {
55
55
  #historyRequestId = 0;
56
56
  #loadRequestId = 0;
57
57
  #structuredGatewayErrorMarker;
58
+ #pendingLoadConversationId;
59
+ #pendingLoadConversationOverride;
58
60
  #pendingLoadRequestId;
59
61
  #pendingHandoff;
60
62
  constructor(options) {
@@ -75,6 +77,10 @@ export class ChatClient {
75
77
  subscribe(listener) {
76
78
  return this.#snapshotStore.subscribe(listener);
77
79
  }
80
+ /** Subscribes to active snapshot state, including `null` after deletion. */
81
+ subscribeState(listener) {
82
+ return this.#snapshotStore.subscribeState(listener);
83
+ }
78
84
  /**
79
85
  * Retires the current top-level conversation load without changing an
80
86
  * already committed snapshot. Once a snapshot commits, this is a no-op and
@@ -84,6 +90,8 @@ export class ChatClient {
84
90
  if (this.#disposed || this.#pendingLoadRequestId === undefined)
85
91
  return;
86
92
  this.#loadRequestId += 1;
93
+ this.#pendingLoadConversationId = undefined;
94
+ this.#pendingLoadConversationOverride = undefined;
87
95
  this.#pendingLoadRequestId = undefined;
88
96
  this.#pendingHandoff = undefined;
89
97
  }
@@ -122,6 +130,98 @@ export class ChatClient {
122
130
  ? runtimeFailure("conflict", "Conversation creation was superseded")
123
131
  : result;
124
132
  }
133
+ async renameConversation(input) {
134
+ const parsed = renameConversationInputSchema.safeParse(input);
135
+ if (!parsed.success) {
136
+ return runtimeFailure("validation", "Conversation rename input is invalid");
137
+ }
138
+ if (this.#disposed) {
139
+ return runtimeFailure("conflict", "ChatClient has already been disposed");
140
+ }
141
+ if (isGatewayDeadlineExceeded(parsed.data)) {
142
+ return {
143
+ ok: false,
144
+ error: createGatewayDeadlineExceededError(parsed.data.conversationId),
145
+ };
146
+ }
147
+ if (this.#gateway.renameConversation === undefined) {
148
+ return runtimeFailure("unsupported", "Conversation rename is unavailable", parsed.data.conversationId);
149
+ }
150
+ const result = await this.#gateway.renameConversation(parsed.data);
151
+ if (this.#disposed) {
152
+ return runtimeFailure("conflict", "Conversation rename was superseded", parsed.data.conversationId);
153
+ }
154
+ if (!result.ok)
155
+ return result;
156
+ if (result.value.id !== parsed.data.conversationId) {
157
+ return runtimeFailure("validation", "Gateway renamed a different conversation", parsed.data.conversationId);
158
+ }
159
+ if (this.#pendingLoadConversationId === result.value.id) {
160
+ this.#pendingLoadConversationOverride = cloneImmutable(result.value);
161
+ }
162
+ const current = this.#snapshotStore.latestState();
163
+ if (current?.snapshot.conversation.id === result.value.id) {
164
+ this.#snapshotStore.commit(updateSnapshotState(current, {
165
+ conversation: cloneImmutable(result.value),
166
+ }));
167
+ }
168
+ return result;
169
+ }
170
+ async deleteConversation(input) {
171
+ const parsed = deleteConversationInputSchema.safeParse(input);
172
+ if (!parsed.success) {
173
+ return runtimeFailure("validation", "Conversation deletion input is invalid");
174
+ }
175
+ if (this.#disposed) {
176
+ return runtimeFailure("conflict", "ChatClient has already been disposed");
177
+ }
178
+ if (isGatewayDeadlineExceeded(parsed.data)) {
179
+ return {
180
+ ok: false,
181
+ error: createGatewayDeadlineExceededError(parsed.data.conversationId),
182
+ };
183
+ }
184
+ if (this.#gateway.deleteConversation === undefined) {
185
+ return runtimeFailure("unsupported", "Conversation deletion is unavailable", parsed.data.conversationId);
186
+ }
187
+ const result = await this.#gateway.deleteConversation(parsed.data);
188
+ if (this.#disposed) {
189
+ return runtimeFailure("conflict", "Conversation deletion was superseded", parsed.data.conversationId);
190
+ }
191
+ if (result.ok &&
192
+ result.value.deletedConversationId !== parsed.data.conversationId) {
193
+ return runtimeFailure("validation", "Gateway deleted a different conversation", parsed.data.conversationId);
194
+ }
195
+ if (result.ok &&
196
+ this.#pendingLoadConversationId === parsed.data.conversationId) {
197
+ this.#loadRequestId += 1;
198
+ this.#pendingLoadConversationId = undefined;
199
+ this.#pendingLoadConversationOverride = undefined;
200
+ this.#pendingLoadRequestId = undefined;
201
+ this.#pendingHandoff = undefined;
202
+ }
203
+ if (result.ok &&
204
+ this.#snapshotStore.state?.snapshot.conversation.id ===
205
+ parsed.data.conversationId) {
206
+ const subscription = this.#gatewaySubscription;
207
+ this.#gatewaySubscription = undefined;
208
+ this.#conversationEpoch += 1;
209
+ this.#generation += 1;
210
+ this.#historyRequestId += 1;
211
+ this.#loadRequestId += 1;
212
+ this.#pendingLoadConversationId = undefined;
213
+ this.#pendingLoadConversationOverride = undefined;
214
+ this.#pendingLoadRequestId = undefined;
215
+ this.#pendingHandoff = undefined;
216
+ this.#structuredGatewayErrorMarker = undefined;
217
+ this.#interactionAnswersInFlight.clear();
218
+ this.#retiredInteractionIdentities.clear();
219
+ this.#supersededInteractionAnswers.clear();
220
+ this.#snapshotStore.clear();
221
+ await this.#runSubscriptionCleanup(() => subscription?.dispose(parsed.data), parsed.data.conversationId);
222
+ }
223
+ return result;
224
+ }
125
225
  async loadConversation(input) {
126
226
  if (this.#disposed) {
127
227
  return runtimeFailure("conflict", "ChatClient has already been disposed", input.conversationId);
@@ -132,6 +232,8 @@ export class ChatClient {
132
232
  if (this.#disposed) {
133
233
  return runtimeFailure("conflict", "Conversation load was superseded", input.conversationId);
134
234
  }
235
+ this.#pendingLoadConversationId = input.conversationId;
236
+ this.#pendingLoadConversationOverride = undefined;
135
237
  this.#pendingLoadRequestId = requestId;
136
238
  const notificationQueue = createGatewayNotificationQueue((notification, generation) => {
137
239
  if (notification.kind === "update") {
@@ -204,7 +306,13 @@ export class ChatClient {
204
306
  loaded.value.capabilities.liveUpdates && subscribed.ok
205
307
  ? subscribed.value
206
308
  : undefined;
207
- const loadedState = createSnapshotState(loaded.value);
309
+ const conversationOverride = this.#pendingLoadRequestId === requestId &&
310
+ this.#pendingLoadConversationId === input.conversationId
311
+ ? this.#pendingLoadConversationOverride
312
+ : undefined;
313
+ const loadedState = createSnapshotState(conversationOverride === undefined
314
+ ? loaded.value
315
+ : { ...loaded.value, conversation: conversationOverride });
208
316
  const currentState = this.#snapshotStore.state;
209
317
  const handoff = this.#pendingHandoff;
210
318
  let nextState = handoff?.requestId === requestId && currentState !== null
@@ -345,6 +453,8 @@ export class ChatClient {
345
453
  this.#retiredInteractionIdentities.clear();
346
454
  this.#supersededInteractionAnswers.clear();
347
455
  this.#loadRequestId += 1;
456
+ this.#pendingLoadConversationId = undefined;
457
+ this.#pendingLoadConversationOverride = undefined;
348
458
  this.#pendingLoadRequestId = undefined;
349
459
  this.#pendingHandoff = undefined;
350
460
  this.#snapshotStore.close();
@@ -425,11 +535,7 @@ export class ChatClient {
425
535
  return runtimeFailure("conflict", "Conversation is not active in this ChatClient", conversationId);
426
536
  }
427
537
  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))) {
538
+ if (lifecycle !== undefined && !isChatLifecycleOperable(lifecycle)) {
433
539
  return runtimeFailure(lifecycle.status === "auth-required"
434
540
  ? "authentication"
435
541
  : lifecycle.status === "subscription-failed"
@@ -454,6 +560,8 @@ export class ChatClient {
454
560
  }
455
561
  #clearPendingLoad(requestId) {
456
562
  if (this.#pendingLoadRequestId === requestId) {
563
+ this.#pendingLoadConversationId = undefined;
564
+ this.#pendingLoadConversationOverride = undefined;
457
565
  this.#pendingLoadRequestId = undefined;
458
566
  }
459
567
  if (this.#pendingHandoff?.requestId === requestId) {
@@ -1 +1 @@
1
- {"version":3,"file":"chat-client.js","sourceRoot":"","sources":["../src/chat-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat-client.js","sourceRoot":"","sources":["../src/chat-client.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,9 @@ export interface ConversationWorkspaceSnapshot {
6
6
  readonly conversations: readonly Conversation[];
7
7
  readonly creating: boolean;
8
8
  readonly creationError?: ChatError | undefined;
9
+ readonly deletingConversationIds: readonly string[];
10
+ readonly renamingConversationIds: readonly string[];
11
+ readonly conversationMutationError?: ChatError | undefined;
9
12
  readonly listError?: ChatError | undefined;
10
13
  readonly listStatus: ConversationWorkspaceListStatus;
11
14
  readonly nextCursor?: string | undefined;
@@ -34,6 +37,10 @@ export interface CreateWorkspaceConversationInput {
34
37
  readonly select?: boolean | undefined;
35
38
  readonly title: string;
36
39
  }
40
+ export interface RenameWorkspaceConversationInput {
41
+ readonly conversationId: string;
42
+ readonly title: string;
43
+ }
37
44
  export declare const orderConversationsByUpdatedAt: (conversations: readonly Conversation[]) => readonly Conversation[];
38
45
  /**
39
46
  * Headless, instance-scoped owner of conversation-list and selection workflow.
@@ -49,6 +56,10 @@ export declare class ConversationWorkspaceController {
49
56
  refresh(): Promise<GatewayResult<ConversationPage>>;
50
57
  loadMore(): Promise<GatewayResult<ConversationPage> | undefined>;
51
58
  createConversation(input: CreateWorkspaceConversationInput): Promise<GatewayResult<Conversation>>;
59
+ renameConversation(input: RenameWorkspaceConversationInput): Promise<GatewayResult<Conversation>>;
60
+ deleteConversation(conversationId: string): Promise<GatewayResult<{
61
+ readonly deletedConversationId: string;
62
+ }>>;
52
63
  selectConversation(conversationId: string): Promise<GatewayResult<ChatSnapshot>>;
53
64
  dispose(): void;
54
65
  }
@@ -1 +1 @@
1
- {"version":3,"file":"conversation-workspace.d.ts","sourceRoot":"","sources":["../src/conversation-workspace.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACd,MAAM,4BAA4B,CAAC;AAEpC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAGnD,MAAM,MAAM,+BAA+B,GACzC,OAAO,GAAG,MAAM,GAAG,SAAS,GAAG,cAAc,GAAG,OAAO,CAAC;AAE1D,MAAM,MAAM,oCAAoC,GAC9C,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;AAEnD,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,aAAa,EAAE,SAAS,YAAY,EAAE,CAAC;IAChD,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAC/C,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAC3C,QAAQ,CAAC,UAAU,EAAE,+BAA+B,CAAC;IACrD,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,QAAQ,CAAC,qBAAqB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACpD,QAAQ,CAAC,sBAAsB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrD,QAAQ,CAAC,cAAc,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAChD,QAAQ,CAAC,eAAe,EAAE,oCAAoC,CAAC;CAChE;AAED,MAAM,WAAW,iCAAiC;IAChD,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,sCAAsC;IACrD,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,uEAAuE;IACvE,QAAQ,CAAC,aAAa,EAAE,MAAM,MAAM,CAAC;IACrC,gFAAgF;IAChF,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;IACzD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IACnE,qFAAqF;IACrF,QAAQ,CAAC,kBAAkB,CAAC,EACxB,CAAC,CAAC,aAAa,EAAE,SAAS,YAAY,EAAE,KAAK,SAAS,YAAY,EAAE,CAAC,GACrE,SAAS,CAAC;IACd,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACxC;AAED,MAAM,WAAW,gCAAgC;IAC/C,gFAAgF;IAChF,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACtC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAyDD,eAAO,MAAM,6BAA6B,GACxC,eAAe,SAAS,YAAY,EAAE,KACrC,SAAS,YAAY,EAaoB,CAAC;AAE7C;;;GAGG;AACH,qBAAa,+BAA+B;;gBAoB9B,OAAO,EAAE,sCAAsC;IAY3D,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,WAAW,IAAI,6BAA6B;IAI5C,SAAS,CACP,QAAQ,EAAE,CAAC,QAAQ,EAAE,6BAA6B,KAAK,IAAI,GAC1D,iCAAiC;IAqB9B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAItB,OAAO,IAAI,OAAO,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;IAkCnD,QAAQ,IAAI,OAAO,CAAC,aAAa,CAAC,gBAAgB,CAAC,GAAG,SAAS,CAAC;IAgDhE,kBAAkB,CACtB,KAAK,EAAE,gCAAgC,GACtC,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;IAoEjC,kBAAkB,CACtB,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;IAMvC,OAAO,IAAI,IAAI;CAyShB;AAED,eAAO,MAAM,qCAAqC,GAChD,SAAS,sCAAsC,KAC9C,+BAC2C,CAAC"}
1
+ {"version":3,"file":"conversation-workspace.d.ts","sourceRoot":"","sources":["../src/conversation-workspace.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACd,MAAM,4BAA4B,CAAC;AAEpC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAGnD,MAAM,MAAM,+BAA+B,GACzC,OAAO,GAAG,MAAM,GAAG,SAAS,GAAG,cAAc,GAAG,OAAO,CAAC;AAE1D,MAAM,MAAM,oCAAoC,GAC9C,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;AAEnD,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,aAAa,EAAE,SAAS,YAAY,EAAE,CAAC;IAChD,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAC/C,QAAQ,CAAC,uBAAuB,EAAE,SAAS,MAAM,EAAE,CAAC;IACpD,QAAQ,CAAC,uBAAuB,EAAE,SAAS,MAAM,EAAE,CAAC;IACpD,QAAQ,CAAC,yBAAyB,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAC3D,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAC3C,QAAQ,CAAC,UAAU,EAAE,+BAA+B,CAAC;IACrD,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,QAAQ,CAAC,qBAAqB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACpD,QAAQ,CAAC,sBAAsB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrD,QAAQ,CAAC,cAAc,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAChD,QAAQ,CAAC,eAAe,EAAE,oCAAoC,CAAC;CAChE;AAED,MAAM,WAAW,iCAAiC;IAChD,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,sCAAsC;IACrD,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,uEAAuE;IACvE,QAAQ,CAAC,aAAa,EAAE,MAAM,MAAM,CAAC;IACrC,gFAAgF;IAChF,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;IACzD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IACnE,qFAAqF;IACrF,QAAQ,CAAC,kBAAkB,CAAC,EACxB,CAAC,CAAC,aAAa,EAAE,SAAS,YAAY,EAAE,KAAK,SAAS,YAAY,EAAE,CAAC,GACrE,SAAS,CAAC;IACd,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACxC;AAED,MAAM,WAAW,gCAAgC;IAC/C,gFAAgF;IAChF,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACtC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,gCAAgC;IAC/C,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AA2DD,eAAO,MAAM,6BAA6B,GACxC,eAAe,SAAS,YAAY,EAAE,KACrC,SAAS,YAAY,EAaoB,CAAC;AAE7C;;;GAGG;AACH,qBAAa,+BAA+B;;gBAsB9B,OAAO,EAAE,sCAAsC;IAa3D,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,WAAW,IAAI,6BAA6B;IAI5C,SAAS,CACP,QAAQ,EAAE,CAAC,QAAQ,EAAE,6BAA6B,KAAK,IAAI,GAC1D,iCAAiC;IAqB9B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAItB,OAAO,IAAI,OAAO,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;IAkCnD,QAAQ,IAAI,OAAO,CAAC,aAAa,CAAC,gBAAgB,CAAC,GAAG,SAAS,CAAC;IAgDhE,kBAAkB,CACtB,KAAK,EAAE,gCAAgC,GACtC,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;IAoEjC,kBAAkB,CACtB,KAAK,EAAE,gCAAgC,GACtC,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;IA4CjC,kBAAkB,CACtB,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,aAAa,CAAC;QAAE,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IA+E/D,kBAAkB,CACtB,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;IAMvC,OAAO,IAAI,IAAI;CA4UhB;AAED,eAAO,MAAM,qCAAqC,GAChD,SAAS,sCAAsC,KAC9C,+BAC2C,CAAC"}
@@ -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":"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"}
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 { ChatSnapshot } from "@turingfocus/chat-protocol";
2
2
  import type { SnapshotState } from "./snapshot-state.js";
3
3
  export type SnapshotListener = (snapshot: ChatSnapshot) => void;
4
+ export type SnapshotStateListener = (snapshot: ChatSnapshot | null) => void;
4
5
  export interface SnapshotSubscription {
5
6
  readonly closed: boolean;
6
7
  dispose(): void;
@@ -15,8 +16,10 @@ export declare class SnapshotStore {
15
16
  get state(): SnapshotState | null;
16
17
  getSnapshot(): ChatSnapshot | null;
17
18
  subscribe(listener: SnapshotListener): SnapshotSubscription;
19
+ subscribeState(listener: SnapshotStateListener): SnapshotSubscription;
18
20
  latestState(): SnapshotState | null;
19
21
  commit(next: SnapshotState): void;
22
+ clear(): void;
20
23
  close(): void;
21
24
  }
22
25
  //# sourceMappingURL=snapshot-store.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"snapshot-store.d.ts","sourceRoot":"","sources":["../src/snapshot-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD,MAAM,MAAM,gBAAgB,GAAG,CAAC,QAAQ,EAAE,YAAY,KAAK,IAAI,CAAC;AAEhE,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;CACnE;AAQD,uFAAuF;AACvF,qBAAa,aAAa;;gBAQZ,OAAO,GAAE,oBAAyB;IAI9C,IAAI,KAAK,IAAI,aAAa,GAAG,IAAI,CAEhC;IAED,WAAW,IAAI,YAAY,GAAG,IAAI;IAIlC,SAAS,CAAC,QAAQ,EAAE,gBAAgB,GAAG,oBAAoB;IA2B3D,WAAW,IAAI,aAAa,GAAG,IAAI;IAInC,MAAM,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI;IAqBjC,KAAK,IAAI,IAAI;CA0Bd"}
1
+ {"version":3,"file":"snapshot-store.d.ts","sourceRoot":"","sources":["../src/snapshot-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD,MAAM,MAAM,gBAAgB,GAAG,CAAC,QAAQ,EAAE,YAAY,KAAK,IAAI,CAAC;AAChE,MAAM,MAAM,qBAAqB,GAAG,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI,KAAK,IAAI,CAAC;AAE5E,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;CACnE;AAkBD,uFAAuF;AACvF,qBAAa,aAAa;;gBAUZ,OAAO,GAAE,oBAAyB;IAI9C,IAAI,KAAK,IAAI,aAAa,GAAG,IAAI,CAEhC;IAED,WAAW,IAAI,YAAY,GAAG,IAAI;IAIlC,SAAS,CAAC,QAAQ,EAAE,gBAAgB,GAAG,oBAAoB;IA6B3D,cAAc,CAAC,QAAQ,EAAE,qBAAqB,GAAG,oBAAoB;IA6BrE,WAAW,IAAI,aAAa,GAAG,IAAI;IAMnC,MAAM,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI;IAmBjC,KAAK,IAAI,IAAI;IAkBb,KAAK,IAAI,IAAI;CA6Dd"}
@@ -1,9 +1,11 @@
1
1
  /** Owns immutable snapshot publication and shields listeners from reentrant writes. */
2
2
  export class SnapshotStore {
3
3
  #listeners = new Set();
4
+ #stateListeners = new Set();
4
5
  #onListenerError;
5
6
  #pendingCommits = [];
6
7
  #closed = false;
8
+ #listenerSequence = 0;
7
9
  #notifying = false;
8
10
  #state = null;
9
11
  constructor(options = {}) {
@@ -18,8 +20,10 @@ export class SnapshotStore {
18
20
  subscribe(listener) {
19
21
  const registration = {
20
22
  active: true,
23
+ kind: "snapshot",
21
24
  lastSnapshot: null,
22
25
  listener,
26
+ sequence: ++this.#listenerSequence,
23
27
  };
24
28
  if (!this.#closed) {
25
29
  this.#listeners.add(registration);
@@ -42,8 +46,39 @@ export class SnapshotStore {
42
46
  },
43
47
  });
44
48
  }
49
+ subscribeState(listener) {
50
+ const registration = {
51
+ active: true,
52
+ kind: "state",
53
+ lastSnapshot: null,
54
+ listener,
55
+ sequence: ++this.#listenerSequence,
56
+ };
57
+ if (!this.#closed) {
58
+ this.#stateListeners.add(registration);
59
+ if (this.#state !== null) {
60
+ this.#callStateListener(registration, this.#state.snapshot);
61
+ }
62
+ }
63
+ else {
64
+ registration.active = false;
65
+ }
66
+ return Object.freeze({
67
+ get closed() {
68
+ return !registration.active;
69
+ },
70
+ dispose: () => {
71
+ if (!registration.active)
72
+ return;
73
+ registration.active = false;
74
+ this.#stateListeners.delete(registration);
75
+ },
76
+ });
77
+ }
45
78
  latestState() {
46
- return this.#pendingCommits.at(-1) ?? this.#state;
79
+ return this.#pendingCommits.length === 0
80
+ ? this.#state
81
+ : this.#pendingCommits.at(-1);
47
82
  }
48
83
  commit(next) {
49
84
  const latest = this.latestState();
@@ -55,11 +90,29 @@ export class SnapshotStore {
55
90
  this.#notifying = true;
56
91
  try {
57
92
  while (!this.#closed && this.#pendingCommits.length > 0) {
58
- const state = this.#pendingCommits.shift();
93
+ const state = this.#pendingCommits.shift() ?? null;
59
94
  this.#state = state;
60
- for (const registration of [...this.#listeners]) {
61
- this.#callListener(registration, state.snapshot);
62
- }
95
+ this.#publish(state);
96
+ }
97
+ }
98
+ finally {
99
+ this.#notifying = false;
100
+ if (this.#closed)
101
+ this.#pendingCommits.length = 0;
102
+ }
103
+ }
104
+ clear() {
105
+ if (this.#closed || this.latestState() === null)
106
+ return;
107
+ this.#pendingCommits.push(null);
108
+ if (this.#notifying)
109
+ return;
110
+ this.#notifying = true;
111
+ try {
112
+ while (!this.#closed && this.#pendingCommits.length > 0) {
113
+ const state = this.#pendingCommits.shift() ?? null;
114
+ this.#state = state;
115
+ this.#publish(state);
63
116
  }
64
117
  }
65
118
  finally {
@@ -76,8 +129,25 @@ export class SnapshotStore {
76
129
  for (const registration of this.#listeners)
77
130
  registration.active = false;
78
131
  this.#listeners.clear();
132
+ for (const registration of this.#stateListeners) {
133
+ registration.active = false;
134
+ }
135
+ this.#stateListeners.clear();
79
136
  this.#state = null;
80
137
  }
138
+ #publish(state) {
139
+ const registrations = [...this.#listeners, ...this.#stateListeners].sort((left, right) => left.sequence - right.sequence);
140
+ for (const registration of registrations) {
141
+ if (registration.kind === "snapshot") {
142
+ if (state === null)
143
+ continue;
144
+ this.#callListener(registration, state.snapshot);
145
+ }
146
+ else {
147
+ this.#callStateListener(registration, state?.snapshot ?? null);
148
+ }
149
+ }
150
+ }
81
151
  #callListener(registration, snapshot) {
82
152
  if (!registration.active || registration.lastSnapshot === snapshot)
83
153
  return;
@@ -95,5 +165,21 @@ export class SnapshotStore {
95
165
  }
96
166
  }
97
167
  }
168
+ #callStateListener(registration, snapshot) {
169
+ if (!registration.active || registration.lastSnapshot === snapshot)
170
+ return;
171
+ registration.lastSnapshot = snapshot;
172
+ try {
173
+ registration.listener(snapshot);
174
+ }
175
+ catch (error) {
176
+ try {
177
+ this.#onListenerError?.(error);
178
+ }
179
+ catch {
180
+ // A diagnostic hook must not break publication to healthy listeners.
181
+ }
182
+ }
183
+ }
98
184
  }
99
185
  //# sourceMappingURL=snapshot-store.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"snapshot-store.js","sourceRoot":"","sources":["../src/snapshot-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"snapshot-store.js","sourceRoot":"","sources":["../src/snapshot-store.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@turingfocus/chat-runtime",
3
- "version": "0.6.0",
3
+ "version": "0.7.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.6.0"
31
+ "@turingfocus/chat-protocol": "^0.7.0"
32
32
  },
33
33
  "publishConfig": {
34
34
  "access": "public",