@moltzap/client 2026.503.2 → 2026.503.4
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/auth.d.ts +10 -1
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +8 -5
- package/dist/auth.js.map +1 -1
- package/dist/cli/commands/agents.d.ts.map +1 -1
- package/dist/cli/commands/agents.js +5 -3
- package/dist/cli/commands/agents.js.map +1 -1
- package/dist/cli/commands/apps.d.ts +7 -3
- package/dist/cli/commands/apps.d.ts.map +1 -1
- package/dist/cli/commands/apps.js +21 -17
- package/dist/cli/commands/apps.js.map +1 -1
- package/dist/cli/commands/apps.test.js +7 -6
- package/dist/cli/commands/apps.test.js.map +1 -1
- package/dist/cli/commands/contacts.d.ts.map +1 -1
- package/dist/cli/commands/contacts.js +6 -4
- package/dist/cli/commands/contacts.js.map +1 -1
- package/dist/cli/commands/conversations-v2.test.js +4 -3
- package/dist/cli/commands/conversations-v2.test.js.map +1 -1
- package/dist/cli/commands/conversations.d.ts +7 -3
- package/dist/cli/commands/conversations.d.ts.map +1 -1
- package/dist/cli/commands/conversations.js +26 -26
- package/dist/cli/commands/conversations.js.map +1 -1
- package/dist/cli/commands/messages.d.ts +7 -3
- package/dist/cli/commands/messages.d.ts.map +1 -1
- package/dist/cli/commands/messages.js +4 -9
- package/dist/cli/commands/messages.js.map +1 -1
- package/dist/cli/commands/messages.test.js +2 -1
- package/dist/cli/commands/messages.test.js.map +1 -1
- package/dist/cli/commands/permissions.d.ts +7 -3
- package/dist/cli/commands/permissions.d.ts.map +1 -1
- package/dist/cli/commands/permissions.js +11 -12
- package/dist/cli/commands/permissions.js.map +1 -1
- package/dist/cli/commands/permissions.test.js +4 -3
- package/dist/cli/commands/permissions.test.js.map +1 -1
- package/dist/cli/commands/ping.d.ts +9 -0
- package/dist/cli/commands/ping.d.ts.map +1 -1
- package/dist/cli/commands/ping.js +17 -4
- package/dist/cli/commands/ping.js.map +1 -1
- package/dist/cli/commands/presence.d.ts.map +1 -1
- package/dist/cli/commands/presence.js +2 -1
- package/dist/cli/commands/presence.js.map +1 -1
- package/dist/cli/commands/register.d.ts.map +1 -1
- package/dist/cli/commands/register.js +2 -1
- package/dist/cli/commands/register.js.map +1 -1
- package/dist/cli/commands/send.d.ts.map +1 -1
- package/dist/cli/commands/send.js +5 -3
- package/dist/cli/commands/send.js.map +1 -1
- package/dist/cli/commands/send.test.js +4 -3
- package/dist/cli/commands/send.test.js.map +1 -1
- package/dist/cli/commands/whoami.d.ts.map +1 -1
- package/dist/cli/commands/whoami.js +5 -1
- package/dist/cli/commands/whoami.js.map +1 -1
- package/dist/cli/config.d.ts +42 -6
- package/dist/cli/config.d.ts.map +1 -1
- package/dist/cli/config.js +91 -27
- package/dist/cli/config.js.map +1 -1
- package/dist/cli/http-client.d.ts +11 -1
- package/dist/cli/http-client.d.ts.map +1 -1
- package/dist/cli/http-client.js +13 -4
- package/dist/cli/http-client.js.map +1 -1
- package/dist/cli/index.js +2 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/profile.d.ts +3 -4
- package/dist/cli/profile.d.ts.map +1 -1
- package/dist/cli/profile.js +42 -29
- package/dist/cli/profile.js.map +1 -1
- package/dist/cli/runtime.d.ts.map +1 -1
- package/dist/cli/runtime.js +11 -7
- package/dist/cli/runtime.js.map +1 -1
- package/dist/cli/socket-client.d.ts +22 -2
- package/dist/cli/socket-client.d.ts.map +1 -1
- package/dist/cli/socket-client.js +28 -12
- package/dist/cli/socket-client.js.map +1 -1
- package/dist/cli/transport.d.ts +3 -7
- package/dist/cli/transport.d.ts.map +1 -1
- package/dist/cli/transport.js +42 -32
- package/dist/cli/transport.js.map +1 -1
- package/dist/cli/transport.test.js +17 -14
- package/dist/cli/transport.test.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/internal/__tests__/s2c-partition-key.test.js +16 -15
- package/dist/internal/__tests__/s2c-partition-key.test.js.map +1 -1
- package/dist/internal/__tests__/s2c-partition-worker.test.js +2 -1
- package/dist/internal/__tests__/s2c-partition-worker.test.js.map +1 -1
- package/dist/internal/__tests__/s2c-partitioned-dispatcher-real-ws.test.js +10 -9
- package/dist/internal/__tests__/s2c-partitioned-dispatcher-real-ws.test.js.map +1 -1
- package/dist/internal/__tests__/s2c-partitioned-dispatcher.test.js +10 -9
- package/dist/internal/__tests__/s2c-partitioned-dispatcher.test.js.map +1 -1
- package/dist/internal/s2c-partition-key.d.ts +13 -4
- package/dist/internal/s2c-partition-key.d.ts.map +1 -1
- package/dist/internal/s2c-partition-key.js +15 -9
- package/dist/internal/s2c-partition-key.js.map +1 -1
- package/dist/internal/s2c-partitioned-dispatcher.d.ts.map +1 -1
- package/dist/internal/s2c-partitioned-dispatcher.js +5 -6
- package/dist/internal/s2c-partitioned-dispatcher.js.map +1 -1
- package/dist/runtime/close-info.d.ts +15 -16
- package/dist/runtime/close-info.d.ts.map +1 -1
- package/dist/runtime/close-info.js +12 -8
- package/dist/runtime/close-info.js.map +1 -1
- package/dist/runtime/errors.test.js +4 -5
- package/dist/runtime/errors.test.js.map +1 -1
- package/dist/runtime/frame.d.ts +1 -0
- package/dist/runtime/frame.d.ts.map +1 -1
- package/dist/runtime/frame.js +1 -0
- package/dist/runtime/frame.js.map +1 -1
- package/dist/runtime/runtime.test.js +3 -2
- package/dist/runtime/runtime.test.js.map +1 -1
- package/dist/runtime/subscribers.d.ts +3 -4
- package/dist/runtime/subscribers.d.ts.map +1 -1
- package/dist/runtime/subscribers.js +8 -16
- package/dist/runtime/subscribers.js.map +1 -1
- package/dist/service.d.ts.map +1 -1
- package/dist/service.js +35 -16
- package/dist/service.js.map +1 -1
- package/dist/service.test.js +21 -22
- package/dist/service.test.js.map +1 -1
- package/dist/test/index.d.ts +9 -1
- package/dist/test/index.d.ts.map +1 -1
- package/dist/test/index.js +14 -3
- package/dist/test/index.js.map +1 -1
- package/dist/test-utils/conformance-adapter.d.ts.map +1 -1
- package/dist/test-utils/conformance-adapter.js +53 -38
- package/dist/test-utils/conformance-adapter.js.map +1 -1
- package/dist/test-utils/fake-service.d.ts +5 -6
- package/dist/test-utils/fake-service.d.ts.map +1 -1
- package/dist/test-utils/fake-service.js +10 -10
- package/dist/test-utils/fake-service.js.map +1 -1
- package/dist/test-utils/index.d.ts.map +1 -1
- package/dist/test-utils/index.js +13 -4
- package/dist/test-utils/index.js.map +1 -1
- package/dist/ws-client.d.ts +7 -1
- package/dist/ws-client.d.ts.map +1 -1
- package/dist/ws-client.js +99 -58
- package/dist/ws-client.js.map +1 -1
- package/dist/ws-client.test.js +49 -26
- package/dist/ws-client.test.js.map +1 -1
- package/package.json +3 -3
|
@@ -29,7 +29,11 @@
|
|
|
29
29
|
* pre-deletion). The registry itself has no typed error surface —
|
|
30
30
|
* `register`, `dispatch`, and `closeAll` are `Effect<T, never>`.
|
|
31
31
|
*/
|
|
32
|
-
import { Effect, Ref } from "effect";
|
|
32
|
+
import { Brand, Effect, Ref } from "effect";
|
|
33
|
+
export const SubscriptionId = Brand.nominal();
|
|
34
|
+
function isEventDataRecord(value) {
|
|
35
|
+
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
36
|
+
}
|
|
33
37
|
/**
|
|
34
38
|
* Construct an empty registry. Called once from the `MoltZapWsClient`
|
|
35
39
|
* constructor. Takes a logger so registry-internal error logs reach the
|
|
@@ -55,7 +59,7 @@ export function makeSubscriberRegistry(logger) {
|
|
|
55
59
|
const counterRef = yield* Ref.make(0);
|
|
56
60
|
const register = (filter, handler) => Effect.gen(function* () {
|
|
57
61
|
const n = yield* Ref.updateAndGet(counterRef, (c) => c + 1);
|
|
58
|
-
const id = `sub-${n}
|
|
62
|
+
const id = SubscriptionId(`sub-${n}`);
|
|
59
63
|
const live = { id, filter, handler };
|
|
60
64
|
yield* Ref.update(subsRef, (xs) => [...xs, live]);
|
|
61
65
|
const unsubscribe = Ref.update(subsRef, (xs) => xs.filter((s) => s.id !== id));
|
|
@@ -101,20 +105,8 @@ export function matchesFilter(filter, frame) {
|
|
|
101
105
|
if (!frame.event.startsWith(filter.eventNamePrefix))
|
|
102
106
|
return false;
|
|
103
107
|
}
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
// else (string, number, array) cannot satisfy a payload-key filter.
|
|
107
|
-
// The cast is annotated below: the EventFrame schema declares `data:
|
|
108
|
-
// unknown`, and the OQ-2 A filter grammar intentionally treats
|
|
109
|
-
// payloads as untyped maps so arbitrary publisher payloads can be
|
|
110
|
-
// filtered without a per-event schema tax. The `typeof === "object"`
|
|
111
|
-
// guard is the runtime boundary; the read sites
|
|
112
|
-
// (`data?.["__emissionTag"]`, `data?.["conversationId"]`) defend
|
|
113
|
-
// against missing or wrong-typed values via `=== filter.<field>`.
|
|
114
|
-
const data = typeof frame.data === "object" &&
|
|
115
|
-
frame.data !== null &&
|
|
116
|
-
!Array.isArray(frame.data)
|
|
117
|
-
? frame.data // #ignore-sloppy-code[record-cast]: EventFrame schema declares `data: unknown`; OQ-2 A filter treats payloads as untyped maps; the typeof guard above is the runtime boundary
|
|
108
|
+
const data = isEventDataRecord(frame.data)
|
|
109
|
+
? frame.data
|
|
118
110
|
: null;
|
|
119
111
|
if (filter.emissionTag !== undefined) {
|
|
120
112
|
const tag = data?.["__emissionTag"];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subscribers.js","sourceRoot":"","sources":["../../src/runtime/subscribers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"subscribers.js","sourceRoot":"","sources":["../../src/runtime/subscribers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAK5C,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,EAAkB,CAAC;AAwG9D,SAAS,iBAAiB,CAAC,KAAc;IACvC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,sBAAsB,CAAC,MAEtC;IACC,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QACzB,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAkC,EAAE,CAAC,CAAC;QACrE,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAEtC,MAAM,QAAQ,GAAmC,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,CACnE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC5D,MAAM,EAAE,GAAG,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACtC,MAAM,IAAI,GAAqB,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;YACvD,KAAK,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC;YAClD,MAAM,WAAW,GAA+B,GAAG,CAAC,MAAM,CACxD,OAAO,EACP,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CACtC,CAAC;YACF,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC;QAC7B,CAAC,CAAC,CAAC;QAEL,MAAM,QAAQ,GAAmC,CAAC,KAAK,EAAE,EAAE,CACzD,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,+DAA+D;YAC/D,6DAA6D;YAC7D,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACzC,6DAA6D;YAC7D,4DAA4D;YAC5D,uCAAuC;YACvC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO;YAClC,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;gBAC3B,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC;oBAAE,SAAS;gBAChD,2DAA2D;gBAC3D,6DAA6D;gBAC7D,oBAAoB;gBACpB,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAClD,MAAM,CAAC,cAAc,CAAC,CAAC,GAAG,EAAE,EAAE,CAC5B,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE;oBACf,MAAM,CAAC,IAAI,CAAC,0BAA0B,EAAE,GAAG,CAAC,CAAC;gBAC/C,CAAC,CAAC,CACH,CACF,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CAAC;QAEL,MAAM,QAAQ,GAA+B,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAElE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;IAC1C,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,aAAa,CAC3B,MAA0B,EAC1B,KAAiB;IAEjB,IAAI,MAAM,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;QACzC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,eAAe,CAAC;YAAE,OAAO,KAAK,CAAC;IACpE,CAAC;IACD,MAAM,IAAI,GAAmC,iBAAiB,CAAC,KAAK,CAAC,IAAI,CAAC;QACxE,CAAC,CAAC,KAAK,CAAC,IAAI;QACZ,CAAC,CAAC,IAAI,CAAC;IAET,IAAI,MAAM,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,EAAE,CAAC,eAAe,CAAC,CAAC;QACpC,IAAI,GAAG,KAAK,MAAM,CAAC,WAAW;YAAE,OAAO,KAAK,CAAC;IAC/C,CAAC;IACD,IAAI,MAAM,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;QACxC,MAAM,GAAG,GAAG,IAAI,EAAE,CAAC,gBAAgB,CAAC,CAAC;QACrC,IAAI,GAAG,KAAK,MAAM,CAAC,cAAc;YAAE,OAAO,KAAK,CAAC;IAClD,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
package/dist/service.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"AAIA,OAAO,EAML,KAAK,UAAU,EACf,KAAK,OAAO,EAKZ,KAAK,yBAAyB,EAC9B,KAAK,2BAA2B,EAChC,KAAK,wBAAwB,EAM9B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,
|
|
1
|
+
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"AAIA,OAAO,EAML,KAAK,UAAU,EACf,KAAK,OAAO,EAKZ,KAAK,yBAAyB,EAC9B,KAAK,2BAA2B,EAChC,KAAK,wBAAwB,EAM9B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAIL,MAAM,EAKP,MAAM,QAAQ,CAAC;AAChB,OAAO,EAEL,KAAK,cAAc,EACnB,KAAK,cAAc,EACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,cAAc,EACd,eAAe,EAChB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,KAAK,EACV,yBAAyB,EACzB,wBAAwB,EACzB,MAAM,mBAAmB,CAAC;AAqD3B;;;GAGG;AACH,MAAM,MAAM,eAAe,GACvB,iBAAiB,GACjB,eAAe,GACf,cAAc,CAAC;AAEnB,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,oBAAoB,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,uEAAuE;AACvE,MAAM,WAAW,sBAAsB;IACrC,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,+DAA+D;IAC/D,KAAK,EAAE,MAAM,CAAC;CACf;AAED,uFAAuF;AACvF,wBAAgB,yBAAyB,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAE3D;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,sBAAsB,EAAE,EACjC,IAAI,EAAE;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GACvB,MAAM,GAAG,IAAI,CAef;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,cAAc,CAAC;CACzB;AAED,KAAK,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC;AAIzC,UAAU,OAAO;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,KAAK,CAAC;QACpB,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,YAAY,CAAC,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,EAAE,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KACpD,CAAC,CAAC;IACH,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACvC;AAED,0EAA0E;AAC1E,MAAM,WAAW,gBAAgB;IAC/B,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAmCD;;;;;;;;;;GAUG;AACH,qBAAa,cAAc;IAyCb,OAAO,CAAC,IAAI;IAxCxB,OAAO,CAAC,MAAM,CAAgC;IAC9C,OAAO,CAAC,UAAU,CAAS;IAE3B,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAEuC;IACxE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAEkD;IAC9E,OAAO,CAAC,QAAQ,CAAC,aAAa,CAC8B;IAC5D,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAEoB;IAC9D,OAAO,CAAC,QAAQ,CAAC,eAAe,CAI9B;IACF,OAAO,CAAC,QAAQ,CAAC,WAAW,CAM1B;IACF,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAqB;IAC7D,OAAO,CAAC,eAAe,CAA+B;IACtD,OAAO,CAAC,gBAAgB,CAAkC;IAC1D,OAAO,CAAC,kBAAkB,CAA4B;IACtD,OAAO,CAAC,iBAAiB,CAA+B;IACxD,OAAO,CAAC,0BAA0B,CAC7B;IACL,OAAO,CAAC,4BAA4B,CAC/B;IACL,OAAO,CAAC,8BAA8B,CACjC;IAEL,OAAO,CAAC,WAAW,CAAqB;gBAEpB,IAAI,EAAE,cAAc;IAExC,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED,IAAI,UAAU,IAAI,MAAM,GAAG,SAAS,CAEnC;IAED,yFAAyF;IACzF,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,eAAe,CAAC;IAsClD;;;;;OAKG;IACH,KAAK,IAAI,IAAI;IA0Bb,OAAO,CAAC,YAAY,CAA2B;IAC/C,OAAO,CAAC,gBAAgB,CAAuB;IAE/C,6EAA6E;IAC7E,MAAM,CAAC,QAAQ,CAAC,WAAW,SAIzB;IAEF;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAC,kBAAkB;IAIjC,2DAA2D;IAC3D,IAAI,UAAU,IAAI,MAAM,CAGvB;IAED,iBAAiB,IAAI,IAAI;IAwDzB,gBAAgB,IAAI,IAAI;IAmBxB;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB;IAsD9B,OAAO,CAAC,yBAAyB;IA0BjC,OAAO,CAAC,oBAAoB;IAqI5B,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS;IAM7D,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAI/C,gBAAgB,IAAI,gBAAgB,EAAE;IAMtC,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,EAAE;IAWrD,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAMjD;;;;;OAKG;IACH,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC;IAiC/D,IAAI,CACF,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,eAAe,CAAC,EAAE,MAAM,CAAA;KAAE,GACpD,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAAC;IAqBvC,iBAAiB,CACf,OAAO,EAAE,wBAAwB,GAChC,MAAM,CAAC,MAAM,CAAC,yBAAyB,EAAE,eAAe,CAAC;IAsD5D,WAAW,CACT,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAC1B,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,GAAG,kBAAkB,CAAC;IA4B5D;;;;OAIG;IACH,UAAU,CAAC,aAAa,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,cAAc,GAAG,MAAM,GAAG,IAAI;IASvE;;;;;OAKG;IACH,kBAAkB,CAChB,aAAa,EAAE,MAAM,EACrB,IAAI,CAAC,EAAE;QAAE,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAAC,kBAAkB,CAAC,EAAE,MAAM,CAAA;KAAE,GAChE;QAAE,OAAO,EAAE,sBAAsB,EAAE,CAAC;QAAC,MAAM,EAAE,MAAM,IAAI,CAAA;KAAE;IAuE5D;;;;OAIG;IACH,gBAAgB,CAAC,aAAa,EAAE,MAAM,GAAG;QACvC,QAAQ,EAAE,gBAAgB,EAAE,CAAC;QAC7B,MAAM,EAAE,MAAM,IAAI,CAAC;KACpB;IAsCD,OAAO,CAAC,kBAAkB;IAiB1B,OAAO,CAAE,qBAAqB;IAmB9B,OAAO,CAAC,mBAAmB;IAoB3B,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,CAAC,OAAO,CAAC,GAAG,IAAI;IAC1D,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,YAAY,CAAC,UAAU,CAAC,GAAG,IAAI;IAC9D,EAAE,CAAC,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,YAAY,CAAC,IAAI,CAAC,GAAG,IAAI;IAC1D,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,YAAY,CAAC,OAAO,CAAC,GAAG,IAAI;IAC5D,EAAE,CACA,KAAK,EAAE,oBAAoB,EAC3B,OAAO,EAAE,YAAY,CAAC,wBAAwB,CAAC,GAC9C,IAAI;IACP,EAAE,CACA,KAAK,EAAE,sBAAsB,EAC7B,OAAO,EAAE,YAAY,CAAC,yBAAyB,CAAC,GAC/C,IAAI;IACP,EAAE,CACA,KAAK,EAAE,wBAAwB,EAC/B,OAAO,EAAE,YAAY,CAAC,2BAA2B,CAAC,GACjD,IAAI;IA6CP,OAAO,CACL,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,OAAO,EAChB,IAAI,CAAC,EAAE,cAAc,GACpB,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,eAAe,CAAC;IAS1C,eAAe,CAAC,MAAM,EAAE;QACtB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,EAAE,CAAC;KAClB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAAC;IAMxC;;;;OAIG;IACH,OAAO,CAAC,+BAA+B;IA8BvC,OAAO,CAAC,iBAAiB;IAsBzB,OAAO,CAAC,WAAW;IA6FnB,OAAO,CAAC,wBAAwB;IAgDhC,OAAO,CAAC,YAAY;CAiBrB"}
|
package/dist/service.js
CHANGED
|
@@ -3,13 +3,24 @@ import * as fs from "node:fs";
|
|
|
3
3
|
import * as path from "node:path";
|
|
4
4
|
import * as os from "node:os";
|
|
5
5
|
import { AgentsLookup, AgentsLookupByName, AppsAuthorizeDispatch, ConversationsCreate, ConversationsGet, ErrorCodes, EventNames, MessagesList, MessagesSend, PermissionsGrant, } from "@moltzap/protocol";
|
|
6
|
-
import { Effect, HashMap, Match, Option, Ref } from "effect";
|
|
6
|
+
import { Config, ConfigProvider, Data, Effect, HashMap, Match, Option, Ref, } from "effect";
|
|
7
7
|
import { MoltZapWsClient, } from "./ws-client.js";
|
|
8
8
|
import { AgentNotFoundError, NotConnectedError, RpcServerError, RpcTimeoutError, } from "./runtime/errors.js";
|
|
9
9
|
import { getOr, snapshot } from "./runtime/refs.js";
|
|
10
|
-
const isPlainRecord = (value) => typeof value === "object" && value !== null;
|
|
10
|
+
const isPlainRecord = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
|
|
11
|
+
const CROSS_CONTEXT_TEXT_LIMIT = 120;
|
|
12
|
+
const DEFAULT_HISTORY_LIMIT = 10;
|
|
13
|
+
const DEFAULT_MAX_CONTEXT_CONVERSATIONS = 5;
|
|
14
|
+
const DEFAULT_MAX_MESSAGES_PER_CONVERSATION = 3;
|
|
15
|
+
const HISTORY_LOOKUP_CONCURRENCY = 2;
|
|
16
|
+
const MILLISECONDS_PER_MINUTE = 60_000;
|
|
17
|
+
const SOCKET_FILE_MODE = 0o600;
|
|
18
|
+
class ServiceInputError extends Data.TaggedError("ServiceInputError") {
|
|
19
|
+
}
|
|
20
|
+
const ClientEventLogDir = Config.option(Config.string("MOLTZAP_CLIENT_EVENT_LOG_DIR"));
|
|
21
|
+
const getClientEventLogDir = () => Option.getOrUndefined(Effect.runSync(ClientEventLogDir.pipe(Effect.withConfigProvider(ConfigProvider.fromEnv()))));
|
|
11
22
|
function appendClientEventTrace(record) {
|
|
12
|
-
const dir =
|
|
23
|
+
const dir = getClientEventLogDir();
|
|
13
24
|
if (!dir)
|
|
14
25
|
return;
|
|
15
26
|
try {
|
|
@@ -41,7 +52,7 @@ export function formatCrossConversationBlock(entries, opts) {
|
|
|
41
52
|
return null;
|
|
42
53
|
const lines = entries.map((e) => {
|
|
43
54
|
const safeSender = sanitizeForSystemReminder(e.senderName);
|
|
44
|
-
const safeText = sanitizeForSystemReminder(e.text.slice(0,
|
|
55
|
+
const safeText = sanitizeForSystemReminder(e.text.slice(0, CROSS_CONTEXT_TEXT_LIMIT));
|
|
45
56
|
return `@${safeSender} (${e.minutesAgo}m ago): (${e.count} new) "${safeText}"`;
|
|
46
57
|
});
|
|
47
58
|
return [
|
|
@@ -127,6 +138,7 @@ export class MoltZapService {
|
|
|
127
138
|
// close metadata today; signature kept explicit so a future
|
|
128
139
|
// disconnect-handler chain can plumb code/reason through.
|
|
129
140
|
onDisconnect: (_close) => {
|
|
141
|
+
void _close;
|
|
130
142
|
this._connected = false;
|
|
131
143
|
fanout(this.disconnectHandlers, undefined, this.opts.logger);
|
|
132
144
|
},
|
|
@@ -232,7 +244,7 @@ export class MoltZapService {
|
|
|
232
244
|
// impersonates this agent to the server, so other local users on the
|
|
233
245
|
// host must not be able to connect.
|
|
234
246
|
try {
|
|
235
|
-
fs.chmodSync(sockPath,
|
|
247
|
+
fs.chmodSync(sockPath, SOCKET_FILE_MODE);
|
|
236
248
|
}
|
|
237
249
|
catch (err) {
|
|
238
250
|
this.opts.logger?.warn("chmod 0600 on socket failed", err);
|
|
@@ -285,7 +297,13 @@ export class MoltZapService {
|
|
|
285
297
|
return Effect.suspend(() => {
|
|
286
298
|
let req;
|
|
287
299
|
try {
|
|
288
|
-
|
|
300
|
+
const parsed = JSON.parse(line);
|
|
301
|
+
if (!isPlainRecord(parsed)) {
|
|
302
|
+
return Effect.sync(() => conn.write(JSON.stringify({
|
|
303
|
+
error: "request must be a JSON object",
|
|
304
|
+
}) + "\n"));
|
|
305
|
+
}
|
|
306
|
+
req = parsed;
|
|
289
307
|
}
|
|
290
308
|
catch (err) {
|
|
291
309
|
return Effect.sync(() => conn.write(JSON.stringify({
|
|
@@ -297,9 +315,7 @@ export class MoltZapService {
|
|
|
297
315
|
error: "method is required and must be a string",
|
|
298
316
|
}) + "\n"));
|
|
299
317
|
}
|
|
300
|
-
const params = req.params
|
|
301
|
-
? req.params // #ignore-sloppy-code[record-cast]: req.params is untyped JSON from socket
|
|
302
|
-
: {};
|
|
318
|
+
const params = isPlainRecord(req.params) ? req.params : {};
|
|
303
319
|
return this.handleSocketRequestEffect(req.method, params).pipe(Effect.match({
|
|
304
320
|
onSuccess: (result) => {
|
|
305
321
|
conn.write(JSON.stringify({ result }) + "\n");
|
|
@@ -334,13 +350,15 @@ export class MoltZapService {
|
|
|
334
350
|
handleHistoryRequest(params) {
|
|
335
351
|
return Effect.gen(this, function* () {
|
|
336
352
|
if (typeof params.conversationId !== "string" || !params.conversationId) {
|
|
337
|
-
return yield* Effect.fail(new
|
|
353
|
+
return yield* Effect.fail(new ServiceInputError({
|
|
354
|
+
message: "conversationId is required and must be a string",
|
|
355
|
+
}));
|
|
338
356
|
}
|
|
339
357
|
if (params.limit !== undefined && typeof params.limit !== "number") {
|
|
340
|
-
return yield* Effect.fail(new
|
|
358
|
+
return yield* Effect.fail(new ServiceInputError({ message: "limit must be a number" }));
|
|
341
359
|
}
|
|
342
360
|
const convId = params.conversationId;
|
|
343
|
-
const limit = params.limit ??
|
|
361
|
+
const limit = params.limit ?? DEFAULT_HISTORY_LIMIT;
|
|
344
362
|
const sessionKey = params.sessionKey;
|
|
345
363
|
const result = (yield* this.sendRpc(MessagesList.name, {
|
|
346
364
|
conversationId: convId,
|
|
@@ -368,7 +386,7 @@ export class MoltZapService {
|
|
|
368
386
|
}).pipe(Effect.map((res) => res
|
|
369
387
|
.conversation), Effect.catchAll(() => Effect.succeed(undefined)));
|
|
370
388
|
const [, convMeta] = yield* Effect.all([lookupEff, metaEff], {
|
|
371
|
-
concurrency:
|
|
389
|
+
concurrency: HISTORY_LOOKUP_CONCURRENCY,
|
|
372
390
|
});
|
|
373
391
|
// Determine what's "new" using lastRead (not lastNotified).
|
|
374
392
|
// lastNotified is advanced by getContext() (system-reminder).
|
|
@@ -549,8 +567,8 @@ export class MoltZapService {
|
|
|
549
567
|
* committing can re-peek idempotently.
|
|
550
568
|
*/
|
|
551
569
|
peekContextEntries(currentConvId, opts) {
|
|
552
|
-
const maxConvs = opts?.maxConversations ??
|
|
553
|
-
const maxMsgsPerConv = opts?.maxMessagesPerConv ??
|
|
570
|
+
const maxConvs = opts?.maxConversations ?? DEFAULT_MAX_CONTEXT_CONVERSATIONS;
|
|
571
|
+
const maxMsgsPerConv = opts?.maxMessagesPerConv ?? DEFAULT_MAX_MESSAGES_PER_CONVERSATION;
|
|
554
572
|
const { messagesMap, conversationsMap, agentNamesMap, viewMarkers } = this.readCrossConvState(currentConvId);
|
|
555
573
|
// Collect all candidate conversations with their last-message timestamp,
|
|
556
574
|
// then sort by recency before applying `maxConvs`. HashMap iteration
|
|
@@ -573,7 +591,8 @@ export class MoltZapService {
|
|
|
573
591
|
const reportable = newMsgs.slice(-maxMsgsPerConv);
|
|
574
592
|
const last = reportable[reportable.length - 1];
|
|
575
593
|
const senderName = getOr(agentNamesMap, last.senderId, () => last.senderId);
|
|
576
|
-
const minutesAgo = Math.max(0, Math.round((Date.now() - new Date(last.createdAt).getTime()) /
|
|
594
|
+
const minutesAgo = Math.max(0, Math.round((Date.now() - new Date(last.createdAt).getTime()) /
|
|
595
|
+
MILLISECONDS_PER_MINUTE));
|
|
577
596
|
entries.push({
|
|
578
597
|
conversationId: convId,
|
|
579
598
|
conversationName: Option.getOrUndefined(HashMap.get(conversationsMap, convId))?.name,
|
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
|
@@ -5,6 +5,7 @@ import { Effect, Either } from "effect";
|
|
|
5
5
|
import { AppsAuthorizeDispatch, ConversationsGet, ErrorCodes, EventNames, MessagesSend, eventFrame, } from "@moltzap/protocol";
|
|
6
6
|
import { sanitizeForSystemReminder } from "./service.js";
|
|
7
7
|
import { FakeMoltZapService } from "./test-utils/fake-service.js";
|
|
8
|
+
import { AgentsLookupByName, ConversationsCreate, PermissionsGrant, } from "@moltzap/protocol";
|
|
8
9
|
/** Run a service Effect to a Promise for test assertions. */
|
|
9
10
|
const run = (e) => Effect.runPromise(e);
|
|
10
11
|
describe("MoltZapService.sendToAgent", () => {
|
|
@@ -14,7 +15,7 @@ describe("MoltZapService.sendToAgent", () => {
|
|
|
14
15
|
// `setResponse` is typed: the wire name must be a `RpcMethodName` literal
|
|
15
16
|
// and the value must match `RpcMap[M]["result"]`. Both guard against the
|
|
16
17
|
// contract-drift bug (A7) that motivated this fake.
|
|
17
|
-
service.setResponse(
|
|
18
|
+
service.setResponse(AgentsLookupByName.name, {
|
|
18
19
|
agents: [
|
|
19
20
|
{
|
|
20
21
|
id: "agent-alice-id",
|
|
@@ -23,7 +24,7 @@ describe("MoltZapService.sendToAgent", () => {
|
|
|
23
24
|
},
|
|
24
25
|
],
|
|
25
26
|
});
|
|
26
|
-
service.setResponse(
|
|
27
|
+
service.setResponse(ConversationsCreate.name, {
|
|
27
28
|
conversation: {
|
|
28
29
|
id: "conv-alice",
|
|
29
30
|
type: "dm",
|
|
@@ -32,7 +33,7 @@ describe("MoltZapService.sendToAgent", () => {
|
|
|
32
33
|
updatedAt: "2026-04-16T00:00:00Z",
|
|
33
34
|
},
|
|
34
35
|
});
|
|
35
|
-
service.setResponse(
|
|
36
|
+
service.setResponse(MessagesSend.name, {
|
|
36
37
|
message: {
|
|
37
38
|
id: "msg-1",
|
|
38
39
|
conversationId: "conv-alice",
|
|
@@ -45,16 +46,16 @@ describe("MoltZapService.sendToAgent", () => {
|
|
|
45
46
|
it("resolves agent name, creates a DM, and sends the message on first call", async () => {
|
|
46
47
|
await run(service.sendToAgent("alice", "hello"));
|
|
47
48
|
expect(service.calls).toEqual([
|
|
48
|
-
{ method:
|
|
49
|
+
{ method: AgentsLookupByName.name, params: { names: ["alice"] } },
|
|
49
50
|
{
|
|
50
|
-
method:
|
|
51
|
+
method: ConversationsCreate.name,
|
|
51
52
|
params: {
|
|
52
53
|
type: "dm",
|
|
53
54
|
participants: [{ type: "agent", id: "agent-alice-id" }],
|
|
54
55
|
},
|
|
55
56
|
},
|
|
56
57
|
{
|
|
57
|
-
method:
|
|
58
|
+
method: MessagesSend.name,
|
|
58
59
|
params: {
|
|
59
60
|
conversationId: "conv-alice",
|
|
60
61
|
parts: [{ type: "text", text: "hello" }],
|
|
@@ -68,7 +69,7 @@ describe("MoltZapService.sendToAgent", () => {
|
|
|
68
69
|
await run(service.sendToAgent("alice", "second"));
|
|
69
70
|
expect(service.calls).toEqual([
|
|
70
71
|
{
|
|
71
|
-
method:
|
|
72
|
+
method: MessagesSend.name,
|
|
72
73
|
params: {
|
|
73
74
|
conversationId: "conv-alice",
|
|
74
75
|
parts: [{ type: "text", text: "second" }],
|
|
@@ -78,7 +79,7 @@ describe("MoltZapService.sendToAgent", () => {
|
|
|
78
79
|
});
|
|
79
80
|
it("forwards replyTo to messages/send as replyToId", async () => {
|
|
80
81
|
await run(service.sendToAgent("alice", "reply text", { replyTo: "msg-123" }));
|
|
81
|
-
const sendCall = service.calls.find((c) => c.method ===
|
|
82
|
+
const sendCall = service.calls.find((c) => c.method === MessagesSend.name);
|
|
82
83
|
expect(sendCall?.params).toEqual({
|
|
83
84
|
conversationId: "conv-alice",
|
|
84
85
|
parts: [{ type: "text", text: "reply text" }],
|
|
@@ -86,14 +87,14 @@ describe("MoltZapService.sendToAgent", () => {
|
|
|
86
87
|
});
|
|
87
88
|
});
|
|
88
89
|
it("maintains separate cache entries per agent name", async () => {
|
|
89
|
-
service.setResponse(
|
|
90
|
+
service.setResponse(AgentsLookupByName.name, {
|
|
90
91
|
agents: [{ id: "agent-alice-id", name: "alice", status: "active" }],
|
|
91
92
|
});
|
|
92
93
|
await run(service.sendToAgent("alice", "hello alice"));
|
|
93
|
-
service.setResponse(
|
|
94
|
+
service.setResponse(AgentsLookupByName.name, {
|
|
94
95
|
agents: [{ id: "agent-bob-id", name: "bob", status: "active" }],
|
|
95
96
|
});
|
|
96
|
-
service.setResponse(
|
|
97
|
+
service.setResponse(ConversationsCreate.name, {
|
|
97
98
|
conversation: {
|
|
98
99
|
id: "conv-bob",
|
|
99
100
|
type: "dm",
|
|
@@ -106,25 +107,25 @@ describe("MoltZapService.sendToAgent", () => {
|
|
|
106
107
|
service.calls = [];
|
|
107
108
|
await run(service.sendToAgent("alice", "alice again"));
|
|
108
109
|
await run(service.sendToAgent("bob", "bob again"));
|
|
109
|
-
const sendCalls = service.calls.filter((c) => c.method ===
|
|
110
|
+
const sendCalls = service.calls.filter((c) => c.method === MessagesSend.name);
|
|
110
111
|
expect(sendCalls).toHaveLength(2);
|
|
111
112
|
expect(sendCalls[0].params.conversationId).toBe("conv-alice");
|
|
112
113
|
expect(sendCalls[1].params.conversationId).toBe("conv-bob");
|
|
113
114
|
});
|
|
114
115
|
it("throws a clear error when no agent is found for the given name", async () => {
|
|
115
|
-
service.setResponse(
|
|
116
|
+
service.setResponse(AgentsLookupByName.name, { agents: [] });
|
|
116
117
|
await expect(run(service.sendToAgent("nobody", "hi"))).rejects.toThrow(/Agent not found: nobody/);
|
|
117
118
|
});
|
|
118
119
|
it("propagates errors from agents/lookupByName", async () => {
|
|
119
|
-
service.deleteResponse(
|
|
120
|
+
service.deleteResponse(AgentsLookupByName.name);
|
|
120
121
|
await expect(run(service.sendToAgent("alice", "hi"))).rejects.toThrow(/no canned response for agents\/lookupByName/);
|
|
121
122
|
});
|
|
122
123
|
it("propagates errors from conversations/create", async () => {
|
|
123
|
-
service.deleteResponse(
|
|
124
|
+
service.deleteResponse(ConversationsCreate.name);
|
|
124
125
|
await expect(run(service.sendToAgent("alice", "hi"))).rejects.toThrow(/no canned response for conversations\/create/);
|
|
125
126
|
});
|
|
126
127
|
it("propagates errors from messages/send", async () => {
|
|
127
|
-
service.deleteResponse(
|
|
128
|
+
service.deleteResponse(MessagesSend.name);
|
|
128
129
|
await expect(run(service.sendToAgent("alice", "hi"))).rejects.toThrow(/no canned response for messages\/send/);
|
|
129
130
|
});
|
|
130
131
|
});
|
|
@@ -610,7 +611,7 @@ describe("MoltZapService conversation archive lifecycle", () => {
|
|
|
610
611
|
describe("MoltZapService.grantPermission", () => {
|
|
611
612
|
it("sends permissions/grant RPC", async () => {
|
|
612
613
|
const service = new FakeMoltZapService();
|
|
613
|
-
service.setResponse(
|
|
614
|
+
service.setResponse(PermissionsGrant.name, {});
|
|
614
615
|
await run(service.grantPermission({
|
|
615
616
|
sessionId: "sess-1",
|
|
616
617
|
agentId: "agent-2",
|
|
@@ -618,7 +619,7 @@ describe("MoltZapService.grantPermission", () => {
|
|
|
618
619
|
access: ["read"],
|
|
619
620
|
}));
|
|
620
621
|
expect(service.calls).toContainEqual({
|
|
621
|
-
method:
|
|
622
|
+
method: PermissionsGrant.name,
|
|
622
623
|
params: {
|
|
623
624
|
sessionId: "sess-1",
|
|
624
625
|
agentId: "agent-2",
|
|
@@ -645,7 +646,6 @@ describe("MoltZapService.socketPath — agentId sanitization", () => {
|
|
|
645
646
|
const expectedDefaultPath = path.join(os.homedir(), ".moltzap", "service-default.sock");
|
|
646
647
|
/** Write directly into `_ownAgentId` so `socketPath` reads the test value. */
|
|
647
648
|
function setOwnAgentId(service, id) {
|
|
648
|
-
// #ignore-sloppy-code-next-line[as-unknown-as]: Reflect.set target requires `object`; reaching private field of class for test setup
|
|
649
649
|
Reflect.set(service, "_ownAgentId", id);
|
|
650
650
|
}
|
|
651
651
|
it("accepts safe alphanumeric agent ids verbatim", () => {
|
|
@@ -717,9 +717,8 @@ describe("MoltZapService.fanout — message handlers", () => {
|
|
|
717
717
|
const service = new FakeMoltZapService();
|
|
718
718
|
// Monkey-patch the internal logger so fanout can log via it. The opts
|
|
719
719
|
// field is private; accessing via Reflect keeps the test minimal.
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
logger;
|
|
720
|
+
const opts = Reflect.get(service, "opts");
|
|
721
|
+
opts.logger = logger;
|
|
723
722
|
const seen = [];
|
|
724
723
|
service.on("message", () => {
|
|
725
724
|
throw new Error("first handler boom");
|