durable-actors 0.3.0 → 0.4.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/README.md +8 -19
- package/dist/backend.d.ts +3 -10
- package/dist/backend.d.ts.map +1 -1
- package/dist/backend.js +7 -34
- package/dist/backend.js.map +1 -1
- package/dist/cli/actor-source-watcher.d.ts.map +1 -1
- package/dist/cli/actor-source-watcher.js +6 -2
- package/dist/cli/actor-source-watcher.js.map +1 -1
- package/dist/cli/connection.d.ts +2 -2
- package/dist/cli/connection.d.ts.map +1 -1
- package/dist/cli/connection.js +2 -6
- package/dist/cli/connection.js.map +1 -1
- package/dist/cli/control-plane.d.ts +1 -1
- package/dist/cli/control-plane.d.ts.map +1 -1
- package/dist/cli/control-plane.js +11 -6
- package/dist/cli/control-plane.js.map +1 -1
- package/dist/cli/dev.d.ts.map +1 -1
- package/dist/cli/dev.js +51 -28
- package/dist/cli/dev.js.map +1 -1
- package/dist/cli/generate.d.ts.map +1 -1
- package/dist/cli/generate.js +16 -9
- package/dist/cli/generate.js.map +1 -1
- package/dist/cli.js +18 -3
- package/dist/cli.js.map +1 -1
- package/dist/client/clientSettings.d.ts +1 -7
- package/dist/client/clientSettings.d.ts.map +1 -1
- package/dist/client/clientSettings.js +1 -44
- package/dist/client/clientSettings.js.map +1 -1
- package/dist/client/remoteClient.d.ts +4 -35
- package/dist/client/remoteClient.d.ts.map +1 -1
- package/dist/client/remoteClient.js +14 -202
- package/dist/client/remoteClient.js.map +1 -1
- package/dist/client/telemetry.d.ts +4 -12
- package/dist/client/telemetry.d.ts.map +1 -1
- package/dist/client/telemetry.js +3 -19
- package/dist/client/telemetry.js.map +1 -1
- package/dist/client-runtime/client.d.ts +40 -0
- package/dist/client-runtime/client.d.ts.map +1 -0
- package/dist/client-runtime/client.js +183 -0
- package/dist/client-runtime/client.js.map +1 -0
- package/dist/client-runtime/errors.d.ts +30 -0
- package/dist/client-runtime/errors.d.ts.map +1 -0
- package/dist/client-runtime/errors.js +55 -0
- package/dist/client-runtime/errors.js.map +1 -0
- package/dist/client-runtime/http.d.ts +43 -0
- package/dist/client-runtime/http.d.ts.map +1 -0
- package/dist/client-runtime/http.js +63 -0
- package/dist/client-runtime/http.js.map +1 -0
- package/dist/client-runtime/index.browser.d.ts +8 -0
- package/dist/client-runtime/index.browser.d.ts.map +1 -0
- package/dist/client-runtime/index.browser.js +14 -0
- package/dist/client-runtime/index.browser.js.map +1 -0
- package/dist/client-runtime/index.d.ts +6 -0
- package/dist/client-runtime/index.d.ts.map +1 -0
- package/dist/client-runtime/index.js +4 -0
- package/dist/client-runtime/index.js.map +1 -0
- package/dist/client-runtime/json.d.ts +9 -0
- package/dist/client-runtime/json.d.ts.map +1 -0
- package/dist/client-runtime/json.js +16 -0
- package/dist/client-runtime/json.js.map +1 -0
- package/dist/client-runtime/proxy.d.ts +49 -0
- package/dist/client-runtime/proxy.d.ts.map +1 -0
- package/dist/client-runtime/proxy.js +106 -0
- package/dist/client-runtime/proxy.js.map +1 -0
- package/dist/client-runtime/settings.d.ts +20 -0
- package/dist/client-runtime/settings.d.ts.map +1 -0
- package/dist/client-runtime/settings.js +60 -0
- package/dist/client-runtime/settings.js.map +1 -0
- package/dist/client-runtime/stub.d.ts +15 -0
- package/dist/client-runtime/stub.d.ts.map +1 -0
- package/dist/client-runtime/stub.js +44 -0
- package/dist/client-runtime/stub.js.map +1 -0
- package/dist/client-runtime/telemetry.d.ts +13 -0
- package/dist/client-runtime/telemetry.d.ts.map +1 -0
- package/dist/client-runtime/telemetry.js +18 -0
- package/dist/client-runtime/telemetry.js.map +1 -0
- package/dist/compiler/actor-build.d.ts +8 -2
- package/dist/compiler/actor-build.d.ts.map +1 -1
- package/dist/compiler/actor-build.js +58 -4
- package/dist/compiler/actor-build.js.map +1 -1
- package/dist/compiler/actor-compiler.d.ts +11 -0
- package/dist/compiler/actor-compiler.d.ts.map +1 -1
- package/dist/compiler/actor-compiler.js +34 -22
- package/dist/compiler/actor-compiler.js.map +1 -1
- package/dist/compiler/deployment-build.js +18 -5
- package/dist/compiler/deployment-build.js.map +1 -1
- package/dist/compiler/generators/backend-generator.js +4 -4
- package/dist/compiler/generators/backend-generator.js.map +1 -1
- package/dist/compiler/generators/client-generator.d.ts.map +1 -1
- package/dist/compiler/generators/client-generator.js +6 -19
- package/dist/compiler/generators/client-generator.js.map +1 -1
- package/dist/compiler/generators/typescript-generator.d.ts +1 -1
- package/dist/compiler/generators/typescript-generator.d.ts.map +1 -1
- package/dist/compiler/generators/typescript-generator.js +11 -8
- package/dist/compiler/generators/typescript-generator.js.map +1 -1
- package/dist/compiler/json-schema.d.ts.map +1 -1
- package/dist/compiler/json-schema.js +2 -1
- package/dist/compiler/json-schema.js.map +1 -1
- package/dist/errors.d.ts +1 -29
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +1 -54
- package/dist/errors.js.map +1 -1
- package/dist/generated/client-runtime.d.ts +2 -0
- package/dist/generated/client-runtime.d.ts.map +1 -0
- package/dist/generated/client-runtime.js +2 -0
- package/dist/generated/client-runtime.js.map +1 -0
- package/dist/host/actor-host.d.ts +1 -3
- package/dist/host/actor-host.d.ts.map +1 -1
- package/dist/host/actor-host.js +6 -34
- package/dist/host/actor-host.js.map +1 -1
- package/dist/host/actor-worker.js +9 -14
- package/dist/host/actor-worker.js.map +1 -1
- package/dist/host/generic-host.d.ts.map +1 -1
- package/dist/host/generic-host.js +4 -5
- package/dist/host/generic-host.js.map +1 -1
- package/dist/host/protocol.d.ts +2 -4
- package/dist/host/protocol.d.ts.map +1 -1
- package/dist/host/protocol.js +1 -1
- package/dist/host/protocol.js.map +1 -1
- package/dist/host/types.d.ts +1 -8
- package/dist/host/types.d.ts.map +1 -1
- package/dist/host/validate-artifact.d.ts +2 -0
- package/dist/host/validate-artifact.d.ts.map +1 -0
- package/dist/host/validate-artifact.js +10 -0
- package/dist/host/validate-artifact.js.map +1 -0
- package/dist/host/worker-supervisor.d.ts +2 -28
- package/dist/host/worker-supervisor.d.ts.map +1 -1
- package/dist/host/worker-supervisor.js +4 -60
- package/dist/host/worker-supervisor.js.map +1 -1
- package/dist/json.d.ts +1 -1
- package/dist/json.d.ts.map +1 -1
- package/dist/json.js +1 -13
- package/dist/json.js.map +1 -1
- package/dist/localRuntime.d.ts +3 -3
- package/dist/localRuntime.d.ts.map +1 -1
- package/dist/localRuntime.js +13 -4
- package/dist/localRuntime.js.map +1 -1
- package/dist/projectSdk.d.ts +2 -0
- package/dist/projectSdk.d.ts.map +1 -0
- package/dist/projectSdk.js +19 -0
- package/dist/projectSdk.js.map +1 -0
- package/dist/proxy.d.ts +1 -51
- package/dist/proxy.d.ts.map +1 -1
- package/dist/proxy.js +1 -80
- package/dist/proxy.js.map +1 -1
- package/dist/templates/actor/README.md +6 -6
- package/dist/templates/actor/package.json +2 -2
- package/dist/templates/actor/pnpm-workspace.yaml +2 -0
- package/dist/templates/ai-chat/.env.example +0 -2
- package/dist/templates/ai-chat/README.md +5 -10
- package/dist/templates/ai-chat/package.json +1 -1
- package/dist/templates/ai-chat/pnpm-workspace.yaml +2 -0
- package/dist/templates/ai-chat/src/actors.ts +3 -8
- package/dist/templates/ai-chat/src/backend.ts +2 -12
- package/dist/templates/chat/.env.example +0 -2
- package/dist/templates/chat/README.md +1 -1
- package/dist/templates/chat/package.json +2 -2
- package/dist/templates/chat/pnpm-workspace.yaml +2 -0
- package/dist/templates/documents/.env.example +0 -2
- package/dist/templates/documents/README.md +1 -1
- package/dist/templates/documents/package.json +2 -2
- package/dist/templates/documents/pnpm-workspace.yaml +2 -0
- package/package.json +24 -21
- package/dist/client/actorHostGrpc.d.ts +0 -50
- package/dist/client/actorHostGrpc.d.ts.map +0 -1
- package/dist/client/actorHostGrpc.js +0 -111
- package/dist/client/actorHostGrpc.js.map +0 -1
- package/dist/generated/durable_actors/v1/ActivateActorReply.d.ts +0 -8
- package/dist/generated/durable_actors/v1/ActivateActorReply.d.ts.map +0 -1
- package/dist/generated/durable_actors/v1/ActivateActorReply.js +0 -3
- package/dist/generated/durable_actors/v1/ActivateActorReply.js.map +0 -1
- package/dist/generated/durable_actors/v1/ActivateActorRequest.d.ts +0 -8
- package/dist/generated/durable_actors/v1/ActivateActorRequest.d.ts.map +0 -1
- package/dist/generated/durable_actors/v1/ActivateActorRequest.js +0 -3
- package/dist/generated/durable_actors/v1/ActivateActorRequest.js.map +0 -1
- package/dist/generated/durable_actors/v1/ActorCompleted.d.ts +0 -9
- package/dist/generated/durable_actors/v1/ActorCompleted.d.ts.map +0 -1
- package/dist/generated/durable_actors/v1/ActorCompleted.js +0 -3
- package/dist/generated/durable_actors/v1/ActorCompleted.js.map +0 -1
- package/dist/generated/durable_actors/v1/ActorControlPlaneService.d.ts +0 -21
- package/dist/generated/durable_actors/v1/ActorControlPlaneService.d.ts.map +0 -1
- package/dist/generated/durable_actors/v1/ActorControlPlaneService.js +0 -3
- package/dist/generated/durable_actors/v1/ActorControlPlaneService.js.map +0 -1
- package/dist/generated/durable_actors/v1/ActorFailed.d.ts +0 -9
- package/dist/generated/durable_actors/v1/ActorFailed.d.ts.map +0 -1
- package/dist/generated/durable_actors/v1/ActorFailed.js +0 -3
- package/dist/generated/durable_actors/v1/ActorFailed.js.map +0 -1
- package/dist/generated/durable_actors/v1/ActorHostService.d.ts +0 -56
- package/dist/generated/durable_actors/v1/ActorHostService.d.ts.map +0 -1
- package/dist/generated/durable_actors/v1/ActorHostService.js +0 -3
- package/dist/generated/durable_actors/v1/ActorHostService.js.map +0 -1
- package/dist/generated/durable_actors/v1/ActorKey.d.ts +0 -11
- package/dist/generated/durable_actors/v1/ActorKey.d.ts.map +0 -1
- package/dist/generated/durable_actors/v1/ActorKey.js +0 -3
- package/dist/generated/durable_actors/v1/ActorKey.js.map +0 -1
- package/dist/generated/durable_actors/v1/ControlPlaneReply.d.ts +0 -7
- package/dist/generated/durable_actors/v1/ControlPlaneReply.d.ts.map +0 -1
- package/dist/generated/durable_actors/v1/ControlPlaneReply.js +0 -3
- package/dist/generated/durable_actors/v1/ControlPlaneReply.js.map +0 -1
- package/dist/generated/durable_actors/v1/ControlPlaneRequest.d.ts +0 -7
- package/dist/generated/durable_actors/v1/ControlPlaneRequest.d.ts.map +0 -1
- package/dist/generated/durable_actors/v1/ControlPlaneRequest.js +0 -3
- package/dist/generated/durable_actors/v1/ControlPlaneRequest.js.map +0 -1
- package/dist/generated/durable_actors/v1/Empty.d.ts +0 -5
- package/dist/generated/durable_actors/v1/Empty.d.ts.map +0 -1
- package/dist/generated/durable_actors/v1/Empty.js +0 -3
- package/dist/generated/durable_actors/v1/Empty.js.map +0 -1
- package/dist/generated/durable_actors/v1/HostInvokeActorRequest.d.ts +0 -11
- package/dist/generated/durable_actors/v1/HostInvokeActorRequest.d.ts.map +0 -1
- package/dist/generated/durable_actors/v1/HostInvokeActorRequest.js +0 -3
- package/dist/generated/durable_actors/v1/HostInvokeActorRequest.js.map +0 -1
- package/dist/generated/durable_actors/v1/HostSocketEventRequest.d.ts +0 -17
- package/dist/generated/durable_actors/v1/HostSocketEventRequest.d.ts.map +0 -1
- package/dist/generated/durable_actors/v1/HostSocketEventRequest.js +0 -3
- package/dist/generated/durable_actors/v1/HostSocketEventRequest.js.map +0 -1
- package/dist/generated/durable_actors/v1/InvokeActorReply.d.ts +0 -16
- package/dist/generated/durable_actors/v1/InvokeActorReply.d.ts.map +0 -1
- package/dist/generated/durable_actors/v1/InvokeActorReply.js +0 -3
- package/dist/generated/durable_actors/v1/InvokeActorReply.js.map +0 -1
- package/dist/generated/durable_actors/v1/InvokeActorRequest.d.ts +0 -14
- package/dist/generated/durable_actors/v1/InvokeActorRequest.d.ts.map +0 -1
- package/dist/generated/durable_actors/v1/InvokeActorRequest.js +0 -3
- package/dist/generated/durable_actors/v1/InvokeActorRequest.js.map +0 -1
- package/dist/generated/durable_actors/v1/PublishSocketEffectsRequest.d.ts +0 -13
- package/dist/generated/durable_actors/v1/PublishSocketEffectsRequest.d.ts.map +0 -1
- package/dist/generated/durable_actors/v1/PublishSocketEffectsRequest.js +0 -3
- package/dist/generated/durable_actors/v1/PublishSocketEffectsRequest.js.map +0 -1
- package/dist/generated/durable_actors/v1/ReplicaService.d.ts +0 -42
- package/dist/generated/durable_actors/v1/ReplicaService.d.ts.map +0 -1
- package/dist/generated/durable_actors/v1/ReplicaService.js +0 -3
- package/dist/generated/durable_actors/v1/ReplicaService.js.map +0 -1
- package/dist/generated/durable_actors/v1/ReplicaSessionHead.d.ts +0 -14
- package/dist/generated/durable_actors/v1/ReplicaSessionHead.d.ts.map +0 -1
- package/dist/generated/durable_actors/v1/ReplicaSessionHead.js +0 -3
- package/dist/generated/durable_actors/v1/ReplicaSessionHead.js.map +0 -1
- package/dist/generated/durable_actors/v1/ReplicaSnapshotRef.d.ts +0 -14
- package/dist/generated/durable_actors/v1/ReplicaSnapshotRef.d.ts.map +0 -1
- package/dist/generated/durable_actors/v1/ReplicaSnapshotRef.js +0 -3
- package/dist/generated/durable_actors/v1/ReplicaSnapshotRef.js.map +0 -1
- package/dist/generated/durable_actors/v1/ReplicaStreamHead.d.ts +0 -11
- package/dist/generated/durable_actors/v1/ReplicaStreamHead.d.ts.map +0 -1
- package/dist/generated/durable_actors/v1/ReplicaStreamHead.js +0 -3
- package/dist/generated/durable_actors/v1/ReplicaStreamHead.js.map +0 -1
- package/dist/generated/durable_actors/v1/ReplicaStreamIdentity.d.ts +0 -14
- package/dist/generated/durable_actors/v1/ReplicaStreamIdentity.d.ts.map +0 -1
- package/dist/generated/durable_actors/v1/ReplicaStreamIdentity.js +0 -3
- package/dist/generated/durable_actors/v1/ReplicaStreamIdentity.js.map +0 -1
- package/dist/generated/durable_actors/v1/Reroute.d.ts +0 -5
- package/dist/generated/durable_actors/v1/Reroute.d.ts.map +0 -1
- package/dist/generated/durable_actors/v1/Reroute.js +0 -3
- package/dist/generated/durable_actors/v1/Reroute.js.map +0 -1
- package/dist/generated/durable_actors/v1/SnapshotData.d.ts +0 -7
- package/dist/generated/durable_actors/v1/SnapshotData.d.ts.map +0 -1
- package/dist/generated/durable_actors/v1/SnapshotData.js +0 -3
- package/dist/generated/durable_actors/v1/SnapshotData.js.map +0 -1
- package/dist/generated/durable_actors/v1/SnapshotService.d.ts +0 -32
- package/dist/generated/durable_actors/v1/SnapshotService.d.ts.map +0 -1
- package/dist/generated/durable_actors/v1/SnapshotService.js +0 -3
- package/dist/generated/durable_actors/v1/SnapshotService.js.map +0 -1
- package/dist/generated/durable_actors/v1/SnapshotWriteReply.d.ts +0 -7
- package/dist/generated/durable_actors/v1/SnapshotWriteReply.d.ts.map +0 -1
- package/dist/generated/durable_actors/v1/SnapshotWriteReply.js +0 -3
- package/dist/generated/durable_actors/v1/SnapshotWriteReply.js.map +0 -1
- package/dist/generated/durable_actors.d.ts +0 -69
- package/dist/generated/durable_actors.d.ts.map +0 -1
- package/dist/generated/durable_actors.js +0 -2
- package/dist/generated/durable_actors.js.map +0 -1
- package/dist/generated/durable_actors.proto +0 -117
- package/dist/generated.browser.d.ts +0 -6
- package/dist/generated.browser.d.ts.map +0 -1
- package/dist/generated.browser.js +0 -10
- package/dist/generated.browser.js.map +0 -1
- package/dist/generated.d.ts +0 -3
- package/dist/generated.d.ts.map +0 -1
- package/dist/generated.js +0 -3
- package/dist/generated.js.map +0 -1
- package/dist/templates/actor/LICENSE.md +0 -9
- package/dist/templates/ai-chat/LICENSE.md +0 -9
- package/dist/templates/chat/LICENSE.md +0 -9
- package/dist/templates/documents/LICENSE.md +0 -9
|
@@ -2,29 +2,20 @@ import { Worker } from "node:worker_threads";
|
|
|
2
2
|
import { actorKey } from "../actor/identity.js";
|
|
3
3
|
import { errorMessage } from "../errors.js";
|
|
4
4
|
import { failedReply } from "./protocol.js";
|
|
5
|
-
const DEFAULT_ACTOR_IDLE_TIMEOUT_MS = 60_000;
|
|
6
5
|
class ActorWorkerSupervisor {
|
|
7
6
|
actorEntrypointUrl;
|
|
8
|
-
actorSchemas;
|
|
9
|
-
actorIdleTimeoutMs;
|
|
10
7
|
createWorker;
|
|
11
8
|
resident;
|
|
12
9
|
lastActiveActors = "[]";
|
|
13
10
|
activeActorListeners = new Set();
|
|
14
11
|
speculativeWorker;
|
|
15
|
-
speculativeTimer;
|
|
16
12
|
identity;
|
|
17
13
|
closed = false;
|
|
18
14
|
actorNames;
|
|
19
15
|
lastSequence = 0;
|
|
20
16
|
constructor(options) {
|
|
21
17
|
this.actorEntrypointUrl = options.actorEntrypointUrl;
|
|
22
|
-
this.actorSchemas = options.actorSchemas;
|
|
23
|
-
this.actorIdleTimeoutMs = options.actorIdleTimeoutMs ?? DEFAULT_ACTOR_IDLE_TIMEOUT_MS;
|
|
24
18
|
this.createWorker = options.createWorker ?? ((data, onStateChange) => new ActorWorker(data, onStateChange));
|
|
25
|
-
if (!Number.isInteger(this.actorIdleTimeoutMs) || this.actorIdleTimeoutMs <= 0) {
|
|
26
|
-
throw new Error("actor idle timeout must be a positive integer");
|
|
27
|
-
}
|
|
28
19
|
this.preload();
|
|
29
20
|
}
|
|
30
21
|
async ready() {
|
|
@@ -33,13 +24,7 @@ class ActorWorkerSupervisor {
|
|
|
33
24
|
if (this.actorNames !== undefined)
|
|
34
25
|
return this.actorNames;
|
|
35
26
|
const worker = this.speculativeWorker ?? this.preload();
|
|
36
|
-
if (this.speculativeTimer !== undefined)
|
|
37
|
-
clearTimeout(this.speculativeTimer);
|
|
38
27
|
this.actorNames = await worker.ready();
|
|
39
|
-
if (this.speculativeWorker === worker) {
|
|
40
|
-
this.speculativeTimer = setTimeout(() => this.discardPreload(worker), this.actorIdleTimeoutMs);
|
|
41
|
-
this.speculativeTimer.unref();
|
|
42
|
-
}
|
|
43
28
|
return this.actorNames;
|
|
44
29
|
}
|
|
45
30
|
async handle(command, allowNextInvocation, publish, connections) {
|
|
@@ -92,17 +77,15 @@ class ActorWorkerSupervisor {
|
|
|
92
77
|
this.resident = undefined;
|
|
93
78
|
}
|
|
94
79
|
preload() {
|
|
95
|
-
const worker = this.createWorker({ moduleUrl: this.actorEntrypointUrl
|
|
80
|
+
const worker = this.createWorker({ moduleUrl: this.actorEntrypointUrl }, () => this.notifyActiveActorsChange());
|
|
96
81
|
this.speculativeWorker = worker;
|
|
97
|
-
this.speculativeTimer = setTimeout(() => this.discardPreload(worker), this.actorIdleTimeoutMs);
|
|
98
|
-
this.speculativeTimer.unref();
|
|
99
82
|
void worker.ready().catch(() => this.discardPreload(worker));
|
|
100
83
|
return worker;
|
|
101
84
|
}
|
|
102
85
|
discardPreload(worker) {
|
|
103
86
|
if (this.speculativeWorker !== worker)
|
|
104
87
|
return;
|
|
105
|
-
this.takeSpeculativeWorker()?.terminate("
|
|
88
|
+
this.takeSpeculativeWorker()?.terminate("actor preload failed");
|
|
106
89
|
}
|
|
107
90
|
execute(command, allowNextInvocation, publish, connections) {
|
|
108
91
|
if (!this.actorNames?.includes(command.actor.actor_name)) {
|
|
@@ -116,11 +99,8 @@ class ActorWorkerSupervisor {
|
|
|
116
99
|
identity: command.actor,
|
|
117
100
|
sequenceBase: this.lastSequence,
|
|
118
101
|
moduleUrl: this.actorEntrypointUrl,
|
|
119
|
-
schemas: this.actorSchemas,
|
|
120
|
-
idleTimeoutMs: this.actorIdleTimeoutMs,
|
|
121
102
|
worker: this.takeSpeculativeWorker(),
|
|
122
103
|
createWorker: this.createWorker,
|
|
123
|
-
onIdle: candidate => this.removeIfCurrent(candidate),
|
|
124
104
|
onActiveActorsChange: () => this.notifyActiveActorsChange()
|
|
125
105
|
});
|
|
126
106
|
this.resident = actor;
|
|
@@ -140,16 +120,7 @@ class ActorWorkerSupervisor {
|
|
|
140
120
|
this.resident = undefined;
|
|
141
121
|
return { type: "evicted" };
|
|
142
122
|
}
|
|
143
|
-
removeIfCurrent(actor) {
|
|
144
|
-
if (this.resident !== actor || !actor.isIdle())
|
|
145
|
-
return;
|
|
146
|
-
this.resident = undefined;
|
|
147
|
-
actor.terminate(`resident actor was idle for ${this.actorIdleTimeoutMs}ms`);
|
|
148
|
-
}
|
|
149
123
|
takeSpeculativeWorker() {
|
|
150
|
-
if (this.speculativeTimer !== undefined)
|
|
151
|
-
clearTimeout(this.speculativeTimer);
|
|
152
|
-
this.speculativeTimer = undefined;
|
|
153
124
|
const worker = this.speculativeWorker;
|
|
154
125
|
this.speculativeWorker = undefined;
|
|
155
126
|
return worker;
|
|
@@ -159,35 +130,22 @@ class ResidentActorWorker {
|
|
|
159
130
|
identity;
|
|
160
131
|
sequenceBase;
|
|
161
132
|
moduleUrl;
|
|
162
|
-
schemas;
|
|
163
|
-
idleTimeoutMs;
|
|
164
133
|
createWorker;
|
|
165
|
-
onIdle;
|
|
166
|
-
lastCompletedAt = Date.now();
|
|
167
134
|
onActiveActorsChange;
|
|
168
135
|
worker;
|
|
169
|
-
idleTimer;
|
|
170
|
-
activeInvocations = 0;
|
|
171
136
|
constructor(options) {
|
|
172
137
|
this.identity = { ...options.identity };
|
|
173
138
|
this.sequenceBase = options.sequenceBase;
|
|
174
139
|
this.moduleUrl = options.moduleUrl;
|
|
175
|
-
this.schemas = options.schemas;
|
|
176
|
-
this.idleTimeoutMs = options.idleTimeoutMs;
|
|
177
140
|
this.createWorker = options.createWorker;
|
|
178
|
-
this.onIdle = options.onIdle;
|
|
179
141
|
this.onActiveActorsChange = options.onActiveActorsChange;
|
|
180
142
|
this.worker = options.worker;
|
|
181
143
|
}
|
|
182
144
|
async execute(command, allowNextInvocation, publish, connections) {
|
|
183
145
|
if (this.worker === undefined && command.resident_only)
|
|
184
146
|
return { type: "state_required" };
|
|
185
|
-
|
|
186
|
-
clearTimeout(this.idleTimer);
|
|
187
|
-
this.idleTimer = undefined;
|
|
188
|
-
this.worker ??= this.createWorker({ moduleUrl: this.moduleUrl, schemas: this.schemas }, this.onActiveActorsChange);
|
|
147
|
+
this.worker ??= this.createWorker({ moduleUrl: this.moduleUrl }, this.onActiveActorsChange);
|
|
189
148
|
const worker = this.worker;
|
|
190
|
-
this.activeInvocations++;
|
|
191
149
|
this.onActiveActorsChange();
|
|
192
150
|
let reply;
|
|
193
151
|
try {
|
|
@@ -196,10 +154,6 @@ class ResidentActorWorker {
|
|
|
196
154
|
catch (error) {
|
|
197
155
|
reply = failedReply(error instanceof ActorWorkerTerminatedError ? "actor_worker_terminated" : "actor_worker_failed", errorMessage(error));
|
|
198
156
|
}
|
|
199
|
-
finally {
|
|
200
|
-
this.activeInvocations--;
|
|
201
|
-
this.lastCompletedAt = Date.now();
|
|
202
|
-
}
|
|
203
157
|
if (this.worker !== worker)
|
|
204
158
|
return failedReply("actor_worker_terminated", "resident actor was terminated during invocation");
|
|
205
159
|
if (reply.type === "failed" &&
|
|
@@ -208,22 +162,12 @@ class ResidentActorWorker {
|
|
|
208
162
|
this.worker = undefined;
|
|
209
163
|
this.onActiveActorsChange();
|
|
210
164
|
}
|
|
211
|
-
if (this.activeInvocations === 0) {
|
|
212
|
-
this.idleTimer = setTimeout(() => this.onIdle(this), this.idleTimeoutMs);
|
|
213
|
-
this.idleTimer.unref();
|
|
214
|
-
}
|
|
215
165
|
return reply;
|
|
216
166
|
}
|
|
217
167
|
isActive() {
|
|
218
168
|
return this.worker?.state === "ready";
|
|
219
169
|
}
|
|
220
|
-
isIdle() {
|
|
221
|
-
return this.idleTimer !== undefined;
|
|
222
|
-
}
|
|
223
170
|
terminate(reason) {
|
|
224
|
-
if (this.idleTimer !== undefined)
|
|
225
|
-
clearTimeout(this.idleTimer);
|
|
226
|
-
this.idleTimer = undefined;
|
|
227
171
|
this.worker?.terminate(reason);
|
|
228
172
|
this.worker = undefined;
|
|
229
173
|
this.onActiveActorsChange();
|
|
@@ -419,5 +363,5 @@ class ActorWorkerTerminatedError extends Error {
|
|
|
419
363
|
this.name = "ActorWorkerTerminatedError";
|
|
420
364
|
}
|
|
421
365
|
}
|
|
422
|
-
export { ActorWorker, ActorWorkerSupervisor
|
|
366
|
+
export { ActorWorker, ActorWorkerSupervisor };
|
|
423
367
|
//# sourceMappingURL=worker-supervisor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker-supervisor.js","sourceRoot":"","sources":["../../src/host/worker-supervisor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"worker-supervisor.js","sourceRoot":"","sources":["../../src/host/worker-supervisor.ts"],"names":[],"mappings":"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"}
|
package/dist/json.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
+
import { cloneJson } from "./client-runtime/json.js";
|
|
2
3
|
type JsonPrimitive = string | number | boolean | null;
|
|
3
4
|
type JsonObject = {
|
|
4
5
|
readonly [key: string]: JsonValue;
|
|
5
6
|
};
|
|
6
7
|
type JsonValue = JsonPrimitive | JsonObject | readonly JsonValue[];
|
|
7
8
|
declare function cloneJsonObject(value: unknown, label: string): JsonObject;
|
|
8
|
-
declare function cloneJson(value: unknown, label: string): JsonValue;
|
|
9
9
|
declare function isJsonObject(value: JsonValue): value is JsonObject;
|
|
10
10
|
declare const jsonValueSchema: z.ZodType<JsonValue>;
|
|
11
11
|
export { cloneJson, cloneJsonObject, isJsonObject, jsonValueSchema };
|
package/dist/json.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../src/json.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;
|
|
1
|
+
{"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../src/json.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAGpD,KAAK,aAAa,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAA;AACrD,KAAK,UAAU,GAAG;IAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAAA;AACvD,KAAK,SAAS,GAAG,aAAa,GAAG,UAAU,GAAG,SAAS,SAAS,EAAE,CAAA;AAElE,iBAAS,eAAe,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,UAAU,CAIlE;AAED,iBAAS,YAAY,CAAC,KAAK,EAAE,SAAS,GAAG,KAAK,IAAI,UAAU,CAE3D;AAED,QAAA,MAAM,eAAe,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CASzC,CAAA;AAED,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,YAAY,EAAE,eAAe,EAAE,CAAA;AACpE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,CAAA"}
|
package/dist/json.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
+
import { cloneJson } from "./client-runtime/json.js";
|
|
2
3
|
import { ActorSerializationError } from "./errors.js";
|
|
3
4
|
function cloneJsonObject(value, label) {
|
|
4
5
|
const cloned = cloneJson(value, label);
|
|
@@ -6,19 +7,6 @@ function cloneJsonObject(value, label) {
|
|
|
6
7
|
throw new ActorSerializationError(`${label} must be a JSON object`);
|
|
7
8
|
return cloned;
|
|
8
9
|
}
|
|
9
|
-
function cloneJson(value, label) {
|
|
10
|
-
try {
|
|
11
|
-
const encoded = JSON.stringify(value);
|
|
12
|
-
if (encoded === undefined)
|
|
13
|
-
throw new ActorSerializationError(`${label} must be JSON serializable`);
|
|
14
|
-
return JSON.parse(encoded);
|
|
15
|
-
}
|
|
16
|
-
catch (error) {
|
|
17
|
-
if (error instanceof ActorSerializationError)
|
|
18
|
-
throw error;
|
|
19
|
-
throw new ActorSerializationError(`${label} must be JSON serializable`, { cause: error });
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
10
|
function isJsonObject(value) {
|
|
23
11
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
24
12
|
}
|
package/dist/json.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json.js","sourceRoot":"","sources":["../src/json.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAA;AAMrD,SAAS,eAAe,CAAC,KAAc,EAAE,KAAa;IAClD,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;IACtC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;QAAE,MAAM,IAAI,uBAAuB,CAAC,GAAG,KAAK,wBAAwB,CAAC,CAAA;IAC9F,OAAO,MAAM,CAAA;AACjB,CAAC;AAED,SAAS,
|
|
1
|
+
{"version":3,"file":"json.js","sourceRoot":"","sources":["../src/json.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAA;AAMrD,SAAS,eAAe,CAAC,KAAc,EAAE,KAAa;IAClD,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;IACtC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;QAAE,MAAM,IAAI,uBAAuB,CAAC,GAAG,KAAK,wBAAwB,CAAC,CAAA;IAC9F,OAAO,MAAM,CAAA;AACjB,CAAC;AAED,SAAS,YAAY,CAAC,KAAgB;IAClC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;AAC/E,CAAC;AAED,MAAM,eAAe,GAAyB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CACtD,CAAC,CAAC,KAAK,CAAC;IACJ,CAAC,CAAC,MAAM,EAAE;IACV,CAAC,CAAC,MAAM,EAAE;IACV,CAAC,CAAC,OAAO,EAAE;IACX,CAAC,CAAC,IAAI,EAAE;IACR,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC;IACxB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,eAAe,CAAC;CACxC,CAAC,CACL,CAAA;AAED,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,YAAY,EAAE,eAAe,EAAE,CAAA"}
|
package/dist/localRuntime.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export interface LocalActorOptions {
|
|
3
|
-
projectId
|
|
4
|
-
/**
|
|
3
|
+
projectId?: string;
|
|
4
|
+
/** Enables local authentication when set; omitted by default. */
|
|
5
5
|
apiKey?: string;
|
|
6
6
|
entrypoint: string;
|
|
7
7
|
/** Project directory; defaults to the current directory. */
|
|
@@ -17,7 +17,7 @@ export interface LocalActorOptions {
|
|
|
17
17
|
declare const connectionSchema: z.ZodObject<{
|
|
18
18
|
projectId: z.ZodString;
|
|
19
19
|
controlPlaneUrl: z.ZodString;
|
|
20
|
-
apiKey: z.ZodString
|
|
20
|
+
apiKey: z.ZodPipe<z.ZodOptional<z.ZodNullable<z.ZodString>>, z.ZodTransform<string | undefined, string | null | undefined>>;
|
|
21
21
|
storageRegion: z.ZodString;
|
|
22
22
|
pid: z.ZodNumber;
|
|
23
23
|
}, z.core.$strip>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"localRuntime.d.ts","sourceRoot":"","sources":["../src/localRuntime.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;
|
|
1
|
+
{"version":3,"file":"localRuntime.d.ts","sourceRoot":"","sources":["../src/localRuntime.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAOvB,MAAM,WAAW,iBAAiB;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,iEAAiE;IACjE,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,MAAM,CAAA;IAClB,4DAA4D;IAC5D,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,4EAA4E;IAC5E,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,0DAA0D;IAC1D,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,gDAAgD;IAChD,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,KAAK,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,QAAA,MAAM,gBAAgB;;;;;;iBAUpB,CAAA;AAEF,iDAAiD;AACjD,MAAM,WAAW,iBAAiB;IAC9B,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAA;IAC5C,6CAA6C;IAC7C,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAA;IACrB,8CAA8C;IAC9C,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CACxB;AAED,mDAAmD;AACnD,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAkB7F"}
|
package/dist/localRuntime.js
CHANGED
|
@@ -5,17 +5,27 @@ import { fileURLToPath } from "node:url";
|
|
|
5
5
|
import { z } from "zod";
|
|
6
6
|
import { validateProjectId } from "./actor/identity.js";
|
|
7
7
|
import { actorEnvironment } from "./environment.js";
|
|
8
|
+
import { projectSdkModule } from "./projectSdk.js";
|
|
8
9
|
import { fetchRuntimeExecutablePath } from "./runtimeInstaller.js";
|
|
9
10
|
const connectionSchema = z.object({
|
|
10
11
|
projectId: z.string().min(1),
|
|
11
12
|
controlPlaneUrl: z.string().url(),
|
|
12
|
-
apiKey: z
|
|
13
|
+
apiKey: z
|
|
14
|
+
.string()
|
|
15
|
+
.min(1)
|
|
16
|
+
.nullish()
|
|
17
|
+
.transform(value => value ?? undefined),
|
|
13
18
|
storageRegion: z.string().min(1),
|
|
14
19
|
pid: z.number().int().positive()
|
|
15
20
|
});
|
|
16
21
|
/** Starts a local server and waits until ready. */
|
|
17
22
|
export async function startLocalActors(options) {
|
|
18
|
-
|
|
23
|
+
if (options.projectId !== undefined)
|
|
24
|
+
validateProjectId(options.projectId);
|
|
25
|
+
const project = path.resolve(options.project ?? ".");
|
|
26
|
+
const local = await projectSdkModule(project, "./localRuntime.js", import.meta.url);
|
|
27
|
+
if (local !== undefined)
|
|
28
|
+
return (await import(local)).startLocalActors({ ...options, project });
|
|
19
29
|
const child = launch(await fetchRuntimeExecutablePath(), options);
|
|
20
30
|
const { closed, stop } = lifecycle(child);
|
|
21
31
|
try {
|
|
@@ -31,8 +41,7 @@ function launch(executable, options) {
|
|
|
31
41
|
const project = path.resolve(options.project ?? ".");
|
|
32
42
|
return spawn(executable, [
|
|
33
43
|
"dev",
|
|
34
|
-
"--project-id",
|
|
35
|
-
options.projectId,
|
|
44
|
+
...(options.projectId === undefined ? [] : ["--project-id", options.projectId]),
|
|
36
45
|
...(options.apiKey === undefined ? [] : ["--api-key", options.apiKey]),
|
|
37
46
|
"--project",
|
|
38
47
|
project,
|
package/dist/localRuntime.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"localRuntime.js","sourceRoot":"","sources":["../src/localRuntime.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,OAAO,EAAqB,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC7D,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAA;AAkBlE,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5B,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;IACjC,MAAM,EAAE,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"localRuntime.js","sourceRoot":"","sources":["../src/localRuntime.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"projectSdk.d.ts","sourceRoot":"","sources":["../src/projectSdk.ts"],"names":[],"mappings":"AAKA,wBAAsB,gBAAgB,CAClC,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAY7B"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { resolve } from "import-meta-resolve";
|
|
2
|
+
import { realpath } from "node:fs/promises";
|
|
3
|
+
import path from "node:path";
|
|
4
|
+
import { fileURLToPath, pathToFileURL } from "node:url";
|
|
5
|
+
export async function projectSdkModule(project, entrypoint, caller) {
|
|
6
|
+
let target;
|
|
7
|
+
try {
|
|
8
|
+
const parent = pathToFileURL(path.resolve(project, "package.json")).href;
|
|
9
|
+
const host = resolve("durable-actors/host", parent);
|
|
10
|
+
target = await realpath(fileURLToPath(new URL(entrypoint, host)));
|
|
11
|
+
}
|
|
12
|
+
catch (cause) {
|
|
13
|
+
throw new Error(`Cannot load the durable-actors SDK in ${project}. Run pnpm install in the actor project.`, {
|
|
14
|
+
cause
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
return target === (await realpath(fileURLToPath(caller))) ? undefined : pathToFileURL(target).href;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=projectSdk.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"projectSdk.js","sourceRoot":"","sources":["../src/projectSdk.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAEvD,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAClC,OAAe,EACf,UAAkB,EAClB,MAAc;IAEd,IAAI,MAAc,CAAA;IAClB,IAAI,CAAC;QACD,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,IAAI,CAAA;QACxE,MAAM,IAAI,GAAG,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAA;QACnD,MAAM,GAAG,MAAM,QAAQ,CAAC,aAAa,CAAC,IAAI,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;IACrE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,yCAAyC,OAAO,0CAA0C,EAAE;YACxG,KAAK;SACR,CAAC,CAAA;IACN,CAAC;IACD,OAAO,MAAM,KAAK,CAAC,MAAM,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,IAAI,CAAA;AACtG,CAAC"}
|
package/dist/proxy.d.ts
CHANGED
|
@@ -1,52 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
import { z } from "zod";
|
|
3
|
-
/** Overrides for the backend's DURABLE_ACTORS environment settings. */
|
|
4
|
-
interface SocketProxyOptions {
|
|
5
|
-
readonly projectId?: string;
|
|
6
|
-
readonly controlPlaneUrl?: string;
|
|
7
|
-
readonly apiKey?: string;
|
|
8
|
-
/** Defaults to 180000 ms; accepts 1000–600000 ms. */
|
|
9
|
-
readonly setupTimeoutMs?: number;
|
|
10
|
-
}
|
|
11
|
-
interface SocketProxyDependencies {
|
|
12
|
-
readonly fetch?: typeof globalThis.fetch;
|
|
13
|
-
}
|
|
14
|
-
interface ProxyActor<Metadata = unknown> {
|
|
15
|
-
readonly types?: Metadata;
|
|
16
|
-
}
|
|
17
|
-
/** Actor access your backend has already authorized. */
|
|
18
|
-
type SocketAuthorization<Actors extends Record<string, ProxyActor>> = {
|
|
19
|
-
[Name in keyof Actors & string]: {
|
|
20
|
-
readonly actorName: Name;
|
|
21
|
-
readonly actorId: string;
|
|
22
|
-
readonly metadata: Actors[Name] extends ProxyActor<infer Metadata> ? Metadata : never;
|
|
23
|
-
readonly homeRegion?: string;
|
|
24
|
-
readonly authorizationLifetimeMs?: number;
|
|
25
|
-
};
|
|
26
|
-
}[keyof Actors & string];
|
|
27
|
-
declare const socketGrantSchema: z.ZodObject<{
|
|
28
|
-
websocketUrl: z.ZodURL;
|
|
29
|
-
homeRegion: z.ZodString;
|
|
30
|
-
connectByMs: z.ZodNumber;
|
|
31
|
-
authorizedUntilMs: z.ZodNumber;
|
|
32
|
-
}, z.core.$strip>;
|
|
33
|
-
/** Browser connection URL and deadlines in Unix milliseconds. Treat the URL as a credential. */
|
|
34
|
-
type SocketGrant = z.infer<typeof socketGrantSchema>;
|
|
35
|
-
/** Issues browser connection URLs from your backend. */
|
|
36
|
-
declare class SocketProxy<Actors extends Record<string, ProxyActor>> {
|
|
37
|
-
private readonly actors;
|
|
38
|
-
private readonly projectId;
|
|
39
|
-
private readonly origin;
|
|
40
|
-
private readonly apiKey;
|
|
41
|
-
private readonly setupTimeoutMs;
|
|
42
|
-
private readonly fetchRequest;
|
|
43
|
-
constructor(actors: Actors, options?: SocketProxyOptions, dependencies?: SocketProxyDependencies);
|
|
44
|
-
/**
|
|
45
|
-
* Call after authenticating the user and checking actor access.
|
|
46
|
-
* Pass `websocketUrl` to the browser's `new WebSocket()`.
|
|
47
|
-
*/
|
|
48
|
-
handle(authorization: SocketAuthorization<Actors>): Promise<SocketGrant>;
|
|
49
|
-
}
|
|
50
|
-
export { SocketProxy };
|
|
51
|
-
export type { ProxyActor, SocketAuthorization, SocketGrant, SocketProxyDependencies, SocketProxyOptions };
|
|
1
|
+
export * from "./client-runtime/proxy.js";
|
|
52
2
|
//# sourceMappingURL=proxy.d.ts.map
|
package/dist/proxy.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proxy.d.ts","sourceRoot":"","sources":["../src/proxy.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"proxy.d.ts","sourceRoot":"","sources":["../src/proxy.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAA"}
|
package/dist/proxy.js
CHANGED
|
@@ -1,81 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
import { z } from "zod";
|
|
3
|
-
import { projectActorPath, validateActorComponent, validateProjectId } from "./actor/identity.js";
|
|
4
|
-
import { socketMetadata } from "./actor/socketValidation.js";
|
|
5
|
-
import { actorEnvironment } from "./environment.js";
|
|
6
|
-
const socketGrantSchema = z.object({
|
|
7
|
-
websocketUrl: z.url().refine(url => ["ws:", "wss:"].includes(new URL(url).protocol)),
|
|
8
|
-
homeRegion: z.string().min(1),
|
|
9
|
-
connectByMs: z.number().int(),
|
|
10
|
-
authorizedUntilMs: z.number().int()
|
|
11
|
-
});
|
|
12
|
-
/** Issues browser connection URLs from your backend. */
|
|
13
|
-
class SocketProxy {
|
|
14
|
-
actors;
|
|
15
|
-
projectId;
|
|
16
|
-
origin;
|
|
17
|
-
apiKey;
|
|
18
|
-
setupTimeoutMs;
|
|
19
|
-
fetchRequest;
|
|
20
|
-
constructor(actors, options = {}, dependencies = {}) {
|
|
21
|
-
this.actors = actors;
|
|
22
|
-
this.setupTimeoutMs = options.setupTimeoutMs ?? 180000;
|
|
23
|
-
if (!Number.isSafeInteger(this.setupTimeoutMs) || this.setupTimeoutMs < 1000 || this.setupTimeoutMs > 600000)
|
|
24
|
-
throw new Error("Socket setup timeout must be between one second and ten minutes");
|
|
25
|
-
const settings = proxySettings(options);
|
|
26
|
-
const url = new URL(settings.controlPlaneUrl);
|
|
27
|
-
if (!["https:", "http:"].includes(url.protocol) ||
|
|
28
|
-
url.pathname !== "/" ||
|
|
29
|
-
url.search ||
|
|
30
|
-
url.hash ||
|
|
31
|
-
url.username ||
|
|
32
|
-
url.password)
|
|
33
|
-
throw new Error("Control-plane URL must be an HTTP(S) origin");
|
|
34
|
-
this.origin = url.origin;
|
|
35
|
-
this.apiKey = settings.apiKey ?? "";
|
|
36
|
-
if (typeof this.apiKey !== "string" || !this.apiKey || this.apiKey.trim() !== this.apiKey)
|
|
37
|
-
throw new Error("A backend shared secret is required; set DURABLE_ACTORS_SECRET or pass apiKey");
|
|
38
|
-
this.projectId = validateProjectId(settings.projectId);
|
|
39
|
-
this.fetchRequest = dependencies.fetch ?? globalThis.fetch;
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* Call after authenticating the user and checking actor access.
|
|
43
|
-
* Pass `websocketUrl` to the browser's `new WebSocket()`.
|
|
44
|
-
*/
|
|
45
|
-
async handle(authorization) {
|
|
46
|
-
const actorName = validateActorComponent("actor name", authorization.actorName);
|
|
47
|
-
const actorId = validateActorComponent("actor ID", authorization.actorId);
|
|
48
|
-
if (!Object.hasOwn(this.actors, actorName))
|
|
49
|
-
throw new Error(`Unknown actor name: ${actorName}`);
|
|
50
|
-
const metadata = socketMetadata(authorization.metadata);
|
|
51
|
-
const authorizationLifetimeMs = authorization.authorizationLifetimeMs ?? 900000;
|
|
52
|
-
if (!Number.isSafeInteger(authorizationLifetimeMs) ||
|
|
53
|
-
authorizationLifetimeMs < 1000 ||
|
|
54
|
-
authorizationLifetimeMs > 86400000)
|
|
55
|
-
throw new Error("Socket authorization lifetime must be between one second and one day");
|
|
56
|
-
const homeRegion = authorization.homeRegion === undefined
|
|
57
|
-
? undefined
|
|
58
|
-
: validateActorComponent("home region", authorization.homeRegion);
|
|
59
|
-
const response = await this.fetchRequest(`${this.origin}${projectActorPath(this.projectId, actorName, actorId)}/find-websocket`, {
|
|
60
|
-
method: "POST",
|
|
61
|
-
headers: { authorization: `Bearer ${this.apiKey}`, "content-type": "application/json" },
|
|
62
|
-
body: JSON.stringify({ metadata, authorizationLifetimeMs, homeRegion }),
|
|
63
|
-
signal: AbortSignal.timeout(this.setupTimeoutMs)
|
|
64
|
-
});
|
|
65
|
-
if (!response.ok)
|
|
66
|
-
throw new Error(`WebSocket authorization could not be issued (HTTP ${response.status})`);
|
|
67
|
-
return socketGrantSchema.parse(await response.json());
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
function proxySettings(options) {
|
|
71
|
-
const environment = actorEnvironment(process.env);
|
|
72
|
-
const controlPlaneUrl = options.controlPlaneUrl ?? environment.DURABLE_ACTORS_CONTROL_PLANE_URL;
|
|
73
|
-
const apiKey = options.apiKey ?? environment.DURABLE_ACTORS_SECRET;
|
|
74
|
-
return {
|
|
75
|
-
projectId: options.projectId ?? environment.DURABLE_ACTORS_PROJECT_ID,
|
|
76
|
-
controlPlaneUrl: controlPlaneUrl ?? "http://127.0.0.1:7100",
|
|
77
|
-
apiKey
|
|
78
|
-
};
|
|
79
|
-
}
|
|
80
|
-
export { SocketProxy };
|
|
1
|
+
export * from "./client-runtime/proxy.js";
|
|
81
2
|
//# sourceMappingURL=proxy.js.map
|
package/dist/proxy.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proxy.js","sourceRoot":"","sources":["../src/proxy.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"proxy.js","sourceRoot":"","sources":["../src/proxy.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Actors
|
|
2
2
|
|
|
3
|
-
Requires Node.js 22.19.0+, pnpm, and Bun 1.
|
|
3
|
+
Requires Node.js 22.19.0+, pnpm, and Bun 1.3.9+ on your PATH.
|
|
4
4
|
|
|
5
5
|
```sh
|
|
6
6
|
pnpm install
|
|
@@ -9,15 +9,15 @@ pnpm exec durable-actors dev
|
|
|
9
9
|
|
|
10
10
|
Define your actors in `src/actors.ts`. The starter contains a counter with persisted state and `read()` and `increment()` methods. Each counter ID has its own saved value.
|
|
11
11
|
|
|
12
|
-
`durable-actors dev` watches your actor source and stores local state in `.durable-actors/`. It defaults to project ID `local`; choose another with `DURABLE_ACTORS_PROJECT_ID=my-project pnpm exec durable-actors dev`.
|
|
12
|
+
`pnpm exec durable-actors dev` watches your actor source and stores local state in `.durable-actors/`. It defaults to project ID `local`; choose another with `DURABLE_ACTORS_PROJECT_ID=my-project pnpm exec durable-actors dev`.
|
|
13
13
|
|
|
14
14
|
## Connect your application
|
|
15
15
|
|
|
16
16
|
In your separate application project's directory:
|
|
17
17
|
|
|
18
|
-
1. Run `pnpm add durable-actors`.
|
|
19
|
-
2.
|
|
20
|
-
3. Run `pnpm exec durable-actors generate
|
|
18
|
+
1. Run `pnpm add -D durable-actors`.
|
|
19
|
+
2. Use the local defaults: project `local`, URL `http://127.0.0.1:7100`, and no secret. If you configure a different project, port, or optional secret on the actor server, put matching settings in your application’s `.env` or `.env.local` file.
|
|
20
|
+
3. Run `pnpm exec durable-actors generate`; the CLI loads both automatically. Exported environment variables take precedence over `.env.local`, which takes precedence over `.env`.
|
|
21
21
|
|
|
22
22
|
Your application backend can then use the generated client:
|
|
23
23
|
|
|
@@ -28,6 +28,6 @@ const counter = actors.Counter.get("example")
|
|
|
28
28
|
console.log(await counter.increment())
|
|
29
29
|
```
|
|
30
30
|
|
|
31
|
-
Start your backend with that
|
|
31
|
+
Start your backend with that environment file loaded. Update its secret after restarting the actor server. If you change the actor server's URL or port, also set `DURABLE_ACTORS_CONTROL_PLANE_URL` in the backend environment. After changing actor method signatures, rerun the printed generate command in your application.
|
|
32
32
|
|
|
33
33
|
Use `pnpm check` to check types. Production deployment integrations register actor images through `PUT /v1/projects/{project_id}/deployment`; see the [HTTP API](https://github.com/TerseAI/durable-actors/blob/main/docs/reference/openapi.yaml).
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"name": "
|
|
2
|
+
"name": "durable-actors-example-actor",
|
|
3
3
|
"private": true,
|
|
4
4
|
"type": "module",
|
|
5
5
|
"engines": {
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
"check": "tsc --noEmit"
|
|
11
11
|
},
|
|
12
12
|
"dependencies": {
|
|
13
|
-
"durable-actors": "0.
|
|
13
|
+
"durable-actors": "0.4.0"
|
|
14
14
|
},
|
|
15
15
|
"devDependencies": {
|
|
16
16
|
"@types/node": "^22.0.0",
|