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.
Files changed (280) hide show
  1. package/README.md +8 -19
  2. package/dist/backend.d.ts +3 -10
  3. package/dist/backend.d.ts.map +1 -1
  4. package/dist/backend.js +7 -34
  5. package/dist/backend.js.map +1 -1
  6. package/dist/cli/actor-source-watcher.d.ts.map +1 -1
  7. package/dist/cli/actor-source-watcher.js +6 -2
  8. package/dist/cli/actor-source-watcher.js.map +1 -1
  9. package/dist/cli/connection.d.ts +2 -2
  10. package/dist/cli/connection.d.ts.map +1 -1
  11. package/dist/cli/connection.js +2 -6
  12. package/dist/cli/connection.js.map +1 -1
  13. package/dist/cli/control-plane.d.ts +1 -1
  14. package/dist/cli/control-plane.d.ts.map +1 -1
  15. package/dist/cli/control-plane.js +11 -6
  16. package/dist/cli/control-plane.js.map +1 -1
  17. package/dist/cli/dev.d.ts.map +1 -1
  18. package/dist/cli/dev.js +51 -28
  19. package/dist/cli/dev.js.map +1 -1
  20. package/dist/cli/generate.d.ts.map +1 -1
  21. package/dist/cli/generate.js +16 -9
  22. package/dist/cli/generate.js.map +1 -1
  23. package/dist/cli.js +18 -3
  24. package/dist/cli.js.map +1 -1
  25. package/dist/client/clientSettings.d.ts +1 -7
  26. package/dist/client/clientSettings.d.ts.map +1 -1
  27. package/dist/client/clientSettings.js +1 -44
  28. package/dist/client/clientSettings.js.map +1 -1
  29. package/dist/client/remoteClient.d.ts +4 -35
  30. package/dist/client/remoteClient.d.ts.map +1 -1
  31. package/dist/client/remoteClient.js +14 -202
  32. package/dist/client/remoteClient.js.map +1 -1
  33. package/dist/client/telemetry.d.ts +4 -12
  34. package/dist/client/telemetry.d.ts.map +1 -1
  35. package/dist/client/telemetry.js +3 -19
  36. package/dist/client/telemetry.js.map +1 -1
  37. package/dist/client-runtime/client.d.ts +40 -0
  38. package/dist/client-runtime/client.d.ts.map +1 -0
  39. package/dist/client-runtime/client.js +183 -0
  40. package/dist/client-runtime/client.js.map +1 -0
  41. package/dist/client-runtime/errors.d.ts +30 -0
  42. package/dist/client-runtime/errors.d.ts.map +1 -0
  43. package/dist/client-runtime/errors.js +55 -0
  44. package/dist/client-runtime/errors.js.map +1 -0
  45. package/dist/client-runtime/http.d.ts +43 -0
  46. package/dist/client-runtime/http.d.ts.map +1 -0
  47. package/dist/client-runtime/http.js +63 -0
  48. package/dist/client-runtime/http.js.map +1 -0
  49. package/dist/client-runtime/index.browser.d.ts +8 -0
  50. package/dist/client-runtime/index.browser.d.ts.map +1 -0
  51. package/dist/client-runtime/index.browser.js +14 -0
  52. package/dist/client-runtime/index.browser.js.map +1 -0
  53. package/dist/client-runtime/index.d.ts +6 -0
  54. package/dist/client-runtime/index.d.ts.map +1 -0
  55. package/dist/client-runtime/index.js +4 -0
  56. package/dist/client-runtime/index.js.map +1 -0
  57. package/dist/client-runtime/json.d.ts +9 -0
  58. package/dist/client-runtime/json.d.ts.map +1 -0
  59. package/dist/client-runtime/json.js +16 -0
  60. package/dist/client-runtime/json.js.map +1 -0
  61. package/dist/client-runtime/proxy.d.ts +49 -0
  62. package/dist/client-runtime/proxy.d.ts.map +1 -0
  63. package/dist/client-runtime/proxy.js +106 -0
  64. package/dist/client-runtime/proxy.js.map +1 -0
  65. package/dist/client-runtime/settings.d.ts +20 -0
  66. package/dist/client-runtime/settings.d.ts.map +1 -0
  67. package/dist/client-runtime/settings.js +60 -0
  68. package/dist/client-runtime/settings.js.map +1 -0
  69. package/dist/client-runtime/stub.d.ts +15 -0
  70. package/dist/client-runtime/stub.d.ts.map +1 -0
  71. package/dist/client-runtime/stub.js +44 -0
  72. package/dist/client-runtime/stub.js.map +1 -0
  73. package/dist/client-runtime/telemetry.d.ts +13 -0
  74. package/dist/client-runtime/telemetry.d.ts.map +1 -0
  75. package/dist/client-runtime/telemetry.js +18 -0
  76. package/dist/client-runtime/telemetry.js.map +1 -0
  77. package/dist/compiler/actor-build.d.ts +8 -2
  78. package/dist/compiler/actor-build.d.ts.map +1 -1
  79. package/dist/compiler/actor-build.js +58 -4
  80. package/dist/compiler/actor-build.js.map +1 -1
  81. package/dist/compiler/actor-compiler.d.ts +11 -0
  82. package/dist/compiler/actor-compiler.d.ts.map +1 -1
  83. package/dist/compiler/actor-compiler.js +34 -22
  84. package/dist/compiler/actor-compiler.js.map +1 -1
  85. package/dist/compiler/deployment-build.js +18 -5
  86. package/dist/compiler/deployment-build.js.map +1 -1
  87. package/dist/compiler/generators/backend-generator.js +4 -4
  88. package/dist/compiler/generators/backend-generator.js.map +1 -1
  89. package/dist/compiler/generators/client-generator.d.ts.map +1 -1
  90. package/dist/compiler/generators/client-generator.js +6 -19
  91. package/dist/compiler/generators/client-generator.js.map +1 -1
  92. package/dist/compiler/generators/typescript-generator.d.ts +1 -1
  93. package/dist/compiler/generators/typescript-generator.d.ts.map +1 -1
  94. package/dist/compiler/generators/typescript-generator.js +11 -8
  95. package/dist/compiler/generators/typescript-generator.js.map +1 -1
  96. package/dist/compiler/json-schema.d.ts.map +1 -1
  97. package/dist/compiler/json-schema.js +2 -1
  98. package/dist/compiler/json-schema.js.map +1 -1
  99. package/dist/errors.d.ts +1 -29
  100. package/dist/errors.d.ts.map +1 -1
  101. package/dist/errors.js +1 -54
  102. package/dist/errors.js.map +1 -1
  103. package/dist/generated/client-runtime.d.ts +2 -0
  104. package/dist/generated/client-runtime.d.ts.map +1 -0
  105. package/dist/generated/client-runtime.js +2 -0
  106. package/dist/generated/client-runtime.js.map +1 -0
  107. package/dist/host/actor-host.d.ts +1 -3
  108. package/dist/host/actor-host.d.ts.map +1 -1
  109. package/dist/host/actor-host.js +6 -34
  110. package/dist/host/actor-host.js.map +1 -1
  111. package/dist/host/actor-worker.js +9 -14
  112. package/dist/host/actor-worker.js.map +1 -1
  113. package/dist/host/generic-host.d.ts.map +1 -1
  114. package/dist/host/generic-host.js +4 -5
  115. package/dist/host/generic-host.js.map +1 -1
  116. package/dist/host/protocol.d.ts +2 -4
  117. package/dist/host/protocol.d.ts.map +1 -1
  118. package/dist/host/protocol.js +1 -1
  119. package/dist/host/protocol.js.map +1 -1
  120. package/dist/host/types.d.ts +1 -8
  121. package/dist/host/types.d.ts.map +1 -1
  122. package/dist/host/validate-artifact.d.ts +2 -0
  123. package/dist/host/validate-artifact.d.ts.map +1 -0
  124. package/dist/host/validate-artifact.js +10 -0
  125. package/dist/host/validate-artifact.js.map +1 -0
  126. package/dist/host/worker-supervisor.d.ts +2 -28
  127. package/dist/host/worker-supervisor.d.ts.map +1 -1
  128. package/dist/host/worker-supervisor.js +4 -60
  129. package/dist/host/worker-supervisor.js.map +1 -1
  130. package/dist/json.d.ts +1 -1
  131. package/dist/json.d.ts.map +1 -1
  132. package/dist/json.js +1 -13
  133. package/dist/json.js.map +1 -1
  134. package/dist/localRuntime.d.ts +3 -3
  135. package/dist/localRuntime.d.ts.map +1 -1
  136. package/dist/localRuntime.js +13 -4
  137. package/dist/localRuntime.js.map +1 -1
  138. package/dist/projectSdk.d.ts +2 -0
  139. package/dist/projectSdk.d.ts.map +1 -0
  140. package/dist/projectSdk.js +19 -0
  141. package/dist/projectSdk.js.map +1 -0
  142. package/dist/proxy.d.ts +1 -51
  143. package/dist/proxy.d.ts.map +1 -1
  144. package/dist/proxy.js +1 -80
  145. package/dist/proxy.js.map +1 -1
  146. package/dist/templates/actor/README.md +6 -6
  147. package/dist/templates/actor/package.json +2 -2
  148. package/dist/templates/actor/pnpm-workspace.yaml +2 -0
  149. package/dist/templates/ai-chat/.env.example +0 -2
  150. package/dist/templates/ai-chat/README.md +5 -10
  151. package/dist/templates/ai-chat/package.json +1 -1
  152. package/dist/templates/ai-chat/pnpm-workspace.yaml +2 -0
  153. package/dist/templates/ai-chat/src/actors.ts +3 -8
  154. package/dist/templates/ai-chat/src/backend.ts +2 -12
  155. package/dist/templates/chat/.env.example +0 -2
  156. package/dist/templates/chat/README.md +1 -1
  157. package/dist/templates/chat/package.json +2 -2
  158. package/dist/templates/chat/pnpm-workspace.yaml +2 -0
  159. package/dist/templates/documents/.env.example +0 -2
  160. package/dist/templates/documents/README.md +1 -1
  161. package/dist/templates/documents/package.json +2 -2
  162. package/dist/templates/documents/pnpm-workspace.yaml +2 -0
  163. package/package.json +24 -21
  164. package/dist/client/actorHostGrpc.d.ts +0 -50
  165. package/dist/client/actorHostGrpc.d.ts.map +0 -1
  166. package/dist/client/actorHostGrpc.js +0 -111
  167. package/dist/client/actorHostGrpc.js.map +0 -1
  168. package/dist/generated/durable_actors/v1/ActivateActorReply.d.ts +0 -8
  169. package/dist/generated/durable_actors/v1/ActivateActorReply.d.ts.map +0 -1
  170. package/dist/generated/durable_actors/v1/ActivateActorReply.js +0 -3
  171. package/dist/generated/durable_actors/v1/ActivateActorReply.js.map +0 -1
  172. package/dist/generated/durable_actors/v1/ActivateActorRequest.d.ts +0 -8
  173. package/dist/generated/durable_actors/v1/ActivateActorRequest.d.ts.map +0 -1
  174. package/dist/generated/durable_actors/v1/ActivateActorRequest.js +0 -3
  175. package/dist/generated/durable_actors/v1/ActivateActorRequest.js.map +0 -1
  176. package/dist/generated/durable_actors/v1/ActorCompleted.d.ts +0 -9
  177. package/dist/generated/durable_actors/v1/ActorCompleted.d.ts.map +0 -1
  178. package/dist/generated/durable_actors/v1/ActorCompleted.js +0 -3
  179. package/dist/generated/durable_actors/v1/ActorCompleted.js.map +0 -1
  180. package/dist/generated/durable_actors/v1/ActorControlPlaneService.d.ts +0 -21
  181. package/dist/generated/durable_actors/v1/ActorControlPlaneService.d.ts.map +0 -1
  182. package/dist/generated/durable_actors/v1/ActorControlPlaneService.js +0 -3
  183. package/dist/generated/durable_actors/v1/ActorControlPlaneService.js.map +0 -1
  184. package/dist/generated/durable_actors/v1/ActorFailed.d.ts +0 -9
  185. package/dist/generated/durable_actors/v1/ActorFailed.d.ts.map +0 -1
  186. package/dist/generated/durable_actors/v1/ActorFailed.js +0 -3
  187. package/dist/generated/durable_actors/v1/ActorFailed.js.map +0 -1
  188. package/dist/generated/durable_actors/v1/ActorHostService.d.ts +0 -56
  189. package/dist/generated/durable_actors/v1/ActorHostService.d.ts.map +0 -1
  190. package/dist/generated/durable_actors/v1/ActorHostService.js +0 -3
  191. package/dist/generated/durable_actors/v1/ActorHostService.js.map +0 -1
  192. package/dist/generated/durable_actors/v1/ActorKey.d.ts +0 -11
  193. package/dist/generated/durable_actors/v1/ActorKey.d.ts.map +0 -1
  194. package/dist/generated/durable_actors/v1/ActorKey.js +0 -3
  195. package/dist/generated/durable_actors/v1/ActorKey.js.map +0 -1
  196. package/dist/generated/durable_actors/v1/ControlPlaneReply.d.ts +0 -7
  197. package/dist/generated/durable_actors/v1/ControlPlaneReply.d.ts.map +0 -1
  198. package/dist/generated/durable_actors/v1/ControlPlaneReply.js +0 -3
  199. package/dist/generated/durable_actors/v1/ControlPlaneReply.js.map +0 -1
  200. package/dist/generated/durable_actors/v1/ControlPlaneRequest.d.ts +0 -7
  201. package/dist/generated/durable_actors/v1/ControlPlaneRequest.d.ts.map +0 -1
  202. package/dist/generated/durable_actors/v1/ControlPlaneRequest.js +0 -3
  203. package/dist/generated/durable_actors/v1/ControlPlaneRequest.js.map +0 -1
  204. package/dist/generated/durable_actors/v1/Empty.d.ts +0 -5
  205. package/dist/generated/durable_actors/v1/Empty.d.ts.map +0 -1
  206. package/dist/generated/durable_actors/v1/Empty.js +0 -3
  207. package/dist/generated/durable_actors/v1/Empty.js.map +0 -1
  208. package/dist/generated/durable_actors/v1/HostInvokeActorRequest.d.ts +0 -11
  209. package/dist/generated/durable_actors/v1/HostInvokeActorRequest.d.ts.map +0 -1
  210. package/dist/generated/durable_actors/v1/HostInvokeActorRequest.js +0 -3
  211. package/dist/generated/durable_actors/v1/HostInvokeActorRequest.js.map +0 -1
  212. package/dist/generated/durable_actors/v1/HostSocketEventRequest.d.ts +0 -17
  213. package/dist/generated/durable_actors/v1/HostSocketEventRequest.d.ts.map +0 -1
  214. package/dist/generated/durable_actors/v1/HostSocketEventRequest.js +0 -3
  215. package/dist/generated/durable_actors/v1/HostSocketEventRequest.js.map +0 -1
  216. package/dist/generated/durable_actors/v1/InvokeActorReply.d.ts +0 -16
  217. package/dist/generated/durable_actors/v1/InvokeActorReply.d.ts.map +0 -1
  218. package/dist/generated/durable_actors/v1/InvokeActorReply.js +0 -3
  219. package/dist/generated/durable_actors/v1/InvokeActorReply.js.map +0 -1
  220. package/dist/generated/durable_actors/v1/InvokeActorRequest.d.ts +0 -14
  221. package/dist/generated/durable_actors/v1/InvokeActorRequest.d.ts.map +0 -1
  222. package/dist/generated/durable_actors/v1/InvokeActorRequest.js +0 -3
  223. package/dist/generated/durable_actors/v1/InvokeActorRequest.js.map +0 -1
  224. package/dist/generated/durable_actors/v1/PublishSocketEffectsRequest.d.ts +0 -13
  225. package/dist/generated/durable_actors/v1/PublishSocketEffectsRequest.d.ts.map +0 -1
  226. package/dist/generated/durable_actors/v1/PublishSocketEffectsRequest.js +0 -3
  227. package/dist/generated/durable_actors/v1/PublishSocketEffectsRequest.js.map +0 -1
  228. package/dist/generated/durable_actors/v1/ReplicaService.d.ts +0 -42
  229. package/dist/generated/durable_actors/v1/ReplicaService.d.ts.map +0 -1
  230. package/dist/generated/durable_actors/v1/ReplicaService.js +0 -3
  231. package/dist/generated/durable_actors/v1/ReplicaService.js.map +0 -1
  232. package/dist/generated/durable_actors/v1/ReplicaSessionHead.d.ts +0 -14
  233. package/dist/generated/durable_actors/v1/ReplicaSessionHead.d.ts.map +0 -1
  234. package/dist/generated/durable_actors/v1/ReplicaSessionHead.js +0 -3
  235. package/dist/generated/durable_actors/v1/ReplicaSessionHead.js.map +0 -1
  236. package/dist/generated/durable_actors/v1/ReplicaSnapshotRef.d.ts +0 -14
  237. package/dist/generated/durable_actors/v1/ReplicaSnapshotRef.d.ts.map +0 -1
  238. package/dist/generated/durable_actors/v1/ReplicaSnapshotRef.js +0 -3
  239. package/dist/generated/durable_actors/v1/ReplicaSnapshotRef.js.map +0 -1
  240. package/dist/generated/durable_actors/v1/ReplicaStreamHead.d.ts +0 -11
  241. package/dist/generated/durable_actors/v1/ReplicaStreamHead.d.ts.map +0 -1
  242. package/dist/generated/durable_actors/v1/ReplicaStreamHead.js +0 -3
  243. package/dist/generated/durable_actors/v1/ReplicaStreamHead.js.map +0 -1
  244. package/dist/generated/durable_actors/v1/ReplicaStreamIdentity.d.ts +0 -14
  245. package/dist/generated/durable_actors/v1/ReplicaStreamIdentity.d.ts.map +0 -1
  246. package/dist/generated/durable_actors/v1/ReplicaStreamIdentity.js +0 -3
  247. package/dist/generated/durable_actors/v1/ReplicaStreamIdentity.js.map +0 -1
  248. package/dist/generated/durable_actors/v1/Reroute.d.ts +0 -5
  249. package/dist/generated/durable_actors/v1/Reroute.d.ts.map +0 -1
  250. package/dist/generated/durable_actors/v1/Reroute.js +0 -3
  251. package/dist/generated/durable_actors/v1/Reroute.js.map +0 -1
  252. package/dist/generated/durable_actors/v1/SnapshotData.d.ts +0 -7
  253. package/dist/generated/durable_actors/v1/SnapshotData.d.ts.map +0 -1
  254. package/dist/generated/durable_actors/v1/SnapshotData.js +0 -3
  255. package/dist/generated/durable_actors/v1/SnapshotData.js.map +0 -1
  256. package/dist/generated/durable_actors/v1/SnapshotService.d.ts +0 -32
  257. package/dist/generated/durable_actors/v1/SnapshotService.d.ts.map +0 -1
  258. package/dist/generated/durable_actors/v1/SnapshotService.js +0 -3
  259. package/dist/generated/durable_actors/v1/SnapshotService.js.map +0 -1
  260. package/dist/generated/durable_actors/v1/SnapshotWriteReply.d.ts +0 -7
  261. package/dist/generated/durable_actors/v1/SnapshotWriteReply.d.ts.map +0 -1
  262. package/dist/generated/durable_actors/v1/SnapshotWriteReply.js +0 -3
  263. package/dist/generated/durable_actors/v1/SnapshotWriteReply.js.map +0 -1
  264. package/dist/generated/durable_actors.d.ts +0 -69
  265. package/dist/generated/durable_actors.d.ts.map +0 -1
  266. package/dist/generated/durable_actors.js +0 -2
  267. package/dist/generated/durable_actors.js.map +0 -1
  268. package/dist/generated/durable_actors.proto +0 -117
  269. package/dist/generated.browser.d.ts +0 -6
  270. package/dist/generated.browser.d.ts.map +0 -1
  271. package/dist/generated.browser.js +0 -10
  272. package/dist/generated.browser.js.map +0 -1
  273. package/dist/generated.d.ts +0 -3
  274. package/dist/generated.d.ts.map +0 -1
  275. package/dist/generated.js +0 -3
  276. package/dist/generated.js.map +0 -1
  277. package/dist/templates/actor/LICENSE.md +0 -9
  278. package/dist/templates/ai-chat/LICENSE.md +0 -9
  279. package/dist/templates/chat/LICENSE.md +0 -9
  280. 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, schemas: this.actorSchemas }, () => this.notifyActiveActorsChange());
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("unused actor preload expired or failed");
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
- if (this.idleTimer !== undefined)
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, DEFAULT_ACTOR_IDLE_TIMEOUT_MS };
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 };
@@ -1 +1 @@
1
- {"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../src/json.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAIvB,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,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,CAS3D;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"}
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,SAAS,CAAC,KAAc,EAAE,KAAa;IAC5C,IAAI,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;QACrC,IAAI,OAAO,KAAK,SAAS;YAAE,MAAM,IAAI,uBAAuB,CAAC,GAAG,KAAK,4BAA4B,CAAC,CAAA;QAClG,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAc,CAAA;IAC3C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,IAAI,KAAK,YAAY,uBAAuB;YAAE,MAAM,KAAK,CAAA;QACzD,MAAM,IAAI,uBAAuB,CAAC,GAAG,KAAK,4BAA4B,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAA;IAC7F,CAAC;AACL,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"}
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"}
@@ -1,7 +1,7 @@
1
1
  import { z } from "zod";
2
2
  export interface LocalActorOptions {
3
- projectId: string;
4
- /** Generated if omitted; available in `runtime.connection`. */
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;AAMvB,MAAM,WAAW,iBAAiB;IAC9B,SAAS,EAAE,MAAM,CAAA;IACjB,+DAA+D;IAC/D,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;;;;;;iBAMpB,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,CAe7F"}
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"}
@@ -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.string().min(1),
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
- validateProjectId(options.projectId);
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,
@@ -1 +1 @@
1
- {"version":3,"file":"localRuntime.js","sourceRoot":"","sources":["../src/localRuntime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"localRuntime.js","sourceRoot":"","sources":["../src/localRuntime.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function projectSdkModule(project: string, entrypoint: string, caller: string): Promise<string | undefined>;
2
+ //# sourceMappingURL=projectSdk.d.ts.map
@@ -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
- /** @module durable-actors/proxy */
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
@@ -1 +1 @@
1
- {"version":3,"file":"proxy.d.ts","sourceRoot":"","sources":["../src/proxy.ts"],"names":[],"mappings":"AAAA,mCAAmC;AACnC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAMvB,uEAAuE;AACvE,UAAU,kBAAkB;IACxB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAA;IACjC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,qDAAqD;IACrD,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAA;CACnC;AAED,UAAU,uBAAuB;IAC7B,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAA;CAC3C;AAED,UAAU,UAAU,CAAC,QAAQ,GAAG,OAAO;IACnC,QAAQ,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAA;CAC5B;AAED,wDAAwD;AACxD,KAAK,mBAAmB,CAAC,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,IAAI;KACjE,IAAI,IAAI,MAAM,MAAM,GAAG,MAAM,GAAG;QAC7B,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAA;QACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;QACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,UAAU,CAAC,MAAM,QAAQ,CAAC,GAAG,QAAQ,GAAG,KAAK,CAAA;QACrF,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;QAC5B,QAAQ,CAAC,uBAAuB,CAAC,EAAE,MAAM,CAAA;KAC5C;CACJ,CAAC,MAAM,MAAM,GAAG,MAAM,CAAC,CAAA;AAExB,QAAA,MAAM,iBAAiB;;;;;iBAKrB,CAAA;AAEF,gGAAgG;AAChG,KAAK,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAEpD,wDAAwD;AACxD,cAAM,WAAW,CAAC,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC;IAQnD,OAAO,CAAC,QAAQ,CAAC,MAAM;IAP3B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAQ;IAClC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAQ;IAC/B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAQ;IAC/B,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAQ;IACvC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAyB;gBAGjC,MAAM,EAAE,MAAM,EAC/B,OAAO,GAAE,kBAAuB,EAChC,YAAY,GAAE,uBAA4B;IAwB9C;;;OAGG;IACG,MAAM,CAAC,aAAa,EAAE,mBAAmB,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC;CA4BjF;AAaD,OAAO,EAAE,WAAW,EAAE,CAAA;AACtB,YAAY,EAAE,UAAU,EAAE,mBAAmB,EAAE,WAAW,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,CAAA"}
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
- /** @module durable-actors/proxy */
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":"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"}
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.4.2+ on your PATH.
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`. If the CLI is installed globally, you can run `durable-actors dev` directly.
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. Copy the project ID, URL, and shared secret printed by the actor server into your application’s `.env` file.
20
- 3. Run `pnpm exec durable-actors generate --remote`; the CLI loads `.env` automatically.
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 `.env` 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.
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": "my-actors",
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.3.0"
13
+ "durable-actors": "0.4.0"
14
14
  },
15
15
  "devDependencies": {
16
16
  "@types/node": "^22.0.0",
@@ -0,0 +1,2 @@
1
+ allowBuilds:
2
+ esbuild: true