@moltzap/client 2026.726.0 → 2026.730.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 +2 -0
- package/dist/agent-client.d.ts.map +1 -1
- package/dist/agent-client.js +1 -0
- package/dist/agent-client.js.map +1 -1
- package/dist/app-client.d.ts +2 -0
- package/dist/app-client.d.ts.map +1 -1
- package/dist/app-client.js +1 -0
- package/dist/app-client.js.map +1 -1
- package/dist/auth.d.ts +7 -2
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +10 -5
- package/dist/auth.js.map +1 -1
- package/dist/channel-base/format-cross-conv.d.ts +8 -3
- package/dist/channel-base/format-cross-conv.d.ts.map +1 -1
- package/dist/channel-base/format-cross-conv.js +10 -9
- package/dist/channel-base/format-cross-conv.js.map +1 -1
- package/dist/channel-base/format-group-block.d.ts +9 -2
- package/dist/channel-base/format-group-block.d.ts.map +1 -1
- package/dist/channel-base/format-group-block.js +12 -7
- package/dist/channel-base/format-group-block.js.map +1 -1
- package/dist/channel-base/index.d.ts +8 -0
- package/dist/channel-base/index.d.ts.map +1 -1
- package/dist/channel-base/index.js +8 -0
- package/dist/channel-base/index.js.map +1 -1
- package/dist/channel-base/lease-guard.d.ts +6 -3
- package/dist/channel-base/lease-guard.d.ts.map +1 -1
- package/dist/channel-base/lease-guard.js +10 -4
- package/dist/channel-base/lease-guard.js.map +1 -1
- package/dist/channel-base/lease-store.d.ts +29 -10
- package/dist/channel-base/lease-store.d.ts.map +1 -1
- package/dist/channel-base/lease-store.js +33 -13
- package/dist/channel-base/lease-store.js.map +1 -1
- package/dist/channel-base/lease.d.ts +9 -1
- package/dist/channel-base/lease.d.ts.map +1 -1
- package/dist/channel-base/lease.js +16 -4
- package/dist/channel-base/lease.js.map +1 -1
- package/dist/channel-core-enrichment.d.ts +9 -2
- package/dist/channel-core-enrichment.d.ts.map +1 -1
- package/dist/channel-core-enrichment.js +17 -5
- package/dist/channel-core-enrichment.js.map +1 -1
- package/dist/channel-core-test-support.d.ts +46 -0
- package/dist/channel-core-test-support.d.ts.map +1 -1
- package/dist/channel-core-test-support.js +67 -13
- package/dist/channel-core-test-support.js.map +1 -1
- package/dist/channel-core.d.ts +37 -22
- package/dist/channel-core.d.ts.map +1 -1
- package/dist/channel-core.js +45 -38
- package/dist/channel-core.js.map +1 -1
- package/dist/cli/adapters.d.ts +4 -1
- package/dist/cli/adapters.d.ts.map +1 -1
- package/dist/cli/adapters.js +11 -4
- package/dist/cli/adapters.js.map +1 -1
- package/dist/cli/commands/agents.js +3 -3
- package/dist/cli/commands/contacts.d.ts +3 -3
- package/dist/cli/commands/contacts.d.ts.map +1 -1
- package/dist/cli/commands/contacts.js +13 -9
- package/dist/cli/commands/contacts.js.map +1 -1
- package/dist/cli/commands/conversations.d.ts +3 -2
- package/dist/cli/commands/conversations.d.ts.map +1 -1
- package/dist/cli/commands/conversations.js +7 -6
- package/dist/cli/commands/conversations.js.map +1 -1
- package/dist/cli/commands/messages.d.ts +6 -2
- package/dist/cli/commands/messages.d.ts.map +1 -1
- package/dist/cli/commands/messages.js +8 -5
- package/dist/cli/commands/messages.js.map +1 -1
- package/dist/cli/commands/register.d.ts +1 -1
- package/dist/cli/commands/register.js +4 -4
- package/dist/cli/commands/send.d.ts +7 -6
- package/dist/cli/commands/send.d.ts.map +1 -1
- package/dist/cli/commands/send.js +7 -6
- package/dist/cli/commands/send.js.map +1 -1
- package/dist/cli/commands/start.d.ts +15 -7
- package/dist/cli/commands/start.d.ts.map +1 -1
- package/dist/cli/commands/start.js +12 -5
- package/dist/cli/commands/start.js.map +1 -1
- package/dist/cli/commands/status.js +2 -2
- package/dist/cli/commands/test-transport.d.ts +9 -1
- package/dist/cli/commands/test-transport.d.ts.map +1 -1
- package/dist/cli/commands/test-transport.js +5 -1
- package/dist/cli/commands/test-transport.js.map +1 -1
- package/dist/cli/index.js +8 -7
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/output.d.ts +10 -0
- package/dist/cli/output.d.ts.map +1 -1
- package/dist/cli/output.js +10 -0
- package/dist/cli/output.js.map +1 -1
- package/dist/cli/socket-client.d.ts +13 -3
- package/dist/cli/socket-client.d.ts.map +1 -1
- package/dist/cli/socket-client.js +16 -5
- package/dist/cli/socket-client.js.map +1 -1
- package/dist/cli/transport.d.ts +16 -3
- package/dist/cli/transport.d.ts.map +1 -1
- package/dist/cli/transport.js +19 -6
- package/dist/cli/transport.js.map +1 -1
- package/dist/config.d.ts +15 -6
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +15 -5
- package/dist/config.js.map +1 -1
- package/dist/config.test-utils.d.ts +7 -2
- package/dist/config.test-utils.d.ts.map +1 -1
- package/dist/config.test-utils.js +8 -1
- package/dist/config.test-utils.js.map +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/local-daemon-rpc.d.ts +122 -99
- package/dist/local-daemon-rpc.d.ts.map +1 -1
- package/dist/local-daemon-rpc.js +128 -108
- package/dist/local-daemon-rpc.js.map +1 -1
- package/dist/local-history.d.ts +40 -20
- package/dist/local-history.d.ts.map +1 -1
- package/dist/local-history.js +45 -23
- package/dist/local-history.js.map +1 -1
- package/dist/local-paths.d.ts +17 -0
- package/dist/local-paths.d.ts.map +1 -1
- package/dist/local-paths.js +21 -4
- package/dist/local-paths.js.map +1 -1
- package/dist/local-socket-server.d.ts +13 -2
- package/dist/local-socket-server.d.ts.map +1 -1
- package/dist/local-socket-server.js +13 -2
- package/dist/local-socket-server.js.map +1 -1
- package/dist/message-rendering.d.ts +1 -0
- package/dist/message-rendering.d.ts.map +1 -1
- package/dist/message-rendering.js +1 -0
- package/dist/message-rendering.js.map +1 -1
- package/dist/notification/__tests__/subscribe-signatures.types-check.d.ts +50 -2
- package/dist/notification/__tests__/subscribe-signatures.types-check.d.ts.map +1 -1
- package/dist/notification/__tests__/subscribe-signatures.types-check.js +22 -48
- package/dist/notification/__tests__/subscribe-signatures.types-check.js.map +1 -1
- package/dist/notification/errors.d.ts +4 -2
- package/dist/notification/errors.d.ts.map +1 -1
- package/dist/notification/errors.js +3 -1
- package/dist/notification/errors.js.map +1 -1
- package/dist/notification/index.d.ts +1 -0
- package/dist/notification/index.d.ts.map +1 -1
- package/dist/notification/index.js +1 -0
- package/dist/notification/index.js.map +1 -1
- package/dist/notification/stream.d.ts +16 -9
- package/dist/notification/stream.d.ts.map +1 -1
- package/dist/notification/stream.js +5 -38
- package/dist/notification/stream.js.map +1 -1
- package/dist/pagination.d.ts +13 -16
- package/dist/pagination.d.ts.map +1 -1
- package/dist/pagination.js +9 -1
- package/dist/pagination.js.map +1 -1
- package/dist/profile.d.ts +21 -9
- package/dist/profile.d.ts.map +1 -1
- package/dist/profile.js +30 -16
- package/dist/profile.js.map +1 -1
- package/dist/refs.d.ts +9 -1
- package/dist/refs.d.ts.map +1 -1
- package/dist/refs.js +9 -1
- package/dist/refs.js.map +1 -1
- package/dist/service-archive-purge.d.ts +18 -0
- package/dist/service-archive-purge.d.ts.map +1 -1
- package/dist/service-archive-purge.js +18 -0
- package/dist/service-archive-purge.js.map +1 -1
- package/dist/service-event-trace.d.ts +15 -0
- package/dist/service-event-trace.d.ts.map +1 -0
- package/dist/service-event-trace.js +35 -0
- package/dist/service-event-trace.js.map +1 -0
- package/dist/service-helpers.d.ts +35 -6
- package/dist/service-helpers.d.ts.map +1 -1
- package/dist/service-helpers.js +38 -8
- package/dist/service-helpers.js.map +1 -1
- package/dist/service-local-daemon.d.ts +12 -2
- package/dist/service-local-daemon.d.ts.map +1 -1
- package/dist/service-local-daemon.js +38 -25
- package/dist/service-local-daemon.js.map +1 -1
- package/dist/service.d.ts +62 -23
- package/dist/service.d.ts.map +1 -1
- package/dist/service.js +138 -89
- package/dist/service.js.map +1 -1
- package/dist/test-utils/channel-service-fixture.d.ts +8 -1
- package/dist/test-utils/channel-service-fixture.d.ts.map +1 -1
- package/dist/test-utils/channel-service-fixture.js +31 -21
- package/dist/test-utils/channel-service-fixture.js.map +1 -1
- package/dist/test-utils/fake-service.d.ts +20 -7
- package/dist/test-utils/fake-service.d.ts.map +1 -1
- package/dist/test-utils/fake-service.js +20 -5
- package/dist/test-utils/fake-service.js.map +1 -1
- package/dist/test-utils/harness.d.ts +8 -4
- package/dist/test-utils/harness.d.ts.map +1 -1
- package/dist/test-utils/harness.js +3 -0
- package/dist/test-utils/harness.js.map +1 -1
- package/dist/test-utils/ids.d.ts +25 -0
- package/dist/test-utils/ids.d.ts.map +1 -1
- package/dist/test-utils/ids.js +27 -1
- package/dist/test-utils/ids.js.map +1 -1
- package/dist/test-utils/index.d.ts +7 -1
- package/dist/test-utils/index.d.ts.map +1 -1
- package/dist/test-utils/index.js +7 -1
- package/dist/test-utils/index.js.map +1 -1
- package/dist/test-utils/standalone-provisioning.d.ts +5 -0
- package/dist/test-utils/standalone-provisioning.d.ts.map +1 -1
- package/dist/test-utils/standalone-provisioning.js +3 -0
- package/dist/test-utils/standalone-provisioning.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +6 -6
package/dist/channel-core.d.ts
CHANGED
|
@@ -7,21 +7,25 @@ import type { LeaseId } from "@moltzap/protocol/message/dispatch";
|
|
|
7
7
|
import type { Message } from "@moltzap/protocol/message";
|
|
8
8
|
import type { TaskId } from "@moltzap/protocol/task";
|
|
9
9
|
import type { CrossConversationEntry, CrossConvMessage, ServiceRpcError } from "./service.js";
|
|
10
|
+
/** Describes enriched sender. */
|
|
10
11
|
export interface EnrichedSender {
|
|
11
12
|
id: string;
|
|
12
13
|
name: string;
|
|
13
14
|
}
|
|
15
|
+
/** Describes enriched conversation meta. */
|
|
14
16
|
export interface EnrichedConversationMeta {
|
|
15
17
|
type: "dm" | "group";
|
|
16
18
|
name?: string;
|
|
17
19
|
/** "type:id" strings (e.g. "agent:uuid"). */
|
|
18
20
|
participants: string[];
|
|
19
21
|
}
|
|
22
|
+
/** Describes context blocks. */
|
|
20
23
|
export interface ContextBlocks {
|
|
21
24
|
groupMetadata?: EnrichedConversationMeta;
|
|
22
25
|
crossConversation?: CrossConversationEntry[];
|
|
23
26
|
crossConversationMessages?: CrossConvMessage[];
|
|
24
27
|
}
|
|
28
|
+
/** Describes enriched inbound message. */
|
|
25
29
|
export interface EnrichedInboundMessage {
|
|
26
30
|
id: string;
|
|
27
31
|
taskId: TaskId;
|
|
@@ -48,6 +52,7 @@ export interface EnrichedInboundMessage {
|
|
|
48
52
|
/** Lease that authorizes a runtime reply for this dispatch, when present. */
|
|
49
53
|
dispatchLeaseId?: LeaseId;
|
|
50
54
|
}
|
|
55
|
+
/** Describes pending dispatch message. */
|
|
51
56
|
export interface PendingDispatchMessage {
|
|
52
57
|
messageId: string;
|
|
53
58
|
conversationId: string;
|
|
@@ -56,14 +61,16 @@ export interface PendingDispatchMessage {
|
|
|
56
61
|
receivedAt: string;
|
|
57
62
|
parts?: Message["parts"];
|
|
58
63
|
}
|
|
64
|
+
/** Describes dispatch admission request. */
|
|
59
65
|
export interface DispatchAdmissionRequest {
|
|
60
66
|
message: Message;
|
|
61
67
|
conversationId: string;
|
|
62
68
|
senderAgentId: string;
|
|
63
69
|
attempt: number;
|
|
64
70
|
receivedAt: string;
|
|
65
|
-
pending:
|
|
71
|
+
pending: readonly PendingDispatchMessage[];
|
|
66
72
|
}
|
|
73
|
+
/** Represents dispatch admission decision values. */
|
|
67
74
|
export type DispatchAdmissionDecision = {
|
|
68
75
|
_tag: "grant";
|
|
69
76
|
leaseId?: LeaseId;
|
|
@@ -102,17 +109,13 @@ export interface DispatchReleaseFrame {
|
|
|
102
109
|
}
|
|
103
110
|
/** The subset of MoltZapService that MoltZapChannelCore needs. */
|
|
104
111
|
export interface ChannelService {
|
|
105
|
-
readonly ownAgentId
|
|
112
|
+
readonly ownAgentId?: string;
|
|
106
113
|
on(event: "message", handler: (payload: {
|
|
107
114
|
taskId: TaskId;
|
|
108
115
|
message: Message;
|
|
109
116
|
}) => void): void;
|
|
110
117
|
on(event: "disconnect", handler: () => void): void;
|
|
111
|
-
on(event: "
|
|
112
|
-
on(event: "conversationArchived", handler: (data: {
|
|
113
|
-
conversationId: string;
|
|
114
|
-
}) => void): void;
|
|
115
|
-
on(event: "conversationUnarchived", handler: (data: {
|
|
118
|
+
on(event: "conversationArchived" | "conversationUnarchived", handler: (data: {
|
|
116
119
|
conversationId: string;
|
|
117
120
|
}) => void): void;
|
|
118
121
|
on(event: "dispatchRelease", handler: (frame: DispatchReleaseFrame) => void): void;
|
|
@@ -129,7 +132,7 @@ export interface ChannelService {
|
|
|
129
132
|
participants: string[];
|
|
130
133
|
} | undefined;
|
|
131
134
|
getAgentName(agentId: string): string | undefined;
|
|
132
|
-
resolveAgentName(agentId: string): Effect.Effect<string
|
|
135
|
+
resolveAgentName(agentId: string): Effect.Effect<string>;
|
|
133
136
|
peekContextEntries(currentConvId: string, opts?: {
|
|
134
137
|
maxConversations?: number;
|
|
135
138
|
maxMessagesPerConv?: number;
|
|
@@ -150,7 +153,7 @@ export interface ChannelService {
|
|
|
150
153
|
* protocol (the channel core does not depend on the protocol
|
|
151
154
|
* descriptor, hence the structural shape duplicated here).
|
|
152
155
|
*
|
|
153
|
-
* Optional: when undefined (e.g.
|
|
156
|
+
* Optional: when undefined (e.g. Unauthenticated test fakes), the
|
|
154
157
|
* channel core falls back to default-grant — every inbound message
|
|
155
158
|
* dispatches without admission.
|
|
156
159
|
*/
|
|
@@ -158,15 +161,16 @@ export interface ChannelService {
|
|
|
158
161
|
readonly conversationId: string;
|
|
159
162
|
readonly messageId: string;
|
|
160
163
|
readonly senderAgentId: string;
|
|
161
|
-
readonly parts?:
|
|
164
|
+
readonly parts?: readonly unknown[];
|
|
162
165
|
readonly receivedAt?: string;
|
|
163
|
-
readonly pending?:
|
|
166
|
+
readonly pending?: readonly unknown[];
|
|
164
167
|
readonly attempt?: number;
|
|
165
168
|
}): Effect.Effect<{
|
|
166
169
|
readonly leaseId: LeaseId;
|
|
167
170
|
readonly dispatchId: string;
|
|
168
171
|
}, ServiceRpcError>;
|
|
169
172
|
}
|
|
173
|
+
/** Configures channel core. */
|
|
170
174
|
export interface ChannelCoreOptions {
|
|
171
175
|
service: ChannelService;
|
|
172
176
|
dispatchAdmissionTimeoutMs?: number;
|
|
@@ -184,7 +188,7 @@ export type InboundHandler<E = unknown> = (msg: EnrichedInboundMessage) => Effec
|
|
|
184
188
|
* side-effectful (advances per-conversation markers), so a second core
|
|
185
189
|
* would consume entries the first expected.
|
|
186
190
|
*
|
|
187
|
-
* Inbound path from wire bytes to user handler
|
|
191
|
+
* Inbound path from wire bytes to user handler:.
|
|
188
192
|
*
|
|
189
193
|
* ```mermaid
|
|
190
194
|
* sequenceDiagram
|
|
@@ -233,7 +237,7 @@ export declare class MoltZapChannelCore {
|
|
|
233
237
|
* strictly serially (one queue, one fiber); concurrent dispatches do
|
|
234
238
|
* not exist on this code path.
|
|
235
239
|
*/
|
|
236
|
-
private leaseIdInFlight
|
|
240
|
+
private leaseIdInFlight?;
|
|
237
241
|
/**
|
|
238
242
|
* Per-lease parking Deferreds for dispatches awaiting their
|
|
239
243
|
* `dispatchRelease` verdict. Settled by the `dispatchRelease` event
|
|
@@ -257,8 +261,7 @@ export declare class MoltZapChannelCore {
|
|
|
257
261
|
*/
|
|
258
262
|
private readonly inboundQueue;
|
|
259
263
|
private readonly consumerFiber;
|
|
260
|
-
private disconnectHandlers;
|
|
261
|
-
private reconnectHandlers;
|
|
264
|
+
private readonly disconnectHandlers;
|
|
262
265
|
constructor(opts: ChannelCoreOptions);
|
|
263
266
|
private registerMessageListener;
|
|
264
267
|
private startConsumerFiber;
|
|
@@ -274,17 +277,20 @@ export declare class MoltZapChannelCore {
|
|
|
274
277
|
* `DISPATCH_RELEASE_RING_SOFT_TTL_MS`; insertion at the hard cap
|
|
275
278
|
* evicts the oldest entry. Both eviction paths warn-log so operators
|
|
276
279
|
* can spot release-without-ack adversarial patterns.
|
|
280
|
+
* @param frame Value supplied to the operation.
|
|
277
281
|
*/
|
|
278
282
|
private recordDispatchRelease;
|
|
279
283
|
private evictDispatchReleaseRing;
|
|
280
284
|
private consumeDispatchRelease;
|
|
281
|
-
/**
|
|
285
|
+
/**
|
|
286
|
+
* Replaces any previous handler.
|
|
287
|
+
* @param handler Handler invoked for matching requests.
|
|
288
|
+
*/
|
|
282
289
|
onInbound<E>(handler: InboundHandler<E>): void;
|
|
283
290
|
onDisconnect(handler: () => void): void;
|
|
284
|
-
onReconnect(handler: () => void): void;
|
|
285
291
|
private fanout;
|
|
286
292
|
connect(): Effect.Effect<void, ServiceRpcError>;
|
|
287
|
-
disconnect(): Effect.Effect<void
|
|
293
|
+
disconnect(): Effect.Effect<void>;
|
|
288
294
|
isConnected(): boolean;
|
|
289
295
|
sendReply(taskId: TaskId, conversationId: ConversationId, text: string, opts?: {
|
|
290
296
|
dispatchLeaseId?: LeaseId;
|
|
@@ -305,7 +311,7 @@ export declare class MoltZapChannelCore {
|
|
|
305
311
|
* `recordDispatchRelease` settles when the release frame
|
|
306
312
|
* arrives.
|
|
307
313
|
*
|
|
308
|
-
* Per-message lease state machine
|
|
314
|
+
* Per-message lease state machine:.
|
|
309
315
|
*
|
|
310
316
|
* ```mermaid
|
|
311
317
|
* stateDiagram-v2
|
|
@@ -339,6 +345,8 @@ export declare class MoltZapChannelCore {
|
|
|
339
345
|
* synthetic deny verdict. The lease (if minted server-side) ages
|
|
340
346
|
* out via the post-grant TTL or LeaseRegistry's
|
|
341
347
|
* abandon-on-disconnect path; nothing here re-issues.
|
|
348
|
+
* @param work Value supplied to the operation.
|
|
349
|
+
* @returns The dispatch admission result.
|
|
342
350
|
*/
|
|
343
351
|
private dispatchAdmission;
|
|
344
352
|
/**
|
|
@@ -347,6 +355,9 @@ export declare class MoltZapChannelCore {
|
|
|
347
355
|
* and bounded-waits for the `recordDispatchRelease` event handler
|
|
348
356
|
* to settle it. The wait timeout matches today's
|
|
349
357
|
* `dispatchAdmissionTimeoutMs` (default 30 s).
|
|
358
|
+
* @param work Value supplied to the operation.
|
|
359
|
+
* @param leaseId Value supplied to the operation.
|
|
360
|
+
* @returns The buffered result.
|
|
350
361
|
*/
|
|
351
362
|
private awaitDispatchRelease;
|
|
352
363
|
private projectVerdict;
|
|
@@ -372,12 +383,16 @@ export declare class MoltZapChannelCore {
|
|
|
372
383
|
private takeCoalescedConversationMessages;
|
|
373
384
|
/**
|
|
374
385
|
* Stateless enrichment helper. Falls back to `sender.id` if
|
|
375
|
-
* `resolveAgentName` throws (e.g.
|
|
386
|
+
* `resolveAgentName` throws (e.g. Service not yet connected).
|
|
387
|
+
* @param service Value supplied to the operation.
|
|
388
|
+
* @param taskId Value supplied to the operation.
|
|
389
|
+
* @param messageOrMessages Value supplied to the operation.
|
|
390
|
+
* @returns The leased result.
|
|
376
391
|
*/
|
|
377
|
-
static enrichMessage(service: ChannelService, taskId: TaskId, messageOrMessages: Message |
|
|
392
|
+
static enrichMessage(service: ChannelService, taskId: TaskId, messageOrMessages: Message | readonly Message[]): Effect.Effect<{
|
|
378
393
|
enriched: EnrichedInboundMessage;
|
|
379
394
|
commitContext?: () => void;
|
|
380
|
-
}
|
|
395
|
+
}>;
|
|
381
396
|
private dispatchInboundEffect;
|
|
382
397
|
}
|
|
383
398
|
//# sourceMappingURL=channel-core.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channel-core.d.ts","sourceRoot":"","sources":["../src/channel-core.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAML,MAAM,
|
|
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
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Shared message-enrichment helper for MoltZap channel adapters.
|
|
3
3
|
*/
|
|
4
|
-
import { Cause, Chunk, Data, Deferred, Duration, Effect, Fiber, Queue, } from "effect";
|
|
4
|
+
import { Cause, Chunk, Data, Deferred, Duration, Effect, Fiber, Match, Option, Queue, } from "effect";
|
|
5
5
|
import { BoundedMap } from "@moltzap/protocol/bounded-map";
|
|
6
6
|
import { enrichChannelMessage } from "./channel-core-enrichment.js";
|
|
7
7
|
class DispatchAdmissionTimedOut extends Data.TaggedError("DispatchAdmissionTimedOut") {
|
|
@@ -48,7 +48,7 @@ function runBackgroundLog(effect) {
|
|
|
48
48
|
* side-effectful (advances per-conversation markers), so a second core
|
|
49
49
|
* would consume entries the first expected.
|
|
50
50
|
*
|
|
51
|
-
* Inbound path from wire bytes to user handler
|
|
51
|
+
* Inbound path from wire bytes to user handler:.
|
|
52
52
|
*
|
|
53
53
|
* ```mermaid
|
|
54
54
|
* sequenceDiagram
|
|
@@ -122,7 +122,6 @@ export class MoltZapChannelCore {
|
|
|
122
122
|
inboundQueue = Effect.runSync(Queue.unbounded());
|
|
123
123
|
consumerFiber;
|
|
124
124
|
disconnectHandlers = [];
|
|
125
|
-
reconnectHandlers = [];
|
|
126
125
|
constructor(opts) {
|
|
127
126
|
this.service = opts.service;
|
|
128
127
|
this.dispatchAdmissionTimeoutMs =
|
|
@@ -167,10 +166,6 @@ export class MoltZapChannelCore {
|
|
|
167
166
|
this.connected = false;
|
|
168
167
|
this.fanout(this.disconnectHandlers, "disconnect");
|
|
169
168
|
});
|
|
170
|
-
this.service.on("reconnect", () => {
|
|
171
|
-
this.connected = true;
|
|
172
|
-
this.fanout(this.reconnectHandlers, "reconnect");
|
|
173
|
-
});
|
|
174
169
|
}
|
|
175
170
|
registerConversationLifecycleListeners() {
|
|
176
171
|
this.service.on("conversationArchived", ({ conversationId }) => {
|
|
@@ -193,6 +188,7 @@ export class MoltZapChannelCore {
|
|
|
193
188
|
* `DISPATCH_RELEASE_RING_SOFT_TTL_MS`; insertion at the hard cap
|
|
194
189
|
* evicts the oldest entry. Both eviction paths warn-log so operators
|
|
195
190
|
* can spot release-without-ack adversarial patterns.
|
|
191
|
+
* @param frame Value supplied to the operation.
|
|
196
192
|
*/
|
|
197
193
|
recordDispatchRelease(frame) {
|
|
198
194
|
const parked = this.pendingDispatchesByLease.get(frame.leaseId);
|
|
@@ -230,21 +226,22 @@ export class MoltZapChannelCore {
|
|
|
230
226
|
}
|
|
231
227
|
consumeDispatchRelease(leaseId) {
|
|
232
228
|
const entry = this.pendingReleasesByLease.get(leaseId);
|
|
233
|
-
if (entry === undefined)
|
|
229
|
+
if (entry === undefined) {
|
|
234
230
|
return undefined;
|
|
231
|
+
}
|
|
235
232
|
this.pendingReleasesByLease.delete(leaseId);
|
|
236
233
|
return entry;
|
|
237
234
|
}
|
|
238
|
-
/**
|
|
235
|
+
/**
|
|
236
|
+
* Replaces any previous handler.
|
|
237
|
+
* @param handler Handler invoked for matching requests.
|
|
238
|
+
*/
|
|
239
239
|
onInbound(handler) {
|
|
240
240
|
this.inboundHandler = handler;
|
|
241
241
|
}
|
|
242
242
|
onDisconnect(handler) {
|
|
243
243
|
this.disconnectHandlers.push(handler);
|
|
244
244
|
}
|
|
245
|
-
onReconnect(handler) {
|
|
246
|
-
this.reconnectHandlers.push(handler);
|
|
247
|
-
}
|
|
248
245
|
fanout(handlers, label) {
|
|
249
246
|
for (const h of handlers) {
|
|
250
247
|
try {
|
|
@@ -305,10 +302,12 @@ export class MoltZapChannelCore {
|
|
|
305
302
|
takeDispatchCandidate(incoming) {
|
|
306
303
|
const conversationId = incoming.message.conversationId;
|
|
307
304
|
const parked = this.parkedByConversation.get(conversationId);
|
|
308
|
-
if (!parked || parked.length === 0)
|
|
305
|
+
if (!parked || parked.length === 0) {
|
|
309
306
|
return incoming;
|
|
307
|
+
}
|
|
310
308
|
parked.push(incoming);
|
|
311
|
-
const next =
|
|
309
|
+
const next =
|
|
310
|
+
/* Safe because the surrounding invariant establishes this asserted shape. */ parked.shift();
|
|
312
311
|
if (parked.length === 0) {
|
|
313
312
|
this.parkedByConversation.delete(conversationId);
|
|
314
313
|
}
|
|
@@ -339,7 +338,7 @@ export class MoltZapChannelCore {
|
|
|
339
338
|
* `recordDispatchRelease` settles when the release frame
|
|
340
339
|
* arrives.
|
|
341
340
|
*
|
|
342
|
-
* Per-message lease state machine
|
|
341
|
+
* Per-message lease state machine:.
|
|
343
342
|
*
|
|
344
343
|
* ```mermaid
|
|
345
344
|
* stateDiagram-v2
|
|
@@ -373,12 +372,16 @@ export class MoltZapChannelCore {
|
|
|
373
372
|
* synthetic deny verdict. The lease (if minted server-side) ages
|
|
374
373
|
* out via the post-grant TTL or LeaseRegistry's
|
|
375
374
|
* abandon-on-disconnect path; nothing here re-issues.
|
|
375
|
+
* @param work Value supplied to the operation.
|
|
376
|
+
* @returns The dispatch admission result.
|
|
376
377
|
*/
|
|
377
378
|
dispatchAdmission(work) {
|
|
378
379
|
if (!this.service.requestDispatch) {
|
|
379
380
|
return Effect.succeed({ _tag: "grant" });
|
|
380
381
|
}
|
|
381
|
-
return Effect.suspend(() =>
|
|
382
|
+
return Effect.suspend(() =>
|
|
383
|
+
/* Safe because the surrounding invariant establishes this asserted shape. */ this
|
|
384
|
+
.service.requestDispatch({
|
|
382
385
|
conversationId: work.message.conversationId,
|
|
383
386
|
messageId: work.message.id,
|
|
384
387
|
senderAgentId: work.message.senderId,
|
|
@@ -415,6 +418,9 @@ export class MoltZapChannelCore {
|
|
|
415
418
|
* and bounded-waits for the `recordDispatchRelease` event handler
|
|
416
419
|
* to settle it. The wait timeout matches today's
|
|
417
420
|
* `dispatchAdmissionTimeoutMs` (default 30 s).
|
|
421
|
+
* @param work Value supplied to the operation.
|
|
422
|
+
* @param leaseId Value supplied to the operation.
|
|
423
|
+
* @returns The buffered result.
|
|
418
424
|
*/
|
|
419
425
|
awaitDispatchRelease(work, leaseId) {
|
|
420
426
|
return Effect.gen(this, function* () {
|
|
@@ -431,7 +437,7 @@ export class MoltZapChannelCore {
|
|
|
431
437
|
const settled = yield* Deferred.await(deferred).pipe(Effect.timeoutOption(Duration.millis(this.dispatchAdmissionTimeoutMs)), Effect.ensuring(Effect.sync(() => {
|
|
432
438
|
this.pendingDispatchesByLease.delete(leaseId);
|
|
433
439
|
})));
|
|
434
|
-
if (settled
|
|
440
|
+
if (Option.isNone(settled)) {
|
|
435
441
|
yield* effectLogWarning("MoltZapChannelCore: dispatchRelease wait timed out - fail-closed deny", {
|
|
436
442
|
messageId: work.message.id,
|
|
437
443
|
conversationId: work.message.conversationId,
|
|
@@ -447,14 +453,13 @@ export class MoltZapChannelCore {
|
|
|
447
453
|
});
|
|
448
454
|
}
|
|
449
455
|
projectVerdict(work, leaseId, verdict) {
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
return this.projectGrantVerdict(work, leaseId, verdict);
|
|
453
|
-
case "deny":
|
|
454
|
-
return MoltZapChannelCore.denyDecision(verdict.reason);
|
|
455
|
-
case "hold":
|
|
456
|
-
return MoltZapChannelCore.holdDecision(verdict.reason);
|
|
456
|
+
if (verdict.decision === "grant") {
|
|
457
|
+
return this.projectGrantVerdict(work, leaseId, verdict);
|
|
457
458
|
}
|
|
459
|
+
if (verdict.decision === "deny") {
|
|
460
|
+
return MoltZapChannelCore.denyDecision(verdict.reason);
|
|
461
|
+
}
|
|
462
|
+
return MoltZapChannelCore.holdDecision(verdict.reason);
|
|
458
463
|
}
|
|
459
464
|
projectGrantVerdict(work, leaseId, verdict) {
|
|
460
465
|
runBackgroundLog(effectLogInfo("MoltZapChannelCore: dispatch admission granted", {
|
|
@@ -500,14 +505,7 @@ export class MoltZapChannelCore {
|
|
|
500
505
|
});
|
|
501
506
|
}
|
|
502
507
|
handleDispatchDecision(current, decision) {
|
|
503
|
-
|
|
504
|
-
case "grant":
|
|
505
|
-
return this.dispatchGrantedWork(current, decision);
|
|
506
|
-
case "deny":
|
|
507
|
-
return this.logDeniedDispatch(current, decision);
|
|
508
|
-
case "hold":
|
|
509
|
-
return this.holdDispatchWork(current, decision);
|
|
510
|
-
}
|
|
508
|
+
return Match.value(decision).pipe(Match.tag("grant", (grant) => this.dispatchGrantedWork(current, grant)), Match.tag("deny", (deny) => this.logDeniedDispatch(current, deny)), Match.tag("hold", (hold) => this.holdDispatchWork(current, hold)), Match.exhaustive);
|
|
511
509
|
}
|
|
512
510
|
dispatchGrantedWork(current, decision) {
|
|
513
511
|
return Effect.gen(this, function* () {
|
|
@@ -516,7 +514,8 @@ export class MoltZapChannelCore {
|
|
|
516
514
|
yield* this.logDispatchTargetUnavailable(current, decision);
|
|
517
515
|
return;
|
|
518
516
|
}
|
|
519
|
-
const primaryMessage =
|
|
517
|
+
const primaryMessage =
|
|
518
|
+
/* Safe because the surrounding invariant establishes this asserted shape. */ messages[0];
|
|
520
519
|
yield* this.logDispatchStart(current, primaryMessage, messages, decision);
|
|
521
520
|
const timedOut = yield* this.runGrantedDispatch(current, primaryMessage, messages, decision);
|
|
522
521
|
if (!timedOut) {
|
|
@@ -532,8 +531,9 @@ export class MoltZapChannelCore {
|
|
|
532
531
|
runGrantedDispatch(current, primaryMessage, messages, decision) {
|
|
533
532
|
const dispatch = this.dispatchWithLease(current.taskId, messages, decision.leaseId);
|
|
534
533
|
const timeoutMs = MoltZapChannelCore.leaseTimeoutMs(decision);
|
|
535
|
-
if (timeoutMs === undefined)
|
|
534
|
+
if (timeoutMs === undefined) {
|
|
536
535
|
return dispatch.pipe(Effect.as(false));
|
|
536
|
+
}
|
|
537
537
|
return dispatch.pipe(Effect.timeoutFail({
|
|
538
538
|
duration: Duration.millis(timeoutMs),
|
|
539
539
|
onTimeout: () => new DispatchLeaseExpired({
|
|
@@ -664,22 +664,28 @@ export class MoltZapChannelCore {
|
|
|
664
664
|
for (const remainingWork of remaining) {
|
|
665
665
|
Queue.unsafeOffer(this.inboundQueue, remainingWork);
|
|
666
666
|
}
|
|
667
|
-
if (startIndex < 0)
|
|
667
|
+
if (startIndex < 0) {
|
|
668
668
|
return [];
|
|
669
|
+
}
|
|
669
670
|
return sameConversation.slice(startIndex);
|
|
670
671
|
});
|
|
671
672
|
}
|
|
672
673
|
/**
|
|
673
674
|
* Stateless enrichment helper. Falls back to `sender.id` if
|
|
674
|
-
* `resolveAgentName` throws (e.g.
|
|
675
|
+
* `resolveAgentName` throws (e.g. Service not yet connected).
|
|
676
|
+
* @param service Value supplied to the operation.
|
|
677
|
+
* @param taskId Value supplied to the operation.
|
|
678
|
+
* @param messageOrMessages Value supplied to the operation.
|
|
679
|
+
* @returns The leased result.
|
|
675
680
|
*/
|
|
676
681
|
static enrichMessage(service, taskId, messageOrMessages) {
|
|
677
682
|
return enrichChannelMessage(service, taskId, messageOrMessages);
|
|
678
683
|
}
|
|
679
684
|
dispatchInboundEffect(taskId, messages) {
|
|
680
685
|
return Effect.gen(this, function* () {
|
|
681
|
-
if (!this.inboundHandler)
|
|
686
|
+
if (!this.inboundHandler) {
|
|
682
687
|
return;
|
|
688
|
+
}
|
|
683
689
|
const { enriched, commitContext } = yield* MoltZapChannelCore.enrichMessage(this.service, taskId, messages);
|
|
684
690
|
const leased = this.leaseIdInFlight !== undefined
|
|
685
691
|
? { ...enriched, dispatchLeaseId: this.leaseIdInFlight }
|
|
@@ -688,8 +694,9 @@ export class MoltZapChannelCore {
|
|
|
688
694
|
// its typed error channel propagates to the consumer fiber, which logs
|
|
689
695
|
// and continues. We await it inline to preserve arrival-order delivery.
|
|
690
696
|
yield* this.inboundHandler(leased);
|
|
691
|
-
if (commitContext)
|
|
697
|
+
if (commitContext) {
|
|
692
698
|
commitContext();
|
|
699
|
+
}
|
|
693
700
|
});
|
|
694
701
|
}
|
|
695
702
|
}
|
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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"}
|
package/dist/cli/adapters.d.ts
CHANGED
|
@@ -12,7 +12,10 @@ type SchemaOptionPresentations<I> = Partial<Record<Extract<keyof I, string>, Sch
|
|
|
12
12
|
* Generates scalar named CLI options from a closed Effect Struct schema.
|
|
13
13
|
* The assembled encoded object is decoded once through the complete schema,
|
|
14
14
|
* keeping brands, transformations, refinements, and defaults authoritative.
|
|
15
|
+
* @param schema Value supplied to the operation.
|
|
16
|
+
* @param presentations Value supplied to the operation.
|
|
17
|
+
* @returns The options from schema result.
|
|
15
18
|
*/
|
|
16
|
-
export declare const optionsFromSchema: <A extends Readonly<Record<string, unknown>>, I extends Readonly<Record<string, unknown>>>(schema: Schema.Schema<A, I
|
|
19
|
+
export declare const optionsFromSchema: <A extends Readonly<Record<string, unknown>>, I extends Readonly<Record<string, unknown>>>(schema: Schema.Schema<A, I>, presentations?: SchemaOptionPresentations<I>) => Options.Options<A>;
|
|
17
20
|
export {};
|
|
18
21
|
//# sourceMappingURL=adapters.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapters.d.ts","sourceRoot":"","sources":["../../src/cli/adapters.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EAAU,MAAM,EAAa,MAAM,QAAQ,CAAC;AAEnD,UAAU,wBAAwB;IAChC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,KAAK,yBAAyB,CAAC,CAAC,IAAI,OAAO,CACzC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,EAAE,wBAAwB,CAAC,CAC3D,CAAC;
|
|
1
|
+
{"version":3,"file":"adapters.d.ts","sourceRoot":"","sources":["../../src/cli/adapters.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EAAU,MAAM,EAAa,MAAM,QAAQ,CAAC;AAEnD,UAAU,wBAAwB;IAChC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,KAAK,yBAAyB,CAAC,CAAC,IAAI,OAAO,CACzC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,EAAE,wBAAwB,CAAC,CAC3D,CAAC;AAqIF;;;;;;;GAOG;AACH,eAAO,MAAM,iBAAiB,GAC5B,CAAC,SAAS,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAC3C,CAAC,SAAS,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAE3C,QAAQ,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAC3B,gBAAe,yBAAyB,CAAC,CAAC,CAAM,KAC/C,OAAO,CAAC,OAAO,CAAC,CAAC,CA2CnB,CAAC"}
|
package/dist/cli/adapters.js
CHANGED
|
@@ -16,8 +16,9 @@ const kebabCase = (value) => value
|
|
|
16
16
|
.replace(/[A-Z]/g, (letter) => `-${letter.toLowerCase()}`)
|
|
17
17
|
.replace(/^-/, "");
|
|
18
18
|
const withoutUndefined = (ast) => {
|
|
19
|
-
if (!SchemaAST.isUnion(ast))
|
|
19
|
+
if (!SchemaAST.isUnion(ast)) {
|
|
20
20
|
return ast;
|
|
21
|
+
}
|
|
21
22
|
const members = ast.types.filter((member) => !SchemaAST.isUndefinedKeyword(member));
|
|
22
23
|
return SchemaAST.Union.make(members, ast.annotations);
|
|
23
24
|
};
|
|
@@ -25,10 +26,12 @@ const hasIntegerRefinement = (ast) => {
|
|
|
25
26
|
if (SchemaAST.isRefinement(ast)) {
|
|
26
27
|
return (Option.contains(SchemaAST.getSchemaIdAnnotation(ast), Schema.IntSchemaId) || hasIntegerRefinement(ast.from));
|
|
27
28
|
}
|
|
28
|
-
if (SchemaAST.isUnion(ast))
|
|
29
|
+
if (SchemaAST.isUnion(ast)) {
|
|
29
30
|
return ast.types.some(hasIntegerRefinement);
|
|
30
|
-
|
|
31
|
+
}
|
|
32
|
+
if (SchemaAST.isTransformation(ast)) {
|
|
31
33
|
return hasIntegerRefinement(ast.to);
|
|
34
|
+
}
|
|
32
35
|
return false;
|
|
33
36
|
};
|
|
34
37
|
const propertyName = (property) => typeof property.name === "string"
|
|
@@ -41,8 +44,9 @@ const closedProperties = (ast, side) => {
|
|
|
41
44
|
return ast.propertySignatures;
|
|
42
45
|
};
|
|
43
46
|
const scalarOption = (field, name, encodedAst, validationAst) => {
|
|
44
|
-
if (SchemaAST.isStringKeyword(encodedAst))
|
|
47
|
+
if (SchemaAST.isStringKeyword(encodedAst)) {
|
|
45
48
|
return Options.text(name);
|
|
49
|
+
}
|
|
46
50
|
if (SchemaAST.isNumberKeyword(encodedAst)) {
|
|
47
51
|
return hasIntegerRefinement(validationAst)
|
|
48
52
|
? Options.integer(name)
|
|
@@ -79,6 +83,9 @@ const fragmentForProperty = (property, validationProperty, presentation, claimed
|
|
|
79
83
|
* Generates scalar named CLI options from a closed Effect Struct schema.
|
|
80
84
|
* The assembled encoded object is decoded once through the complete schema,
|
|
81
85
|
* keeping brands, transformations, refinements, and defaults authoritative.
|
|
86
|
+
* @param schema Value supplied to the operation.
|
|
87
|
+
* @param presentations Value supplied to the operation.
|
|
88
|
+
* @returns The options from schema result.
|
|
82
89
|
*/
|
|
83
90
|
export const optionsFromSchema = (schema, presentations = {}) => {
|
|
84
91
|
const properties = closedProperties(Schema.encodedSchema(schema).ast, "encoded");
|