@moltzap/client 2026.503.4 → 2026.504.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/channel-core.d.ts +1 -4
- package/dist/channel-core.d.ts.map +1 -1
- package/dist/channel-core.js +0 -9
- package/dist/channel-core.js.map +1 -1
- package/dist/channel-core.test.js +90 -71
- package/dist/channel-core.test.js.map +1 -1
- package/dist/cli/commands/agents.js +2 -2
- package/dist/cli/commands/agents.js.map +1 -1
- package/dist/cli/commands/apps.d.ts +2 -24
- package/dist/cli/commands/apps.d.ts.map +1 -1
- package/dist/cli/commands/apps.js +22 -47
- package/dist/cli/commands/apps.js.map +1 -1
- package/dist/cli/commands/apps.test.js +59 -72
- package/dist/cli/commands/apps.test.js.map +1 -1
- package/dist/cli/commands/contacts.d.ts +1 -5
- package/dist/cli/commands/contacts.d.ts.map +1 -1
- package/dist/cli/commands/contacts.js +11 -26
- package/dist/cli/commands/contacts.js.map +1 -1
- package/dist/cli/commands/conversations-v2.test.js +30 -26
- package/dist/cli/commands/conversations-v2.test.js.map +1 -1
- package/dist/cli/commands/conversations.d.ts.map +1 -1
- package/dist/cli/commands/conversations.js +48 -33
- package/dist/cli/commands/conversations.js.map +1 -1
- package/dist/cli/commands/messages.d.ts.map +1 -1
- package/dist/cli/commands/messages.js +11 -8
- package/dist/cli/commands/messages.js.map +1 -1
- package/dist/cli/commands/messages.test.js +28 -30
- package/dist/cli/commands/messages.test.js.map +1 -1
- package/dist/cli/commands/presence.d.ts.map +1 -1
- package/dist/cli/commands/presence.js +5 -4
- package/dist/cli/commands/presence.js.map +1 -1
- package/dist/cli/commands/send.d.ts.map +1 -1
- package/dist/cli/commands/send.js +20 -11
- package/dist/cli/commands/send.js.map +1 -1
- package/dist/cli/commands/send.test.js +11 -9
- package/dist/cli/commands/send.test.js.map +1 -1
- package/dist/cli/commands/status.js +2 -2
- package/dist/cli/commands/status.js.map +1 -1
- package/dist/cli/commands/test-transport.d.ts +10 -0
- package/dist/cli/commands/test-transport.d.ts.map +1 -0
- package/dist/cli/commands/test-transport.js +29 -0
- package/dist/cli/commands/test-transport.js.map +1 -0
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +0 -2
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/socket-client.d.ts +9 -4
- package/dist/cli/socket-client.d.ts.map +1 -1
- package/dist/cli/socket-client.js +27 -12
- package/dist/cli/socket-client.js.map +1 -1
- package/dist/cli/transport.d.ts +3 -2
- package/dist/cli/transport.d.ts.map +1 -1
- package/dist/cli/transport.js +6 -6
- package/dist/cli/transport.js.map +1 -1
- package/dist/cli/transport.test.js +4 -4
- package/dist/cli/transport.test.js.map +1 -1
- package/dist/index.d.ts +2 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/internal/__tests__/app-callback-partition-key.test.d.ts +2 -0
- package/dist/internal/__tests__/app-callback-partition-key.test.d.ts.map +1 -0
- package/dist/internal/__tests__/app-callback-partition-key.test.js +33 -0
- package/dist/internal/__tests__/app-callback-partition-key.test.js.map +1 -0
- package/dist/internal/__tests__/app-callback-partition-worker.test.d.ts +2 -0
- package/dist/internal/__tests__/app-callback-partition-worker.test.d.ts.map +1 -0
- package/dist/internal/__tests__/{s2c-partition-worker.test.js → app-callback-partition-worker.test.js} +6 -9
- package/dist/internal/__tests__/app-callback-partition-worker.test.js.map +1 -0
- package/dist/internal/__tests__/app-callback-partitioned-dispatcher-real-ws.test.d.ts +2 -0
- package/dist/internal/__tests__/app-callback-partitioned-dispatcher-real-ws.test.d.ts.map +1 -0
- package/dist/internal/__tests__/{s2c-partitioned-dispatcher-real-ws.test.js → app-callback-partitioned-dispatcher-real-ws.test.js} +69 -94
- package/dist/internal/__tests__/app-callback-partitioned-dispatcher-real-ws.test.js.map +1 -0
- package/dist/internal/__tests__/app-callback-partitioned-dispatcher.test.d.ts +2 -0
- package/dist/internal/__tests__/app-callback-partitioned-dispatcher.test.d.ts.map +1 -0
- package/dist/internal/__tests__/{s2c-partitioned-dispatcher.test.js → app-callback-partitioned-dispatcher.test.js} +35 -69
- package/dist/internal/__tests__/app-callback-partitioned-dispatcher.test.js.map +1 -0
- package/dist/internal/__tests__/app-callback-test-requests.d.ts +58 -0
- package/dist/internal/__tests__/app-callback-test-requests.d.ts.map +1 -0
- package/dist/internal/__tests__/app-callback-test-requests.js +124 -0
- package/dist/internal/__tests__/app-callback-test-requests.js.map +1 -0
- package/dist/internal/{s2c-dispatcher-errors.d.ts → app-callback-dispatcher-errors.d.ts} +5 -21
- package/dist/internal/app-callback-dispatcher-errors.d.ts.map +1 -0
- package/dist/internal/{s2c-dispatcher-errors.js → app-callback-dispatcher-errors.js} +3 -13
- package/dist/internal/app-callback-dispatcher-errors.js.map +1 -0
- package/dist/internal/app-callback-partition-key.d.ts +68 -0
- package/dist/internal/app-callback-partition-key.d.ts.map +1 -0
- package/dist/internal/app-callback-partition-key.js +90 -0
- package/dist/internal/app-callback-partition-key.js.map +1 -0
- package/dist/internal/{s2c-partition-worker.d.ts → app-callback-partition-worker.d.ts} +5 -5
- package/dist/internal/app-callback-partition-worker.d.ts.map +1 -0
- package/dist/internal/{s2c-partition-worker.js → app-callback-partition-worker.js} +5 -5
- package/dist/internal/app-callback-partition-worker.js.map +1 -0
- package/dist/internal/{s2c-partitioned-dispatcher.d.ts → app-callback-partitioned-dispatcher.d.ts} +9 -10
- package/dist/internal/app-callback-partitioned-dispatcher.d.ts.map +1 -0
- package/dist/internal/{s2c-partitioned-dispatcher.js → app-callback-partitioned-dispatcher.js} +12 -19
- package/dist/internal/app-callback-partitioned-dispatcher.js.map +1 -0
- package/dist/runtime/errors.d.ts +2 -28
- package/dist/runtime/errors.d.ts.map +1 -1
- package/dist/runtime/errors.js +0 -9
- package/dist/runtime/errors.js.map +1 -1
- package/dist/runtime/errors.test.js +2 -2
- package/dist/runtime/errors.test.js.map +1 -1
- package/dist/runtime/frame.d.ts +17 -18
- package/dist/runtime/frame.d.ts.map +1 -1
- package/dist/runtime/frame.js +86 -31
- package/dist/runtime/frame.js.map +1 -1
- package/dist/runtime/frame.test.js +15 -11
- package/dist/runtime/frame.test.js.map +1 -1
- package/dist/runtime/index.d.ts +1 -1
- package/dist/runtime/index.d.ts.map +1 -1
- package/dist/runtime/index.js +1 -1
- package/dist/runtime/index.js.map +1 -1
- package/dist/runtime/local-service-commands.d.ts +7 -0
- package/dist/runtime/local-service-commands.d.ts.map +1 -0
- package/dist/runtime/local-service-commands.js +6 -0
- package/dist/runtime/local-service-commands.js.map +1 -0
- package/dist/runtime/runtime.test.js +1 -2
- package/dist/runtime/runtime.test.js.map +1 -1
- package/dist/runtime/subscribers.d.ts +34 -29
- package/dist/runtime/subscribers.d.ts.map +1 -1
- package/dist/runtime/subscribers.js +19 -19
- package/dist/runtime/subscribers.js.map +1 -1
- package/dist/runtime/subscribers.test.js +50 -31
- package/dist/runtime/subscribers.test.js.map +1 -1
- package/dist/service.d.ts +24 -39
- package/dist/service.d.ts.map +1 -1
- package/dist/service.js +165 -161
- package/dist/service.js.map +1 -1
- package/dist/service.test.js +111 -170
- package/dist/service.test.js.map +1 -1
- package/dist/test-utils/channel-service-fixture.d.ts +1 -2
- package/dist/test-utils/channel-service-fixture.d.ts.map +1 -1
- package/dist/test-utils/channel-service-fixture.js +28 -20
- package/dist/test-utils/channel-service-fixture.js.map +1 -1
- package/dist/test-utils/conformance-adapter.d.ts +2 -2
- package/dist/test-utils/conformance-adapter.d.ts.map +1 -1
- package/dist/test-utils/conformance-adapter.js +33 -26
- package/dist/test-utils/conformance-adapter.js.map +1 -1
- package/dist/test-utils/fake-service.d.ts +14 -39
- package/dist/test-utils/fake-service.d.ts.map +1 -1
- package/dist/test-utils/fake-service.js +33 -39
- package/dist/test-utils/fake-service.js.map +1 -1
- package/dist/test-utils/ids.d.ts +9 -0
- package/dist/test-utils/ids.d.ts.map +1 -0
- package/dist/test-utils/ids.js +52 -0
- package/dist/test-utils/ids.js.map +1 -0
- package/dist/test-utils/index.d.ts +10 -2
- package/dist/test-utils/index.d.ts.map +1 -1
- package/dist/test-utils/index.js +12 -5
- package/dist/test-utils/index.js.map +1 -1
- package/dist/ws-client.d.ts +58 -64
- package/dist/ws-client.d.ts.map +1 -1
- package/dist/ws-client.js +151 -133
- package/dist/ws-client.js.map +1 -1
- package/dist/ws-client.test.js +157 -167
- package/dist/ws-client.test.js.map +1 -1
- package/package.json +3 -3
- package/dist/cli/commands/permissions.d.ts +0 -70
- package/dist/cli/commands/permissions.d.ts.map +0 -1
- package/dist/cli/commands/permissions.js +0 -100
- package/dist/cli/commands/permissions.js.map +0 -1
- package/dist/cli/commands/permissions.test.d.ts +0 -2
- package/dist/cli/commands/permissions.test.d.ts.map +0 -1
- package/dist/cli/commands/permissions.test.js +0 -127
- package/dist/cli/commands/permissions.test.js.map +0 -1
- package/dist/internal/__tests__/s2c-partition-key.test.d.ts +0 -2
- package/dist/internal/__tests__/s2c-partition-key.test.d.ts.map +0 -1
- package/dist/internal/__tests__/s2c-partition-key.test.js +0 -231
- package/dist/internal/__tests__/s2c-partition-key.test.js.map +0 -1
- package/dist/internal/__tests__/s2c-partition-worker.test.d.ts +0 -2
- package/dist/internal/__tests__/s2c-partition-worker.test.d.ts.map +0 -1
- package/dist/internal/__tests__/s2c-partition-worker.test.js.map +0 -1
- package/dist/internal/__tests__/s2c-partitioned-dispatcher-real-ws.test.d.ts +0 -2
- package/dist/internal/__tests__/s2c-partitioned-dispatcher-real-ws.test.d.ts.map +0 -1
- package/dist/internal/__tests__/s2c-partitioned-dispatcher-real-ws.test.js.map +0 -1
- package/dist/internal/__tests__/s2c-partitioned-dispatcher.test.d.ts +0 -2
- package/dist/internal/__tests__/s2c-partitioned-dispatcher.test.d.ts.map +0 -1
- package/dist/internal/__tests__/s2c-partitioned-dispatcher.test.js.map +0 -1
- package/dist/internal/s2c-dispatcher-errors.d.ts.map +0 -1
- package/dist/internal/s2c-dispatcher-errors.js.map +0 -1
- package/dist/internal/s2c-partition-key.d.ts +0 -79
- package/dist/internal/s2c-partition-key.d.ts.map +0 -1
- package/dist/internal/s2c-partition-key.js +0 -146
- package/dist/internal/s2c-partition-key.js.map +0 -1
- package/dist/internal/s2c-partition-worker.d.ts.map +0 -1
- package/dist/internal/s2c-partition-worker.js.map +0 -1
- package/dist/internal/s2c-partitioned-dispatcher.d.ts.map +0 -1
- package/dist/internal/s2c-partitioned-dispatcher.js.map +0 -1
package/dist/channel-core.d.ts
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Shared message-enrichment helper for MoltZap channel adapters.
|
|
3
3
|
*/
|
|
4
4
|
import { Effect } from "effect";
|
|
5
|
-
import type { LogicalClock, Message
|
|
5
|
+
import type { LogicalClock, Message } from "@moltzap/protocol";
|
|
6
6
|
import type { CrossConversationEntry, CrossConvMessage, ServiceRpcError } from "./service.js";
|
|
7
7
|
import type { WsClientLogger } from "./ws-client.js";
|
|
8
8
|
export interface EnrichedSender {
|
|
@@ -87,7 +87,6 @@ export interface ChannelService {
|
|
|
87
87
|
on(event: "conversationUnarchived", handler: (data: {
|
|
88
88
|
conversationId: string;
|
|
89
89
|
}) => void): void;
|
|
90
|
-
on(event: "permissionRequired", handler: (data: PermissionsRequiredEvent) => void): void;
|
|
91
90
|
connect(): Effect.Effect<unknown, ServiceRpcError>;
|
|
92
91
|
close(): void;
|
|
93
92
|
send(conversationId: string, text: string, opts?: {
|
|
@@ -150,13 +149,11 @@ export declare class MoltZapChannelCore {
|
|
|
150
149
|
private readonly consumerFiber;
|
|
151
150
|
private disconnectHandlers;
|
|
152
151
|
private reconnectHandlers;
|
|
153
|
-
private permissionRequiredHandler;
|
|
154
152
|
constructor(opts: ChannelCoreOptions);
|
|
155
153
|
/** Replaces any previous handler. */
|
|
156
154
|
onInbound<E>(handler: InboundHandler<E>): void;
|
|
157
155
|
onDisconnect(handler: () => void): void;
|
|
158
156
|
onReconnect(handler: () => void): void;
|
|
159
|
-
onPermissionRequired(handler: (data: PermissionsRequiredEvent) => void): void;
|
|
160
157
|
private fanout;
|
|
161
158
|
connect(): Effect.Effect<void, ServiceRpcError>;
|
|
162
159
|
disconnect(): Effect.Effect<void, never>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channel-core.d.ts","sourceRoot":"","sources":["../src/channel-core.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAA0B,MAAM,EAAgB,MAAM,QAAQ,CAAC;AACtE,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"channel-core.d.ts","sourceRoot":"","sources":["../src/channel-core.ts"],"names":[],"mappings":"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"}
|
package/dist/channel-core.js
CHANGED
|
@@ -63,7 +63,6 @@ export class MoltZapChannelCore {
|
|
|
63
63
|
consumerFiber;
|
|
64
64
|
disconnectHandlers = [];
|
|
65
65
|
reconnectHandlers = [];
|
|
66
|
-
permissionRequiredHandler = null;
|
|
67
66
|
constructor(opts) {
|
|
68
67
|
this.service = opts.service;
|
|
69
68
|
this.logger = opts.logger ?? noopLogger;
|
|
@@ -103,11 +102,6 @@ export class MoltZapChannelCore {
|
|
|
103
102
|
this.connected = true;
|
|
104
103
|
this.fanout(this.reconnectHandlers, "reconnect");
|
|
105
104
|
});
|
|
106
|
-
this.service.on("permissionRequired", (data) => {
|
|
107
|
-
if (this.permissionRequiredHandler) {
|
|
108
|
-
this.permissionRequiredHandler(data);
|
|
109
|
-
}
|
|
110
|
-
});
|
|
111
105
|
this.service.on("conversationArchived", ({ conversationId }) => {
|
|
112
106
|
this.closeConversation(conversationId);
|
|
113
107
|
});
|
|
@@ -125,9 +119,6 @@ export class MoltZapChannelCore {
|
|
|
125
119
|
onReconnect(handler) {
|
|
126
120
|
this.reconnectHandlers.push(handler);
|
|
127
121
|
}
|
|
128
|
-
onPermissionRequired(handler) {
|
|
129
|
-
this.permissionRequiredHandler = handler;
|
|
130
|
-
}
|
|
131
122
|
fanout(handlers, label) {
|
|
132
123
|
for (const h of handlers) {
|
|
133
124
|
try {
|
package/dist/channel-core.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channel-core.js","sourceRoot":"","sources":["../src/channel-core.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"channel-core.js","sourceRoot":"","sources":["../src/channel-core.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
import { beforeEach, describe, expect, it, vi } from "vitest";
|
|
2
2
|
import { Effect } from "effect";
|
|
3
3
|
import { MoltZapChannelCore, } from "./index.js";
|
|
4
|
-
import { createFakeChannelService, buildMessage, flushDispatchChain, } from "./test-utils/index.js";
|
|
5
|
-
import { RpcServerError } from "
|
|
4
|
+
import { createFakeChannelService, buildMessage, flushDispatchChain, testAgentId, testConversationId, testMessageId, } from "./test-utils/index.js";
|
|
5
|
+
import { RpcServerError } from "@moltzap/protocol";
|
|
6
|
+
const agent = testAgentId;
|
|
7
|
+
const conversation = testConversationId;
|
|
8
|
+
const message = testMessageId;
|
|
9
|
+
const participant = (agentLabel) => `agent:${agent(agentLabel)}`;
|
|
6
10
|
function customSetup() {
|
|
7
11
|
const fake = createFakeChannelService({ ownAgentId: "agent-self" });
|
|
8
12
|
const received = [];
|
|
@@ -90,9 +94,9 @@ describe("MoltZapChannelCore", () => {
|
|
|
90
94
|
expect(inbound).toHaveLength(1);
|
|
91
95
|
const enriched = inbound[0];
|
|
92
96
|
expect(enriched).toMatchObject({
|
|
93
|
-
id: "msg-abc",
|
|
94
|
-
conversationId: "conv-1",
|
|
95
|
-
sender: { id: "agent-alice", name: "Alice" },
|
|
97
|
+
id: message("msg-abc"),
|
|
98
|
+
conversationId: conversation("conv-1"),
|
|
99
|
+
sender: { id: agent("agent-alice"), name: "Alice" },
|
|
96
100
|
text: "hi there",
|
|
97
101
|
isFromMe: false,
|
|
98
102
|
createdAt: "2026-04-10T13:00:00.000Z",
|
|
@@ -126,7 +130,7 @@ describe("MoltZapChannelCore", () => {
|
|
|
126
130
|
fake.state.setConversation("conv-1", { type: "dm", participants: [] });
|
|
127
131
|
fake.emit.message(buildMessage({ senderId: "agent-unknown" }));
|
|
128
132
|
await flushDispatchChain();
|
|
129
|
-
expect(received[0].sender.name).toBe("agent-unknown");
|
|
133
|
+
expect(received[0].sender.name).toBe(agent("agent-unknown"));
|
|
130
134
|
});
|
|
131
135
|
it("swallows resolveAgentName errors and falls back to sender.id", async () => {
|
|
132
136
|
const { fake, received } = customSetup();
|
|
@@ -135,7 +139,7 @@ describe("MoltZapChannelCore", () => {
|
|
|
135
139
|
fake.state.setResolveAgentNameFailure("agent-broken", new Error("network down"));
|
|
136
140
|
fake.emit.message(buildMessage({ senderId: "agent-broken" }));
|
|
137
141
|
await flushDispatchChain();
|
|
138
|
-
expect(received[0].sender.name).toBe("agent-broken");
|
|
142
|
+
expect(received[0].sender.name).toBe(agent("agent-broken"));
|
|
139
143
|
});
|
|
140
144
|
it("concatenates multi-text-part messages with newlines", async () => {
|
|
141
145
|
fake.state.setConversation("conv-1", { type: "dm", participants: [] });
|
|
@@ -172,7 +176,7 @@ describe("MoltZapChannelCore", () => {
|
|
|
172
176
|
fake.state.setAgentName("agent-alice", "Alice");
|
|
173
177
|
fake.emit.message(buildMessage({ replyToId: "msg-parent-123" }));
|
|
174
178
|
await flushDispatchChain();
|
|
175
|
-
expect(inbound[0].replyToId).toBe("msg-parent-123");
|
|
179
|
+
expect(inbound[0].replyToId).toBe(message("msg-parent-123"));
|
|
176
180
|
});
|
|
177
181
|
it("logs failures from the inbound handler's Effect error channel and keeps the consumer alive", async () => {
|
|
178
182
|
const { fake, errorSpy, core } = customSetup();
|
|
@@ -196,7 +200,7 @@ describe("MoltZapChannelCore", () => {
|
|
|
196
200
|
fake.emit.message(buildMessage({ id: "msg-2" }));
|
|
197
201
|
await flushDispatchChain();
|
|
198
202
|
expect(received).toHaveLength(1);
|
|
199
|
-
expect(received[0].id).toBe("msg-2");
|
|
203
|
+
expect(received[0].id).toBe(message("msg-2"));
|
|
200
204
|
});
|
|
201
205
|
it("logs synchronous defects thrown from inside the handler's Effect", async () => {
|
|
202
206
|
const { fake, errorSpy, core } = customSetup();
|
|
@@ -215,7 +219,7 @@ describe("MoltZapChannelCore", () => {
|
|
|
215
219
|
}));
|
|
216
220
|
fake.emit.message(buildMessage({ id: "msg-2" }));
|
|
217
221
|
await flushDispatchChain();
|
|
218
|
-
expect(next.map((r) => r.id)).toEqual(["msg-2"]);
|
|
222
|
+
expect(next.map((r) => r.id)).toEqual([message("msg-2")]);
|
|
219
223
|
});
|
|
220
224
|
});
|
|
221
225
|
describe("dispatch chain ordering", () => {
|
|
@@ -233,8 +237,8 @@ describe("MoltZapChannelCore", () => {
|
|
|
233
237
|
});
|
|
234
238
|
fake.emit.message(buildMessage({ id: "msg-1" }));
|
|
235
239
|
await flushDispatchChain();
|
|
236
|
-
expect(requests).toEqual([{ messageId: "msg-1", attempt: 0 }]);
|
|
237
|
-
expect(received.map((m) => m.id)).toEqual(["msg-1"]);
|
|
240
|
+
expect(requests).toEqual([{ messageId: message("msg-1"), attempt: 0 }]);
|
|
241
|
+
expect(received.map((m) => m.id)).toEqual([message("msg-1")]);
|
|
238
242
|
});
|
|
239
243
|
it("reports a per-conversation observed logical clock to admission", async () => {
|
|
240
244
|
const { fake } = customSetup();
|
|
@@ -258,14 +262,14 @@ describe("MoltZapChannelCore", () => {
|
|
|
258
262
|
await flushDispatchChain();
|
|
259
263
|
expect(clocks).toEqual([
|
|
260
264
|
{
|
|
261
|
-
domainId: "conv-1",
|
|
265
|
+
domainId: conversation("conv-1"),
|
|
262
266
|
epoch: 1,
|
|
263
|
-
vector: { "agent-alice": 1 },
|
|
267
|
+
vector: { [agent("agent-alice")]: 1 },
|
|
264
268
|
},
|
|
265
269
|
{
|
|
266
|
-
domainId: "conv-1",
|
|
270
|
+
domainId: conversation("conv-1"),
|
|
267
271
|
epoch: 2,
|
|
268
|
-
vector: { "agent-alice": 1, "agent-bob": 1 },
|
|
272
|
+
vector: { [agent("agent-alice")]: 1, [agent("agent-bob")]: 1 },
|
|
269
273
|
},
|
|
270
274
|
]);
|
|
271
275
|
});
|
|
@@ -280,7 +284,7 @@ describe("MoltZapChannelCore", () => {
|
|
|
280
284
|
await flushDispatchChain();
|
|
281
285
|
expect(fake.state.sent).toEqual([
|
|
282
286
|
{
|
|
283
|
-
convId: "conv-1",
|
|
287
|
+
convId: conversation("conv-1"),
|
|
284
288
|
text: "reply",
|
|
285
289
|
dispatchLeaseId: "lease-active",
|
|
286
290
|
},
|
|
@@ -313,7 +317,9 @@ describe("MoltZapChannelCore", () => {
|
|
|
313
317
|
fake.emit.message(buildMessage({ id: "msg-bound-admission" }));
|
|
314
318
|
await flushDispatchChain();
|
|
315
319
|
expect(boundService.admissionCalls).toBe(1);
|
|
316
|
-
expect(received.map((m) => m.id)).toEqual([
|
|
320
|
+
expect(received.map((m) => m.id)).toEqual([
|
|
321
|
+
message("msg-bound-admission"),
|
|
322
|
+
]);
|
|
317
323
|
});
|
|
318
324
|
it("drops denied inbound dispatch work without calling the handler", async () => {
|
|
319
325
|
const { fake, received, infoSpy } = customSetup();
|
|
@@ -325,7 +331,7 @@ describe("MoltZapChannelCore", () => {
|
|
|
325
331
|
await flushDispatchChain();
|
|
326
332
|
expect(received).toHaveLength(0);
|
|
327
333
|
expect(infoSpy).toHaveBeenCalledWith(expect.objectContaining({
|
|
328
|
-
messageId: "msg-denied",
|
|
334
|
+
messageId: message("msg-denied"),
|
|
329
335
|
attempt: 0,
|
|
330
336
|
reason: "not this slot",
|
|
331
337
|
}), "MoltZapChannelCore: inbound dispatch denied");
|
|
@@ -360,17 +366,20 @@ describe("MoltZapChannelCore", () => {
|
|
|
360
366
|
parts: [{ type: "text", text: "second" }],
|
|
361
367
|
}));
|
|
362
368
|
await flushDispatchChain();
|
|
363
|
-
expect(pendingSnapshots).toEqual([
|
|
369
|
+
expect(pendingSnapshots).toEqual([
|
|
370
|
+
[message("msg-1")],
|
|
371
|
+
[message("msg-1"), message("msg-2")],
|
|
372
|
+
]);
|
|
364
373
|
expect(received).toHaveLength(1);
|
|
365
|
-
expect(received[0].id).toBe("msg-1");
|
|
374
|
+
expect(received[0].id).toBe(message("msg-1"));
|
|
366
375
|
expect(received[0].text).toContain("first");
|
|
367
376
|
expect(received[0].text).toContain("second");
|
|
368
377
|
expect(received[0].coalescedMessages?.map((m) => m.id)).toEqual([
|
|
369
|
-
"msg-1",
|
|
370
|
-
"msg-2",
|
|
378
|
+
message("msg-1"),
|
|
379
|
+
message("msg-2"),
|
|
371
380
|
]);
|
|
372
381
|
expect(infoSpy).toHaveBeenCalledWith(expect.objectContaining({
|
|
373
|
-
messageId: "msg-1",
|
|
382
|
+
messageId: message("msg-1"),
|
|
374
383
|
attempt: 0,
|
|
375
384
|
reason: "not_yet",
|
|
376
385
|
}), "MoltZapChannelCore: inbound dispatch held");
|
|
@@ -393,7 +402,7 @@ describe("MoltZapChannelCore", () => {
|
|
|
393
402
|
conversationId: request.conversationId,
|
|
394
403
|
pending: request.pending.map((m) => m.messageId),
|
|
395
404
|
});
|
|
396
|
-
if (request.conversationId === "town-square") {
|
|
405
|
+
if (request.conversationId === conversation("town-square")) {
|
|
397
406
|
return { _tag: "hold", reason: "town_square_night" };
|
|
398
407
|
}
|
|
399
408
|
return { _tag: "grant", leaseId: "lease-den" };
|
|
@@ -414,18 +423,21 @@ describe("MoltZapChannelCore", () => {
|
|
|
414
423
|
await flushDispatchChain();
|
|
415
424
|
expect(requests).toEqual([
|
|
416
425
|
{
|
|
417
|
-
messageId: "town-night-narration",
|
|
418
|
-
conversationId: "town-square",
|
|
419
|
-
pending: ["town-night-narration"],
|
|
426
|
+
messageId: message("town-night-narration"),
|
|
427
|
+
conversationId: conversation("town-square"),
|
|
428
|
+
pending: [message("town-night-narration")],
|
|
420
429
|
},
|
|
421
430
|
{
|
|
422
|
-
messageId: "den-kill-prompt",
|
|
423
|
-
conversationId: "werewolf-den",
|
|
424
|
-
pending: [
|
|
431
|
+
messageId: message("den-kill-prompt"),
|
|
432
|
+
conversationId: conversation("werewolf-den"),
|
|
433
|
+
pending: [
|
|
434
|
+
message("den-kill-prompt"),
|
|
435
|
+
message("town-night-narration"),
|
|
436
|
+
],
|
|
425
437
|
},
|
|
426
438
|
]);
|
|
427
|
-
expect(received.map((m) => m.id)).toEqual(["den-kill-prompt"]);
|
|
428
|
-
expect(received[0].conversationId).toBe("werewolf-den");
|
|
439
|
+
expect(received.map((m) => m.id)).toEqual([message("den-kill-prompt")]);
|
|
440
|
+
expect(received[0].conversationId).toBe(conversation("werewolf-den"));
|
|
429
441
|
expect(received[0].dispatchLeaseId).toBe("lease-den");
|
|
430
442
|
});
|
|
431
443
|
it("purges held and queued dispatch work when a conversation is archived", async () => {
|
|
@@ -445,11 +457,11 @@ describe("MoltZapChannelCore", () => {
|
|
|
445
457
|
expect(calls).toBe(1);
|
|
446
458
|
expect(received).toHaveLength(0);
|
|
447
459
|
expect(infoSpy).toHaveBeenCalledWith(expect.objectContaining({
|
|
448
|
-
conversationId: "conv-1",
|
|
460
|
+
conversationId: conversation("conv-1"),
|
|
449
461
|
}), "MoltZapChannelCore: closed conversation dispatch work purged");
|
|
450
462
|
expect(infoSpy).toHaveBeenCalledWith(expect.objectContaining({
|
|
451
|
-
messageId: "msg-after-archive",
|
|
452
|
-
conversationId: "conv-1",
|
|
463
|
+
messageId: message("msg-after-archive"),
|
|
464
|
+
conversationId: conversation("conv-1"),
|
|
453
465
|
}), "MoltZapChannelCore: dropping inbound message for closed conversation");
|
|
454
466
|
});
|
|
455
467
|
it("keeps blocked authorization head-of-line and coalesces same-conversation backlog on grant", async () => {
|
|
@@ -482,14 +494,14 @@ describe("MoltZapChannelCore", () => {
|
|
|
482
494
|
}));
|
|
483
495
|
grant();
|
|
484
496
|
await flushDispatchChain();
|
|
485
|
-
expect(pendingSnapshots.map((snapshot) => snapshot.map((m) => m.messageId))).toEqual([["msg-1"]]);
|
|
497
|
+
expect(pendingSnapshots.map((snapshot) => snapshot.map((m) => m.messageId))).toEqual([[message("msg-1")]]);
|
|
486
498
|
expect(received).toHaveLength(1);
|
|
487
|
-
expect(received[0].id).toBe("msg-1");
|
|
499
|
+
expect(received[0].id).toBe(message("msg-1"));
|
|
488
500
|
expect(received[0].text).toContain("first");
|
|
489
501
|
expect(received[0].text).toContain("second");
|
|
490
502
|
expect(received[0].coalescedMessages?.map((m) => m.id)).toEqual([
|
|
491
|
-
"msg-1",
|
|
492
|
-
"msg-2",
|
|
503
|
+
message("msg-1"),
|
|
504
|
+
message("msg-2"),
|
|
493
505
|
]);
|
|
494
506
|
});
|
|
495
507
|
it("dispatches an admitted pending marker and drops older same-conversation work", async () => {
|
|
@@ -505,7 +517,7 @@ describe("MoltZapChannelCore", () => {
|
|
|
505
517
|
return {
|
|
506
518
|
_tag: "grant",
|
|
507
519
|
leaseId: "lease-marker",
|
|
508
|
-
dispatchMessageId: "msg-marker",
|
|
520
|
+
dispatchMessageId: message("msg-marker"),
|
|
509
521
|
};
|
|
510
522
|
});
|
|
511
523
|
fake.emit.message(buildMessage({
|
|
@@ -530,13 +542,13 @@ describe("MoltZapChannelCore", () => {
|
|
|
530
542
|
grant();
|
|
531
543
|
await flushDispatchChain();
|
|
532
544
|
expect(received).toHaveLength(1);
|
|
533
|
-
expect(received[0].id).toBe("msg-marker");
|
|
545
|
+
expect(received[0].id).toBe(message("msg-marker"));
|
|
534
546
|
expect(received[0].text).toContain("Time to vote");
|
|
535
547
|
expect(received[0].text).toContain("after marker");
|
|
536
548
|
expect(received[0].text).not.toContain("old discussion");
|
|
537
549
|
expect(received[0].coalescedMessages?.map((m) => m.id)).toEqual([
|
|
538
|
-
"msg-marker",
|
|
539
|
-
"msg-after",
|
|
550
|
+
message("msg-marker"),
|
|
551
|
+
message("msg-after"),
|
|
540
552
|
]);
|
|
541
553
|
expect(received[0].dispatchLeaseId).toBe("lease-marker");
|
|
542
554
|
});
|
|
@@ -562,7 +574,7 @@ describe("MoltZapChannelCore", () => {
|
|
|
562
574
|
await flushDispatchChain();
|
|
563
575
|
expect(received).toHaveLength(0);
|
|
564
576
|
expect(warnSpy).toHaveBeenCalledWith(expect.objectContaining({
|
|
565
|
-
messageId: "msg-fail-closed",
|
|
577
|
+
messageId: message("msg-fail-closed"),
|
|
566
578
|
attempt: 0,
|
|
567
579
|
}), "MoltZapChannelCore: dispatch admission failed closed");
|
|
568
580
|
});
|
|
@@ -584,7 +596,7 @@ describe("MoltZapChannelCore", () => {
|
|
|
584
596
|
fake.service.authorizeDispatch = () => Effect.never;
|
|
585
597
|
fake.emit.message(buildMessage({ id: "msg-timeout-closed" }));
|
|
586
598
|
await vi.waitFor(() => expect(warnSpy).toHaveBeenCalledWith(expect.objectContaining({
|
|
587
|
-
messageId: "msg-timeout-closed",
|
|
599
|
+
messageId: message("msg-timeout-closed"),
|
|
588
600
|
attempt: 0,
|
|
589
601
|
}), "MoltZapChannelCore: dispatch admission failed closed"), { timeout: 1_000 });
|
|
590
602
|
await flushDispatchChain();
|
|
@@ -600,14 +612,14 @@ describe("MoltZapChannelCore", () => {
|
|
|
600
612
|
fake.service.authorizeDispatch = (request) => Effect.succeed({
|
|
601
613
|
_tag: "grant",
|
|
602
614
|
leaseId: `lease-${request.message.id}`,
|
|
603
|
-
leaseTimeoutMs: request.message.id === "msg-stuck" ? 1 : 50,
|
|
615
|
+
leaseTimeoutMs: request.message.id === message("msg-stuck") ? 1 : 50,
|
|
604
616
|
});
|
|
605
617
|
const core = new MoltZapChannelCore({
|
|
606
618
|
service: fake.service,
|
|
607
619
|
logger: { info: () => { }, warn: warnSpy, error: errorSpy },
|
|
608
620
|
});
|
|
609
621
|
core.onInbound((m) => {
|
|
610
|
-
if (m.id === "msg-stuck")
|
|
622
|
+
if (m.id === message("msg-stuck"))
|
|
611
623
|
return Effect.never;
|
|
612
624
|
return Effect.sync(() => {
|
|
613
625
|
received.push(m.id);
|
|
@@ -618,10 +630,10 @@ describe("MoltZapChannelCore", () => {
|
|
|
618
630
|
fake.emit.message(buildMessage({ id: "msg-next" }));
|
|
619
631
|
await new Promise((resolve) => setTimeout(resolve, 10));
|
|
620
632
|
await flushDispatchChain();
|
|
621
|
-
expect(received).toEqual(["msg-next"]);
|
|
633
|
+
expect(received).toEqual([message("msg-next")]);
|
|
622
634
|
expect(warnSpy).toHaveBeenCalledWith(expect.objectContaining({
|
|
623
|
-
messageId: "msg-stuck",
|
|
624
|
-
leaseId: "
|
|
635
|
+
messageId: message("msg-stuck"),
|
|
636
|
+
leaseId: `lease-${message("msg-stuck")}`,
|
|
625
637
|
timeoutMs: 1,
|
|
626
638
|
}), "MoltZapChannelCore: inbound dispatch lease expired");
|
|
627
639
|
});
|
|
@@ -646,12 +658,15 @@ describe("MoltZapChannelCore", () => {
|
|
|
646
658
|
// Resolve the first, chain advances.
|
|
647
659
|
resolvers[0]("agent-alice");
|
|
648
660
|
await flushDispatchChain();
|
|
649
|
-
expect(received.map((r) => r.id)).toEqual(["msg-1"]);
|
|
661
|
+
expect(received.map((r) => r.id)).toEqual([message("msg-1")]);
|
|
650
662
|
expect(resolvers).toHaveLength(2);
|
|
651
663
|
// Resolve the second.
|
|
652
664
|
resolvers[1]("agent-bob");
|
|
653
665
|
await flushDispatchChain();
|
|
654
|
-
expect(received.map((r) => r.id)).toEqual([
|
|
666
|
+
expect(received.map((r) => r.id)).toEqual([
|
|
667
|
+
message("msg-1"),
|
|
668
|
+
message("msg-2"),
|
|
669
|
+
]);
|
|
655
670
|
});
|
|
656
671
|
it("awaits async handler fully before processing the next message", async () => {
|
|
657
672
|
const { fake, core } = customSetup();
|
|
@@ -670,18 +685,22 @@ describe("MoltZapChannelCore", () => {
|
|
|
670
685
|
fake.emit.message(buildMessage({ id: "msg-2" }));
|
|
671
686
|
await flushDispatchChain();
|
|
672
687
|
// Handler started for msg-1, hasn't returned yet. msg-2 has NOT entered.
|
|
673
|
-
expect(order).toEqual(["
|
|
688
|
+
expect(order).toEqual([`enter:${message("msg-1")}`]);
|
|
674
689
|
handlerBarriers[0]();
|
|
675
690
|
await flushDispatchChain();
|
|
676
691
|
// msg-1 fully processed; msg-2 has entered.
|
|
677
|
-
expect(order).toEqual([
|
|
692
|
+
expect(order).toEqual([
|
|
693
|
+
`enter:${message("msg-1")}`,
|
|
694
|
+
`exit:${message("msg-1")}`,
|
|
695
|
+
`enter:${message("msg-2")}`,
|
|
696
|
+
]);
|
|
678
697
|
handlerBarriers[1]();
|
|
679
698
|
await flushDispatchChain();
|
|
680
699
|
expect(order).toEqual([
|
|
681
|
-
"
|
|
682
|
-
"
|
|
683
|
-
"
|
|
684
|
-
"
|
|
700
|
+
`enter:${message("msg-1")}`,
|
|
701
|
+
`exit:${message("msg-1")}`,
|
|
702
|
+
`enter:${message("msg-2")}`,
|
|
703
|
+
`exit:${message("msg-2")}`,
|
|
685
704
|
]);
|
|
686
705
|
});
|
|
687
706
|
it("onInbound replaces the previous handler instead of adding", async () => {
|
|
@@ -716,9 +735,9 @@ describe("MoltZapChannelCore", () => {
|
|
|
716
735
|
type: "group",
|
|
717
736
|
name: "devs",
|
|
718
737
|
participants: [
|
|
719
|
-
"agent
|
|
720
|
-
"agent
|
|
721
|
-
"agent
|
|
738
|
+
participant("agent-alice"),
|
|
739
|
+
participant("agent-bob"),
|
|
740
|
+
participant("agent-self"),
|
|
722
741
|
],
|
|
723
742
|
});
|
|
724
743
|
});
|
|
@@ -854,22 +873,22 @@ describe("MoltZapChannelCore", () => {
|
|
|
854
873
|
});
|
|
855
874
|
describe("sendReply", () => {
|
|
856
875
|
it("delegates to service.send with conversationId and text", async () => {
|
|
857
|
-
await Effect.runPromise(core.sendReply("conv-42", "hello there"));
|
|
876
|
+
await Effect.runPromise(core.sendReply(conversation("conv-42"), "hello there"));
|
|
858
877
|
expect(fake.state.sent).toEqual([
|
|
859
|
-
{ convId: "conv-42", text: "hello there" },
|
|
878
|
+
{ convId: conversation("conv-42"), text: "hello there" },
|
|
860
879
|
]);
|
|
861
880
|
});
|
|
862
881
|
it("drops replies locally after the conversation is archived", async () => {
|
|
863
882
|
fake.emit.conversationArchived({ conversationId: "conv-42" });
|
|
864
|
-
await Effect.runPromise(core.sendReply("conv-42", "hello there"));
|
|
883
|
+
await Effect.runPromise(core.sendReply(conversation("conv-42"), "hello there"));
|
|
865
884
|
expect(fake.state.sent).toEqual([]);
|
|
866
885
|
});
|
|
867
886
|
it("resumes replies after the conversation is unarchived", async () => {
|
|
868
887
|
fake.emit.conversationArchived({ conversationId: "conv-42" });
|
|
869
888
|
fake.emit.conversationUnarchived({ conversationId: "conv-42" });
|
|
870
|
-
await Effect.runPromise(core.sendReply("conv-42", "hello again"));
|
|
889
|
+
await Effect.runPromise(core.sendReply(conversation("conv-42"), "hello again"));
|
|
871
890
|
expect(fake.state.sent).toEqual([
|
|
872
|
-
{ convId: "conv-42", text: "hello again" },
|
|
891
|
+
{ convId: conversation("conv-42"), text: "hello again" },
|
|
873
892
|
]);
|
|
874
893
|
});
|
|
875
894
|
});
|
|
@@ -897,9 +916,9 @@ describe("MoltZapChannelCore", () => {
|
|
|
897
916
|
});
|
|
898
917
|
const { enriched: staticResult, commitContext } = await Effect.runPromise(MoltZapChannelCore.enrichMessage(service, msg));
|
|
899
918
|
expect(staticResult).toMatchObject({
|
|
900
|
-
id: "msg-static",
|
|
901
|
-
conversationId: "conv-1",
|
|
902
|
-
sender: { id: "agent-alice", name: "Alice" },
|
|
919
|
+
id: message("msg-static"),
|
|
920
|
+
conversationId: conversation("conv-1"),
|
|
921
|
+
sender: { id: agent("agent-alice"), name: "Alice" },
|
|
903
922
|
text: "static enrichment",
|
|
904
923
|
isFromMe: false,
|
|
905
924
|
});
|
|
@@ -913,7 +932,7 @@ describe("MoltZapChannelCore", () => {
|
|
|
913
932
|
forceResolveAgentNamePath(fake);
|
|
914
933
|
fake.state.setResolveAgentNameFailure("agent-unknown", new Error("Not connected"));
|
|
915
934
|
const { enriched: result } = await Effect.runPromise(MoltZapChannelCore.enrichMessage(fake.service, buildMessage({ senderId: "agent-unknown" })));
|
|
916
|
-
expect(result.sender.name).toBe("agent-unknown");
|
|
935
|
+
expect(result.sender.name).toBe(agent("agent-unknown"));
|
|
917
936
|
});
|
|
918
937
|
});
|
|
919
938
|
describe("fanout guards", () => {
|