durable-actors 0.3.1 → 0.4.2

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 (262) hide show
  1. package/README.md +21 -15
  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 +1 -1
  10. package/dist/cli/control-plane.d.ts.map +1 -1
  11. package/dist/cli/control-plane.js +16 -12
  12. package/dist/cli/control-plane.js.map +1 -1
  13. package/dist/cli/dev.d.ts.map +1 -1
  14. package/dist/cli/dev.js +35 -3
  15. package/dist/cli/dev.js.map +1 -1
  16. package/dist/cli/generate.d.ts.map +1 -1
  17. package/dist/cli/generate.js +16 -9
  18. package/dist/cli/generate.js.map +1 -1
  19. package/dist/cli.js +18 -3
  20. package/dist/cli.js.map +1 -1
  21. package/dist/client/clientSettings.d.ts +1 -8
  22. package/dist/client/clientSettings.d.ts.map +1 -1
  23. package/dist/client/clientSettings.js +1 -51
  24. package/dist/client/clientSettings.js.map +1 -1
  25. package/dist/client/remoteClient.d.ts +4 -35
  26. package/dist/client/remoteClient.d.ts.map +1 -1
  27. package/dist/client/remoteClient.js +13 -201
  28. package/dist/client/remoteClient.js.map +1 -1
  29. package/dist/client/telemetry.d.ts +4 -12
  30. package/dist/client/telemetry.d.ts.map +1 -1
  31. package/dist/client/telemetry.js +3 -19
  32. package/dist/client/telemetry.js.map +1 -1
  33. package/dist/client-runtime/client.d.ts +45 -0
  34. package/dist/client-runtime/client.d.ts.map +1 -0
  35. package/dist/client-runtime/client.js +200 -0
  36. package/dist/client-runtime/client.js.map +1 -0
  37. package/dist/client-runtime/errors.d.ts +30 -0
  38. package/dist/client-runtime/errors.d.ts.map +1 -0
  39. package/dist/client-runtime/errors.js +55 -0
  40. package/dist/client-runtime/errors.js.map +1 -0
  41. package/dist/client-runtime/http.d.ts +45 -0
  42. package/dist/client-runtime/http.d.ts.map +1 -0
  43. package/dist/client-runtime/http.js +85 -0
  44. package/dist/client-runtime/http.js.map +1 -0
  45. package/dist/client-runtime/index.browser.d.ts +8 -0
  46. package/dist/client-runtime/index.browser.d.ts.map +1 -0
  47. package/dist/client-runtime/index.browser.js +14 -0
  48. package/dist/client-runtime/index.browser.js.map +1 -0
  49. package/dist/client-runtime/index.d.ts +6 -0
  50. package/dist/client-runtime/index.d.ts.map +1 -0
  51. package/dist/client-runtime/index.js +4 -0
  52. package/dist/client-runtime/index.js.map +1 -0
  53. package/dist/client-runtime/json.d.ts +9 -0
  54. package/dist/client-runtime/json.d.ts.map +1 -0
  55. package/dist/client-runtime/json.js +16 -0
  56. package/dist/client-runtime/json.js.map +1 -0
  57. package/dist/client-runtime/proxy.d.ts +49 -0
  58. package/dist/client-runtime/proxy.d.ts.map +1 -0
  59. package/dist/client-runtime/proxy.js +106 -0
  60. package/dist/client-runtime/proxy.js.map +1 -0
  61. package/dist/client-runtime/settings.d.ts +20 -0
  62. package/dist/client-runtime/settings.d.ts.map +1 -0
  63. package/dist/client-runtime/settings.js +60 -0
  64. package/dist/client-runtime/settings.js.map +1 -0
  65. package/dist/client-runtime/stub.d.ts +15 -0
  66. package/dist/client-runtime/stub.d.ts.map +1 -0
  67. package/dist/client-runtime/stub.js +44 -0
  68. package/dist/client-runtime/stub.js.map +1 -0
  69. package/dist/client-runtime/telemetry.d.ts +13 -0
  70. package/dist/client-runtime/telemetry.d.ts.map +1 -0
  71. package/dist/client-runtime/telemetry.js +18 -0
  72. package/dist/client-runtime/telemetry.js.map +1 -0
  73. package/dist/compiler/actor-build.js +1 -1
  74. package/dist/compiler/deployment-build.js +15 -0
  75. package/dist/compiler/deployment-build.js.map +1 -1
  76. package/dist/compiler/generators/backend-generator.js +4 -4
  77. package/dist/compiler/generators/backend-generator.js.map +1 -1
  78. package/dist/compiler/generators/client-generator.d.ts.map +1 -1
  79. package/dist/compiler/generators/client-generator.js +6 -19
  80. package/dist/compiler/generators/client-generator.js.map +1 -1
  81. package/dist/compiler/generators/typescript-generator.d.ts +1 -1
  82. package/dist/compiler/generators/typescript-generator.d.ts.map +1 -1
  83. package/dist/compiler/generators/typescript-generator.js +11 -8
  84. package/dist/compiler/generators/typescript-generator.js.map +1 -1
  85. package/dist/compiler/json-schema.d.ts.map +1 -1
  86. package/dist/compiler/json-schema.js +2 -1
  87. package/dist/compiler/json-schema.js.map +1 -1
  88. package/dist/errors.d.ts +1 -29
  89. package/dist/errors.d.ts.map +1 -1
  90. package/dist/errors.js +1 -54
  91. package/dist/errors.js.map +1 -1
  92. package/dist/generated/client-runtime.d.ts +2 -0
  93. package/dist/generated/client-runtime.d.ts.map +1 -0
  94. package/dist/generated/client-runtime.js +2 -0
  95. package/dist/generated/client-runtime.js.map +1 -0
  96. package/dist/host/actor-host.d.ts.map +1 -1
  97. package/dist/host/actor-host.js +4 -18
  98. package/dist/host/actor-host.js.map +1 -1
  99. package/dist/host/actor-worker.js +7 -1
  100. package/dist/host/actor-worker.js.map +1 -1
  101. package/dist/host/generic-host.d.ts.map +1 -1
  102. package/dist/host/generic-host.js +4 -5
  103. package/dist/host/generic-host.js.map +1 -1
  104. package/dist/host/protocol.d.ts +2 -2
  105. package/dist/host/protocol.js +1 -1
  106. package/dist/host/types.d.ts +1 -5
  107. package/dist/host/types.d.ts.map +1 -1
  108. package/dist/host/validate-artifact.d.ts +2 -0
  109. package/dist/host/validate-artifact.d.ts.map +1 -0
  110. package/dist/host/validate-artifact.js +10 -0
  111. package/dist/host/validate-artifact.js.map +1 -0
  112. package/dist/host/worker-supervisor.d.ts +2 -25
  113. package/dist/host/worker-supervisor.d.ts.map +1 -1
  114. package/dist/host/worker-supervisor.js +2 -53
  115. package/dist/host/worker-supervisor.js.map +1 -1
  116. package/dist/json.d.ts +1 -1
  117. package/dist/json.d.ts.map +1 -1
  118. package/dist/json.js +1 -13
  119. package/dist/json.js.map +1 -1
  120. package/dist/localRuntime.d.ts.map +1 -1
  121. package/dist/localRuntime.js +5 -0
  122. package/dist/localRuntime.js.map +1 -1
  123. package/dist/projectSdk.d.ts +2 -0
  124. package/dist/projectSdk.d.ts.map +1 -0
  125. package/dist/projectSdk.js +19 -0
  126. package/dist/projectSdk.js.map +1 -0
  127. package/dist/proxy.d.ts +1 -51
  128. package/dist/proxy.d.ts.map +1 -1
  129. package/dist/proxy.js +1 -71
  130. package/dist/proxy.js.map +1 -1
  131. package/dist/templates/actor/README.md +8 -8
  132. package/dist/templates/actor/package.json +2 -2
  133. package/dist/templates/actor/pnpm-workspace.yaml +2 -0
  134. package/dist/templates/ai-chat/README.md +5 -10
  135. package/dist/templates/ai-chat/package.json +1 -1
  136. package/dist/templates/ai-chat/pnpm-workspace.yaml +2 -0
  137. package/dist/templates/ai-chat/src/actors.ts +3 -8
  138. package/dist/templates/ai-chat/src/backend.ts +2 -12
  139. package/dist/templates/chat/README.md +1 -1
  140. package/dist/templates/chat/package.json +2 -2
  141. package/dist/templates/chat/pnpm-workspace.yaml +2 -0
  142. package/dist/templates/documents/README.md +1 -1
  143. package/dist/templates/documents/package.json +2 -2
  144. package/dist/templates/documents/pnpm-workspace.yaml +2 -0
  145. package/package.json +25 -22
  146. package/dist/client/actorHostGrpc.d.ts +0 -50
  147. package/dist/client/actorHostGrpc.d.ts.map +0 -1
  148. package/dist/client/actorHostGrpc.js +0 -111
  149. package/dist/client/actorHostGrpc.js.map +0 -1
  150. package/dist/generated/durable_actors/v1/ActivateActorReply.d.ts +0 -8
  151. package/dist/generated/durable_actors/v1/ActivateActorReply.d.ts.map +0 -1
  152. package/dist/generated/durable_actors/v1/ActivateActorReply.js +0 -3
  153. package/dist/generated/durable_actors/v1/ActivateActorReply.js.map +0 -1
  154. package/dist/generated/durable_actors/v1/ActivateActorRequest.d.ts +0 -8
  155. package/dist/generated/durable_actors/v1/ActivateActorRequest.d.ts.map +0 -1
  156. package/dist/generated/durable_actors/v1/ActivateActorRequest.js +0 -3
  157. package/dist/generated/durable_actors/v1/ActivateActorRequest.js.map +0 -1
  158. package/dist/generated/durable_actors/v1/ActorCompleted.d.ts +0 -9
  159. package/dist/generated/durable_actors/v1/ActorCompleted.d.ts.map +0 -1
  160. package/dist/generated/durable_actors/v1/ActorCompleted.js +0 -3
  161. package/dist/generated/durable_actors/v1/ActorCompleted.js.map +0 -1
  162. package/dist/generated/durable_actors/v1/ActorControlPlaneService.d.ts +0 -21
  163. package/dist/generated/durable_actors/v1/ActorControlPlaneService.d.ts.map +0 -1
  164. package/dist/generated/durable_actors/v1/ActorControlPlaneService.js +0 -3
  165. package/dist/generated/durable_actors/v1/ActorControlPlaneService.js.map +0 -1
  166. package/dist/generated/durable_actors/v1/ActorFailed.d.ts +0 -9
  167. package/dist/generated/durable_actors/v1/ActorFailed.d.ts.map +0 -1
  168. package/dist/generated/durable_actors/v1/ActorFailed.js +0 -3
  169. package/dist/generated/durable_actors/v1/ActorFailed.js.map +0 -1
  170. package/dist/generated/durable_actors/v1/ActorHostService.d.ts +0 -56
  171. package/dist/generated/durable_actors/v1/ActorHostService.d.ts.map +0 -1
  172. package/dist/generated/durable_actors/v1/ActorHostService.js +0 -3
  173. package/dist/generated/durable_actors/v1/ActorHostService.js.map +0 -1
  174. package/dist/generated/durable_actors/v1/ActorKey.d.ts +0 -11
  175. package/dist/generated/durable_actors/v1/ActorKey.d.ts.map +0 -1
  176. package/dist/generated/durable_actors/v1/ActorKey.js +0 -3
  177. package/dist/generated/durable_actors/v1/ActorKey.js.map +0 -1
  178. package/dist/generated/durable_actors/v1/ControlPlaneReply.d.ts +0 -7
  179. package/dist/generated/durable_actors/v1/ControlPlaneReply.d.ts.map +0 -1
  180. package/dist/generated/durable_actors/v1/ControlPlaneReply.js +0 -3
  181. package/dist/generated/durable_actors/v1/ControlPlaneReply.js.map +0 -1
  182. package/dist/generated/durable_actors/v1/ControlPlaneRequest.d.ts +0 -7
  183. package/dist/generated/durable_actors/v1/ControlPlaneRequest.d.ts.map +0 -1
  184. package/dist/generated/durable_actors/v1/ControlPlaneRequest.js +0 -3
  185. package/dist/generated/durable_actors/v1/ControlPlaneRequest.js.map +0 -1
  186. package/dist/generated/durable_actors/v1/Empty.d.ts +0 -5
  187. package/dist/generated/durable_actors/v1/Empty.d.ts.map +0 -1
  188. package/dist/generated/durable_actors/v1/Empty.js +0 -3
  189. package/dist/generated/durable_actors/v1/Empty.js.map +0 -1
  190. package/dist/generated/durable_actors/v1/HostInvokeActorRequest.d.ts +0 -11
  191. package/dist/generated/durable_actors/v1/HostInvokeActorRequest.d.ts.map +0 -1
  192. package/dist/generated/durable_actors/v1/HostInvokeActorRequest.js +0 -3
  193. package/dist/generated/durable_actors/v1/HostInvokeActorRequest.js.map +0 -1
  194. package/dist/generated/durable_actors/v1/HostSocketEventRequest.d.ts +0 -17
  195. package/dist/generated/durable_actors/v1/HostSocketEventRequest.d.ts.map +0 -1
  196. package/dist/generated/durable_actors/v1/HostSocketEventRequest.js +0 -3
  197. package/dist/generated/durable_actors/v1/HostSocketEventRequest.js.map +0 -1
  198. package/dist/generated/durable_actors/v1/InvokeActorReply.d.ts +0 -16
  199. package/dist/generated/durable_actors/v1/InvokeActorReply.d.ts.map +0 -1
  200. package/dist/generated/durable_actors/v1/InvokeActorReply.js +0 -3
  201. package/dist/generated/durable_actors/v1/InvokeActorReply.js.map +0 -1
  202. package/dist/generated/durable_actors/v1/InvokeActorRequest.d.ts +0 -14
  203. package/dist/generated/durable_actors/v1/InvokeActorRequest.d.ts.map +0 -1
  204. package/dist/generated/durable_actors/v1/InvokeActorRequest.js +0 -3
  205. package/dist/generated/durable_actors/v1/InvokeActorRequest.js.map +0 -1
  206. package/dist/generated/durable_actors/v1/PublishSocketEffectsRequest.d.ts +0 -13
  207. package/dist/generated/durable_actors/v1/PublishSocketEffectsRequest.d.ts.map +0 -1
  208. package/dist/generated/durable_actors/v1/PublishSocketEffectsRequest.js +0 -3
  209. package/dist/generated/durable_actors/v1/PublishSocketEffectsRequest.js.map +0 -1
  210. package/dist/generated/durable_actors/v1/ReplicaService.d.ts +0 -42
  211. package/dist/generated/durable_actors/v1/ReplicaService.d.ts.map +0 -1
  212. package/dist/generated/durable_actors/v1/ReplicaService.js +0 -3
  213. package/dist/generated/durable_actors/v1/ReplicaService.js.map +0 -1
  214. package/dist/generated/durable_actors/v1/ReplicaSessionHead.d.ts +0 -14
  215. package/dist/generated/durable_actors/v1/ReplicaSessionHead.d.ts.map +0 -1
  216. package/dist/generated/durable_actors/v1/ReplicaSessionHead.js +0 -3
  217. package/dist/generated/durable_actors/v1/ReplicaSessionHead.js.map +0 -1
  218. package/dist/generated/durable_actors/v1/ReplicaSnapshotRef.d.ts +0 -14
  219. package/dist/generated/durable_actors/v1/ReplicaSnapshotRef.d.ts.map +0 -1
  220. package/dist/generated/durable_actors/v1/ReplicaSnapshotRef.js +0 -3
  221. package/dist/generated/durable_actors/v1/ReplicaSnapshotRef.js.map +0 -1
  222. package/dist/generated/durable_actors/v1/ReplicaStreamHead.d.ts +0 -11
  223. package/dist/generated/durable_actors/v1/ReplicaStreamHead.d.ts.map +0 -1
  224. package/dist/generated/durable_actors/v1/ReplicaStreamHead.js +0 -3
  225. package/dist/generated/durable_actors/v1/ReplicaStreamHead.js.map +0 -1
  226. package/dist/generated/durable_actors/v1/ReplicaStreamIdentity.d.ts +0 -14
  227. package/dist/generated/durable_actors/v1/ReplicaStreamIdentity.d.ts.map +0 -1
  228. package/dist/generated/durable_actors/v1/ReplicaStreamIdentity.js +0 -3
  229. package/dist/generated/durable_actors/v1/ReplicaStreamIdentity.js.map +0 -1
  230. package/dist/generated/durable_actors/v1/Reroute.d.ts +0 -5
  231. package/dist/generated/durable_actors/v1/Reroute.d.ts.map +0 -1
  232. package/dist/generated/durable_actors/v1/Reroute.js +0 -3
  233. package/dist/generated/durable_actors/v1/Reroute.js.map +0 -1
  234. package/dist/generated/durable_actors/v1/SnapshotData.d.ts +0 -7
  235. package/dist/generated/durable_actors/v1/SnapshotData.d.ts.map +0 -1
  236. package/dist/generated/durable_actors/v1/SnapshotData.js +0 -3
  237. package/dist/generated/durable_actors/v1/SnapshotData.js.map +0 -1
  238. package/dist/generated/durable_actors/v1/SnapshotService.d.ts +0 -32
  239. package/dist/generated/durable_actors/v1/SnapshotService.d.ts.map +0 -1
  240. package/dist/generated/durable_actors/v1/SnapshotService.js +0 -3
  241. package/dist/generated/durable_actors/v1/SnapshotService.js.map +0 -1
  242. package/dist/generated/durable_actors/v1/SnapshotWriteReply.d.ts +0 -7
  243. package/dist/generated/durable_actors/v1/SnapshotWriteReply.d.ts.map +0 -1
  244. package/dist/generated/durable_actors/v1/SnapshotWriteReply.js +0 -3
  245. package/dist/generated/durable_actors/v1/SnapshotWriteReply.js.map +0 -1
  246. package/dist/generated/durable_actors.d.ts +0 -69
  247. package/dist/generated/durable_actors.d.ts.map +0 -1
  248. package/dist/generated/durable_actors.js +0 -2
  249. package/dist/generated/durable_actors.js.map +0 -1
  250. package/dist/generated/durable_actors.proto +0 -117
  251. package/dist/generated.browser.d.ts +0 -6
  252. package/dist/generated.browser.d.ts.map +0 -1
  253. package/dist/generated.browser.js +0 -10
  254. package/dist/generated.browser.js.map +0 -1
  255. package/dist/generated.d.ts +0 -3
  256. package/dist/generated.d.ts.map +0 -1
  257. package/dist/generated.js +0 -3
  258. package/dist/generated.js.map +0 -1
  259. package/dist/templates/actor/LICENSE.md +0 -9
  260. package/dist/templates/ai-chat/LICENSE.md +0 -9
  261. package/dist/templates/chat/LICENSE.md +0 -9
  262. package/dist/templates/documents/LICENSE.md +0 -9
@@ -1,16 +1,13 @@
1
1
  import type { ActorIdentity } from "../actor/identity.js";
2
2
  import type { ActorExecutorCommand, ActorExecutorReply, ActorWorkerData, HydrateCommand, InvokeCommand, WebSocketEventCommand } from "./protocol.js";
3
- import type { ActorWorkerFactory, ActorWorkerHandle, ActorWorkerState, ActorWorkerSupervisorOptions, ResidentActorWorkerOptions, SocketPublisher, SocketSource } from "./types.js";
4
- declare const DEFAULT_ACTOR_IDLE_TIMEOUT_MS = 60000;
3
+ import type { ActorWorkerHandle, ActorWorkerState, ActorWorkerSupervisorOptions, SocketPublisher, SocketSource } from "./types.js";
5
4
  declare class ActorWorkerSupervisor {
6
5
  private readonly actorEntrypointUrl;
7
- private readonly actorIdleTimeoutMs;
8
6
  private readonly createWorker;
9
7
  private resident;
10
8
  private lastActiveActors;
11
9
  private readonly activeActorListeners;
12
10
  private speculativeWorker;
13
- private speculativeTimer;
14
11
  private identity;
15
12
  private closed;
16
13
  private actorNames;
@@ -26,27 +23,8 @@ declare class ActorWorkerSupervisor {
26
23
  private discardPreload;
27
24
  private execute;
28
25
  private evict;
29
- private removeIfCurrent;
30
26
  private takeSpeculativeWorker;
31
27
  }
32
- declare class ResidentActorWorker {
33
- readonly identity: ActorIdentity;
34
- readonly sequenceBase: number;
35
- readonly moduleUrl: string;
36
- readonly idleTimeoutMs: number;
37
- readonly createWorker: ActorWorkerFactory;
38
- readonly onIdle: (actor: ResidentActorWorker) => void;
39
- lastCompletedAt: number;
40
- private readonly onActiveActorsChange;
41
- private worker;
42
- private idleTimer;
43
- private activeInvocations;
44
- constructor(options: ResidentActorWorkerOptions);
45
- execute(command: InvokeCommand | WebSocketEventCommand | HydrateCommand, allowNextInvocation: () => void, publish?: SocketPublisher, connections?: SocketSource): Promise<ActorExecutorReply>;
46
- isActive(): boolean;
47
- isIdle(): boolean;
48
- terminate(reason: string): void;
49
- }
50
28
  declare class ActorWorker implements ActorWorkerHandle {
51
29
  private onStateChange;
52
30
  private readonly worker;
@@ -77,6 +55,5 @@ declare class ActorWorker implements ActorWorkerHandle {
77
55
  private exited;
78
56
  private fail;
79
57
  }
80
- export { ActorWorker, ActorWorkerSupervisor, DEFAULT_ACTOR_IDLE_TIMEOUT_MS };
81
- export type { ResidentActorWorker };
58
+ export { ActorWorker, ActorWorkerSupervisor };
82
59
  //# sourceMappingURL=worker-supervisor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"worker-supervisor.d.ts","sourceRoot":"","sources":["../../src/host/worker-supervisor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worker-supervisor.d.ts","sourceRoot":"","sources":["../../src/host/worker-supervisor.ts"],"names":[],"mappings":"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"}
@@ -2,27 +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
- actorIdleTimeoutMs;
9
7
  createWorker;
10
8
  resident;
11
9
  lastActiveActors = "[]";
12
10
  activeActorListeners = new Set();
13
11
  speculativeWorker;
14
- speculativeTimer;
15
12
  identity;
16
13
  closed = false;
17
14
  actorNames;
18
15
  lastSequence = 0;
19
16
  constructor(options) {
20
17
  this.actorEntrypointUrl = options.actorEntrypointUrl;
21
- this.actorIdleTimeoutMs = options.actorIdleTimeoutMs ?? DEFAULT_ACTOR_IDLE_TIMEOUT_MS;
22
18
  this.createWorker = options.createWorker ?? ((data, onStateChange) => new ActorWorker(data, onStateChange));
23
- if (!Number.isInteger(this.actorIdleTimeoutMs) || this.actorIdleTimeoutMs <= 0) {
24
- throw new Error("actor idle timeout must be a positive integer");
25
- }
26
19
  this.preload();
27
20
  }
28
21
  async ready() {
@@ -31,13 +24,7 @@ class ActorWorkerSupervisor {
31
24
  if (this.actorNames !== undefined)
32
25
  return this.actorNames;
33
26
  const worker = this.speculativeWorker ?? this.preload();
34
- if (this.speculativeTimer !== undefined)
35
- clearTimeout(this.speculativeTimer);
36
27
  this.actorNames = await worker.ready();
37
- if (this.speculativeWorker === worker) {
38
- this.speculativeTimer = setTimeout(() => this.discardPreload(worker), this.actorIdleTimeoutMs);
39
- this.speculativeTimer.unref();
40
- }
41
28
  return this.actorNames;
42
29
  }
43
30
  async handle(command, allowNextInvocation, publish, connections) {
@@ -92,15 +79,13 @@ class ActorWorkerSupervisor {
92
79
  preload() {
93
80
  const worker = this.createWorker({ moduleUrl: this.actorEntrypointUrl }, () => this.notifyActiveActorsChange());
94
81
  this.speculativeWorker = worker;
95
- this.speculativeTimer = setTimeout(() => this.discardPreload(worker), this.actorIdleTimeoutMs);
96
- this.speculativeTimer.unref();
97
82
  void worker.ready().catch(() => this.discardPreload(worker));
98
83
  return worker;
99
84
  }
100
85
  discardPreload(worker) {
101
86
  if (this.speculativeWorker !== worker)
102
87
  return;
103
- this.takeSpeculativeWorker()?.terminate("unused actor preload expired or failed");
88
+ this.takeSpeculativeWorker()?.terminate("actor preload failed");
104
89
  }
105
90
  execute(command, allowNextInvocation, publish, connections) {
106
91
  if (!this.actorNames?.includes(command.actor.actor_name)) {
@@ -114,10 +99,8 @@ class ActorWorkerSupervisor {
114
99
  identity: command.actor,
115
100
  sequenceBase: this.lastSequence,
116
101
  moduleUrl: this.actorEntrypointUrl,
117
- idleTimeoutMs: this.actorIdleTimeoutMs,
118
102
  worker: this.takeSpeculativeWorker(),
119
103
  createWorker: this.createWorker,
120
- onIdle: candidate => this.removeIfCurrent(candidate),
121
104
  onActiveActorsChange: () => this.notifyActiveActorsChange()
122
105
  });
123
106
  this.resident = actor;
@@ -137,16 +120,7 @@ class ActorWorkerSupervisor {
137
120
  this.resident = undefined;
138
121
  return { type: "evicted" };
139
122
  }
140
- removeIfCurrent(actor) {
141
- if (this.resident !== actor || !actor.isIdle())
142
- return;
143
- this.resident = undefined;
144
- actor.terminate(`resident actor was idle for ${this.actorIdleTimeoutMs}ms`);
145
- }
146
123
  takeSpeculativeWorker() {
147
- if (this.speculativeTimer !== undefined)
148
- clearTimeout(this.speculativeTimer);
149
- this.speculativeTimer = undefined;
150
124
  const worker = this.speculativeWorker;
151
125
  this.speculativeWorker = undefined;
152
126
  return worker;
@@ -156,33 +130,22 @@ class ResidentActorWorker {
156
130
  identity;
157
131
  sequenceBase;
158
132
  moduleUrl;
159
- idleTimeoutMs;
160
133
  createWorker;
161
- onIdle;
162
- lastCompletedAt = Date.now();
163
134
  onActiveActorsChange;
164
135
  worker;
165
- idleTimer;
166
- activeInvocations = 0;
167
136
  constructor(options) {
168
137
  this.identity = { ...options.identity };
169
138
  this.sequenceBase = options.sequenceBase;
170
139
  this.moduleUrl = options.moduleUrl;
171
- this.idleTimeoutMs = options.idleTimeoutMs;
172
140
  this.createWorker = options.createWorker;
173
- this.onIdle = options.onIdle;
174
141
  this.onActiveActorsChange = options.onActiveActorsChange;
175
142
  this.worker = options.worker;
176
143
  }
177
144
  async execute(command, allowNextInvocation, publish, connections) {
178
145
  if (this.worker === undefined && command.resident_only)
179
146
  return { type: "state_required" };
180
- if (this.idleTimer !== undefined)
181
- clearTimeout(this.idleTimer);
182
- this.idleTimer = undefined;
183
147
  this.worker ??= this.createWorker({ moduleUrl: this.moduleUrl }, this.onActiveActorsChange);
184
148
  const worker = this.worker;
185
- this.activeInvocations++;
186
149
  this.onActiveActorsChange();
187
150
  let reply;
188
151
  try {
@@ -191,10 +154,6 @@ class ResidentActorWorker {
191
154
  catch (error) {
192
155
  reply = failedReply(error instanceof ActorWorkerTerminatedError ? "actor_worker_terminated" : "actor_worker_failed", errorMessage(error));
193
156
  }
194
- finally {
195
- this.activeInvocations--;
196
- this.lastCompletedAt = Date.now();
197
- }
198
157
  if (this.worker !== worker)
199
158
  return failedReply("actor_worker_terminated", "resident actor was terminated during invocation");
200
159
  if (reply.type === "failed" &&
@@ -203,22 +162,12 @@ class ResidentActorWorker {
203
162
  this.worker = undefined;
204
163
  this.onActiveActorsChange();
205
164
  }
206
- if (this.activeInvocations === 0) {
207
- this.idleTimer = setTimeout(() => this.onIdle(this), this.idleTimeoutMs);
208
- this.idleTimer.unref();
209
- }
210
165
  return reply;
211
166
  }
212
167
  isActive() {
213
168
  return this.worker?.state === "ready";
214
169
  }
215
- isIdle() {
216
- return this.idleTimer !== undefined;
217
- }
218
170
  terminate(reason) {
219
- if (this.idleTimer !== undefined)
220
- clearTimeout(this.idleTimer);
221
- this.idleTimer = undefined;
222
171
  this.worker?.terminate(reason);
223
172
  this.worker = undefined;
224
173
  this.onActiveActorsChange();
@@ -414,5 +363,5 @@ class ActorWorkerTerminatedError extends Error {
414
363
  this.name = "ActorWorkerTerminatedError";
415
364
  }
416
365
  }
417
- export { ActorWorker, ActorWorkerSupervisor, DEFAULT_ACTOR_IDLE_TIMEOUT_MS };
366
+ export { ActorWorker, ActorWorkerSupervisor };
418
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 +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,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,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,6 +5,7 @@ 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),
@@ -21,6 +22,10 @@ const connectionSchema = z.object({
21
22
  export async function startLocalActors(options) {
22
23
  if (options.projectId !== undefined)
23
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 });
24
29
  const child = launch(await fetchRuntimeExecutablePath(), options);
25
30
  const { closed, stop } = lifecycle(child);
26
31
  try {
@@ -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;AAOvB,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,CAAoB;IAC3C,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;IAY9C;;;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,72 +1,2 @@
1
- /** @module durable-actors/proxy */
2
- import { z } from "zod";
3
- import { projectActorPath, validateActorComponent } from "./actor/identity.js";
4
- import { socketMetadata } from "./actor/socketValidation.js";
5
- import { authorizationHeaders, configuredSettings } from "./client/clientSettings.js";
6
- import { actorEnvironment } from "./environment.js";
7
- const socketGrantSchema = z.object({
8
- websocketUrl: z.url().refine(url => ["ws:", "wss:"].includes(new URL(url).protocol)),
9
- homeRegion: z.string().min(1),
10
- connectByMs: z.number().int(),
11
- authorizedUntilMs: z.number().int()
12
- });
13
- /** Issues browser connection URLs from your backend. */
14
- class SocketProxy {
15
- actors;
16
- projectId;
17
- origin;
18
- apiKey;
19
- setupTimeoutMs;
20
- fetchRequest;
21
- constructor(actors, options = {}, dependencies = {}) {
22
- this.actors = actors;
23
- this.setupTimeoutMs = options.setupTimeoutMs ?? 180000;
24
- if (!Number.isSafeInteger(this.setupTimeoutMs) || this.setupTimeoutMs < 1000 || this.setupTimeoutMs > 600000)
25
- throw new Error("Socket setup timeout must be between one second and ten minutes");
26
- const settings = configuredSettings(proxySettings(options));
27
- this.origin = settings.controlPlaneUrl;
28
- this.apiKey = settings.credential;
29
- this.projectId = settings.projectId;
30
- this.fetchRequest = dependencies.fetch ?? globalThis.fetch;
31
- }
32
- /**
33
- * Call after authenticating the user and checking actor access.
34
- * Pass `websocketUrl` to the browser's `new WebSocket()`.
35
- */
36
- async handle(authorization) {
37
- const actorName = validateActorComponent("actor name", authorization.actorName);
38
- const actorId = validateActorComponent("actor ID", authorization.actorId);
39
- if (!Object.hasOwn(this.actors, actorName))
40
- throw new Error(`Unknown actor name: ${actorName}`);
41
- const metadata = socketMetadata(authorization.metadata);
42
- const authorizationLifetimeMs = authorization.authorizationLifetimeMs ?? 900000;
43
- if (!Number.isSafeInteger(authorizationLifetimeMs) ||
44
- authorizationLifetimeMs < 1000 ||
45
- authorizationLifetimeMs > 86400000)
46
- throw new Error("Socket authorization lifetime must be between one second and one day");
47
- const homeRegion = authorization.homeRegion === undefined
48
- ? undefined
49
- : validateActorComponent("home region", authorization.homeRegion);
50
- const response = await this.fetchRequest(`${this.origin}${projectActorPath(this.projectId, actorName, actorId)}/find-websocket`, {
51
- method: "POST",
52
- headers: { ...authorizationHeaders(this.apiKey), "content-type": "application/json" },
53
- body: JSON.stringify({ metadata, authorizationLifetimeMs, homeRegion }),
54
- signal: AbortSignal.timeout(this.setupTimeoutMs)
55
- });
56
- if (!response.ok)
57
- throw new Error(`WebSocket authorization could not be issued (HTTP ${response.status})`);
58
- return socketGrantSchema.parse(await response.json());
59
- }
60
- }
61
- function proxySettings(options) {
62
- const environment = actorEnvironment(process.env);
63
- const controlPlaneUrl = options.controlPlaneUrl ?? environment.DURABLE_ACTORS_CONTROL_PLANE_URL;
64
- const apiKey = options.apiKey ?? environment.DURABLE_ACTORS_SECRET;
65
- return {
66
- projectId: options.projectId ?? environment.DURABLE_ACTORS_PROJECT_ID,
67
- controlPlaneUrl: controlPlaneUrl ?? "http://127.0.0.1:7100",
68
- apiKey
69
- };
70
- }
71
- export { SocketProxy };
1
+ export * from "./client-runtime/proxy.js";
72
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,23 +1,25 @@
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
7
- pnpm exec durable-actors dev
7
+ # Or with npm:
8
+ npm install
9
+ npx durable-actors dev
8
10
  ```
9
11
 
10
12
  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
13
 
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.
14
+ `npx 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 npx durable-actors dev`.
13
15
 
14
16
  ## Connect your application
15
17
 
16
18
  In your separate application project's directory:
17
19
 
18
- 1. Run `pnpm add 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` file.
20
- 3. Run `pnpm exec durable-actors generate --remote`; the CLI loads `.env` automatically.
20
+ 1. Run `pnpm install --save-dev durable-actors` or `npm install --save-dev durable-actors`.
21
+ 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.
22
+ 3. Run `npx durable-actors generate`; the CLI loads both environment files automatically. Exported environment variables take precedence over `.env.local`, which takes precedence over `.env`.
21
23
 
22
24
  Your application backend can then use the generated client:
23
25
 
@@ -28,6 +30,4 @@ const counter = actors.Counter.get("example")
28
30
  console.log(await counter.increment())
29
31
  ```
30
32
 
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.
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).