@procedures/peer 0.23.0 → 0.24.1

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.
@@ -251,6 +251,7 @@ export interface ProcedureHost {
251
251
  */
252
252
  export declare function createProcedureHost(options?: ProcedureHostOptions): ProcedureHost;
253
253
  export { httpFace, wsFace } from "./faces.js";
254
+ export { localFace, type LocalFace } from "./local-face.js";
254
255
  export type { HostFace, HostFaceContext, HostFaceEndpoint, HostFaceFactory, HostFaceUpgrade } from "./faces.js";
255
256
  export { callOperations, faceHandler, httpTracker, operationOfCall } from "./tracking.js";
256
257
  export type { CallDetail, CallOperation, FaceHandler, FaceHandlerOptions, HttpTracker, HttpTrackerOptions } from "./tracking.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/host/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/host/index.ts"],"names":[],"mappings":"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"}
@@ -379,5 +379,6 @@ function outgoingAnswers() {
379
379
  };
380
380
  }
381
381
  export { httpFace, wsFace } from "./faces.js";
382
+ export { localFace } from "./local-face.js";
382
383
  export { callOperations, faceHandler, httpTracker, operationOfCall } from "./tracking.js";
383
384
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/host/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/host/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * The local face of the procedures host (CLI-26): the calls of this process, through the request
3
+ * tracking of the service.
4
+ *
5
+ * `localFace()` gives a face factory for the option `faces` of `createProcedureHost()`, and a
6
+ * transport of `@procedures/client` for a `Client`. Each call of the client goes to the handler of
7
+ * the face, as a call of the HTTP face does. Thus the service admits the call, counts it, drains
8
+ * it and cuts it. The cold mode of `mark` calls its host in this process with this face.
9
+ *
10
+ * - Each call has `LOCAL_CREDENTIALS`: it is a call of this application (CLI-1). A token of the
11
+ * policy does not apply to it.
12
+ * - The signal of the call goes with the request. The cooperative abort of the drain also aborts the call.
13
+ * - When the signal aborts, the caller stops its wait at once, as over HTTP. The call gets the
14
+ * abort, and the drain of the service waits for its end.
15
+ * - A value is one response item. A stream gives one item for each value. An error ends the
16
+ * stream with an error item, with the code, the flag `retryable` and the reason of the error.
17
+ * - The face mounts nothing on a listener, and it has no stop parts. Before `createProcedureHost()`
18
+ * uses the factory, each call gets `UNAVAILABLE`.
19
+ */
20
+ import { type Transport } from "@procedures/client";
21
+ import type { HostFaceFactory } from "./faces.js";
22
+ /** The local face: the factory for the host, and the transport for a `Client` of this process. */
23
+ export interface LocalFace {
24
+ /** The face factory. Give it to the option `faces` of `createProcedureHost()`, for example as `local`. */
25
+ readonly face: HostFaceFactory;
26
+ /** The transport of a `Client`: each call goes to the host through the request tracking of the face. */
27
+ readonly transport: Transport;
28
+ }
29
+ /**
30
+ * This function gives the local face of a host (CLI-26). One face serves one host.
31
+ *
32
+ * @example
33
+ * ```typescript
34
+ * const local = localFace();
35
+ * const host = createProcedureHost({ registry, faces: { local: local.face } });
36
+ * const life = await host.declare(service("mark").profile(ephemeral)).run();
37
+ * const client = new Client({ transport: local.transport });
38
+ * for await (const item of client.stream({ service: "git", operation: "status" }, {}, { signal })) print(item);
39
+ * ```
40
+ */
41
+ export declare function localFace(): LocalFace;
42
+ //# sourceMappingURL=local-face.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local-face.d.ts","sourceRoot":"","sources":["../../src/host/local-face.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAOL,KAAK,SAAS,EACf,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAGlD,kGAAkG;AAClG,MAAM,WAAW,SAAS;IACxB,0GAA0G;IAC1G,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAC/B,wGAAwG;IACxG,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;CAC/B;AA6FD;;;;;;;;;;;GAWG;AACH,wBAAgB,SAAS,IAAI,SAAS,CAuCrC"}
@@ -0,0 +1,160 @@
1
+ /**
2
+ * The local face of the procedures host (CLI-26): the calls of this process, through the request
3
+ * tracking of the service.
4
+ *
5
+ * `localFace()` gives a face factory for the option `faces` of `createProcedureHost()`, and a
6
+ * transport of `@procedures/client` for a `Client`. Each call of the client goes to the handler of
7
+ * the face, as a call of the HTTP face does. Thus the service admits the call, counts it, drains
8
+ * it and cuts it. The cold mode of `mark` calls its host in this process with this face.
9
+ *
10
+ * - Each call has `LOCAL_CREDENTIALS`: it is a call of this application (CLI-1). A token of the
11
+ * policy does not apply to it.
12
+ * - The signal of the call goes with the request. The cooperative abort of the drain also aborts the call.
13
+ * - When the signal aborts, the caller stops its wait at once, as over HTTP. The call gets the
14
+ * abort, and the drain of the service waits for its end.
15
+ * - A value is one response item. A stream gives one item for each value. An error ends the
16
+ * stream with an error item, with the code, the flag `retryable` and the reason of the error.
17
+ * - The face mounts nothing on a listener, and it has no stop parts. Before `createProcedureHost()`
18
+ * uses the factory, each call gets `UNAVAILABLE`.
19
+ */
20
+ import { LOCAL_CREDENTIALS, } from "@procedures/client";
21
+ /** The value of `untilAborted` when the signal aborts first. */
22
+ const ABORTED = Symbol("aborted");
23
+ /** This function gives the value of a promise, or `ABORTED` when the signal aborts first. The promise continues. */
24
+ function untilAborted(promise, signal) {
25
+ if (!signal)
26
+ return promise;
27
+ if (signal.aborted) {
28
+ promise.catch(() => undefined);
29
+ return Promise.resolve(ABORTED);
30
+ }
31
+ return new Promise((resolve, reject) => {
32
+ const onAbort = () => {
33
+ promise.catch(() => undefined);
34
+ resolve(ABORTED);
35
+ };
36
+ signal.addEventListener("abort", onAbort, { once: true });
37
+ promise.then((value) => {
38
+ signal.removeEventListener("abort", onAbort);
39
+ resolve(value);
40
+ }, (error) => {
41
+ signal.removeEventListener("abort", onAbort);
42
+ reject(error);
43
+ });
44
+ });
45
+ }
46
+ /** This function gives a response item of a status. */
47
+ function item(id, status, payload, metadata = {}) {
48
+ return { id, status, payload: payload, metadata };
49
+ }
50
+ /** This function gives the error item of an abort of the caller: the item of the local transport. */
51
+ function abortedItem(id) {
52
+ return item(id, { type: "error", code: "ABORTED", message: "Request was aborted", retryable: false }, null);
53
+ }
54
+ /** This function gives the error item of an error that ends a stream: its code, its flag `retryable` and its reason. */
55
+ function errorItem(id, error) {
56
+ const fields = (error ?? {});
57
+ const code = typeof fields.code === "string" ? fields.code : "HANDLER_ERROR";
58
+ const message = error instanceof Error ? error.message : String(error);
59
+ const retryable = typeof fields.retryable === "boolean" ? fields.retryable : false;
60
+ return item(id, { type: "error", code, message, retryable }, null, typeof fields.reason === "string" ? { reason: fields.reason } : {});
61
+ }
62
+ /** This function reads a stream that nobody reads to its end, so its request ends. The call has its abort, thus it ends soon. */
63
+ async function discard(response) {
64
+ const values = response.stream?.[Symbol.asyncIterator]();
65
+ if (!values)
66
+ return;
67
+ try {
68
+ while (!(await values.next()).done) {
69
+ // Each value goes nowhere
70
+ }
71
+ }
72
+ catch {
73
+ // The end of the call after its abort
74
+ }
75
+ }
76
+ /** The response items of a response of the face: one item for a value or an error, and one item for each value of a stream. */
77
+ async function* itemsOf(id, response, signal) {
78
+ if (response.status.type === "error" || response.stream === undefined) {
79
+ yield item(id, response.status, response.status.type === "error" ? null : response.payload, response.metadata ?? {});
80
+ return;
81
+ }
82
+ const values = response.stream[Symbol.asyncIterator]();
83
+ let ended = false;
84
+ try {
85
+ for (;;) {
86
+ const next = await untilAborted(values.next(), signal);
87
+ if (next === ABORTED) {
88
+ yield abortedItem(id);
89
+ return;
90
+ }
91
+ if (next.done) {
92
+ ended = true;
93
+ return;
94
+ }
95
+ yield item(id, { type: "success", code: 200 }, next.value);
96
+ }
97
+ }
98
+ catch (error) {
99
+ ended = true;
100
+ yield errorItem(id, error);
101
+ }
102
+ finally {
103
+ // A reader that stops early stops the call: the work gets its abort
104
+ if (!ended)
105
+ void values.return?.(undefined)?.catch(() => undefined);
106
+ }
107
+ }
108
+ /**
109
+ * This function gives the local face of a host (CLI-26). One face serves one host.
110
+ *
111
+ * @example
112
+ * ```typescript
113
+ * const local = localFace();
114
+ * const host = createProcedureHost({ registry, faces: { local: local.face } });
115
+ * const life = await host.declare(service("mark").profile(ephemeral)).run();
116
+ * const client = new Client({ transport: local.transport });
117
+ * for await (const item of client.stream({ service: "git", operation: "status" }, {}, { signal })) print(item);
118
+ * ```
119
+ */
120
+ export function localFace() {
121
+ let handler;
122
+ const face = (context) => {
123
+ handler = context.handler;
124
+ return {};
125
+ };
126
+ const transport = {
127
+ name: "local-face",
128
+ async *send(message) {
129
+ const target = handler;
130
+ if (!target) {
131
+ yield item(message.id, { type: "error", code: "UNAVAILABLE", message: "The local face has no host: give its factory to createProcedureHost()", retryable: false }, null);
132
+ return;
133
+ }
134
+ if (message.signal?.aborted) {
135
+ yield abortedItem(message.id);
136
+ return;
137
+ }
138
+ const request = {
139
+ id: message.id,
140
+ method: message.method,
141
+ payload: message.payload,
142
+ metadata: { ...message.metadata },
143
+ credentials: LOCAL_CREDENTIALS,
144
+ ...(message.signal ? { signal: message.signal } : {}),
145
+ };
146
+ const pending = target.handle(request);
147
+ const response = await untilAborted(pending, message.signal);
148
+ if (response === ABORTED) {
149
+ // A stream that comes after the abort still holds its request: it is read to its end
150
+ void pending.then(discard, () => undefined);
151
+ yield abortedItem(message.id);
152
+ return;
153
+ }
154
+ yield* itemsOf(message.id, response, message.signal);
155
+ },
156
+ close: async () => undefined,
157
+ };
158
+ return { face, transport };
159
+ }
160
+ //# sourceMappingURL=local-face.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local-face.js","sourceRoot":"","sources":["../../src/host/local-face.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -5,8 +5,8 @@
5
5
  * Exposes procedures and generates manifests.
6
6
  */
7
7
  export type { TransportType, TransportConfig, HttpTransportConfig, WebSocketTransportConfig, LocalTransportConfig, ServerCreateInput, ServerCreateOutput, ServerConnectInput, ServerConnectOutput, ServerDisconnectInput, ServerDisconnectOutput, ManifestGenerateInput, ManifestGenerateOutput, ProcedureInfo, PeerConnection, ProcedureAnnounceMessage, ProcedureUpdateMessage, } from "./types.js";
8
- export { createProcedureHost, httpFace, wsFace, LOCAL_LISTENER_KNOBS, HOST_PROBE_PREFIX, callOperations, faceHandler, httpTracker, operationOfCall, } from "./host/index.js";
9
- export type { ProcedureHost, ProcedureHostOptions, ProcedureHostFaces, HostListener, HostProbes, HostCollection, HostServerOptions, HostPart, HostDependency, HostCheck, HostPattern, HostController, HostControllerOptions, HostEndpoint, HostInfo, HostKnobs, HostFace, HostFaceContext, HostFaceEndpoint, HostFaceFactory, HostFaceUpgrade, CallDetail, CallOperation, FaceHandler, FaceHandlerOptions, HttpTracker, HttpTrackerOptions, } from "./host/index.js";
8
+ export { createProcedureHost, httpFace, wsFace, localFace, LOCAL_LISTENER_KNOBS, HOST_PROBE_PREFIX, callOperations, faceHandler, httpTracker, operationOfCall, } from "./host/index.js";
9
+ export type { ProcedureHost, ProcedureHostOptions, ProcedureHostFaces, HostListener, HostProbes, HostCollection, HostServerOptions, HostPart, HostDependency, HostCheck, HostPattern, HostController, HostControllerOptions, HostEndpoint, HostInfo, HostKnobs, HostFace, HostFaceContext, HostFaceEndpoint, HostFaceFactory, HostFaceUpgrade, LocalFace, CallDetail, CallOperation, FaceHandler, FaceHandlerOptions, HttpTracker, HttpTrackerOptions, } from "./host/index.js";
10
10
  export { createPeer, peerHostOptions, PEER_PROFILE, type Peer, type PeerOptions, type PeerEndpoint } from "./peer/index.js";
11
11
  export { exposeRule } from "./expose.js";
12
12
  export { serverCreateProcedure, getPeer, getActivePeerIds, serverConnectProcedure, serverDisconnectProcedure, manifestGenerateProcedure, } from "./procedures/index.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,YAAY,EACV,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,wBAAwB,EACxB,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,aAAa,EACb,cAAc,EACd,wBAAwB,EACxB,sBAAsB,GACvB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,mBAAmB,EACnB,QAAQ,EACR,MAAM,EACN,oBAAoB,EACpB,iBAAiB,EACjB,cAAc,EACd,WAAW,EACX,WAAW,EACX,eAAe,GAChB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,aAAa,EACb,oBAAoB,EACpB,kBAAkB,EAClB,YAAY,EACZ,UAAU,EACV,cAAc,EACd,iBAAiB,EACjB,QAAQ,EACR,cAAc,EACd,SAAS,EACT,WAAW,EACX,cAAc,EACd,qBAAqB,EACrB,YAAY,EACZ,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,UAAU,EACV,aAAa,EACb,WAAW,EACX,kBAAkB,EAClB,WAAW,EACX,kBAAkB,GACnB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,YAAY,EAAE,KAAK,IAAI,EAAE,KAAK,WAAW,EAAE,KAAK,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC5H,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC,OAAO,EACL,qBAAqB,EACrB,OAAO,EACP,gBAAgB,EAChB,sBAAsB,EACtB,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,kBAAkB,EAClB,YAAY,EACZ,kBAAkB,EAClB,KAAK,iBAAiB,GACvB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,OAAO,EACP,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,KAAK,UAAU,EACf,KAAK,cAAc,GACpB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,0BAA0B,EAC1B,iBAAiB,EACjB,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,UAAU,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,YAAY,EACV,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,wBAAwB,EACxB,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,aAAa,EACb,cAAc,EACd,wBAAwB,EACxB,sBAAsB,GACvB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,mBAAmB,EACnB,QAAQ,EACR,MAAM,EACN,SAAS,EACT,oBAAoB,EACpB,iBAAiB,EACjB,cAAc,EACd,WAAW,EACX,WAAW,EACX,eAAe,GAChB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,aAAa,EACb,oBAAoB,EACpB,kBAAkB,EAClB,YAAY,EACZ,UAAU,EACV,cAAc,EACd,iBAAiB,EACjB,QAAQ,EACR,cAAc,EACd,SAAS,EACT,WAAW,EACX,cAAc,EACd,qBAAqB,EACrB,YAAY,EACZ,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,SAAS,EACT,UAAU,EACV,aAAa,EACb,WAAW,EACX,kBAAkB,EAClB,WAAW,EACX,kBAAkB,GACnB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,YAAY,EAAE,KAAK,IAAI,EAAE,KAAK,WAAW,EAAE,KAAK,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC5H,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC,OAAO,EACL,qBAAqB,EACrB,OAAO,EACP,gBAAgB,EAChB,sBAAsB,EACtB,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,kBAAkB,EAClB,YAAY,EACZ,kBAAkB,EAClB,KAAK,iBAAiB,GACvB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,OAAO,EACP,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,KAAK,UAAU,EACf,KAAK,cAAc,GACpB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,0BAA0B,EAC1B,iBAAiB,EACjB,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,UAAU,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC"}
package/dist/index.js CHANGED
@@ -5,7 +5,7 @@
5
5
  * Exposes procedures and generates manifests.
6
6
  */
7
7
  // The procedures host (CLI-7): the parts of a service, and its faces
8
- export { createProcedureHost, httpFace, wsFace, LOCAL_LISTENER_KNOBS, HOST_PROBE_PREFIX, callOperations, faceHandler, httpTracker, operationOfCall, } from "./host/index.js";
8
+ export { createProcedureHost, httpFace, wsFace, localFace, LOCAL_LISTENER_KNOBS, HOST_PROBE_PREFIX, callOperations, faceHandler, httpTracker, operationOfCall, } from "./host/index.js";
9
9
  // Peer: a procedures host with a service of its own, for a process that has no service
10
10
  export { createPeer, peerHostOptions, PEER_PROFILE } from "./peer/index.js";
11
11
  export { exposeRule } from "./expose.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAuBH,qEAAqE;AACrE,OAAO,EACL,mBAAmB,EACnB,QAAQ,EACR,MAAM,EACN,oBAAoB,EACpB,iBAAiB,EACjB,cAAc,EACd,WAAW,EACX,WAAW,EACX,eAAe,GAChB,MAAM,iBAAiB,CAAC;AA+BzB,uFAAuF;AACvF,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,YAAY,EAAkD,MAAM,iBAAiB,CAAC;AAC5H,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,aAAa;AACb,OAAO,EACL,qBAAqB,EACrB,OAAO,EACP,gBAAgB,EAChB,sBAAsB,EACtB,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,uBAAuB,CAAC;AAE/B,sBAAsB;AACtB,OAAO,EACL,kBAAkB,EAClB,YAAY,EACZ,kBAAkB,GAEnB,MAAM,qBAAqB,CAAC;AAE7B,aAAa;AACb,OAAO,EACL,OAAO,EACP,UAAU,EACV,aAAa,EACb,gBAAgB,GAGjB,MAAM,uBAAuB,CAAC;AAE/B,YAAY;AACZ,OAAO,EACL,0BAA0B,EAC1B,iBAAiB,EACjB,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAE9B,eAAe;AACf,OAAO,EAAE,UAAU,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAuBH,qEAAqE;AACrE,OAAO,EACL,mBAAmB,EACnB,QAAQ,EACR,MAAM,EACN,SAAS,EACT,oBAAoB,EACpB,iBAAiB,EACjB,cAAc,EACd,WAAW,EACX,WAAW,EACX,eAAe,GAChB,MAAM,iBAAiB,CAAC;AAgCzB,uFAAuF;AACvF,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,YAAY,EAAkD,MAAM,iBAAiB,CAAC;AAC5H,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,aAAa;AACb,OAAO,EACL,qBAAqB,EACrB,OAAO,EACP,gBAAgB,EAChB,sBAAsB,EACtB,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,uBAAuB,CAAC;AAE/B,sBAAsB;AACtB,OAAO,EACL,kBAAkB,EAClB,YAAY,EACZ,kBAAkB,GAEnB,MAAM,qBAAqB,CAAC;AAE7B,aAAa;AACb,OAAO,EACL,OAAO,EACP,UAAU,EACV,aAAa,EACb,gBAAgB,GAGjB,MAAM,uBAAuB,CAAC;AAE/B,YAAY;AACZ,OAAO,EACL,0BAA0B,EAC1B,iBAAiB,EACjB,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAE9B,eAAe;AACf,OAAO,EAAE,UAAU,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/package",
3
3
  "name": "@procedures/peer",
4
- "version": "0.23.0",
4
+ "version": "0.24.1",
5
5
  "description": "Serve procedures: createProcedureHost() gives the parts of a service, with HTTP, WebSocket and MCP faces on one listener. Also peers, server.create, server.call and server.connections, and manifests.",
6
6
  "keywords": [
7
7
  "server",
@@ -67,9 +67,9 @@
67
67
  "provenance": true
68
68
  },
69
69
  "devDependencies": {
70
- "@procedures/better-auth": "0.23.0",
71
- "@procedures/fs": "0.23.0",
72
- "@procedures/mcp-server": "0.23.0",
70
+ "@procedures/better-auth": "0.24.1",
71
+ "@procedures/fs": "0.24.1",
72
+ "@procedures/mcp-server": "0.24.1",
73
73
  "@modelcontextprotocol/sdk": "^1.0.0",
74
74
  "typescript": "^7.0.2",
75
75
  "@types/node": "^22.0.0",
@@ -81,7 +81,7 @@
81
81
  },
82
82
  "dependencies": {
83
83
  "@mark1russell7/service": "^0.5.8",
84
- "@procedures/client": "0.23.0",
84
+ "@procedures/client": "0.24.1",
85
85
  "zod": "^4.6.5"
86
86
  },
87
87
  "scripts": {
package/src/host/index.ts CHANGED
@@ -635,6 +635,7 @@ function outgoingAnswers(): OutgoingAnswers {
635
635
  }
636
636
 
637
637
  export { httpFace, wsFace } from "./faces.js";
638
+ export { localFace, type LocalFace } from "./local-face.js";
638
639
  export type { HostFace, HostFaceContext, HostFaceEndpoint, HostFaceFactory, HostFaceUpgrade } from "./faces.js";
639
640
  export { callOperations, faceHandler, httpTracker, operationOfCall } from "./tracking.js";
640
641
  export type { CallDetail, CallOperation, FaceHandler, FaceHandlerOptions, HttpTracker, HttpTrackerOptions } from "./tracking.js";
@@ -0,0 +1,183 @@
1
+ /**
2
+ * The local face of the procedures host (CLI-26): the calls of this process, through the request
3
+ * tracking of the service.
4
+ *
5
+ * `localFace()` gives a face factory for the option `faces` of `createProcedureHost()`, and a
6
+ * transport of `@procedures/client` for a `Client`. Each call of the client goes to the handler of
7
+ * the face, as a call of the HTTP face does. Thus the service admits the call, counts it, drains
8
+ * it and cuts it. The cold mode of `mark` calls its host in this process with this face.
9
+ *
10
+ * - Each call has `LOCAL_CREDENTIALS`: it is a call of this application (CLI-1). A token of the
11
+ * policy does not apply to it.
12
+ * - The signal of the call goes with the request. The cooperative abort of the drain also aborts the call.
13
+ * - When the signal aborts, the caller stops its wait at once, as over HTTP. The call gets the
14
+ * abort, and the drain of the service waits for its end.
15
+ * - A value is one response item. A stream gives one item for each value. An error ends the
16
+ * stream with an error item, with the code, the flag `retryable` and the reason of the error.
17
+ * - The face mounts nothing on a listener, and it has no stop parts. Before `createProcedureHost()`
18
+ * uses the factory, each call gets `UNAVAILABLE`.
19
+ */
20
+
21
+ import {
22
+ LOCAL_CREDENTIALS,
23
+ type Message,
24
+ type ResponseItem,
25
+ type ServerRequest,
26
+ type ServerResponse,
27
+ type Status,
28
+ type Transport,
29
+ } from "@procedures/client";
30
+ import type { HostFaceFactory } from "./faces.js";
31
+ import type { FaceHandler } from "./tracking.js";
32
+
33
+ /** The local face: the factory for the host, and the transport for a `Client` of this process. */
34
+ export interface LocalFace {
35
+ /** The face factory. Give it to the option `faces` of `createProcedureHost()`, for example as `local`. */
36
+ readonly face: HostFaceFactory;
37
+ /** The transport of a `Client`: each call goes to the host through the request tracking of the face. */
38
+ readonly transport: Transport;
39
+ }
40
+
41
+ /** The value of `untilAborted` when the signal aborts first. */
42
+ const ABORTED: unique symbol = Symbol("aborted");
43
+
44
+ /** This function gives the value of a promise, or `ABORTED` when the signal aborts first. The promise continues. */
45
+ function untilAborted<T>(promise: Promise<T>, signal: AbortSignal | undefined): Promise<T | typeof ABORTED> {
46
+ if (!signal) return promise;
47
+ if (signal.aborted) {
48
+ promise.catch(() => undefined);
49
+ return Promise.resolve(ABORTED);
50
+ }
51
+ return new Promise((resolve, reject) => {
52
+ const onAbort = (): void => {
53
+ promise.catch(() => undefined);
54
+ resolve(ABORTED);
55
+ };
56
+ signal.addEventListener("abort", onAbort, { once: true });
57
+ promise.then(
58
+ (value) => {
59
+ signal.removeEventListener("abort", onAbort);
60
+ resolve(value);
61
+ },
62
+ (error: unknown) => {
63
+ signal.removeEventListener("abort", onAbort);
64
+ reject(error);
65
+ },
66
+ );
67
+ });
68
+ }
69
+
70
+ /** This function gives a response item of a status. */
71
+ function item<T>(id: string, status: Status, payload: unknown, metadata: Record<string, unknown> = {}): ResponseItem<T> {
72
+ return { id, status, payload: payload as T, metadata };
73
+ }
74
+
75
+ /** This function gives the error item of an abort of the caller: the item of the local transport. */
76
+ function abortedItem<T>(id: string): ResponseItem<T> {
77
+ return item<T>(id, { type: "error", code: "ABORTED", message: "Request was aborted", retryable: false }, null);
78
+ }
79
+
80
+ /** This function gives the error item of an error that ends a stream: its code, its flag `retryable` and its reason. */
81
+ function errorItem<T>(id: string, error: unknown): ResponseItem<T> {
82
+ const fields = (error ?? {}) as { code?: unknown; retryable?: unknown; reason?: unknown };
83
+ const code = typeof fields.code === "string" ? fields.code : "HANDLER_ERROR";
84
+ const message = error instanceof Error ? error.message : String(error);
85
+ const retryable = typeof fields.retryable === "boolean" ? fields.retryable : false;
86
+ return item<T>(id, { type: "error", code, message, retryable }, null, typeof fields.reason === "string" ? { reason: fields.reason } : {});
87
+ }
88
+
89
+ /** This function reads a stream that nobody reads to its end, so its request ends. The call has its abort, thus it ends soon. */
90
+ async function discard(response: ServerResponse): Promise<void> {
91
+ const values = response.stream?.[Symbol.asyncIterator]();
92
+ if (!values) return;
93
+ try {
94
+ while (!(await values.next()).done) {
95
+ // Each value goes nowhere
96
+ }
97
+ } catch {
98
+ // The end of the call after its abort
99
+ }
100
+ }
101
+
102
+ /** The response items of a response of the face: one item for a value or an error, and one item for each value of a stream. */
103
+ async function* itemsOf<T>(id: string, response: ServerResponse, signal: AbortSignal | undefined): AsyncGenerator<ResponseItem<T>, void, undefined> {
104
+ if (response.status.type === "error" || response.stream === undefined) {
105
+ yield item<T>(id, response.status, response.status.type === "error" ? null : response.payload, response.metadata ?? {});
106
+ return;
107
+ }
108
+ const values = response.stream[Symbol.asyncIterator]();
109
+ let ended = false;
110
+ try {
111
+ for (;;) {
112
+ const next = await untilAborted(values.next(), signal);
113
+ if (next === ABORTED) {
114
+ yield abortedItem<T>(id);
115
+ return;
116
+ }
117
+ if (next.done) {
118
+ ended = true;
119
+ return;
120
+ }
121
+ yield item<T>(id, { type: "success", code: 200 }, next.value);
122
+ }
123
+ } catch (error) {
124
+ ended = true;
125
+ yield errorItem<T>(id, error);
126
+ } finally {
127
+ // A reader that stops early stops the call: the work gets its abort
128
+ if (!ended) void values.return?.(undefined)?.catch(() => undefined);
129
+ }
130
+ }
131
+
132
+ /**
133
+ * This function gives the local face of a host (CLI-26). One face serves one host.
134
+ *
135
+ * @example
136
+ * ```typescript
137
+ * const local = localFace();
138
+ * const host = createProcedureHost({ registry, faces: { local: local.face } });
139
+ * const life = await host.declare(service("mark").profile(ephemeral)).run();
140
+ * const client = new Client({ transport: local.transport });
141
+ * for await (const item of client.stream({ service: "git", operation: "status" }, {}, { signal })) print(item);
142
+ * ```
143
+ */
144
+ export function localFace(): LocalFace {
145
+ let handler: FaceHandler | undefined;
146
+ const face: HostFaceFactory = (context) => {
147
+ handler = context.handler;
148
+ return {};
149
+ };
150
+ const transport: Transport = {
151
+ name: "local-face",
152
+ async *send<TReq, TRes>(message: Message<TReq>): AsyncIterable<ResponseItem<TRes>> {
153
+ const target = handler;
154
+ if (!target) {
155
+ yield item<TRes>(message.id, { type: "error", code: "UNAVAILABLE", message: "The local face has no host: give its factory to createProcedureHost()", retryable: false }, null);
156
+ return;
157
+ }
158
+ if (message.signal?.aborted) {
159
+ yield abortedItem<TRes>(message.id);
160
+ return;
161
+ }
162
+ const request: ServerRequest = {
163
+ id: message.id,
164
+ method: message.method,
165
+ payload: message.payload,
166
+ metadata: { ...message.metadata },
167
+ credentials: LOCAL_CREDENTIALS,
168
+ ...(message.signal ? { signal: message.signal } : {}),
169
+ };
170
+ const pending = target.handle(request);
171
+ const response = await untilAborted(pending, message.signal);
172
+ if (response === ABORTED) {
173
+ // A stream that comes after the abort still holds its request: it is read to its end
174
+ void pending.then(discard, () => undefined);
175
+ yield abortedItem<TRes>(message.id);
176
+ return;
177
+ }
178
+ yield* itemsOf<TRes>(message.id, response, message.signal);
179
+ },
180
+ close: async () => undefined,
181
+ };
182
+ return { face, transport };
183
+ }
package/src/index.ts CHANGED
@@ -31,6 +31,7 @@ export {
31
31
  createProcedureHost,
32
32
  httpFace,
33
33
  wsFace,
34
+ localFace,
34
35
  LOCAL_LISTENER_KNOBS,
35
36
  HOST_PROBE_PREFIX,
36
37
  callOperations,
@@ -60,6 +61,7 @@ export type {
60
61
  HostFaceEndpoint,
61
62
  HostFaceFactory,
62
63
  HostFaceUpgrade,
64
+ LocalFace,
63
65
  CallDetail,
64
66
  CallOperation,
65
67
  FaceHandler,