durable-actors 0.7.16 → 0.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (175) hide show
  1. package/README.md +6 -6
  2. package/bin/durable-actors.js +2 -0
  3. package/dist/actor/actor.d.ts +20 -12
  4. package/dist/actor/actor.d.ts.map +1 -1
  5. package/dist/actor/actor.js +42 -35
  6. package/dist/actor/actor.js.map +1 -1
  7. package/dist/actor/alarm.d.ts +19 -0
  8. package/dist/actor/alarm.d.ts.map +1 -0
  9. package/dist/actor/alarm.js +2 -0
  10. package/dist/actor/alarm.js.map +1 -0
  11. package/dist/actor/context.d.ts +25 -0
  12. package/dist/actor/context.d.ts.map +1 -0
  13. package/dist/actor/context.js +83 -0
  14. package/dist/actor/context.js.map +1 -0
  15. package/dist/actor/database.d.ts +5 -4
  16. package/dist/actor/database.d.ts.map +1 -1
  17. package/dist/actor/database.js +9 -19
  18. package/dist/actor/database.js.map +1 -1
  19. package/dist/actor/decorators.d.ts +7 -2
  20. package/dist/actor/decorators.d.ts.map +1 -1
  21. package/dist/actor/decorators.js +11 -2
  22. package/dist/actor/decorators.js.map +1 -1
  23. package/dist/actor/resource.d.ts +9 -0
  24. package/dist/actor/resource.d.ts.map +1 -0
  25. package/dist/actor/resource.js +2 -0
  26. package/dist/actor/resource.js.map +1 -0
  27. package/dist/actor/schema.d.ts +3 -1
  28. package/dist/actor/schema.d.ts.map +1 -1
  29. package/dist/actor/schema.js.map +1 -1
  30. package/dist/actor/unchecked.d.ts +12 -0
  31. package/dist/actor/unchecked.d.ts.map +1 -0
  32. package/dist/actor/unchecked.js +8 -0
  33. package/dist/actor/unchecked.js.map +1 -0
  34. package/dist/cli/dev.d.ts.map +1 -1
  35. package/dist/cli/dev.js +13 -42
  36. package/dist/cli/dev.js.map +1 -1
  37. package/dist/cli/inspect.d.ts +73 -0
  38. package/dist/cli/inspect.d.ts.map +1 -0
  39. package/dist/cli/inspect.js +132 -0
  40. package/dist/cli/inspect.js.map +1 -0
  41. package/dist/cli/python.d.ts.map +1 -1
  42. package/dist/cli/python.js +0 -1
  43. package/dist/cli/python.js.map +1 -1
  44. package/dist/cli.d.ts +1 -1
  45. package/dist/cli.js +11 -18
  46. package/dist/cli.js.map +1 -1
  47. package/dist/client-runtime/http.d.ts +1 -1
  48. package/dist/client-runtime/http.d.ts.map +1 -1
  49. package/dist/client-runtime/http.js +1 -1
  50. package/dist/client-runtime/http.js.map +1 -1
  51. package/dist/client-runtime/stub.d.ts.map +1 -1
  52. package/dist/client-runtime/stub.js +11 -1
  53. package/dist/client-runtime/stub.js.map +1 -1
  54. package/dist/compiler/actor-compiler.d.ts +4 -2
  55. package/dist/compiler/actor-compiler.d.ts.map +1 -1
  56. package/dist/compiler/actor-compiler.js +48 -13
  57. package/dist/compiler/actor-compiler.js.map +1 -1
  58. package/dist/compiler/declarations.d.ts.map +1 -1
  59. package/dist/compiler/declarations.js +2678 -183
  60. package/dist/compiler/declarations.js.map +7 -1
  61. package/dist/compiler/features/atomicity.d.ts +9 -0
  62. package/dist/compiler/features/atomicity.d.ts.map +1 -0
  63. package/dist/compiler/features/atomicity.js +44 -0
  64. package/dist/compiler/features/atomicity.js.map +1 -0
  65. package/dist/compiler/features/interleave.d.ts +9 -0
  66. package/dist/compiler/features/{reentrancy.d.ts.map → interleave.d.ts.map} +1 -1
  67. package/dist/compiler/features/{reentrancy.js → interleave.js} +13 -13
  68. package/dist/compiler/features/{reentrancy.js.map → interleave.js.map} +1 -1
  69. package/dist/compiler/features/persistence.d.ts +2 -5
  70. package/dist/compiler/features/persistence.d.ts.map +1 -1
  71. package/dist/compiler/features/persistence.js +5 -83
  72. package/dist/compiler/features/persistence.js.map +1 -1
  73. package/dist/compiler/features/resource.d.ts +5 -0
  74. package/dist/compiler/features/resource.d.ts.map +1 -0
  75. package/dist/compiler/features/resource.js +18 -0
  76. package/dist/compiler/features/resource.js.map +1 -0
  77. package/dist/compiler/fieldParsing.d.ts +12 -0
  78. package/dist/compiler/fieldParsing.d.ts.map +1 -0
  79. package/dist/compiler/fieldParsing.js +106 -0
  80. package/dist/compiler/fieldParsing.js.map +1 -0
  81. package/dist/compiler/json-schema.d.ts +2 -2
  82. package/dist/compiler/json-schema.d.ts.map +1 -1
  83. package/dist/compiler/json-schema.js +22 -14
  84. package/dist/compiler/json-schema.js.map +1 -1
  85. package/dist/compiler/rpc-contract.d.ts +1 -1
  86. package/dist/compiler/rpc-contract.d.ts.map +1 -1
  87. package/dist/compiler/rpc-contract.js +21 -11
  88. package/dist/compiler/rpc-contract.js.map +1 -1
  89. package/dist/compiler/socket-contract.d.ts +1 -1
  90. package/dist/compiler/socket-contract.d.ts.map +1 -1
  91. package/dist/compiler/socket-contract.js +3 -3
  92. package/dist/compiler/socket-contract.js.map +1 -1
  93. package/dist/compiler/types.d.ts +13 -3
  94. package/dist/compiler/types.d.ts.map +1 -1
  95. package/dist/compiler/types.js +3 -1
  96. package/dist/compiler/types.js.map +1 -1
  97. package/dist/compiler/validate-public-contract.d.ts.map +1 -1
  98. package/dist/compiler/validate-public-contract.js +12 -1
  99. package/dist/compiler/validate-public-contract.js.map +1 -1
  100. package/dist/generated/client-runtime.d.ts.map +1 -1
  101. package/dist/generated/client-runtime.js +1 -1
  102. package/dist/generated/client-runtime.js.map +1 -1
  103. package/dist/host/actor-host.d.ts.map +1 -1
  104. package/dist/host/actor-host.js +44 -50
  105. package/dist/host/actor-host.js.map +1 -1
  106. package/dist/host/actor-runtime.d.ts +7 -8
  107. package/dist/host/actor-runtime.d.ts.map +1 -1
  108. package/dist/host/actor-runtime.js +80 -79
  109. package/dist/host/actor-runtime.js.map +1 -1
  110. package/dist/host/actor-worker.js +10 -27
  111. package/dist/host/actor-worker.js.map +1 -1
  112. package/dist/host/database-bridge.d.ts +16 -0
  113. package/dist/host/database-bridge.d.ts.map +1 -0
  114. package/dist/host/database-bridge.js +29 -0
  115. package/dist/host/database-bridge.js.map +1 -0
  116. package/dist/host/database.d.ts +86 -0
  117. package/dist/host/database.d.ts.map +1 -0
  118. package/dist/host/database.js +87 -0
  119. package/dist/host/database.js.map +1 -0
  120. package/dist/host/generic-host.js +1 -1
  121. package/dist/host/persisted-fields.d.ts +7 -0
  122. package/dist/host/persisted-fields.d.ts.map +1 -0
  123. package/dist/host/persisted-fields.js +29 -0
  124. package/dist/host/persisted-fields.js.map +1 -0
  125. package/dist/host/protocol.d.ts +55 -131
  126. package/dist/host/protocol.d.ts.map +1 -1
  127. package/dist/host/protocol.js +28 -28
  128. package/dist/host/protocol.js.map +1 -1
  129. package/dist/host/types.d.ts +8 -9
  130. package/dist/host/types.d.ts.map +1 -1
  131. package/dist/host/worker-supervisor.d.ts +32 -30
  132. package/dist/host/worker-supervisor.d.ts.map +1 -1
  133. package/dist/host/worker-supervisor.js +246 -230
  134. package/dist/host/worker-supervisor.js.map +1 -1
  135. package/dist/index.d.ts +5 -2
  136. package/dist/index.d.ts.map +1 -1
  137. package/dist/index.js +2 -1
  138. package/dist/index.js.map +1 -1
  139. package/dist/projectSdk.js +1 -1
  140. package/dist/projectSdk.js.map +1 -1
  141. package/dist/templates/actor/README.md +7 -9
  142. package/dist/templates/actor/bunfig +2 -0
  143. package/dist/templates/actor/package.json +6 -3
  144. package/dist/templates/ai-chat/README.md +8 -8
  145. package/dist/templates/ai-chat/bunfig +2 -0
  146. package/dist/templates/ai-chat/package.json +7 -5
  147. package/dist/templates/ai-chat/src/actors.ts +1 -1
  148. package/dist/templates/chat/README.md +8 -8
  149. package/dist/templates/chat/bunfig +2 -0
  150. package/dist/templates/chat/package.json +7 -5
  151. package/dist/templates/chat/src/actors.ts +1 -1
  152. package/dist/templates/documents/README.md +8 -8
  153. package/dist/templates/documents/bunfig +2 -0
  154. package/dist/templates/documents/package.json +7 -5
  155. package/dist/templates/documents/src/actors.ts +1 -1
  156. package/package.json +110 -108
  157. package/dist/cli/actor-source-watcher.d.ts +0 -25
  158. package/dist/cli/actor-source-watcher.d.ts.map +0 -1
  159. package/dist/cli/actor-source-watcher.js +0 -129
  160. package/dist/cli/actor-source-watcher.js.map +0 -1
  161. package/dist/compiler/features/reentrancy.d.ts +0 -9
  162. package/dist/host/sqlite.d.ts +0 -49
  163. package/dist/host/sqlite.d.ts.map +0 -1
  164. package/dist/host/sqlite.js +0 -159
  165. package/dist/host/sqlite.js.map +0 -1
  166. package/dist/templates/actor/pnpm-workspace.yaml +0 -2
  167. package/dist/templates/ai-chat/pnpm-workspace.yaml +0 -2
  168. package/dist/templates/chat/pnpm-workspace.yaml +0 -2
  169. package/dist/templates/documents/pnpm-workspace.yaml +0 -2
  170. package/dist/templates/python/README.md +0 -7
  171. package/dist/templates/python/gitignore +0 -6
  172. package/dist/templates/python/package.json +0 -11
  173. package/dist/templates/python/pnpm-workspace.yaml +0 -2
  174. package/dist/templates/python/pyproject.toml +0 -8
  175. package/dist/templates/python/src/actors.py +0 -9
@@ -1,14 +1,19 @@
1
+ import { ActorResource } from "./resource.js";
2
+ /** Marks a method for whole-call transactions. Currently all non-interleaved calls use this behavior. */
3
+ declare function Atomic(_value: Function, context: ClassMethodDecoratorContext): void;
1
4
  /**
2
5
  * Lets other calls run during awaits. State may change while waiting.
3
6
  * Disables error rollback for the whole actor class. State is saved on successful completion.
4
7
  * @experimental
5
8
  */
6
9
  declare function Interleave(_value: Function, context: ClassMethodDecoratorContext): void;
7
- /** Saves a field after successful calls. Cannot decorate `#private` fields. */
10
+ /** Writes assignments to SQLite; reassign objects and arrays to save changes. Commits after successful calls. */
8
11
  declare function Persisted(_value: undefined, context: ClassFieldDecoratorContext): void;
9
12
  /** Marks a temporary field that may reset between calls. */
10
13
  declare function Ephemeral(_value: undefined, context: ClassFieldDecoratorContext): void;
11
14
  /** Sends browser state updates for a public `@Persisted` field. */
12
15
  declare function Emittable(_value: undefined, context: ClassFieldDecoratorContext): void;
13
- export { Emittable, Ephemeral, Interleave, Persisted };
16
+ /** Marks a property as being a Resource. Includes them in Actor Lifecycle */
17
+ declare function Resource<This, Value extends ActorResource>(_value: undefined, context: ClassFieldDecoratorContext<This, Value>): void;
18
+ export { Atomic, Emittable, Ephemeral, Interleave, Persisted, Resource };
14
19
  //# sourceMappingURL=decorators.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"decorators.d.ts","sourceRoot":"","sources":["../../src/actor/decorators.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,iBAAS,UAAU,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,2BAA2B,GAAG,IAAI,CAGhF;AAED,+EAA+E;AAC/E,iBAAS,SAAS,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,0BAA0B,GAAG,IAAI,CAG/E;AAED,4DAA4D;AAC5D,iBAAS,SAAS,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,0BAA0B,GAAG,IAAI,CAE/E;AAED,mEAAmE;AACnE,iBAAS,SAAS,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,0BAA0B,GAAG,IAAI,CAG/E;AAOD,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,CAAA"}
1
+ {"version":3,"file":"decorators.d.ts","sourceRoot":"","sources":["../../src/actor/decorators.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAE7C,yGAAyG;AACzG,iBAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,2BAA2B,GAAG,IAAI,CAG5E;AAED;;;;GAIG;AACH,iBAAS,UAAU,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,2BAA2B,GAAG,IAAI,CAGhF;AAED,iHAAiH;AACjH,iBAAS,SAAS,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,0BAA0B,GAAG,IAAI,CAG/E;AAED,4DAA4D;AAC5D,iBAAS,SAAS,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,0BAA0B,GAAG,IAAI,CAE/E;AAED,mEAAmE;AACnE,iBAAS,SAAS,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,0BAA0B,GAAG,IAAI,CAG/E;AAED,6EAA6E;AAC7E,iBAAS,QAAQ,CAAC,IAAI,EAAE,KAAK,SAAS,aAAa,EAC/C,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,0BAA0B,CAAC,IAAI,EAAE,KAAK,CAAC,GACjD,IAAI,CAEN;AAOD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAA"}
@@ -1,4 +1,9 @@
1
1
  import { ActorDefinitionError } from "../errors.js";
2
+ /** Marks a method for whole-call transactions. Currently all non-interleaved calls use this behavior. */
3
+ function Atomic(_value, context) {
4
+ if (context.kind !== "method" || context.static || context.private || typeof context.name !== "string")
5
+ throw new ActorDefinitionError("@Atomic requires a public instance async method");
6
+ }
2
7
  /**
3
8
  * Lets other calls run during awaits. State may change while waiting.
4
9
  * Disables error rollback for the whole actor class. State is saved on successful completion.
@@ -8,7 +13,7 @@ function Interleave(_value, context) {
8
13
  if (context.kind !== "method" || context.static || context.private || typeof context.name !== "string")
9
14
  throw new ActorDefinitionError("@Interleave requires a public instance async method");
10
15
  }
11
- /** Saves a field after successful calls. Cannot decorate `#private` fields. */
16
+ /** Writes assignments to SQLite; reassign objects and arrays to save changes. Commits after successful calls. */
12
17
  function Persisted(_value, context) {
13
18
  validateField("Persisted", context);
14
19
  if (context.private)
@@ -24,9 +29,13 @@ function Emittable(_value, context) {
24
29
  if (context.private)
25
30
  throw new ActorDefinitionError("@Emittable requires a public field");
26
31
  }
32
+ /** Marks a property as being a Resource. Includes them in Actor Lifecycle */
33
+ function Resource(_value, context) {
34
+ validateField("Resource", context);
35
+ }
27
36
  function validateField(name, context) {
28
37
  if (context.kind !== "field" || context.static || typeof context.name !== "string")
29
38
  throw new ActorDefinitionError(`@${name} requires an instance field with a string name`);
30
39
  }
31
- export { Emittable, Ephemeral, Interleave, Persisted };
40
+ export { Atomic, Emittable, Ephemeral, Interleave, Persisted, Resource };
32
41
  //# sourceMappingURL=decorators.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../src/actor/decorators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AAEnD;;;;GAIG;AACH,SAAS,UAAU,CAAC,MAAgB,EAAE,OAAoC;IACtE,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,OAAO,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ;QAClG,MAAM,IAAI,oBAAoB,CAAC,qDAAqD,CAAC,CAAA;AAC7F,CAAC;AAED,+EAA+E;AAC/E,SAAS,SAAS,CAAC,MAAiB,EAAE,OAAmC;IACrE,aAAa,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;IACnC,IAAI,OAAO,CAAC,OAAO;QAAE,MAAM,IAAI,oBAAoB,CAAC,uDAAuD,CAAC,CAAA;AAChH,CAAC;AAED,4DAA4D;AAC5D,SAAS,SAAS,CAAC,MAAiB,EAAE,OAAmC;IACrE,aAAa,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;AACvC,CAAC;AAED,mEAAmE;AACnE,SAAS,SAAS,CAAC,MAAiB,EAAE,OAAmC;IACrE,aAAa,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;IACnC,IAAI,OAAO,CAAC,OAAO;QAAE,MAAM,IAAI,oBAAoB,CAAC,oCAAoC,CAAC,CAAA;AAC7F,CAAC;AAED,SAAS,aAAa,CAAC,IAAY,EAAE,OAAmC;IACpE,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,IAAI,OAAO,CAAC,MAAM,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ;QAC9E,MAAM,IAAI,oBAAoB,CAAC,IAAI,IAAI,gDAAgD,CAAC,CAAA;AAChG,CAAC;AAED,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,CAAA"}
1
+ {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../src/actor/decorators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AAInD,yGAAyG;AACzG,SAAS,MAAM,CAAC,MAAgB,EAAE,OAAoC;IAClE,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,OAAO,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ;QAClG,MAAM,IAAI,oBAAoB,CAAC,iDAAiD,CAAC,CAAA;AACzF,CAAC;AAED;;;;GAIG;AACH,SAAS,UAAU,CAAC,MAAgB,EAAE,OAAoC;IACtE,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,OAAO,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ;QAClG,MAAM,IAAI,oBAAoB,CAAC,qDAAqD,CAAC,CAAA;AAC7F,CAAC;AAED,iHAAiH;AACjH,SAAS,SAAS,CAAC,MAAiB,EAAE,OAAmC;IACrE,aAAa,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;IACnC,IAAI,OAAO,CAAC,OAAO;QAAE,MAAM,IAAI,oBAAoB,CAAC,uDAAuD,CAAC,CAAA;AAChH,CAAC;AAED,4DAA4D;AAC5D,SAAS,SAAS,CAAC,MAAiB,EAAE,OAAmC;IACrE,aAAa,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;AACvC,CAAC;AAED,mEAAmE;AACnE,SAAS,SAAS,CAAC,MAAiB,EAAE,OAAmC;IACrE,aAAa,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;IACnC,IAAI,OAAO,CAAC,OAAO;QAAE,MAAM,IAAI,oBAAoB,CAAC,oCAAoC,CAAC,CAAA;AAC7F,CAAC;AAED,6EAA6E;AAC7E,SAAS,QAAQ,CACb,MAAiB,EACjB,OAAgD;IAEhD,aAAa,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;AACtC,CAAC;AAED,SAAS,aAAa,CAAC,IAAY,EAAE,OAAmC;IACpE,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,IAAI,OAAO,CAAC,MAAM,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ;QAC9E,MAAM,IAAI,oBAAoB,CAAC,IAAI,IAAI,gDAAgD,CAAC,CAAA;AAChG,CAAC;AAED,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAA"}
@@ -0,0 +1,9 @@
1
+ import type { ActorDatabase } from "./database.js";
2
+ export interface ActorResourceContext {
3
+ db: ActorDatabase;
4
+ }
5
+ export interface ActorResource {
6
+ onResume(): Promise<void>;
7
+ onGracefulShutdown(): Promise<void>;
8
+ }
9
+ //# sourceMappingURL=resource.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource.d.ts","sourceRoot":"","sources":["../../src/actor/resource.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAElD,MAAM,WAAW,oBAAoB;IACjC,EAAE,EAAE,aAAa,CAAA;CACpB;AAED,MAAM,WAAW,aAAa;IAC1B,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IACzB,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CACtC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=resource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource.js","sourceRoot":"","sources":["../../src/actor/resource.ts"],"names":[],"mappings":""}
@@ -11,12 +11,14 @@ interface ActorFieldSchema {
11
11
  readonly private?: boolean;
12
12
  readonly visibility?: "private" | "protected";
13
13
  readonly emittable?: boolean;
14
+ readonly resource?: boolean;
14
15
  }
15
16
  interface ActorSchema {
16
17
  readonly actorName: string;
17
18
  readonly fields: readonly ActorFieldSchema[];
18
19
  readonly sandbox?: ComputeOptions;
19
- readonly reentrantMethods?: readonly string[];
20
+ readonly atomicMethods?: readonly string[];
21
+ readonly interleaveMethods?: readonly string[];
20
22
  readonly contract?: SocketContract;
21
23
  }
22
24
  export { ACTOR_ARTIFACT_VERSION, Persistence };
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/actor/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAElD,QAAA,MAAM,sBAAsB,IAAI,CAAA;AAEhC,aAAK,WAAW;IACZ,SAAS,cAAc;IACvB,SAAS,cAAc;CAC1B;AAED,UAAU,gBAAgB;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAA;IACjC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,GAAG,WAAW,CAAA;IAC7C,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAC/B;AAED,UAAU,WAAW;IACjB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,MAAM,EAAE,SAAS,gBAAgB,EAAE,CAAA;IAC5C,QAAQ,CAAC,OAAO,CAAC,EAAE,cAAc,CAAA;IACjC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IAC7C,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAA;CACrC;AAED,OAAO,EAAE,sBAAsB,EAAE,WAAW,EAAE,CAAA;AAC9C,YAAY,EAAE,gBAAgB,EAAE,WAAW,EAAE,CAAA"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/actor/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAGlD,QAAA,MAAM,sBAAsB,IAAI,CAAA;AAEhC,aAAK,WAAW;IACZ,SAAS,cAAc;IACvB,SAAS,cAAc;CAC1B;AAED,UAAU,gBAAgB;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAA;IACjC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,GAAG,WAAW,CAAA;IAC7C,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAC9B;AAED,UAAU,WAAW;IACjB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,MAAM,EAAE,SAAS,gBAAgB,EAAE,CAAA;IAC5C,QAAQ,CAAC,OAAO,CAAC,EAAE,cAAc,CAAA;IACjC,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IAC1C,QAAQ,CAAC,iBAAiB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IAC9C,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAA;CACrC;AAED,OAAO,EAAE,sBAAsB,EAAE,WAAW,EAAE,CAAA;AAC9C,YAAY,EAAE,gBAAgB,EAAE,WAAW,EAAE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/actor/schema.ts"],"names":[],"mappings":"AAIA,MAAM,sBAAsB,GAAG,CAAC,CAAA;AAEhC,IAAK,WAGJ;AAHD,WAAK,WAAW;IACZ,sCAAuB,CAAA;IACvB,sCAAuB,CAAA;AAC3B,CAAC,EAHI,WAAW,KAAX,WAAW,QAGf;AAkBD,OAAO,EAAE,sBAAsB,EAAE,WAAW,EAAE,CAAA"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/actor/schema.ts"],"names":[],"mappings":"AAKA,MAAM,sBAAsB,GAAG,CAAC,CAAA;AAEhC,IAAK,WAGJ;AAHD,WAAK,WAAW;IACZ,sCAAuB,CAAA;IACvB,sCAAuB,CAAA;AAC3B,CAAC,EAHI,WAAW,KAAX,WAAW,QAGf;AAoBD,OAAO,EAAE,sBAAsB,EAAE,WAAW,EAAE,CAAA"}
@@ -0,0 +1,12 @@
1
+ declare const uncheckedValue: unique symbol;
2
+ export interface Unchecked<T> {
3
+ /** @ignore Stops typescript-json-schema from walking into T. */
4
+ readonly [uncheckedValue]: T;
5
+ }
6
+ /**
7
+ * Use this to opt out of adding the type to the contract. Useful for complicated types that you would prefer to be opaque.
8
+ * ex: Pi harness message types.
9
+ */
10
+ export declare function unchecked<T>(value: T): Unchecked<T>;
11
+ export {};
12
+ //# sourceMappingURL=unchecked.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unchecked.d.ts","sourceRoot":"","sources":["../../src/actor/unchecked.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,cAAc,EAAE,OAAO,MAAM,CAAA;AAE3C,MAAM,WAAW,SAAS,CAAC,CAAC;IACxB,gEAAgE;IAChE,QAAQ,CAAC,CAAC,cAAc,CAAC,EAAE,CAAC,CAAA;CAC/B;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAEnD"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Use this to opt out of adding the type to the contract. Useful for complicated types that you would prefer to be opaque.
3
+ * ex: Pi harness message types.
4
+ */
5
+ export function unchecked(value) {
6
+ return value;
7
+ }
8
+ //# sourceMappingURL=unchecked.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unchecked.js","sourceRoot":"","sources":["../../src/actor/unchecked.ts"],"names":[],"mappings":"AAOA;;;GAGG;AACH,MAAM,UAAU,SAAS,CAAI,KAAQ;IACjC,OAAO,KAAgC,CAAA;AAC3C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../../src/cli/dev.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAgC,MAAM,WAAW,CAAA;AAgBjE,UAAU,UAAU;IAChB,sFAAsF;IACtF,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,OAAO,GAAG,KAAK,CAAA;IACxB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,OAAO,CAAA;CACjB;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA2BzD;AA0CD,iBAAe,MAAM,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAM1D;AA4GD,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,EAAE,CAAA"}
1
+ {"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../../src/cli/dev.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAgC,MAAM,WAAW,CAAA;AAajE,UAAU,UAAU;IAChB,sFAAsF;IACtF,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,OAAO,GAAG,KAAK,CAAA;IACxB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,OAAO,CAAA;CACjB;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA2BzD;AA+CD,iBAAe,MAAM,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAM1D;AAsED,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,EAAE,CAAA"}
package/dist/cli/dev.js CHANGED
@@ -4,12 +4,9 @@ import path from "node:path";
4
4
  import { fileURLToPath } from "node:url";
5
5
  import { z } from "zod";
6
6
  import { projectIdSchema } from "../actor/identity.js";
7
- import { configuredSettings } from "../client/clientSettings.js";
8
7
  import { projectSdkModule } from "../projectSdk.js";
9
8
  import { fetchRuntimeExecutablePath } from "../runtimeInstaller.js";
10
- import { watchActorSources } from "./actor-source-watcher.js";
11
- import { ControlPlaneClient } from "./control-plane.js";
12
- import { checkPython, pythonExecutable } from "./python.js";
9
+ import { pythonExecutable } from "./python.js";
13
10
  import { runtimeConnection, runtimeEnvironment, startRustRuntime } from "./rust-runtime.js";
14
11
  export function registerDevCommand(program) {
15
12
  program
@@ -21,12 +18,12 @@ export function registerDevCommand(program) {
21
18
  .argParser(portNumber)
22
19
  .default(7100))
23
20
  .addHelpText("after", `
24
- Run from your actor project directory; dev loads src/actors.ts, or src/actors.py when only it exists.
21
+ Run from your actor project directory; dev finds src/actors.ts, src/actors.py, actors.ts, or actors.py.
25
22
  No configuration is required. Optional overrides in .env:
26
23
  DURABLE_ACTORS_PROJECT project directory (default: current directory)
27
- DURABLE_ACTORS_ENTRYPOINT actor source file, relative to the project (default: src/actors.ts or src/actors.py)
24
+ DURABLE_ACTORS_ENTRYPOINT actor source file, relative to the project (default: discover actors.ts or actors.py in src/ or the project root)
28
25
 
29
- Python projects: durable-actors init my-project --template python
26
+ Python projects: uvx --from 'durable-actors[cli]' durable-actors init my-project
30
27
  DURABLE_ACTORS_PYTHON selects an interpreter; otherwise dev uses the project .venv.
31
28
 
32
29
  Create a project with: durable-actors init my-project`)
@@ -47,12 +44,15 @@ async function developmentOptions(options, environment) {
47
44
  };
48
45
  }
49
46
  async function defaultEntrypoint(project) {
47
+ const found = [];
50
48
  for (const entrypoint of DEFAULT_ENTRYPOINTS)
51
49
  if ((await developmentPathStats(path.resolve(project, entrypoint)))?.isFile())
52
- return entrypoint;
53
- return DEFAULT_ENTRYPOINTS[0];
50
+ found.push(entrypoint);
51
+ if (found.length > 1)
52
+ throw new Error(`Multiple actor sources found in ${path.resolve(project)}: ${found.join(", ")}. Set DURABLE_ACTORS_ENTRYPOINT to choose one.`);
53
+ return found[0] ?? DEFAULT_ENTRYPOINTS[0];
54
54
  }
55
- const DEFAULT_ENTRYPOINTS = ["src/actors.ts", "src/actors.py"];
55
+ const DEFAULT_ENTRYPOINTS = ["src/actors.ts", "src/actors.py", "actors.ts", "actors.py"];
56
56
  function portNumber(value) {
57
57
  const port = Number(value);
58
58
  if (!/^\d+$/u.test(value) || !Number.isSafeInteger(port) || port < 0 || port > 65535)
@@ -99,29 +99,10 @@ async function developmentPathStats(candidate) {
99
99
  }
100
100
  async function runDevRuntime(options, project) {
101
101
  const python = options.entrypoint.endsWith(".py") ? await pythonExecutable(project) : undefined;
102
- if (python)
103
- await checkPython(project, [options.entrypoint], python);
104
102
  const executable = await fetchRuntimeExecutablePath();
105
103
  const runtime = startRustRuntime(executable, [...devArguments(options), "--ready-fd", "3"], { ...runtimeEnvironment(executable), ...(python ? { DURABLE_ACTORS_PYTHON: python } : {}) }, true, true);
106
- const connection = runtimeConnection(runtime.readiness, runtime.exited);
107
- const settings = connection.then(value => configuredSettings(z
108
- .object({
109
- projectId: z.string(),
110
- controlPlaneUrl: z.string(),
111
- apiKey: z
112
- .string()
113
- .nullish()
114
- .transform(value => value ?? undefined)
115
- })
116
- .parse(value)));
117
- const client = settings.then(settings => new ControlPlaneClient(settings, fetch));
118
- void client.catch(() => { });
119
- let watcher;
120
104
  try {
121
- if (options.watch) {
122
- watcher = await watchActorSources({ projectDirectory: project, dataDirectory: options.dataDir }, async () => publishLocalCode(options, project, await client));
123
- }
124
- await client;
105
+ await runtimeConnection(runtime.readiness, runtime.exited);
125
106
  return await runtime.exited;
126
107
  }
127
108
  catch (error) {
@@ -129,18 +110,6 @@ async function runDevRuntime(options, project) {
129
110
  await runtime.exited.catch(() => { });
130
111
  throw error;
131
112
  }
132
- finally {
133
- await watcher?.close();
134
- }
135
- }
136
- async function publishLocalCode(options, project, client) {
137
- if (options.entrypoint.endsWith(".py"))
138
- await checkPython(project, [options.entrypoint]);
139
- await client.registerDeployment({
140
- localSource: { workingDirectory: project, actorEntrypoint: options.entrypoint },
141
- secretRefs: []
142
- });
143
- console.log("Updated local actors.");
144
113
  }
145
114
  function devArguments(options) {
146
115
  const args = [
@@ -158,6 +127,8 @@ function devArguments(options) {
158
127
  "--sdk-host",
159
128
  fileURLToPath(new URL("../host.js", import.meta.url))
160
129
  ];
130
+ if (options.watch)
131
+ args.push("--watch");
161
132
  if (options.apiKey)
162
133
  args.push("--api-key", options.apiKey);
163
134
  if (options.dataDir)
@@ -1 +1 @@
1
- {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../src/cli/dev.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../src/cli/dev.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,73 @@
1
+ import { Command } from "commander";
2
+ import { z } from "zod";
3
+ import { ControlPlaneClient } from "./control-plane.js";
4
+ interface ActorSelector {
5
+ actorName: string;
6
+ actorId: string;
7
+ }
8
+ declare const instanceSchema: z.ZodObject<{
9
+ actorId: z.ZodString;
10
+ status: z.ZodEnum<{
11
+ unknown: "unknown";
12
+ live: "live";
13
+ dormant: "dormant";
14
+ }>;
15
+ connections: z.ZodArray<z.ZodObject<{
16
+ id: z.ZodString;
17
+ metadata: z.ZodUnknown;
18
+ }, z.core.$strip>>;
19
+ waiting: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
20
+ id: z.ZodString;
21
+ operation: z.ZodString;
22
+ }, z.core.$strip>>>>;
23
+ }, z.core.$strip>;
24
+ declare const inventorySchema: z.ZodObject<{
25
+ connectionsComplete: z.ZodBoolean;
26
+ actors: z.ZodArray<z.ZodObject<{
27
+ actorName: z.ZodString;
28
+ live: z.ZodNumber;
29
+ dormant: z.ZodNumber;
30
+ unknown: z.ZodNumber;
31
+ instances: z.ZodArray<z.ZodObject<{
32
+ actorId: z.ZodString;
33
+ status: z.ZodEnum<{
34
+ unknown: "unknown";
35
+ live: "live";
36
+ dormant: "dormant";
37
+ }>;
38
+ connections: z.ZodArray<z.ZodObject<{
39
+ id: z.ZodString;
40
+ metadata: z.ZodUnknown;
41
+ }, z.core.$strip>>;
42
+ waiting: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
43
+ id: z.ZodString;
44
+ operation: z.ZodString;
45
+ }, z.core.$strip>>>>;
46
+ }, z.core.$strip>>;
47
+ }, z.core.$strip>>;
48
+ }, z.core.$strip>;
49
+ declare const stateSchema: z.ZodObject<{
50
+ snapshot: z.ZodNullable<z.ZodObject<{
51
+ stateVersion: z.ZodNumber;
52
+ ownerEpoch: z.ZodNumber;
53
+ requestId: z.ZodString;
54
+ state: z.ZodRecord<z.ZodString, z.ZodUnknown>;
55
+ }, z.core.$loose>>;
56
+ schema: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
57
+ }, z.core.$strip>;
58
+ type Inventory = z.infer<typeof inventorySchema>;
59
+ type ActorInstance = z.infer<typeof instanceSchema>;
60
+ type StateResponse = z.infer<typeof stateSchema>;
61
+ declare function registerInspectCommand(program: Command): void;
62
+ declare function inspectActors(client: Pick<ControlPlaneClient, "listActors" | "getState">, options?: {
63
+ selector?: string;
64
+ json?: boolean;
65
+ }): Promise<{
66
+ text: string;
67
+ warning?: string;
68
+ }>;
69
+ declare function parseActorSelector(value: string): ActorSelector;
70
+ declare function formatInventory(inventory: Inventory): string;
71
+ declare function formatInstance(selector: ActorSelector, instance: ActorInstance, state: StateResponse): string;
72
+ export { formatInstance, formatInventory, inspectActors, parseActorSelector, registerInspectCommand };
73
+ //# sourceMappingURL=inspect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inspect.d.ts","sourceRoot":"","sources":["../../src/cli/inspect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAKvB,OAAO,EAAE,kBAAkB,EAA4B,MAAM,oBAAoB,CAAA;AAOjF,UAAU,aAAa;IACnB,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;CAClB;AAID,QAAA,MAAM,cAAc;;;;;;;;;;;;;;;iBAKlB,CAAA;AACF,QAAA,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;iBAWnB,CAAA;AACF,QAAA,MAAM,WAAW;;;;;;;;iBAUf,CAAA;AAEF,KAAK,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAA;AAChD,KAAK,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAA;AACnD,KAAK,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAA;AAEhD,iBAAS,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAStD;AAeD,iBAAe,aAAa,CACxB,MAAM,EAAE,IAAI,CAAC,kBAAkB,EAAE,YAAY,GAAG,UAAU,CAAC,EAC3D,OAAO,GAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CAAO,GACpD,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAgB7C;AAED,iBAAS,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,aAAa,CAYxD;AAED,iBAAS,eAAe,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM,CAYrD;AAED,iBAAS,cAAc,CAAC,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,GAAG,MAAM,CAStG;AA2BD,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,aAAa,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,CAAA"}
@@ -0,0 +1,132 @@
1
+ import { z } from "zod";
2
+ import { validateActorComponent } from "../actor/identity.js";
3
+ import { connectionHelp } from "./connection.js";
4
+ import { createControlPlaneClient } from "./control-plane.js";
5
+ const waitingSchema = z.object({ id: z.string(), operation: z.string() });
6
+ const connectionSchema = z.object({ id: z.string(), metadata: z.unknown() });
7
+ const instanceSchema = z.object({
8
+ actorId: z.string(),
9
+ status: z.enum(["live", "dormant", "unknown"]),
10
+ connections: z.array(connectionSchema),
11
+ waiting: z.array(waitingSchema).nullable().optional()
12
+ });
13
+ const inventorySchema = z.object({
14
+ connectionsComplete: z.boolean(),
15
+ actors: z.array(z.object({
16
+ actorName: z.string(),
17
+ live: z.number().int().nonnegative(),
18
+ dormant: z.number().int().nonnegative(),
19
+ unknown: z.number().int().nonnegative(),
20
+ instances: z.array(instanceSchema)
21
+ }))
22
+ });
23
+ const stateSchema = z.object({
24
+ snapshot: z
25
+ .looseObject({
26
+ stateVersion: z.number(),
27
+ ownerEpoch: z.number(),
28
+ requestId: z.string(),
29
+ state: z.record(z.string(), z.unknown())
30
+ })
31
+ .nullable(),
32
+ schema: z.record(z.string(), z.unknown()).nullable()
33
+ });
34
+ function registerInspectCommand(program) {
35
+ program
36
+ .command("inspect")
37
+ .argument("[selector]", "actor instance as ActorName/actorId")
38
+ .description("Print actor inventory and the latest persisted state")
39
+ .option("--json", "print machine-readable JSON")
40
+ .option("--control-plane-url <url>", "control-plane origin (overrides DURABLE_ACTORS_CONTROL_PLANE_URL)")
41
+ .addHelpText("after", connectionHelp)
42
+ .action(inspect);
43
+ }
44
+ async function inspect(selector, options) {
45
+ const client = createControlPlaneClient({
46
+ ...process.env,
47
+ DURABLE_ACTORS_CONTROL_PLANE_URL: options.controlPlaneUrl ?? process.env.DURABLE_ACTORS_CONTROL_PLANE_URL
48
+ }, fetch);
49
+ const result = await inspectActors(client, { selector, json: options.json });
50
+ if (result.warning)
51
+ console.error(result.warning);
52
+ console.log(result.text);
53
+ }
54
+ async function inspectActors(client, options = {}) {
55
+ const inventory = readInventory(await client.listActors());
56
+ const warning = inventory.connectionsComplete ? undefined : "Warning: connection inventory is incomplete.";
57
+ if (!options.selector)
58
+ return { text: options.json ? stringify(inventory) : formatInventory(inventory), warning };
59
+ const selector = parseActorSelector(options.selector);
60
+ const instance = findInstance(inventory, selector);
61
+ if (!instance)
62
+ throw new Error(`No actor instance ${selector.actorName}/${selector.actorId}.`);
63
+ const state = readState(await client.getState(new URLSearchParams({ actorName: selector.actorName, actorId: selector.actorId })));
64
+ return {
65
+ text: options.json
66
+ ? stringify({ actorName: selector.actorName, actorId: selector.actorId, instance, state })
67
+ : formatInstance(selector, instance, state),
68
+ warning
69
+ };
70
+ }
71
+ function parseActorSelector(value) {
72
+ const separator = value.indexOf("/");
73
+ if (separator <= 0 || separator !== value.lastIndexOf("/") || separator === value.length - 1)
74
+ throw new Error("Expected ActorName/actorId.");
75
+ try {
76
+ return {
77
+ actorName: validateActorComponent("actorName", value.slice(0, separator)),
78
+ actorId: validateActorComponent("actorId", value.slice(separator + 1))
79
+ };
80
+ }
81
+ catch {
82
+ throw new Error("Expected ActorName/actorId.");
83
+ }
84
+ }
85
+ function formatInventory(inventory) {
86
+ const rows = inventory.actors.flatMap(actor => actor.instances.map(instance => [actor.actorName, instance.actorId, instance.status]));
87
+ if (rows.length === 0)
88
+ return "No actor instances.";
89
+ const header = ["ACTOR", "INSTANCE ID", "STATUS"];
90
+ const width = (index) => Math.max(header[index].length, ...rows.map(row => row[index].length));
91
+ const actorWidth = width(0);
92
+ const idWidth = width(1);
93
+ const line = (actor, actorId, status) => `${actor.padEnd(actorWidth)} ${actorId.padEnd(idWidth)} ${status}`;
94
+ return [line(header[0], header[1], header[2]), ...rows.map(row => line(row[0], row[1], row[2]))].join("\n");
95
+ }
96
+ function formatInstance(selector, instance, state) {
97
+ const missing = `No persisted snapshot for ${selector.actorName}/${selector.actorId}.`;
98
+ return [
99
+ `Actor: ${selector.actorName}`,
100
+ `Instance ID: ${selector.actorId}`,
101
+ `Status: ${instance.status}`,
102
+ "State:",
103
+ state.snapshot ? stringify(state.snapshot.state) : missing
104
+ ].join("\n");
105
+ }
106
+ function findInstance(inventory, selector) {
107
+ for (const row of inventory.actors) {
108
+ if (row.actorName !== selector.actorName)
109
+ continue;
110
+ const instance = row.instances.find(item => item.actorId === selector.actorId);
111
+ if (instance)
112
+ return instance;
113
+ }
114
+ return undefined;
115
+ }
116
+ function readInventory(value) {
117
+ const result = inventorySchema.safeParse(value);
118
+ if (!result.success)
119
+ throw new Error("Invalid actor inventory response.");
120
+ return result.data;
121
+ }
122
+ function readState(value) {
123
+ const result = stateSchema.safeParse(value);
124
+ if (!result.success)
125
+ throw new Error("Invalid state response.");
126
+ return result.data;
127
+ }
128
+ function stringify(value) {
129
+ return JSON.stringify(value, null, 2);
130
+ }
131
+ export { formatInstance, formatInventory, inspectActors, parseActorSelector, registerInspectCommand };
132
+ //# sourceMappingURL=inspect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inspect.js","sourceRoot":"","sources":["../../src/cli/inspect.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"python.d.ts","sourceRoot":"","sources":["../../src/cli/python.ts"],"names":[],"mappings":"AAKA,iBAAe,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAUhE;AAED,iBAAe,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEjG;AAED,iBAAe,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAYzE;AAED,iBAAe,oBAAoB,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAKvF;AA4BD,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,CAAA"}
1
+ {"version":3,"file":"python.d.ts","sourceRoot":"","sources":["../../src/cli/python.ts"],"names":[],"mappings":"AAKA,iBAAe,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAUhE;AAED,iBAAe,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEjG;AAED,iBAAe,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAWzE;AAED,iBAAe,oBAAoB,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAKvF;AA4BD,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,CAAA"}
@@ -17,7 +17,6 @@ async function checkPython(project, targets, executable) {
17
17
  async function compilePythonContract(entrypoint) {
18
18
  const project = process.cwd();
19
19
  const executable = await pythonExecutable(project);
20
- await checkPython(project, [entrypoint], executable);
21
20
  const directory = await mkdtemp(path.join(tmpdir(), "durable-actors-build-"));
22
21
  try {
23
22
  return JSON.parse(await runPython(executable, project, "durable_actors.build", [project, entrypoint, directory, "local"]));
@@ -1 +1 @@
1
- {"version":3,"file":"python.js","sourceRoot":"","sources":["../../src/cli/python.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"python.js","sourceRoot":"","sources":["../../src/cli/python.ts"],"names":[],"mappings":"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"}
package/dist/cli.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- #!/usr/bin/env node
1
+ #!/usr/bin/env bun
2
2
  export {};
3
3
  //# sourceMappingURL=cli.d.ts.map