@bian-womp/spark-remote 0.3.90 → 0.3.92
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/package.json +3 -3
- package/lib/src/RemoteEngine.d.ts +0 -35
- package/lib/src/RemoteEngine.d.ts.map +0 -1
- package/lib/src/RemoteEngine.js +0 -115
- package/lib/src/RemoteEngine.js.map +0 -1
- package/lib/src/RemoteGraphLifecycleApi.d.ts +0 -47
- package/lib/src/RemoteGraphLifecycleApi.d.ts.map +0 -1
- package/lib/src/RemoteGraphLifecycleApi.js +0 -190
- package/lib/src/RemoteGraphLifecycleApi.js.map +0 -1
- package/lib/src/RemoteRuntimeClient.d.ts +0 -85
- package/lib/src/RemoteRuntimeClient.d.ts.map +0 -1
- package/lib/src/RemoteRuntimeClient.js +0 -212
- package/lib/src/RemoteRuntimeClient.js.map +0 -1
- package/lib/src/examples/http-polling.d.ts +0 -2
- package/lib/src/examples/http-polling.d.ts.map +0 -1
- package/lib/src/examples/http-polling.js +0 -67
- package/lib/src/examples/http-polling.js.map +0 -1
- package/lib/src/examples/shared.d.ts +0 -6
- package/lib/src/examples/shared.d.ts.map +0 -1
- package/lib/src/examples/shared.js +0 -71
- package/lib/src/examples/shared.js.map +0 -1
- package/lib/src/examples/unix-socket.d.ts +0 -2
- package/lib/src/examples/unix-socket.d.ts.map +0 -1
- package/lib/src/examples/unix-socket.js +0 -67
- package/lib/src/examples/unix-socket.js.map +0 -1
- package/lib/src/examples/websocket.d.ts +0 -2
- package/lib/src/examples/websocket.d.ts.map +0 -1
- package/lib/src/examples/websocket.js +0 -67
- package/lib/src/examples/websocket.js.map +0 -1
- package/lib/src/index.d.ts +0 -13
- package/lib/src/index.d.ts.map +0 -1
- package/lib/src/index.js +0 -12
- package/lib/src/index.js.map +0 -1
- package/lib/src/server/ServerCommandHandler.d.ts +0 -51
- package/lib/src/server/ServerCommandHandler.d.ts.map +0 -1
- package/lib/src/server/ServerCommandHandler.js +0 -325
- package/lib/src/server/ServerCommandHandler.js.map +0 -1
- package/lib/src/server/ServerRuntimeAdapter.d.ts +0 -27
- package/lib/src/server/ServerRuntimeAdapter.d.ts.map +0 -1
- package/lib/src/server/ServerRuntimeAdapter.js +0 -446
- package/lib/src/server/ServerRuntimeAdapter.js.map +0 -1
- package/lib/src/server/errors.d.ts +0 -3
- package/lib/src/server/errors.d.ts.map +0 -1
- package/lib/src/server/errors.js +0 -44
- package/lib/src/server/errors.js.map +0 -1
- package/lib/src/transport/HttpPollingTransport.d.ts +0 -16
- package/lib/src/transport/HttpPollingTransport.d.ts.map +0 -1
- package/lib/src/transport/HttpPollingTransport.js +0 -83
- package/lib/src/transport/HttpPollingTransport.js.map +0 -1
- package/lib/src/transport/Seq.d.ts +0 -6
- package/lib/src/transport/Seq.d.ts.map +0 -1
- package/lib/src/transport/Seq.js +0 -18
- package/lib/src/transport/Seq.js.map +0 -1
- package/lib/src/transport/Transport.d.ts +0 -26
- package/lib/src/transport/Transport.d.ts.map +0 -1
- package/lib/src/transport/Transport.js +0 -2
- package/lib/src/transport/Transport.js.map +0 -1
- package/lib/src/transport/UnixSocketTransport.d.ts +0 -18
- package/lib/src/transport/UnixSocketTransport.d.ts.map +0 -1
- package/lib/src/transport/UnixSocketTransport.js +0 -96
- package/lib/src/transport/UnixSocketTransport.js.map +0 -1
- package/lib/src/transport/WebSocketConnector.d.ts +0 -63
- package/lib/src/transport/WebSocketConnector.d.ts.map +0 -1
- package/lib/src/transport/WebSocketConnector.js +0 -2
- package/lib/src/transport/WebSocketConnector.js.map +0 -1
- package/lib/src/transport/WebSocketTransport.d.ts +0 -44
- package/lib/src/transport/WebSocketTransport.d.ts.map +0 -1
- package/lib/src/transport/WebSocketTransport.js +0 -226
- package/lib/src/transport/WebSocketTransport.js.map +0 -1
- package/lib/src/utils/inputEncoding.d.ts +0 -7
- package/lib/src/utils/inputEncoding.d.ts.map +0 -1
- package/lib/src/utils/inputEncoding.js +0 -19
- package/lib/src/utils/inputEncoding.js.map +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bian-womp/spark-remote",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.92",
|
|
4
4
|
"description": "Spark Remote - Remote execution engine for distributed graph processing",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -50,8 +50,8 @@
|
|
|
50
50
|
"typescript": "5.6.3"
|
|
51
51
|
},
|
|
52
52
|
"dependencies": {
|
|
53
|
-
"@bian-womp/spark-graph": "^0.3.
|
|
54
|
-
"@bian-womp/spark-protocol": "^0.3.
|
|
53
|
+
"@bian-womp/spark-graph": "^0.3.92",
|
|
54
|
+
"@bian-womp/spark-protocol": "^0.3.92",
|
|
55
55
|
"ws": "^8.18.3"
|
|
56
56
|
}
|
|
57
57
|
}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import type { RunMode } from "@bian-womp/spark-protocol";
|
|
2
|
-
import type { Engine, EngineEventListener, EngineEventName } from "@bian-womp/spark-graph";
|
|
3
|
-
import type { Transport } from "./transport/Transport";
|
|
4
|
-
export declare class RemoteEngine implements Engine {
|
|
5
|
-
private transport;
|
|
6
|
-
private listeners;
|
|
7
|
-
private cache;
|
|
8
|
-
constructor(transport: Transport);
|
|
9
|
-
/**
|
|
10
|
-
* Generate cache key that includes io type to prevent collisions
|
|
11
|
-
* between input and output handles with the same name
|
|
12
|
-
*/
|
|
13
|
-
private getCacheKey;
|
|
14
|
-
private onEnvelope;
|
|
15
|
-
launch(): void;
|
|
16
|
-
setRunMode(runMode: RunMode): void;
|
|
17
|
-
setInputs(nodeId: string, inputs: Record<string, unknown>, options?: {
|
|
18
|
-
dry?: boolean;
|
|
19
|
-
}): Promise<void>;
|
|
20
|
-
triggerExternal(nodeId: string, event: unknown, options?: {
|
|
21
|
-
dry?: boolean;
|
|
22
|
-
}): Promise<void>;
|
|
23
|
-
copyOutputs(fromNodeId: string, toNodeId: string, options?: {
|
|
24
|
-
dry?: boolean;
|
|
25
|
-
}): Promise<void>;
|
|
26
|
-
on<K extends EngineEventName>(event: K, handler: EngineEventListener<K>): () => void;
|
|
27
|
-
private emit;
|
|
28
|
-
getOutput(nodeId: string, output: string): unknown;
|
|
29
|
-
whenIdle(): Promise<void>;
|
|
30
|
-
computeNode(nodeId: string): Promise<void>;
|
|
31
|
-
runFromHere(nodeId: string): Promise<void>;
|
|
32
|
-
cancelNodeRuns(nodeIds: string[]): Promise<void>;
|
|
33
|
-
dispose(): void;
|
|
34
|
-
}
|
|
35
|
-
//# sourceMappingURL=RemoteEngine.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RemoteEngine.d.ts","sourceRoot":"","sources":["../../src/RemoteEngine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAY,OAAO,EAAgB,MAAM,2BAA2B,CAAC;AACjF,OAAO,KAAK,EAAE,MAAM,EAAE,mBAAmB,EAAE,eAAe,EAAkB,MAAM,wBAAwB,CAAC;AAC3G,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAGvD,qBAAa,YAAa,YAAW,MAAM;IAI7B,OAAO,CAAC,SAAS;IAH7B,OAAO,CAAC,SAAS,CAAyE;IAC1F,OAAO,CAAC,KAAK,CAAiE;gBAE1D,SAAS,EAAE,SAAS;IAIxC;;;OAGG;IACH,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,UAAU;IAmBlB,MAAM,IAAI,IAAI;IAId,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAS5B,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAWtG,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAU3F,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAUnG,EAAE,CAAC,CAAC,SAAS,eAAe,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI;IAOpF,OAAO,CAAC,IAAI;IAKZ,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO;IAI5C,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAIzB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM1C,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM1C,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAMtD,OAAO,IAAI,IAAI;CAGhB"}
|
package/lib/src/RemoteEngine.js
DELETED
|
@@ -1,115 +0,0 @@
|
|
|
1
|
-
import { encodeInputsForTransport } from "./utils/inputEncoding";
|
|
2
|
-
export class RemoteEngine {
|
|
3
|
-
constructor(transport) {
|
|
4
|
-
this.transport = transport;
|
|
5
|
-
this.listeners = new Map();
|
|
6
|
-
this.cache = new Map();
|
|
7
|
-
this.transport.subscribe((env) => this.onEnvelope(env));
|
|
8
|
-
}
|
|
9
|
-
/**
|
|
10
|
-
* Generate cache key that includes io type to prevent collisions
|
|
11
|
-
* between input and output handles with the same name
|
|
12
|
-
*/
|
|
13
|
-
getCacheKey(nodeId, handle, io) {
|
|
14
|
-
return `${nodeId}.${io}.${handle}`;
|
|
15
|
-
}
|
|
16
|
-
onEnvelope(env) {
|
|
17
|
-
const msg = env.message;
|
|
18
|
-
if (!msg)
|
|
19
|
-
return;
|
|
20
|
-
if (msg.type === "value") {
|
|
21
|
-
const key = this.getCacheKey(msg.payload.nodeId, msg.payload.handle, msg.payload.io);
|
|
22
|
-
this.cache.set(key, {
|
|
23
|
-
value: msg.payload.value,
|
|
24
|
-
runtimeTypeId: msg.payload.runtimeTypeId,
|
|
25
|
-
});
|
|
26
|
-
this.emit("value", msg.payload);
|
|
27
|
-
}
|
|
28
|
-
else if (msg.type === "error") {
|
|
29
|
-
this.emit("error", msg.payload);
|
|
30
|
-
}
|
|
31
|
-
else if (msg.type === "invalidate") {
|
|
32
|
-
this.emit("invalidate", msg.payload);
|
|
33
|
-
}
|
|
34
|
-
else if (msg.type === "stats") {
|
|
35
|
-
this.emit("stats", msg.payload);
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
launch() {
|
|
39
|
-
throw new Error("RemoteEngine.launch() is not supported. Use GraphLifecycleApi.launch() instead.");
|
|
40
|
-
}
|
|
41
|
-
setRunMode(runMode) {
|
|
42
|
-
this.transport.send({
|
|
43
|
-
message: {
|
|
44
|
-
type: "SetRunMode",
|
|
45
|
-
payload: { runMode },
|
|
46
|
-
},
|
|
47
|
-
});
|
|
48
|
-
}
|
|
49
|
-
async setInputs(nodeId, inputs, options) {
|
|
50
|
-
const encodedInputs = encodeInputsForTransport(inputs);
|
|
51
|
-
await this.transport.request({
|
|
52
|
-
message: {
|
|
53
|
-
type: "SetInputs",
|
|
54
|
-
payload: { nodeId, inputs: encodedInputs },
|
|
55
|
-
dry: options?.dry,
|
|
56
|
-
},
|
|
57
|
-
});
|
|
58
|
-
}
|
|
59
|
-
async triggerExternal(nodeId, event, options) {
|
|
60
|
-
await this.transport.request({
|
|
61
|
-
message: {
|
|
62
|
-
type: "TriggerExternal",
|
|
63
|
-
payload: { nodeId, event },
|
|
64
|
-
dry: options?.dry,
|
|
65
|
-
},
|
|
66
|
-
});
|
|
67
|
-
}
|
|
68
|
-
async copyOutputs(fromNodeId, toNodeId, options) {
|
|
69
|
-
await this.transport.request({
|
|
70
|
-
message: {
|
|
71
|
-
type: "CopyOutputs",
|
|
72
|
-
payload: { fromNodeId, toNodeId },
|
|
73
|
-
dry: options?.dry,
|
|
74
|
-
},
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
on(event, handler) {
|
|
78
|
-
if (!this.listeners.has(event))
|
|
79
|
-
this.listeners.set(event, new Set());
|
|
80
|
-
const set = this.listeners.get(event);
|
|
81
|
-
set.add(handler);
|
|
82
|
-
return () => set.delete(handler);
|
|
83
|
-
}
|
|
84
|
-
emit(event, payload) {
|
|
85
|
-
const set = this.listeners.get(event);
|
|
86
|
-
if (set)
|
|
87
|
-
for (const h of Array.from(set))
|
|
88
|
-
h(payload);
|
|
89
|
-
}
|
|
90
|
-
getOutput(nodeId, output) {
|
|
91
|
-
return this.cache.get(this.getCacheKey(nodeId, output, "output"))?.value;
|
|
92
|
-
}
|
|
93
|
-
async whenIdle() {
|
|
94
|
-
await this.transport.request({ message: { type: "WhenIdle" } });
|
|
95
|
-
}
|
|
96
|
-
async computeNode(nodeId) {
|
|
97
|
-
await this.transport.request({
|
|
98
|
-
message: { type: "ComputeNode", payload: { nodeId } },
|
|
99
|
-
});
|
|
100
|
-
}
|
|
101
|
-
async runFromHere(nodeId) {
|
|
102
|
-
await this.transport.request({
|
|
103
|
-
message: { type: "RunFromHere", payload: { nodeId } },
|
|
104
|
-
});
|
|
105
|
-
}
|
|
106
|
-
async cancelNodeRuns(nodeIds) {
|
|
107
|
-
await this.transport.request({
|
|
108
|
-
message: { type: "CancelNodeRuns", payload: { nodeIds } },
|
|
109
|
-
});
|
|
110
|
-
}
|
|
111
|
-
dispose() {
|
|
112
|
-
this.transport.send({ message: { type: "Dispose" } });
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
//# sourceMappingURL=RemoteEngine.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RemoteEngine.js","sourceRoot":"","sources":["../../src/RemoteEngine.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import type { GraphDefinition, RegistryDescriptor, RegistryDelta, RuntimeSnapshot, RuntimeSnapshotFull, RunnerOptions, RuntimeHistoryInfo, Viewport, ConverterConfig } from "@bian-womp/spark-protocol";
|
|
2
|
-
import type { GraphLifecycleApi } from "@bian-womp/spark-graph";
|
|
3
|
-
import type { Transport } from "./transport/Transport";
|
|
4
|
-
/**
|
|
5
|
-
* RemoteGraphLifecycleApi implements GraphLifecycleApi by sending commands over transport.
|
|
6
|
-
* This handles all non-execution operations (graph lifecycle, snapshots, registry, etc.)
|
|
7
|
-
*/
|
|
8
|
-
export declare class RemoteGraphLifecycleApi implements GraphLifecycleApi {
|
|
9
|
-
private transport;
|
|
10
|
-
constructor(transport: Transport);
|
|
11
|
-
private ensureConnected;
|
|
12
|
-
build(def: GraphDefinition, opts?: {
|
|
13
|
-
environment?: Record<string, unknown>;
|
|
14
|
-
}): Promise<void>;
|
|
15
|
-
update(def: GraphDefinition, options?: {
|
|
16
|
-
dry?: boolean;
|
|
17
|
-
}): Promise<void>;
|
|
18
|
-
launch(opts?: RunnerOptions): Promise<void>;
|
|
19
|
-
snapshot(): Promise<RuntimeSnapshot>;
|
|
20
|
-
snapshotFull(): Promise<RuntimeSnapshotFull>;
|
|
21
|
-
applySnapshotFull(payload: RuntimeSnapshotFull, options?: {
|
|
22
|
-
skipBuild?: boolean;
|
|
23
|
-
}): Promise<void>;
|
|
24
|
-
convertSnapshot(converterConfig: ConverterConfig, options?: {
|
|
25
|
-
dry?: boolean;
|
|
26
|
-
}): Promise<RuntimeSnapshotFull>;
|
|
27
|
-
describeRegistry(): Promise<RegistryDescriptor>;
|
|
28
|
-
applyRegistry(deltas: Array<RegistryDelta>): Promise<void>;
|
|
29
|
-
setEnvironment(environment: Record<string, unknown>, opts?: {
|
|
30
|
-
merge?: boolean;
|
|
31
|
-
dry?: boolean;
|
|
32
|
-
}): Promise<void>;
|
|
33
|
-
getEnvironment(): Promise<Record<string, unknown>>;
|
|
34
|
-
coerce(from: string, to: string, value: unknown): Promise<unknown>;
|
|
35
|
-
setExtData(data: Record<string, unknown>): Promise<void>;
|
|
36
|
-
updateExtData(updates: Array<{
|
|
37
|
-
path: string;
|
|
38
|
-
value: unknown;
|
|
39
|
-
}>): Promise<boolean>;
|
|
40
|
-
setViewport(viewport: Viewport): Promise<void>;
|
|
41
|
-
commit(reason?: string): Promise<RuntimeHistoryInfo | undefined>;
|
|
42
|
-
undo(): Promise<boolean>;
|
|
43
|
-
redo(): Promise<boolean>;
|
|
44
|
-
pause(): Promise<void>;
|
|
45
|
-
resume(): Promise<void>;
|
|
46
|
-
}
|
|
47
|
-
//# sourceMappingURL=RemoteGraphLifecycleApi.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RemoteGraphLifecycleApi.d.ts","sourceRoot":"","sources":["../../src/RemoteGraphLifecycleApi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,kBAAkB,EAClB,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,kBAAkB,EAClB,QAAQ,EACR,eAAe,EAChB,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD;;;GAGG;AACH,qBAAa,uBAAwB,YAAW,iBAAiB;IACnD,OAAO,CAAC,SAAS;gBAAT,SAAS,EAAE,SAAS;YAE1B,eAAe;IAOvB,KAAK,CAAC,GAAG,EAAE,eAAe,EAAE,IAAI,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAU5F,MAAM,CAAC,GAAG,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAOxE,MAAM,CAAC,IAAI,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAU3C,QAAQ,IAAI,OAAO,CAAC,eAAe,CAAC;IASpC,YAAY,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAgB5C,iBAAiB,CAAC,OAAO,EAAE,mBAAmB,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAWjG,eAAe,CAAC,eAAe,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAoB5G,gBAAgB,IAAI,OAAO,CAAC,kBAAkB,CAAC;IAiB/C,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAO1D,cAAc,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAC;QAAC,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAW9G,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IASlD,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IASlE,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAOxD,aAAa,CAAC,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IASjF,WAAW,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAO9C,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC;IAShE,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC;IASxB,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC;IASxB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAOtB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;CAM9B"}
|
|
@@ -1,190 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* RemoteGraphLifecycleApi implements GraphLifecycleApi by sending commands over transport.
|
|
3
|
-
* This handles all non-execution operations (graph lifecycle, snapshots, registry, etc.)
|
|
4
|
-
*/
|
|
5
|
-
export class RemoteGraphLifecycleApi {
|
|
6
|
-
constructor(transport) {
|
|
7
|
-
this.transport = transport;
|
|
8
|
-
}
|
|
9
|
-
async ensureConnected() {
|
|
10
|
-
if (!this.transport) {
|
|
11
|
-
throw new Error("Transport not connected");
|
|
12
|
-
}
|
|
13
|
-
return this.transport;
|
|
14
|
-
}
|
|
15
|
-
async build(def, opts) {
|
|
16
|
-
const transport = await this.ensureConnected();
|
|
17
|
-
await transport.request({
|
|
18
|
-
message: {
|
|
19
|
-
type: "Build",
|
|
20
|
-
payload: { def, environment: opts?.environment },
|
|
21
|
-
},
|
|
22
|
-
});
|
|
23
|
-
}
|
|
24
|
-
async update(def, options) {
|
|
25
|
-
const transport = await this.ensureConnected();
|
|
26
|
-
await transport.request({
|
|
27
|
-
message: { type: "Update", payload: { def }, dry: options?.dry },
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
async launch(opts) {
|
|
31
|
-
const transport = await this.ensureConnected();
|
|
32
|
-
await transport.request({
|
|
33
|
-
message: {
|
|
34
|
-
type: "Launch",
|
|
35
|
-
payload: opts,
|
|
36
|
-
},
|
|
37
|
-
});
|
|
38
|
-
}
|
|
39
|
-
async snapshot() {
|
|
40
|
-
const transport = await this.ensureConnected();
|
|
41
|
-
const res = await transport.request({
|
|
42
|
-
message: { type: "Snapshot" },
|
|
43
|
-
});
|
|
44
|
-
const payload = res?.message || {};
|
|
45
|
-
return payload.snapshot || { inputs: {}, outputs: {} };
|
|
46
|
-
}
|
|
47
|
-
async snapshotFull() {
|
|
48
|
-
const transport = await this.ensureConnected();
|
|
49
|
-
const res = await transport.request({
|
|
50
|
-
message: { type: "SnapshotFull" },
|
|
51
|
-
});
|
|
52
|
-
const payload = res?.message || {};
|
|
53
|
-
return (payload.snapshot || {
|
|
54
|
-
def: undefined,
|
|
55
|
-
environment: {},
|
|
56
|
-
inputs: {},
|
|
57
|
-
outputs: {},
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
async applySnapshotFull(payload, options) {
|
|
61
|
-
const transport = await this.ensureConnected();
|
|
62
|
-
await transport.request({
|
|
63
|
-
message: {
|
|
64
|
-
type: "ApplySnapshotFull",
|
|
65
|
-
payload,
|
|
66
|
-
skipBuild: options?.skipBuild,
|
|
67
|
-
},
|
|
68
|
-
});
|
|
69
|
-
}
|
|
70
|
-
async convertSnapshot(converterConfig, options) {
|
|
71
|
-
const transport = await this.ensureConnected();
|
|
72
|
-
const res = await transport.request({
|
|
73
|
-
message: {
|
|
74
|
-
type: "ConvertSnapshot",
|
|
75
|
-
payload: { converterConfig },
|
|
76
|
-
dry: options?.dry,
|
|
77
|
-
},
|
|
78
|
-
});
|
|
79
|
-
const payload = res?.message || {};
|
|
80
|
-
return (payload.snapshot || {
|
|
81
|
-
def: undefined,
|
|
82
|
-
environment: {},
|
|
83
|
-
inputs: {},
|
|
84
|
-
outputs: {},
|
|
85
|
-
});
|
|
86
|
-
}
|
|
87
|
-
async describeRegistry() {
|
|
88
|
-
const transport = await this.ensureConnected();
|
|
89
|
-
const res = await transport.request({
|
|
90
|
-
message: { type: "DescribeRegistry" },
|
|
91
|
-
});
|
|
92
|
-
const payload = res?.message || {};
|
|
93
|
-
return (payload.registry || {
|
|
94
|
-
types: [],
|
|
95
|
-
categories: [],
|
|
96
|
-
nodes: [],
|
|
97
|
-
coercions: [],
|
|
98
|
-
schemaVersion: 4,
|
|
99
|
-
});
|
|
100
|
-
}
|
|
101
|
-
async applyRegistry(deltas) {
|
|
102
|
-
const transport = await this.ensureConnected();
|
|
103
|
-
await transport.request({
|
|
104
|
-
message: { type: "RegistryApply", payload: { deltas } },
|
|
105
|
-
});
|
|
106
|
-
}
|
|
107
|
-
async setEnvironment(environment, opts) {
|
|
108
|
-
const transport = await this.ensureConnected();
|
|
109
|
-
await transport.request({
|
|
110
|
-
message: {
|
|
111
|
-
type: "SetEnvironment",
|
|
112
|
-
payload: { environment, merge: opts?.merge },
|
|
113
|
-
dry: opts?.dry,
|
|
114
|
-
},
|
|
115
|
-
});
|
|
116
|
-
}
|
|
117
|
-
async getEnvironment() {
|
|
118
|
-
const transport = await this.ensureConnected();
|
|
119
|
-
const res = await transport.request({
|
|
120
|
-
message: { type: "GetEnvironment" },
|
|
121
|
-
});
|
|
122
|
-
const payload = res?.message || {};
|
|
123
|
-
return payload.environment || {};
|
|
124
|
-
}
|
|
125
|
-
async coerce(from, to, value) {
|
|
126
|
-
const transport = await this.ensureConnected();
|
|
127
|
-
const res = await transport.request({
|
|
128
|
-
message: { type: "Coerce", payload: { from, to, value } },
|
|
129
|
-
});
|
|
130
|
-
const payload = res?.message || {};
|
|
131
|
-
return payload.value;
|
|
132
|
-
}
|
|
133
|
-
async setExtData(data) {
|
|
134
|
-
const transport = await this.ensureConnected();
|
|
135
|
-
await transport.request({
|
|
136
|
-
message: { type: "SetExtData", payload: data },
|
|
137
|
-
});
|
|
138
|
-
}
|
|
139
|
-
async updateExtData(updates) {
|
|
140
|
-
const transport = await this.ensureConnected();
|
|
141
|
-
const res = await transport.request({
|
|
142
|
-
message: { type: "UpdateExtData", payload: updates },
|
|
143
|
-
});
|
|
144
|
-
const payload = res?.message || {};
|
|
145
|
-
return payload.hasCustomUpdate ?? false;
|
|
146
|
-
}
|
|
147
|
-
async setViewport(viewport) {
|
|
148
|
-
const transport = await this.ensureConnected();
|
|
149
|
-
await transport.send({
|
|
150
|
-
message: { type: "SetViewport", payload: { viewport } },
|
|
151
|
-
});
|
|
152
|
-
}
|
|
153
|
-
async commit(reason) {
|
|
154
|
-
const transport = await this.ensureConnected();
|
|
155
|
-
const res = await transport.request({
|
|
156
|
-
message: { type: "Commit", payload: { reason } },
|
|
157
|
-
});
|
|
158
|
-
const payload = res?.message || {};
|
|
159
|
-
return payload.history;
|
|
160
|
-
}
|
|
161
|
-
async undo() {
|
|
162
|
-
const transport = await this.ensureConnected();
|
|
163
|
-
const res = await transport.request({
|
|
164
|
-
message: { type: "Undo" },
|
|
165
|
-
});
|
|
166
|
-
const payload = res?.message || {};
|
|
167
|
-
return payload.success ?? false;
|
|
168
|
-
}
|
|
169
|
-
async redo() {
|
|
170
|
-
const transport = await this.ensureConnected();
|
|
171
|
-
const res = await transport.request({
|
|
172
|
-
message: { type: "Redo" },
|
|
173
|
-
});
|
|
174
|
-
const payload = res?.message || {};
|
|
175
|
-
return payload.success ?? false;
|
|
176
|
-
}
|
|
177
|
-
async pause() {
|
|
178
|
-
const transport = await this.ensureConnected();
|
|
179
|
-
await transport.request({
|
|
180
|
-
message: { type: "Pause" },
|
|
181
|
-
});
|
|
182
|
-
}
|
|
183
|
-
async resume() {
|
|
184
|
-
const transport = await this.ensureConnected();
|
|
185
|
-
await transport.request({
|
|
186
|
-
message: { type: "Resume" },
|
|
187
|
-
});
|
|
188
|
-
}
|
|
189
|
-
}
|
|
190
|
-
//# sourceMappingURL=RemoteGraphLifecycleApi.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RemoteGraphLifecycleApi.js","sourceRoot":"","sources":["../../src/RemoteGraphLifecycleApi.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
import type { Envelope } from "@bian-womp/spark-protocol";
|
|
2
|
-
import type { GraphLifecycleApi } from "@bian-womp/spark-graph";
|
|
3
|
-
import { RemoteEngine } from "./RemoteEngine";
|
|
4
|
-
import type { TransportConnectOptions } from "./transport/Transport";
|
|
5
|
-
import { WebSocketTransportConnectOptions } from "./transport/WebSocketTransport";
|
|
6
|
-
export type RemoteClientConfig = {
|
|
7
|
-
kind: "remote-http";
|
|
8
|
-
baseUrl: string;
|
|
9
|
-
connectOptions?: TransportConnectOptions;
|
|
10
|
-
} | {
|
|
11
|
-
kind: "remote-ws";
|
|
12
|
-
url: string;
|
|
13
|
-
connectOptions?: WebSocketTransportConnectOptions;
|
|
14
|
-
} | {
|
|
15
|
-
kind: "remote-unix";
|
|
16
|
-
socketPath: string;
|
|
17
|
-
connectOptions?: TransportConnectOptions;
|
|
18
|
-
};
|
|
19
|
-
export type RemoteTransportStatus = {
|
|
20
|
-
state: "connecting" | "connected" | "disconnected";
|
|
21
|
-
kind: "remote-http" | "remote-ws" | "remote-unix";
|
|
22
|
-
runnerId?: string;
|
|
23
|
-
};
|
|
24
|
-
export type TransportEventListener = (status: RemoteTransportStatus) => void;
|
|
25
|
-
export type CustomEventListener = (event: Envelope<any>) => void;
|
|
26
|
-
/**
|
|
27
|
-
* RemoteRuntimeClient manages the connection to a remote runtime.
|
|
28
|
-
* It provides access to:
|
|
29
|
-
* - engine: RemoteEngine for execution operations
|
|
30
|
-
* - api: GraphLifecycleApi for graph lifecycle operations
|
|
31
|
-
*/
|
|
32
|
-
export declare class RemoteRuntimeClient {
|
|
33
|
-
private _engine?;
|
|
34
|
-
private _api?;
|
|
35
|
-
private transport?;
|
|
36
|
-
private customEventListeners;
|
|
37
|
-
private transportEventListeners;
|
|
38
|
-
private transportUnsubscribe?;
|
|
39
|
-
private disposed;
|
|
40
|
-
private config;
|
|
41
|
-
private connectingPromise?;
|
|
42
|
-
private runnerId?;
|
|
43
|
-
/**
|
|
44
|
-
* Get the Engine instance for execution operations.
|
|
45
|
-
* Engine provides unified interface for local/remote execution.
|
|
46
|
-
*/
|
|
47
|
-
get engine(): RemoteEngine;
|
|
48
|
-
/**
|
|
49
|
-
* Get the GraphLifecycleApi instance for non-execution operations.
|
|
50
|
-
* GraphLifecycleApi handles graph lifecycle, snapshots, registry, environment, etc.
|
|
51
|
-
*/
|
|
52
|
-
get api(): GraphLifecycleApi;
|
|
53
|
-
constructor(config: RemoteClientConfig, options?: {
|
|
54
|
-
onCustomEvent?: CustomEventListener;
|
|
55
|
-
runnerId?: string;
|
|
56
|
-
});
|
|
57
|
-
/**
|
|
58
|
-
* Create transport instance based on config.
|
|
59
|
-
* Extracted to a separate method for better testability and clarity.
|
|
60
|
-
*/
|
|
61
|
-
private createTransport;
|
|
62
|
-
/**
|
|
63
|
-
* Connect to the remote runtime API.
|
|
64
|
-
* Creates and connects the transport, then initializes the engine.
|
|
65
|
-
* Safe to call multiple times - concurrent calls will wait for the same connection.
|
|
66
|
-
*/
|
|
67
|
-
connect(): Promise<void>;
|
|
68
|
-
/**
|
|
69
|
-
* Handle events from transport.
|
|
70
|
-
* Routes standard runtime events to engine, custom events to custom handlers.
|
|
71
|
-
*/
|
|
72
|
-
private handleTransportEvent;
|
|
73
|
-
/**
|
|
74
|
-
* Subscribe to transport status changes.
|
|
75
|
-
* Returns an unsubscribe function.
|
|
76
|
-
*/
|
|
77
|
-
onTransportStatus(listener: TransportEventListener): () => void;
|
|
78
|
-
private emitTransportStatus;
|
|
79
|
-
/**
|
|
80
|
-
* Dispose the client and close the transport connection.
|
|
81
|
-
* Idempotent: safe to call multiple times.
|
|
82
|
-
*/
|
|
83
|
-
dispose(): Promise<void>;
|
|
84
|
-
}
|
|
85
|
-
//# sourceMappingURL=RemoteRuntimeClient.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RemoteRuntimeClient.d.ts","sourceRoot":"","sources":["../../src/RemoteRuntimeClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,OAAO,KAAK,EAAa,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAEhF,OAAO,EAAsB,gCAAgC,EAAE,MAAM,gCAAgC,CAAC;AAGtG,MAAM,MAAM,kBAAkB,GAC1B;IACE,IAAI,EAAE,aAAa,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,uBAAuB,CAAC;CAC1C,GACD;IACE,IAAI,EAAE,WAAW,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,CAAC,EAAE,gCAAgC,CAAC;CACnD,GACD;IACE,IAAI,EAAE,aAAa,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,uBAAuB,CAAC;CAC1C,CAAC;AAEN,MAAM,MAAM,qBAAqB,GAAG;IAClC,KAAK,EAAE,YAAY,GAAG,WAAW,GAAG,cAAc,CAAC;IACnD,IAAI,EAAE,aAAa,GAAG,WAAW,GAAG,aAAa,CAAC;IAClD,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,CAAC,MAAM,EAAE,qBAAqB,KAAK,IAAI,CAAC;AAC7E,MAAM,MAAM,mBAAmB,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC;AAEjE;;;;;GAKG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,OAAO,CAAC,CAAe;IAC/B,OAAO,CAAC,IAAI,CAAC,CAA0B;IACvC,OAAO,CAAC,SAAS,CAAC,CAAY;IAC9B,OAAO,CAAC,oBAAoB,CAAkC;IAC9D,OAAO,CAAC,uBAAuB,CAAqC;IACpE,OAAO,CAAC,oBAAoB,CAAC,CAAa;IAC1C,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,iBAAiB,CAAC,CAAgB;IAC1C,OAAO,CAAC,QAAQ,CAAC,CAAS;IAE1B;;;OAGG;IACH,IAAW,MAAM,IAAI,YAAY,CAKhC;IAED;;;OAGG;IACH,IAAW,GAAG,IAAI,iBAAiB,CAKlC;gBAEW,MAAM,EAAE,kBAAkB,EAAE,OAAO,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,mBAAmB,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE;IAS5G;;;OAGG;YACW,eAAe;IA2B7B;;;;OAIG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IA0D9B;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAgB5B;;;OAGG;IACH,iBAAiB,CAAC,QAAQ,EAAE,sBAAsB,GAAG,MAAM,IAAI;IAe/D,OAAO,CAAC,mBAAmB;IAM3B;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAkC/B"}
|