@moltzap/client 2026.529.0 → 2026.717.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 -65
- package/dist/agent-client.d.ts.map +1 -1
- package/dist/agent-client.js +1 -286
- package/dist/agent-client.js.map +1 -1
- package/dist/app-client.d.ts +3 -0
- package/dist/app-client.d.ts.map +1 -0
- package/dist/app-client.js +2 -0
- package/dist/app-client.js.map +1 -0
- package/dist/auth.d.ts +6 -15
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +12 -16
- package/dist/auth.js.map +1 -1
- package/dist/channel-base/format-cross-conv.d.ts +10 -15
- package/dist/channel-base/format-cross-conv.d.ts.map +1 -1
- package/dist/channel-base/format-cross-conv.js +10 -15
- package/dist/channel-base/format-cross-conv.js.map +1 -1
- package/dist/channel-base/format-group-block.d.ts +8 -10
- package/dist/channel-base/format-group-block.d.ts.map +1 -1
- package/dist/channel-base/format-group-block.js +8 -10
- package/dist/channel-base/format-group-block.js.map +1 -1
- package/dist/channel-base/index.d.ts +3 -62
- package/dist/channel-base/index.d.ts.map +1 -1
- package/dist/channel-base/index.js +2 -65
- package/dist/channel-base/index.js.map +1 -1
- package/dist/channel-base/lease-guard.d.ts +0 -2
- package/dist/channel-base/lease-guard.d.ts.map +1 -1
- package/dist/channel-base/lease-guard.js +0 -2
- package/dist/channel-base/lease-guard.js.map +1 -1
- package/dist/channel-base/lease-store.d.ts +2 -3
- package/dist/channel-base/lease-store.d.ts.map +1 -1
- package/dist/channel-base/lease-store.js +2 -3
- package/dist/channel-base/lease-store.js.map +1 -1
- package/dist/channel-base/lease.d.ts +25 -31
- package/dist/channel-base/lease.d.ts.map +1 -1
- package/dist/channel-base/lease.js +29 -45
- package/dist/channel-base/lease.js.map +1 -1
- package/dist/channel-core-enrichment.d.ts +1 -1
- package/dist/channel-core-enrichment.d.ts.map +1 -1
- package/dist/channel-core-test-support.d.ts +17 -11
- package/dist/channel-core-test-support.d.ts.map +1 -1
- package/dist/channel-core-test-support.js +5 -6
- package/dist/channel-core-test-support.js.map +1 -1
- package/dist/channel-core.d.ts +24 -29
- package/dist/channel-core.d.ts.map +1 -1
- package/dist/channel-core.js +18 -42
- package/dist/channel-core.js.map +1 -1
- package/dist/cli/commands/agents.d.ts +3 -6
- package/dist/cli/commands/agents.d.ts.map +1 -1
- package/dist/cli/commands/agents.js +14 -50
- package/dist/cli/commands/agents.js.map +1 -1
- package/dist/cli/commands/contacts.d.ts +5 -6
- package/dist/cli/commands/contacts.d.ts.map +1 -1
- package/dist/cli/commands/contacts.js +15 -43
- package/dist/cli/commands/contacts.js.map +1 -1
- package/dist/cli/commands/conversations.d.ts +8 -18
- package/dist/cli/commands/conversations.d.ts.map +1 -1
- package/dist/cli/commands/conversations.js +14 -65
- package/dist/cli/commands/conversations.js.map +1 -1
- package/dist/cli/commands/messages.d.ts +13 -35
- package/dist/cli/commands/messages.d.ts.map +1 -1
- package/dist/cli/commands/messages.js +21 -46
- package/dist/cli/commands/messages.js.map +1 -1
- package/dist/cli/commands/register.d.ts +10 -12
- package/dist/cli/commands/register.d.ts.map +1 -1
- package/dist/cli/commands/register.js +47 -133
- package/dist/cli/commands/register.js.map +1 -1
- package/dist/cli/commands/send.d.ts +23 -36
- package/dist/cli/commands/send.d.ts.map +1 -1
- package/dist/cli/commands/send.js +25 -72
- package/dist/cli/commands/send.js.map +1 -1
- package/dist/cli/commands/start.d.ts +10 -124
- package/dist/cli/commands/start.d.ts.map +1 -1
- package/dist/cli/commands/start.js +28 -510
- package/dist/cli/commands/start.js.map +1 -1
- package/dist/cli/commands/status.d.ts +1 -1
- package/dist/cli/commands/status.d.ts.map +1 -1
- package/dist/cli/commands/status.js +8 -9
- package/dist/cli/commands/status.js.map +1 -1
- package/dist/cli/commands/test-transport.d.ts +12 -5
- package/dist/cli/commands/test-transport.d.ts.map +1 -1
- package/dist/cli/commands/test-transport.js +15 -15
- package/dist/cli/commands/test-transport.js.map +1 -1
- package/dist/cli/index.js +13 -40
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/output.d.ts +4 -0
- package/dist/cli/output.d.ts.map +1 -0
- package/dist/cli/output.js +9 -0
- package/dist/cli/output.js.map +1 -0
- package/dist/cli/socket-client.d.ts +7 -14
- package/dist/cli/socket-client.d.ts.map +1 -1
- package/dist/cli/socket-client.js +15 -38
- package/dist/cli/socket-client.js.map +1 -1
- package/dist/cli/transport.d.ts +53 -116
- package/dist/cli/transport.d.ts.map +1 -1
- package/dist/cli/transport.js +45 -295
- package/dist/cli/transport.js.map +1 -1
- package/dist/config.d.ts +24 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +35 -0
- package/dist/config.js.map +1 -0
- package/dist/config.test-utils.d.ts +13 -0
- package/dist/config.test-utils.d.ts.map +1 -0
- package/dist/config.test-utils.js +46 -0
- package/dist/config.test-utils.js.map +1 -0
- package/dist/index.d.ts +3 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -12
- package/dist/index.js.map +1 -1
- package/dist/local-daemon-rpc.d.ts +259 -8
- package/dist/local-daemon-rpc.d.ts.map +1 -1
- package/dist/local-daemon-rpc.js +189 -12
- package/dist/local-daemon-rpc.js.map +1 -1
- package/dist/{runtime/local-history.d.ts → local-history.d.ts} +16 -21
- package/dist/local-history.d.ts.map +1 -0
- package/dist/{runtime/local-history.js → local-history.js} +16 -21
- package/dist/local-history.js.map +1 -0
- package/dist/local-paths.d.ts +0 -2
- package/dist/local-paths.d.ts.map +1 -1
- package/dist/local-paths.js +0 -4
- package/dist/local-paths.js.map +1 -1
- package/dist/local-socket-server.d.ts +22 -0
- package/dist/local-socket-server.d.ts.map +1 -0
- package/dist/{runtime/local-socket-server.js → local-socket-server.js} +4 -9
- package/dist/local-socket-server.js.map +1 -0
- package/dist/message-rendering.d.ts +3 -0
- package/dist/message-rendering.d.ts.map +1 -0
- package/dist/message-rendering.js +7 -0
- package/dist/message-rendering.js.map +1 -0
- package/dist/notification/__tests__/{snapshot-semantics.types-check.d.ts → subscribe-signatures.types-check.d.ts} +1 -1
- package/dist/notification/__tests__/subscribe-signatures.types-check.d.ts.map +1 -0
- package/dist/notification/__tests__/subscribe-signatures.types-check.js +55 -0
- package/dist/notification/__tests__/subscribe-signatures.types-check.js.map +1 -0
- package/dist/notification/errors.d.ts +18 -6
- package/dist/notification/errors.d.ts.map +1 -1
- package/dist/notification/errors.js +13 -15
- package/dist/notification/errors.js.map +1 -1
- package/dist/notification/index.d.ts +5 -0
- package/dist/notification/index.d.ts.map +1 -0
- package/dist/notification/index.js +5 -0
- package/dist/notification/index.js.map +1 -0
- package/dist/notification/stream.d.ts +33 -49
- package/dist/notification/stream.d.ts.map +1 -1
- package/dist/notification/stream.js +33 -76
- package/dist/notification/stream.js.map +1 -1
- package/dist/pagination.d.ts +20 -10
- package/dist/pagination.d.ts.map +1 -1
- package/dist/pagination.js +8 -9
- package/dist/pagination.js.map +1 -1
- package/dist/profile.d.ts +92 -0
- package/dist/profile.d.ts.map +1 -0
- package/dist/profile.js +149 -0
- package/dist/profile.js.map +1 -0
- package/dist/refs.d.ts.map +1 -0
- package/dist/refs.js.map +1 -0
- package/dist/service-archive-purge.d.ts +2 -1
- package/dist/service-archive-purge.d.ts.map +1 -1
- package/dist/service-archive-purge.js.map +1 -1
- package/dist/{runtime/service-helpers.d.ts → service-helpers.d.ts} +5 -11
- package/dist/service-helpers.d.ts.map +1 -0
- package/dist/{runtime/service-helpers.js → service-helpers.js} +2 -9
- package/dist/service-helpers.js.map +1 -0
- package/dist/service-local-daemon.d.ts +22 -0
- package/dist/service-local-daemon.d.ts.map +1 -0
- package/dist/service-local-daemon.js +185 -0
- package/dist/service-local-daemon.js.map +1 -0
- package/dist/service.d.ts +65 -57
- package/dist/service.d.ts.map +1 -1
- package/dist/service.js +205 -156
- package/dist/service.js.map +1 -1
- package/dist/test-utils/channel-service-fixture.d.ts +3 -2
- package/dist/test-utils/channel-service-fixture.d.ts.map +1 -1
- package/dist/test-utils/channel-service-fixture.js.map +1 -1
- package/dist/test-utils/fake-service.d.ts +26 -18
- package/dist/test-utils/fake-service.d.ts.map +1 -1
- package/dist/test-utils/fake-service.js +28 -42
- package/dist/test-utils/fake-service.js.map +1 -1
- package/dist/test-utils/ids.d.ts +3 -1
- package/dist/test-utils/ids.d.ts.map +1 -1
- package/dist/test-utils/ids.js.map +1 -1
- package/dist/test-utils/index.d.ts +9 -2
- package/dist/test-utils/index.d.ts.map +1 -1
- package/dist/test-utils/index.js +8 -1
- package/dist/test-utils/index.js.map +1 -1
- package/dist/test-utils/standalone-provisioning.d.ts +17 -0
- package/dist/test-utils/standalone-provisioning.d.ts.map +1 -0
- package/dist/test-utils/standalone-provisioning.js +14 -0
- package/dist/test-utils/standalone-provisioning.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +39 -17
- package/dist/auth.test.d.ts +0 -2
- package/dist/auth.test.d.ts.map +0 -1
- package/dist/auth.test.js +0 -121
- package/dist/auth.test.js.map +0 -1
- package/dist/channel-core-context.test.d.ts +0 -2
- package/dist/channel-core-context.test.d.ts.map +0 -1
- package/dist/channel-core-context.test.js +0 -342
- package/dist/channel-core-context.test.js.map +0 -1
- package/dist/channel-core-dispatch.test.d.ts +0 -2
- package/dist/channel-core-dispatch.test.d.ts.map +0 -1
- package/dist/channel-core-dispatch.test.js +0 -557
- package/dist/channel-core-dispatch.test.js.map +0 -1
- package/dist/channel-core.test.d.ts +0 -2
- package/dist/channel-core.test.d.ts.map +0 -1
- package/dist/channel-core.test.js +0 -232
- package/dist/channel-core.test.js.map +0 -1
- package/dist/cli/__tests__/cli-multi-agent.int.test.d.ts +0 -2
- package/dist/cli/__tests__/cli-multi-agent.int.test.d.ts.map +0 -1
- package/dist/cli/__tests__/cli-multi-agent.int.test.js +0 -132
- package/dist/cli/__tests__/cli-multi-agent.int.test.js.map +0 -1
- package/dist/cli/commands/invite.d.ts +0 -7
- package/dist/cli/commands/invite.d.ts.map +0 -1
- package/dist/cli/commands/invite.js +0 -11
- package/dist/cli/commands/invite.js.map +0 -1
- package/dist/cli/commands/messages.test.d.ts +0 -2
- package/dist/cli/commands/messages.test.d.ts.map +0 -1
- package/dist/cli/commands/messages.test.js +0 -99
- package/dist/cli/commands/messages.test.js.map +0 -1
- package/dist/cli/commands/ping.d.ts +0 -7
- package/dist/cli/commands/ping.d.ts.map +0 -1
- package/dist/cli/commands/ping.js +0 -37
- package/dist/cli/commands/ping.js.map +0 -1
- package/dist/cli/commands/register.test.d.ts +0 -2
- package/dist/cli/commands/register.test.d.ts.map +0 -1
- package/dist/cli/commands/register.test.js +0 -91
- package/dist/cli/commands/register.test.js.map +0 -1
- package/dist/cli/commands/send.test.d.ts +0 -2
- package/dist/cli/commands/send.test.d.ts.map +0 -1
- package/dist/cli/commands/send.test.js +0 -59
- package/dist/cli/commands/send.test.js.map +0 -1
- package/dist/cli/commands/start.test.d.ts +0 -2
- package/dist/cli/commands/start.test.d.ts.map +0 -1
- package/dist/cli/commands/start.test.js +0 -624
- package/dist/cli/commands/start.test.js.map +0 -1
- package/dist/cli/commands/whoami.d.ts +0 -8
- package/dist/cli/commands/whoami.d.ts.map +0 -1
- package/dist/cli/commands/whoami.js +0 -28
- package/dist/cli/commands/whoami.js.map +0 -1
- package/dist/cli/config.d.ts +0 -66
- package/dist/cli/config.d.ts.map +0 -1
- package/dist/cli/config.js +0 -148
- package/dist/cli/config.js.map +0 -1
- package/dist/cli/config.test.d.ts +0 -2
- package/dist/cli/config.test.d.ts.map +0 -1
- package/dist/cli/config.test.js +0 -89
- package/dist/cli/config.test.js.map +0 -1
- package/dist/cli/http-client.d.ts +0 -17
- package/dist/cli/http-client.d.ts.map +0 -1
- package/dist/cli/http-client.js +0 -38
- package/dist/cli/http-client.js.map +0 -1
- package/dist/cli/profile.d.ts +0 -126
- package/dist/cli/profile.d.ts.map +0 -1
- package/dist/cli/profile.js +0 -231
- package/dist/cli/profile.js.map +0 -1
- package/dist/cli/profile.test.d.ts +0 -2
- package/dist/cli/profile.test.d.ts.map +0 -1
- package/dist/cli/profile.test.js +0 -369
- package/dist/cli/profile.test.js.map +0 -1
- package/dist/cli/transport.test.d.ts +0 -2
- package/dist/cli/transport.test.d.ts.map +0 -1
- package/dist/cli/transport.test.js +0 -312
- package/dist/cli/transport.test.js.map +0 -1
- package/dist/notification/__tests__/filter-equivalence.test.d.ts +0 -2
- package/dist/notification/__tests__/filter-equivalence.test.d.ts.map +0 -1
- package/dist/notification/__tests__/filter-equivalence.test.js +0 -123
- package/dist/notification/__tests__/filter-equivalence.test.js.map +0 -1
- package/dist/notification/__tests__/snapshot-semantics.test.d.ts +0 -2
- package/dist/notification/__tests__/snapshot-semantics.test.d.ts.map +0 -1
- package/dist/notification/__tests__/snapshot-semantics.test.js +0 -261
- package/dist/notification/__tests__/snapshot-semantics.test.js.map +0 -1
- package/dist/notification/__tests__/snapshot-semantics.types-check.d.ts.map +0 -1
- package/dist/notification/__tests__/snapshot-semantics.types-check.js +0 -62
- package/dist/notification/__tests__/snapshot-semantics.types-check.js.map +0 -1
- package/dist/pagination.test.d.ts +0 -2
- package/dist/pagination.test.d.ts.map +0 -1
- package/dist/pagination.test.js +0 -72
- package/dist/pagination.test.js.map +0 -1
- package/dist/runtime/close-info.d.ts +0 -84
- package/dist/runtime/close-info.d.ts.map +0 -1
- package/dist/runtime/close-info.js +0 -102
- package/dist/runtime/close-info.js.map +0 -1
- package/dist/runtime/close-info.test.d.ts +0 -2
- package/dist/runtime/close-info.test.d.ts.map +0 -1
- package/dist/runtime/close-info.test.js +0 -109
- package/dist/runtime/close-info.test.js.map +0 -1
- package/dist/runtime/errors.d.ts +0 -11
- package/dist/runtime/errors.d.ts.map +0 -1
- package/dist/runtime/errors.js +0 -41
- package/dist/runtime/errors.js.map +0 -1
- package/dist/runtime/errors.test.d.ts +0 -2
- package/dist/runtime/errors.test.d.ts.map +0 -1
- package/dist/runtime/errors.test.js +0 -79
- package/dist/runtime/errors.test.js.map +0 -1
- package/dist/runtime/frame.d.ts +0 -8
- package/dist/runtime/frame.d.ts.map +0 -1
- package/dist/runtime/frame.js +0 -12
- package/dist/runtime/frame.js.map +0 -1
- package/dist/runtime/frame.test.d.ts +0 -2
- package/dist/runtime/frame.test.d.ts.map +0 -1
- package/dist/runtime/frame.test.js +0 -59
- package/dist/runtime/frame.test.js.map +0 -1
- package/dist/runtime/index.d.ts +0 -10
- package/dist/runtime/index.d.ts.map +0 -1
- package/dist/runtime/index.js +0 -9
- package/dist/runtime/index.js.map +0 -1
- package/dist/runtime/local-history.d.ts.map +0 -1
- package/dist/runtime/local-history.js.map +0 -1
- package/dist/runtime/local-service-commands.d.ts +0 -26
- package/dist/runtime/local-service-commands.d.ts.map +0 -1
- package/dist/runtime/local-service-commands.js +0 -29
- package/dist/runtime/local-service-commands.js.map +0 -1
- package/dist/runtime/local-socket-server.d.ts +0 -20
- package/dist/runtime/local-socket-server.d.ts.map +0 -1
- package/dist/runtime/local-socket-server.js.map +0 -1
- package/dist/runtime/refs.d.ts.map +0 -1
- package/dist/runtime/refs.js.map +0 -1
- package/dist/runtime/runtime.test.d.ts +0 -2
- package/dist/runtime/runtime.test.d.ts.map +0 -1
- package/dist/runtime/runtime.test.js +0 -37
- package/dist/runtime/runtime.test.js.map +0 -1
- package/dist/runtime/service-helpers.d.ts.map +0 -1
- package/dist/runtime/service-helpers.js.map +0 -1
- package/dist/runtime/service-teardown.d.ts +0 -5
- package/dist/runtime/service-teardown.d.ts.map +0 -1
- package/dist/runtime/service-teardown.js +0 -36
- package/dist/runtime/service-teardown.js.map +0 -1
- package/dist/runtime/service-teardown.test.d.ts +0 -2
- package/dist/runtime/service-teardown.test.d.ts.map +0 -1
- package/dist/runtime/service-teardown.test.js +0 -80
- package/dist/runtime/service-teardown.test.js.map +0 -1
- package/dist/runtime/subscribers.d.ts +0 -152
- package/dist/runtime/subscribers.d.ts.map +0 -1
- package/dist/runtime/subscribers.js +0 -222
- package/dist/runtime/subscribers.js.map +0 -1
- package/dist/service-socket-path.test.d.ts +0 -2
- package/dist/service-socket-path.test.d.ts.map +0 -1
- package/dist/service-socket-path.test.js +0 -87
- package/dist/service-socket-path.test.js.map +0 -1
- package/dist/service.test.d.ts +0 -2
- package/dist/service.test.d.ts.map +0 -1
- package/dist/service.test.js +0 -796
- package/dist/service.test.js.map +0 -1
- package/dist/test/index.d.ts +0 -47
- package/dist/test/index.d.ts.map +0 -1
- package/dist/test/index.js +0 -39
- package/dist/test/index.js.map +0 -1
- package/dist/test-utils/conformance-adapter.d.ts +0 -40
- package/dist/test-utils/conformance-adapter.d.ts.map +0 -1
- package/dist/test-utils/conformance-adapter.js +0 -250
- package/dist/test-utils/conformance-adapter.js.map +0 -1
- package/dist/tm-client-test-support.d.ts +0 -184
- package/dist/tm-client-test-support.d.ts.map +0 -1
- package/dist/tm-client-test-support.js +0 -466
- package/dist/tm-client-test-support.js.map +0 -1
- package/dist/tm-client.d.ts +0 -269
- package/dist/tm-client.d.ts.map +0 -1
- package/dist/tm-client.js +0 -518
- package/dist/tm-client.js.map +0 -1
- package/dist/tm-client.test.d.ts +0 -2
- package/dist/tm-client.test.d.ts.map +0 -1
- package/dist/tm-client.test.js +0 -490
- package/dist/tm-client.test.js.map +0 -1
- /package/dist/{runtime/refs.d.ts → refs.d.ts} +0 -0
- /package/dist/{runtime/refs.js → refs.js} +0 -0
|
@@ -1,10 +1,17 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import type { RpcGroup } from "@effect/rpc";
|
|
2
|
+
import { type Transport as TransportSurface, type TransportError } from "../transport.js";
|
|
3
|
+
import { LocalDaemonRpcs } from "../../local-daemon-rpc.js";
|
|
4
|
+
import type { PayloadForTag, SuccessForTag } from "@moltzap/protocol/rpc";
|
|
5
|
+
type DaemonRpcs = RpcGroup.Rpcs<typeof LocalDaemonRpcs>;
|
|
6
|
+
type DaemonCommand = DaemonRpcs["_tag"];
|
|
7
|
+
export interface TestTransportCall<Tag extends DaemonCommand = DaemonCommand> {
|
|
8
|
+
readonly method: Tag;
|
|
9
|
+
readonly params: PayloadForTag<DaemonRpcs, Tag>;
|
|
5
10
|
}
|
|
6
|
-
export
|
|
11
|
+
export type TestTransportResponder = <Tag extends DaemonCommand>(call: TestTransportCall<Tag>) => SuccessForTag<DaemonRpcs, Tag> | TransportError | Error;
|
|
12
|
+
export declare const makeFakeTransport: (respond: TestTransportResponder) => {
|
|
7
13
|
readonly calls: TestTransportCall[];
|
|
8
14
|
readonly transport: TransportSurface;
|
|
9
15
|
};
|
|
16
|
+
export {};
|
|
10
17
|
//# sourceMappingURL=test-transport.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-transport.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/test-transport.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"test-transport.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/test-transport.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAEL,KAAK,SAAS,IAAI,gBAAgB,EAClC,KAAK,cAAc,EACpB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE1E,KAAK,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,eAAe,CAAC,CAAC;AACxD,KAAK,aAAa,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;AAExC,MAAM,WAAW,iBAAiB,CAAC,GAAG,SAAS,aAAa,GAAG,aAAa;IAC1E,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;CACjD;AAED,MAAM,MAAM,sBAAsB,GAAG,CAAC,GAAG,SAAS,aAAa,EAC7D,IAAI,EAAE,iBAAiB,CAAC,GAAG,CAAC,KACzB,aAAa,CAAC,UAAU,EAAE,GAAG,CAAC,GAAG,cAAc,GAAG,KAAK,CAAC;AAW7D,eAAO,MAAM,iBAAiB,GAC5B,SAAS,sBAAsB,KAC9B;IACD,QAAQ,CAAC,KAAK,EAAE,iBAAiB,EAAE,CAAC;IACpC,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAAC;CA2BtC,CAAC"}
|
|
@@ -1,27 +1,27 @@
|
|
|
1
1
|
import { Effect } from "effect";
|
|
2
|
-
import { JSON_RPC_RESERVED_CODES, UnauthorizedError, } from "@moltzap/protocol";
|
|
3
2
|
import { TransportRpcError, } from "../transport.js";
|
|
3
|
+
import { LocalDaemonRpcs } from "../../local-daemon-rpc.js";
|
|
4
|
+
const isTransportError = (value) => typeof value === "object" &&
|
|
5
|
+
value !== null &&
|
|
6
|
+
"_tag" in value &&
|
|
7
|
+
"message" in value;
|
|
8
|
+
const isError = (value) => value instanceof Error;
|
|
9
|
+
const errorMessage = (error) => error.message;
|
|
4
10
|
export const makeFakeTransport = (respond) => {
|
|
5
11
|
const calls = [];
|
|
6
12
|
const transport = {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
const call = { method: definition.name, params };
|
|
13
|
+
command: (tag, payload) => {
|
|
14
|
+
const call = { method: tag, params: payload };
|
|
10
15
|
calls.push(call);
|
|
11
16
|
const out = respond(call);
|
|
12
|
-
if (out
|
|
13
|
-
return Effect.fail(
|
|
14
|
-
method: definition.name,
|
|
15
|
-
code: UnauthorizedError.code,
|
|
16
|
-
message: out.message,
|
|
17
|
-
}));
|
|
17
|
+
if (isTransportError(out)) {
|
|
18
|
+
return Effect.fail(out);
|
|
18
19
|
}
|
|
19
|
-
if (
|
|
20
|
+
if (isError(out)) {
|
|
20
21
|
return Effect.fail(new TransportRpcError({
|
|
21
|
-
method:
|
|
22
|
-
|
|
23
|
-
message:
|
|
24
|
-
data: out,
|
|
22
|
+
method: tag,
|
|
23
|
+
tag: "Unauthorized",
|
|
24
|
+
message: errorMessage(out),
|
|
25
25
|
}));
|
|
26
26
|
}
|
|
27
27
|
return Effect.succeed(out);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-transport.js","sourceRoot":"","sources":["../../../src/cli/commands/test-transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"test-transport.js","sourceRoot":"","sources":["../../../src/cli/commands/test-transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EACL,iBAAiB,GAGlB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAe5D,MAAM,gBAAgB,GAAG,CAAC,KAAc,EAA2B,EAAE,CACnE,OAAO,KAAK,KAAK,QAAQ;IACzB,KAAK,KAAK,IAAI;IACd,MAAM,IAAI,KAAK;IACf,SAAS,IAAI,KAAK,CAAC;AAErB,MAAM,OAAO,GAAG,CAAC,KAAc,EAAkB,EAAE,CAAC,KAAK,YAAY,KAAK,CAAC;AAC3E,MAAM,YAAY,GAAG,CAAC,KAAY,EAAU,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC;AAE7D,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,OAA+B,EAI/B,EAAE;IACF,MAAM,KAAK,GAAwB,EAAE,CAAC;IACtC,MAAM,SAAS,GAAqB;QAClC,OAAO,EAAE,CACP,GAAQ,EACR,OAAuC,EACwB,EAAE;YACjE,MAAM,IAAI,GAA2B,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;YACtE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACjB,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;YAC1B,IAAI,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC1B,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC1B,CAAC;YACD,IAAI,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;gBACjB,OAAO,MAAM,CAAC,IAAI,CAChB,IAAI,iBAAiB,CAAC;oBACpB,MAAM,EAAE,GAAG;oBACX,GAAG,EAAE,cAAc;oBACnB,OAAO,EAAE,YAAY,CAAC,GAAG,CAAC;iBAC3B,CAAC,CACH,CAAC;YACJ,CAAC;YACD,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC;KACF,CAAC;IACF,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;AAC9B,CAAC,CAAC"}
|
package/dist/cli/index.js
CHANGED
|
@@ -7,35 +7,22 @@ import packageJson from "../../package.json" with { type: "json" };
|
|
|
7
7
|
import { agentsCommand } from "./commands/agents.js";
|
|
8
8
|
import { contactsCommand } from "./commands/contacts.js";
|
|
9
9
|
import { conversationsCommand, historyCommand, } from "./commands/conversations.js";
|
|
10
|
-
import { inviteCommand } from "./commands/invite.js";
|
|
11
10
|
import { messagesCommand } from "./commands/messages.js";
|
|
12
|
-
import { pingCommand } from "./commands/ping.js";
|
|
13
|
-
// v7 (architect plan #706): `presence` CLI command deleted. Presence
|
|
14
|
-
// is server-derived from LeaseRegistry; clients cannot set status
|
|
15
|
-
// manually.
|
|
16
11
|
import { registerCommand } from "./commands/register.js";
|
|
17
12
|
import { sendCommand } from "./commands/send.js";
|
|
18
13
|
import { startCommand } from "./commands/start.js";
|
|
19
14
|
import { statusCommand } from "./commands/status.js";
|
|
20
|
-
import { whoamiCommand } from "./commands/whoami.js";
|
|
21
15
|
import { LoggerLive, minLogLevel } from "./runtime.js";
|
|
22
|
-
import { makeTransportLayer, resolveTransportInputs,
|
|
23
|
-
import { ProfileConfigReadError, ProfileInvalidNameError, ProfileNotFoundError, } from "
|
|
16
|
+
import { makeTransportLayer, resolveTransportInputs, } from "./transport.js";
|
|
17
|
+
import { ProfileConfigReadError, ProfileInvalidNameError, ProfileNotFoundError, ProfileName, } from "../profile.js";
|
|
24
18
|
import { currentArgv } from "./process-argv.js";
|
|
25
19
|
const { version } = packageJson;
|
|
26
|
-
const
|
|
27
|
-
const globalProfileOption = Options.text("profile").pipe(Options.withDescription("Load an existing named profile from ~/.moltzap/config.json for this invocation."), Options.optional);
|
|
20
|
+
const globalProfileOption = Options.text("profile").pipe(Options.withSchema(ProfileName), Options.withDescription("Load an existing named profile from ~/.moltzap/config.json for this invocation."), Options.optional);
|
|
28
21
|
function resolverInputFromConfig(config) {
|
|
29
|
-
const impersonateKey = Option.getOrUndefined(config.as);
|
|
30
22
|
const profileName = Option.getOrUndefined(config.profile);
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
};
|
|
35
|
-
}
|
|
36
|
-
function exitWithCliError(message) {
|
|
37
|
-
console.error(`moltzap: ${message}`);
|
|
38
|
-
process.exit(1);
|
|
23
|
+
if (profileName === undefined)
|
|
24
|
+
return {};
|
|
25
|
+
return { profileName };
|
|
39
26
|
}
|
|
40
27
|
function transportResolutionMessage(err) {
|
|
41
28
|
if (err instanceof ProfileNotFoundError) {
|
|
@@ -48,13 +35,10 @@ function transportResolutionMessage(err) {
|
|
|
48
35
|
const cause = err.cause instanceof Error ? err.cause.message : String(err.cause);
|
|
49
36
|
return `config read error at ${err.path}: ${cause}`;
|
|
50
37
|
}
|
|
51
|
-
if (err instanceof TransportConfigError) {
|
|
52
|
-
return `transport config: ${err.reason}`;
|
|
53
|
-
}
|
|
54
38
|
return err instanceof Error ? err.message : String(err);
|
|
55
39
|
}
|
|
56
40
|
function resolveTransportOptionsOrExit(input) {
|
|
57
|
-
return resolveTransportInputs(input).pipe(Effect.catchAll((err) => Effect.sync(() =>
|
|
41
|
+
return resolveTransportInputs(input).pipe(Effect.catchAll((err) => Effect.logError(`moltzap: ${transportResolutionMessage(err)}`).pipe(Effect.zipRight(Effect.sync(() => process.exit(1))))));
|
|
58
42
|
}
|
|
59
43
|
const transportLayerFromConfig = (config) => Layer.unwrapEffect(resolveTransportOptionsOrExit(resolverInputFromConfig(config)).pipe(Effect.map(makeTransportLayer)));
|
|
60
44
|
/**
|
|
@@ -62,45 +46,34 @@ const transportLayerFromConfig = (config) => Layer.unwrapEffect(resolveTransport
|
|
|
62
46
|
* each handler returns an Effect. The single `NodeRuntime.runMain` below is
|
|
63
47
|
* the ONLY bridge from the Effect graph to Node; no per-command runPromise.
|
|
64
48
|
*
|
|
65
|
-
* Parent options (`--
|
|
49
|
+
* Parent options (`--profile`) are parsed by `@effect/cli` and
|
|
66
50
|
* provided to subcommand handlers via the `Transport` Layer (see
|
|
67
51
|
* `transport.ts`).
|
|
68
52
|
*/
|
|
69
53
|
const moltzapBase = Command.make("moltzap", {
|
|
70
|
-
as: asOption,
|
|
71
54
|
profile: globalProfileOption,
|
|
72
55
|
}).pipe(Command.withDescription("MoltZap CLI — messaging for OpenClaw AI agents.\n" +
|
|
73
56
|
"\n" +
|
|
74
57
|
"Global flags (parsed by @effect/cli before the selected subcommand " +
|
|
75
58
|
"runs):\n" +
|
|
76
|
-
" --as <apiKey> Dial the server as the agent owning the given " +
|
|
77
|
-
"API key, bypassing the local daemon. Useful for multi-agent hosts " +
|
|
78
|
-
"where one operator drives multiple registered agents.\n" +
|
|
79
59
|
" --profile <name> Load the named profile from ~/.moltzap/config.json " +
|
|
80
|
-
"(written by `moltzap register --profile <name>`)
|
|
81
|
-
"
|
|
60
|
+
"(written by `moltzap register --profile <name>`) and send commands " +
|
|
61
|
+
"through that agent's local daemon socket.\n" +
|
|
82
62
|
"\n" +
|
|
83
|
-
"
|
|
84
|
-
"
|
|
85
|
-
"
|
|
86
|
-
"routing it through the transport.\n" +
|
|
63
|
+
"Without --profile, commands use the local daemon transport. `register` " +
|
|
64
|
+
"is the one exception: it consumes `--profile` locally to write a new " +
|
|
65
|
+
"profile instead of routing through the transport.\n" +
|
|
87
66
|
"\n" +
|
|
88
67
|
"See packages/client/src/cli/README.md for an end-to-end multi-agent " +
|
|
89
68
|
"walkthrough."), Command.withSubcommands([
|
|
90
69
|
registerCommand,
|
|
91
|
-
whoamiCommand,
|
|
92
70
|
sendCommand,
|
|
93
71
|
contactsCommand,
|
|
94
72
|
conversationsCommand,
|
|
95
73
|
historyCommand,
|
|
96
|
-
inviteCommand,
|
|
97
|
-
// v7: presenceCommand deleted (architect plan #706).
|
|
98
|
-
pingCommand,
|
|
99
74
|
statusCommand,
|
|
100
75
|
agentsCommand,
|
|
101
|
-
// sbd#177 v2 additions:
|
|
102
76
|
messagesCommand,
|
|
103
|
-
// Spec D2 (#599) — architect stub; impl-staff fills the handler body:
|
|
104
77
|
startCommand,
|
|
105
78
|
]));
|
|
106
79
|
const moltzap = Command.provide(moltzapBase, (config) => transportLayerFromConfig(config));
|
package/dist/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";AACA,uEAAuE;AACvE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AACvD,OAAO,WAAW,MAAM,oBAAoB,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EACL,oBAAoB,EACpB,cAAc,GACf,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../src/cli/output.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAOhC,eAAO,MAAM,OAAO,GAAI,OAAO,OAAO,KAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAC5B,CAAC;AAEhC,eAAO,MAAM,QAAQ,GAAI,OAAO,QAAQ,CAAC,MAAM,CAAC,KAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAIjE,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Effect } from "effect";
|
|
2
|
+
const JSON_INDENT_SPACES = 2;
|
|
3
|
+
const formatJson = (value) => JSON.stringify(value, null, JSON_INDENT_SPACES);
|
|
4
|
+
export const logJson = (value) => Effect.log(formatJson(value));
|
|
5
|
+
export const logLines = (lines) => Effect.forEach(lines, (line) => Effect.log(line), {
|
|
6
|
+
concurrency: 1,
|
|
7
|
+
discard: true,
|
|
8
|
+
});
|
|
9
|
+
//# sourceMappingURL=output.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"output.js","sourceRoot":"","sources":["../../src/cli/output.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,MAAM,kBAAkB,GAAG,CAAC,CAAC;AAE7B,MAAM,UAAU,GAAG,CAAC,KAAc,EAAU,EAAE,CAC5C,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,kBAAkB,CAAC,CAAC;AAElD,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,KAAc,EAAuB,EAAE,CAC7D,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;AAEhC,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,KAAuB,EAAuB,EAAE,CACvE,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;IAChD,WAAW,EAAE,CAAC;IACd,OAAO,EAAE,IAAI;CACd,CAAC,CAAC"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
|
+
import type { RpcGroup } from "@effect/rpc";
|
|
1
2
|
import { Effect } from "effect";
|
|
2
|
-
import {
|
|
3
|
-
import { type
|
|
4
|
-
|
|
5
|
-
export type
|
|
3
|
+
import { type LocalDaemonError, LocalDaemonCommands, LocalDaemonRpcs } from "../local-daemon-rpc.js";
|
|
4
|
+
import { type PayloadForTag, type SuccessForTag } from "@moltzap/protocol/rpc";
|
|
5
|
+
type DaemonRpcs = RpcGroup.Rpcs<typeof LocalDaemonRpcs>;
|
|
6
|
+
export type DaemonCommand = DaemonRpcs["_tag"];
|
|
7
|
+
export { LocalDaemonCommands };
|
|
6
8
|
declare const SocketRequestError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
7
9
|
readonly _tag: "SocketRequestError";
|
|
8
10
|
} & Readonly<A>;
|
|
@@ -12,14 +14,5 @@ export declare class SocketRequestError extends SocketRequestError_base<{
|
|
|
12
14
|
readonly cause?: unknown;
|
|
13
15
|
}> {
|
|
14
16
|
}
|
|
15
|
-
|
|
16
|
-
* Send a request to the MoltZapService via the local daemon RPC socket. Typed failures:
|
|
17
|
-
* - "service not running" when the socket path doesn't exist / ECONNREFUSED
|
|
18
|
-
* - "timeout" when the 10s deadline elapses
|
|
19
|
-
* - remote validation/RPC errors from the daemon
|
|
20
|
-
* - protocol errors from `@effect/rpc`
|
|
21
|
-
*/
|
|
22
|
-
export declare const request: <D extends RpcDefinition<string, any, any>>(definition: D, params: ParamsOf<D>, socketPath?: string) => Effect.Effect<ResultOf<D>, SocketRequestError>;
|
|
23
|
-
export declare const requestLocalService: <C extends LocalServiceCommand>(command: C, params?: LocalServiceParams<C>, socketPath?: string) => Effect.Effect<LocalServiceResults[C], SocketRequestError>;
|
|
24
|
-
export declare const sendSocketRequest: (method: string, params: unknown, socketPath?: string) => Effect.Effect<unknown, SocketRequestError>;
|
|
17
|
+
export declare const requestDaemonCommand: <Tag extends DaemonCommand>(command: Tag, payload: PayloadForTag<DaemonRpcs, Tag>, socketPath?: string) => Effect.Effect<SuccessForTag<DaemonRpcs, Tag>, SocketRequestError | LocalDaemonError>;
|
|
25
18
|
//# sourceMappingURL=socket-client.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"socket-client.d.ts","sourceRoot":"","sources":["../../src/cli/socket-client.ts"],"names":[],"mappings":"AAGA,OAAO,EAAQ,MAAM,
|
|
1
|
+
{"version":3,"file":"socket-client.d.ts","sourceRoot":"","sources":["../../src/cli/socket-client.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAQ,MAAM,EAAS,MAAM,QAAQ,CAAC;AAC7C,OAAO,EAEL,KAAK,gBAAgB,EACrB,mBAAmB,EACnB,eAAe,EAChB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAGL,KAAK,aAAa,EAClB,KAAK,aAAa,EACnB,MAAM,uBAAuB,CAAC;AAE/B,KAAK,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,eAAe,CAAC,CAAC;AACxD,MAAM,MAAM,aAAa,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;AAQ/C,OAAO,EAAE,mBAAmB,EAAE,CAAC;;;;AAE/B,qBAAa,kBAAmB,SAAQ,wBAAuC;IAC7E,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;CAAG;AA8DL,eAAO,MAAM,oBAAoB,GAAI,GAAG,SAAS,aAAa,EAC5D,SAAS,GAAG,EACZ,SAAS,aAAa,CAAC,UAAU,EAAE,GAAG,CAAC,EACvC,aAAa,MAAM,KAClB,MAAM,CAAC,MAAM,CACd,aAAa,CAAC,UAAU,EAAE,GAAG,CAAC,EAC9B,kBAAkB,GAAG,gBAAgB,CA2BU,CAAC"}
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
import * as Socket from "@effect/platform/Socket";
|
|
2
2
|
import * as NodeSocket from "@effect/platform-node/NodeSocket";
|
|
3
3
|
import { RpcClient, RpcClientError, RpcSerialization } from "@effect/rpc";
|
|
4
|
-
import { Data, Effect, Layer
|
|
5
|
-
import {
|
|
4
|
+
import { Data, Effect, Layer } from "effect";
|
|
5
|
+
import { isLocalDaemonError, LocalDaemonCommands, LocalDaemonRpcs, } from "../local-daemon-rpc.js";
|
|
6
6
|
import { MoltZapService } from "../service.js";
|
|
7
|
-
import {
|
|
8
|
-
import {} from "@moltzap/protocol";
|
|
7
|
+
import { dispatchCall, } from "@moltzap/protocol/rpc";
|
|
9
8
|
const SOCKET_REQUEST_TIMEOUT_MS = 10_000;
|
|
10
|
-
export {
|
|
9
|
+
export { LocalDaemonCommands };
|
|
11
10
|
export class SocketRequestError extends Data.TaggedError("SocketRequestError") {
|
|
12
11
|
}
|
|
13
12
|
const socketRequestError = (method, message, cause) => new SocketRequestError({ method, message, cause });
|
|
@@ -26,50 +25,28 @@ const fromSocketError = (method, err) => {
|
|
|
26
25
|
}
|
|
27
26
|
return socketRequestError(method, err.message, err);
|
|
28
27
|
};
|
|
29
|
-
const fromRpcClientError = (method, err) => socketRequestError(method, err.message, err);
|
|
30
|
-
const
|
|
28
|
+
const fromRpcClientError = (method, err) => socketRequestError(method, err instanceof Error ? err.message : String(err), err);
|
|
29
|
+
const fromDaemonCommandError = (method, err) => {
|
|
31
30
|
if (err instanceof SocketRequestError)
|
|
32
31
|
return err;
|
|
33
|
-
if (
|
|
34
|
-
return
|
|
32
|
+
if (isLocalDaemonError(err))
|
|
33
|
+
return err;
|
|
35
34
|
return fromRpcClientError(method, err);
|
|
36
35
|
};
|
|
37
|
-
const
|
|
38
|
-
|
|
39
|
-
* Send a request to the MoltZapService via the local daemon RPC socket. Typed failures:
|
|
40
|
-
* - "service not running" when the socket path doesn't exist / ECONNREFUSED
|
|
41
|
-
* - "timeout" when the 10s deadline elapses
|
|
42
|
-
* - remote validation/RPC errors from the daemon
|
|
43
|
-
* - protocol errors from `@effect/rpc`
|
|
44
|
-
*/
|
|
45
|
-
export const request = (definition, params, socketPath) => Effect.suspend(() => {
|
|
46
|
-
const resolvedSocketPath = socketPath ?? MoltZapService.SOCKET_PATH;
|
|
47
|
-
return sendSocketRequest(definition.name, params, resolvedSocketPath).pipe(Effect.flatMap((result) => definition.validateResult(result)
|
|
48
|
-
? Effect.succeed(result)
|
|
49
|
-
: Effect.fail(socketRequestError(definition.name, `Malformed result for method: ${definition.name}`, result))));
|
|
50
|
-
});
|
|
51
|
-
export const requestLocalService = (command, params, socketPath) => Effect.suspend(() => {
|
|
52
|
-
const resolvedParams = params ?? {};
|
|
53
|
-
const resolvedSocketPath = socketPath ?? MoltZapService.SOCKET_PATH;
|
|
54
|
-
return sendSocketRequest(command, resolvedParams, resolvedSocketPath).pipe(Effect.flatMap((result) => decodeLocalServiceResult(command, result).pipe(Effect.mapError((err) => fromParseError(command, err)))));
|
|
55
|
-
});
|
|
56
|
-
export const sendSocketRequest = (method, params, socketPath) => Effect.scoped(Effect.gen(function* () {
|
|
36
|
+
const callDaemonClient = (client, command, payload) => dispatchCall(client, command, payload);
|
|
37
|
+
export const requestDaemonCommand = (command, payload, socketPath) => Effect.scoped(Effect.gen(function* () {
|
|
57
38
|
const sockPath = socketPath ?? MoltZapService.SOCKET_PATH;
|
|
58
39
|
const socket = yield* NodeSocket.makeNet({
|
|
59
40
|
path: sockPath,
|
|
60
41
|
openTimeout: `${SOCKET_REQUEST_TIMEOUT_MS} millis`,
|
|
61
|
-
}).pipe(Effect.mapError((err) => fromSocketError(
|
|
62
|
-
const localParams = yield* normalizeLocalDaemonParams(params);
|
|
42
|
+
}).pipe(Effect.mapError((err) => fromSocketError(command, err)));
|
|
63
43
|
const protocolLayer = RpcClient.layerProtocolSocket().pipe(Layer.provide(RpcSerialization.layerNdjson), Layer.provide(Layer.succeed(Socket.Socket, socket)));
|
|
64
44
|
return yield* Effect.gen(function* () {
|
|
65
45
|
const client = yield* RpcClient.make(LocalDaemonRpcs);
|
|
66
|
-
return yield* client
|
|
67
|
-
method,
|
|
68
|
-
params: localParams,
|
|
69
|
-
});
|
|
46
|
+
return yield* callDaemonClient(client, command, payload);
|
|
70
47
|
}).pipe(Effect.provide(protocolLayer), Effect.timeoutFail({
|
|
71
48
|
duration: `${SOCKET_REQUEST_TIMEOUT_MS} millis`,
|
|
72
|
-
onTimeout: () => socketRequestError(
|
|
73
|
-
}), Effect.mapError((err) =>
|
|
74
|
-
})).pipe(Effect.withSpan("
|
|
49
|
+
onTimeout: () => socketRequestError(command, "Socket request timed out"),
|
|
50
|
+
}), Effect.mapError((err) => fromDaemonCommandError(command, err)));
|
|
51
|
+
})).pipe(Effect.withSpan("requestDaemonCommand"));
|
|
75
52
|
//# sourceMappingURL=socket-client.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"socket-client.js","sourceRoot":"","sources":["../../src/cli/socket-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,yBAAyB,CAAC;AAClD,OAAO,KAAK,UAAU,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"socket-client.js","sourceRoot":"","sources":["../../src/cli/socket-client.ts"],"names":[],"mappings":"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"}
|