@smthrs/flow 0.0.0-stage → 1.0.0-rc.4

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 (654) hide show
  1. package/CHANGELOG.md +160 -0
  2. package/LICENSE +21 -0
  3. package/README.md +210 -2
  4. package/THIRD_PARTY_NOTICES.md +52 -0
  5. package/dist/cjs/Action/Action.d.ts +250 -0
  6. package/dist/cjs/Action/Action.d.ts.map +1 -0
  7. package/dist/cjs/Action/Action.js +42 -0
  8. package/dist/cjs/Action/Action.js.map +7 -0
  9. package/dist/cjs/Action/AttemptTimedOut.d.ts +33 -0
  10. package/dist/cjs/Action/AttemptTimedOut.d.ts.map +1 -0
  11. package/dist/cjs/Action/AttemptTimedOut.js +51 -0
  12. package/dist/cjs/Action/AttemptTimedOut.js.map +7 -0
  13. package/dist/cjs/Action/BoundaryMode.d.ts +29 -0
  14. package/dist/cjs/Action/BoundaryMode.d.ts.map +1 -0
  15. package/dist/cjs/Action/BoundaryMode.js +36 -0
  16. package/dist/cjs/Action/BoundaryMode.js.map +7 -0
  17. package/dist/cjs/Action/CacheEnvironment.d.ts +158 -0
  18. package/dist/cjs/Action/CacheEnvironment.d.ts.map +1 -0
  19. package/dist/cjs/Action/CacheEnvironment.js +57 -0
  20. package/dist/cjs/Action/CacheEnvironment.js.map +7 -0
  21. package/dist/cjs/Action/ConcurrentKeylessDispatch.d.ts +34 -0
  22. package/dist/cjs/Action/ConcurrentKeylessDispatch.d.ts.map +1 -0
  23. package/dist/cjs/Action/ConcurrentKeylessDispatch.js +46 -0
  24. package/dist/cjs/Action/ConcurrentKeylessDispatch.js.map +7 -0
  25. package/dist/cjs/Action/Context.d.ts +131 -0
  26. package/dist/cjs/Action/Context.d.ts.map +1 -0
  27. package/dist/cjs/Action/Context.js +68 -0
  28. package/dist/cjs/Action/Context.js.map +7 -0
  29. package/dist/cjs/Action/DuplicateImplementation.d.ts +20 -0
  30. package/dist/cjs/Action/DuplicateImplementation.d.ts.map +1 -0
  31. package/dist/cjs/Action/DuplicateImplementation.js +46 -0
  32. package/dist/cjs/Action/DuplicateImplementation.js.map +7 -0
  33. package/dist/cjs/Action/FileBoundary.d.ts +59 -0
  34. package/dist/cjs/Action/FileBoundary.d.ts.map +1 -0
  35. package/dist/cjs/Action/FileBoundary.js +81 -0
  36. package/dist/cjs/Action/FileBoundary.js.map +7 -0
  37. package/dist/cjs/Action/FileInput.d.ts +28 -0
  38. package/dist/cjs/Action/FileInput.d.ts.map +1 -0
  39. package/dist/cjs/Action/FileInput.js +42 -0
  40. package/dist/cjs/Action/FileInput.js.map +7 -0
  41. package/dist/cjs/Action/Filegroup.d.ts +16 -0
  42. package/dist/cjs/Action/Filegroup.d.ts.map +1 -0
  43. package/dist/cjs/Action/Filegroup.js +27 -0
  44. package/dist/cjs/Action/Filegroup.js.map +7 -0
  45. package/dist/cjs/Action/Glob.d.ts +8 -0
  46. package/dist/cjs/Action/Glob.d.ts.map +1 -0
  47. package/dist/cjs/Action/Glob.js +28 -0
  48. package/dist/cjs/Action/Glob.js.map +7 -0
  49. package/dist/cjs/Action/ImplementationVersionMismatch.d.ts +26 -0
  50. package/dist/cjs/Action/ImplementationVersionMismatch.d.ts.map +1 -0
  51. package/dist/cjs/Action/ImplementationVersionMismatch.js +45 -0
  52. package/dist/cjs/Action/ImplementationVersionMismatch.js.map +7 -0
  53. package/dist/cjs/Action/Implementations.d.ts +114 -0
  54. package/dist/cjs/Action/Implementations.d.ts.map +1 -0
  55. package/dist/cjs/Action/Implementations.js +65 -0
  56. package/dist/cjs/Action/Implementations.js.map +7 -0
  57. package/dist/cjs/Action/InfraInterrupt.d.ts +26 -0
  58. package/dist/cjs/Action/InfraInterrupt.d.ts.map +1 -0
  59. package/dist/cjs/Action/InfraInterrupt.js +46 -0
  60. package/dist/cjs/Action/InfraInterrupt.js.map +7 -0
  61. package/dist/cjs/Action/InfraInterruptRetriesExhausted.d.ts +33 -0
  62. package/dist/cjs/Action/InfraInterruptRetriesExhausted.d.ts.map +1 -0
  63. package/dist/cjs/Action/InfraInterruptRetriesExhausted.js +54 -0
  64. package/dist/cjs/Action/InfraInterruptRetriesExhausted.js.map +7 -0
  65. package/dist/cjs/Action/IrreversibleRetryRequiresIdempotencyKey.d.ts +26 -0
  66. package/dist/cjs/Action/IrreversibleRetryRequiresIdempotencyKey.d.ts.map +1 -0
  67. package/dist/cjs/Action/IrreversibleRetryRequiresIdempotencyKey.js +47 -0
  68. package/dist/cjs/Action/IrreversibleRetryRequiresIdempotencyKey.js.map +7 -0
  69. package/dist/cjs/Action/StepIdentity.d.ts +153 -0
  70. package/dist/cjs/Action/StepIdentity.d.ts.map +1 -0
  71. package/dist/cjs/Action/StepIdentity.js +75 -0
  72. package/dist/cjs/Action/StepIdentity.js.map +7 -0
  73. package/dist/cjs/Action/TreeArtifact.d.ts +8 -0
  74. package/dist/cjs/Action/TreeArtifact.d.ts.map +1 -0
  75. package/dist/cjs/Action/TreeArtifact.js +25 -0
  76. package/dist/cjs/Action/TreeArtifact.js.map +7 -0
  77. package/dist/cjs/Action/TypeId.d.ts +8 -0
  78. package/dist/cjs/Action/TypeId.d.ts.map +1 -0
  79. package/dist/cjs/Action/TypeId.js +25 -0
  80. package/dist/cjs/Action/TypeId.js.map +7 -0
  81. package/dist/cjs/Action/UncanonicalIdempotencyKey.d.ts +32 -0
  82. package/dist/cjs/Action/UncanonicalIdempotencyKey.d.ts.map +1 -0
  83. package/dist/cjs/Action/UncanonicalIdempotencyKey.js +51 -0
  84. package/dist/cjs/Action/UncanonicalIdempotencyKey.js.map +7 -0
  85. package/dist/cjs/Action/idempotencyKey.d.ts +21 -0
  86. package/dist/cjs/Action/idempotencyKey.d.ts.map +1 -0
  87. package/dist/cjs/Action/idempotencyKey.js +59 -0
  88. package/dist/cjs/Action/idempotencyKey.js.map +7 -0
  89. package/dist/cjs/Action/index.d.ts +29 -0
  90. package/dist/cjs/Action/index.d.ts.map +1 -0
  91. package/dist/cjs/Action/index.js +60 -0
  92. package/dist/cjs/Action/index.js.map +7 -0
  93. package/dist/cjs/Action/make.d.ts +128 -0
  94. package/dist/cjs/Action/make.d.ts.map +1 -0
  95. package/dist/cjs/Action/make.js +373 -0
  96. package/dist/cjs/Action/make.js.map +7 -0
  97. package/dist/cjs/Action/raceAll.d.ts +21 -0
  98. package/dist/cjs/Action/raceAll.d.ts.map +1 -0
  99. package/dist/cjs/Action/raceAll.js +46 -0
  100. package/dist/cjs/Action/raceAll.js.map +7 -0
  101. package/dist/cjs/Action/retry.d.ts +19 -0
  102. package/dist/cjs/Action/retry.d.ts.map +1 -0
  103. package/dist/cjs/Action/retry.js +75 -0
  104. package/dist/cjs/Action/retry.js.map +7 -0
  105. package/dist/cjs/Deadline.d.ts +105 -0
  106. package/dist/cjs/Deadline.d.ts.map +1 -0
  107. package/dist/cjs/Deadline.js +104 -0
  108. package/dist/cjs/Deadline.js.map +7 -0
  109. package/dist/cjs/DurableClock.d.ts +61 -0
  110. package/dist/cjs/DurableClock.d.ts.map +1 -0
  111. package/dist/cjs/DurableClock.js +90 -0
  112. package/dist/cjs/DurableClock.js.map +7 -0
  113. package/dist/cjs/DurableDeferred.d.ts +311 -0
  114. package/dist/cjs/DurableDeferred.d.ts.map +1 -0
  115. package/dist/cjs/DurableDeferred.js +322 -0
  116. package/dist/cjs/DurableDeferred.js.map +7 -0
  117. package/dist/cjs/DurableQueue.d.ts +160 -0
  118. package/dist/cjs/DurableQueue.d.ts.map +1 -0
  119. package/dist/cjs/DurableQueue.js +229 -0
  120. package/dist/cjs/DurableQueue.js.map +7 -0
  121. package/dist/cjs/ExternalJob.d.ts +179 -0
  122. package/dist/cjs/ExternalJob.d.ts.map +1 -0
  123. package/dist/cjs/ExternalJob.js +338 -0
  124. package/dist/cjs/ExternalJob.js.map +7 -0
  125. package/dist/cjs/Fault.d.ts +131 -0
  126. package/dist/cjs/Fault.d.ts.map +1 -0
  127. package/dist/cjs/Fault.js +157 -0
  128. package/dist/cjs/Fault.js.map +7 -0
  129. package/dist/cjs/Flow/Annotations.d.ts +245 -0
  130. package/dist/cjs/Flow/Annotations.d.ts.map +1 -0
  131. package/dist/cjs/Flow/Annotations.js +72 -0
  132. package/dist/cjs/Flow/Annotations.js.map +7 -0
  133. package/dist/cjs/Flow/CapabilityCeiling.d.ts +21 -0
  134. package/dist/cjs/Flow/CapabilityCeiling.d.ts.map +1 -0
  135. package/dist/cjs/Flow/CapabilityCeiling.js +49 -0
  136. package/dist/cjs/Flow/CapabilityCeiling.js.map +7 -0
  137. package/dist/cjs/Flow/DeadlineExceeded.d.ts +33 -0
  138. package/dist/cjs/Flow/DeadlineExceeded.d.ts.map +1 -0
  139. package/dist/cjs/Flow/DeadlineExceeded.js +52 -0
  140. package/dist/cjs/Flow/DeadlineExceeded.js.map +7 -0
  141. package/dist/cjs/Flow/ExecutionIdRequired.d.ts +25 -0
  142. package/dist/cjs/Flow/ExecutionIdRequired.d.ts.map +1 -0
  143. package/dist/cjs/Flow/ExecutionIdRequired.js +46 -0
  144. package/dist/cjs/Flow/ExecutionIdRequired.js.map +7 -0
  145. package/dist/cjs/Flow/ExecutionIds.d.ts +80 -0
  146. package/dist/cjs/Flow/ExecutionIds.d.ts.map +1 -0
  147. package/dist/cjs/Flow/ExecutionIds.js +66 -0
  148. package/dist/cjs/Flow/ExecutionIds.js.map +7 -0
  149. package/dist/cjs/Flow/Flow.d.ts +422 -0
  150. package/dist/cjs/Flow/Flow.d.ts.map +1 -0
  151. package/dist/cjs/Flow/Flow.js +17 -0
  152. package/dist/cjs/Flow/Flow.js.map +7 -0
  153. package/dist/cjs/Flow/MaxRoundsExceeded.d.ts +35 -0
  154. package/dist/cjs/Flow/MaxRoundsExceeded.d.ts.map +1 -0
  155. package/dist/cjs/Flow/MaxRoundsExceeded.js +50 -0
  156. package/dist/cjs/Flow/MaxRoundsExceeded.js.map +7 -0
  157. package/dist/cjs/Flow/Outcome.d.ts +162 -0
  158. package/dist/cjs/Flow/Outcome.d.ts.map +1 -0
  159. package/dist/cjs/Flow/Outcome.js +80 -0
  160. package/dist/cjs/Flow/Outcome.js.map +7 -0
  161. package/dist/cjs/Flow/Result.d.ts +186 -0
  162. package/dist/cjs/Flow/Result.d.ts.map +1 -0
  163. package/dist/cjs/Flow/Result.js +159 -0
  164. package/dist/cjs/Flow/Result.js.map +7 -0
  165. package/dist/cjs/Flow/Runtime.d.ts +98 -0
  166. package/dist/cjs/Flow/Runtime.d.ts.map +1 -0
  167. package/dist/cjs/Flow/Runtime.js +160 -0
  168. package/dist/cjs/Flow/Runtime.js.map +7 -0
  169. package/dist/cjs/Flow/TypeId.d.ts +8 -0
  170. package/dist/cjs/Flow/TypeId.d.ts.map +1 -0
  171. package/dist/cjs/Flow/TypeId.js +25 -0
  172. package/dist/cjs/Flow/TypeId.js.map +7 -0
  173. package/dist/cjs/Flow/index.d.ts +17 -0
  174. package/dist/cjs/Flow/index.d.ts.map +1 -0
  175. package/dist/cjs/Flow/index.js +29 -0
  176. package/dist/cjs/Flow/index.js.map +7 -0
  177. package/dist/cjs/Flow/internal.d.ts +34 -0
  178. package/dist/cjs/Flow/internal.d.ts.map +1 -0
  179. package/dist/cjs/Flow/internal.js +187 -0
  180. package/dist/cjs/Flow/internal.js.map +7 -0
  181. package/dist/cjs/Flow/make.d.ts +134 -0
  182. package/dist/cjs/Flow/make.d.ts.map +1 -0
  183. package/dist/cjs/Flow/make.js +104 -0
  184. package/dist/cjs/Flow/make.js.map +7 -0
  185. package/dist/cjs/FlowRuntime/CancelRequestFailed.d.ts +55 -0
  186. package/dist/cjs/FlowRuntime/CancelRequestFailed.d.ts.map +1 -0
  187. package/dist/cjs/FlowRuntime/CancelRequestFailed.js +51 -0
  188. package/dist/cjs/FlowRuntime/CancelRequestFailed.js.map +7 -0
  189. package/dist/cjs/FlowRuntime/ExecutionIdentityConflict.d.ts +23 -0
  190. package/dist/cjs/FlowRuntime/ExecutionIdentityConflict.d.ts.map +1 -0
  191. package/dist/cjs/FlowRuntime/ExecutionIdentityConflict.js +55 -0
  192. package/dist/cjs/FlowRuntime/ExecutionIdentityConflict.js.map +7 -0
  193. package/dist/cjs/FlowRuntime/FlowCycleDetected.d.ts +28 -0
  194. package/dist/cjs/FlowRuntime/FlowCycleDetected.d.ts.map +1 -0
  195. package/dist/cjs/FlowRuntime/FlowCycleDetected.js +49 -0
  196. package/dist/cjs/FlowRuntime/FlowCycleDetected.js.map +7 -0
  197. package/dist/cjs/FlowRuntime/FlowExecutionNotFound.d.ts +38 -0
  198. package/dist/cjs/FlowRuntime/FlowExecutionNotFound.d.ts.map +1 -0
  199. package/dist/cjs/FlowRuntime/FlowExecutionNotFound.js +53 -0
  200. package/dist/cjs/FlowRuntime/FlowExecutionNotFound.js.map +7 -0
  201. package/dist/cjs/FlowRuntime/FlowInstance.d.ts +115 -0
  202. package/dist/cjs/FlowRuntime/FlowInstance.d.ts.map +1 -0
  203. package/dist/cjs/FlowRuntime/FlowInstance.js +37 -0
  204. package/dist/cjs/FlowRuntime/FlowInstance.js.map +7 -0
  205. package/dist/cjs/FlowRuntime/FlowRuntime.d.ts +198 -0
  206. package/dist/cjs/FlowRuntime/FlowRuntime.d.ts.map +1 -0
  207. package/dist/cjs/FlowRuntime/FlowRuntime.js +37 -0
  208. package/dist/cjs/FlowRuntime/FlowRuntime.js.map +7 -0
  209. package/dist/cjs/FlowRuntime/NodeRecord.d.ts +175 -0
  210. package/dist/cjs/FlowRuntime/NodeRecord.d.ts.map +1 -0
  211. package/dist/cjs/FlowRuntime/NodeRecord.js +17 -0
  212. package/dist/cjs/FlowRuntime/NodeRecord.js.map +7 -0
  213. package/dist/cjs/FlowRuntime/WaitingAnnotation.d.ts +69 -0
  214. package/dist/cjs/FlowRuntime/WaitingAnnotation.d.ts.map +1 -0
  215. package/dist/cjs/FlowRuntime/WaitingAnnotation.js +53 -0
  216. package/dist/cjs/FlowRuntime/WaitingAnnotation.js.map +7 -0
  217. package/dist/cjs/FlowRuntime/index.d.ts +14 -0
  218. package/dist/cjs/FlowRuntime/index.d.ts.map +1 -0
  219. package/dist/cjs/FlowRuntime/index.js +26 -0
  220. package/dist/cjs/FlowRuntime/index.js.map +7 -0
  221. package/dist/cjs/Graph.d.ts +325 -0
  222. package/dist/cjs/Graph.d.ts.map +1 -0
  223. package/dist/cjs/Graph.js +1021 -0
  224. package/dist/cjs/Graph.js.map +7 -0
  225. package/dist/cjs/HumanTask.d.ts +440 -0
  226. package/dist/cjs/HumanTask.d.ts.map +1 -0
  227. package/dist/cjs/HumanTask.js +413 -0
  228. package/dist/cjs/HumanTask.js.map +7 -0
  229. package/dist/cjs/Interpreter.d.ts +222 -0
  230. package/dist/cjs/Interpreter.d.ts.map +1 -0
  231. package/dist/cjs/Interpreter.js +888 -0
  232. package/dist/cjs/Interpreter.js.map +7 -0
  233. package/dist/cjs/Poll.d.ts +238 -0
  234. package/dist/cjs/Poll.d.ts.map +1 -0
  235. package/dist/cjs/Poll.js +150 -0
  236. package/dist/cjs/Poll.js.map +7 -0
  237. package/dist/cjs/RetryPolicy.d.ts +273 -0
  238. package/dist/cjs/RetryPolicy.d.ts.map +1 -0
  239. package/dist/cjs/RetryPolicy.js +251 -0
  240. package/dist/cjs/RetryPolicy.js.map +7 -0
  241. package/dist/cjs/Sleep.d.ts +98 -0
  242. package/dist/cjs/Sleep.d.ts.map +1 -0
  243. package/dist/cjs/Sleep.js +133 -0
  244. package/dist/cjs/Sleep.js.map +7 -0
  245. package/dist/cjs/Stall.d.ts +173 -0
  246. package/dist/cjs/Stall.d.ts.map +1 -0
  247. package/dist/cjs/Stall.js +92 -0
  248. package/dist/cjs/Stall.js.map +7 -0
  249. package/dist/cjs/WaitFor.d.ts +109 -0
  250. package/dist/cjs/WaitFor.d.ts.map +1 -0
  251. package/dist/cjs/WaitFor.js +117 -0
  252. package/dist/cjs/WaitFor.js.map +7 -0
  253. package/dist/cjs/index.d.ts +107 -0
  254. package/dist/cjs/index.d.ts.map +1 -0
  255. package/dist/cjs/index.js +69 -0
  256. package/dist/cjs/index.js.map +7 -0
  257. package/dist/cjs/internal/BoundedJson.d.ts +48 -0
  258. package/dist/cjs/internal/BoundedJson.d.ts.map +1 -0
  259. package/dist/cjs/internal/BoundedJson.js +96 -0
  260. package/dist/cjs/internal/BoundedJson.js.map +7 -0
  261. package/dist/cjs/internal/DeclarationSite.d.ts +135 -0
  262. package/dist/cjs/internal/DeclarationSite.d.ts.map +1 -0
  263. package/dist/cjs/internal/DeclarationSite.js +89 -0
  264. package/dist/cjs/internal/DeclarationSite.js.map +7 -0
  265. package/dist/cjs/internal/Declarations.d.ts +35 -0
  266. package/dist/cjs/internal/Declarations.d.ts.map +1 -0
  267. package/dist/cjs/internal/Declarations.js +50 -0
  268. package/dist/cjs/internal/Declarations.js.map +7 -0
  269. package/dist/cjs/internal/ExecutionMiddleware.d.ts +21 -0
  270. package/dist/cjs/internal/ExecutionMiddleware.d.ts.map +1 -0
  271. package/dist/cjs/internal/ExecutionMiddleware.js +39 -0
  272. package/dist/cjs/internal/ExecutionMiddleware.js.map +7 -0
  273. package/dist/cjs/internal/JsonSchemaSubset.d.ts +133 -0
  274. package/dist/cjs/internal/JsonSchemaSubset.d.ts.map +1 -0
  275. package/dist/cjs/internal/JsonSchemaSubset.js +229 -0
  276. package/dist/cjs/internal/JsonSchemaSubset.js.map +7 -0
  277. package/dist/cjs/internal/OutcomeMarker.d.ts +18 -0
  278. package/dist/cjs/internal/OutcomeMarker.d.ts.map +1 -0
  279. package/dist/cjs/internal/OutcomeMarker.js +27 -0
  280. package/dist/cjs/internal/OutcomeMarker.js.map +7 -0
  281. package/dist/cjs/package.json +1 -0
  282. package/dist/esm/Action/Action.d.ts +250 -0
  283. package/dist/esm/Action/Action.d.ts.map +1 -0
  284. package/dist/esm/Action/Action.js +30 -0
  285. package/dist/esm/Action/Action.js.map +1 -0
  286. package/dist/esm/Action/AttemptTimedOut.d.ts +33 -0
  287. package/dist/esm/Action/AttemptTimedOut.d.ts.map +1 -0
  288. package/dist/esm/Action/AttemptTimedOut.js +32 -0
  289. package/dist/esm/Action/AttemptTimedOut.js.map +1 -0
  290. package/dist/esm/Action/BoundaryMode.d.ts +29 -0
  291. package/dist/esm/Action/BoundaryMode.d.ts.map +1 -0
  292. package/dist/esm/Action/BoundaryMode.js +23 -0
  293. package/dist/esm/Action/BoundaryMode.js.map +1 -0
  294. package/dist/esm/Action/CacheEnvironment.d.ts +158 -0
  295. package/dist/esm/Action/CacheEnvironment.d.ts.map +1 -0
  296. package/dist/esm/Action/CacheEnvironment.js +130 -0
  297. package/dist/esm/Action/CacheEnvironment.js.map +1 -0
  298. package/dist/esm/Action/ConcurrentKeylessDispatch.d.ts +34 -0
  299. package/dist/esm/Action/ConcurrentKeylessDispatch.d.ts.map +1 -0
  300. package/dist/esm/Action/ConcurrentKeylessDispatch.js +33 -0
  301. package/dist/esm/Action/ConcurrentKeylessDispatch.js.map +1 -0
  302. package/dist/esm/Action/Context.d.ts +131 -0
  303. package/dist/esm/Action/Context.d.ts.map +1 -0
  304. package/dist/esm/Action/Context.js +99 -0
  305. package/dist/esm/Action/Context.js.map +1 -0
  306. package/dist/esm/Action/DuplicateImplementation.d.ts +20 -0
  307. package/dist/esm/Action/DuplicateImplementation.d.ts.map +1 -0
  308. package/dist/esm/Action/DuplicateImplementation.js +20 -0
  309. package/dist/esm/Action/DuplicateImplementation.js.map +1 -0
  310. package/dist/esm/Action/FileBoundary.d.ts +59 -0
  311. package/dist/esm/Action/FileBoundary.d.ts.map +1 -0
  312. package/dist/esm/Action/FileBoundary.js +60 -0
  313. package/dist/esm/Action/FileBoundary.js.map +1 -0
  314. package/dist/esm/Action/FileInput.d.ts +28 -0
  315. package/dist/esm/Action/FileInput.d.ts.map +1 -0
  316. package/dist/esm/Action/FileInput.js +32 -0
  317. package/dist/esm/Action/FileInput.js.map +1 -0
  318. package/dist/esm/Action/Filegroup.d.ts +16 -0
  319. package/dist/esm/Action/Filegroup.d.ts.map +1 -0
  320. package/dist/esm/Action/Filegroup.js +15 -0
  321. package/dist/esm/Action/Filegroup.js.map +1 -0
  322. package/dist/esm/Action/Glob.d.ts +8 -0
  323. package/dist/esm/Action/Glob.d.ts.map +1 -0
  324. package/dist/esm/Action/Glob.js +7 -0
  325. package/dist/esm/Action/Glob.js.map +1 -0
  326. package/dist/esm/Action/ImplementationVersionMismatch.d.ts +26 -0
  327. package/dist/esm/Action/ImplementationVersionMismatch.d.ts.map +1 -0
  328. package/dist/esm/Action/ImplementationVersionMismatch.js +24 -0
  329. package/dist/esm/Action/ImplementationVersionMismatch.js.map +1 -0
  330. package/dist/esm/Action/Implementations.d.ts +114 -0
  331. package/dist/esm/Action/Implementations.d.ts.map +1 -0
  332. package/dist/esm/Action/Implementations.js +94 -0
  333. package/dist/esm/Action/Implementations.js.map +1 -0
  334. package/dist/esm/Action/InfraInterrupt.d.ts +26 -0
  335. package/dist/esm/Action/InfraInterrupt.d.ts.map +1 -0
  336. package/dist/esm/Action/InfraInterrupt.js +25 -0
  337. package/dist/esm/Action/InfraInterrupt.js.map +1 -0
  338. package/dist/esm/Action/InfraInterruptRetriesExhausted.d.ts +33 -0
  339. package/dist/esm/Action/InfraInterruptRetriesExhausted.d.ts.map +1 -0
  340. package/dist/esm/Action/InfraInterruptRetriesExhausted.js +32 -0
  341. package/dist/esm/Action/InfraInterruptRetriesExhausted.js.map +1 -0
  342. package/dist/esm/Action/IrreversibleRetryRequiresIdempotencyKey.d.ts +26 -0
  343. package/dist/esm/Action/IrreversibleRetryRequiresIdempotencyKey.d.ts.map +1 -0
  344. package/dist/esm/Action/IrreversibleRetryRequiresIdempotencyKey.js +25 -0
  345. package/dist/esm/Action/IrreversibleRetryRequiresIdempotencyKey.js.map +1 -0
  346. package/dist/esm/Action/StepIdentity.d.ts +153 -0
  347. package/dist/esm/Action/StepIdentity.d.ts.map +1 -0
  348. package/dist/esm/Action/StepIdentity.js +139 -0
  349. package/dist/esm/Action/StepIdentity.js.map +1 -0
  350. package/dist/esm/Action/TreeArtifact.d.ts +8 -0
  351. package/dist/esm/Action/TreeArtifact.d.ts.map +1 -0
  352. package/dist/esm/Action/TreeArtifact.js +7 -0
  353. package/dist/esm/Action/TreeArtifact.js.map +1 -0
  354. package/dist/esm/Action/TypeId.d.ts +8 -0
  355. package/dist/esm/Action/TypeId.d.ts.map +1 -0
  356. package/dist/esm/Action/TypeId.js +9 -0
  357. package/dist/esm/Action/TypeId.js.map +1 -0
  358. package/dist/esm/Action/UncanonicalIdempotencyKey.d.ts +32 -0
  359. package/dist/esm/Action/UncanonicalIdempotencyKey.d.ts.map +1 -0
  360. package/dist/esm/Action/UncanonicalIdempotencyKey.js +31 -0
  361. package/dist/esm/Action/UncanonicalIdempotencyKey.js.map +1 -0
  362. package/dist/esm/Action/idempotencyKey.d.ts +21 -0
  363. package/dist/esm/Action/idempotencyKey.d.ts.map +1 -0
  364. package/dist/esm/Action/idempotencyKey.js +50 -0
  365. package/dist/esm/Action/idempotencyKey.js.map +1 -0
  366. package/dist/esm/Action/index.d.ts +29 -0
  367. package/dist/esm/Action/index.d.ts.map +1 -0
  368. package/dist/esm/Action/index.js +30 -0
  369. package/dist/esm/Action/index.js.map +1 -0
  370. package/dist/esm/Action/make.d.ts +128 -0
  371. package/dist/esm/Action/make.d.ts.map +1 -0
  372. package/dist/esm/Action/make.js +405 -0
  373. package/dist/esm/Action/make.js.map +1 -0
  374. package/dist/esm/Action/raceAll.d.ts +21 -0
  375. package/dist/esm/Action/raceAll.d.ts.map +1 -0
  376. package/dist/esm/Action/raceAll.js +20 -0
  377. package/dist/esm/Action/raceAll.js.map +1 -0
  378. package/dist/esm/Action/retry.d.ts +19 -0
  379. package/dist/esm/Action/retry.d.ts.map +1 -0
  380. package/dist/esm/Action/retry.js +72 -0
  381. package/dist/esm/Action/retry.js.map +1 -0
  382. package/dist/esm/Deadline.d.ts +105 -0
  383. package/dist/esm/Deadline.d.ts.map +1 -0
  384. package/dist/esm/Deadline.js +152 -0
  385. package/dist/esm/Deadline.js.map +1 -0
  386. package/dist/esm/DurableClock.d.ts +61 -0
  387. package/dist/esm/DurableClock.d.ts.map +1 -0
  388. package/dist/esm/DurableClock.js +75 -0
  389. package/dist/esm/DurableClock.js.map +1 -0
  390. package/dist/esm/DurableDeferred.d.ts +311 -0
  391. package/dist/esm/DurableDeferred.d.ts.map +1 -0
  392. package/dist/esm/DurableDeferred.js +357 -0
  393. package/dist/esm/DurableDeferred.js.map +1 -0
  394. package/dist/esm/DurableQueue.d.ts +160 -0
  395. package/dist/esm/DurableQueue.d.ts.map +1 -0
  396. package/dist/esm/DurableQueue.js +303 -0
  397. package/dist/esm/DurableQueue.js.map +1 -0
  398. package/dist/esm/ExternalJob.d.ts +179 -0
  399. package/dist/esm/ExternalJob.d.ts.map +1 -0
  400. package/dist/esm/ExternalJob.js +296 -0
  401. package/dist/esm/ExternalJob.js.map +1 -0
  402. package/dist/esm/Fault.d.ts +131 -0
  403. package/dist/esm/Fault.d.ts.map +1 -0
  404. package/dist/esm/Fault.js +198 -0
  405. package/dist/esm/Fault.js.map +1 -0
  406. package/dist/esm/Flow/Annotations.d.ts +245 -0
  407. package/dist/esm/Flow/Annotations.d.ts.map +1 -0
  408. package/dist/esm/Flow/Annotations.js +110 -0
  409. package/dist/esm/Flow/Annotations.js.map +1 -0
  410. package/dist/esm/Flow/CapabilityCeiling.d.ts +21 -0
  411. package/dist/esm/Flow/CapabilityCeiling.d.ts.map +1 -0
  412. package/dist/esm/Flow/CapabilityCeiling.js +27 -0
  413. package/dist/esm/Flow/CapabilityCeiling.js.map +1 -0
  414. package/dist/esm/Flow/DeadlineExceeded.d.ts +33 -0
  415. package/dist/esm/Flow/DeadlineExceeded.d.ts.map +1 -0
  416. package/dist/esm/Flow/DeadlineExceeded.js +34 -0
  417. package/dist/esm/Flow/DeadlineExceeded.js.map +1 -0
  418. package/dist/esm/Flow/ExecutionIdRequired.d.ts +25 -0
  419. package/dist/esm/Flow/ExecutionIdRequired.d.ts.map +1 -0
  420. package/dist/esm/Flow/ExecutionIdRequired.js +30 -0
  421. package/dist/esm/Flow/ExecutionIdRequired.js.map +1 -0
  422. package/dist/esm/Flow/ExecutionIds.d.ts +80 -0
  423. package/dist/esm/Flow/ExecutionIds.d.ts.map +1 -0
  424. package/dist/esm/Flow/ExecutionIds.js +91 -0
  425. package/dist/esm/Flow/ExecutionIds.js.map +1 -0
  426. package/dist/esm/Flow/Flow.d.ts +422 -0
  427. package/dist/esm/Flow/Flow.d.ts.map +1 -0
  428. package/dist/esm/Flow/Flow.js +3 -0
  429. package/dist/esm/Flow/Flow.js.map +1 -0
  430. package/dist/esm/Flow/MaxRoundsExceeded.d.ts +35 -0
  431. package/dist/esm/Flow/MaxRoundsExceeded.d.ts.map +1 -0
  432. package/dist/esm/Flow/MaxRoundsExceeded.js +34 -0
  433. package/dist/esm/Flow/MaxRoundsExceeded.js.map +1 -0
  434. package/dist/esm/Flow/Outcome.d.ts +162 -0
  435. package/dist/esm/Flow/Outcome.d.ts.map +1 -0
  436. package/dist/esm/Flow/Outcome.js +115 -0
  437. package/dist/esm/Flow/Outcome.js.map +1 -0
  438. package/dist/esm/Flow/Result.d.ts +186 -0
  439. package/dist/esm/Flow/Result.d.ts.map +1 -0
  440. package/dist/esm/Flow/Result.js +171 -0
  441. package/dist/esm/Flow/Result.js.map +1 -0
  442. package/dist/esm/Flow/Runtime.d.ts +98 -0
  443. package/dist/esm/Flow/Runtime.d.ts.map +1 -0
  444. package/dist/esm/Flow/Runtime.js +231 -0
  445. package/dist/esm/Flow/Runtime.js.map +1 -0
  446. package/dist/esm/Flow/TypeId.d.ts +8 -0
  447. package/dist/esm/Flow/TypeId.d.ts.map +1 -0
  448. package/dist/esm/Flow/TypeId.js +9 -0
  449. package/dist/esm/Flow/TypeId.js.map +1 -0
  450. package/dist/esm/Flow/index.d.ts +17 -0
  451. package/dist/esm/Flow/index.d.ts.map +1 -0
  452. package/dist/esm/Flow/index.js +18 -0
  453. package/dist/esm/Flow/index.js.map +1 -0
  454. package/dist/esm/Flow/internal.d.ts +34 -0
  455. package/dist/esm/Flow/internal.d.ts.map +1 -0
  456. package/dist/esm/Flow/internal.js +149 -0
  457. package/dist/esm/Flow/internal.js.map +1 -0
  458. package/dist/esm/Flow/make.d.ts +134 -0
  459. package/dist/esm/Flow/make.d.ts.map +1 -0
  460. package/dist/esm/Flow/make.js +106 -0
  461. package/dist/esm/Flow/make.js.map +1 -0
  462. package/dist/esm/FlowRuntime/CancelRequestFailed.d.ts +55 -0
  463. package/dist/esm/FlowRuntime/CancelRequestFailed.d.ts.map +1 -0
  464. package/dist/esm/FlowRuntime/CancelRequestFailed.js +53 -0
  465. package/dist/esm/FlowRuntime/CancelRequestFailed.js.map +1 -0
  466. package/dist/esm/FlowRuntime/ExecutionIdentityConflict.d.ts +23 -0
  467. package/dist/esm/FlowRuntime/ExecutionIdentityConflict.d.ts.map +1 -0
  468. package/dist/esm/FlowRuntime/ExecutionIdentityConflict.js +24 -0
  469. package/dist/esm/FlowRuntime/ExecutionIdentityConflict.js.map +1 -0
  470. package/dist/esm/FlowRuntime/FlowCycleDetected.d.ts +28 -0
  471. package/dist/esm/FlowRuntime/FlowCycleDetected.d.ts.map +1 -0
  472. package/dist/esm/FlowRuntime/FlowCycleDetected.js +35 -0
  473. package/dist/esm/FlowRuntime/FlowCycleDetected.js.map +1 -0
  474. package/dist/esm/FlowRuntime/FlowExecutionNotFound.d.ts +38 -0
  475. package/dist/esm/FlowRuntime/FlowExecutionNotFound.d.ts.map +1 -0
  476. package/dist/esm/FlowRuntime/FlowExecutionNotFound.js +40 -0
  477. package/dist/esm/FlowRuntime/FlowExecutionNotFound.js.map +1 -0
  478. package/dist/esm/FlowRuntime/FlowInstance.d.ts +115 -0
  479. package/dist/esm/FlowRuntime/FlowInstance.d.ts.map +1 -0
  480. package/dist/esm/FlowRuntime/FlowInstance.js +24 -0
  481. package/dist/esm/FlowRuntime/FlowInstance.js.map +1 -0
  482. package/dist/esm/FlowRuntime/FlowRuntime.d.ts +198 -0
  483. package/dist/esm/FlowRuntime/FlowRuntime.d.ts.map +1 -0
  484. package/dist/esm/FlowRuntime/FlowRuntime.js +34 -0
  485. package/dist/esm/FlowRuntime/FlowRuntime.js.map +1 -0
  486. package/dist/esm/FlowRuntime/NodeRecord.d.ts +175 -0
  487. package/dist/esm/FlowRuntime/NodeRecord.d.ts.map +1 -0
  488. package/dist/esm/FlowRuntime/NodeRecord.js +21 -0
  489. package/dist/esm/FlowRuntime/NodeRecord.js.map +1 -0
  490. package/dist/esm/FlowRuntime/WaitingAnnotation.d.ts +69 -0
  491. package/dist/esm/FlowRuntime/WaitingAnnotation.d.ts.map +1 -0
  492. package/dist/esm/FlowRuntime/WaitingAnnotation.js +53 -0
  493. package/dist/esm/FlowRuntime/WaitingAnnotation.js.map +1 -0
  494. package/dist/esm/FlowRuntime/index.d.ts +14 -0
  495. package/dist/esm/FlowRuntime/index.d.ts.map +1 -0
  496. package/dist/esm/FlowRuntime/index.js +15 -0
  497. package/dist/esm/FlowRuntime/index.js.map +1 -0
  498. package/dist/esm/Graph.d.ts +325 -0
  499. package/dist/esm/Graph.d.ts.map +1 -0
  500. package/dist/esm/Graph.js +1483 -0
  501. package/dist/esm/Graph.js.map +1 -0
  502. package/dist/esm/HumanTask.d.ts +440 -0
  503. package/dist/esm/HumanTask.d.ts.map +1 -0
  504. package/dist/esm/HumanTask.js +794 -0
  505. package/dist/esm/HumanTask.js.map +1 -0
  506. package/dist/esm/Interpreter.d.ts +222 -0
  507. package/dist/esm/Interpreter.d.ts.map +1 -0
  508. package/dist/esm/Interpreter.js +1269 -0
  509. package/dist/esm/Interpreter.js.map +1 -0
  510. package/dist/esm/Poll.d.ts +238 -0
  511. package/dist/esm/Poll.d.ts.map +1 -0
  512. package/dist/esm/Poll.js +282 -0
  513. package/dist/esm/Poll.js.map +1 -0
  514. package/dist/esm/RetryPolicy.d.ts +273 -0
  515. package/dist/esm/RetryPolicy.d.ts.map +1 -0
  516. package/dist/esm/RetryPolicy.js +429 -0
  517. package/dist/esm/RetryPolicy.js.map +1 -0
  518. package/dist/esm/Sleep.d.ts +98 -0
  519. package/dist/esm/Sleep.d.ts.map +1 -0
  520. package/dist/esm/Sleep.js +230 -0
  521. package/dist/esm/Sleep.js.map +1 -0
  522. package/dist/esm/Stall.d.ts +173 -0
  523. package/dist/esm/Stall.d.ts.map +1 -0
  524. package/dist/esm/Stall.js +138 -0
  525. package/dist/esm/Stall.js.map +1 -0
  526. package/dist/esm/WaitFor.d.ts +109 -0
  527. package/dist/esm/WaitFor.d.ts.map +1 -0
  528. package/dist/esm/WaitFor.js +184 -0
  529. package/dist/esm/WaitFor.js.map +1 -0
  530. package/dist/esm/index.d.ts +107 -0
  531. package/dist/esm/index.d.ts.map +1 -0
  532. package/dist/esm/index.js +108 -0
  533. package/dist/esm/index.js.map +1 -0
  534. package/dist/esm/internal/BoundedJson.d.ts +48 -0
  535. package/dist/esm/internal/BoundedJson.d.ts.map +1 -0
  536. package/dist/esm/internal/BoundedJson.js +107 -0
  537. package/dist/esm/internal/BoundedJson.js.map +1 -0
  538. package/dist/esm/internal/DeclarationSite.d.ts +135 -0
  539. package/dist/esm/internal/DeclarationSite.d.ts.map +1 -0
  540. package/dist/esm/internal/DeclarationSite.js +196 -0
  541. package/dist/esm/internal/DeclarationSite.js.map +1 -0
  542. package/dist/esm/internal/Declarations.d.ts +35 -0
  543. package/dist/esm/internal/Declarations.d.ts.map +1 -0
  544. package/dist/esm/internal/Declarations.js +43 -0
  545. package/dist/esm/internal/Declarations.js.map +1 -0
  546. package/dist/esm/internal/ExecutionMiddleware.d.ts +21 -0
  547. package/dist/esm/internal/ExecutionMiddleware.d.ts.map +1 -0
  548. package/dist/esm/internal/ExecutionMiddleware.js +13 -0
  549. package/dist/esm/internal/ExecutionMiddleware.js.map +1 -0
  550. package/dist/esm/internal/JsonSchemaSubset.d.ts +133 -0
  551. package/dist/esm/internal/JsonSchemaSubset.d.ts.map +1 -0
  552. package/dist/esm/internal/JsonSchemaSubset.js +363 -0
  553. package/dist/esm/internal/JsonSchemaSubset.js.map +1 -0
  554. package/dist/esm/internal/OutcomeMarker.d.ts +18 -0
  555. package/dist/esm/internal/OutcomeMarker.d.ts.map +1 -0
  556. package/dist/esm/internal/OutcomeMarker.js +18 -0
  557. package/dist/esm/internal/OutcomeMarker.js.map +1 -0
  558. package/docs/README.md +150 -0
  559. package/docs/api.md +436 -0
  560. package/docs/concepts/bodies-and-plans.md +157 -0
  561. package/docs/concepts/execution-identity.md +142 -0
  562. package/docs/concepts/flows-and-actions.md +129 -0
  563. package/docs/concepts/suspension-and-replay.md +130 -0
  564. package/docs/concepts/the-runtime-port.md +110 -0
  565. package/docs/concepts/trampoline-rounds.md +151 -0
  566. package/docs/guides/ask-a-person.md +184 -0
  567. package/docs/guides/build-a-body.md +161 -0
  568. package/docs/guides/cancel-and-roll-back.md +112 -0
  569. package/docs/guides/implement-an-action.md +147 -0
  570. package/docs/guides/inspect-the-plan.md +154 -0
  571. package/docs/guides/poll-until-ready.md +167 -0
  572. package/docs/guides/queue-work-to-a-worker.md +122 -0
  573. package/docs/guides/retry-a-failing-action.md +243 -0
  574. package/docs/guides/reuse-a-recorded-result.md +122 -0
  575. package/docs/guides/run-a-child-flow.md +108 -0
  576. package/docs/guides/run-an-external-job.md +86 -0
  577. package/docs/guides/use-a-prompt.md +38 -0
  578. package/docs/guides/wait-for-a-deadline.md +141 -0
  579. package/docs/guides/wait-for-an-external-signal.md +151 -0
  580. package/docs/installation.md +82 -0
  581. package/docs/quickstart.md +155 -0
  582. package/docs/reference/flow.md +1831 -0
  583. package/docs/testing.md +157 -0
  584. package/docs/troubleshooting.md +286 -0
  585. package/package.json +327 -3
  586. package/src/Action/Action.ts +333 -0
  587. package/src/Action/AttemptTimedOut.ts +37 -0
  588. package/src/Action/BoundaryMode.ts +33 -0
  589. package/src/Action/CacheEnvironment.ts +170 -0
  590. package/src/Action/ConcurrentKeylessDispatch.ts +38 -0
  591. package/src/Action/Context.ts +156 -0
  592. package/src/Action/DuplicateImplementation.ts +24 -0
  593. package/src/Action/FileBoundary.ts +77 -0
  594. package/src/Action/FileInput.ts +42 -0
  595. package/src/Action/Filegroup.ts +16 -0
  596. package/src/Action/Glob.ts +8 -0
  597. package/src/Action/ImplementationVersionMismatch.ts +27 -0
  598. package/src/Action/Implementations.ts +149 -0
  599. package/src/Action/InfraInterrupt.ts +30 -0
  600. package/src/Action/InfraInterruptRetriesExhausted.ts +37 -0
  601. package/src/Action/IrreversibleRetryRequiresIdempotencyKey.ts +32 -0
  602. package/src/Action/StepIdentity.ts +219 -0
  603. package/src/Action/TreeArtifact.ts +8 -0
  604. package/src/Action/TypeId.ts +9 -0
  605. package/src/Action/UncanonicalIdempotencyKey.ts +36 -0
  606. package/src/Action/idempotencyKey.ts +67 -0
  607. package/src/Action/index.ts +31 -0
  608. package/src/Action/make.ts +657 -0
  609. package/src/Action/raceAll.ts +48 -0
  610. package/src/Action/retry.ts +92 -0
  611. package/src/Deadline.ts +185 -0
  612. package/src/DurableClock.ts +133 -0
  613. package/src/DurableDeferred.ts +753 -0
  614. package/src/DurableQueue.ts +519 -0
  615. package/src/ExternalJob.ts +432 -0
  616. package/src/Fault.ts +279 -0
  617. package/src/Flow/Annotations.ts +151 -0
  618. package/src/Flow/CapabilityCeiling.ts +37 -0
  619. package/src/Flow/DeadlineExceeded.ts +40 -0
  620. package/src/Flow/ExecutionIdRequired.ts +36 -0
  621. package/src/Flow/ExecutionIds.ts +133 -0
  622. package/src/Flow/Flow.ts +576 -0
  623. package/src/Flow/MaxRoundsExceeded.ts +39 -0
  624. package/src/Flow/Outcome.ts +179 -0
  625. package/src/Flow/Result.ts +284 -0
  626. package/src/Flow/Runtime.ts +309 -0
  627. package/src/Flow/TypeId.ts +9 -0
  628. package/src/Flow/index.ts +19 -0
  629. package/src/Flow/internal.ts +237 -0
  630. package/src/Flow/make.ts +279 -0
  631. package/src/FlowRuntime/CancelRequestFailed.ts +56 -0
  632. package/src/FlowRuntime/ExecutionIdentityConflict.ts +32 -0
  633. package/src/FlowRuntime/FlowCycleDetected.ts +41 -0
  634. package/src/FlowRuntime/FlowExecutionNotFound.ts +46 -0
  635. package/src/FlowRuntime/FlowInstance.ts +128 -0
  636. package/src/FlowRuntime/FlowRuntime.ts +333 -0
  637. package/src/FlowRuntime/NodeRecord.ts +183 -0
  638. package/src/FlowRuntime/WaitingAnnotation.ts +85 -0
  639. package/src/FlowRuntime/index.ts +17 -0
  640. package/src/Graph.ts +1862 -0
  641. package/src/HumanTask.ts +1003 -0
  642. package/src/Interpreter.ts +1593 -0
  643. package/src/Poll.ts +414 -0
  644. package/src/RetryPolicy.ts +550 -0
  645. package/src/Sleep.ts +267 -0
  646. package/src/Stall.ts +217 -0
  647. package/src/WaitFor.ts +228 -0
  648. package/src/index.ts +125 -0
  649. package/src/internal/BoundedJson.ts +109 -0
  650. package/src/internal/DeclarationSite.ts +214 -0
  651. package/src/internal/Declarations.ts +49 -0
  652. package/src/internal/ExecutionMiddleware.ts +29 -0
  653. package/src/internal/JsonSchemaSubset.ts +392 -0
  654. package/src/internal/OutcomeMarker.ts +19 -0
@@ -0,0 +1,135 @@
1
+ /**
2
+ * Where a declaration was written: the author's file and the line it starts
3
+ * on.
4
+ *
5
+ * A digest says what a step IS; it cannot say where to read it. A monitor that
6
+ * offers to show the code behind a node needs the file and line the
7
+ * declaration was authored at, so the declaration carries it from the moment
8
+ * it is made — captured from an `Error` stack, which is the only place a
9
+ * JavaScript runtime keeps it.
10
+ *
11
+ * Two properties make this safe to carry. It is stored as a NON-ENUMERABLE
12
+ * own property, so canonical serialization — which walks enumerable keys —
13
+ * cannot see it, and a declaration's key material is byte-identical with and
14
+ * without it. And every parse is defensive: an engine whose stack format this
15
+ * module does not recognize yields `undefined`, never a throw and never a
16
+ * guessed location.
17
+ *
18
+ * Frames inside the framework are skipped, because the frame that matters is
19
+ * the AUTHOR's: `Action.make` is called from this package, and the interesting
20
+ * line is the one that called it.
21
+ *
22
+ * @since 1.0.0
23
+ */
24
+ /**
25
+ * The file and line a declaration was written at.
26
+ *
27
+ * `path` is the path the runtime reported, which is absolute in every engine
28
+ * this repository runs on. A journal writer makes it repo-relative before it
29
+ * records it, and omits it when it cannot: an absolute home directory is not
30
+ * a fact a durable record may carry.
31
+ *
32
+ * @since 1.0.0
33
+ * @category models
34
+ */
35
+ export interface DeclaredAt {
36
+ readonly path: string;
37
+ readonly line: number;
38
+ }
39
+ /**
40
+ * Whether a frame belongs to the framework or the runtime rather than to an
41
+ * author.
42
+ *
43
+ * Three shapes are not an author's. Anything under a `node_modules` directory,
44
+ * which is how a published `@smthrs/*` package is loaded. Anything under a
45
+ * `packages/smithers/**\/src` directory, which is how this repository loads the
46
+ * same code from source. And anything that does not name a file at all: a
47
+ * declaration made inside the framework is reached through the module loader,
48
+ * so the first frame under it is a runtime internal such as
49
+ * `node:internal/process/task_queues`, which is a real frame and a false
50
+ * author. A test, an example, and a workspace's own flow file are absolute
51
+ * paths under none of those, so they are what a capture reports.
52
+ *
53
+ * Windows spells those same two directories with backslashes, so separators
54
+ * are read as one before matching: a framework frame taken for an author's
55
+ * would name this package's own `make.js` as the site every node of that run
56
+ * was declared at.
57
+ *
58
+ * @since 1.0.0
59
+ * @category predicates
60
+ */
61
+ export declare const isFrameworkPath: (path: string) => boolean;
62
+ /**
63
+ * States that a file this runtime is about to evaluate holds bytes read from
64
+ * another, so declarations inside it report the file an author can open.
65
+ *
66
+ * A host that verifies a flow's source has to evaluate THE BYTES IT MEASURED,
67
+ * and the only way to evaluate bytes in this runtime is to write them
68
+ * somewhere and import that path. `@smthrs/registry` `Executable` writes them
69
+ * as a scratch sibling of the entry and removes it as soon as the load is
70
+ * over, so without this every declaration in an agent-authored flow reports a
71
+ * path nothing holds — a Code tab that can never be opened (D-068).
72
+ *
73
+ * The loader states this BEFORE the import, because a declaration's site is
74
+ * captured while the module is evaluated and is never rewritten afterwards.
75
+ * One entry is kept per load: a scratch path is unique and gone, so no later
76
+ * file can take a stale entry's name.
77
+ *
78
+ * @since 1.0.0
79
+ * @category constructors
80
+ */
81
+ export declare const evaluatedFrom: (evaluated: string, entry: string) => void;
82
+ /**
83
+ * The position one stack frame names, in the V8 and JavaScriptCore spellings.
84
+ *
85
+ * V8 writes ` at name (/path/file.ts:12:5)` and, for a top-level frame,
86
+ * ` at /path/file.ts:12:5`. JavaScriptCore — Bun and Safari — writes
87
+ * `name@/path/file.ts:12:5` and `@/path/file.ts:12:5`. Anything else is
88
+ * unparseable and reports nothing.
89
+ *
90
+ * @since 1.0.0
91
+ * @category parsers
92
+ */
93
+ export declare const parseFrame: (frame: string) => DeclaredAt | undefined;
94
+ /**
95
+ * The first author frame of a captured stack.
96
+ *
97
+ * The header line every V8 stack starts with parses as nothing, so it needs no
98
+ * special case. A decoding failure inside a frame path — a malformed percent
99
+ * escape in a `file://` url — is an unparseable stack rather than a throw,
100
+ * which is the whole contract of this module: provenance is a nicety, and a
101
+ * nicety may never take a declaration down with it.
102
+ *
103
+ * @since 1.0.0
104
+ * @category parsers
105
+ */
106
+ export declare const parseStack: (stack: string | undefined) => DeclaredAt | undefined;
107
+ /**
108
+ * Where the caller of the function calling this was written.
109
+ *
110
+ * @since 1.0.0
111
+ * @category constructors
112
+ */
113
+ export declare const capture: () => DeclaredAt | undefined;
114
+ /**
115
+ * Carries a source position on a declaration without adding a field to it.
116
+ *
117
+ * The property is non-enumerable and non-writable, so it cannot reach a
118
+ * canonical serialization, a digest, or a structural clone, and a later caller
119
+ * cannot rewrite one declaration's provenance to another's.
120
+ *
121
+ * @since 1.0.0
122
+ * @category constructors
123
+ */
124
+ export declare const annotate: <A extends object>(value: A, site: DeclaredAt | undefined) => A;
125
+ /**
126
+ * The source position a value carries, when it carries one.
127
+ *
128
+ * Read through an own data descriptor, so neither a prototype nor an accessor
129
+ * on a foreign value can answer for it.
130
+ *
131
+ * @since 1.0.0
132
+ * @category accessors
133
+ */
134
+ export declare const declaredAt: (value: unknown) => DeclaredAt | undefined;
135
+ //# sourceMappingURL=DeclarationSite.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeclarationSite.d.ts","sourceRoot":"","sources":["../../../src/internal/DeclarationSite.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAKH;;;;;;;;;;GAUG;AACH,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACtB;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,eAAe,GAAI,MAAM,MAAM,KAAG,OAI9C,CAAA;AA4BD;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,aAAa,GAAI,WAAW,MAAM,EAAE,OAAO,MAAM,KAAG,IAEhE,CAAA;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,UAAU,GAAI,OAAO,MAAM,KAAG,UAAU,GAAG,SAUvD,CAAA;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,UAAU,GAAI,OAAO,MAAM,GAAG,SAAS,KAAG,UAAU,GAAG,SAWnE,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,OAAO,QAAO,UAAU,GAAG,SAA0C,CAAA;AAElF;;;;;;;;;GASG;AACH,eAAO,MAAM,QAAQ,GAAI,CAAC,SAAS,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,UAAU,GAAG,SAAS,KAAG,CAYnF,CAAA;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,UAAU,GAAI,OAAO,OAAO,KAAG,UAAU,GAAG,SAIxD,CAAA"}
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var DeclarationSite_exports = {};
20
+ __export(DeclarationSite_exports, {
21
+ annotate: () => annotate,
22
+ capture: () => capture,
23
+ declaredAt: () => declaredAt,
24
+ evaluatedFrom: () => evaluatedFrom,
25
+ isFrameworkPath: () => isFrameworkPath,
26
+ parseFrame: () => parseFrame,
27
+ parseStack: () => parseStack
28
+ });
29
+ module.exports = __toCommonJS(DeclarationSite_exports);
30
+ const TypeId = "~@smthrs/flow/DeclaredAt";
31
+ const isFrameworkPath = (path) => {
32
+ if (!isFilePath(path)) return true;
33
+ const separated = path.replaceAll("\\", "/");
34
+ return separated.includes("/node_modules/") || /\/packages\/smithers\/.*\/src\//.test(separated);
35
+ };
36
+ const isFilePath = (path) => path.startsWith("/") || /^[A-Za-z]:[\\/]/.test(path);
37
+ const location = (frame) => {
38
+ const parenthesized = /\(([^()]*)\)\s*$/.exec(frame);
39
+ if (parenthesized !== null) return parenthesized[1];
40
+ const trimmed = frame.trim();
41
+ const at = trimmed.lastIndexOf("@");
42
+ if (at >= 0) return trimmed.slice(at + 1);
43
+ return trimmed.startsWith("at ") ? trimmed.slice(3) : void 0;
44
+ };
45
+ const normalize = (path) => path.startsWith("file://") ? decodeURIComponent(path.slice("file://".length)) : path;
46
+ const sourcesKey = /* @__PURE__ */ Symbol.for("@smthrs/flow/DeclaredAt/sources/v1");
47
+ const globals = globalThis;
48
+ const sources = globals[sourcesKey] ??= /* @__PURE__ */ new Map();
49
+ const evaluatedFrom = (evaluated, entry) => {
50
+ sources.set(normalize(evaluated), normalize(entry));
51
+ };
52
+ const parseFrame = (frame) => {
53
+ const text = location(frame);
54
+ if (text === void 0) return void 0;
55
+ const position = /^(.*):(\d+):(\d+)$/.exec(text);
56
+ if (position === null) return void 0;
57
+ const line = Number(position[2]);
58
+ const path = normalize(position[1]);
59
+ return { path: sources.get(path) ?? path, line };
60
+ };
61
+ const parseStack = (stack) => {
62
+ if (stack === void 0) return void 0;
63
+ try {
64
+ for (const frame of stack.split("\n")) {
65
+ const parsed = parseFrame(frame);
66
+ if (parsed !== void 0 && !isFrameworkPath(parsed.path)) return parsed;
67
+ }
68
+ return void 0;
69
+ } catch {
70
+ return void 0;
71
+ }
72
+ };
73
+ const capture = () => parseStack(new Error().stack);
74
+ const annotate = (value, site) => {
75
+ if (site === void 0 || Object.getOwnPropertyDescriptor(value, TypeId) !== void 0) return value;
76
+ Object.defineProperty(value, TypeId, {
77
+ configurable: false,
78
+ enumerable: false,
79
+ value: site,
80
+ writable: false
81
+ });
82
+ return value;
83
+ };
84
+ const declaredAt = (value) => {
85
+ if (Object(value) !== value) return void 0;
86
+ const descriptor = Object.getOwnPropertyDescriptor(value, TypeId);
87
+ return descriptor === void 0 ? void 0 : descriptor.value;
88
+ };
89
+ //# sourceMappingURL=DeclarationSite.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/internal/DeclarationSite.ts"],
4
+ "sourcesContent": ["/**\n * Where a declaration was written: the author's file and the line it starts\n * on.\n *\n * A digest says what a step IS; it cannot say where to read it. A monitor that\n * offers to show the code behind a node needs the file and line the\n * declaration was authored at, so the declaration carries it from the moment\n * it is made \u2014 captured from an `Error` stack, which is the only place a\n * JavaScript runtime keeps it.\n *\n * Two properties make this safe to carry. It is stored as a NON-ENUMERABLE\n * own property, so canonical serialization \u2014 which walks enumerable keys \u2014\n * cannot see it, and a declaration's key material is byte-identical with and\n * without it. And every parse is defensive: an engine whose stack format this\n * module does not recognize yields `undefined`, never a throw and never a\n * guessed location.\n *\n * Frames inside the framework are skipped, because the frame that matters is\n * the AUTHOR's: `Action.make` is called from this package, and the interesting\n * line is the one that called it.\n *\n * @since 1.0.0\n */\n\n/** The own property a declaration carries its source position on. @private */\nconst TypeId = \"~@smthrs/flow/DeclaredAt\"\n\n/**\n * The file and line a declaration was written at.\n *\n * `path` is the path the runtime reported, which is absolute in every engine\n * this repository runs on. A journal writer makes it repo-relative before it\n * records it, and omits it when it cannot: an absolute home directory is not\n * a fact a durable record may carry.\n *\n * @since 1.0.0\n * @category models\n */\nexport interface DeclaredAt {\n readonly path: string\n readonly line: number\n}\n\n/**\n * Whether a frame belongs to the framework or the runtime rather than to an\n * author.\n *\n * Three shapes are not an author's. Anything under a `node_modules` directory,\n * which is how a published `@smthrs/*` package is loaded. Anything under a\n * `packages/smithers/**\\/src` directory, which is how this repository loads the\n * same code from source. And anything that does not name a file at all: a\n * declaration made inside the framework is reached through the module loader,\n * so the first frame under it is a runtime internal such as\n * `node:internal/process/task_queues`, which is a real frame and a false\n * author. A test, an example, and a workspace's own flow file are absolute\n * paths under none of those, so they are what a capture reports.\n *\n * Windows spells those same two directories with backslashes, so separators\n * are read as one before matching: a framework frame taken for an author's\n * would name this package's own `make.js` as the site every node of that run\n * was declared at.\n *\n * @since 1.0.0\n * @category predicates\n */\nexport const isFrameworkPath = (path: string): boolean => {\n if (!isFilePath(path)) return true\n const separated = path.replaceAll(\"\\\\\", \"/\")\n return separated.includes(\"/node_modules/\") || /\\/packages\\/smithers\\/.*\\/src\\//.test(separated)\n}\n\n/** Whether a frame path names a file on disk rather than a runtime module. @private */\nconst isFilePath = (path: string): boolean => path.startsWith(\"/\") || /^[A-Za-z]:[\\\\/]/.test(path)\n\n/** The `path:line:column` text of one stack frame, in either engine's spelling. @private */\nconst location = (frame: string): string | undefined => {\n const parenthesized = /\\(([^()]*)\\)\\s*$/.exec(frame)\n if (parenthesized !== null) return parenthesized[1]\n const trimmed = frame.trim()\n const at = trimmed.lastIndexOf(\"@\")\n if (at >= 0) return trimmed.slice(at + 1)\n return trimmed.startsWith(\"at \") ? trimmed.slice(3) : undefined\n}\n\n/** A `file://` url reported as a frame path, as an ordinary path. @private */\nconst normalize = (path: string): string =>\n path.startsWith(\"file://\") ? decodeURIComponent(path.slice(\"file://\".length)) : path\n\n/**\n * Where bytes a host evaluated from one file were read from. @private\n *\n * Keyed by the file that was evaluated, which a loader makes unique per load.\n */\nconst sourcesKey = Symbol.for(\"@smthrs/flow/DeclaredAt/sources/v1\")\nconst globals = globalThis as typeof globalThis & { [sourcesKey]?: Map<string, string> }\nconst sources = globals[sourcesKey] ??= new Map<string, string>()\n\n/**\n * States that a file this runtime is about to evaluate holds bytes read from\n * another, so declarations inside it report the file an author can open.\n *\n * A host that verifies a flow's source has to evaluate THE BYTES IT MEASURED,\n * and the only way to evaluate bytes in this runtime is to write them\n * somewhere and import that path. `@smthrs/registry` `Executable` writes them\n * as a scratch sibling of the entry and removes it as soon as the load is\n * over, so without this every declaration in an agent-authored flow reports a\n * path nothing holds \u2014 a Code tab that can never be opened (D-068).\n *\n * The loader states this BEFORE the import, because a declaration's site is\n * captured while the module is evaluated and is never rewritten afterwards.\n * One entry is kept per load: a scratch path is unique and gone, so no later\n * file can take a stale entry's name.\n *\n * @since 1.0.0\n * @category constructors\n */\nexport const evaluatedFrom = (evaluated: string, entry: string): void => {\n sources.set(normalize(evaluated), normalize(entry))\n}\n\n/**\n * The position one stack frame names, in the V8 and JavaScriptCore spellings.\n *\n * V8 writes ` at name (/path/file.ts:12:5)` and, for a top-level frame,\n * ` at /path/file.ts:12:5`. JavaScriptCore \u2014 Bun and Safari \u2014 writes\n * `name@/path/file.ts:12:5` and `@/path/file.ts:12:5`. Anything else is\n * unparseable and reports nothing.\n *\n * @since 1.0.0\n * @category parsers\n */\nexport const parseFrame = (frame: string): DeclaredAt | undefined => {\n const text = location(frame)\n if (text === undefined) return undefined\n const position = /^(.*):(\\d+):(\\d+)$/.exec(text)\n if (position === null) return undefined\n const line = Number(position[2])\n // A frame naming a file a host evaluated measured bytes into reports the\n // entry those bytes were read from; every other frame reports itself.\n const path = normalize(position[1]!)\n return { path: sources.get(path) ?? path, line }\n}\n\n/**\n * The first author frame of a captured stack.\n *\n * The header line every V8 stack starts with parses as nothing, so it needs no\n * special case. A decoding failure inside a frame path \u2014 a malformed percent\n * escape in a `file://` url \u2014 is an unparseable stack rather than a throw,\n * which is the whole contract of this module: provenance is a nicety, and a\n * nicety may never take a declaration down with it.\n *\n * @since 1.0.0\n * @category parsers\n */\nexport const parseStack = (stack: string | undefined): DeclaredAt | undefined => {\n if (stack === undefined) return undefined\n try {\n for (const frame of stack.split(\"\\n\")) {\n const parsed = parseFrame(frame)\n if (parsed !== undefined && !isFrameworkPath(parsed.path)) return parsed\n }\n return undefined\n } catch {\n return undefined\n }\n}\n\n/**\n * Where the caller of the function calling this was written.\n *\n * @since 1.0.0\n * @category constructors\n */\nexport const capture = (): DeclaredAt | undefined => parseStack(new Error().stack)\n\n/**\n * Carries a source position on a declaration without adding a field to it.\n *\n * The property is non-enumerable and non-writable, so it cannot reach a\n * canonical serialization, a digest, or a structural clone, and a later caller\n * cannot rewrite one declaration's provenance to another's.\n *\n * @since 1.0.0\n * @category constructors\n */\nexport const annotate = <A extends object>(value: A, site: DeclaredAt | undefined): A => {\n // A declaration annotated twice keeps the FIRST site. The property is\n // non-configurable, so a second `defineProperty` would throw rather than\n // overwrite, and a copy that carries its own site has already recorded it.\n if (site === undefined || Object.getOwnPropertyDescriptor(value, TypeId) !== undefined) return value\n Object.defineProperty(value, TypeId, {\n configurable: false,\n enumerable: false,\n value: site,\n writable: false\n })\n return value\n}\n\n/**\n * The source position a value carries, when it carries one.\n *\n * Read through an own data descriptor, so neither a prototype nor an accessor\n * on a foreign value can answer for it.\n *\n * @since 1.0.0\n * @category accessors\n */\nexport const declaredAt = (value: unknown): DeclaredAt | undefined => {\n if (Object(value) !== value) return undefined\n const descriptor = Object.getOwnPropertyDescriptor(value, TypeId)\n return descriptor === undefined ? undefined : descriptor.value as DeclaredAt | undefined\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAyBA,MAAM,SAAS;AAwCR,MAAM,kBAAkB,CAAC,SAA0B;AACxD,MAAI,CAAC,WAAW,IAAI,EAAG,QAAO;AAC9B,QAAM,YAAY,KAAK,WAAW,MAAM,GAAG;AAC3C,SAAO,UAAU,SAAS,gBAAgB,KAAK,kCAAkC,KAAK,SAAS;AACjG;AAGA,MAAM,aAAa,CAAC,SAA0B,KAAK,WAAW,GAAG,KAAK,kBAAkB,KAAK,IAAI;AAGjG,MAAM,WAAW,CAAC,UAAsC;AACtD,QAAM,gBAAgB,mBAAmB,KAAK,KAAK;AACnD,MAAI,kBAAkB,KAAM,QAAO,cAAc,CAAC;AAClD,QAAM,UAAU,MAAM,KAAK;AAC3B,QAAM,KAAK,QAAQ,YAAY,GAAG;AAClC,MAAI,MAAM,EAAG,QAAO,QAAQ,MAAM,KAAK,CAAC;AACxC,SAAO,QAAQ,WAAW,KAAK,IAAI,QAAQ,MAAM,CAAC,IAAI;AACxD;AAGA,MAAM,YAAY,CAAC,SACjB,KAAK,WAAW,SAAS,IAAI,mBAAmB,KAAK,MAAM,UAAU,MAAM,CAAC,IAAI;AAOlF,MAAM,aAAa,uBAAO,IAAI,oCAAoC;AAClE,MAAM,UAAU;AAChB,MAAM,UAAU,QAAQ,UAAU,MAAM,oBAAI,IAAoB;AAqBzD,MAAM,gBAAgB,CAAC,WAAmB,UAAwB;AACvE,UAAQ,IAAI,UAAU,SAAS,GAAG,UAAU,KAAK,CAAC;AACpD;AAaO,MAAM,aAAa,CAAC,UAA0C;AACnE,QAAM,OAAO,SAAS,KAAK;AAC3B,MAAI,SAAS,OAAW,QAAO;AAC/B,QAAM,WAAW,qBAAqB,KAAK,IAAI;AAC/C,MAAI,aAAa,KAAM,QAAO;AAC9B,QAAM,OAAO,OAAO,SAAS,CAAC,CAAC;AAG/B,QAAM,OAAO,UAAU,SAAS,CAAC,CAAE;AACnC,SAAO,EAAE,MAAM,QAAQ,IAAI,IAAI,KAAK,MAAM,KAAK;AACjD;AAcO,MAAM,aAAa,CAAC,UAAsD;AAC/E,MAAI,UAAU,OAAW,QAAO;AAChC,MAAI;AACF,eAAW,SAAS,MAAM,MAAM,IAAI,GAAG;AACrC,YAAM,SAAS,WAAW,KAAK;AAC/B,UAAI,WAAW,UAAa,CAAC,gBAAgB,OAAO,IAAI,EAAG,QAAO;AAAA,IACpE;AACA,WAAO;AAAA,EACT,QAAQ;AACN,WAAO;AAAA,EACT;AACF;AAQO,MAAM,UAAU,MAA8B,WAAW,IAAI,MAAM,EAAE,KAAK;AAY1E,MAAM,WAAW,CAAmB,OAAU,SAAoC;AAIvF,MAAI,SAAS,UAAa,OAAO,yBAAyB,OAAO,MAAM,MAAM,OAAW,QAAO;AAC/F,SAAO,eAAe,OAAO,QAAQ;AAAA,IACnC,cAAc;AAAA,IACd,YAAY;AAAA,IACZ,OAAO;AAAA,IACP,UAAU;AAAA,EACZ,CAAC;AACD,SAAO;AACT;AAWO,MAAM,aAAa,CAAC,UAA2C;AACpE,MAAI,OAAO,KAAK,MAAM,MAAO,QAAO;AACpC,QAAM,aAAa,OAAO,yBAAyB,OAAO,MAAM;AAChE,SAAO,eAAe,SAAY,SAAY,WAAW;AAC3D;",
6
+ "names": []
7
+ }
@@ -0,0 +1,35 @@
1
+ /**
2
+ * The lowering every declaration in this package shares: literal
3
+ * `capabilities`, `effects` and `modelInvocable` become entries in the
4
+ * annotation bag readers already consult.
5
+ *
6
+ * Both literals exist so a CATALOG can project them from source text without
7
+ * importing the module, so this is the only place either spelling is turned
8
+ * into a value. A flow or an action that declares `capabilities` and one that
9
+ * annotates {@link module:Flow/Annotations.Capabilities} are the same
10
+ * declaration to {@link module:Graph.build}, and the same holds for `effects`
11
+ * and {@link module:Flow/Annotations.EffectEnvelope}.
12
+ *
13
+ * It lives here, below both constructors, because a flow and an action lower
14
+ * the same two literals and a second copy would let one gain a field the other
15
+ * kept ignoring.
16
+ *
17
+ * @since 0.1.0
18
+ * @private
19
+ */
20
+ import * as Effects from "@smthrs/plan/Effects";
21
+ import * as Context from "effect/Context";
22
+ /**
23
+ * Lowers the literal declarations a constructor call carries into the
24
+ * annotation bag, leaving every annotation the caller already supplied.
25
+ *
26
+ * @since 0.1.0
27
+ * @private
28
+ */
29
+ export declare const lowerDeclarations: (options: {
30
+ readonly capabilities?: ReadonlyArray<string> | undefined;
31
+ readonly effects?: Effects.MakeOptions | undefined;
32
+ readonly modelInvocable?: boolean | undefined;
33
+ readonly annotations?: Context.Context<never> | undefined;
34
+ }) => Context.Context<never>;
35
+ //# sourceMappingURL=Declarations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Declarations.d.ts","sourceRoot":"","sources":["../../../src/internal/Declarations.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAA;AAC/C,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AAGzC;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,GAAI,SAAS;IACzC,QAAQ,CAAC,YAAY,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,SAAS,CAAA;IACzD,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,WAAW,GAAG,SAAS,CAAA;IAClD,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IAC7C,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,SAAS,CAAA;CAC1D,KAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAYxB,CAAA"}
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var Declarations_exports = {};
30
+ __export(Declarations_exports, {
31
+ lowerDeclarations: () => lowerDeclarations
32
+ });
33
+ module.exports = __toCommonJS(Declarations_exports);
34
+ var Effects = __toESM(require("@smthrs/plan/Effects"), 1);
35
+ var Context = __toESM(require("effect/Context"), 1);
36
+ var import_Annotations = require("../Flow/Annotations.js");
37
+ const lowerDeclarations = (options) => {
38
+ let annotations = options.annotations ?? Context.empty();
39
+ if (options.capabilities !== void 0) {
40
+ annotations = Context.add(annotations, import_Annotations.Capabilities, options.capabilities);
41
+ }
42
+ if (options.effects !== void 0) {
43
+ annotations = Context.add(annotations, import_Annotations.EffectEnvelope, Effects.make(options.effects));
44
+ }
45
+ if (options.modelInvocable !== void 0) {
46
+ annotations = Context.add(annotations, import_Annotations.ModelInvocable, options.modelInvocable);
47
+ }
48
+ return annotations;
49
+ };
50
+ //# sourceMappingURL=Declarations.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/internal/Declarations.ts"],
4
+ "sourcesContent": ["/**\n * The lowering every declaration in this package shares: literal\n * `capabilities`, `effects` and `modelInvocable` become entries in the\n * annotation bag readers already consult.\n *\n * Both literals exist so a CATALOG can project them from source text without\n * importing the module, so this is the only place either spelling is turned\n * into a value. A flow or an action that declares `capabilities` and one that\n * annotates {@link module:Flow/Annotations.Capabilities} are the same\n * declaration to {@link module:Graph.build}, and the same holds for `effects`\n * and {@link module:Flow/Annotations.EffectEnvelope}.\n *\n * It lives here, below both constructors, because a flow and an action lower\n * the same two literals and a second copy would let one gain a field the other\n * kept ignoring.\n *\n * @since 0.1.0\n * @private\n */\n\nimport * as Effects from \"@smthrs/plan/Effects\"\nimport * as Context from \"effect/Context\"\nimport { Capabilities, EffectEnvelope, ModelInvocable } from \"../Flow/Annotations.ts\"\n\n/**\n * Lowers the literal declarations a constructor call carries into the\n * annotation bag, leaving every annotation the caller already supplied.\n *\n * @since 0.1.0\n * @private\n */\nexport const lowerDeclarations = (options: {\n readonly capabilities?: ReadonlyArray<string> | undefined\n readonly effects?: Effects.MakeOptions | undefined\n readonly modelInvocable?: boolean | undefined\n readonly annotations?: Context.Context<never> | undefined\n}): Context.Context<never> => {\n let annotations = options.annotations ?? Context.empty()\n if (options.capabilities !== undefined) {\n annotations = Context.add(annotations, Capabilities, options.capabilities)\n }\n if (options.effects !== undefined) {\n annotations = Context.add(annotations, EffectEnvelope, Effects.make(options.effects))\n }\n if (options.modelInvocable !== undefined) {\n annotations = Context.add(annotations, ModelInvocable, options.modelInvocable)\n }\n return annotations\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAoBA,cAAyB;AACzB,cAAyB;AACzB,yBAA6D;AAStD,MAAM,oBAAoB,CAAC,YAKJ;AAC5B,MAAI,cAAc,QAAQ,eAAe,QAAQ,MAAM;AACvD,MAAI,QAAQ,iBAAiB,QAAW;AACtC,kBAAc,QAAQ,IAAI,aAAa,iCAAc,QAAQ,YAAY;AAAA,EAC3E;AACA,MAAI,QAAQ,YAAY,QAAW;AACjC,kBAAc,QAAQ,IAAI,aAAa,mCAAgB,QAAQ,KAAK,QAAQ,OAAO,CAAC;AAAA,EACtF;AACA,MAAI,QAAQ,mBAAmB,QAAW;AACxC,kBAAc,QAAQ,IAAI,aAAa,mCAAgB,QAAQ,cAAc;AAAA,EAC/E;AACA,SAAO;AACT;",
6
+ "names": []
7
+ }
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Internal interpreter seam for authoring combinators that retain execution
3
+ * scope state around the ordinary body. No graph or runtime decision lives here.
4
+ *
5
+ * @since 1.0.0
6
+ */
7
+ import * as Context from "effect/Context";
8
+ import type * as Effect from "effect/Effect";
9
+ /** Internal execution wrapper.
10
+ * @private
11
+ * @since 1.0.0
12
+ */
13
+ export interface ExecutionMiddleware {
14
+ readonly wrap: (payload: unknown, body: Effect.Effect<unknown, unknown, unknown>) => Effect.Effect<unknown, unknown, unknown>;
15
+ }
16
+ /** Flow-owned wrapper retained across interpreter registrations.
17
+ * @private
18
+ * @since 1.0.0
19
+ */
20
+ export declare const ExecutionMiddleware: Context.Reference<ExecutionMiddleware | undefined>;
21
+ //# sourceMappingURL=ExecutionMiddleware.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExecutionMiddleware.d.ts","sourceRoot":"","sources":["../../../src/internal/ExecutionMiddleware.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AACzC,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAA;AAE5C;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,IAAI,EAAE,CACb,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,KAC3C,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;CAC9C;AAED;;;GAGG;AACH,eAAO,MAAM,mBAAmB,oDAG/B,CAAA"}
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var ExecutionMiddleware_exports = {};
30
+ __export(ExecutionMiddleware_exports, {
31
+ ExecutionMiddleware: () => ExecutionMiddleware
32
+ });
33
+ module.exports = __toCommonJS(ExecutionMiddleware_exports);
34
+ var Context = __toESM(require("effect/Context"), 1);
35
+ const ExecutionMiddleware = Context.Reference(
36
+ "@smthrs/flow/internal/ExecutionMiddleware",
37
+ { defaultValue: () => void 0 }
38
+ );
39
+ //# sourceMappingURL=ExecutionMiddleware.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/internal/ExecutionMiddleware.ts"],
4
+ "sourcesContent": ["/**\n * Internal interpreter seam for authoring combinators that retain execution\n * scope state around the ordinary body. No graph or runtime decision lives here.\n *\n * @since 1.0.0\n */\n\nimport * as Context from \"effect/Context\"\nimport type * as Effect from \"effect/Effect\"\n\n/** Internal execution wrapper.\n * @private\n * @since 1.0.0\n */\nexport interface ExecutionMiddleware {\n readonly wrap: (\n payload: unknown,\n body: Effect.Effect<unknown, unknown, unknown>\n ) => Effect.Effect<unknown, unknown, unknown>\n}\n\n/** Flow-owned wrapper retained across interpreter registrations.\n * @private\n * @since 1.0.0\n */\nexport const ExecutionMiddleware = Context.Reference<ExecutionMiddleware | undefined>(\n \"@smthrs/flow/internal/ExecutionMiddleware\",\n { defaultValue: () => undefined }\n)\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,cAAyB;AAkBlB,MAAM,sBAAsB,QAAQ;AAAA,EACzC;AAAA,EACA,EAAE,cAAc,MAAM,OAAU;AAClC;",
6
+ "names": []
7
+ }
@@ -0,0 +1,133 @@
1
+ /**
2
+ * The bounded JSON Schema subset a human-task answer is checked against.
3
+ *
4
+ * `HumanTask` asks a person for a value and refuses one that does not fit the
5
+ * question. The fit for a `json` question is decided here: a schema is kept
6
+ * inside a deliberately small subset, an answer is checked against it under
7
+ * the same size bounds every human-task value is admitted under, and every
8
+ * rejection is rendered within one diagnostic budget. `HumanTask` re-exports
9
+ * the limits and the two public entry points; this file is the mechanism.
10
+ *
11
+ * @since 1.0.0
12
+ */
13
+ import * as BoundedJson from "./BoundedJson.ts";
14
+ /**
15
+ * The deepest supported JSON Schema path, counting the root as depth zero.
16
+ *
17
+ * @private
18
+ * @since 1.0.0
19
+ */
20
+ export declare const maxSchemaDepth = 32;
21
+ /**
22
+ * The most schema objects one human-task request may contain.
23
+ *
24
+ * @private
25
+ * @since 1.0.0
26
+ */
27
+ export declare const maxSchemaNodes = 512;
28
+ /**
29
+ * The most JSON values embedded across schema keywords such as `enum`.
30
+ *
31
+ * @private
32
+ * @since 1.0.0
33
+ */
34
+ export declare const maxSchemaValueNodes = 10000;
35
+ /**
36
+ * The deepest JSON value embedded in a schema, including enum members.
37
+ *
38
+ * @private
39
+ * @since 1.0.0
40
+ */
41
+ export declare const maxSchemaValueDepth = 64;
42
+ /**
43
+ * The most JSON values one answer validation may visit.
44
+ *
45
+ * @private
46
+ * @since 1.0.0
47
+ */
48
+ export declare const maxAnswerNodes = 10000;
49
+ /**
50
+ * The largest encoded JSON answer that can enter the durable store.
51
+ *
52
+ * @private
53
+ * @since 1.0.0
54
+ */
55
+ export declare const maxAnswerBytes: number;
56
+ /**
57
+ * The largest encoded JSON Schema carried by one question.
58
+ *
59
+ * @private
60
+ * @since 1.0.0
61
+ */
62
+ export declare const maxSchemaBytes: number;
63
+ /**
64
+ * The deepest admitted answer tree.
65
+ *
66
+ * @private
67
+ * @since 1.0.0
68
+ */
69
+ export declare const maxAnswerDepth = 64;
70
+ /**
71
+ * The largest encoded string value admitted in a request or answer.
72
+ *
73
+ * @private
74
+ * @since 1.0.0
75
+ */
76
+ export declare const maxJsonStringBytes: number;
77
+ /**
78
+ * The largest encoded object key admitted in a request or answer.
79
+ *
80
+ * @private
81
+ * @since 1.0.0
82
+ */
83
+ export declare const maxJsonKeyBytes: number;
84
+ /**
85
+ * The most members admitted in one JSON array or object.
86
+ *
87
+ * @private
88
+ * @since 1.0.0
89
+ */
90
+ export declare const maxJsonMembers = 10000;
91
+ /**
92
+ * The most caller-supplied characters retained in one rendered diagnostic.
93
+ *
94
+ * @private
95
+ * @since 1.0.0
96
+ */
97
+ export declare const maxDiagnosticChars = 512;
98
+ /** Truncates a caller-supplied diagnostic while stating exactly what was dropped.
99
+ * @private
100
+ * @since 1.0.0
101
+ */
102
+ export declare const truncateDiagnostic: (rendered: string) => string;
103
+ /** Renders one JSON value for a bounded rejection message.
104
+ * @private
105
+ * @since 1.0.0
106
+ */
107
+ export declare const renderDiagnostic: (value: unknown) => string;
108
+ /** The bounds one answer is admitted under.
109
+ * @private
110
+ * @since 1.0.0
111
+ */
112
+ export declare const answerLimits: BoundedJson.Limits;
113
+ /** The bounds one schema is admitted under, enum members included.
114
+ * @private
115
+ * @since 1.0.0
116
+ */
117
+ export declare const schemaLimits: BoundedJson.Limits;
118
+ /** Checks schema validity and snapshots both inputs before walking them together.
119
+ * @private
120
+ * @since 1.0.0
121
+ */
122
+ export declare const check: (value: unknown, schema: unknown) => string | undefined;
123
+ /**
124
+ * Checks that a JSON Schema stays inside the bounded subset, at every depth.
125
+ *
126
+ * Returns the first reason the schema is out of bounds, or `undefined` when the
127
+ * whole tree is inside it.
128
+ *
129
+ * @private
130
+ * @since 1.0.0
131
+ */
132
+ export declare const validateSchema: (schema: unknown, path: ReadonlyArray<string>) => string | undefined;
133
+ //# sourceMappingURL=JsonSchemaSubset.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JsonSchemaSubset.d.ts","sourceRoot":"","sources":["../../../src/internal/JsonSchemaSubset.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C;;;;;GAKG;AACH,eAAO,MAAM,cAAc,KAAK,CAAA;AAEhC;;;;;GAKG;AACH,eAAO,MAAM,cAAc,MAAM,CAAA;AAEjC;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,QAAS,CAAA;AAEzC;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,KAAK,CAAA;AAErC;;;;;GAKG;AACH,eAAO,MAAM,cAAc,QAAS,CAAA;AAEpC;;;;;GAKG;AACH,eAAO,MAAM,cAAc,QAAa,CAAA;AAExC;;;;;GAKG;AACH,eAAO,MAAM,cAAc,QAAa,CAAA;AAExC;;;;;GAKG;AACH,eAAO,MAAM,cAAc,KAAK,CAAA;AAEhC;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,QAAa,CAAA;AAE5C;;;;;GAKG;AACH,eAAO,MAAM,eAAe,QAAW,CAAA;AAEvC;;;;;GAKG;AACH,eAAO,MAAM,cAAc,QAAS,CAAA;AAEpC;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,MAAM,CAAA;AAiBrC;;;GAGG;AACH,eAAO,MAAM,kBAAkB,GAAI,UAAU,MAAM,KAAG,MAKrD,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,gBAAgB,GAAI,OAAO,OAAO,KAAG,MAAuD,CAAA;AA8CzG;;;GAGG;AACH,eAAO,MAAM,YAAY,EAAE,WAAW,CAAC,MAOtC,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,YAAY,EAAE,WAAW,CAAC,MAOtC,CAAA;AAsFD;;;GAGG;AACH,eAAO,MAAM,KAAK,GAAI,OAAO,OAAO,EAAE,QAAQ,OAAO,KAAG,MAAM,GAAG,SAQhE,CAAA;AAiED;;;;;;;;GAQG;AACH,eAAO,MAAM,cAAc,GACzB,QAAQ,OAAO,EACf,MAAM,aAAa,CAAC,MAAM,CAAC,KAC1B,MAAM,GAAG,SAKX,CAAA"}