@decaf-ts/integrations 0.3.1 → 0.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (354) hide show
  1. package/dist/integrations.cjs +1 -1
  2. package/lib/cjs/graph/constants.cjs +94 -0
  3. package/lib/cjs/graph/constants.cjs.map +1 -0
  4. package/lib/cjs/graph/decorators.cjs +4 -0
  5. package/lib/cjs/graph/decorators.cjs.map +1 -0
  6. package/lib/cjs/graph/errors/GraphCycleError.cjs +20 -0
  7. package/lib/cjs/graph/errors/GraphCycleError.cjs.map +1 -0
  8. package/lib/cjs/graph/errors/GraphExecutionError.cjs +27 -0
  9. package/lib/cjs/graph/errors/GraphExecutionError.cjs.map +1 -0
  10. package/lib/cjs/graph/errors/GraphInputError.cjs +20 -0
  11. package/lib/cjs/graph/errors/GraphInputError.cjs.map +1 -0
  12. package/lib/cjs/graph/errors/GraphLoopLimitError.cjs +20 -0
  13. package/lib/cjs/graph/errors/GraphLoopLimitError.cjs.map +1 -0
  14. package/lib/cjs/graph/errors/GraphPinningError.cjs +20 -0
  15. package/lib/cjs/graph/errors/GraphPinningError.cjs.map +1 -0
  16. package/lib/cjs/graph/errors/GraphPortError.cjs +20 -0
  17. package/lib/cjs/graph/errors/GraphPortError.cjs.map +1 -0
  18. package/lib/cjs/graph/errors/GraphStoreError.cjs +20 -0
  19. package/lib/cjs/graph/errors/GraphStoreError.cjs.map +1 -0
  20. package/lib/cjs/graph/errors/GraphTopologyError.cjs +20 -0
  21. package/lib/cjs/graph/errors/GraphTopologyError.cjs.map +1 -0
  22. package/lib/cjs/graph/errors/index.cjs +31 -0
  23. package/lib/cjs/graph/errors/index.cjs.map +1 -0
  24. package/lib/cjs/graph/events/GraphExecutionEvent.cjs +4 -0
  25. package/lib/cjs/graph/events/GraphExecutionEvent.cjs.map +1 -0
  26. package/lib/cjs/graph/events/GraphExecutionEventEmitter.cjs +40 -0
  27. package/lib/cjs/graph/events/GraphExecutionEventEmitter.cjs.map +1 -0
  28. package/lib/cjs/graph/events/GraphExecutionEventFactory.cjs +37 -0
  29. package/lib/cjs/graph/events/GraphExecutionEventFactory.cjs.map +1 -0
  30. package/lib/cjs/graph/events/GraphExecutionObserver.cjs +4 -0
  31. package/lib/cjs/graph/events/GraphExecutionObserver.cjs.map +1 -0
  32. package/lib/cjs/graph/events/index.cjs +27 -0
  33. package/lib/cjs/graph/events/index.cjs.map +1 -0
  34. package/lib/cjs/graph/execution/GraphExecutionContext.cjs +79 -0
  35. package/lib/cjs/graph/execution/GraphExecutionContext.cjs.map +1 -0
  36. package/lib/cjs/graph/execution/GraphExecutionEngine.cjs +405 -0
  37. package/lib/cjs/graph/execution/GraphExecutionEngine.cjs.map +1 -0
  38. package/lib/cjs/graph/execution/GraphExecutionFrame.cjs +32 -0
  39. package/lib/cjs/graph/execution/GraphExecutionFrame.cjs.map +1 -0
  40. package/lib/cjs/graph/execution/GraphExecutionResult.cjs +30 -0
  41. package/lib/cjs/graph/execution/GraphExecutionResult.cjs.map +1 -0
  42. package/lib/cjs/graph/execution/GraphNodeExecutor.cjs +4 -0
  43. package/lib/cjs/graph/execution/GraphNodeExecutor.cjs.map +1 -0
  44. package/lib/cjs/graph/execution/index.cjs +28 -0
  45. package/lib/cjs/graph/execution/index.cjs.map +1 -0
  46. package/lib/cjs/graph/index.cjs +74 -0
  47. package/lib/cjs/graph/index.cjs.map +1 -0
  48. package/lib/cjs/graph/loops/ForeachGraphNodeExecutor.cjs +84 -0
  49. package/lib/cjs/graph/loops/ForeachGraphNodeExecutor.cjs.map +1 -0
  50. package/lib/cjs/graph/loops/GraphConditionEvaluator.cjs +63 -0
  51. package/lib/cjs/graph/loops/GraphConditionEvaluator.cjs.map +1 -0
  52. package/lib/cjs/graph/loops/GraphLoopExecutionContext.cjs +16 -0
  53. package/lib/cjs/graph/loops/GraphLoopExecutionContext.cjs.map +1 -0
  54. package/lib/cjs/graph/loops/UntilGraphNodeExecutor.cjs +76 -0
  55. package/lib/cjs/graph/loops/UntilGraphNodeExecutor.cjs.map +1 -0
  56. package/lib/cjs/graph/loops/WhileGraphNodeExecutor.cjs +77 -0
  57. package/lib/cjs/graph/loops/WhileGraphNodeExecutor.cjs.map +1 -0
  58. package/lib/cjs/graph/loops/index.cjs +28 -0
  59. package/lib/cjs/graph/loops/index.cjs.map +1 -0
  60. package/lib/cjs/graph/pinning/GraphPinningDependencyResolver.cjs +28 -0
  61. package/lib/cjs/graph/pinning/GraphPinningDependencyResolver.cjs.map +1 -0
  62. package/lib/cjs/graph/pinning/GraphPinningMetadata.cjs +20 -0
  63. package/lib/cjs/graph/pinning/GraphPinningMetadata.cjs.map +1 -0
  64. package/lib/cjs/graph/pinning/GraphPinningPolicy.cjs +34 -0
  65. package/lib/cjs/graph/pinning/GraphPinningPolicy.cjs.map +1 -0
  66. package/lib/cjs/graph/pinning/GraphPinningService.cjs +191 -0
  67. package/lib/cjs/graph/pinning/GraphPinningService.cjs.map +1 -0
  68. package/lib/cjs/graph/pinning/index.cjs +27 -0
  69. package/lib/cjs/graph/pinning/index.cjs.map +1 -0
  70. package/lib/cjs/graph/planning/GraphExecutionPlan.cjs +4 -0
  71. package/lib/cjs/graph/planning/GraphExecutionPlan.cjs.map +1 -0
  72. package/lib/cjs/graph/planning/GraphExecutionPlanEdge.cjs +4 -0
  73. package/lib/cjs/graph/planning/GraphExecutionPlanEdge.cjs.map +1 -0
  74. package/lib/cjs/graph/planning/GraphExecutionPlanLayer.cjs +4 -0
  75. package/lib/cjs/graph/planning/GraphExecutionPlanLayer.cjs.map +1 -0
  76. package/lib/cjs/graph/planning/GraphExecutionPlanNode.cjs +4 -0
  77. package/lib/cjs/graph/planning/GraphExecutionPlanNode.cjs.map +1 -0
  78. package/lib/cjs/graph/planning/GraphExecutionPlanner.cjs +197 -0
  79. package/lib/cjs/graph/planning/GraphExecutionPlanner.cjs.map +1 -0
  80. package/lib/cjs/graph/planning/GraphRelationResolver.cjs +172 -0
  81. package/lib/cjs/graph/planning/GraphRelationResolver.cjs.map +1 -0
  82. package/lib/cjs/graph/planning/GraphTopology.cjs +57 -0
  83. package/lib/cjs/graph/planning/GraphTopology.cjs.map +1 -0
  84. package/lib/cjs/graph/planning/index.cjs +30 -0
  85. package/lib/cjs/graph/planning/index.cjs.map +1 -0
  86. package/lib/cjs/graph/registry/GraphNodeExecutorRegistry.cjs +44 -0
  87. package/lib/cjs/graph/registry/GraphNodeExecutorRegistry.cjs.map +1 -0
  88. package/lib/cjs/graph/registry/GraphNodeExecutorResolver.cjs +27 -0
  89. package/lib/cjs/graph/registry/GraphNodeExecutorResolver.cjs.map +1 -0
  90. package/lib/cjs/graph/registry/index.cjs +25 -0
  91. package/lib/cjs/graph/registry/index.cjs.map +1 -0
  92. package/lib/cjs/graph/snapshots/GraphExecutionSnapshotMapper.cjs +53 -0
  93. package/lib/cjs/graph/snapshots/GraphExecutionSnapshotMapper.cjs.map +1 -0
  94. package/lib/cjs/graph/snapshots/index.cjs +24 -0
  95. package/lib/cjs/graph/snapshots/index.cjs.map +1 -0
  96. package/lib/cjs/graph/store/GraphCachedValue.cjs +4 -0
  97. package/lib/cjs/graph/store/GraphCachedValue.cjs.map +1 -0
  98. package/lib/cjs/graph/store/GraphValueKey.cjs +4 -0
  99. package/lib/cjs/graph/store/GraphValueKey.cjs.map +1 -0
  100. package/lib/cjs/graph/store/GraphValueStore.cjs +76 -0
  101. package/lib/cjs/graph/store/GraphValueStore.cjs.map +1 -0
  102. package/lib/cjs/graph/store/GraphValueStoreAdapter.cjs +4 -0
  103. package/lib/cjs/graph/store/GraphValueStoreAdapter.cjs.map +1 -0
  104. package/lib/cjs/graph/store/InMemoryGraphValueStoreAdapter.cjs +69 -0
  105. package/lib/cjs/graph/store/InMemoryGraphValueStoreAdapter.cjs.map +1 -0
  106. package/lib/cjs/graph/store/index.cjs +28 -0
  107. package/lib/cjs/graph/store/index.cjs.map +1 -0
  108. package/lib/cjs/graph/types.cjs +4 -0
  109. package/lib/cjs/graph/types.cjs.map +1 -0
  110. package/lib/cjs/graph/validation/GraphDefinitionValidator.cjs +33 -0
  111. package/lib/cjs/graph/validation/GraphDefinitionValidator.cjs.map +1 -0
  112. package/lib/cjs/graph/validation/GraphPortSchemaResolver.cjs +58 -0
  113. package/lib/cjs/graph/validation/GraphPortSchemaResolver.cjs.map +1 -0
  114. package/lib/cjs/graph/validation/GraphValueValidator.cjs +52 -0
  115. package/lib/cjs/graph/validation/GraphValueValidator.cjs.map +1 -0
  116. package/lib/cjs/graph/validation/index.cjs +26 -0
  117. package/lib/cjs/graph/validation/index.cjs.map +1 -0
  118. package/lib/cjs/index.cjs +3 -3
  119. package/lib/esm/graph/constants.js +106 -0
  120. package/lib/esm/graph/constants.js.map +1 -0
  121. package/lib/esm/graph/decorators.js +2 -0
  122. package/lib/esm/graph/decorators.js.map +1 -0
  123. package/lib/esm/graph/errors/GraphCycleError.js +15 -0
  124. package/lib/esm/graph/errors/GraphCycleError.js.map +1 -0
  125. package/lib/esm/graph/errors/GraphExecutionError.js +22 -0
  126. package/lib/esm/graph/errors/GraphExecutionError.js.map +1 -0
  127. package/lib/esm/graph/errors/GraphInputError.js +15 -0
  128. package/lib/esm/graph/errors/GraphInputError.js.map +1 -0
  129. package/lib/esm/graph/errors/GraphLoopLimitError.js +15 -0
  130. package/lib/esm/graph/errors/GraphLoopLimitError.js.map +1 -0
  131. package/lib/esm/graph/errors/GraphPinningError.js +15 -0
  132. package/lib/esm/graph/errors/GraphPinningError.js.map +1 -0
  133. package/lib/esm/graph/errors/GraphPortError.js +15 -0
  134. package/lib/esm/graph/errors/GraphPortError.js.map +1 -0
  135. package/lib/esm/graph/errors/GraphStoreError.js +15 -0
  136. package/lib/esm/graph/errors/GraphStoreError.js.map +1 -0
  137. package/lib/esm/graph/errors/GraphTopologyError.js +15 -0
  138. package/lib/esm/graph/errors/GraphTopologyError.js.map +1 -0
  139. package/lib/esm/graph/errors/index.js +14 -0
  140. package/lib/esm/graph/errors/index.js.map +1 -0
  141. package/lib/esm/graph/events/GraphExecutionEvent.js +2 -0
  142. package/lib/esm/graph/events/GraphExecutionEvent.js.map +1 -0
  143. package/lib/esm/graph/events/GraphExecutionEventEmitter.js +35 -0
  144. package/lib/esm/graph/events/GraphExecutionEventEmitter.js.map +1 -0
  145. package/lib/esm/graph/events/GraphExecutionEventFactory.js +32 -0
  146. package/lib/esm/graph/events/GraphExecutionEventFactory.js.map +1 -0
  147. package/lib/esm/graph/events/GraphExecutionObserver.js +2 -0
  148. package/lib/esm/graph/events/GraphExecutionObserver.js.map +1 -0
  149. package/lib/esm/graph/events/index.js +10 -0
  150. package/lib/esm/graph/events/index.js.map +1 -0
  151. package/lib/esm/graph/execution/GraphExecutionContext.js +74 -0
  152. package/lib/esm/graph/execution/GraphExecutionContext.js.map +1 -0
  153. package/lib/esm/graph/execution/GraphExecutionEngine.js +400 -0
  154. package/lib/esm/graph/execution/GraphExecutionEngine.js.map +1 -0
  155. package/lib/esm/graph/execution/GraphExecutionFrame.js +27 -0
  156. package/lib/esm/graph/execution/GraphExecutionFrame.js.map +1 -0
  157. package/lib/esm/graph/execution/GraphExecutionResult.js +26 -0
  158. package/lib/esm/graph/execution/GraphExecutionResult.js.map +1 -0
  159. package/lib/esm/graph/execution/GraphNodeExecutor.js +2 -0
  160. package/lib/esm/graph/execution/GraphNodeExecutor.js.map +1 -0
  161. package/lib/esm/graph/execution/index.js +11 -0
  162. package/lib/esm/graph/execution/index.js.map +1 -0
  163. package/lib/esm/graph/index.js +57 -0
  164. package/lib/esm/graph/index.js.map +1 -0
  165. package/lib/esm/graph/loops/ForeachGraphNodeExecutor.js +79 -0
  166. package/lib/esm/graph/loops/ForeachGraphNodeExecutor.js.map +1 -0
  167. package/lib/esm/graph/loops/GraphConditionEvaluator.js +58 -0
  168. package/lib/esm/graph/loops/GraphConditionEvaluator.js.map +1 -0
  169. package/lib/esm/graph/loops/GraphLoopExecutionContext.js +11 -0
  170. package/lib/esm/graph/loops/GraphLoopExecutionContext.js.map +1 -0
  171. package/lib/esm/graph/loops/UntilGraphNodeExecutor.js +71 -0
  172. package/lib/esm/graph/loops/UntilGraphNodeExecutor.js.map +1 -0
  173. package/lib/esm/graph/loops/WhileGraphNodeExecutor.js +72 -0
  174. package/lib/esm/graph/loops/WhileGraphNodeExecutor.js.map +1 -0
  175. package/lib/esm/graph/loops/index.js +11 -0
  176. package/lib/esm/graph/loops/index.js.map +1 -0
  177. package/lib/esm/graph/pinning/GraphPinningDependencyResolver.js +23 -0
  178. package/lib/esm/graph/pinning/GraphPinningDependencyResolver.js.map +1 -0
  179. package/lib/esm/graph/pinning/GraphPinningMetadata.js +15 -0
  180. package/lib/esm/graph/pinning/GraphPinningMetadata.js.map +1 -0
  181. package/lib/esm/graph/pinning/GraphPinningPolicy.js +29 -0
  182. package/lib/esm/graph/pinning/GraphPinningPolicy.js.map +1 -0
  183. package/lib/esm/graph/pinning/GraphPinningService.js +186 -0
  184. package/lib/esm/graph/pinning/GraphPinningService.js.map +1 -0
  185. package/lib/esm/graph/pinning/index.js +10 -0
  186. package/lib/esm/graph/pinning/index.js.map +1 -0
  187. package/lib/esm/graph/planning/GraphExecutionPlan.js +2 -0
  188. package/lib/esm/graph/planning/GraphExecutionPlan.js.map +1 -0
  189. package/lib/esm/graph/planning/GraphExecutionPlanEdge.js +7 -0
  190. package/lib/esm/graph/planning/GraphExecutionPlanEdge.js.map +1 -0
  191. package/lib/esm/graph/planning/GraphExecutionPlanLayer.js +2 -0
  192. package/lib/esm/graph/planning/GraphExecutionPlanLayer.js.map +1 -0
  193. package/lib/esm/graph/planning/GraphExecutionPlanNode.js +2 -0
  194. package/lib/esm/graph/planning/GraphExecutionPlanNode.js.map +1 -0
  195. package/lib/esm/graph/planning/GraphExecutionPlanner.js +192 -0
  196. package/lib/esm/graph/planning/GraphExecutionPlanner.js.map +1 -0
  197. package/lib/esm/graph/planning/GraphRelationResolver.js +167 -0
  198. package/lib/esm/graph/planning/GraphRelationResolver.js.map +1 -0
  199. package/lib/esm/graph/planning/GraphTopology.js +52 -0
  200. package/lib/esm/graph/planning/GraphTopology.js.map +1 -0
  201. package/lib/esm/graph/planning/index.js +13 -0
  202. package/lib/esm/graph/planning/index.js.map +1 -0
  203. package/lib/esm/graph/registry/GraphNodeExecutorRegistry.js +39 -0
  204. package/lib/esm/graph/registry/GraphNodeExecutorRegistry.js.map +1 -0
  205. package/lib/esm/graph/registry/GraphNodeExecutorResolver.js +22 -0
  206. package/lib/esm/graph/registry/GraphNodeExecutorResolver.js.map +1 -0
  207. package/lib/esm/graph/registry/index.js +8 -0
  208. package/lib/esm/graph/registry/index.js.map +1 -0
  209. package/lib/esm/graph/snapshots/GraphExecutionSnapshotMapper.js +48 -0
  210. package/lib/esm/graph/snapshots/GraphExecutionSnapshotMapper.js.map +1 -0
  211. package/lib/esm/graph/snapshots/index.js +7 -0
  212. package/lib/esm/graph/snapshots/index.js.map +1 -0
  213. package/lib/esm/graph/store/GraphCachedValue.js +2 -0
  214. package/lib/esm/graph/store/GraphCachedValue.js.map +1 -0
  215. package/lib/esm/graph/store/GraphValueKey.js +7 -0
  216. package/lib/esm/graph/store/GraphValueKey.js.map +1 -0
  217. package/lib/esm/graph/store/GraphValueStore.js +71 -0
  218. package/lib/esm/graph/store/GraphValueStore.js.map +1 -0
  219. package/lib/esm/graph/store/GraphValueStoreAdapter.js +2 -0
  220. package/lib/esm/graph/store/GraphValueStoreAdapter.js.map +1 -0
  221. package/lib/esm/graph/store/InMemoryGraphValueStoreAdapter.js +64 -0
  222. package/lib/esm/graph/store/InMemoryGraphValueStoreAdapter.js.map +1 -0
  223. package/lib/esm/graph/store/index.js +11 -0
  224. package/lib/esm/graph/store/index.js.map +1 -0
  225. package/lib/esm/graph/types.js +2 -0
  226. package/lib/esm/graph/types.js.map +1 -0
  227. package/lib/esm/graph/validation/GraphDefinitionValidator.js +28 -0
  228. package/lib/esm/graph/validation/GraphDefinitionValidator.js.map +1 -0
  229. package/lib/esm/graph/validation/GraphPortSchemaResolver.js +53 -0
  230. package/lib/esm/graph/validation/GraphPortSchemaResolver.js.map +1 -0
  231. package/lib/esm/graph/validation/GraphValueValidator.js +47 -0
  232. package/lib/esm/graph/validation/GraphValueValidator.js.map +1 -0
  233. package/lib/esm/graph/validation/index.js +9 -0
  234. package/lib/esm/graph/validation/index.js.map +1 -0
  235. package/lib/esm/index.js +3 -3
  236. package/lib/types/graph/constants.d.cts +101 -0
  237. package/lib/types/graph/constants.d.mts +101 -0
  238. package/lib/types/graph/decorators.d.cts +6 -0
  239. package/lib/types/graph/decorators.d.mts +6 -0
  240. package/lib/types/graph/errors/GraphCycleError.d.cts +12 -0
  241. package/lib/types/graph/errors/GraphCycleError.d.mts +12 -0
  242. package/lib/types/graph/errors/GraphExecutionError.d.cts +19 -0
  243. package/lib/types/graph/errors/GraphExecutionError.d.mts +19 -0
  244. package/lib/types/graph/errors/GraphInputError.d.cts +12 -0
  245. package/lib/types/graph/errors/GraphInputError.d.mts +12 -0
  246. package/lib/types/graph/errors/GraphLoopLimitError.d.cts +12 -0
  247. package/lib/types/graph/errors/GraphLoopLimitError.d.mts +12 -0
  248. package/lib/types/graph/errors/GraphPinningError.d.cts +12 -0
  249. package/lib/types/graph/errors/GraphPinningError.d.mts +12 -0
  250. package/lib/types/graph/errors/GraphPortError.d.cts +12 -0
  251. package/lib/types/graph/errors/GraphPortError.d.mts +12 -0
  252. package/lib/types/graph/errors/GraphStoreError.d.cts +12 -0
  253. package/lib/types/graph/errors/GraphStoreError.d.mts +12 -0
  254. package/lib/types/graph/errors/GraphTopologyError.d.cts +12 -0
  255. package/lib/types/graph/errors/GraphTopologyError.d.mts +12 -0
  256. package/lib/types/graph/errors/index.d.cts +13 -0
  257. package/lib/types/graph/errors/index.d.mts +13 -0
  258. package/lib/types/graph/events/GraphExecutionEvent.d.cts +6 -0
  259. package/lib/types/graph/events/GraphExecutionEvent.d.mts +6 -0
  260. package/lib/types/graph/events/GraphExecutionEventEmitter.d.cts +26 -0
  261. package/lib/types/graph/events/GraphExecutionEventEmitter.d.mts +26 -0
  262. package/lib/types/graph/events/GraphExecutionEventFactory.d.cts +25 -0
  263. package/lib/types/graph/events/GraphExecutionEventFactory.d.mts +25 -0
  264. package/lib/types/graph/events/GraphExecutionObserver.d.cts +17 -0
  265. package/lib/types/graph/events/GraphExecutionObserver.d.mts +17 -0
  266. package/lib/types/graph/events/index.d.cts +9 -0
  267. package/lib/types/graph/events/index.d.mts +9 -0
  268. package/lib/types/graph/execution/GraphExecutionContext.d.cts +50 -0
  269. package/lib/types/graph/execution/GraphExecutionContext.d.mts +50 -0
  270. package/lib/types/graph/execution/GraphExecutionEngine.d.cts +112 -0
  271. package/lib/types/graph/execution/GraphExecutionEngine.d.mts +112 -0
  272. package/lib/types/graph/execution/GraphExecutionFrame.d.cts +29 -0
  273. package/lib/types/graph/execution/GraphExecutionFrame.d.mts +29 -0
  274. package/lib/types/graph/execution/GraphExecutionResult.d.cts +13 -0
  275. package/lib/types/graph/execution/GraphExecutionResult.d.mts +13 -0
  276. package/lib/types/graph/execution/GraphNodeExecutor.d.cts +23 -0
  277. package/lib/types/graph/execution/GraphNodeExecutor.d.mts +23 -0
  278. package/lib/types/graph/execution/index.d.cts +10 -0
  279. package/lib/types/graph/execution/index.d.mts +10 -0
  280. package/lib/types/graph/index.d.cts +52 -0
  281. package/lib/types/graph/index.d.mts +52 -0
  282. package/lib/types/graph/loops/ForeachGraphNodeExecutor.d.cts +27 -0
  283. package/lib/types/graph/loops/ForeachGraphNodeExecutor.d.mts +27 -0
  284. package/lib/types/graph/loops/GraphConditionEvaluator.d.cts +23 -0
  285. package/lib/types/graph/loops/GraphConditionEvaluator.d.mts +23 -0
  286. package/lib/types/graph/loops/GraphLoopExecutionContext.d.cts +15 -0
  287. package/lib/types/graph/loops/GraphLoopExecutionContext.d.mts +15 -0
  288. package/lib/types/graph/loops/UntilGraphNodeExecutor.d.cts +22 -0
  289. package/lib/types/graph/loops/UntilGraphNodeExecutor.d.mts +22 -0
  290. package/lib/types/graph/loops/WhileGraphNodeExecutor.d.cts +26 -0
  291. package/lib/types/graph/loops/WhileGraphNodeExecutor.d.mts +26 -0
  292. package/lib/types/graph/loops/index.d.cts +10 -0
  293. package/lib/types/graph/loops/index.d.mts +10 -0
  294. package/lib/types/graph/pinning/GraphPinningDependencyResolver.d.cts +21 -0
  295. package/lib/types/graph/pinning/GraphPinningDependencyResolver.d.mts +21 -0
  296. package/lib/types/graph/pinning/GraphPinningMetadata.d.cts +14 -0
  297. package/lib/types/graph/pinning/GraphPinningMetadata.d.mts +14 -0
  298. package/lib/types/graph/pinning/GraphPinningPolicy.d.cts +20 -0
  299. package/lib/types/graph/pinning/GraphPinningPolicy.d.mts +20 -0
  300. package/lib/types/graph/pinning/GraphPinningService.d.cts +59 -0
  301. package/lib/types/graph/pinning/GraphPinningService.d.mts +59 -0
  302. package/lib/types/graph/pinning/index.d.cts +9 -0
  303. package/lib/types/graph/pinning/index.d.mts +9 -0
  304. package/lib/types/graph/planning/GraphExecutionPlan.d.cts +21 -0
  305. package/lib/types/graph/planning/GraphExecutionPlan.d.mts +21 -0
  306. package/lib/types/graph/planning/GraphExecutionPlanEdge.d.cts +21 -0
  307. package/lib/types/graph/planning/GraphExecutionPlanEdge.d.mts +21 -0
  308. package/lib/types/graph/planning/GraphExecutionPlanLayer.d.cts +13 -0
  309. package/lib/types/graph/planning/GraphExecutionPlanLayer.d.mts +13 -0
  310. package/lib/types/graph/planning/GraphExecutionPlanNode.d.cts +20 -0
  311. package/lib/types/graph/planning/GraphExecutionPlanNode.d.mts +20 -0
  312. package/lib/types/graph/planning/GraphExecutionPlanner.d.cts +60 -0
  313. package/lib/types/graph/planning/GraphExecutionPlanner.d.mts +60 -0
  314. package/lib/types/graph/planning/GraphRelationResolver.d.cts +62 -0
  315. package/lib/types/graph/planning/GraphRelationResolver.d.mts +62 -0
  316. package/lib/types/graph/planning/GraphTopology.d.cts +23 -0
  317. package/lib/types/graph/planning/GraphTopology.d.mts +23 -0
  318. package/lib/types/graph/planning/index.d.cts +12 -0
  319. package/lib/types/graph/planning/index.d.mts +12 -0
  320. package/lib/types/graph/registry/GraphNodeExecutorRegistry.d.cts +25 -0
  321. package/lib/types/graph/registry/GraphNodeExecutorRegistry.d.mts +25 -0
  322. package/lib/types/graph/registry/GraphNodeExecutorResolver.d.cts +21 -0
  323. package/lib/types/graph/registry/GraphNodeExecutorResolver.d.mts +21 -0
  324. package/lib/types/graph/registry/index.d.cts +7 -0
  325. package/lib/types/graph/registry/index.d.mts +7 -0
  326. package/lib/types/graph/snapshots/GraphExecutionSnapshotMapper.d.cts +10 -0
  327. package/lib/types/graph/snapshots/GraphExecutionSnapshotMapper.d.mts +10 -0
  328. package/lib/types/graph/snapshots/index.d.cts +6 -0
  329. package/lib/types/graph/snapshots/index.d.mts +6 -0
  330. package/lib/types/graph/store/GraphCachedValue.d.cts +20 -0
  331. package/lib/types/graph/store/GraphCachedValue.d.mts +20 -0
  332. package/lib/types/graph/store/GraphValueKey.d.cts +18 -0
  333. package/lib/types/graph/store/GraphValueKey.d.mts +18 -0
  334. package/lib/types/graph/store/GraphValueStore.d.cts +41 -0
  335. package/lib/types/graph/store/GraphValueStore.d.mts +41 -0
  336. package/lib/types/graph/store/GraphValueStoreAdapter.d.cts +32 -0
  337. package/lib/types/graph/store/GraphValueStoreAdapter.d.mts +32 -0
  338. package/lib/types/graph/store/InMemoryGraphValueStoreAdapter.d.cts +33 -0
  339. package/lib/types/graph/store/InMemoryGraphValueStoreAdapter.d.mts +33 -0
  340. package/lib/types/graph/store/index.d.cts +10 -0
  341. package/lib/types/graph/store/index.d.mts +10 -0
  342. package/lib/types/graph/types.d.cts +197 -0
  343. package/lib/types/graph/types.d.mts +197 -0
  344. package/lib/types/graph/validation/GraphDefinitionValidator.d.cts +21 -0
  345. package/lib/types/graph/validation/GraphDefinitionValidator.d.mts +21 -0
  346. package/lib/types/graph/validation/GraphPortSchemaResolver.d.cts +39 -0
  347. package/lib/types/graph/validation/GraphPortSchemaResolver.d.mts +39 -0
  348. package/lib/types/graph/validation/GraphValueValidator.d.cts +27 -0
  349. package/lib/types/graph/validation/GraphValueValidator.d.mts +27 -0
  350. package/lib/types/graph/validation/index.d.cts +8 -0
  351. package/lib/types/graph/validation/index.d.mts +8 -0
  352. package/lib/types/index.d.cts +2 -2
  353. package/lib/types/index.d.mts +2 -2
  354. package/package.json +17 -3
@@ -0,0 +1,197 @@
1
+ /**
2
+ * @module integrations/graph/types
3
+ * @summary Graph execution engine core types.
4
+ * @description Type aliases and interfaces shared across the graph execution engine.
5
+ */
6
+ import type { GraphNodeDefinition, GraphWorkflowDefinition } from "@decaf-ts/ui-decorators/graph";
7
+ import type { GraphExecutionEventType, GraphExecutionStatus } from "./constants.d.cts";
8
+ /**
9
+ * Unique identifier for a single graph execution run.
10
+ */
11
+ export type GraphRunId = string;
12
+ /**
13
+ * Identifier for a workflow definition.
14
+ */
15
+ export type GraphWorkflowId = string;
16
+ /**
17
+ * Identifier for a node within a workflow.
18
+ */
19
+ export type GraphNodeId = string;
20
+ /**
21
+ * Name of a port on a node or workflow boundary.
22
+ */
23
+ export type GraphPortName = string;
24
+ /**
25
+ * A bag of named values exchanged between nodes and the workflow boundary.
26
+ */
27
+ export type GraphExecutionValues = Record<string, unknown>;
28
+ /**
29
+ * Options that influence a single execution of a workflow.
30
+ */
31
+ export interface GraphExecutionOptions {
32
+ runId?: GraphRunId;
33
+ parentRunId?: GraphRunId;
34
+ workflowId?: GraphWorkflowId;
35
+ path?: string[];
36
+ concurrency?: number;
37
+ failFast?: boolean;
38
+ validateInputs?: boolean;
39
+ validateOutputs?: boolean;
40
+ maxLoopIterations?: number;
41
+ maxForeachIterations?: number;
42
+ usePinnedValues?: boolean;
43
+ writeThroughCache?: boolean;
44
+ metadata?: Record<string, unknown>;
45
+ }
46
+ /**
47
+ * Serialized error payload included in execution events and results.
48
+ */
49
+ export interface GraphExecutionErrorPayload {
50
+ name: string;
51
+ message: string;
52
+ stack?: string;
53
+ code?: string;
54
+ details?: unknown;
55
+ }
56
+ /**
57
+ * A single event emitted during graph execution.
58
+ */
59
+ export interface GraphExecutionEvent {
60
+ id: string;
61
+ sequence: number;
62
+ runId: GraphRunId;
63
+ parentRunId?: GraphRunId;
64
+ workflowId: GraphWorkflowId;
65
+ type: GraphExecutionEventType;
66
+ timestamp: Date;
67
+ nodeId?: GraphNodeId;
68
+ edgeId?: string;
69
+ port?: GraphPortName;
70
+ iteration?: number;
71
+ path: string[];
72
+ status?: GraphExecutionStatus;
73
+ payload?: unknown;
74
+ error?: GraphExecutionErrorPayload;
75
+ metadata?: Record<string, unknown>;
76
+ }
77
+ /**
78
+ * Result of executing a single node.
79
+ */
80
+ export interface GraphNodeExecutionResult {
81
+ nodeId: GraphNodeId;
82
+ status: GraphExecutionStatus;
83
+ inputs: GraphExecutionValues;
84
+ outputs?: GraphExecutionValues;
85
+ error?: GraphExecutionErrorPayload;
86
+ startedAt: Date;
87
+ finishedAt?: Date;
88
+ fromCache?: boolean;
89
+ pinned?: boolean;
90
+ events: GraphExecutionEvent[];
91
+ }
92
+ /**
93
+ * Result of executing an entire workflow.
94
+ */
95
+ export interface GraphExecutionResult {
96
+ runId: GraphRunId;
97
+ parentRunId?: GraphRunId;
98
+ workflowId: GraphWorkflowId;
99
+ status: GraphExecutionStatus;
100
+ workflow: GraphWorkflowDefinition;
101
+ inputs: GraphExecutionValues;
102
+ outputs: GraphExecutionValues;
103
+ nodeResults: Record<GraphNodeId, GraphNodeExecutionResult>;
104
+ events: GraphExecutionEvent[];
105
+ startedAt: Date;
106
+ finishedAt?: Date;
107
+ metadata?: Record<string, unknown>;
108
+ }
109
+ /**
110
+ * Options used to construct a {@link GraphExecutionContext}.
111
+ */
112
+ export interface GraphExecutionContextOptions {
113
+ runId: GraphRunId;
114
+ parentRunId?: GraphRunId;
115
+ workflow: GraphWorkflowDefinition;
116
+ node: GraphNodeDefinition;
117
+ path: string[];
118
+ metadata?: Record<string, unknown>;
119
+ }
120
+ /**
121
+ * Metadata describing a loop node's behaviour.
122
+ */
123
+ export interface GraphLoopMetadata {
124
+ body: GraphWorkflowDefinition | unknown;
125
+ maxIterations?: number;
126
+ timeoutMs?: number;
127
+ condition?: GraphConditionDefinition;
128
+ concurrency?: number;
129
+ inputPort?: string;
130
+ outputPort?: string;
131
+ itemPort?: string;
132
+ resultPort?: string;
133
+ statePort?: string;
134
+ }
135
+ /**
136
+ * Definition of a condition evaluated by the loop condition evaluator.
137
+ */
138
+ export interface GraphConditionDefinition {
139
+ type: "truthy" | "falsy" | "equals" | "notEquals" | "greaterThan" | "greaterThanOrEqual" | "lessThan" | "lessThanOrEqual" | "exists" | "custom";
140
+ left?: string;
141
+ right?: unknown;
142
+ evaluator?: string;
143
+ metadata?: Record<string, unknown>;
144
+ }
145
+ /**
146
+ * Pinning metadata attached to a node via `@pinnable()`.
147
+ */
148
+ export interface GraphPinningMetadata {
149
+ enabled: boolean;
150
+ ttlMs?: number;
151
+ strategy: "manual" | "automatic" | "disabled";
152
+ includeDependencies: boolean;
153
+ metadata?: Record<string, unknown>;
154
+ }
155
+ /**
156
+ * Options for pinning a node after a completed run.
157
+ */
158
+ export interface GraphPinNodeOptions {
159
+ workflow: GraphWorkflowDefinition;
160
+ plan: unknown;
161
+ result: GraphExecutionResult;
162
+ nodeId: string;
163
+ includeDependencies?: boolean;
164
+ namespace?: string;
165
+ }
166
+ /**
167
+ * Options for unpinning a node.
168
+ */
169
+ export interface GraphUnpinNodeOptions {
170
+ workflow: GraphWorkflowDefinition;
171
+ nodeId: string;
172
+ fingerprint: string;
173
+ namespace?: string;
174
+ }
175
+ /**
176
+ * A patch applied to a graph workflow snapshot after execution.
177
+ */
178
+ export interface GraphExecutionSnapshotPatch {
179
+ runId: string;
180
+ status: GraphExecutionStatus;
181
+ nodes: Record<string, {
182
+ status: GraphExecutionStatus;
183
+ startedAt?: string;
184
+ finishedAt?: string;
185
+ error?: GraphExecutionErrorPayload;
186
+ outputs?: Record<string, unknown>;
187
+ fromCache?: boolean;
188
+ pinned?: boolean;
189
+ }>;
190
+ edges: Record<string, {
191
+ status: GraphExecutionStatus;
192
+ lastValue?: unknown;
193
+ updatedAt: string;
194
+ }>;
195
+ outputs: Record<string, unknown>;
196
+ events: GraphExecutionEvent[];
197
+ }
@@ -0,0 +1,197 @@
1
+ /**
2
+ * @module integrations/graph/types
3
+ * @summary Graph execution engine core types.
4
+ * @description Type aliases and interfaces shared across the graph execution engine.
5
+ */
6
+ import type { GraphNodeDefinition, GraphWorkflowDefinition } from "@decaf-ts/ui-decorators/graph";
7
+ import type { GraphExecutionEventType, GraphExecutionStatus } from "./constants.d.mts";
8
+ /**
9
+ * Unique identifier for a single graph execution run.
10
+ */
11
+ export type GraphRunId = string;
12
+ /**
13
+ * Identifier for a workflow definition.
14
+ */
15
+ export type GraphWorkflowId = string;
16
+ /**
17
+ * Identifier for a node within a workflow.
18
+ */
19
+ export type GraphNodeId = string;
20
+ /**
21
+ * Name of a port on a node or workflow boundary.
22
+ */
23
+ export type GraphPortName = string;
24
+ /**
25
+ * A bag of named values exchanged between nodes and the workflow boundary.
26
+ */
27
+ export type GraphExecutionValues = Record<string, unknown>;
28
+ /**
29
+ * Options that influence a single execution of a workflow.
30
+ */
31
+ export interface GraphExecutionOptions {
32
+ runId?: GraphRunId;
33
+ parentRunId?: GraphRunId;
34
+ workflowId?: GraphWorkflowId;
35
+ path?: string[];
36
+ concurrency?: number;
37
+ failFast?: boolean;
38
+ validateInputs?: boolean;
39
+ validateOutputs?: boolean;
40
+ maxLoopIterations?: number;
41
+ maxForeachIterations?: number;
42
+ usePinnedValues?: boolean;
43
+ writeThroughCache?: boolean;
44
+ metadata?: Record<string, unknown>;
45
+ }
46
+ /**
47
+ * Serialized error payload included in execution events and results.
48
+ */
49
+ export interface GraphExecutionErrorPayload {
50
+ name: string;
51
+ message: string;
52
+ stack?: string;
53
+ code?: string;
54
+ details?: unknown;
55
+ }
56
+ /**
57
+ * A single event emitted during graph execution.
58
+ */
59
+ export interface GraphExecutionEvent {
60
+ id: string;
61
+ sequence: number;
62
+ runId: GraphRunId;
63
+ parentRunId?: GraphRunId;
64
+ workflowId: GraphWorkflowId;
65
+ type: GraphExecutionEventType;
66
+ timestamp: Date;
67
+ nodeId?: GraphNodeId;
68
+ edgeId?: string;
69
+ port?: GraphPortName;
70
+ iteration?: number;
71
+ path: string[];
72
+ status?: GraphExecutionStatus;
73
+ payload?: unknown;
74
+ error?: GraphExecutionErrorPayload;
75
+ metadata?: Record<string, unknown>;
76
+ }
77
+ /**
78
+ * Result of executing a single node.
79
+ */
80
+ export interface GraphNodeExecutionResult {
81
+ nodeId: GraphNodeId;
82
+ status: GraphExecutionStatus;
83
+ inputs: GraphExecutionValues;
84
+ outputs?: GraphExecutionValues;
85
+ error?: GraphExecutionErrorPayload;
86
+ startedAt: Date;
87
+ finishedAt?: Date;
88
+ fromCache?: boolean;
89
+ pinned?: boolean;
90
+ events: GraphExecutionEvent[];
91
+ }
92
+ /**
93
+ * Result of executing an entire workflow.
94
+ */
95
+ export interface GraphExecutionResult {
96
+ runId: GraphRunId;
97
+ parentRunId?: GraphRunId;
98
+ workflowId: GraphWorkflowId;
99
+ status: GraphExecutionStatus;
100
+ workflow: GraphWorkflowDefinition;
101
+ inputs: GraphExecutionValues;
102
+ outputs: GraphExecutionValues;
103
+ nodeResults: Record<GraphNodeId, GraphNodeExecutionResult>;
104
+ events: GraphExecutionEvent[];
105
+ startedAt: Date;
106
+ finishedAt?: Date;
107
+ metadata?: Record<string, unknown>;
108
+ }
109
+ /**
110
+ * Options used to construct a {@link GraphExecutionContext}.
111
+ */
112
+ export interface GraphExecutionContextOptions {
113
+ runId: GraphRunId;
114
+ parentRunId?: GraphRunId;
115
+ workflow: GraphWorkflowDefinition;
116
+ node: GraphNodeDefinition;
117
+ path: string[];
118
+ metadata?: Record<string, unknown>;
119
+ }
120
+ /**
121
+ * Metadata describing a loop node's behaviour.
122
+ */
123
+ export interface GraphLoopMetadata {
124
+ body: GraphWorkflowDefinition | unknown;
125
+ maxIterations?: number;
126
+ timeoutMs?: number;
127
+ condition?: GraphConditionDefinition;
128
+ concurrency?: number;
129
+ inputPort?: string;
130
+ outputPort?: string;
131
+ itemPort?: string;
132
+ resultPort?: string;
133
+ statePort?: string;
134
+ }
135
+ /**
136
+ * Definition of a condition evaluated by the loop condition evaluator.
137
+ */
138
+ export interface GraphConditionDefinition {
139
+ type: "truthy" | "falsy" | "equals" | "notEquals" | "greaterThan" | "greaterThanOrEqual" | "lessThan" | "lessThanOrEqual" | "exists" | "custom";
140
+ left?: string;
141
+ right?: unknown;
142
+ evaluator?: string;
143
+ metadata?: Record<string, unknown>;
144
+ }
145
+ /**
146
+ * Pinning metadata attached to a node via `@pinnable()`.
147
+ */
148
+ export interface GraphPinningMetadata {
149
+ enabled: boolean;
150
+ ttlMs?: number;
151
+ strategy: "manual" | "automatic" | "disabled";
152
+ includeDependencies: boolean;
153
+ metadata?: Record<string, unknown>;
154
+ }
155
+ /**
156
+ * Options for pinning a node after a completed run.
157
+ */
158
+ export interface GraphPinNodeOptions {
159
+ workflow: GraphWorkflowDefinition;
160
+ plan: unknown;
161
+ result: GraphExecutionResult;
162
+ nodeId: string;
163
+ includeDependencies?: boolean;
164
+ namespace?: string;
165
+ }
166
+ /**
167
+ * Options for unpinning a node.
168
+ */
169
+ export interface GraphUnpinNodeOptions {
170
+ workflow: GraphWorkflowDefinition;
171
+ nodeId: string;
172
+ fingerprint: string;
173
+ namespace?: string;
174
+ }
175
+ /**
176
+ * A patch applied to a graph workflow snapshot after execution.
177
+ */
178
+ export interface GraphExecutionSnapshotPatch {
179
+ runId: string;
180
+ status: GraphExecutionStatus;
181
+ nodes: Record<string, {
182
+ status: GraphExecutionStatus;
183
+ startedAt?: string;
184
+ finishedAt?: string;
185
+ error?: GraphExecutionErrorPayload;
186
+ outputs?: Record<string, unknown>;
187
+ fromCache?: boolean;
188
+ pinned?: boolean;
189
+ }>;
190
+ edges: Record<string, {
191
+ status: GraphExecutionStatus;
192
+ lastValue?: unknown;
193
+ updatedAt: string;
194
+ }>;
195
+ outputs: Record<string, unknown>;
196
+ events: GraphExecutionEvent[];
197
+ }
@@ -0,0 +1,21 @@
1
+ /**
2
+ * @module integrations/graph/validation/GraphDefinitionValidator
3
+ * @summary Validates graph workflow definitions before execution.
4
+ * @description Checks workflow structure, node IDs, relation endpoints/ports, required port sources, cycles, and loop metadata.
5
+ */
6
+ import type { GraphWorkflowDefinition } from "@decaf-ts/ui-decorators/graph";
7
+ import { GraphExecutionPlanner } from "../planning/GraphExecutionPlanner.d.cts";
8
+ /**
9
+ * Validates a {@link GraphWorkflowDefinition} before execution.
10
+ */
11
+ export declare class GraphDefinitionValidator {
12
+ private readonly planner;
13
+ constructor(planner?: GraphExecutionPlanner);
14
+ /**
15
+ * Validates the workflow definition.
16
+ *
17
+ * @throws {GraphInputError} when the workflow has no name or invalid structure.
18
+ * @throws {GraphCycleError} when the workflow contains an unsupported cycle.
19
+ */
20
+ validate(workflow: GraphWorkflowDefinition): void;
21
+ }
@@ -0,0 +1,21 @@
1
+ /**
2
+ * @module integrations/graph/validation/GraphDefinitionValidator
3
+ * @summary Validates graph workflow definitions before execution.
4
+ * @description Checks workflow structure, node IDs, relation endpoints/ports, required port sources, cycles, and loop metadata.
5
+ */
6
+ import type { GraphWorkflowDefinition } from "@decaf-ts/ui-decorators/graph";
7
+ import { GraphExecutionPlanner } from "../planning/GraphExecutionPlanner.d.mts";
8
+ /**
9
+ * Validates a {@link GraphWorkflowDefinition} before execution.
10
+ */
11
+ export declare class GraphDefinitionValidator {
12
+ private readonly planner;
13
+ constructor(planner?: GraphExecutionPlanner);
14
+ /**
15
+ * Validates the workflow definition.
16
+ *
17
+ * @throws {GraphInputError} when the workflow has no name or invalid structure.
18
+ * @throws {GraphCycleError} when the workflow contains an unsupported cycle.
19
+ */
20
+ validate(workflow: GraphWorkflowDefinition): void;
21
+ }
@@ -0,0 +1,39 @@
1
+ /**
2
+ * @module integrations/graph/validation/GraphPortSchemaResolver
3
+ * @summary Resolves graph port definitions to Zod schemas.
4
+ * @description Prefers `@decaf-ts/as-zod` for model-backed ports and falls back to primitive type mapping.
5
+ */
6
+ import type { GraphPortDefinition } from "@decaf-ts/ui-decorators/graph";
7
+ /**
8
+ * Resolves a {@link GraphPortDefinition} to a Zod schema (or a lightweight
9
+ * validation function when Zod is not available).
10
+ *
11
+ * This implementation uses primitive type mapping. When the port's `model`
12
+ * field or underlying Decaf metadata references a `Model` class, consumers
13
+ * should use `modelToZod` from `@decaf-ts/as-zod` to build the schema.
14
+ */
15
+ export declare class GraphPortSchemaResolver {
16
+ /**
17
+ * Resolves a single port to a schema descriptor.
18
+ *
19
+ * @returns A descriptor with the port name, a `validate` function, and
20
+ * optional Zod schema reference.
21
+ */
22
+ resolve(port: GraphPortDefinition): {
23
+ name: string;
24
+ required: boolean;
25
+ validate: (value: unknown) => boolean;
26
+ };
27
+ /**
28
+ * Resolves multiple ports into a map of name -> descriptor.
29
+ */
30
+ resolveAll(ports: GraphPortDefinition[]): Record<string, {
31
+ name: string;
32
+ required: boolean;
33
+ validate: (value: unknown) => boolean;
34
+ }>;
35
+ /**
36
+ * Creates a validation function based on the port's type.
37
+ */
38
+ private createValidator;
39
+ }
@@ -0,0 +1,39 @@
1
+ /**
2
+ * @module integrations/graph/validation/GraphPortSchemaResolver
3
+ * @summary Resolves graph port definitions to Zod schemas.
4
+ * @description Prefers `@decaf-ts/as-zod` for model-backed ports and falls back to primitive type mapping.
5
+ */
6
+ import type { GraphPortDefinition } from "@decaf-ts/ui-decorators/graph";
7
+ /**
8
+ * Resolves a {@link GraphPortDefinition} to a Zod schema (or a lightweight
9
+ * validation function when Zod is not available).
10
+ *
11
+ * This implementation uses primitive type mapping. When the port's `model`
12
+ * field or underlying Decaf metadata references a `Model` class, consumers
13
+ * should use `modelToZod` from `@decaf-ts/as-zod` to build the schema.
14
+ */
15
+ export declare class GraphPortSchemaResolver {
16
+ /**
17
+ * Resolves a single port to a schema descriptor.
18
+ *
19
+ * @returns A descriptor with the port name, a `validate` function, and
20
+ * optional Zod schema reference.
21
+ */
22
+ resolve(port: GraphPortDefinition): {
23
+ name: string;
24
+ required: boolean;
25
+ validate: (value: unknown) => boolean;
26
+ };
27
+ /**
28
+ * Resolves multiple ports into a map of name -> descriptor.
29
+ */
30
+ resolveAll(ports: GraphPortDefinition[]): Record<string, {
31
+ name: string;
32
+ required: boolean;
33
+ validate: (value: unknown) => boolean;
34
+ }>;
35
+ /**
36
+ * Creates a validation function based on the port's type.
37
+ */
38
+ private createValidator;
39
+ }
@@ -0,0 +1,27 @@
1
+ /**
2
+ * @module integrations/graph/validation/GraphValueValidator
3
+ * @summary Validates runtime values against graph port definitions.
4
+ * @description Validates workflow inputs/outputs and node inputs/outputs using the schema resolver.
5
+ */
6
+ import type { GraphNodeDefinition, GraphWorkflowDefinition } from "@decaf-ts/ui-decorators/graph";
7
+ import type { GraphPortSchemaResolver } from "./GraphPortSchemaResolver.d.cts";
8
+ import type { GraphExecutionValues } from "../types.d.cts";
9
+ /**
10
+ * Validates runtime values against port definitions.
11
+ */
12
+ export declare class GraphValueValidator {
13
+ private readonly resolver;
14
+ constructor(resolver: GraphPortSchemaResolver);
15
+ /** Validates workflow-level input values. */
16
+ validateWorkflowInputs(workflow: GraphWorkflowDefinition, values: GraphExecutionValues): void;
17
+ /** Validates workflow-level output values. */
18
+ validateWorkflowOutputs(workflow: GraphWorkflowDefinition, values: GraphExecutionValues): void;
19
+ /** Validates a node's input values. */
20
+ validateNodeInputs(node: GraphNodeDefinition, values: GraphExecutionValues): void;
21
+ /** Validates a node's output values. */
22
+ validateNodeOutputs(node: GraphNodeDefinition, values: GraphExecutionValues): void;
23
+ /**
24
+ * Validates values against a set of port definitions.
25
+ */
26
+ private validatePorts;
27
+ }
@@ -0,0 +1,27 @@
1
+ /**
2
+ * @module integrations/graph/validation/GraphValueValidator
3
+ * @summary Validates runtime values against graph port definitions.
4
+ * @description Validates workflow inputs/outputs and node inputs/outputs using the schema resolver.
5
+ */
6
+ import type { GraphNodeDefinition, GraphWorkflowDefinition } from "@decaf-ts/ui-decorators/graph";
7
+ import type { GraphPortSchemaResolver } from "./GraphPortSchemaResolver.d.mts";
8
+ import type { GraphExecutionValues } from "../types.d.mts";
9
+ /**
10
+ * Validates runtime values against port definitions.
11
+ */
12
+ export declare class GraphValueValidator {
13
+ private readonly resolver;
14
+ constructor(resolver: GraphPortSchemaResolver);
15
+ /** Validates workflow-level input values. */
16
+ validateWorkflowInputs(workflow: GraphWorkflowDefinition, values: GraphExecutionValues): void;
17
+ /** Validates workflow-level output values. */
18
+ validateWorkflowOutputs(workflow: GraphWorkflowDefinition, values: GraphExecutionValues): void;
19
+ /** Validates a node's input values. */
20
+ validateNodeInputs(node: GraphNodeDefinition, values: GraphExecutionValues): void;
21
+ /** Validates a node's output values. */
22
+ validateNodeOutputs(node: GraphNodeDefinition, values: GraphExecutionValues): void;
23
+ /**
24
+ * Validates values against a set of port definitions.
25
+ */
26
+ private validatePorts;
27
+ }
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @module integrations/graph/validation
3
+ * @summary Graph validation utilities.
4
+ * @description Re-exports the definition validator, port schema resolver, and value validator.
5
+ */
6
+ export * from "./GraphDefinitionValidator.d.cts";
7
+ export * from "./GraphPortSchemaResolver.d.cts";
8
+ export * from "./GraphValueValidator.d.cts";
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @module integrations/graph/validation
3
+ * @summary Graph validation utilities.
4
+ * @description Re-exports the definition validator, port schema resolver, and value validator.
5
+ */
6
+ export * from "./GraphDefinitionValidator.d.mts";
7
+ export * from "./GraphPortSchemaResolver.d.mts";
8
+ export * from "./GraphValueValidator.d.mts";
@@ -5,6 +5,6 @@
5
5
  */
6
6
  export * from "./utils.d.cts";
7
7
  export declare const VERSION: string;
8
- export declare const COMMIT = "bf16ce1";
9
- export declare const FULL_VERSION = "0.3.0-bf16ce1";
8
+ export declare const COMMIT = "538f19e";
9
+ export declare const FULL_VERSION = "0.3.1-538f19e";
10
10
  export declare const PACKAGE_NAME: string;
@@ -5,6 +5,6 @@
5
5
  */
6
6
  export * from "./utils.d.mts";
7
7
  export declare const VERSION: string;
8
- export declare const COMMIT = "bf16ce1";
9
- export declare const FULL_VERSION = "0.3.0-bf16ce1";
8
+ export declare const COMMIT = "538f19e";
9
+ export declare const FULL_VERSION = "0.3.1-538f19e";
10
10
  export declare const PACKAGE_NAME: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@decaf-ts/integrations",
3
- "version": "0.3.1",
3
+ "version": "0.3.2",
4
4
  "type": "module",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.mts",
@@ -202,6 +202,17 @@
202
202
  "default": "./lib/cjs/blob/memory/index.cjs"
203
203
  },
204
204
  "default": "./lib/esm/blob/memory/index.js"
205
+ },
206
+ "./graph": {
207
+ "import": {
208
+ "types": "./lib/types/graph/index.d.mts",
209
+ "default": "./lib/esm/graph/index.js"
210
+ },
211
+ "require": {
212
+ "types": "./lib/types/graph/index.d.cts",
213
+ "default": "./lib/cjs/graph/index.cjs"
214
+ },
215
+ "default": "./lib/esm/graph/index.js"
205
216
  }
206
217
  },
207
218
  "scripts": {
@@ -248,6 +259,7 @@
248
259
  "@decaf-ts/injectable-decorators": "latest",
249
260
  "@decaf-ts/logging": "latest",
250
261
  "@decaf-ts/transactional-decorators": "latest",
262
+ "@decaf-ts/ui-decorators": "latest",
251
263
  "axios": "^1.7.9",
252
264
  "node-fetch": "^3.3.2",
253
265
  "tslib": "^2.8.1",
@@ -257,7 +269,8 @@
257
269
  "@decaf-ts/cli": "latest",
258
270
  "@decaf-ts/for-http": "latest",
259
271
  "@decaf-ts/for-nano": "latest",
260
- "@decaf-ts/for-nest": "0.11.2-refactor.5",
272
+ "@decaf-ts/as-zod": "latest",
273
+ "@decaf-ts/for-nest": "0.11.2-refactor.7",
261
274
  "@decaf-ts/utils": "latest",
262
275
  "@nestjs/common": "^11.0.0",
263
276
  "@nestjs/core": "^11.0.0",
@@ -272,7 +285,8 @@
272
285
  },
273
286
  "peerDependencies": {
274
287
  "@decaf-ts/for-http": "latest",
275
- "@decaf-ts/for-nest": "0.11.2-refactor.5",
288
+ "@decaf-ts/as-zod": "latest",
289
+ "@decaf-ts/for-nest": "0.11.2-refactor.7",
276
290
  "jose": ">=5.0.0"
277
291
  },
278
292
  "peerDependenciesMeta": {