@moltzap/client 2026.520.2 → 2026.524.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.
- package/dist/agent-client.d.ts +66 -0
- package/dist/agent-client.d.ts.map +1 -0
- package/dist/agent-client.js +287 -0
- package/dist/agent-client.js.map +1 -0
- package/dist/auth.d.ts +1 -1
- package/dist/auth.js +1 -1
- package/dist/channel-core-context.test.js +16 -8
- package/dist/channel-core-context.test.js.map +1 -1
- package/dist/channel-core-dispatch.test.js +17 -10
- package/dist/channel-core-dispatch.test.js.map +1 -1
- package/dist/channel-core-enrichment.d.ts +2 -1
- package/dist/channel-core-enrichment.d.ts.map +1 -1
- package/dist/channel-core-enrichment.js +4 -2
- package/dist/channel-core-enrichment.js.map +1 -1
- package/dist/channel-core-test-support.d.ts +5 -3
- package/dist/channel-core-test-support.d.ts.map +1 -1
- package/dist/channel-core-test-support.js +6 -4
- package/dist/channel-core-test-support.js.map +1 -1
- package/dist/channel-core.d.ts +18 -13
- package/dist/channel-core.d.ts.map +1 -1
- package/dist/channel-core.js +11 -10
- package/dist/channel-core.js.map +1 -1
- package/dist/cli/commands/conversations.d.ts +15 -63
- package/dist/cli/commands/conversations.d.ts.map +1 -1
- package/dist/cli/commands/conversations.js +26 -167
- package/dist/cli/commands/conversations.js.map +1 -1
- package/dist/cli/commands/messages.d.ts +5 -2
- package/dist/cli/commands/messages.d.ts.map +1 -1
- package/dist/cli/commands/messages.js +10 -5
- package/dist/cli/commands/messages.js.map +1 -1
- package/dist/cli/commands/messages.test.js +6 -1
- package/dist/cli/commands/messages.test.js.map +1 -1
- package/dist/cli/commands/send.d.ts +6 -37
- package/dist/cli/commands/send.d.ts.map +1 -1
- package/dist/cli/commands/send.js +35 -57
- package/dist/cli/commands/send.js.map +1 -1
- package/dist/cli/commands/send.test.js +14 -19
- package/dist/cli/commands/send.test.js.map +1 -1
- package/dist/cli/commands/start.d.ts +3 -3
- package/dist/cli/commands/start.d.ts.map +1 -1
- package/dist/cli/commands/start.js +21 -20
- package/dist/cli/commands/start.js.map +1 -1
- package/dist/cli/commands/start.test.js +9 -11
- package/dist/cli/commands/start.test.js.map +1 -1
- package/dist/cli/socket-client.d.ts +0 -17
- package/dist/cli/socket-client.d.ts.map +1 -1
- package/dist/cli/socket-client.js +1 -39
- package/dist/cli/socket-client.js.map +1 -1
- package/dist/cli/transport.d.ts.map +1 -1
- package/dist/cli/transport.js +33 -6
- package/dist/cli/transport.js.map +1 -1
- package/dist/cli/transport.test.js +31 -12
- package/dist/cli/transport.test.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/notification/__tests__/snapshot-semantics.types-check.js +1 -1
- package/dist/notification/stream.d.ts +3 -3
- package/dist/notification/stream.js +3 -3
- package/dist/runtime/close-info.d.ts +2 -2
- package/dist/runtime/close-info.js +1 -1
- package/dist/runtime/frame.test.js +4 -2
- package/dist/runtime/frame.test.js.map +1 -1
- package/dist/runtime/index.d.ts +1 -1
- package/dist/runtime/index.js +1 -1
- package/dist/runtime/local-history.d.ts +1 -1
- package/dist/runtime/local-history.d.ts.map +1 -1
- package/dist/runtime/local-history.js +1 -1
- package/dist/runtime/local-history.js.map +1 -1
- package/dist/runtime/subscribers.d.ts +3 -3
- package/dist/runtime/subscribers.js +2 -2
- package/dist/service-archive-purge.d.ts +17 -0
- package/dist/service-archive-purge.d.ts.map +1 -0
- package/dist/service-archive-purge.js +32 -0
- package/dist/service-archive-purge.js.map +1 -0
- package/dist/service.d.ts +15 -19
- package/dist/service.d.ts.map +1 -1
- package/dist/service.js +79 -100
- package/dist/service.js.map +1 -1
- package/dist/service.test.js +50 -26
- package/dist/service.test.js.map +1 -1
- package/dist/test/index.d.ts +4 -4
- package/dist/test/index.d.ts.map +1 -1
- package/dist/test/index.js +4 -4
- package/dist/test/index.js.map +1 -1
- package/dist/test-utils/channel-service-fixture.d.ts +2 -1
- package/dist/test-utils/channel-service-fixture.d.ts.map +1 -1
- package/dist/test-utils/channel-service-fixture.js +11 -6
- package/dist/test-utils/channel-service-fixture.js.map +1 -1
- package/dist/test-utils/conformance-adapter.d.ts +3 -3
- package/dist/test-utils/conformance-adapter.js +7 -7
- package/dist/test-utils/conformance-adapter.js.map +1 -1
- package/dist/test-utils/ids.d.ts +3 -1
- package/dist/test-utils/ids.d.ts.map +1 -1
- package/dist/test-utils/ids.js +3 -1
- package/dist/test-utils/ids.js.map +1 -1
- package/dist/test-utils/index.d.ts +1 -1
- package/dist/test-utils/index.d.ts.map +1 -1
- package/dist/test-utils/index.js +1 -1
- package/dist/test-utils/index.js.map +1 -1
- package/dist/{ws-client-test-support.d.ts → tm-client-test-support.d.ts} +14 -13
- package/dist/tm-client-test-support.d.ts.map +1 -0
- package/dist/{ws-client-test-support.js → tm-client-test-support.js} +51 -18
- package/dist/tm-client-test-support.js.map +1 -0
- package/dist/{ws-client.d.ts → tm-client.d.ts} +14 -19
- package/dist/tm-client.d.ts.map +1 -0
- package/dist/{ws-client.js → tm-client.js} +10 -24
- package/dist/tm-client.js.map +1 -0
- package/dist/tm-client.test.d.ts +2 -0
- package/dist/tm-client.test.d.ts.map +1 -0
- package/dist/{ws-client.test.js → tm-client.test.js} +41 -29
- package/dist/tm-client.test.js.map +1 -0
- package/package.json +5 -4
- package/dist/cli/commands/conversations-v2.test.d.ts +0 -2
- package/dist/cli/commands/conversations-v2.test.d.ts.map +0 -1
- package/dist/cli/commands/conversations-v2.test.js +0 -107
- package/dist/cli/commands/conversations-v2.test.js.map +0 -1
- package/dist/ws-client-test-support.d.ts.map +0 -1
- package/dist/ws-client-test-support.js.map +0 -1
- package/dist/ws-client.d.ts.map +0 -1
- package/dist/ws-client.js.map +0 -1
- package/dist/ws-client.test.d.ts +0 -2
- package/dist/ws-client.test.d.ts.map +0 -1
- package/dist/ws-client.test.js.map +0 -1
package/dist/service.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { FileSystem, Path } from "@effect/platform";
|
|
2
2
|
import { NodeContext } from "@effect/platform-node";
|
|
3
|
-
import { AgentsLookup, AgentsLookupByName,
|
|
3
|
+
import { AgentsLookup, AgentsLookupByName, DispatchRequest, DispatchRelease, DispatchesConsumed, DispatchesExpired, DispatchesGet, MessageReceivedNotificationDefinition, TaskConversationCreatedNotificationDefinition, TaskConversationArchivedNotificationDefinition, TaskConversationUnarchivedNotificationDefinition, ConversationArchivedError, DEFAULT_APP_ID, MessagesList, MessagesSend, TaskRequest, TaskConversationList, NotConnectedError, serverRpcMethods, RpcServerError, RpcTimeoutError, } from "@moltzap/protocol";
|
|
4
4
|
import { Config, ConfigProvider, Effect, HashMap, Option, Ref, Scope, Stream, } from "effect";
|
|
5
|
-
import {
|
|
5
|
+
import { MoltZapAgentClient } from "./agent-client.js";
|
|
6
6
|
import { AgentNotFoundError } from "./runtime/errors.js";
|
|
7
7
|
import { getOr, snapshot } from "./runtime/refs.js";
|
|
8
8
|
import { LocalServiceCommands } from "./runtime/local-service-commands.js";
|
|
@@ -11,10 +11,13 @@ import { startLocalSocketServer, stopLocalSocketServer, } from "./runtime/local-
|
|
|
11
11
|
import { buildContextEntries, makeContextCandidate, newMessagesForConversation, notificationTraceRecord, renderPart, ServiceInputError, } from "./runtime/service-helpers.js";
|
|
12
12
|
import { decodeHistoryRequest, formatHistoryMessage, lastReadIdsForSession, } from "./runtime/local-history.js";
|
|
13
13
|
import { composeServiceTeardown } from "./runtime/service-teardown.js";
|
|
14
|
+
import { purgeAgentCacheEntries, purgeLastNotified, purgeLastRead, } from "./service-archive-purge.js";
|
|
14
15
|
const CROSS_CONTEXT_TEXT_LIMIT = 120;
|
|
15
16
|
const DEFAULT_MAX_CONTEXT_CONVERSATIONS = 5;
|
|
16
17
|
const DEFAULT_MAX_MESSAGES_PER_CONVERSATION = 3;
|
|
17
18
|
const HISTORY_LOOKUP_CONCURRENCY = 2;
|
|
19
|
+
const SEND_TO_AGENT_LOOKUP_PAGE_SIZE = 50;
|
|
20
|
+
const SEND_TO_AGENT_LOOKUP_MAX_PAGES = 20;
|
|
18
21
|
const ClientEventLogDir = Config.option(Config.string("MOLTZAP_CLIENT_EVENT_LOG_DIR"));
|
|
19
22
|
const getClientEventLogDir = () => Option.getOrUndefined(Effect.runSync(ClientEventLogDir.pipe(Effect.withConfigProvider(ConfigProvider.fromEnv()))));
|
|
20
23
|
function appendClientEventTrace(record) {
|
|
@@ -139,19 +142,15 @@ export class MoltZapService {
|
|
|
139
142
|
(notification) => this.handleMessageReceivedNotification(notification.params),
|
|
140
143
|
],
|
|
141
144
|
[
|
|
142
|
-
|
|
145
|
+
TaskConversationCreatedNotificationDefinition,
|
|
143
146
|
(notification) => this.handleConversationCreatedNotification(notification.params),
|
|
144
147
|
],
|
|
145
148
|
[
|
|
146
|
-
|
|
147
|
-
(notification) => this.handleConversationUpdatedNotification(notification.params),
|
|
148
|
-
],
|
|
149
|
-
[
|
|
150
|
-
ConversationArchivedNotificationDefinition,
|
|
149
|
+
TaskConversationArchivedNotificationDefinition,
|
|
151
150
|
(notification) => this.handleConversationArchivedNotification(notification.params),
|
|
152
151
|
],
|
|
153
152
|
[
|
|
154
|
-
|
|
153
|
+
TaskConversationUnarchivedNotificationDefinition,
|
|
155
154
|
(notification) => this.handleConversationUnarchivedNotification(notification.params),
|
|
156
155
|
],
|
|
157
156
|
[
|
|
@@ -180,7 +179,7 @@ export class MoltZapService {
|
|
|
180
179
|
/** Effect-native: compose via `yield*` or bridge at the edge via `Effect.runPromise`. */
|
|
181
180
|
connect() {
|
|
182
181
|
return Effect.gen(this, function* () {
|
|
183
|
-
const client = new
|
|
182
|
+
const client = new MoltZapAgentClient({
|
|
184
183
|
serverUrl: this.opts.serverUrl,
|
|
185
184
|
agentKey: this.opts.agentKey,
|
|
186
185
|
// Spec #222 OQ-6: arg required. The body doesn't branch on
|
|
@@ -322,7 +321,7 @@ export class MoltZapService {
|
|
|
322
321
|
case LocalServiceCommands.History:
|
|
323
322
|
return this.handleHistoryRequest(params);
|
|
324
323
|
default: {
|
|
325
|
-
const definition =
|
|
324
|
+
const definition = serverRpcMethods.find((d) => d.name === method);
|
|
326
325
|
if (definition === undefined ||
|
|
327
326
|
!definition.validateParams(params)) {
|
|
328
327
|
return Effect.fail(new ServiceInputError({
|
|
@@ -338,6 +337,7 @@ export class MoltZapService {
|
|
|
338
337
|
return Effect.gen(this, function* () {
|
|
339
338
|
const request = yield* decodeHistoryRequest(params);
|
|
340
339
|
const result = yield* this.sendRpc(MessagesList, {
|
|
340
|
+
taskId: request.taskId,
|
|
341
341
|
conversationId: request.conversationId,
|
|
342
342
|
limit: request.limit,
|
|
343
343
|
});
|
|
@@ -389,9 +389,12 @@ export class MoltZapService {
|
|
|
389
389
|
});
|
|
390
390
|
}
|
|
391
391
|
fetchHistoryConversationMeta(convId) {
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
}).pipe(Effect.map((result) =>
|
|
392
|
+
// Spec D3 D10: ConversationsGet retires; client filters
|
|
393
|
+
// TaskConversationList output for the matching conversation id.
|
|
394
|
+
return this.sendRpc(TaskConversationList, {}).pipe(Effect.map((result) => {
|
|
395
|
+
const hit = result.items.find((item) => item.conversation.id === convId);
|
|
396
|
+
return hit?.conversation;
|
|
397
|
+
}), Effect.catchAll(() => Effect.succeed(undefined)));
|
|
395
398
|
}
|
|
396
399
|
advanceHistoryLastRead(request, messages) {
|
|
397
400
|
if (request.sessionKey === undefined || messages.length === 0) {
|
|
@@ -451,18 +454,19 @@ export class MoltZapService {
|
|
|
451
454
|
});
|
|
452
455
|
}
|
|
453
456
|
// --- Messaging ---
|
|
454
|
-
send(
|
|
455
|
-
if (this.isConversationArchived(
|
|
457
|
+
send(taskId, conversationId, text, opts) {
|
|
458
|
+
if (this.isConversationArchived(conversationId)) {
|
|
456
459
|
return Effect.fail(new RpcServerError({
|
|
457
460
|
code: ConversationArchivedError.code,
|
|
458
461
|
message: "Conversation is archived",
|
|
459
462
|
}));
|
|
460
463
|
}
|
|
461
464
|
return Effect.asVoid(this.sendRpc(MessagesSend, {
|
|
462
|
-
|
|
465
|
+
taskId,
|
|
466
|
+
conversationId,
|
|
463
467
|
parts: [{ type: "text", text }],
|
|
464
|
-
...(opts?.replyTo ? { replyToId: opts.replyTo } : {}),
|
|
465
|
-
...(opts?.dispatchLeaseId
|
|
468
|
+
...(opts?.replyTo !== undefined ? { replyToId: opts.replyTo } : {}),
|
|
469
|
+
...(opts?.dispatchLeaseId !== undefined
|
|
466
470
|
? { dispatchLeaseId: opts.dispatchLeaseId }
|
|
467
471
|
: {}),
|
|
468
472
|
}));
|
|
@@ -486,8 +490,8 @@ export class MoltZapService {
|
|
|
486
490
|
sendToAgent(agentName, text, opts) {
|
|
487
491
|
return Effect.gen(this, function* () {
|
|
488
492
|
const cache = yield* Ref.get(this.agentConversationCacheRef);
|
|
489
|
-
let
|
|
490
|
-
if (
|
|
493
|
+
let entry = Option.getOrUndefined(HashMap.get(cache, agentName));
|
|
494
|
+
if (entry === undefined) {
|
|
491
495
|
const lookupResult = yield* this.sendRpc(AgentsLookupByName, {
|
|
492
496
|
names: [agentName],
|
|
493
497
|
});
|
|
@@ -495,15 +499,44 @@ export class MoltZapService {
|
|
|
495
499
|
if (!agent) {
|
|
496
500
|
return yield* Effect.fail(new AgentNotFoundError({ agentName }));
|
|
497
501
|
}
|
|
498
|
-
const createResult = yield* this.sendRpc(
|
|
499
|
-
|
|
500
|
-
|
|
502
|
+
const createResult = yield* this.sendRpc(TaskRequest, {
|
|
503
|
+
appId: DEFAULT_APP_ID,
|
|
504
|
+
invitedAgentIds: [agent.id],
|
|
505
|
+
initialConversation: { participants: [agent.id] },
|
|
501
506
|
});
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
507
|
+
// `conversation: null` is the documented dedup-hit shape under
|
|
508
|
+
// `DEFAULT_APP_ID`. Resolve the reusable conversation under the
|
|
509
|
+
// returned task; if none exists (task closed / all archived),
|
|
510
|
+
// fail rather than die.
|
|
511
|
+
const conversationId = createResult.conversation !== null
|
|
512
|
+
? createResult.conversation.id
|
|
513
|
+
: yield* this.resolveReusableConversationId(createResult.task.id, agentName);
|
|
514
|
+
entry = { taskId: createResult.task.id, conversationId };
|
|
515
|
+
const cached = entry;
|
|
516
|
+
yield* Ref.update(this.agentConversationCacheRef, (m) => HashMap.set(m, agentName, cached));
|
|
505
517
|
}
|
|
506
|
-
yield* this.send(conversationId, text, opts);
|
|
518
|
+
yield* this.send(entry.taskId, entry.conversationId, text, opts);
|
|
519
|
+
});
|
|
520
|
+
}
|
|
521
|
+
resolveReusableConversationId(taskId, agentName) {
|
|
522
|
+
return Effect.gen(this, function* () {
|
|
523
|
+
let cursor = undefined;
|
|
524
|
+
for (let page = 0; page < SEND_TO_AGENT_LOOKUP_MAX_PAGES; page++) {
|
|
525
|
+
const params = {
|
|
526
|
+
limit: SEND_TO_AGENT_LOOKUP_PAGE_SIZE,
|
|
527
|
+
};
|
|
528
|
+
if (cursor !== undefined)
|
|
529
|
+
params.cursor = cursor;
|
|
530
|
+
const result = yield* this.sendRpc(TaskConversationList, params);
|
|
531
|
+
const hit = result.items.find((item) => item.taskId === taskId &&
|
|
532
|
+
item.conversation.archivedAt === undefined);
|
|
533
|
+
if (hit !== undefined)
|
|
534
|
+
return hit.conversation.id;
|
|
535
|
+
if (result.nextCursor === undefined)
|
|
536
|
+
break;
|
|
537
|
+
cursor = result.nextCursor;
|
|
538
|
+
}
|
|
539
|
+
return yield* Effect.fail(new AgentNotFoundError({ agentName }));
|
|
507
540
|
});
|
|
508
541
|
}
|
|
509
542
|
// --- Cross-Conversation Context ---
|
|
@@ -617,32 +650,6 @@ export class MoltZapService {
|
|
|
617
650
|
});
|
|
618
651
|
}
|
|
619
652
|
// --- Internals ---
|
|
620
|
-
/**
|
|
621
|
-
* Fetch full conversation details (including participants) via RPC and merge
|
|
622
|
-
* into the local cache. Called on ConversationCreated notifications because
|
|
623
|
-
* the notification schema omits the participants list — see
|
|
624
|
-
* protocol/notifications.ts.
|
|
625
|
-
*/
|
|
626
|
-
refreshConversationParticipants(conversationId) {
|
|
627
|
-
return this.sendRpc(ConversationsGet, {
|
|
628
|
-
conversationId: conversationId,
|
|
629
|
-
}).pipe(Effect.tap((res) => {
|
|
630
|
-
const meta = {
|
|
631
|
-
id: res.conversation.id,
|
|
632
|
-
type: res.conversation.type,
|
|
633
|
-
participants: res.participants.map((p) => `${p.participant.type}:${p.participant.id}`),
|
|
634
|
-
...(res.conversation.name !== undefined
|
|
635
|
-
? { name: res.conversation.name }
|
|
636
|
-
: {}),
|
|
637
|
-
};
|
|
638
|
-
if (this.archivedConversationIds.has(conversationId)) {
|
|
639
|
-
return Effect.void;
|
|
640
|
-
}
|
|
641
|
-
return Ref.update(this.conversationsRef, (m) => HashMap.set(m, conversationId, meta));
|
|
642
|
-
}), Effect.asVoid,
|
|
643
|
-
// Best-effort refresh. Leave the existing entry in place on failure.
|
|
644
|
-
Effect.catchAll(() => Effect.void));
|
|
645
|
-
}
|
|
646
653
|
handleNotification(notification) {
|
|
647
654
|
this.recordNotificationTrace(notification);
|
|
648
655
|
fanout(this.handlers.rawNotification, notification);
|
|
@@ -697,15 +704,24 @@ export class MoltZapService {
|
|
|
697
704
|
// via resolveAgentName(), which populates agentNamesRef on first miss and
|
|
698
705
|
// hits the cache on every subsequent message.
|
|
699
706
|
if (msg.senderId !== this._ownAgentId) {
|
|
700
|
-
fanout(this.handlers.message,
|
|
707
|
+
fanout(this.handlers.message, {
|
|
708
|
+
taskId: notification.taskId,
|
|
709
|
+
message: msg,
|
|
710
|
+
});
|
|
701
711
|
}
|
|
702
712
|
}
|
|
703
713
|
handleConversationCreatedNotification(notification) {
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
714
|
+
const { conversationId, name, participants } = notification;
|
|
715
|
+
this.archivedConversationIds.delete(conversationId);
|
|
716
|
+
Effect.runSync(Ref.update(this.conversationsRef, (m) => {
|
|
717
|
+
const inferredType = participants.length === 1 ? "dm" : "group";
|
|
718
|
+
return HashMap.set(m, conversationId, {
|
|
719
|
+
id: conversationId,
|
|
720
|
+
type: inferredType,
|
|
721
|
+
participants: participants.map((p) => `agent:${p}`),
|
|
722
|
+
...(name !== undefined ? { name } : {}),
|
|
723
|
+
});
|
|
724
|
+
}));
|
|
709
725
|
}
|
|
710
726
|
handleConversationArchivedNotification(notification) {
|
|
711
727
|
this.markConversationArchived(notification.conversationId);
|
|
@@ -715,52 +731,15 @@ export class MoltZapService {
|
|
|
715
731
|
this.archivedConversationIds.delete(notification.conversationId);
|
|
716
732
|
fanout(this.handlers.conversationUnarchived, notification);
|
|
717
733
|
}
|
|
718
|
-
upsertConversationNotification(notification) {
|
|
719
|
-
const { conversation } = notification;
|
|
720
|
-
this.archivedConversationIds.delete(conversation.id);
|
|
721
|
-
Effect.runSync(Ref.update(this.conversationsRef, (m) => {
|
|
722
|
-
const existing = Option.getOrUndefined(HashMap.get(m, conversation.id));
|
|
723
|
-
return HashMap.set(m, conversation.id, {
|
|
724
|
-
id: conversation.id,
|
|
725
|
-
type: conversation.type,
|
|
726
|
-
participants: existing?.participants ?? [],
|
|
727
|
-
...(conversation.name !== undefined
|
|
728
|
-
? { name: conversation.name }
|
|
729
|
-
: {}),
|
|
730
|
-
});
|
|
731
|
-
}));
|
|
732
|
-
}
|
|
733
734
|
markConversationArchived(conversationId) {
|
|
734
735
|
this.seenMessageIds.delete(conversationId);
|
|
735
736
|
this.archivedConversationIds.add(conversationId);
|
|
736
737
|
Effect.runSync(Effect.all([
|
|
737
738
|
Ref.update(this.conversationsRef, (m) => HashMap.remove(m, conversationId)),
|
|
738
739
|
Ref.update(this.messagesRef, (m) => HashMap.remove(m, conversationId)),
|
|
739
|
-
Ref.update(this.agentConversationCacheRef, (m) =>
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
if (convId !== conversationId) {
|
|
743
|
-
next = HashMap.set(next, agentName, convId);
|
|
744
|
-
}
|
|
745
|
-
}
|
|
746
|
-
return next;
|
|
747
|
-
}),
|
|
748
|
-
Ref.update(this.lastNotifiedRef, (outer) => {
|
|
749
|
-
let next = HashMap.empty();
|
|
750
|
-
for (const [viewConvId, markers] of HashMap.entries(outer)) {
|
|
751
|
-
if (viewConvId !== conversationId) {
|
|
752
|
-
next = HashMap.set(next, viewConvId, HashMap.remove(markers, conversationId));
|
|
753
|
-
}
|
|
754
|
-
}
|
|
755
|
-
return next;
|
|
756
|
-
}),
|
|
757
|
-
Ref.update(this.lastReadRef, (outer) => {
|
|
758
|
-
let next = HashMap.empty();
|
|
759
|
-
for (const [sessionKey, perConv] of HashMap.entries(outer)) {
|
|
760
|
-
next = HashMap.set(next, sessionKey, HashMap.remove(perConv, conversationId));
|
|
761
|
-
}
|
|
762
|
-
return next;
|
|
763
|
-
}),
|
|
740
|
+
Ref.update(this.agentConversationCacheRef, (m) => purgeAgentCacheEntries(m, conversationId)),
|
|
741
|
+
Ref.update(this.lastNotifiedRef, (outer) => purgeLastNotified(outer, conversationId)),
|
|
742
|
+
Ref.update(this.lastReadRef, (outer) => purgeLastRead(outer, conversationId)),
|
|
764
743
|
]));
|
|
765
744
|
}
|
|
766
745
|
storeMessage(msg) {
|
package/dist/service.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
|
package/dist/service.test.js
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { it as effectIt } from "@effect/vitest";
|
|
2
2
|
import { describe, expect, it } from "vitest";
|
|
3
3
|
import { Effect, Either, Exit } from "effect";
|
|
4
|
-
import {
|
|
4
|
+
import { TaskConversationList, ConversationArchivedError, TaskConversationArchivedNotificationDefinition, TaskConversationCreatedNotificationDefinition, TaskConversationUnarchivedNotificationDefinition, DispatchRequest, MessageReceivedNotificationDefinition, MessagesSend, } from "@moltzap/protocol";
|
|
5
5
|
import { sanitizeForSystemReminder } from "./service.js";
|
|
6
6
|
import { FakeMoltZapService } from "./test-utils/fake-service.js";
|
|
7
|
-
import { buildMessage, testAgentId, testConversationId, testMessageId, } from "./test-utils/index.js";
|
|
8
|
-
import { AgentsLookupByName
|
|
7
|
+
import { buildMessage, testAgentId, testConversationId, testMessageId, testTaskId, } from "./test-utils/index.js";
|
|
8
|
+
import { AgentsLookupByName } from "@moltzap/protocol";
|
|
9
|
+
import { DEFAULT_APP_ID, TaskRequest } from "@moltzap/protocol/task";
|
|
9
10
|
const effectTest = effectIt.effect;
|
|
10
11
|
const AGENT_ALICE_ID = testAgentId("agent-alice-id");
|
|
11
12
|
const AGENT_SELF_ID = testAgentId("agent-self");
|
|
@@ -19,6 +20,7 @@ const AGENT_OTHER = testAgentId("agent-other");
|
|
|
19
20
|
const CONVERSATION_ALICE_ID = testConversationId("conv-alice");
|
|
20
21
|
const CONVERSATION_BOB_ID = testConversationId("conv-bob");
|
|
21
22
|
const CONVERSATION_ARCHIVED_ID = testConversationId("conv-archived");
|
|
23
|
+
const TASK_ARCHIVED_ID = testTaskId("task-archived");
|
|
22
24
|
const CONVERSATION_OTHER_ID = testConversationId("conv-other");
|
|
23
25
|
const CONVERSATION_SELF_ID = testConversationId("conv-self");
|
|
24
26
|
const CONVERSATION_SELF_A_ID = testConversationId("conv-self-a");
|
|
@@ -51,7 +53,7 @@ const PLACEHOLDER_TEXT = "placeholder";
|
|
|
51
53
|
const AGENT_NOT_FOUND_TAG = "AgentNotFoundError";
|
|
52
54
|
const NOBODY_AGENT_NAME = "nobody";
|
|
53
55
|
const LOOKUP_MISSING_RESPONSE_MESSAGE = /no canned response for agents\/lookupByName/;
|
|
54
|
-
const CREATE_MISSING_RESPONSE_MESSAGE = /no canned response for
|
|
56
|
+
const CREATE_MISSING_RESPONSE_MESSAGE = /no canned response for task\/request/;
|
|
55
57
|
const SEND_MISSING_RESPONSE_MESSAGE = /no canned response for messages\/send/;
|
|
56
58
|
const PLAIN_NAME = "Alice";
|
|
57
59
|
const PLAIN_TEXT = "hello world";
|
|
@@ -89,10 +91,20 @@ const FULL_HISTORY_CONVERSATION_SPACING_MS = 10_000;
|
|
|
89
91
|
const FULL_HISTORY_MESSAGE_SPACING_MS = 1_000;
|
|
90
92
|
const FULL_HISTORY_EXPECTED_MESSAGES = 50;
|
|
91
93
|
const STORED_MESSAGE_COUNT = 30;
|
|
92
|
-
const
|
|
94
|
+
const TASK_ALICE_ID = testTaskId("task-alice");
|
|
95
|
+
const TASK_BOB_ID = testTaskId("task-bob");
|
|
96
|
+
const taskCreateResponse = (taskId = TASK_ALICE_ID, conversationId = CONVERSATION_ALICE_ID) => ({
|
|
97
|
+
task: {
|
|
98
|
+
id: taskId,
|
|
99
|
+
appId: DEFAULT_APP_ID,
|
|
100
|
+
initiatorAgentId: AGENT_SELF_ID,
|
|
101
|
+
status: "active",
|
|
102
|
+
startedAt: null,
|
|
103
|
+
endedAt: null,
|
|
104
|
+
createdAt: DEFAULT_TEST_DATE,
|
|
105
|
+
},
|
|
93
106
|
conversation: {
|
|
94
|
-
id,
|
|
95
|
-
type: "dm",
|
|
107
|
+
id: conversationId,
|
|
96
108
|
createdBy: AGENT_SELF_ID,
|
|
97
109
|
createdAt: DEFAULT_TEST_DATE,
|
|
98
110
|
updatedAt: DEFAULT_TEST_DATE,
|
|
@@ -118,7 +130,7 @@ function seedAgentLookup(service, id = AGENT_ALICE_ID, name = SEND_TO_AGENT_NAME
|
|
|
118
130
|
function makeSendToAgentService() {
|
|
119
131
|
const service = new FakeMoltZapService();
|
|
120
132
|
seedAgentLookup(service);
|
|
121
|
-
service.setResponse(
|
|
133
|
+
service.setResponse(TaskRequest, taskCreateResponse());
|
|
122
134
|
seedMessageSendResponse(service);
|
|
123
135
|
return service;
|
|
124
136
|
}
|
|
@@ -135,15 +147,17 @@ function sendToAgentCreatesConversation() {
|
|
|
135
147
|
params: { names: [SEND_TO_AGENT_NAME] },
|
|
136
148
|
},
|
|
137
149
|
{
|
|
138
|
-
method:
|
|
150
|
+
method: TaskRequest.name,
|
|
139
151
|
params: {
|
|
140
|
-
|
|
141
|
-
|
|
152
|
+
appId: DEFAULT_APP_ID,
|
|
153
|
+
invitedAgentIds: [AGENT_ALICE_ID],
|
|
154
|
+
initialConversation: { participants: [AGENT_ALICE_ID] },
|
|
142
155
|
},
|
|
143
156
|
},
|
|
144
157
|
{
|
|
145
158
|
method: MessagesSend.name,
|
|
146
159
|
params: {
|
|
160
|
+
taskId: TASK_ALICE_ID,
|
|
147
161
|
conversationId: CONVERSATION_ALICE_ID,
|
|
148
162
|
parts: [{ type: "text", text: HELLO_TEXT }],
|
|
149
163
|
},
|
|
@@ -161,6 +175,7 @@ function sendToAgentCachesConversation() {
|
|
|
161
175
|
{
|
|
162
176
|
method: MessagesSend.name,
|
|
163
177
|
params: {
|
|
178
|
+
taskId: TASK_ALICE_ID,
|
|
164
179
|
conversationId: CONVERSATION_ALICE_ID,
|
|
165
180
|
parts: [{ type: "text", text: SECOND_TEXT }],
|
|
166
181
|
},
|
|
@@ -176,6 +191,7 @@ function sendToAgentForwardsReplyTo() {
|
|
|
176
191
|
replyTo: replyToId,
|
|
177
192
|
});
|
|
178
193
|
expect(findSendCall(service)?.params).toEqual({
|
|
194
|
+
taskId: TASK_ALICE_ID,
|
|
179
195
|
conversationId: CONVERSATION_ALICE_ID,
|
|
180
196
|
parts: [{ type: "text", text: REPLY_TEXT }],
|
|
181
197
|
replyToId,
|
|
@@ -187,7 +203,7 @@ function sendToAgentCachesPerAgentName() {
|
|
|
187
203
|
const service = makeSendToAgentService();
|
|
188
204
|
yield* service.sendToAgent(SEND_TO_AGENT_NAME, HELLO_ALICE_TEXT);
|
|
189
205
|
seedAgentLookup(service, AGENT_BOB_ID, BOB_AGENT_NAME);
|
|
190
|
-
service.setResponse(
|
|
206
|
+
service.setResponse(TaskRequest, taskCreateResponse(TASK_BOB_ID, CONVERSATION_BOB_ID));
|
|
191
207
|
yield* service.sendToAgent(BOB_AGENT_NAME, HELLO_BOB_TEXT);
|
|
192
208
|
service.calls = [];
|
|
193
209
|
yield* service.sendToAgent(SEND_TO_AGENT_NAME, ALICE_AGAIN_TEXT);
|
|
@@ -221,7 +237,7 @@ function sendToAgentLookupFailurePropagates() {
|
|
|
221
237
|
function sendToAgentCreateFailurePropagates() {
|
|
222
238
|
return Effect.gen(function* () {
|
|
223
239
|
const service = makeSendToAgentService();
|
|
224
|
-
service.deleteResponse(
|
|
240
|
+
service.deleteResponse(TaskRequest);
|
|
225
241
|
const exit = yield* Effect.exit(service.sendToAgent(SEND_TO_AGENT_NAME, HI_TEXT));
|
|
226
242
|
expect(Exit.isFailure(exit)).toBe(true);
|
|
227
243
|
expect(String(exit)).toMatch(CREATE_MISSING_RESPONSE_MESSAGE);
|
|
@@ -249,7 +265,7 @@ describe("MoltZapService.sendToAgent lookup failures", () => {
|
|
|
249
265
|
effectTest("propagates errors from agents/lookupByName", sendToAgentLookupFailurePropagates);
|
|
250
266
|
});
|
|
251
267
|
describe("MoltZapService.sendToAgent send failures", () => {
|
|
252
|
-
effectTest("propagates errors from
|
|
268
|
+
effectTest("propagates errors from task/create", sendToAgentCreateFailurePropagates);
|
|
253
269
|
effectTest("propagates errors from messages/send", sendToAgentSendFailurePropagates);
|
|
254
270
|
});
|
|
255
271
|
function plainTextPassesThrough() {
|
|
@@ -671,16 +687,20 @@ describe("MoltZapService.peekFullMessages history size", () => {
|
|
|
671
687
|
});
|
|
672
688
|
const archivedConversation = () => ({
|
|
673
689
|
id: CONVERSATION_ARCHIVED_ID,
|
|
674
|
-
type: "group",
|
|
675
690
|
name: ARCHIVED_DISPLAY_NAME,
|
|
676
691
|
createdBy: AGENT_SELF_ID,
|
|
677
692
|
createdAt: ARCHIVED_TIMESTAMP,
|
|
678
693
|
updatedAt: ARCHIVED_TIMESTAMP,
|
|
679
694
|
});
|
|
680
695
|
function seedArchivedConversation(service) {
|
|
681
|
-
service.setResponse(
|
|
682
|
-
|
|
683
|
-
|
|
696
|
+
service.setResponse(TaskConversationList, {
|
|
697
|
+
items: [
|
|
698
|
+
{
|
|
699
|
+
taskId: TASK_ARCHIVED_ID,
|
|
700
|
+
participants: [],
|
|
701
|
+
conversation: archivedConversation(),
|
|
702
|
+
},
|
|
703
|
+
],
|
|
684
704
|
});
|
|
685
705
|
service.setResponse(MessagesSend, {
|
|
686
706
|
message: buildMessage({
|
|
@@ -691,8 +711,11 @@ function seedArchivedConversation(service) {
|
|
|
691
711
|
createdAt: ARCHIVED_TIMESTAMP,
|
|
692
712
|
}),
|
|
693
713
|
});
|
|
694
|
-
service.emitEvent(
|
|
695
|
-
|
|
714
|
+
service.emitEvent(TaskConversationCreatedNotificationDefinition.encode({
|
|
715
|
+
taskId: TASK_ARCHIVED_ID,
|
|
716
|
+
conversationId: CONVERSATION_ARCHIVED_ID,
|
|
717
|
+
name: ARCHIVED_DISPLAY_NAME,
|
|
718
|
+
participants: [],
|
|
696
719
|
}));
|
|
697
720
|
service.addMessage(CONVERSATION_ARCHIVED_ID, buildMessage({
|
|
698
721
|
id: MESSAGE_ONE_ID,
|
|
@@ -719,22 +742,22 @@ function archiveLifecyclePurgesAndRejectsSends() {
|
|
|
719
742
|
const unarchivedEvents = [];
|
|
720
743
|
service.on("conversationArchived", (data) => archivedEvents.push(data));
|
|
721
744
|
service.on("conversationUnarchived", (data) => unarchivedEvents.push(data));
|
|
722
|
-
const archivedEvent =
|
|
745
|
+
const archivedEvent = TaskConversationArchivedNotificationDefinition.encode({
|
|
746
|
+
taskId: TASK_ARCHIVED_ID,
|
|
723
747
|
conversationId: CONVERSATION_ARCHIVED_ID,
|
|
724
748
|
archivedAt: ARCHIVED_AT,
|
|
725
|
-
by: AGENT_GM_ID,
|
|
726
749
|
});
|
|
727
750
|
service.emitEvent(archivedEvent);
|
|
728
751
|
expect(service.isConversationArchived(CONVERSATION_ARCHIVED_ID)).toBe(true);
|
|
729
752
|
expect(service.getConversation(CONVERSATION_ARCHIVED_ID)).toBeUndefined();
|
|
730
753
|
expect(service.getHistory(CONVERSATION_ARCHIVED_ID)).toEqual([]);
|
|
731
754
|
expect(archivedEvents).toEqual([archivedEvent.params]);
|
|
732
|
-
const lateSend = yield* Effect.either(service.send(CONVERSATION_ARCHIVED_ID, "should not hit rpc"));
|
|
755
|
+
const lateSend = yield* Effect.either(service.send(TASK_ARCHIVED_ID, CONVERSATION_ARCHIVED_ID, "should not hit rpc"));
|
|
733
756
|
expectArchivedSendFailure(lateSend);
|
|
734
757
|
expect(service.calls.filter((call) => call.method === MessagesSend.name)).toEqual([]);
|
|
735
|
-
const unarchivedEvent =
|
|
758
|
+
const unarchivedEvent = TaskConversationUnarchivedNotificationDefinition.encode({
|
|
759
|
+
taskId: TASK_ARCHIVED_ID,
|
|
736
760
|
conversationId: CONVERSATION_ARCHIVED_ID,
|
|
737
|
-
by: AGENT_GM_ID,
|
|
738
761
|
});
|
|
739
762
|
service.emitEvent(unarchivedEvent);
|
|
740
763
|
expect(service.isConversationArchived(CONVERSATION_ARCHIVED_ID)).toBe(false);
|
|
@@ -751,7 +774,7 @@ describe("MoltZapService.fanout — message handlers", () => {
|
|
|
751
774
|
service.on("message", () => {
|
|
752
775
|
throw new Error("first handler boom");
|
|
753
776
|
});
|
|
754
|
-
service.on("message", (m) => {
|
|
777
|
+
service.on("message", ({ message: m }) => {
|
|
755
778
|
seen.push(m);
|
|
756
779
|
});
|
|
757
780
|
const msg = buildMessage({
|
|
@@ -762,6 +785,7 @@ describe("MoltZapService.fanout — message handlers", () => {
|
|
|
762
785
|
createdAt: "2026-04-16T00:00:00.000Z",
|
|
763
786
|
});
|
|
764
787
|
const event = MessageReceivedNotificationDefinition.encode({
|
|
788
|
+
taskId: TASK_ALICE_ID,
|
|
765
789
|
message: msg,
|
|
766
790
|
});
|
|
767
791
|
service.emitEvent(event);
|