@rool-dev/sdk 0.3.1-dev.05537f7 → 0.3.1-dev.163d0ef
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.
- package/README.md +114 -24
- package/dist/channel.d.ts +135 -4
- package/dist/channel.d.ts.map +1 -1
- package/dist/channel.js +300 -30
- package/dist/channel.js.map +1 -1
- package/dist/client.d.ts +17 -1
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +21 -0
- package/dist/client.js.map +1 -1
- package/dist/graphql.d.ts +17 -11
- package/dist/graphql.d.ts.map +1 -1
- package/dist/graphql.js +87 -31
- package/dist/graphql.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/subscription.d.ts.map +1 -1
- package/dist/subscription.js +2 -0
- package/dist/subscription.js.map +1 -1
- package/dist/types.d.ts +52 -6
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/channel.js
CHANGED
|
@@ -36,6 +36,7 @@ export class RoolChannel extends EventEmitter {
|
|
|
36
36
|
_linkAccess;
|
|
37
37
|
_userId;
|
|
38
38
|
_channelId;
|
|
39
|
+
_conversationId;
|
|
39
40
|
_closed = false;
|
|
40
41
|
graphqlClient;
|
|
41
42
|
mediaClient;
|
|
@@ -66,6 +67,7 @@ export class RoolChannel extends EventEmitter {
|
|
|
66
67
|
this._userId = config.userId;
|
|
67
68
|
this._emitterLogger = config.logger;
|
|
68
69
|
this._channelId = config.channelId;
|
|
70
|
+
this._conversationId = 'default';
|
|
69
71
|
this.graphqlClient = config.graphqlClient;
|
|
70
72
|
this.mediaClient = config.mediaClient;
|
|
71
73
|
this.logger = config.logger;
|
|
@@ -134,17 +136,83 @@ export class RoolChannel extends EventEmitter {
|
|
|
134
136
|
get channelId() {
|
|
135
137
|
return this._channelId;
|
|
136
138
|
}
|
|
139
|
+
/**
|
|
140
|
+
* Get the conversation ID for this channel.
|
|
141
|
+
* Defaults to 'default' for most apps.
|
|
142
|
+
*/
|
|
143
|
+
get conversationId() {
|
|
144
|
+
return this._conversationId;
|
|
145
|
+
}
|
|
137
146
|
get isReadOnly() {
|
|
138
147
|
return this._role === 'viewer';
|
|
139
148
|
}
|
|
149
|
+
/**
|
|
150
|
+
* Get the app URL if this channel was created via installApp, or null.
|
|
151
|
+
*/
|
|
152
|
+
get appUrl() {
|
|
153
|
+
return this._channel?.appUrl ?? null;
|
|
154
|
+
}
|
|
140
155
|
// ===========================================================================
|
|
141
156
|
// Channel History Access
|
|
142
157
|
// ===========================================================================
|
|
143
158
|
/**
|
|
144
|
-
* Get interactions for
|
|
159
|
+
* Get interactions for the current conversation.
|
|
145
160
|
*/
|
|
146
161
|
getInteractions() {
|
|
147
|
-
return this.
|
|
162
|
+
return this._getInteractionsImpl(this._conversationId);
|
|
163
|
+
}
|
|
164
|
+
/** @internal */
|
|
165
|
+
_getInteractionsImpl(conversationId) {
|
|
166
|
+
return this._channel?.conversations[conversationId]?.interactions ?? [];
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* Get all conversations in this channel.
|
|
170
|
+
* Returns summary info (no full interaction data) for each conversation.
|
|
171
|
+
*/
|
|
172
|
+
getConversations() {
|
|
173
|
+
if (!this._channel)
|
|
174
|
+
return [];
|
|
175
|
+
return Object.entries(this._channel.conversations).map(([id, conv]) => ({
|
|
176
|
+
id,
|
|
177
|
+
name: conv.name ?? null,
|
|
178
|
+
systemInstruction: conv.systemInstruction ?? null,
|
|
179
|
+
createdAt: conv.createdAt,
|
|
180
|
+
createdBy: conv.createdBy,
|
|
181
|
+
interactionCount: conv.interactions.length,
|
|
182
|
+
}));
|
|
183
|
+
}
|
|
184
|
+
/**
|
|
185
|
+
* Delete a conversation from this channel.
|
|
186
|
+
* Cannot delete the conversation you are currently using.
|
|
187
|
+
*/
|
|
188
|
+
async deleteConversation(conversationId) {
|
|
189
|
+
if (conversationId === this._conversationId) {
|
|
190
|
+
throw new Error('Cannot delete the active conversation');
|
|
191
|
+
}
|
|
192
|
+
await this.graphqlClient.deleteConversation(this._id, this._channelId, conversationId);
|
|
193
|
+
// Optimistic local update — remove from cache and emit event
|
|
194
|
+
// in case the server doesn't send a conversation_updated event for deletes
|
|
195
|
+
if (this._channel?.conversations[conversationId]) {
|
|
196
|
+
delete this._channel.conversations[conversationId];
|
|
197
|
+
this.emit('conversationUpdated', {
|
|
198
|
+
conversationId,
|
|
199
|
+
channelId: this._channelId,
|
|
200
|
+
source: 'local_user',
|
|
201
|
+
});
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
// ===========================================================================
|
|
205
|
+
// Conversations
|
|
206
|
+
// ===========================================================================
|
|
207
|
+
/**
|
|
208
|
+
* Get a handle for a specific conversation within this channel.
|
|
209
|
+
* The handle scopes AI and mutation operations to that conversation's
|
|
210
|
+
* interaction history, while sharing the channel's single SSE connection.
|
|
211
|
+
*
|
|
212
|
+
* Conversations are auto-created on first interaction — no explicit create needed.
|
|
213
|
+
*/
|
|
214
|
+
conversation(conversationId) {
|
|
215
|
+
return new ConversationHandle(this, conversationId);
|
|
148
216
|
}
|
|
149
217
|
// ===========================================================================
|
|
150
218
|
// Channel Lifecycle
|
|
@@ -247,7 +315,11 @@ export class RoolChannel extends EventEmitter {
|
|
|
247
315
|
* @returns The matching objects and a descriptive message.
|
|
248
316
|
*/
|
|
249
317
|
async findObjects(options) {
|
|
250
|
-
return this.
|
|
318
|
+
return this._findObjectsImpl(options, this._conversationId);
|
|
319
|
+
}
|
|
320
|
+
/** @internal */
|
|
321
|
+
_findObjectsImpl(options, conversationId) {
|
|
322
|
+
return this.graphqlClient.findObjects(this._id, options, this._channelId, conversationId);
|
|
251
323
|
}
|
|
252
324
|
/**
|
|
253
325
|
* Get all object IDs (sync, from local cache).
|
|
@@ -272,6 +344,10 @@ export class RoolChannel extends EventEmitter {
|
|
|
272
344
|
* @returns The created object (with AI-filled content) and message
|
|
273
345
|
*/
|
|
274
346
|
async createObject(options) {
|
|
347
|
+
return this._createObjectImpl(options, this._conversationId);
|
|
348
|
+
}
|
|
349
|
+
/** @internal */
|
|
350
|
+
async _createObjectImpl(options, conversationId) {
|
|
275
351
|
const { data, ephemeral } = options;
|
|
276
352
|
// Use data.id if provided (string), otherwise generate
|
|
277
353
|
const objectId = typeof data.id === 'string' ? data.id : generateEntityId();
|
|
@@ -286,7 +362,7 @@ export class RoolChannel extends EventEmitter {
|
|
|
286
362
|
try {
|
|
287
363
|
// Await mutation — server processes AI placeholders before responding.
|
|
288
364
|
// SSE events arrive during the await and are buffered via _deliverObject.
|
|
289
|
-
const { message } = await this.graphqlClient.createObject(this.id, dataWithId, this._channelId, ephemeral);
|
|
365
|
+
const { message } = await this.graphqlClient.createObject(this.id, dataWithId, this._channelId, conversationId, ephemeral);
|
|
290
366
|
// Collect resolved object from buffer (or wait if not yet arrived)
|
|
291
367
|
const object = await this._collectObject(objectId);
|
|
292
368
|
return { object, message };
|
|
@@ -310,6 +386,10 @@ export class RoolChannel extends EventEmitter {
|
|
|
310
386
|
* @returns The updated object (with AI-filled content) and message
|
|
311
387
|
*/
|
|
312
388
|
async updateObject(objectId, options) {
|
|
389
|
+
return this._updateObjectImpl(objectId, options, this._conversationId);
|
|
390
|
+
}
|
|
391
|
+
/** @internal */
|
|
392
|
+
async _updateObjectImpl(objectId, options, conversationId) {
|
|
313
393
|
const { data, ephemeral } = options;
|
|
314
394
|
// id is immutable after creation (but null/undefined means delete attempt, which we also reject)
|
|
315
395
|
if (data?.id !== undefined && data.id !== null) {
|
|
@@ -335,7 +415,7 @@ export class RoolChannel extends EventEmitter {
|
|
|
335
415
|
this.emit('objectUpdated', { objectId, object: optimistic, source: 'local_user' });
|
|
336
416
|
}
|
|
337
417
|
try {
|
|
338
|
-
const { message } = await this.graphqlClient.updateObject(this.id, objectId, this._channelId, serverData, options.prompt, ephemeral);
|
|
418
|
+
const { message } = await this.graphqlClient.updateObject(this.id, objectId, this._channelId, conversationId, serverData, options.prompt, ephemeral);
|
|
339
419
|
const object = await this._collectObject(objectId);
|
|
340
420
|
return { object, message };
|
|
341
421
|
}
|
|
@@ -353,6 +433,10 @@ export class RoolChannel extends EventEmitter {
|
|
|
353
433
|
* Other objects that reference deleted objects via data fields will retain stale ref values.
|
|
354
434
|
*/
|
|
355
435
|
async deleteObjects(objectIds) {
|
|
436
|
+
return this._deleteObjectsImpl(objectIds, this._conversationId);
|
|
437
|
+
}
|
|
438
|
+
/** @internal */
|
|
439
|
+
async _deleteObjectsImpl(objectIds, conversationId) {
|
|
356
440
|
if (objectIds.length === 0)
|
|
357
441
|
return;
|
|
358
442
|
// Track for dedup and emit optimistic events
|
|
@@ -361,7 +445,7 @@ export class RoolChannel extends EventEmitter {
|
|
|
361
445
|
this.emit('objectDeleted', { objectId, source: 'local_user' });
|
|
362
446
|
}
|
|
363
447
|
try {
|
|
364
|
-
await this.graphqlClient.deleteObjects(this.id, objectIds, this._channelId);
|
|
448
|
+
await this.graphqlClient.deleteObjects(this.id, objectIds, this._channelId, conversationId);
|
|
365
449
|
}
|
|
366
450
|
catch (error) {
|
|
367
451
|
this.logger.error('[RoolChannel] Failed to delete objects:', error);
|
|
@@ -390,6 +474,10 @@ export class RoolChannel extends EventEmitter {
|
|
|
390
474
|
* @returns The created CollectionDef
|
|
391
475
|
*/
|
|
392
476
|
async createCollection(name, fields) {
|
|
477
|
+
return this._createCollectionImpl(name, fields, this._conversationId);
|
|
478
|
+
}
|
|
479
|
+
/** @internal */
|
|
480
|
+
async _createCollectionImpl(name, fields, conversationId) {
|
|
393
481
|
if (this._schema[name]) {
|
|
394
482
|
throw new Error(`Collection "${name}" already exists`);
|
|
395
483
|
}
|
|
@@ -397,7 +485,7 @@ export class RoolChannel extends EventEmitter {
|
|
|
397
485
|
const optimisticDef = { fields: fields.map(f => ({ name: f.name, type: f.type })) };
|
|
398
486
|
this._schema[name] = optimisticDef;
|
|
399
487
|
try {
|
|
400
|
-
return await this.graphqlClient.createCollection(this._id, name, fields, this._channelId);
|
|
488
|
+
return await this.graphqlClient.createCollection(this._id, name, fields, this._channelId, conversationId);
|
|
401
489
|
}
|
|
402
490
|
catch (error) {
|
|
403
491
|
this.logger.error('[RoolChannel] Failed to create collection:', error);
|
|
@@ -412,6 +500,10 @@ export class RoolChannel extends EventEmitter {
|
|
|
412
500
|
* @returns The updated CollectionDef
|
|
413
501
|
*/
|
|
414
502
|
async alterCollection(name, fields) {
|
|
503
|
+
return this._alterCollectionImpl(name, fields, this._conversationId);
|
|
504
|
+
}
|
|
505
|
+
/** @internal */
|
|
506
|
+
async _alterCollectionImpl(name, fields, conversationId) {
|
|
415
507
|
if (!this._schema[name]) {
|
|
416
508
|
throw new Error(`Collection "${name}" not found`);
|
|
417
509
|
}
|
|
@@ -419,7 +511,7 @@ export class RoolChannel extends EventEmitter {
|
|
|
419
511
|
// Optimistic local update
|
|
420
512
|
this._schema[name] = { fields: fields.map(f => ({ name: f.name, type: f.type })) };
|
|
421
513
|
try {
|
|
422
|
-
return await this.graphqlClient.alterCollection(this._id, name, fields, this._channelId);
|
|
514
|
+
return await this.graphqlClient.alterCollection(this._id, name, fields, this._channelId, conversationId);
|
|
423
515
|
}
|
|
424
516
|
catch (error) {
|
|
425
517
|
this.logger.error('[RoolChannel] Failed to alter collection:', error);
|
|
@@ -432,6 +524,10 @@ export class RoolChannel extends EventEmitter {
|
|
|
432
524
|
* @param name - Name of the collection to drop
|
|
433
525
|
*/
|
|
434
526
|
async dropCollection(name) {
|
|
527
|
+
return this._dropCollectionImpl(name, this._conversationId);
|
|
528
|
+
}
|
|
529
|
+
/** @internal */
|
|
530
|
+
async _dropCollectionImpl(name, conversationId) {
|
|
435
531
|
if (!this._schema[name]) {
|
|
436
532
|
throw new Error(`Collection "${name}" not found`);
|
|
437
533
|
}
|
|
@@ -439,7 +535,7 @@ export class RoolChannel extends EventEmitter {
|
|
|
439
535
|
// Optimistic local update
|
|
440
536
|
delete this._schema[name];
|
|
441
537
|
try {
|
|
442
|
-
await this.graphqlClient.dropCollection(this._id, name, this._channelId);
|
|
538
|
+
await this.graphqlClient.dropCollection(this._id, name, this._channelId, conversationId);
|
|
443
539
|
}
|
|
444
540
|
catch (error) {
|
|
445
541
|
this.logger.error('[RoolChannel] Failed to drop collection:', error);
|
|
@@ -451,48 +547,93 @@ export class RoolChannel extends EventEmitter {
|
|
|
451
547
|
// System Instructions
|
|
452
548
|
// ===========================================================================
|
|
453
549
|
/**
|
|
454
|
-
* Get the system instruction for
|
|
550
|
+
* Get the system instruction for the current conversation.
|
|
455
551
|
* Returns undefined if no system instruction is set.
|
|
456
552
|
*/
|
|
457
553
|
getSystemInstruction() {
|
|
458
|
-
return this.
|
|
554
|
+
return this._getSystemInstructionImpl(this._conversationId);
|
|
555
|
+
}
|
|
556
|
+
/** @internal */
|
|
557
|
+
_getSystemInstructionImpl(conversationId) {
|
|
558
|
+
return this._channel?.conversations[conversationId]?.systemInstruction;
|
|
459
559
|
}
|
|
460
560
|
/**
|
|
461
|
-
* Set the system instruction for
|
|
561
|
+
* Set the system instruction for the current conversation.
|
|
462
562
|
* Pass null to clear the instruction.
|
|
463
563
|
*/
|
|
464
564
|
async setSystemInstruction(instruction) {
|
|
565
|
+
return this._setSystemInstructionImpl(instruction, this._conversationId);
|
|
566
|
+
}
|
|
567
|
+
/** @internal */
|
|
568
|
+
async _setSystemInstructionImpl(instruction, conversationId) {
|
|
465
569
|
// Optimistic local update
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
createdBy: this._userId,
|
|
470
|
-
interactions: [],
|
|
471
|
-
};
|
|
472
|
-
}
|
|
473
|
-
const previous = this._channel;
|
|
570
|
+
this._ensureConversationImpl(conversationId);
|
|
571
|
+
const conv = this._channel.conversations[conversationId];
|
|
572
|
+
const previousInstruction = conv.systemInstruction;
|
|
474
573
|
if (instruction === null) {
|
|
475
|
-
|
|
476
|
-
this._channel = rest;
|
|
574
|
+
delete conv.systemInstruction;
|
|
477
575
|
}
|
|
478
576
|
else {
|
|
479
|
-
|
|
577
|
+
conv.systemInstruction = instruction;
|
|
480
578
|
}
|
|
481
|
-
// Emit
|
|
482
|
-
this.emit('
|
|
579
|
+
// Emit events for backward compat and new API
|
|
580
|
+
this.emit('conversationUpdated', {
|
|
581
|
+
conversationId,
|
|
483
582
|
channelId: this._channelId,
|
|
484
583
|
source: 'local_user',
|
|
485
584
|
});
|
|
585
|
+
if (conversationId === this._conversationId) {
|
|
586
|
+
this.emit('channelUpdated', {
|
|
587
|
+
channelId: this._channelId,
|
|
588
|
+
source: 'local_user',
|
|
589
|
+
});
|
|
590
|
+
}
|
|
486
591
|
// Call server
|
|
487
592
|
try {
|
|
488
|
-
await this.graphqlClient.
|
|
593
|
+
await this.graphqlClient.updateConversation(this._id, this._channelId, conversationId, { systemInstruction: instruction });
|
|
489
594
|
}
|
|
490
595
|
catch (error) {
|
|
491
596
|
this.logger.error('[RoolChannel] Failed to set system instruction:', error);
|
|
492
|
-
|
|
597
|
+
// Rollback
|
|
598
|
+
if (previousInstruction === undefined) {
|
|
599
|
+
delete conv.systemInstruction;
|
|
600
|
+
}
|
|
601
|
+
else {
|
|
602
|
+
conv.systemInstruction = previousInstruction;
|
|
603
|
+
}
|
|
493
604
|
throw error;
|
|
494
605
|
}
|
|
495
606
|
}
|
|
607
|
+
/**
|
|
608
|
+
* Rename the current conversation.
|
|
609
|
+
*/
|
|
610
|
+
async renameConversation(name) {
|
|
611
|
+
return this._renameConversationImpl(name, this._conversationId);
|
|
612
|
+
}
|
|
613
|
+
/** @internal */
|
|
614
|
+
async _renameConversationImpl(name, conversationId) {
|
|
615
|
+
await this.graphqlClient.updateConversation(this._id, this._channelId, conversationId, { name });
|
|
616
|
+
}
|
|
617
|
+
/**
|
|
618
|
+
* Ensure a conversation exists in the local channel cache.
|
|
619
|
+
* @internal
|
|
620
|
+
*/
|
|
621
|
+
_ensureConversationImpl(conversationId) {
|
|
622
|
+
if (!this._channel) {
|
|
623
|
+
this._channel = {
|
|
624
|
+
createdAt: Date.now(),
|
|
625
|
+
createdBy: this._userId,
|
|
626
|
+
conversations: {},
|
|
627
|
+
};
|
|
628
|
+
}
|
|
629
|
+
if (!this._channel.conversations[conversationId]) {
|
|
630
|
+
this._channel.conversations[conversationId] = {
|
|
631
|
+
createdAt: Date.now(),
|
|
632
|
+
createdBy: this._userId,
|
|
633
|
+
interactions: [],
|
|
634
|
+
};
|
|
635
|
+
}
|
|
636
|
+
}
|
|
496
637
|
// ===========================================================================
|
|
497
638
|
// Metadata Operations
|
|
498
639
|
// ===========================================================================
|
|
@@ -501,10 +642,14 @@ export class RoolChannel extends EventEmitter {
|
|
|
501
642
|
* Metadata is stored in meta and hidden from AI operations.
|
|
502
643
|
*/
|
|
503
644
|
setMetadata(key, value) {
|
|
645
|
+
this._setMetadataImpl(key, value, this._conversationId);
|
|
646
|
+
}
|
|
647
|
+
/** @internal */
|
|
648
|
+
_setMetadataImpl(key, value, conversationId) {
|
|
504
649
|
this._meta[key] = value;
|
|
505
650
|
this.emit('metadataUpdated', { metadata: this._meta, source: 'local_user' });
|
|
506
651
|
// Fire-and-forget server call
|
|
507
|
-
this.graphqlClient.setSpaceMeta(this.id, this._meta, this._channelId)
|
|
652
|
+
this.graphqlClient.setSpaceMeta(this.id, this._meta, this._channelId, conversationId)
|
|
508
653
|
.catch((error) => {
|
|
509
654
|
this.logger.error('[RoolChannel] Failed to set meta:', error);
|
|
510
655
|
});
|
|
@@ -529,13 +674,17 @@ export class RoolChannel extends EventEmitter {
|
|
|
529
674
|
* @returns The message from the AI and the list of objects that were created or modified
|
|
530
675
|
*/
|
|
531
676
|
async prompt(prompt, options) {
|
|
677
|
+
return this._promptImpl(prompt, options, this._conversationId);
|
|
678
|
+
}
|
|
679
|
+
/** @internal */
|
|
680
|
+
async _promptImpl(prompt, options, conversationId) {
|
|
532
681
|
// Upload attachments via media endpoint, then send URLs to the server
|
|
533
682
|
const { attachments, ...rest } = options ?? {};
|
|
534
683
|
let attachmentUrls;
|
|
535
684
|
if (attachments?.length) {
|
|
536
685
|
attachmentUrls = await Promise.all(attachments.map(file => this.mediaClient.upload(this._id, file)));
|
|
537
686
|
}
|
|
538
|
-
const result = await this.graphqlClient.prompt(this._id, prompt, this._channelId, { ...rest, attachmentUrls });
|
|
687
|
+
const result = await this.graphqlClient.prompt(this._id, prompt, this._channelId, conversationId, { ...rest, attachmentUrls });
|
|
539
688
|
// Collect modified objects — they arrive via SSE events during/after the mutation.
|
|
540
689
|
// Try collecting from buffer first, then fetch any missing from server.
|
|
541
690
|
const objects = [];
|
|
@@ -722,12 +871,42 @@ export class RoolChannel extends EventEmitter {
|
|
|
722
871
|
}
|
|
723
872
|
break;
|
|
724
873
|
case 'channel_updated':
|
|
725
|
-
// Only update if it's our channel
|
|
874
|
+
// Only update if it's our channel — channel_updated is now metadata-only (name, appUrl)
|
|
726
875
|
if (event.channelId === this._channelId && event.channel) {
|
|
727
876
|
this._channel = event.channel;
|
|
728
877
|
this.emit('channelUpdated', { channelId: event.channelId, source: changeSource });
|
|
729
878
|
}
|
|
730
879
|
break;
|
|
880
|
+
case 'conversation_updated':
|
|
881
|
+
// Only update if it's our channel
|
|
882
|
+
if (event.channelId === this._channelId && event.conversationId) {
|
|
883
|
+
if (!this._channel) {
|
|
884
|
+
this._channel = {
|
|
885
|
+
createdAt: Date.now(),
|
|
886
|
+
createdBy: this._userId,
|
|
887
|
+
conversations: {},
|
|
888
|
+
};
|
|
889
|
+
}
|
|
890
|
+
if (event.conversation) {
|
|
891
|
+
// Update or create conversation in local cache
|
|
892
|
+
this._channel.conversations[event.conversationId] = event.conversation;
|
|
893
|
+
}
|
|
894
|
+
else {
|
|
895
|
+
// Conversation was deleted
|
|
896
|
+
delete this._channel.conversations[event.conversationId];
|
|
897
|
+
}
|
|
898
|
+
// Emit the new conversationUpdated event
|
|
899
|
+
this.emit('conversationUpdated', {
|
|
900
|
+
conversationId: event.conversationId,
|
|
901
|
+
channelId: event.channelId,
|
|
902
|
+
source: changeSource,
|
|
903
|
+
});
|
|
904
|
+
// Backward compat: also emit channelUpdated when the active conversation updates
|
|
905
|
+
if (event.conversationId === this._conversationId) {
|
|
906
|
+
this.emit('channelUpdated', { channelId: event.channelId, source: changeSource });
|
|
907
|
+
}
|
|
908
|
+
}
|
|
909
|
+
break;
|
|
731
910
|
case 'space_changed':
|
|
732
911
|
// Full reload needed (undo/redo, bulk operations)
|
|
733
912
|
void this.graphqlClient.openChannel(this._id, this._channelId).then((result) => {
|
|
@@ -816,4 +995,95 @@ export class RoolChannel extends EventEmitter {
|
|
|
816
995
|
}
|
|
817
996
|
}
|
|
818
997
|
}
|
|
998
|
+
// =============================================================================
|
|
999
|
+
// ConversationHandle — Scoped proxy for a specific conversation
|
|
1000
|
+
// =============================================================================
|
|
1001
|
+
/**
|
|
1002
|
+
* A lightweight handle for a specific conversation within a channel.
|
|
1003
|
+
*
|
|
1004
|
+
* Scopes AI and mutation operations to a particular conversation's interaction
|
|
1005
|
+
* history, while sharing the channel's single SSE connection and object state.
|
|
1006
|
+
*
|
|
1007
|
+
* Obtain via `channel.conversation('thread-id')`.
|
|
1008
|
+
* Conversations are auto-created on first interaction.
|
|
1009
|
+
*/
|
|
1010
|
+
export class ConversationHandle {
|
|
1011
|
+
/** @internal */
|
|
1012
|
+
_channel;
|
|
1013
|
+
_conversationId;
|
|
1014
|
+
/** @internal */
|
|
1015
|
+
constructor(channel, conversationId) {
|
|
1016
|
+
this._channel = channel;
|
|
1017
|
+
this._conversationId = conversationId;
|
|
1018
|
+
}
|
|
1019
|
+
/** The conversation ID this handle is scoped to. */
|
|
1020
|
+
get conversationId() { return this._conversationId; }
|
|
1021
|
+
// ---------------------------------------------------------------------------
|
|
1022
|
+
// Conversation History
|
|
1023
|
+
// ---------------------------------------------------------------------------
|
|
1024
|
+
/** Get interactions for this conversation. */
|
|
1025
|
+
getInteractions() {
|
|
1026
|
+
return this._channel._getInteractionsImpl(this._conversationId);
|
|
1027
|
+
}
|
|
1028
|
+
/** Get the system instruction for this conversation. */
|
|
1029
|
+
getSystemInstruction() {
|
|
1030
|
+
return this._channel._getSystemInstructionImpl(this._conversationId);
|
|
1031
|
+
}
|
|
1032
|
+
/** Set the system instruction for this conversation. Pass null to clear. */
|
|
1033
|
+
async setSystemInstruction(instruction) {
|
|
1034
|
+
return this._channel._setSystemInstructionImpl(instruction, this._conversationId);
|
|
1035
|
+
}
|
|
1036
|
+
/** Rename this conversation. */
|
|
1037
|
+
async rename(name) {
|
|
1038
|
+
return this._channel._renameConversationImpl(name, this._conversationId);
|
|
1039
|
+
}
|
|
1040
|
+
// ---------------------------------------------------------------------------
|
|
1041
|
+
// Object Operations (scoped to this conversation's interaction history)
|
|
1042
|
+
// ---------------------------------------------------------------------------
|
|
1043
|
+
/** Find objects using structured filters and/or natural language. */
|
|
1044
|
+
async findObjects(options) {
|
|
1045
|
+
return this._channel._findObjectsImpl(options, this._conversationId);
|
|
1046
|
+
}
|
|
1047
|
+
/** Create a new object. */
|
|
1048
|
+
async createObject(options) {
|
|
1049
|
+
return this._channel._createObjectImpl(options, this._conversationId);
|
|
1050
|
+
}
|
|
1051
|
+
/** Update an existing object. */
|
|
1052
|
+
async updateObject(objectId, options) {
|
|
1053
|
+
return this._channel._updateObjectImpl(objectId, options, this._conversationId);
|
|
1054
|
+
}
|
|
1055
|
+
/** Delete objects by IDs. */
|
|
1056
|
+
async deleteObjects(objectIds) {
|
|
1057
|
+
return this._channel._deleteObjectsImpl(objectIds, this._conversationId);
|
|
1058
|
+
}
|
|
1059
|
+
// ---------------------------------------------------------------------------
|
|
1060
|
+
// AI
|
|
1061
|
+
// ---------------------------------------------------------------------------
|
|
1062
|
+
/** Send a prompt to the AI agent, scoped to this conversation's history. */
|
|
1063
|
+
async prompt(text, options) {
|
|
1064
|
+
return this._channel._promptImpl(text, options, this._conversationId);
|
|
1065
|
+
}
|
|
1066
|
+
// ---------------------------------------------------------------------------
|
|
1067
|
+
// Schema (scoped to this conversation's interaction history)
|
|
1068
|
+
// ---------------------------------------------------------------------------
|
|
1069
|
+
/** Create a new collection schema. */
|
|
1070
|
+
async createCollection(name, fields) {
|
|
1071
|
+
return this._channel._createCollectionImpl(name, fields, this._conversationId);
|
|
1072
|
+
}
|
|
1073
|
+
/** Alter an existing collection schema. */
|
|
1074
|
+
async alterCollection(name, fields) {
|
|
1075
|
+
return this._channel._alterCollectionImpl(name, fields, this._conversationId);
|
|
1076
|
+
}
|
|
1077
|
+
/** Drop a collection schema. */
|
|
1078
|
+
async dropCollection(name) {
|
|
1079
|
+
return this._channel._dropCollectionImpl(name, this._conversationId);
|
|
1080
|
+
}
|
|
1081
|
+
// ---------------------------------------------------------------------------
|
|
1082
|
+
// Metadata (scoped to this conversation's interaction history)
|
|
1083
|
+
// ---------------------------------------------------------------------------
|
|
1084
|
+
/** Set a space-level metadata value. */
|
|
1085
|
+
setMetadata(key, value) {
|
|
1086
|
+
return this._channel._setMetadataImpl(key, value, this._conversationId);
|
|
1087
|
+
}
|
|
1088
|
+
}
|
|
819
1089
|
//# sourceMappingURL=channel.js.map
|
package/dist/channel.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channel.js","sourceRoot":"","sources":["../src/channel.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"channel.js","sourceRoot":"","sources":["../src/channel.ts"],"names":[],"mappings":"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"}
|