@orbytautomation/engine 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (582) hide show
  1. package/README.md +0 -0
  2. package/dist/adapters/AdapterRegistry.d.ts +129 -0
  3. package/dist/adapters/AdapterRegistry.d.ts.map +1 -0
  4. package/dist/adapters/AdapterRegistry.js +236 -0
  5. package/dist/adapters/AdapterRegistry.js.map +1 -0
  6. package/dist/adapters/StepAdapter.d.ts +2 -0
  7. package/dist/adapters/StepAdapter.d.ts.map +1 -0
  8. package/dist/adapters/StepAdapter.js +2 -0
  9. package/dist/adapters/StepAdapter.js.map +1 -0
  10. package/dist/adapters/WorkflowAdapter.d.ts +2 -0
  11. package/dist/adapters/WorkflowAdapter.d.ts.map +1 -0
  12. package/dist/adapters/WorkflowAdapter.js +2 -0
  13. package/dist/adapters/WorkflowAdapter.js.map +1 -0
  14. package/dist/adapters/builtins/CLIAdapter.d.ts +38 -0
  15. package/dist/adapters/builtins/CLIAdapter.d.ts.map +1 -0
  16. package/dist/adapters/builtins/CLIAdapter.js +173 -0
  17. package/dist/adapters/builtins/CLIAdapter.js.map +1 -0
  18. package/dist/adapters/builtins/CLICommandResolver.d.ts +49 -0
  19. package/dist/adapters/builtins/CLICommandResolver.d.ts.map +1 -0
  20. package/dist/adapters/builtins/CLICommandResolver.js +63 -0
  21. package/dist/adapters/builtins/CLICommandResolver.js.map +1 -0
  22. package/dist/adapters/builtins/CLIResultParser.d.ts +61 -0
  23. package/dist/adapters/builtins/CLIResultParser.d.ts.map +1 -0
  24. package/dist/adapters/builtins/CLIResultParser.js +113 -0
  25. package/dist/adapters/builtins/CLIResultParser.js.map +1 -0
  26. package/dist/adapters/builtins/ConnectionManager.d.ts +106 -0
  27. package/dist/adapters/builtins/ConnectionManager.d.ts.map +1 -0
  28. package/dist/adapters/builtins/ConnectionManager.js +162 -0
  29. package/dist/adapters/builtins/ConnectionManager.js.map +1 -0
  30. package/dist/adapters/builtins/Consumer.d.ts +110 -0
  31. package/dist/adapters/builtins/Consumer.d.ts.map +1 -0
  32. package/dist/adapters/builtins/Consumer.js +113 -0
  33. package/dist/adapters/builtins/Consumer.js.map +1 -0
  34. package/dist/adapters/builtins/DBAdapter.d.ts +79 -0
  35. package/dist/adapters/builtins/DBAdapter.d.ts.map +1 -0
  36. package/dist/adapters/builtins/DBAdapter.js +259 -0
  37. package/dist/adapters/builtins/DBAdapter.js.map +1 -0
  38. package/dist/adapters/builtins/EnvResolver.d.ts +66 -0
  39. package/dist/adapters/builtins/EnvResolver.d.ts.map +1 -0
  40. package/dist/adapters/builtins/EnvResolver.js +121 -0
  41. package/dist/adapters/builtins/EnvResolver.js.map +1 -0
  42. package/dist/adapters/builtins/FSAdapter.d.ts +50 -0
  43. package/dist/adapters/builtins/FSAdapter.d.ts.map +1 -0
  44. package/dist/adapters/builtins/FSAdapter.js +282 -0
  45. package/dist/adapters/builtins/FSAdapter.js.map +1 -0
  46. package/dist/adapters/builtins/FileResolver.d.ts +50 -0
  47. package/dist/adapters/builtins/FileResolver.d.ts.map +1 -0
  48. package/dist/adapters/builtins/FileResolver.js +77 -0
  49. package/dist/adapters/builtins/FileResolver.js.map +1 -0
  50. package/dist/adapters/builtins/HTTPAdapter.d.ts +58 -0
  51. package/dist/adapters/builtins/HTTPAdapter.d.ts.map +1 -0
  52. package/dist/adapters/builtins/HTTPAdapter.js +213 -0
  53. package/dist/adapters/builtins/HTTPAdapter.js.map +1 -0
  54. package/dist/adapters/builtins/HTTPRequestBuilder.d.ts +95 -0
  55. package/dist/adapters/builtins/HTTPRequestBuilder.d.ts.map +1 -0
  56. package/dist/adapters/builtins/HTTPRequestBuilder.js +159 -0
  57. package/dist/adapters/builtins/HTTPRequestBuilder.js.map +1 -0
  58. package/dist/adapters/builtins/HTTPResponseParser.d.ts +74 -0
  59. package/dist/adapters/builtins/HTTPResponseParser.d.ts.map +1 -0
  60. package/dist/adapters/builtins/HTTPResponseParser.js +144 -0
  61. package/dist/adapters/builtins/HTTPResponseParser.js.map +1 -0
  62. package/dist/adapters/builtins/PathSecurityPolicy.d.ts +38 -0
  63. package/dist/adapters/builtins/PathSecurityPolicy.d.ts.map +1 -0
  64. package/dist/adapters/builtins/PathSecurityPolicy.js +125 -0
  65. package/dist/adapters/builtins/PathSecurityPolicy.js.map +1 -0
  66. package/dist/adapters/builtins/Producer.d.ts +99 -0
  67. package/dist/adapters/builtins/Producer.d.ts.map +1 -0
  68. package/dist/adapters/builtins/Producer.js +59 -0
  69. package/dist/adapters/builtins/Producer.js.map +1 -0
  70. package/dist/adapters/builtins/QueryExecutor.d.ts +102 -0
  71. package/dist/adapters/builtins/QueryExecutor.d.ts.map +1 -0
  72. package/dist/adapters/builtins/QueryExecutor.js +90 -0
  73. package/dist/adapters/builtins/QueryExecutor.js.map +1 -0
  74. package/dist/adapters/builtins/QueueAdapter.d.ts +72 -0
  75. package/dist/adapters/builtins/QueueAdapter.d.ts.map +1 -0
  76. package/dist/adapters/builtins/QueueAdapter.js +209 -0
  77. package/dist/adapters/builtins/QueueAdapter.js.map +1 -0
  78. package/dist/adapters/builtins/SecretProvider.d.ts +69 -0
  79. package/dist/adapters/builtins/SecretProvider.d.ts.map +1 -0
  80. package/dist/adapters/builtins/SecretProvider.js +71 -0
  81. package/dist/adapters/builtins/SecretProvider.js.map +1 -0
  82. package/dist/adapters/builtins/SecretsAdapter.d.ts +48 -0
  83. package/dist/adapters/builtins/SecretsAdapter.d.ts.map +1 -0
  84. package/dist/adapters/builtins/SecretsAdapter.js +154 -0
  85. package/dist/adapters/builtins/SecretsAdapter.js.map +1 -0
  86. package/dist/adapters/builtins/ShellAdapter.d.ts +46 -0
  87. package/dist/adapters/builtins/ShellAdapter.d.ts.map +1 -0
  88. package/dist/adapters/builtins/ShellAdapter.js +200 -0
  89. package/dist/adapters/builtins/ShellAdapter.js.map +1 -0
  90. package/dist/adapters/builtins/ShellExecutor.d.ts +72 -0
  91. package/dist/adapters/builtins/ShellExecutor.d.ts.map +1 -0
  92. package/dist/adapters/builtins/ShellExecutor.js +94 -0
  93. package/dist/adapters/builtins/ShellExecutor.js.map +1 -0
  94. package/dist/adapters/builtins/ShellSecurityPolicy.d.ts +58 -0
  95. package/dist/adapters/builtins/ShellSecurityPolicy.d.ts.map +1 -0
  96. package/dist/adapters/builtins/ShellSecurityPolicy.js +135 -0
  97. package/dist/adapters/builtins/ShellSecurityPolicy.js.map +1 -0
  98. package/dist/adapters/builtins/index.d.ts +27 -0
  99. package/dist/adapters/builtins/index.d.ts.map +1 -0
  100. package/dist/adapters/builtins/index.js +35 -0
  101. package/dist/adapters/builtins/index.js.map +1 -0
  102. package/dist/adapters/index.d.ts +5 -0
  103. package/dist/adapters/index.d.ts.map +1 -0
  104. package/dist/adapters/index.js +6 -0
  105. package/dist/adapters/index.js.map +1 -0
  106. package/dist/automation/BackoffStrategy.d.ts +106 -0
  107. package/dist/automation/BackoffStrategy.d.ts.map +1 -0
  108. package/dist/automation/BackoffStrategy.js +168 -0
  109. package/dist/automation/BackoffStrategy.js.map +1 -0
  110. package/dist/automation/FailureStrategy.d.ts +141 -0
  111. package/dist/automation/FailureStrategy.d.ts.map +1 -0
  112. package/dist/automation/FailureStrategy.js +246 -0
  113. package/dist/automation/FailureStrategy.js.map +1 -0
  114. package/dist/automation/RetryPolicy.d.ts +132 -0
  115. package/dist/automation/RetryPolicy.d.ts.map +1 -0
  116. package/dist/automation/RetryPolicy.js +241 -0
  117. package/dist/automation/RetryPolicy.js.map +1 -0
  118. package/dist/automation/TimeoutManager.d.ts +145 -0
  119. package/dist/automation/TimeoutManager.d.ts.map +1 -0
  120. package/dist/automation/TimeoutManager.js +241 -0
  121. package/dist/automation/TimeoutManager.js.map +1 -0
  122. package/dist/automation/index.d.ts +16 -0
  123. package/dist/automation/index.d.ts.map +1 -0
  124. package/dist/automation/index.js +16 -0
  125. package/dist/automation/index.js.map +1 -0
  126. package/dist/automation/runtime/BackoffTimer.d.ts +74 -0
  127. package/dist/automation/runtime/BackoffTimer.d.ts.map +1 -0
  128. package/dist/automation/runtime/BackoffTimer.js +139 -0
  129. package/dist/automation/runtime/BackoffTimer.js.map +1 -0
  130. package/dist/automation/runtime/FailureHandler.d.ts +138 -0
  131. package/dist/automation/runtime/FailureHandler.d.ts.map +1 -0
  132. package/dist/automation/runtime/FailureHandler.js +197 -0
  133. package/dist/automation/runtime/FailureHandler.js.map +1 -0
  134. package/dist/automation/runtime/RetryExecutor.d.ts +104 -0
  135. package/dist/automation/runtime/RetryExecutor.d.ts.map +1 -0
  136. package/dist/automation/runtime/RetryExecutor.js +173 -0
  137. package/dist/automation/runtime/RetryExecutor.js.map +1 -0
  138. package/dist/automation/runtime/index.d.ts +13 -0
  139. package/dist/automation/runtime/index.d.ts.map +1 -0
  140. package/dist/automation/runtime/index.js +13 -0
  141. package/dist/automation/runtime/index.js.map +1 -0
  142. package/dist/context/ContextStore.d.ts +185 -0
  143. package/dist/context/ContextStore.d.ts.map +1 -0
  144. package/dist/context/ContextStore.js +228 -0
  145. package/dist/context/ContextStore.js.map +1 -0
  146. package/dist/context/VariableResolver.d.ts +184 -0
  147. package/dist/context/VariableResolver.d.ts.map +1 -0
  148. package/dist/context/VariableResolver.js +368 -0
  149. package/dist/context/VariableResolver.js.map +1 -0
  150. package/dist/context/index.d.ts +17 -0
  151. package/dist/context/index.d.ts.map +1 -0
  152. package/dist/context/index.js +17 -0
  153. package/dist/context/index.js.map +1 -0
  154. package/dist/core/EngineConfig.d.ts +156 -0
  155. package/dist/core/EngineConfig.d.ts.map +1 -0
  156. package/dist/core/EngineConfig.js +61 -0
  157. package/dist/core/EngineConfig.js.map +1 -0
  158. package/dist/core/EngineContext.d.ts +94 -0
  159. package/dist/core/EngineContext.d.ts.map +1 -0
  160. package/dist/core/EngineContext.js +29 -0
  161. package/dist/core/EngineContext.js.map +1 -0
  162. package/dist/core/OrbytEngine.d.ts +234 -0
  163. package/dist/core/OrbytEngine.d.ts.map +1 -0
  164. package/dist/core/OrbytEngine.js +421 -0
  165. package/dist/core/OrbytEngine.js.map +1 -0
  166. package/dist/core/index.d.ts +4 -0
  167. package/dist/core/index.d.ts.map +1 -0
  168. package/dist/core/index.js +4 -0
  169. package/dist/core/index.js.map +1 -0
  170. package/dist/errors/ErrorCodes.d.ts +71 -0
  171. package/dist/errors/ErrorCodes.d.ts.map +1 -0
  172. package/dist/errors/ErrorCodes.js +95 -0
  173. package/dist/errors/ErrorCodes.js.map +1 -0
  174. package/dist/errors/ErrorFormatter.d.ts +34 -0
  175. package/dist/errors/ErrorFormatter.d.ts.map +1 -0
  176. package/dist/errors/ErrorFormatter.js +140 -0
  177. package/dist/errors/ErrorFormatter.js.map +1 -0
  178. package/dist/errors/FieldRegistry.d.ts +83 -0
  179. package/dist/errors/FieldRegistry.d.ts.map +1 -0
  180. package/dist/errors/FieldRegistry.js +217 -0
  181. package/dist/errors/FieldRegistry.js.map +1 -0
  182. package/dist/errors/OrbytError.d.ts +59 -0
  183. package/dist/errors/OrbytError.d.ts.map +1 -0
  184. package/dist/errors/OrbytError.js +78 -0
  185. package/dist/errors/OrbytError.js.map +1 -0
  186. package/dist/errors/SchedulerError.d.ts +2 -0
  187. package/dist/errors/SchedulerError.d.ts.map +1 -0
  188. package/dist/errors/SchedulerError.js +2 -0
  189. package/dist/errors/SchedulerError.js.map +1 -0
  190. package/dist/errors/StepError.d.ts +2 -0
  191. package/dist/errors/StepError.d.ts.map +1 -0
  192. package/dist/errors/StepError.js +2 -0
  193. package/dist/errors/StepError.js.map +1 -0
  194. package/dist/errors/TypoDetector.d.ts +36 -0
  195. package/dist/errors/TypoDetector.d.ts.map +1 -0
  196. package/dist/errors/TypoDetector.js +109 -0
  197. package/dist/errors/TypoDetector.js.map +1 -0
  198. package/dist/errors/WorkflowError.d.ts +54 -0
  199. package/dist/errors/WorkflowError.d.ts.map +1 -0
  200. package/dist/errors/WorkflowError.js +129 -0
  201. package/dist/errors/WorkflowError.js.map +1 -0
  202. package/dist/errors/index.d.ts +14 -0
  203. package/dist/errors/index.d.ts.map +1 -0
  204. package/dist/errors/index.js +17 -0
  205. package/dist/errors/index.js.map +1 -0
  206. package/dist/events/EngineEvents.d.ts +143 -0
  207. package/dist/events/EngineEvents.d.ts.map +1 -0
  208. package/dist/events/EngineEvents.js +60 -0
  209. package/dist/events/EngineEvents.js.map +1 -0
  210. package/dist/events/EventBus.d.ts +112 -0
  211. package/dist/events/EventBus.d.ts.map +1 -0
  212. package/dist/events/EventBus.js +177 -0
  213. package/dist/events/EventBus.js.map +1 -0
  214. package/dist/events/index.d.ts +3 -0
  215. package/dist/events/index.d.ts.map +1 -0
  216. package/dist/events/index.js +3 -0
  217. package/dist/events/index.js.map +1 -0
  218. package/dist/execution/ExecutionEngine.d.ts +220 -0
  219. package/dist/execution/ExecutionEngine.d.ts.map +1 -0
  220. package/dist/execution/ExecutionEngine.js +442 -0
  221. package/dist/execution/ExecutionEngine.js.map +1 -0
  222. package/dist/execution/ExecutionNode.d.ts +114 -0
  223. package/dist/execution/ExecutionNode.d.ts.map +1 -0
  224. package/dist/execution/ExecutionNode.js +99 -0
  225. package/dist/execution/ExecutionNode.js.map +1 -0
  226. package/dist/execution/ExecutionPlan.d.ts +133 -0
  227. package/dist/execution/ExecutionPlan.d.ts.map +1 -0
  228. package/dist/execution/ExecutionPlan.js +207 -0
  229. package/dist/execution/ExecutionPlan.js.map +1 -0
  230. package/dist/execution/StepExecutor.d.ts +204 -0
  231. package/dist/execution/StepExecutor.d.ts.map +1 -0
  232. package/dist/execution/StepExecutor.js +604 -0
  233. package/dist/execution/StepExecutor.js.map +1 -0
  234. package/dist/execution/WorkflowExecutor.d.ts +129 -0
  235. package/dist/execution/WorkflowExecutor.d.ts.map +1 -0
  236. package/dist/execution/WorkflowExecutor.js +347 -0
  237. package/dist/execution/WorkflowExecutor.js.map +1 -0
  238. package/dist/execution/drivers/AdapterDriver.d.ts +34 -0
  239. package/dist/execution/drivers/AdapterDriver.d.ts.map +1 -0
  240. package/dist/execution/drivers/AdapterDriver.js +63 -0
  241. package/dist/execution/drivers/AdapterDriver.js.map +1 -0
  242. package/dist/execution/drivers/DriverResolver.d.ts +91 -0
  243. package/dist/execution/drivers/DriverResolver.d.ts.map +1 -0
  244. package/dist/execution/drivers/DriverResolver.js +172 -0
  245. package/dist/execution/drivers/DriverResolver.js.map +1 -0
  246. package/dist/execution/drivers/ExecutionDriver.d.ts +127 -0
  247. package/dist/execution/drivers/ExecutionDriver.d.ts.map +1 -0
  248. package/dist/execution/drivers/ExecutionDriver.js +50 -0
  249. package/dist/execution/drivers/ExecutionDriver.js.map +1 -0
  250. package/dist/execution/drivers/index.d.ts +11 -0
  251. package/dist/execution/drivers/index.d.ts.map +1 -0
  252. package/dist/execution/drivers/index.js +11 -0
  253. package/dist/execution/drivers/index.js.map +1 -0
  254. package/dist/execution/index.d.ts +18 -0
  255. package/dist/execution/index.d.ts.map +1 -0
  256. package/dist/execution/index.js +19 -0
  257. package/dist/execution/index.js.map +1 -0
  258. package/dist/graph/CycleDetector.d.ts +90 -0
  259. package/dist/graph/CycleDetector.d.ts.map +1 -0
  260. package/dist/graph/CycleDetector.js +210 -0
  261. package/dist/graph/CycleDetector.js.map +1 -0
  262. package/dist/graph/DependencyGraph.d.ts +16 -0
  263. package/dist/graph/DependencyGraph.d.ts.map +1 -0
  264. package/dist/graph/DependencyGraph.js +16 -0
  265. package/dist/graph/DependencyGraph.js.map +1 -0
  266. package/dist/graph/DependencyResolver.d.ts +90 -0
  267. package/dist/graph/DependencyResolver.d.ts.map +1 -0
  268. package/dist/graph/DependencyResolver.js +159 -0
  269. package/dist/graph/DependencyResolver.js.map +1 -0
  270. package/dist/graph/TopologicalSorter.d.ts +104 -0
  271. package/dist/graph/TopologicalSorter.d.ts.map +1 -0
  272. package/dist/graph/TopologicalSorter.js +213 -0
  273. package/dist/graph/TopologicalSorter.js.map +1 -0
  274. package/dist/graph/index.d.ts +15 -0
  275. package/dist/graph/index.d.ts.map +1 -0
  276. package/dist/graph/index.js +15 -0
  277. package/dist/graph/index.js.map +1 -0
  278. package/dist/guards/ResourceGuard.d.ts +90 -0
  279. package/dist/guards/ResourceGuard.d.ts.map +1 -0
  280. package/dist/guards/ResourceGuard.js +177 -0
  281. package/dist/guards/ResourceGuard.js.map +1 -0
  282. package/dist/guards/StepGuard.d.ts +96 -0
  283. package/dist/guards/StepGuard.d.ts.map +1 -0
  284. package/dist/guards/StepGuard.js +184 -0
  285. package/dist/guards/StepGuard.js.map +1 -0
  286. package/dist/guards/WorkflowGuard.d.ts +71 -0
  287. package/dist/guards/WorkflowGuard.d.ts.map +1 -0
  288. package/dist/guards/WorkflowGuard.js +187 -0
  289. package/dist/guards/WorkflowGuard.js.map +1 -0
  290. package/dist/guards/index.d.ts +9 -0
  291. package/dist/guards/index.d.ts.map +1 -0
  292. package/dist/guards/index.js +9 -0
  293. package/dist/guards/index.js.map +1 -0
  294. package/dist/hooks/HookManager.d.ts +114 -0
  295. package/dist/hooks/HookManager.d.ts.map +1 -0
  296. package/dist/hooks/HookManager.js +187 -0
  297. package/dist/hooks/HookManager.js.map +1 -0
  298. package/dist/hooks/LifecycleHooks.d.ts +126 -0
  299. package/dist/hooks/LifecycleHooks.d.ts.map +1 -0
  300. package/dist/hooks/LifecycleHooks.js +23 -0
  301. package/dist/hooks/LifecycleHooks.js.map +1 -0
  302. package/dist/hooks/index.d.ts +3 -0
  303. package/dist/hooks/index.d.ts.map +1 -0
  304. package/dist/hooks/index.js +3 -0
  305. package/dist/hooks/index.js.map +1 -0
  306. package/dist/index.d.ts +30 -0
  307. package/dist/index.d.ts.map +1 -0
  308. package/dist/index.js +39 -0
  309. package/dist/index.js.map +1 -0
  310. package/dist/lifecycle/EngineLifecycle.d.ts +121 -0
  311. package/dist/lifecycle/EngineLifecycle.d.ts.map +1 -0
  312. package/dist/lifecycle/EngineLifecycle.js +209 -0
  313. package/dist/lifecycle/EngineLifecycle.js.map +1 -0
  314. package/dist/lifecycle/ShutdownManager.d.ts +44 -0
  315. package/dist/lifecycle/ShutdownManager.d.ts.map +1 -0
  316. package/dist/lifecycle/ShutdownManager.js +105 -0
  317. package/dist/lifecycle/ShutdownManager.js.map +1 -0
  318. package/dist/lifecycle/StartupManager.d.ts +45 -0
  319. package/dist/lifecycle/StartupManager.d.ts.map +1 -0
  320. package/dist/lifecycle/StartupManager.js +97 -0
  321. package/dist/lifecycle/StartupManager.js.map +1 -0
  322. package/dist/lifecycle/index.d.ts +9 -0
  323. package/dist/lifecycle/index.d.ts.map +1 -0
  324. package/dist/lifecycle/index.js +9 -0
  325. package/dist/lifecycle/index.js.map +1 -0
  326. package/dist/logging/LogLevel.d.ts +2 -0
  327. package/dist/logging/LogLevel.d.ts.map +1 -0
  328. package/dist/logging/LogLevel.js +2 -0
  329. package/dist/logging/LogLevel.js.map +1 -0
  330. package/dist/logging/Logger.d.ts +2 -0
  331. package/dist/logging/Logger.d.ts.map +1 -0
  332. package/dist/logging/Logger.js +2 -0
  333. package/dist/logging/Logger.js.map +1 -0
  334. package/dist/logging/index.d.ts +2 -0
  335. package/dist/logging/index.d.ts.map +1 -0
  336. package/dist/logging/index.js +4 -0
  337. package/dist/logging/index.js.map +1 -0
  338. package/dist/marketplace/PluginInstaller.d.ts +81 -0
  339. package/dist/marketplace/PluginInstaller.d.ts.map +1 -0
  340. package/dist/marketplace/PluginInstaller.js +89 -0
  341. package/dist/marketplace/PluginInstaller.js.map +1 -0
  342. package/dist/marketplace/PluginManifest.d.ts +74 -0
  343. package/dist/marketplace/PluginManifest.d.ts.map +1 -0
  344. package/dist/marketplace/PluginManifest.js +67 -0
  345. package/dist/marketplace/PluginManifest.js.map +1 -0
  346. package/dist/marketplace/PluginVerifier.d.ts +58 -0
  347. package/dist/marketplace/PluginVerifier.d.ts.map +1 -0
  348. package/dist/marketplace/PluginVerifier.js +93 -0
  349. package/dist/marketplace/PluginVerifier.js.map +1 -0
  350. package/dist/marketplace/index.d.ts +11 -0
  351. package/dist/marketplace/index.d.ts.map +1 -0
  352. package/dist/marketplace/index.js +11 -0
  353. package/dist/marketplace/index.js.map +1 -0
  354. package/dist/metrics/MetricsCollector.d.ts +2 -0
  355. package/dist/metrics/MetricsCollector.d.ts.map +1 -0
  356. package/dist/metrics/MetricsCollector.js +2 -0
  357. package/dist/metrics/MetricsCollector.js.map +1 -0
  358. package/dist/metrics/PerformanceTracker.d.ts +2 -0
  359. package/dist/metrics/PerformanceTracker.d.ts.map +1 -0
  360. package/dist/metrics/PerformanceTracker.js +2 -0
  361. package/dist/metrics/PerformanceTracker.js.map +1 -0
  362. package/dist/metrics/index.d.ts +2 -0
  363. package/dist/metrics/index.d.ts.map +1 -0
  364. package/dist/metrics/index.js +4 -0
  365. package/dist/metrics/index.js.map +1 -0
  366. package/dist/parser/SchemaValidator.d.ts +63 -0
  367. package/dist/parser/SchemaValidator.d.ts.map +1 -0
  368. package/dist/parser/SchemaValidator.js +212 -0
  369. package/dist/parser/SchemaValidator.js.map +1 -0
  370. package/dist/parser/StepParser.d.ts +124 -0
  371. package/dist/parser/StepParser.d.ts.map +1 -0
  372. package/dist/parser/StepParser.js +330 -0
  373. package/dist/parser/StepParser.js.map +1 -0
  374. package/dist/parser/WorkflowParser.d.ts +124 -0
  375. package/dist/parser/WorkflowParser.d.ts.map +1 -0
  376. package/dist/parser/WorkflowParser.js +141 -0
  377. package/dist/parser/WorkflowParser.js.map +1 -0
  378. package/dist/parser/index.d.ts +4 -0
  379. package/dist/parser/index.d.ts.map +1 -0
  380. package/dist/parser/index.js +4 -0
  381. package/dist/parser/index.js.map +1 -0
  382. package/dist/queue/InMemoryQueue.d.ts +97 -0
  383. package/dist/queue/InMemoryQueue.d.ts.map +1 -0
  384. package/dist/queue/InMemoryQueue.js +268 -0
  385. package/dist/queue/InMemoryQueue.js.map +1 -0
  386. package/dist/queue/JobQueue.d.ts +214 -0
  387. package/dist/queue/JobQueue.d.ts.map +1 -0
  388. package/dist/queue/JobQueue.js +46 -0
  389. package/dist/queue/JobQueue.js.map +1 -0
  390. package/dist/queue/index.d.ts +10 -0
  391. package/dist/queue/index.d.ts.map +1 -0
  392. package/dist/queue/index.js +10 -0
  393. package/dist/queue/index.js.map +1 -0
  394. package/dist/resolution/ActionRegistry.d.ts +2 -0
  395. package/dist/resolution/ActionRegistry.d.ts.map +1 -0
  396. package/dist/resolution/ActionRegistry.js +2 -0
  397. package/dist/resolution/ActionRegistry.js.map +1 -0
  398. package/dist/resolution/AdapterResolver.d.ts +2 -0
  399. package/dist/resolution/AdapterResolver.d.ts.map +1 -0
  400. package/dist/resolution/AdapterResolver.js +2 -0
  401. package/dist/resolution/AdapterResolver.js.map +1 -0
  402. package/dist/resolution/StepResolver.d.ts +2 -0
  403. package/dist/resolution/StepResolver.d.ts.map +1 -0
  404. package/dist/resolution/StepResolver.js +2 -0
  405. package/dist/resolution/StepResolver.js.map +1 -0
  406. package/dist/resolution/index.d.ts +2 -0
  407. package/dist/resolution/index.d.ts.map +1 -0
  408. package/dist/resolution/index.js +2 -0
  409. package/dist/resolution/index.js.map +1 -0
  410. package/dist/scheduling/CronScheduler.d.ts +143 -0
  411. package/dist/scheduling/CronScheduler.d.ts.map +1 -0
  412. package/dist/scheduling/CronScheduler.js +370 -0
  413. package/dist/scheduling/CronScheduler.js.map +1 -0
  414. package/dist/scheduling/JobScheduler.d.ts +82 -0
  415. package/dist/scheduling/JobScheduler.d.ts.map +1 -0
  416. package/dist/scheduling/JobScheduler.js +231 -0
  417. package/dist/scheduling/JobScheduler.js.map +1 -0
  418. package/dist/scheduling/ScheduleParser.d.ts +117 -0
  419. package/dist/scheduling/ScheduleParser.d.ts.map +1 -0
  420. package/dist/scheduling/ScheduleParser.js +257 -0
  421. package/dist/scheduling/ScheduleParser.js.map +1 -0
  422. package/dist/scheduling/ScheduleTypes.d.ts +153 -0
  423. package/dist/scheduling/ScheduleTypes.d.ts.map +1 -0
  424. package/dist/scheduling/ScheduleTypes.js +81 -0
  425. package/dist/scheduling/ScheduleTypes.js.map +1 -0
  426. package/dist/scheduling/Scheduler.d.ts +154 -0
  427. package/dist/scheduling/Scheduler.d.ts.map +1 -0
  428. package/dist/scheduling/Scheduler.js +304 -0
  429. package/dist/scheduling/Scheduler.js.map +1 -0
  430. package/dist/scheduling/index.d.ts +6 -0
  431. package/dist/scheduling/index.d.ts.map +1 -0
  432. package/dist/scheduling/index.js +6 -0
  433. package/dist/scheduling/index.js.map +1 -0
  434. package/dist/security/PermissionPolicy.d.ts +72 -0
  435. package/dist/security/PermissionPolicy.d.ts.map +1 -0
  436. package/dist/security/PermissionPolicy.js +87 -0
  437. package/dist/security/PermissionPolicy.js.map +1 -0
  438. package/dist/security/SandboxManager.d.ts +72 -0
  439. package/dist/security/SandboxManager.d.ts.map +1 -0
  440. package/dist/security/SandboxManager.js +78 -0
  441. package/dist/security/SandboxManager.js.map +1 -0
  442. package/dist/security/index.d.ts +10 -0
  443. package/dist/security/index.d.ts.map +1 -0
  444. package/dist/security/index.js +10 -0
  445. package/dist/security/index.js.map +1 -0
  446. package/dist/state/ExecutionState.d.ts +211 -0
  447. package/dist/state/ExecutionState.d.ts.map +1 -0
  448. package/dist/state/ExecutionState.js +256 -0
  449. package/dist/state/ExecutionState.js.map +1 -0
  450. package/dist/state/StateMachine.d.ts +120 -0
  451. package/dist/state/StateMachine.d.ts.map +1 -0
  452. package/dist/state/StateMachine.js +230 -0
  453. package/dist/state/StateMachine.js.map +1 -0
  454. package/dist/state/index.d.ts +16 -0
  455. package/dist/state/index.d.ts.map +1 -0
  456. package/dist/state/index.js +16 -0
  457. package/dist/state/index.js.map +1 -0
  458. package/dist/storage/ExecutionStore.d.ts +2 -0
  459. package/dist/storage/ExecutionStore.d.ts.map +1 -0
  460. package/dist/storage/ExecutionStore.js +2 -0
  461. package/dist/storage/ExecutionStore.js.map +1 -0
  462. package/dist/storage/ScheduleStore.d.ts +2 -0
  463. package/dist/storage/ScheduleStore.d.ts.map +1 -0
  464. package/dist/storage/ScheduleStore.js +2 -0
  465. package/dist/storage/ScheduleStore.js.map +1 -0
  466. package/dist/storage/WorkflowStore.d.ts +2 -0
  467. package/dist/storage/WorkflowStore.d.ts.map +1 -0
  468. package/dist/storage/WorkflowStore.js +2 -0
  469. package/dist/storage/WorkflowStore.js.map +1 -0
  470. package/dist/storage/index.d.ts +2 -0
  471. package/dist/storage/index.d.ts.map +1 -0
  472. package/dist/storage/index.js +5 -0
  473. package/dist/storage/index.js.map +1 -0
  474. package/dist/testing/EngineTestHarness.d.ts +117 -0
  475. package/dist/testing/EngineTestHarness.d.ts.map +1 -0
  476. package/dist/testing/EngineTestHarness.js +132 -0
  477. package/dist/testing/EngineTestHarness.js.map +1 -0
  478. package/dist/testing/MockAdapter.d.ts +93 -0
  479. package/dist/testing/MockAdapter.d.ts.map +1 -0
  480. package/dist/testing/MockAdapter.js +124 -0
  481. package/dist/testing/MockAdapter.js.map +1 -0
  482. package/dist/testing/index.d.ts +10 -0
  483. package/dist/testing/index.d.ts.map +1 -0
  484. package/dist/testing/index.js +10 -0
  485. package/dist/testing/index.js.map +1 -0
  486. package/dist/triggers/CronTrigger.d.ts +2 -0
  487. package/dist/triggers/CronTrigger.d.ts.map +1 -0
  488. package/dist/triggers/CronTrigger.js +2 -0
  489. package/dist/triggers/CronTrigger.js.map +1 -0
  490. package/dist/triggers/EventTrigger.d.ts +2 -0
  491. package/dist/triggers/EventTrigger.d.ts.map +1 -0
  492. package/dist/triggers/EventTrigger.js +2 -0
  493. package/dist/triggers/EventTrigger.js.map +1 -0
  494. package/dist/triggers/ManualTrigger.d.ts +2 -0
  495. package/dist/triggers/ManualTrigger.d.ts.map +1 -0
  496. package/dist/triggers/ManualTrigger.js +2 -0
  497. package/dist/triggers/ManualTrigger.js.map +1 -0
  498. package/dist/triggers/Trigger.d.ts +2 -0
  499. package/dist/triggers/Trigger.d.ts.map +1 -0
  500. package/dist/triggers/Trigger.js +2 -0
  501. package/dist/triggers/Trigger.js.map +1 -0
  502. package/dist/triggers/index.d.ts +2 -0
  503. package/dist/triggers/index.d.ts.map +1 -0
  504. package/dist/triggers/index.js +6 -0
  505. package/dist/triggers/index.js.map +1 -0
  506. package/dist/triggers/sources/FileWatcherTrigger.d.ts +2 -0
  507. package/dist/triggers/sources/FileWatcherTrigger.d.ts.map +1 -0
  508. package/dist/triggers/sources/FileWatcherTrigger.js +2 -0
  509. package/dist/triggers/sources/FileWatcherTrigger.js.map +1 -0
  510. package/dist/triggers/sources/MessageTrigger.d.ts +2 -0
  511. package/dist/triggers/sources/MessageTrigger.d.ts.map +1 -0
  512. package/dist/triggers/sources/MessageTrigger.js +2 -0
  513. package/dist/triggers/sources/MessageTrigger.js.map +1 -0
  514. package/dist/triggers/sources/WebhookListener.d.ts +2 -0
  515. package/dist/triggers/sources/WebhookListener.d.ts.map +1 -0
  516. package/dist/triggers/sources/WebhookListener.js +2 -0
  517. package/dist/triggers/sources/WebhookListener.js.map +1 -0
  518. package/dist/triggers/sources/index.d.ts +2 -0
  519. package/dist/triggers/sources/index.d.ts.map +1 -0
  520. package/dist/triggers/sources/index.js +2 -0
  521. package/dist/triggers/sources/index.js.map +1 -0
  522. package/dist/utils/deepMerge.d.ts +2 -0
  523. package/dist/utils/deepMerge.d.ts.map +1 -0
  524. package/dist/utils/deepMerge.js +2 -0
  525. package/dist/utils/deepMerge.js.map +1 -0
  526. package/dist/utils/id.d.ts +2 -0
  527. package/dist/utils/id.d.ts.map +1 -0
  528. package/dist/utils/id.js +2 -0
  529. package/dist/utils/id.js.map +1 -0
  530. package/dist/utils/index.d.ts +2 -0
  531. package/dist/utils/index.d.ts.map +1 -0
  532. package/dist/utils/index.js +6 -0
  533. package/dist/utils/index.js.map +1 -0
  534. package/dist/utils/safeExec.d.ts +2 -0
  535. package/dist/utils/safeExec.d.ts.map +1 -0
  536. package/dist/utils/safeExec.js +2 -0
  537. package/dist/utils/safeExec.js.map +1 -0
  538. package/dist/utils/time.d.ts +2 -0
  539. package/dist/utils/time.d.ts.map +1 -0
  540. package/dist/utils/time.js +2 -0
  541. package/dist/utils/time.js.map +1 -0
  542. package/dist/visualization/ExecutionGraphBuilder.d.ts +2 -0
  543. package/dist/visualization/ExecutionGraphBuilder.d.ts.map +1 -0
  544. package/dist/visualization/ExecutionGraphBuilder.js +2 -0
  545. package/dist/visualization/ExecutionGraphBuilder.js.map +1 -0
  546. package/dist/visualization/ExecutionTraceFormatter.d.ts +2 -0
  547. package/dist/visualization/ExecutionTraceFormatter.d.ts.map +1 -0
  548. package/dist/visualization/ExecutionTraceFormatter.js +2 -0
  549. package/dist/visualization/ExecutionTraceFormatter.js.map +1 -0
  550. package/dist/visualization/index.d.ts +2 -0
  551. package/dist/visualization/index.d.ts.map +1 -0
  552. package/dist/visualization/index.js +2 -0
  553. package/dist/visualization/index.js.map +1 -0
  554. package/dist/workflow/Step.d.ts +2 -0
  555. package/dist/workflow/Step.d.ts.map +1 -0
  556. package/dist/workflow/Step.js +2 -0
  557. package/dist/workflow/Step.js.map +1 -0
  558. package/dist/workflow/StepContext.d.ts +2 -0
  559. package/dist/workflow/StepContext.d.ts.map +1 -0
  560. package/dist/workflow/StepContext.js +2 -0
  561. package/dist/workflow/StepContext.js.map +1 -0
  562. package/dist/workflow/StepResult.d.ts +2 -0
  563. package/dist/workflow/StepResult.d.ts.map +1 -0
  564. package/dist/workflow/StepResult.js +2 -0
  565. package/dist/workflow/StepResult.js.map +1 -0
  566. package/dist/workflow/Workflow.d.ts +2 -0
  567. package/dist/workflow/Workflow.d.ts.map +1 -0
  568. package/dist/workflow/Workflow.js +2 -0
  569. package/dist/workflow/Workflow.js.map +1 -0
  570. package/dist/workflow/WorkflowRegistry.d.ts +2 -0
  571. package/dist/workflow/WorkflowRegistry.d.ts.map +1 -0
  572. package/dist/workflow/WorkflowRegistry.js +2 -0
  573. package/dist/workflow/WorkflowRegistry.js.map +1 -0
  574. package/dist/workflow/WorkflowState.d.ts +2 -0
  575. package/dist/workflow/WorkflowState.d.ts.map +1 -0
  576. package/dist/workflow/WorkflowState.js +2 -0
  577. package/dist/workflow/WorkflowState.js.map +1 -0
  578. package/dist/workflow/index.d.ts +2 -0
  579. package/dist/workflow/index.d.ts.map +1 -0
  580. package/dist/workflow/index.js +8 -0
  581. package/dist/workflow/index.js.map +1 -0
  582. package/package.json +47 -0
@@ -0,0 +1,133 @@
1
+ /**
2
+ * Execution Plan
3
+ *
4
+ * PURE COORDINATION - NO EXECUTION LOGIC.
5
+ *
6
+ * This coordinates DependencyResolver, CycleDetector, and TopologicalSorter
7
+ * to create a valid execution plan. It answers:
8
+ * - What runs?
9
+ * - In what order?
10
+ * - What can run in parallel?
11
+ * - What are the constraints?
12
+ *
13
+ * This is "designing the map, not driving the car."
14
+ * Execution happens elsewhere (StepExecutor, WorkflowExecutor).
15
+ *
16
+ * @module execution
17
+ */
18
+ import { ExecutionNode } from './ExecutionNode.js';
19
+ import { type DependencyGraph, type TopologicalSortResult } from '../graph/DependencyGraph.js';
20
+ /**
21
+ * Execution phase (group of steps that can run in parallel)
22
+ */
23
+ export interface ExecutionPhase {
24
+ /** Phase number (0-indexed) */
25
+ readonly phase: number;
26
+ /** Nodes that can execute in parallel */
27
+ readonly nodes: readonly ExecutionNode[];
28
+ /** Combined phase timeout (max of all node timeouts) */
29
+ readonly timeout?: number;
30
+ }
31
+ /**
32
+ * Complete execution plan for a workflow.
33
+ * This is a blueprint for execution - it contains NO execution state.
34
+ */
35
+ export interface ExecutionPlan {
36
+ /** Ordered phases of execution */
37
+ readonly phases: readonly ExecutionPhase[];
38
+ /** The validated dependency graph */
39
+ readonly graph: DependencyGraph;
40
+ /** Total number of steps */
41
+ readonly totalSteps: number;
42
+ /** Maximum parallelism (largest phase size) */
43
+ readonly maxParallelism: number;
44
+ /** Critical path length (minimum phases needed) */
45
+ readonly criticalPathLength: number;
46
+ /** Topological sort result */
47
+ readonly sortResult: TopologicalSortResult;
48
+ }
49
+ /**
50
+ * Execution plan coordinator.
51
+ * This orchestrates graph utilities to create execution plans.
52
+ *
53
+ * NO EXECUTION LOGIC HERE - only planning and coordination.
54
+ */
55
+ export declare class ExecutionPlanner {
56
+ /**
57
+ * Create execution plan from execution nodes.
58
+ *
59
+ * This is the main entry point. It:
60
+ * 1. Builds dependency graph (DependencyResolver)
61
+ * 2. Validates no cycles (CycleDetector)
62
+ * 3. Generates execution phases (TopologicalSorter)
63
+ * 4. Packages everything into ExecutionPlan
64
+ *
65
+ * @param nodes - Array of execution nodes
66
+ * @returns Complete execution plan
67
+ * @throws WorkflowValidationError if dependencies are invalid or cycles exist
68
+ */
69
+ static plan(nodes: ExecutionNode[]): ExecutionPlan;
70
+ /**
71
+ * Calculate timeout for a phase (max of all node timeouts).
72
+ * If no timeouts specified, returns undefined.
73
+ */
74
+ private static calculatePhaseTimeout;
75
+ /**
76
+ * Get execution order (flattened phases).
77
+ * Returns nodes in the order they should be executed.
78
+ *
79
+ * @param plan - Execution plan
80
+ * @returns Flat array of nodes in execution order
81
+ */
82
+ static getFlatOrder(plan: ExecutionPlan): ExecutionNode[];
83
+ /**
84
+ * Get nodes that can execute immediately (phase 0).
85
+ * These are entry points with no dependencies.
86
+ *
87
+ * @param plan - Execution plan
88
+ * @returns Nodes with no dependencies
89
+ */
90
+ static getInitialNodes(plan: ExecutionPlan): ExecutionNode[];
91
+ /**
92
+ * Get the phase number for a specific step.
93
+ *
94
+ * @param plan - Execution plan
95
+ * @param stepId - Step ID to look up
96
+ * @returns Phase number (0-indexed) or undefined if not found
97
+ */
98
+ static getPhaseForStep(plan: ExecutionPlan, stepId: string): number | undefined;
99
+ /**
100
+ * Visualize execution plan as text.
101
+ * Useful for debugging and understanding execution flow.
102
+ *
103
+ * @param plan - Execution plan
104
+ * @returns Text visualization
105
+ */
106
+ static visualize(plan: ExecutionPlan): string;
107
+ /**
108
+ * Check if workflow can be parallelized.
109
+ * Returns true if any phase has more than one step.
110
+ *
111
+ * @param plan - Execution plan
112
+ * @returns True if any steps can run in parallel
113
+ */
114
+ static canParallelize(plan: ExecutionPlan): boolean;
115
+ /**
116
+ * Get dependency chain for a specific step.
117
+ * Returns all steps that must complete before this step can run.
118
+ *
119
+ * @param plan - Execution plan
120
+ * @param stepId - Step ID to analyze
121
+ * @returns Array of step IDs in dependency order
122
+ */
123
+ static getDependencyChain(plan: ExecutionPlan, stepId: string): string[];
124
+ /**
125
+ * Calculate estimated execution time based on phase timeouts.
126
+ * This is a rough estimate assuming perfect parallelization.
127
+ *
128
+ * @param plan - Execution plan
129
+ * @returns Estimated execution time in milliseconds
130
+ */
131
+ static estimateExecutionTime(plan: ExecutionPlan): number;
132
+ }
133
+ //# sourceMappingURL=ExecutionPlan.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExecutionPlan.d.ts","sourceRoot":"","sources":["../../src/execution/ExecutionPlan.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAIL,KAAK,eAAe,EACpB,KAAK,qBAAqB,EAC3B,MAAM,6BAA6B,CAAC;AAErC;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,+BAA+B;IAC/B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAEvB,yCAAyC;IACzC,QAAQ,CAAC,KAAK,EAAE,SAAS,aAAa,EAAE,CAAC;IAEzC,wDAAwD;IACxD,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,kCAAkC;IAClC,QAAQ,CAAC,MAAM,EAAE,SAAS,cAAc,EAAE,CAAC;IAE3C,qCAAqC;IACrC,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC;IAEhC,4BAA4B;IAC5B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAE5B,+CAA+C;IAC/C,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAEhC,mDAAmD;IACnD,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IAEpC,8BAA8B;IAC9B,QAAQ,CAAC,UAAU,EAAE,qBAAqB,CAAC;CAC5C;AAED;;;;;GAKG;AACH,qBAAa,gBAAgB;IAC3B;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,aAAa;IAgClD;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,qBAAqB;IAQpC;;;;;;OAMG;IACH,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,aAAa,GAAG,aAAa,EAAE;IAIzD;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,IAAI,EAAE,aAAa,GAAG,aAAa,EAAE;IAO5D;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAI/E;;;;;;OAMG;IACH,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,aAAa,GAAG,MAAM;IAgC7C;;;;;;OAMG;IACH,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO;IAInD;;;;;;;OAOG;IACH,MAAM,CAAC,kBAAkB,CAAC,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE;IAgCxE;;;;;;OAMG;IACH,MAAM,CAAC,qBAAqB,CAAC,IAAI,EAAE,aAAa,GAAG,MAAM;CAc1D"}
@@ -0,0 +1,207 @@
1
+ /**
2
+ * Execution Plan
3
+ *
4
+ * PURE COORDINATION - NO EXECUTION LOGIC.
5
+ *
6
+ * This coordinates DependencyResolver, CycleDetector, and TopologicalSorter
7
+ * to create a valid execution plan. It answers:
8
+ * - What runs?
9
+ * - In what order?
10
+ * - What can run in parallel?
11
+ * - What are the constraints?
12
+ *
13
+ * This is "designing the map, not driving the car."
14
+ * Execution happens elsewhere (StepExecutor, WorkflowExecutor).
15
+ *
16
+ * @module execution
17
+ */
18
+ import { DependencyResolver, CycleDetector, TopologicalSorter, } from '../graph/DependencyGraph.js';
19
+ /**
20
+ * Execution plan coordinator.
21
+ * This orchestrates graph utilities to create execution plans.
22
+ *
23
+ * NO EXECUTION LOGIC HERE - only planning and coordination.
24
+ */
25
+ export class ExecutionPlanner {
26
+ /**
27
+ * Create execution plan from execution nodes.
28
+ *
29
+ * This is the main entry point. It:
30
+ * 1. Builds dependency graph (DependencyResolver)
31
+ * 2. Validates no cycles (CycleDetector)
32
+ * 3. Generates execution phases (TopologicalSorter)
33
+ * 4. Packages everything into ExecutionPlan
34
+ *
35
+ * @param nodes - Array of execution nodes
36
+ * @returns Complete execution plan
37
+ * @throws WorkflowValidationError if dependencies are invalid or cycles exist
38
+ */
39
+ static plan(nodes) {
40
+ // Step 1: Build dependency graph
41
+ const graph = DependencyResolver.resolve(nodes);
42
+ // Step 2: Detect cycles (fail fast)
43
+ CycleDetector.detectAndThrow(graph);
44
+ // Step 3: Topological sort to get execution phases
45
+ const sortResult = TopologicalSorter.sort(graph);
46
+ // Step 4: Build execution phases with nodes and timeouts
47
+ const phases = sortResult.phases.map((stepIds, index) => {
48
+ const phaseNodes = stepIds.map((stepId) => graph.nodes.get(stepId));
49
+ return {
50
+ phase: index,
51
+ nodes: Object.freeze(phaseNodes),
52
+ timeout: this.calculatePhaseTimeout(phaseNodes),
53
+ };
54
+ });
55
+ // Step 5: Package into execution plan
56
+ return {
57
+ phases: Object.freeze(phases),
58
+ graph,
59
+ totalSteps: nodes.length,
60
+ maxParallelism: Math.max(...phases.map((p) => p.nodes.length), 0),
61
+ criticalPathLength: phases.length,
62
+ sortResult,
63
+ };
64
+ }
65
+ /**
66
+ * Calculate timeout for a phase (max of all node timeouts).
67
+ * If no timeouts specified, returns undefined.
68
+ */
69
+ static calculatePhaseTimeout(nodes) {
70
+ const timeouts = nodes
71
+ .map((node) => node.metadata.timeout)
72
+ .filter((t) => t !== undefined);
73
+ return timeouts.length > 0 ? Math.max(...timeouts) : undefined;
74
+ }
75
+ /**
76
+ * Get execution order (flattened phases).
77
+ * Returns nodes in the order they should be executed.
78
+ *
79
+ * @param plan - Execution plan
80
+ * @returns Flat array of nodes in execution order
81
+ */
82
+ static getFlatOrder(plan) {
83
+ return plan.phases.flatMap((phase) => [...phase.nodes]);
84
+ }
85
+ /**
86
+ * Get nodes that can execute immediately (phase 0).
87
+ * These are entry points with no dependencies.
88
+ *
89
+ * @param plan - Execution plan
90
+ * @returns Nodes with no dependencies
91
+ */
92
+ static getInitialNodes(plan) {
93
+ if (plan.phases.length === 0) {
94
+ return [];
95
+ }
96
+ return [...plan.phases[0].nodes];
97
+ }
98
+ /**
99
+ * Get the phase number for a specific step.
100
+ *
101
+ * @param plan - Execution plan
102
+ * @param stepId - Step ID to look up
103
+ * @returns Phase number (0-indexed) or undefined if not found
104
+ */
105
+ static getPhaseForStep(plan, stepId) {
106
+ return plan.sortResult.stepPhases.get(stepId);
107
+ }
108
+ /**
109
+ * Visualize execution plan as text.
110
+ * Useful for debugging and understanding execution flow.
111
+ *
112
+ * @param plan - Execution plan
113
+ * @returns Text visualization
114
+ */
115
+ static visualize(plan) {
116
+ let output = '📋 Execution Plan\n';
117
+ output += `━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n`;
118
+ output += `Total Steps: ${plan.totalSteps}\n`;
119
+ output += `Phases: ${plan.phases.length}\n`;
120
+ output += `Max Parallelism: ${plan.maxParallelism}\n`;
121
+ output += `Critical Path: ${plan.criticalPathLength} phases\n\n`;
122
+ for (const phase of plan.phases) {
123
+ output += `Phase ${phase.phase}: `;
124
+ output += `[${[...phase.nodes].map((n) => n.stepId).join(', ')}]`;
125
+ if (phase.timeout) {
126
+ output += ` (timeout: ${phase.timeout}ms)`;
127
+ }
128
+ output += '\n';
129
+ // Show adapter references for each node
130
+ for (const node of phase.nodes) {
131
+ output += ` └─ ${node.stepId}: ${node.uses}`;
132
+ if (node.metadata.maxRetries > 0) {
133
+ output += ` (retries: ${node.metadata.maxRetries})`;
134
+ }
135
+ if (node.metadata.hasCondition) {
136
+ output += ` (conditional)`;
137
+ }
138
+ output += '\n';
139
+ }
140
+ }
141
+ return output;
142
+ }
143
+ /**
144
+ * Check if workflow can be parallelized.
145
+ * Returns true if any phase has more than one step.
146
+ *
147
+ * @param plan - Execution plan
148
+ * @returns True if any steps can run in parallel
149
+ */
150
+ static canParallelize(plan) {
151
+ return plan.phases.some((phase) => phase.nodes.length > 1);
152
+ }
153
+ /**
154
+ * Get dependency chain for a specific step.
155
+ * Returns all steps that must complete before this step can run.
156
+ *
157
+ * @param plan - Execution plan
158
+ * @param stepId - Step ID to analyze
159
+ * @returns Array of step IDs in dependency order
160
+ */
161
+ static getDependencyChain(plan, stepId) {
162
+ const node = plan.graph.nodes.get(stepId);
163
+ if (!node) {
164
+ return [];
165
+ }
166
+ const chain = [];
167
+ const visited = new Set();
168
+ const visit = (id) => {
169
+ if (visited.has(id)) {
170
+ return;
171
+ }
172
+ visited.add(id);
173
+ const currentNode = plan.graph.nodes.get(id);
174
+ if (!currentNode) {
175
+ return;
176
+ }
177
+ // Visit dependencies first
178
+ for (const dep of currentNode.dependencies) {
179
+ visit(dep);
180
+ }
181
+ chain.push(id);
182
+ };
183
+ visit(stepId);
184
+ return chain;
185
+ }
186
+ /**
187
+ * Calculate estimated execution time based on phase timeouts.
188
+ * This is a rough estimate assuming perfect parallelization.
189
+ *
190
+ * @param plan - Execution plan
191
+ * @returns Estimated execution time in milliseconds
192
+ */
193
+ static estimateExecutionTime(plan) {
194
+ let totalTime = 0;
195
+ for (const phase of plan.phases) {
196
+ if (phase.timeout) {
197
+ totalTime += phase.timeout;
198
+ }
199
+ else {
200
+ // If no timeout specified, use a default estimate
201
+ totalTime += 30000; // 30 seconds default
202
+ }
203
+ }
204
+ return totalTime;
205
+ }
206
+ }
207
+ //# sourceMappingURL=ExecutionPlan.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExecutionPlan.js","sourceRoot":"","sources":["../../src/execution/ExecutionPlan.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,204 @@
1
+ /**
2
+ * Step Executor
3
+ *
4
+ * Executes individual workflow steps with retry logic, timeout handling,
5
+ * and adapter invocation.
6
+ *
7
+ * Integrates with ContextStore for state management and uses automation
8
+ * policies (RetryPolicy, BackoffStrategy, TimeoutManager) for reliability.
9
+ *
10
+ * @module execution
11
+ */
12
+ import type { ParsedStep } from '../parser/StepParser.js';
13
+ import type { ResolutionContext } from '../context/VariableResolver.js';
14
+ import { ContextStore } from '../context/ContextStore.js';
15
+ import { RetryPolicy } from '../automation/RetryPolicy.js';
16
+ import { TimeoutManager } from '../automation/TimeoutManager.js';
17
+ import { DriverResolver } from './drivers/DriverResolver.js';
18
+ import { AdapterRegistry } from '../adapters/AdapterRegistry.js';
19
+ import type { Adapter } from '@dev-ecosystem/core';
20
+ import type { EventBus } from '../events/EventBus.js';
21
+ import type { HookManager } from '../hooks/HookManager.js';
22
+ /**
23
+ * Step execution result
24
+ */
25
+ export interface StepResult {
26
+ /** Step ID */
27
+ stepId: string;
28
+ /** Execution status */
29
+ status: 'success' | 'failure' | 'skipped' | 'timeout';
30
+ /** Step output data */
31
+ output: any;
32
+ /** Error if failed */
33
+ error?: Error;
34
+ /** Execution duration (ms) */
35
+ duration: number;
36
+ /** Number of retry attempts */
37
+ attempts: number;
38
+ /** Start timestamp */
39
+ startedAt: Date;
40
+ /** End timestamp */
41
+ completedAt: Date;
42
+ }
43
+ /**
44
+ * Adapter interface for step execution
45
+ */
46
+ export interface StepAdapter {
47
+ /** Adapter name */
48
+ name: string;
49
+ /**
50
+ * Execute step with the adapter
51
+ *
52
+ * @param action - Full action name (e.g., 'http.request.get')
53
+ * @param input - Resolved input parameters
54
+ * @param context - Execution context
55
+ * @returns Adapter output
56
+ */
57
+ execute(action: string, input: Record<string, any>, context: any): Promise<any>;
58
+ }
59
+ /**
60
+ * Step executor with retry and timeout logic
61
+ *
62
+ * Uses driver system for pluggable execution strategies.
63
+ * Maintains backward compatibility with legacy StepAdapter interface.
64
+ */
65
+ export declare class StepExecutor {
66
+ private adapters;
67
+ private driverResolver;
68
+ private adapterRegistry;
69
+ private adapterDriver?;
70
+ private resolver;
71
+ private contextStore?;
72
+ private retryPolicy?;
73
+ private timeoutManager?;
74
+ private eventBus?;
75
+ private hookManager?;
76
+ /**
77
+ * Register an adapter (legacy interface - backward compatibility)
78
+ *
79
+ * @param adapter - Adapter to register
80
+ * @deprecated Use registerModernAdapter() for new code
81
+ */
82
+ registerAdapter(adapter: StepAdapter): void;
83
+ /**
84
+ * Register a modern adapter with driver system
85
+ *
86
+ * @param adapter - Adapter implementing @dev-ecosystem/core Adapter interface
87
+ */
88
+ registerModernAdapter(adapter: Adapter): void;
89
+ /**
90
+ * Register multiple modern adapters
91
+ *
92
+ * @param adapters - Array of adapters
93
+ */
94
+ registerModernAdapters(adapters: Adapter[]): void;
95
+ /**
96
+ * Set context store for state management
97
+ *
98
+ * @param contextStore - Context store instance
99
+ */
100
+ setContextStore(contextStore: ContextStore): void;
101
+ /**
102
+ * Set retry policy for step execution
103
+ *
104
+ * @param retryPolicy - Retry policy instance
105
+ */
106
+ setRetryPolicy(retryPolicy: RetryPolicy): void;
107
+ /**
108
+ * Set timeout manager for step execution
109
+ *
110
+ * @param timeoutManager - Timeout manager instance
111
+ */
112
+ setTimeoutManager(timeoutManager: TimeoutManager): void;
113
+ /**
114
+ * Set event bus for emitting step lifecycle events
115
+ */
116
+ setEventBus(eventBus: EventBus): void;
117
+ /**
118
+ * Set hook manager for calling lifecycle hooks
119
+ */
120
+ setHookManager(hookManager: HookManager): void;
121
+ /**
122
+ * Get driver resolver (for advanced use cases)
123
+ *
124
+ * @returns Driver resolver instance
125
+ */
126
+ getDriverResolver(): DriverResolver;
127
+ /**
128
+ * Get adapter registry (for advanced use cases)
129
+ *
130
+ * @returns Adapter registry instance
131
+ */
132
+ getAdapterRegistry(): AdapterRegistry;
133
+ /**
134
+ * Execute a step
135
+ *
136
+ * @param step - Step to execute
137
+ * @param providedContext - Optional resolution context (if not using ContextStore)
138
+ * @returns Step execution result
139
+ */
140
+ execute(step: ParsedStep, providedContext?: ResolutionContext): Promise<StepResult>;
141
+ /**
142
+ * Execute step with timeout
143
+ */
144
+ private executeWithTimeout;
145
+ /**
146
+ * Execute using driver system
147
+ */
148
+ private executeWithDriver;
149
+ /**
150
+ * Execute using legacy adapter (backward compatibility)
151
+ */
152
+ private executeWithLegacyAdapter;
153
+ /**
154
+ * Convert ParsedStep to DriverStep
155
+ */
156
+ private convertToDriverStep;
157
+ /**
158
+ * Convert execution context to DriverContext
159
+ */
160
+ private convertToDriverContext;
161
+ /**
162
+ * Parse timeout string to milliseconds
163
+ * @param timeout - Timeout string like "30s", "5m", "1h"
164
+ * @returns Timeout in milliseconds
165
+ */
166
+ private parseTimeoutString;
167
+ /**
168
+ * Add timeout to promise
169
+ */
170
+ private withTimeout;
171
+ /**
172
+ * Sleep utility for retry backoff
173
+ */
174
+ private sleep;
175
+ /**
176
+ * Map raw output to defined output structure
177
+ *
178
+ * @param rawOutput - Raw output from adapter
179
+ * @param outputMappings - Output mapping definitions
180
+ * @param context - Resolution context for variable resolution in mappings
181
+ * @returns Mapped output object
182
+ */
183
+ private mapOutputs;
184
+ /**
185
+ * Evaluate conditional expression
186
+ *
187
+ * Currently simple boolean evaluation.
188
+ * Future: Support expression language.
189
+ *
190
+ * @param condition - Conditional expression
191
+ * @param context - Resolution context
192
+ * @returns True if condition met
193
+ */
194
+ private evaluateCondition;
195
+ /**
196
+ * Get registered adapters
197
+ */
198
+ getAdapters(): string[];
199
+ /**
200
+ * Check if adapter is registered
201
+ */
202
+ hasAdapter(name: string): boolean;
203
+ }
204
+ //# sourceMappingURL=StepExecutor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StepExecutor.d.ts","sourceRoot":"","sources":["../../src/execution/StepExecutor.ts"],"names":[],"mappings":"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"}