@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,91 @@
1
+ /**
2
+ * Driver Resolver
3
+ *
4
+ * Resolves and dispatches steps to the appropriate execution driver.
5
+ *
6
+ * @module execution/drivers
7
+ */
8
+ import type { ExecutionDriver, DriverStep, DriverContext } from './ExecutionDriver.js';
9
+ import type { AdapterResult } from '@dev-ecosystem/core';
10
+ import { OrbytError } from '../../errors/OrbytError.js';
11
+ /**
12
+ * Driver not found error
13
+ */
14
+ export declare class DriverNotFoundError extends OrbytError {
15
+ constructor(stepId: string, uses: string, availableDrivers: string[]);
16
+ }
17
+ /**
18
+ * Driver Resolver
19
+ *
20
+ * Manages driver registration and resolves steps to appropriate drivers.
21
+ */
22
+ export declare class DriverResolver {
23
+ private drivers;
24
+ private initialized;
25
+ /**
26
+ * Register a driver
27
+ */
28
+ register(driver: ExecutionDriver): void;
29
+ /**
30
+ * Register multiple drivers
31
+ */
32
+ registerAll(drivers: ExecutionDriver[]): void;
33
+ /**
34
+ * Unregister a driver
35
+ */
36
+ unregister(driverType: string): boolean;
37
+ /**
38
+ * Resolve driver for a step
39
+ *
40
+ * @param step - Step to resolve driver for
41
+ * @returns Driver that can handle this step
42
+ * @throws {DriverNotFoundError} If no driver can handle the step
43
+ */
44
+ resolve(step: DriverStep): ExecutionDriver;
45
+ /**
46
+ * Execute a step using the appropriate driver
47
+ *
48
+ * @param step - Step to execute
49
+ * @param context - Execution context
50
+ * @returns Execution result
51
+ */
52
+ execute(step: DriverStep, context: DriverContext): Promise<AdapterResult>;
53
+ /**
54
+ * Get all registered drivers
55
+ */
56
+ getAll(): ExecutionDriver[];
57
+ /**
58
+ * Get driver by type
59
+ */
60
+ get(type: string): ExecutionDriver | undefined;
61
+ /**
62
+ * Initialize all drivers
63
+ */
64
+ initializeAll(): Promise<void>;
65
+ /**
66
+ * Cleanup all drivers
67
+ */
68
+ cleanupAll(): Promise<void>;
69
+ /**
70
+ * Clear all drivers
71
+ */
72
+ clear(): void;
73
+ /**
74
+ * Get resolver statistics
75
+ */
76
+ getStats(): {
77
+ total: number;
78
+ initialized: number;
79
+ drivers: Array<{
80
+ type: string;
81
+ name: string;
82
+ version: string;
83
+ isInitialized: boolean;
84
+ }>;
85
+ };
86
+ }
87
+ /**
88
+ * Global driver resolver instance (singleton pattern)
89
+ */
90
+ export declare const globalDriverResolver: DriverResolver;
91
+ //# sourceMappingURL=DriverResolver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DriverResolver.d.ts","sourceRoot":"","sources":["../../../src/execution/drivers/DriverResolver.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACvF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAGxD;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,UAAU;gBACrC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE;CAcrE;AAED;;;;GAIG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,OAAO,CAAyB;IACxC,OAAO,CAAC,WAAW,CAAqB;IAExC;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI;IAUvC;;OAEG;IACH,WAAW,CAAC,OAAO,EAAE,eAAe,EAAE,GAAG,IAAI;IAM7C;;OAEG;IACH,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAmBvC;;;;;;OAMG;IACH,OAAO,CAAC,IAAI,EAAE,UAAU,GAAG,eAAe;IAY1C;;;;;;OAMG;IACG,OAAO,CACX,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,aAAa,CAAC;IAezB;;OAEG;IACH,MAAM,IAAI,eAAe,EAAE;IAI3B;;OAEG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IAI9C;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAWpC;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IASjC;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb;;OAEG;IACH,QAAQ,IAAI;QACV,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC;QACpB,OAAO,EAAE,KAAK,CAAC;YACb,IAAI,EAAE,MAAM,CAAC;YACb,IAAI,EAAE,MAAM,CAAC;YACb,OAAO,EAAE,MAAM,CAAC;YAChB,aAAa,EAAE,OAAO,CAAC;SACxB,CAAC,CAAC;KACJ;CAYF;AAED;;GAEG;AACH,eAAO,MAAM,oBAAoB,gBAAuB,CAAC"}
@@ -0,0 +1,172 @@
1
+ /**
2
+ * Driver Resolver
3
+ *
4
+ * Resolves and dispatches steps to the appropriate execution driver.
5
+ *
6
+ * @module execution/drivers
7
+ */
8
+ import { OrbytError } from '../../errors/OrbytError.js';
9
+ import { OrbytErrorCode, ErrorSeverity } from '../../errors/ErrorCodes.js';
10
+ /**
11
+ * Driver not found error
12
+ */
13
+ export class DriverNotFoundError extends OrbytError {
14
+ constructor(stepId, uses, availableDrivers) {
15
+ super({
16
+ code: OrbytErrorCode.EXECUTION_ADAPTER_ERROR,
17
+ message: `No driver found to execute step '${stepId}' with uses '${uses}'`,
18
+ severity: ErrorSeverity.ERROR,
19
+ path: `workflow.steps.${stepId}`,
20
+ hint: `Available drivers: ${availableDrivers.join(', ')}. Check your step configuration.`,
21
+ context: {
22
+ stepId,
23
+ uses,
24
+ availableDrivers,
25
+ },
26
+ });
27
+ }
28
+ }
29
+ /**
30
+ * Driver Resolver
31
+ *
32
+ * Manages driver registration and resolves steps to appropriate drivers.
33
+ */
34
+ export class DriverResolver {
35
+ drivers = [];
36
+ initialized = new Set();
37
+ /**
38
+ * Register a driver
39
+ */
40
+ register(driver) {
41
+ // Check for duplicate
42
+ const existing = this.drivers.find(d => d.type === driver.type);
43
+ if (existing) {
44
+ throw new Error(`Driver '${driver.type}' is already registered`);
45
+ }
46
+ this.drivers.push(driver);
47
+ }
48
+ /**
49
+ * Register multiple drivers
50
+ */
51
+ registerAll(drivers) {
52
+ for (const driver of drivers) {
53
+ this.register(driver);
54
+ }
55
+ }
56
+ /**
57
+ * Unregister a driver
58
+ */
59
+ unregister(driverType) {
60
+ const index = this.drivers.findIndex(d => d.type === driverType);
61
+ if (index !== -1) {
62
+ const driver = this.drivers[index];
63
+ // Cleanup if initialized
64
+ if (this.initialized.has(driverType) && driver.cleanup) {
65
+ driver.cleanup().catch(err => {
66
+ console.error(`Error cleaning up driver ${driverType}:`, err);
67
+ });
68
+ }
69
+ this.initialized.delete(driverType);
70
+ this.drivers.splice(index, 1);
71
+ return true;
72
+ }
73
+ return false;
74
+ }
75
+ /**
76
+ * Resolve driver for a step
77
+ *
78
+ * @param step - Step to resolve driver for
79
+ * @returns Driver that can handle this step
80
+ * @throws {DriverNotFoundError} If no driver can handle the step
81
+ */
82
+ resolve(step) {
83
+ for (const driver of this.drivers) {
84
+ if (driver.canHandle(step)) {
85
+ return driver;
86
+ }
87
+ }
88
+ // No driver found
89
+ const availableDrivers = this.drivers.map(d => d.type);
90
+ throw new DriverNotFoundError(step.id, step.uses, availableDrivers);
91
+ }
92
+ /**
93
+ * Execute a step using the appropriate driver
94
+ *
95
+ * @param step - Step to execute
96
+ * @param context - Execution context
97
+ * @returns Execution result
98
+ */
99
+ async execute(step, context) {
100
+ // Resolve driver
101
+ const driver = this.resolve(step);
102
+ // Initialize driver if needed
103
+ if (!this.initialized.has(driver.type) && driver.initialize) {
104
+ await driver.initialize();
105
+ this.initialized.add(driver.type);
106
+ }
107
+ // Execute step
108
+ context.log(`Using driver: ${driver.name} (${driver.type})`);
109
+ return driver.execute(step, context);
110
+ }
111
+ /**
112
+ * Get all registered drivers
113
+ */
114
+ getAll() {
115
+ return [...this.drivers];
116
+ }
117
+ /**
118
+ * Get driver by type
119
+ */
120
+ get(type) {
121
+ return this.drivers.find(d => d.type === type);
122
+ }
123
+ /**
124
+ * Initialize all drivers
125
+ */
126
+ async initializeAll() {
127
+ const initPromises = this.drivers
128
+ .filter(d => d.initialize && !this.initialized.has(d.type))
129
+ .map(async (d) => {
130
+ await d.initialize();
131
+ this.initialized.add(d.type);
132
+ });
133
+ await Promise.all(initPromises);
134
+ }
135
+ /**
136
+ * Cleanup all drivers
137
+ */
138
+ async cleanupAll() {
139
+ const cleanupPromises = this.drivers
140
+ .filter(d => d.cleanup)
141
+ .map(d => d.cleanup());
142
+ await Promise.allSettled(cleanupPromises);
143
+ this.initialized.clear();
144
+ }
145
+ /**
146
+ * Clear all drivers
147
+ */
148
+ clear() {
149
+ this.drivers = [];
150
+ this.initialized.clear();
151
+ }
152
+ /**
153
+ * Get resolver statistics
154
+ */
155
+ getStats() {
156
+ return {
157
+ total: this.drivers.length,
158
+ initialized: this.initialized.size,
159
+ drivers: this.drivers.map(d => ({
160
+ type: d.type,
161
+ name: d.name,
162
+ version: d.version,
163
+ isInitialized: this.initialized.has(d.type),
164
+ })),
165
+ };
166
+ }
167
+ }
168
+ /**
169
+ * Global driver resolver instance (singleton pattern)
170
+ */
171
+ export const globalDriverResolver = new DriverResolver();
172
+ //# sourceMappingURL=DriverResolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DriverResolver.js","sourceRoot":"","sources":["../../../src/execution/drivers/DriverResolver.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE3E;;GAEG;AACH,MAAM,OAAO,mBAAoB,SAAQ,UAAU;IACjD,YAAY,MAAc,EAAE,IAAY,EAAE,gBAA0B;QAClE,KAAK,CAAC;YACJ,IAAI,EAAE,cAAc,CAAC,uBAAuB;YAC5C,OAAO,EAAE,oCAAoC,MAAM,gBAAgB,IAAI,GAAG;YAC1E,QAAQ,EAAE,aAAa,CAAC,KAAK;YAC7B,IAAI,EAAE,kBAAkB,MAAM,EAAE;YAChC,IAAI,EAAE,sBAAsB,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,kCAAkC;YACzF,OAAO,EAAE;gBACP,MAAM;gBACN,IAAI;gBACJ,gBAAgB;aACjB;SACF,CAAC,CAAC;IACL,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,OAAO,cAAc;IACjB,OAAO,GAAsB,EAAE,CAAC;IAChC,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;IAExC;;OAEG;IACH,QAAQ,CAAC,MAAuB;QAC9B,sBAAsB;QACtB,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC;QAChE,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,WAAW,MAAM,CAAC,IAAI,yBAAyB,CAAC,CAAC;QACnE,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,OAA0B;QACpC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,UAAkB;QAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;QACjE,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;YACjB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAEnC,yBAAyB;YACzB,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACvD,MAAM,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;oBAC3B,OAAO,CAAC,KAAK,CAAC,4BAA4B,UAAU,GAAG,EAAE,GAAG,CAAC,CAAC;gBAChE,CAAC,CAAC,CAAC;YACL,CAAC;YAED,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YACpC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAC9B,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;OAMG;IACH,OAAO,CAAC,IAAgB;QACtB,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAClC,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3B,OAAO,MAAM,CAAC;YAChB,CAAC;QACH,CAAC;QAED,kBAAkB;QAClB,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACvD,MAAM,IAAI,mBAAmB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;IACtE,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,OAAO,CACX,IAAgB,EAChB,OAAsB;QAEtB,iBAAiB;QACjB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAElC,8BAA8B;QAC9B,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YAC5D,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC;YAC1B,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACpC,CAAC;QAED,eAAe;QACf,OAAO,CAAC,GAAG,CAAC,iBAAiB,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC;QAC7D,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,MAAM;QACJ,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,GAAG,CAAC,IAAY;QACd,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IACjD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa;QACjB,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO;aAC9B,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;aAC1D,GAAG,CAAC,KAAK,EAAC,CAAC,EAAC,EAAE;YACb,MAAM,CAAC,CAAC,UAAW,EAAE,CAAC;YACtB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;QAEL,MAAM,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU;QACd,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO;aACjC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;aACtB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAQ,EAAE,CAAC,CAAC;QAE1B,MAAM,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;QAC1C,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,KAAK;QACH,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,QAAQ;QAUN,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;YAC1B,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI;YAClC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBAC9B,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,OAAO,EAAE,CAAC,CAAC,OAAO;gBAClB,aAAa,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;aAC5C,CAAC,CAAC;SACJ,CAAC;IACJ,CAAC;CACF;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,cAAc,EAAE,CAAC"}
@@ -0,0 +1,127 @@
1
+ /**
2
+ * Execution Driver System
3
+ *
4
+ * Drivers determine HOW steps are executed, while adapters determine WHAT is executed.
5
+ * This abstraction allows the engine to support multiple execution strategies.
6
+ *
7
+ * @module execution/drivers
8
+ */
9
+ import type { AdapterResult } from '@dev-ecosystem/core';
10
+ /**
11
+ * Step execution context for drivers
12
+ */
13
+ export interface DriverContext {
14
+ /** Current step ID */
15
+ stepId: string;
16
+ /** Workflow execution ID */
17
+ executionId: string;
18
+ /** Workflow name */
19
+ workflowName: string;
20
+ /** Logger function */
21
+ log: (message: string, level?: 'info' | 'warn' | 'error' | 'debug') => void;
22
+ /** Abort signal for cancellation */
23
+ signal?: AbortSignal;
24
+ /** Step timeout in milliseconds */
25
+ timeout?: number;
26
+ /** Working directory */
27
+ cwd?: string;
28
+ /** Environment variables */
29
+ env?: Record<string, string>;
30
+ /** Secrets access */
31
+ secrets?: Record<string, string>;
32
+ /** Temporary directory */
33
+ tempDir?: string;
34
+ /** Previous step outputs */
35
+ stepOutputs?: Record<string, any>;
36
+ /** Workflow inputs */
37
+ inputs?: Record<string, any>;
38
+ /** Workflow context */
39
+ workflowContext?: Record<string, any>;
40
+ }
41
+ /**
42
+ * Step definition for driver execution
43
+ */
44
+ export interface DriverStep {
45
+ /** Step ID */
46
+ id: string;
47
+ /** Step name (optional) */
48
+ name?: string;
49
+ /** Action to execute (e.g., 'http.request.get', 'cli.run') */
50
+ uses: string;
51
+ /** Input parameters */
52
+ with?: Record<string, any>;
53
+ /** Conditional execution */
54
+ when?: string;
55
+ /** Environment variables */
56
+ env?: Record<string, string>;
57
+ /** Retry configuration */
58
+ retry?: {
59
+ max: number;
60
+ backoff?: 'linear' | 'exponential';
61
+ delay?: number;
62
+ };
63
+ /** Timeout */
64
+ timeout?: string;
65
+ /** Continue on error */
66
+ continueOnError?: boolean;
67
+ }
68
+ /**
69
+ * Base execution driver interface
70
+ */
71
+ export interface ExecutionDriver {
72
+ /** Driver type identifier */
73
+ readonly type: string;
74
+ /** Driver name */
75
+ readonly name: string;
76
+ /** Driver version */
77
+ readonly version: string;
78
+ /** Driver description */
79
+ readonly description?: string;
80
+ /**
81
+ * Check if this driver can handle a step
82
+ *
83
+ * @param step - Step to check
84
+ * @returns True if driver can handle this step
85
+ */
86
+ canHandle(step: DriverStep): boolean;
87
+ /**
88
+ * Execute a step
89
+ *
90
+ * @param step - Step to execute
91
+ * @param context - Execution context
92
+ * @returns Execution result
93
+ */
94
+ execute(step: DriverStep, context: DriverContext): Promise<AdapterResult>;
95
+ /**
96
+ * Optional: Initialize driver
97
+ */
98
+ initialize?(): Promise<void>;
99
+ /**
100
+ * Optional: Cleanup driver
101
+ */
102
+ cleanup?(): Promise<void>;
103
+ }
104
+ /**
105
+ * Base driver implementation with common logic
106
+ */
107
+ export declare abstract class BaseDriver implements ExecutionDriver {
108
+ abstract readonly type: string;
109
+ abstract readonly name: string;
110
+ abstract readonly version: string;
111
+ abstract readonly description?: string;
112
+ abstract canHandle(step: DriverStep): boolean;
113
+ abstract execute(step: DriverStep, context: DriverContext): Promise<AdapterResult>;
114
+ /**
115
+ * Validate step has required fields
116
+ */
117
+ protected validateStep(step: DriverStep, required: string[]): void;
118
+ /**
119
+ * Get step input with default value
120
+ */
121
+ protected getStepInput<T>(step: DriverStep, key: string, defaultValue: T): T;
122
+ /**
123
+ * Parse timeout string to milliseconds
124
+ */
125
+ protected parseTimeout(timeout?: string): number | undefined;
126
+ }
127
+ //# sourceMappingURL=ExecutionDriver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExecutionDriver.d.ts","sourceRoot":"","sources":["../../../src/execution/drivers/ExecutionDriver.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Execution Driver System
3
+ *
4
+ * Drivers determine HOW steps are executed, while adapters determine WHAT is executed.
5
+ * This abstraction allows the engine to support multiple execution strategies.
6
+ *
7
+ * @module execution/drivers
8
+ */
9
+ /**
10
+ * Base driver implementation with common logic
11
+ */
12
+ export class BaseDriver {
13
+ /**
14
+ * Validate step has required fields
15
+ */
16
+ validateStep(step, required) {
17
+ for (const field of required) {
18
+ if (!(field in step)) {
19
+ throw new Error(`${this.name} driver: step missing required field '${field}'`);
20
+ }
21
+ }
22
+ }
23
+ /**
24
+ * Get step input with default value
25
+ */
26
+ getStepInput(step, key, defaultValue) {
27
+ return step.with?.[key] !== undefined ? step.with[key] : defaultValue;
28
+ }
29
+ /**
30
+ * Parse timeout string to milliseconds
31
+ */
32
+ parseTimeout(timeout) {
33
+ if (!timeout)
34
+ return undefined;
35
+ const match = timeout.match(/^(\d+)(ms|s|m|h)$/);
36
+ if (!match) {
37
+ throw new Error(`Invalid timeout format: ${timeout}`);
38
+ }
39
+ const value = parseInt(match[1], 10);
40
+ const unit = match[2];
41
+ switch (unit) {
42
+ case 'ms': return value;
43
+ case 's': return value * 1000;
44
+ case 'm': return value * 60 * 1000;
45
+ case 'h': return value * 60 * 60 * 1000;
46
+ default: return value;
47
+ }
48
+ }
49
+ }
50
+ //# sourceMappingURL=ExecutionDriver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExecutionDriver.js","sourceRoot":"","sources":["../../../src/execution/drivers/ExecutionDriver.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAmIH;;GAEG;AACH,MAAM,OAAgB,UAAU;IAa9B;;OAEG;IACO,YAAY,CAAC,IAAgB,EAAE,QAAkB;QACzD,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;YAC7B,IAAI,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CACb,GAAG,IAAI,CAAC,IAAI,yCAAyC,KAAK,GAAG,CAC9D,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACO,YAAY,CACpB,IAAgB,EAChB,GAAW,EACX,YAAe;QAEf,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;IACxE,CAAC;IAED;;OAEG;IACO,YAAY,CAAC,OAAgB;QACrC,IAAI,CAAC,OAAO;YAAE,OAAO,SAAS,CAAC;QAE/B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACjD,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,2BAA2B,OAAO,EAAE,CAAC,CAAC;QACxD,CAAC;QAED,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACrC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAEtB,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,IAAI,CAAC,CAAC,OAAO,KAAK,CAAC;YACxB,KAAK,GAAG,CAAC,CAAC,OAAO,KAAK,GAAG,IAAI,CAAC;YAC9B,KAAK,GAAG,CAAC,CAAC,OAAO,KAAK,GAAG,EAAE,GAAG,IAAI,CAAC;YACnC,KAAK,GAAG,CAAC,CAAC,OAAO,KAAK,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;YACxC,OAAO,CAAC,CAAC,OAAO,KAAK,CAAC;QACxB,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Execution Drivers
3
+ *
4
+ * Driver system for pluggable step execution strategies.
5
+ *
6
+ * @module execution/drivers
7
+ */
8
+ export * from './ExecutionDriver.js';
9
+ export * from './DriverResolver.js';
10
+ export * from './AdapterDriver.js';
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/execution/drivers/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Execution Drivers
3
+ *
4
+ * Driver system for pluggable step execution strategies.
5
+ *
6
+ * @module execution/drivers
7
+ */
8
+ export * from './ExecutionDriver.js';
9
+ export * from './DriverResolver.js';
10
+ export * from './AdapterDriver.js';
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/execution/drivers/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Execution Layer
3
+ *
4
+ * Handles workflow execution planning and orchestration:
5
+ * - ExecutionNode: Pure data model for execution steps
6
+ * - ExecutionPlan: Coordinates graph analysis to create execution plans
7
+ * - StepExecutor: Executes individual steps with retry/timeout
8
+ * - WorkflowExecutor: Orchestrates full workflow execution
9
+ * - ExecutionEngine: Main orchestrator integrating scheduling, queueing, and execution
10
+ * - Drivers: Pluggable execution strategies (optional enhancement)
11
+ */
12
+ export * from './ExecutionNode.js';
13
+ export * from './ExecutionPlan.js';
14
+ export * from './StepExecutor.js';
15
+ export * from './WorkflowExecutor.js';
16
+ export * from './ExecutionEngine.js';
17
+ export * from './drivers/index.js';
18
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/execution/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AAGrC,cAAc,oBAAoB,CAAC"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Execution Layer
3
+ *
4
+ * Handles workflow execution planning and orchestration:
5
+ * - ExecutionNode: Pure data model for execution steps
6
+ * - ExecutionPlan: Coordinates graph analysis to create execution plans
7
+ * - StepExecutor: Executes individual steps with retry/timeout
8
+ * - WorkflowExecutor: Orchestrates full workflow execution
9
+ * - ExecutionEngine: Main orchestrator integrating scheduling, queueing, and execution
10
+ * - Drivers: Pluggable execution strategies (optional enhancement)
11
+ */
12
+ export * from './ExecutionNode.js';
13
+ export * from './ExecutionPlan.js';
14
+ export * from './StepExecutor.js';
15
+ export * from './WorkflowExecutor.js';
16
+ export * from './ExecutionEngine.js';
17
+ // Optional: Driver system for advanced execution strategies
18
+ export * from './drivers/index.js';
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/execution/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AAErC,4DAA4D;AAC5D,cAAc,oBAAoB,CAAC"}
@@ -0,0 +1,90 @@
1
+ /**
2
+ * CycleDetector
3
+ *
4
+ * Detects cycles in the dependency graph using Depth-First Search (DFS).
5
+ * This is about VALIDATION - fail fast with clear error messages.
6
+ *
7
+ * Purpose:
8
+ * - Detect circular dependencies before execution
9
+ * - Provide clear error messages showing the cycle path
10
+ * - Fail fast - prevent impossible execution plans
11
+ *
12
+ * Algorithm: DFS with three-color marking
13
+ * - WHITE (unvisited): Node not yet explored
14
+ * - GRAY (visiting): Node currently in DFS path (on stack)
15
+ * - BLACK (visited): Node fully explored, all descendants visited
16
+ *
17
+ * A cycle exists if we encounter a GRAY node during traversal.
18
+ *
19
+ * What it does NOT do:
20
+ * - Does NOT order the graph (that's TopologicalSort's job)
21
+ * - Does NOT execute anything (that's StepExecutor's job)
22
+ * - Does NOT schedule steps (that's WorkflowExecutor's job)
23
+ */
24
+ import { DependencyGraph } from './DependencyResolver.js';
25
+ /**
26
+ * Result of cycle detection
27
+ */
28
+ export interface CycleDetectionResult {
29
+ /** Whether a cycle was detected */
30
+ readonly hasCycle: boolean;
31
+ /** The cycle path if one was found (e.g., ['A', 'B', 'C', 'A']) */
32
+ readonly cyclePath?: readonly string[];
33
+ }
34
+ /**
35
+ * Detects cycles in dependency graphs.
36
+ * Pure function - takes graph, returns cycle information.
37
+ */
38
+ export declare class CycleDetector {
39
+ /**
40
+ * Check if the graph contains a cycle.
41
+ * Uses DFS with three-color marking.
42
+ *
43
+ * @param graph - The dependency graph to check
44
+ * @returns Cycle detection result
45
+ */
46
+ static detect(graph: DependencyGraph): CycleDetectionResult;
47
+ /**
48
+ * Depth-first search to detect cycles.
49
+ *
50
+ * @param nodeId - Current node being visited
51
+ * @param graph - The dependency graph
52
+ * @param visitState - Visit state for each node
53
+ * @param parent - Parent pointers for cycle reconstruction
54
+ * @returns Cycle detection result
55
+ */
56
+ private static dfs;
57
+ /**
58
+ * Reconstruct the cycle path from parent pointers.
59
+ *
60
+ * @param start - Node where cycle was detected
61
+ * @param cycleNode - The GRAY node that created the cycle
62
+ * @param parent - Parent pointers
63
+ * @returns The cycle path
64
+ */
65
+ private static reconstructCycle;
66
+ /**
67
+ * Check for cycles and throw if found (convenience method).
68
+ * This is the "fail fast" version.
69
+ *
70
+ * @param graph - The dependency graph to check
71
+ * @throws WorkflowValidationError if a cycle is detected
72
+ */
73
+ static detectAndThrow(graph: DependencyGraph): void;
74
+ /**
75
+ * Find all strongly connected components (SCCs) in the graph.
76
+ * This is more advanced than simple cycle detection - it finds
77
+ * all groups of nodes that form cycles with each other.
78
+ *
79
+ * Uses Tarjan's algorithm.
80
+ *
81
+ * @param graph - The dependency graph
82
+ * @returns Array of strongly connected components (each is an array of step IDs)
83
+ */
84
+ static findStronglyConnectedComponents(graph: DependencyGraph): string[][];
85
+ /**
86
+ * Tarjan's SCC algorithm helper
87
+ */
88
+ private static strongConnect;
89
+ }
90
+ //# sourceMappingURL=CycleDetector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CycleDetector.d.ts","sourceRoot":"","sources":["../../src/graph/CycleDetector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAGH,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE1D;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,mCAAmC;IACnC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,mEAAmE;IACnE,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACxC;AAcD;;;GAGG;AACH,qBAAa,aAAa;IACxB;;;;;;OAMG;IACH,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,eAAe,GAAG,oBAAoB;IAsB3D;;;;;;;;OAQG;IACH,OAAO,CAAC,MAAM,CAAC,GAAG;IA0ClB;;;;;;;OAOG;IACH,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAsB/B;;;;;;OAMG;IACH,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI;IAiBnD;;;;;;;;;OASG;IACH,MAAM,CAAC,+BAA+B,CAAC,KAAK,EAAE,eAAe,GAAG,MAAM,EAAE,EAAE;IA0B1E;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,aAAa;CAyD7B"}