@x12i/graphenix-executable-format 1.0.0 → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (259) hide show
  1. package/README.md +512 -341
  2. package/dist/api.d.ts +13 -35
  3. package/dist/api.d.ts.map +1 -1
  4. package/dist/api.js +13 -98
  5. package/dist/api.js.map +1 -1
  6. package/dist/constants.d.ts +1 -11
  7. package/dist/constants.d.ts.map +1 -1
  8. package/dist/constants.js +1 -18
  9. package/dist/constants.js.map +1 -1
  10. package/dist/index.js +1 -17
  11. package/dist/index.js.map +1 -1
  12. package/dist/test/executable-format.test.js +316 -289
  13. package/dist/test/executable-format.test.js.map +1 -1
  14. package/dist/test/executable-plan-v2.test.d.ts +2 -0
  15. package/dist/test/executable-plan-v2.test.d.ts.map +1 -0
  16. package/dist/test/executable-plan-v2.test.js +342 -0
  17. package/dist/test/executable-plan-v2.test.js.map +1 -0
  18. package/dist/test/execution-trace-v2.test.d.ts +2 -0
  19. package/dist/test/execution-trace-v2.test.d.ts.map +1 -0
  20. package/dist/test/execution-trace-v2.test.js +411 -0
  21. package/dist/test/execution-trace-v2.test.js.map +1 -0
  22. package/dist/test/phase-1-format.test.d.ts +2 -0
  23. package/dist/test/phase-1-format.test.d.ts.map +1 -0
  24. package/dist/test/phase-1-format.test.js +297 -0
  25. package/dist/test/phase-1-format.test.js.map +1 -0
  26. package/package.json +69 -56
  27. package/dist/adapter/build-graph-execution-request-from-studio-execute.d.ts +0 -6
  28. package/dist/adapter/build-graph-execution-request-from-studio-execute.d.ts.map +0 -1
  29. package/dist/adapter/build-graph-execution-request-from-studio-execute.js +0 -41
  30. package/dist/adapter/build-graph-execution-request-from-studio-execute.js.map +0 -1
  31. package/dist/case-condition/allowed-paths.d.ts +0 -4
  32. package/dist/case-condition/allowed-paths.d.ts.map +0 -1
  33. package/dist/case-condition/allowed-paths.js +0 -74
  34. package/dist/case-condition/allowed-paths.js.map +0 -1
  35. package/dist/case-condition/evaluate-case-condition.d.ts +0 -4
  36. package/dist/case-condition/evaluate-case-condition.d.ts.map +0 -1
  37. package/dist/case-condition/evaluate-case-condition.js +0 -106
  38. package/dist/case-condition/evaluate-case-condition.js.map +0 -1
  39. package/dist/case-condition/select-graph-model-case.d.ts +0 -6
  40. package/dist/case-condition/select-graph-model-case.d.ts.map +0 -1
  41. package/dist/case-condition/select-graph-model-case.js +0 -40
  42. package/dist/case-condition/select-graph-model-case.js.map +0 -1
  43. package/dist/case-condition/select-node-model-case.d.ts +0 -4
  44. package/dist/case-condition/select-node-model-case.d.ts.map +0 -1
  45. package/dist/case-condition/select-node-model-case.js +0 -34
  46. package/dist/case-condition/select-node-model-case.js.map +0 -1
  47. package/dist/case-condition/validate-case-condition.d.ts +0 -5
  48. package/dist/case-condition/validate-case-condition.d.ts.map +0 -1
  49. package/dist/case-condition/validate-case-condition.js +0 -118
  50. package/dist/case-condition/validate-case-condition.js.map +0 -1
  51. package/dist/compile/build-node-execution-units.d.ts +0 -6
  52. package/dist/compile/build-node-execution-units.d.ts.map +0 -1
  53. package/dist/compile/build-node-execution-units.js +0 -77
  54. package/dist/compile/build-node-execution-units.js.map +0 -1
  55. package/dist/compile/compile-executable-plan.d.ts +0 -5
  56. package/dist/compile/compile-executable-plan.d.ts.map +0 -1
  57. package/dist/compile/compile-executable-plan.js +0 -142
  58. package/dist/compile/compile-executable-plan.js.map +0 -1
  59. package/dist/explain/explain-executable-graph-error.d.ts +0 -4
  60. package/dist/explain/explain-executable-graph-error.d.ts.map +0 -1
  61. package/dist/explain/explain-executable-graph-error.js +0 -14
  62. package/dist/explain/explain-executable-graph-error.js.map +0 -1
  63. package/dist/explain/explain-node-inheritance.d.ts +0 -3
  64. package/dist/explain/explain-node-inheritance.d.ts.map +0 -1
  65. package/dist/explain/explain-node-inheritance.js +0 -41
  66. package/dist/explain/explain-node-inheritance.js.map +0 -1
  67. package/dist/fixtures/minimal-executable-graph.d.ts +0 -4
  68. package/dist/fixtures/minimal-executable-graph.d.ts.map +0 -1
  69. package/dist/fixtures/minimal-executable-graph.js +0 -170
  70. package/dist/fixtures/minimal-executable-graph.js.map +0 -1
  71. package/dist/helpers/add-finalizer-node.d.ts +0 -5
  72. package/dist/helpers/add-finalizer-node.d.ts.map +0 -1
  73. package/dist/helpers/add-finalizer-node.js +0 -13
  74. package/dist/helpers/add-finalizer-node.js.map +0 -1
  75. package/dist/helpers/add-task-node.d.ts +0 -5
  76. package/dist/helpers/add-task-node.d.ts.map +0 -1
  77. package/dist/helpers/add-task-node.js +0 -13
  78. package/dist/helpers/add-task-node.js.map +0 -1
  79. package/dist/helpers/connect-task-to-task.d.ts +0 -10
  80. package/dist/helpers/connect-task-to-task.d.ts.map +0 -1
  81. package/dist/helpers/connect-task-to-task.js +0 -23
  82. package/dist/helpers/connect-task-to-task.js.map +0 -1
  83. package/dist/helpers/set-graph-model-config.d.ts +0 -5
  84. package/dist/helpers/set-graph-model-config.d.ts.map +0 -1
  85. package/dist/helpers/set-graph-model-config.js +0 -30
  86. package/dist/helpers/set-graph-model-config.js.map +0 -1
  87. package/dist/helpers/set-node-model-config.d.ts +0 -5
  88. package/dist/helpers/set-node-model-config.d.ts.map +0 -1
  89. package/dist/helpers/set-node-model-config.js +0 -25
  90. package/dist/helpers/set-node-model-config.js.map +0 -1
  91. package/dist/internal/hash.d.ts +0 -4
  92. package/dist/internal/hash.d.ts.map +0 -1
  93. package/dist/internal/hash.js +0 -26
  94. package/dist/internal/hash.js.map +0 -1
  95. package/dist/internal/utils.d.ts +0 -16
  96. package/dist/internal/utils.d.ts.map +0 -1
  97. package/dist/internal/utils.js +0 -80
  98. package/dist/internal/utils.js.map +0 -1
  99. package/dist/migration/migrate-legacy-graph-model-object.d.ts +0 -4
  100. package/dist/migration/migrate-legacy-graph-model-object.d.ts.map +0 -1
  101. package/dist/migration/migrate-legacy-graph-model-object.js +0 -217
  102. package/dist/migration/migrate-legacy-graph-model-object.js.map +0 -1
  103. package/dist/normalize/normalize-executable-graph.d.ts +0 -3
  104. package/dist/normalize/normalize-executable-graph.d.ts.map +0 -1
  105. package/dist/normalize/normalize-executable-graph.js +0 -34
  106. package/dist/normalize/normalize-executable-graph.js.map +0 -1
  107. package/dist/normalize/normalize-model-config.d.ts +0 -4
  108. package/dist/normalize/normalize-model-config.d.ts.map +0 -1
  109. package/dist/normalize/normalize-model-config.js +0 -64
  110. package/dist/normalize/normalize-model-config.js.map +0 -1
  111. package/dist/profile-choice/known-profile-choices.d.ts +0 -10
  112. package/dist/profile-choice/known-profile-choices.d.ts.map +0 -1
  113. package/dist/profile-choice/known-profile-choices.js +0 -19
  114. package/dist/profile-choice/known-profile-choices.js.map +0 -1
  115. package/dist/profile-choice/validate-profile-choice.d.ts +0 -8
  116. package/dist/profile-choice/validate-profile-choice.d.ts.map +0 -1
  117. package/dist/profile-choice/validate-profile-choice.js +0 -55
  118. package/dist/profile-choice/validate-profile-choice.js.map +0 -1
  119. package/dist/resolution/build-deterministic-case-context.d.ts +0 -9
  120. package/dist/resolution/build-deterministic-case-context.d.ts.map +0 -1
  121. package/dist/resolution/build-deterministic-case-context.js +0 -26
  122. package/dist/resolution/build-deterministic-case-context.js.map +0 -1
  123. package/dist/resolution/resolve-graph-model-config.d.ts +0 -12
  124. package/dist/resolution/resolve-graph-model-config.d.ts.map +0 -1
  125. package/dist/resolution/resolve-graph-model-config.js +0 -28
  126. package/dist/resolution/resolve-graph-model-config.js.map +0 -1
  127. package/dist/resolution/resolve-node-ai-plan.d.ts +0 -7
  128. package/dist/resolution/resolve-node-ai-plan.d.ts.map +0 -1
  129. package/dist/resolution/resolve-node-ai-plan.js +0 -64
  130. package/dist/resolution/resolve-node-ai-plan.js.map +0 -1
  131. package/dist/resolution/resolve-node-model-config.d.ts +0 -15
  132. package/dist/resolution/resolve-node-model-config.d.ts.map +0 -1
  133. package/dist/resolution/resolve-node-model-config.js +0 -37
  134. package/dist/resolution/resolve-node-model-config.js.map +0 -1
  135. package/dist/resolution/resolve-node-model-slot.d.ts +0 -7
  136. package/dist/resolution/resolve-node-model-slot.d.ts.map +0 -1
  137. package/dist/resolution/resolve-node-model-slot.js +0 -65
  138. package/dist/resolution/resolve-node-model-slot.js.map +0 -1
  139. package/dist/trace/append-execution-event.d.ts +0 -5
  140. package/dist/trace/append-execution-event.d.ts.map +0 -1
  141. package/dist/trace/append-execution-event.js +0 -9
  142. package/dist/trace/append-execution-event.js.map +0 -1
  143. package/dist/trace/create-execution-trace.d.ts +0 -5
  144. package/dist/trace/create-execution-trace.d.ts.map +0 -1
  145. package/dist/trace/create-execution-trace.js +0 -56
  146. package/dist/trace/create-execution-trace.js.map +0 -1
  147. package/dist/types/case-condition.d.ts +0 -50
  148. package/dist/types/case-condition.d.ts.map +0 -1
  149. package/dist/types/case-condition.js +0 -3
  150. package/dist/types/case-condition.js.map +0 -1
  151. package/dist/types/errors.d.ts +0 -16
  152. package/dist/types/errors.d.ts.map +0 -1
  153. package/dist/types/errors.js +0 -3
  154. package/dist/types/errors.js.map +0 -1
  155. package/dist/types/executable-graph.d.ts +0 -19
  156. package/dist/types/executable-graph.d.ts.map +0 -1
  157. package/dist/types/executable-graph.js +0 -3
  158. package/dist/types/executable-graph.js.map +0 -1
  159. package/dist/types/executable-nodes.d.ts +0 -54
  160. package/dist/types/executable-nodes.d.ts.map +0 -1
  161. package/dist/types/executable-nodes.js +0 -3
  162. package/dist/types/executable-nodes.js.map +0 -1
  163. package/dist/types/executable-plan.d.ts +0 -78
  164. package/dist/types/executable-plan.d.ts.map +0 -1
  165. package/dist/types/executable-plan.js +0 -5
  166. package/dist/types/executable-plan.js.map +0 -1
  167. package/dist/types/executable-profile.d.ts +0 -18
  168. package/dist/types/executable-profile.d.ts.map +0 -1
  169. package/dist/types/executable-profile.js +0 -3
  170. package/dist/types/executable-profile.js.map +0 -1
  171. package/dist/types/execution-trace.d.ts +0 -278
  172. package/dist/types/execution-trace.d.ts.map +0 -1
  173. package/dist/types/execution-trace.js +0 -5
  174. package/dist/types/execution-trace.js.map +0 -1
  175. package/dist/types/execution-unit.d.ts +0 -19
  176. package/dist/types/execution-unit.d.ts.map +0 -1
  177. package/dist/types/execution-unit.js +0 -3
  178. package/dist/types/execution-unit.js.map +0 -1
  179. package/dist/types/index.d.ts +0 -16
  180. package/dist/types/index.d.ts.map +0 -1
  181. package/dist/types/index.js +0 -8
  182. package/dist/types/index.js.map +0 -1
  183. package/dist/types/legacy.d.ts +0 -21
  184. package/dist/types/legacy.d.ts.map +0 -1
  185. package/dist/types/legacy.js +0 -3
  186. package/dist/types/legacy.js.map +0 -1
  187. package/dist/types/model-config.d.ts +0 -80
  188. package/dist/types/model-config.d.ts.map +0 -1
  189. package/dist/types/model-config.js +0 -3
  190. package/dist/types/model-config.js.map +0 -1
  191. package/dist/types/resolution.d.ts +0 -55
  192. package/dist/types/resolution.d.ts.map +0 -1
  193. package/dist/types/resolution.js +0 -3
  194. package/dist/types/resolution.js.map +0 -1
  195. package/dist/types/runtime.d.ts +0 -19
  196. package/dist/types/runtime.d.ts.map +0 -1
  197. package/dist/types/runtime.js +0 -3
  198. package/dist/types/runtime.js.map +0 -1
  199. package/dist/types/studio-execute.d.ts +0 -25
  200. package/dist/types/studio-execute.d.ts.map +0 -1
  201. package/dist/types/studio-execute.js +0 -3
  202. package/dist/types/studio-execute.js.map +0 -1
  203. package/dist/validators/assert-executable-graph.d.ts +0 -3
  204. package/dist/validators/assert-executable-graph.d.ts.map +0 -1
  205. package/dist/validators/assert-executable-graph.js +0 -14
  206. package/dist/validators/assert-executable-graph.js.map +0 -1
  207. package/dist/validators/assert-normalized-executable-graph.d.ts +0 -3
  208. package/dist/validators/assert-normalized-executable-graph.d.ts.map +0 -1
  209. package/dist/validators/assert-normalized-executable-graph.js +0 -14
  210. package/dist/validators/assert-normalized-executable-graph.js.map +0 -1
  211. package/dist/validators/validate-authoring-executable-graph.d.ts +0 -3
  212. package/dist/validators/validate-authoring-executable-graph.d.ts.map +0 -1
  213. package/dist/validators/validate-authoring-executable-graph.js +0 -134
  214. package/dist/validators/validate-authoring-executable-graph.js.map +0 -1
  215. package/dist/validators/validate-authoring-graph.d.ts +0 -2
  216. package/dist/validators/validate-authoring-graph.d.ts.map +0 -1
  217. package/dist/validators/validate-authoring-graph.js +0 -6
  218. package/dist/validators/validate-authoring-graph.js.map +0 -1
  219. package/dist/validators/validate-executable-graph.d.ts +0 -4
  220. package/dist/validators/validate-executable-graph.d.ts.map +0 -1
  221. package/dist/validators/validate-executable-graph.js +0 -9
  222. package/dist/validators/validate-executable-graph.js.map +0 -1
  223. package/dist/validators/validate-executable-plan.d.ts +0 -3
  224. package/dist/validators/validate-executable-plan.d.ts.map +0 -1
  225. package/dist/validators/validate-executable-plan.js +0 -211
  226. package/dist/validators/validate-executable-plan.js.map +0 -1
  227. package/dist/validators/validate-execution-trace.d.ts +0 -4
  228. package/dist/validators/validate-execution-trace.d.ts.map +0 -1
  229. package/dist/validators/validate-execution-trace.js +0 -158
  230. package/dist/validators/validate-execution-trace.js.map +0 -1
  231. package/dist/validators/validate-finalizer-node.d.ts +0 -4
  232. package/dist/validators/validate-finalizer-node.d.ts.map +0 -1
  233. package/dist/validators/validate-finalizer-node.js +0 -36
  234. package/dist/validators/validate-finalizer-node.js.map +0 -1
  235. package/dist/validators/validate-model-config.d.ts +0 -7
  236. package/dist/validators/validate-model-config.d.ts.map +0 -1
  237. package/dist/validators/validate-model-config.js +0 -197
  238. package/dist/validators/validate-model-config.js.map +0 -1
  239. package/dist/validators/validate-normalized-executable-graph.d.ts +0 -3
  240. package/dist/validators/validate-normalized-executable-graph.d.ts.map +0 -1
  241. package/dist/validators/validate-normalized-executable-graph.js +0 -26
  242. package/dist/validators/validate-normalized-executable-graph.js.map +0 -1
  243. package/dist/validators/validate-runtime-object.d.ts +0 -10
  244. package/dist/validators/validate-runtime-object.d.ts.map +0 -1
  245. package/dist/validators/validate-runtime-object.js +0 -63
  246. package/dist/validators/validate-runtime-object.js.map +0 -1
  247. package/dist/validators/validate-studio-execute-request.d.ts +0 -5
  248. package/dist/validators/validate-studio-execute-request.d.ts.map +0 -1
  249. package/dist/validators/validate-studio-execute-request.js +0 -37
  250. package/dist/validators/validate-studio-execute-request.js.map +0 -1
  251. package/dist/validators/validate-task-actions.d.ts +0 -4
  252. package/dist/validators/validate-task-actions.d.ts.map +0 -1
  253. package/dist/validators/validate-task-actions.js +0 -93
  254. package/dist/validators/validate-task-actions.js.map +0 -1
  255. package/dist/validators/validate-task-node.d.ts +0 -6
  256. package/dist/validators/validate-task-node.d.ts.map +0 -1
  257. package/dist/validators/validate-task-node.js +0 -43
  258. package/dist/validators/validate-task-node.js.map +0 -1
  259. package/schema/graphenix-executable-format-1.0.0.schema.json +0 -40
@@ -1 +0,0 @@
1
- {"version":3,"file":"validate-studio-execute-request.js","sourceRoot":"","sources":["../../src/validators/validate-studio-execute-request.ts"],"names":[],"mappings":";;AAQA,oEA+DC;AAED,kEAIC;AAxED,mDAA2D;AAC3D,iFAAyE;AAEzE,SAAgB,4BAA4B,CAC1C,OAAgB;IAEhB,MAAM,MAAM,GAAqC,EAAE,CAAC;IAEpD,IAAI,CAAC,IAAA,mBAAQ,EAAC,OAAO,CAAC,EAAE,CAAC;QACvB,OAAO;YACL,KAAK,EAAE,KAAK;YACZ,MAAM,EAAE;gBACN,IAAA,oBAAS,EACP,gCAAgC,EAChC,2CAA2C,EAC3C,EAAE,CACH;aACF;SACF,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC7B,MAAM,CAAC,IAAI,CACT,IAAA,oBAAS,EACP,gCAAgC,EAChC,4CAA4C,EAC5C,OAAO,CACR,CACF,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpE,MAAM,CAAC,IAAI,CACT,IAAA,oBAAS,EACP,gCAAgC,EAChC,2CAA2C,EAC3C,QAAQ,CACT,CACF,CAAC;IACJ,CAAC;IAED,IAAI,mBAAmB,IAAI,OAAO,EAAE,CAAC;QACnC,MAAM,CAAC,IAAI,CACT,IAAA,oBAAS,EACP,sCAAsC,EACtC,+FAA+F,EAC/F,oBAAoB,CACrB,CACF,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAChC,MAAM,CAAC,IAAI,CACT,IAAA,oBAAS,EACP,gCAAgC,EAChC,2CAA2C,EAC3C,QAAQ,CACT,CACF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAClC,CAAC;IAED,MAAM,WAAW,GAAG,IAAA,sDAAuB,EAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC3D,MAAM,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAEnC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;AAChD,CAAC;AAED,SAAgB,2BAA2B,CACzC,KAAc;IAEd,OAAO,4BAA4B,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC;AACnD,CAAC"}
@@ -1,4 +0,0 @@
1
- import type { ExecutableGraphValidationError } from "../types/errors.js";
2
- export declare function validateTaskActionList(nodeId: string, actions: unknown, listPath: string, allowActionLevelModelOverride: boolean): ExecutableGraphValidationError[];
3
- export declare function validateTaskNodeActions(nodeId: string, taskConfiguration: unknown, allowActionLevelModelOverride: boolean): ExecutableGraphValidationError[];
4
- //# sourceMappingURL=validate-task-actions.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validate-task-actions.d.ts","sourceRoot":"","sources":["../../src/validators/validate-task-actions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,oBAAoB,CAAC;AA2BzE,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,MAAM,EAChB,6BAA6B,EAAE,OAAO,GACrC,8BAA8B,EAAE,CA4GlC;AAED,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,MAAM,EACd,iBAAiB,EAAE,OAAO,EAC1B,6BAA6B,EAAE,OAAO,GACrC,8BAA8B,EAAE,CAqDlC"}
@@ -1,93 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.validateTaskActionList = validateTaskActionList;
4
- exports.validateTaskNodeActions = validateTaskNodeActions;
5
- const utils_js_1 = require("../internal/utils.js");
6
- const validate_profile_choice_js_1 = require("../profile-choice/validate-profile-choice.js");
7
- function validateActionConfigObject(value, path, label) {
8
- if (value === undefined) {
9
- return [];
10
- }
11
- if (!(0, utils_js_1.isRecord)(value)) {
12
- return [
13
- (0, utils_js_1.execError)("TASK_ACTION_INVALID", `${label} must be a JSON object.`, path)
14
- ];
15
- }
16
- return [];
17
- }
18
- function validateTaskActionList(nodeId, actions, listPath, allowActionLevelModelOverride) {
19
- const errors = [];
20
- if (actions === undefined) {
21
- return errors;
22
- }
23
- if (!Array.isArray(actions)) {
24
- errors.push((0, utils_js_1.execError)("TASK_ACTION_INVALID", `${listPath} must be an array.`, listPath));
25
- return errors;
26
- }
27
- const seenIds = new Set();
28
- for (const [index, action] of actions.entries()) {
29
- const path = `${listPath}/${index}`;
30
- if (!(0, utils_js_1.isRecord)(action)) {
31
- errors.push((0, utils_js_1.execError)("TASK_ACTION_INVALID", `Action ${index} on node ${nodeId} must be an object.`, path));
32
- continue;
33
- }
34
- const actionConfig = action;
35
- if (typeof actionConfig.id !== "string" || actionConfig.id.length === 0) {
36
- errors.push((0, utils_js_1.execError)("TASK_ACTION_INVALID", `Action ${index} on node ${nodeId} must define id.`, `${path}/id`));
37
- }
38
- else if (seenIds.has(actionConfig.id)) {
39
- errors.push((0, utils_js_1.execError)("TASK_ACTION_ID_DUPLICATE", `Duplicate action id "${actionConfig.id}" on node ${nodeId}.`, `${path}/id`));
40
- }
41
- else {
42
- seenIds.add(actionConfig.id);
43
- }
44
- if (typeof actionConfig.actionKey !== "string" ||
45
- actionConfig.actionKey.length === 0) {
46
- errors.push((0, utils_js_1.execError)("TASK_ACTION_MISSING_ACTION_KEY", `Action ${actionConfig.id ?? index} on node ${nodeId} must define actionKey.`, `${path}/actionKey`));
47
- }
48
- errors.push(...validateActionConfigObject(actionConfig.config, `${path}/config`, "config"));
49
- errors.push(...validateActionConfigObject(actionConfig.inputsConfig, `${path}/inputsConfig`, "inputsConfig"));
50
- errors.push(...validateActionConfigObject(actionConfig.outputMapping, `${path}/outputMapping`, "outputMapping"));
51
- if (actionConfig.modelSelection !== undefined) {
52
- if (!allowActionLevelModelOverride) {
53
- errors.push((0, utils_js_1.execError)("TASK_ACTION_MODEL_OVERRIDE_FORBIDDEN", `Action ${actionConfig.id ?? index} on node ${nodeId} defines modelSelection but graph policy allowActionLevelModelOverride is false.`, `${path}/modelSelection`));
54
- }
55
- else {
56
- errors.push(...(0, validate_profile_choice_js_1.validateAiModelSelection)(actionConfig.modelSelection, `${path}/modelSelection`));
57
- }
58
- }
59
- }
60
- return errors;
61
- }
62
- function validateTaskNodeActions(nodeId, taskConfiguration, allowActionLevelModelOverride) {
63
- if (!(0, utils_js_1.isRecord)(taskConfiguration)) {
64
- return [];
65
- }
66
- const preActions = taskConfiguration.preActions;
67
- const postActions = taskConfiguration.postActions;
68
- const basePath = `/graph/nodes/${nodeId}/parameters/taskConfiguration`;
69
- const errors = [];
70
- errors.push(...validateTaskActionList(nodeId, preActions, `${basePath}/preActions`, allowActionLevelModelOverride));
71
- errors.push(...validateTaskActionList(nodeId, postActions, `${basePath}/postActions`, allowActionLevelModelOverride));
72
- if (Array.isArray(preActions) && Array.isArray(postActions)) {
73
- const ids = new Set();
74
- for (const [listName, list] of [
75
- ["preActions", preActions],
76
- ["postActions", postActions]
77
- ]) {
78
- for (const [index, action] of list.entries()) {
79
- if (!(0, utils_js_1.isRecord)(action) || typeof action.id !== "string") {
80
- continue;
81
- }
82
- if (ids.has(action.id)) {
83
- errors.push((0, utils_js_1.execError)("TASK_ACTION_ID_DUPLICATE", `Duplicate action id "${action.id}" on node ${nodeId}.`, `${basePath}/${listName}/${index}/id`));
84
- }
85
- else {
86
- ids.add(action.id);
87
- }
88
- }
89
- }
90
- }
91
- return errors;
92
- }
93
- //# sourceMappingURL=validate-task-actions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validate-task-actions.js","sourceRoot":"","sources":["../../src/validators/validate-task-actions.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- import type { Node } from "@x12i/graphenix-core";
2
- import type { ExecutableGraphValidationError } from "../types/errors.js";
3
- import type { GraphDocument } from "@x12i/graphenix-core";
4
- export declare function validateTaskNode(node: Node, doc?: GraphDocument): ExecutableGraphValidationError[];
5
- export declare function isTaskNodeParameters(value: unknown): boolean;
6
- //# sourceMappingURL=validate-task-node.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validate-task-node.d.ts","sourceRoot":"","sources":["../../src/validators/validate-task-node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,oBAAoB,CAAC;AAazE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,IAAI,EACV,GAAG,CAAC,EAAE,aAAa,GAClB,8BAA8B,EAAE,CAyElC;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAM5D"}
@@ -1,43 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.validateTaskNode = validateTaskNode;
4
- exports.isTaskNodeParameters = isTaskNodeParameters;
5
- const constants_js_1 = require("../constants.js");
6
- const utils_js_1 = require("../internal/utils.js");
7
- const validate_model_config_js_1 = require("./validate-model-config.js");
8
- const validate_task_actions_js_1 = require("./validate-task-actions.js");
9
- function validateTaskNode(node, doc) {
10
- const errors = [];
11
- const basePath = `/graph/nodes/${node.id}`;
12
- if (node.kind !== constants_js_1.TASK_NODE_KIND) {
13
- errors.push((0, utils_js_1.execError)("TASK_NODE_INVALID", `Node ${node.id} must use kind ${constants_js_1.TASK_NODE_KIND}.`, `${basePath}/kind`));
14
- return errors;
15
- }
16
- const params = (0, utils_js_1.getTaskNodeConfig)(node);
17
- if (!params) {
18
- errors.push((0, utils_js_1.execError)("TASK_NODE_MISSING_PARAMETERS", `Task node ${node.id} must define executable task parameters.`, `${basePath}/parameters`));
19
- return errors;
20
- }
21
- if (params.profile !== constants_js_1.EXECUTABLE_NODE_PROFILE) {
22
- errors.push((0, utils_js_1.execError)("TASK_NODE_INVALID", `Task node ${node.id} parameters.profile must be ${constants_js_1.EXECUTABLE_NODE_PROFILE}.`, `${basePath}/parameters/profile`));
23
- }
24
- if (params.nodeType !== "task") {
25
- errors.push((0, utils_js_1.execError)("TASK_NODE_INVALID", `Task node ${node.id} parameters.nodeType must be task.`, `${basePath}/parameters/nodeType`));
26
- }
27
- if (typeof params.skillKey !== "string" || params.skillKey.length === 0) {
28
- errors.push((0, utils_js_1.execError)("TASK_NODE_MISSING_SKILL_KEY", `Task node ${node.id} must define skillKey.`, `${basePath}/parameters/skillKey`));
29
- }
30
- const nodeModelConfig = params.taskConfiguration?.modelConfig;
31
- const inherit = nodeModelConfig?.inherit !== false;
32
- errors.push(...(0, validate_model_config_js_1.validateNodeModelConfig)(node.id, nodeModelConfig, inherit));
33
- const allowActionLevelModelOverride = (doc ? (0, utils_js_1.getExecutableProfile)(doc)?.policies?.allowActionLevelModelOverride : undefined) ??
34
- false;
35
- errors.push(...(0, validate_task_actions_js_1.validateTaskNodeActions)(node.id, params.taskConfiguration, allowActionLevelModelOverride));
36
- return errors;
37
- }
38
- function isTaskNodeParameters(value) {
39
- return ((0, utils_js_1.isRecord)(value) &&
40
- value.profile === constants_js_1.EXECUTABLE_NODE_PROFILE &&
41
- value.nodeType === "task");
42
- }
43
- //# sourceMappingURL=validate-task-node.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validate-task-node.js","sourceRoot":"","sources":["../../src/validators/validate-task-node.ts"],"names":[],"mappings":";;AAgBA,4CA4EC;AAED,oDAMC;AAlGD,kDAGyB;AACzB,mDAK8B;AAC9B,yEAAqE;AACrE,yEAAqE;AAGrE,SAAgB,gBAAgB,CAC9B,IAAU,EACV,GAAmB;IAEnB,MAAM,MAAM,GAAqC,EAAE,CAAC;IACpD,MAAM,QAAQ,GAAG,gBAAgB,IAAI,CAAC,EAAE,EAAE,CAAC;IAE3C,IAAI,IAAI,CAAC,IAAI,KAAK,6BAAc,EAAE,CAAC;QACjC,MAAM,CAAC,IAAI,CACT,IAAA,oBAAS,EACP,mBAAmB,EACnB,QAAQ,IAAI,CAAC,EAAE,kBAAkB,6BAAc,GAAG,EAClD,GAAG,QAAQ,OAAO,CACnB,CACF,CAAC;QACF,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,MAAM,GAAG,IAAA,4BAAiB,EAAC,IAAI,CAAC,CAAC;IACvC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,CAAC,IAAI,CACT,IAAA,oBAAS,EACP,8BAA8B,EAC9B,aAAa,IAAI,CAAC,EAAE,0CAA0C,EAC9D,GAAG,QAAQ,aAAa,CACzB,CACF,CAAC;QACF,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,MAAM,CAAC,OAAO,KAAK,sCAAuB,EAAE,CAAC;QAC/C,MAAM,CAAC,IAAI,CACT,IAAA,oBAAS,EACP,mBAAmB,EACnB,aAAa,IAAI,CAAC,EAAE,+BAA+B,sCAAuB,GAAG,EAC7E,GAAG,QAAQ,qBAAqB,CACjC,CACF,CAAC;IACJ,CAAC;IAED,IAAI,MAAM,CAAC,QAAQ,KAAK,MAAM,EAAE,CAAC;QAC/B,MAAM,CAAC,IAAI,CACT,IAAA,oBAAS,EACP,mBAAmB,EACnB,aAAa,IAAI,CAAC,EAAE,oCAAoC,EACxD,GAAG,QAAQ,sBAAsB,CAClC,CACF,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxE,MAAM,CAAC,IAAI,CACT,IAAA,oBAAS,EACP,6BAA6B,EAC7B,aAAa,IAAI,CAAC,EAAE,wBAAwB,EAC5C,GAAG,QAAQ,sBAAsB,CAClC,CACF,CAAC;IACJ,CAAC;IAED,MAAM,eAAe,GAAG,MAAM,CAAC,iBAAiB,EAAE,WAAW,CAAC;IAC9D,MAAM,OAAO,GAAG,eAAe,EAAE,OAAO,KAAK,KAAK,CAAC;IACnD,MAAM,CAAC,IAAI,CAAC,GAAG,IAAA,kDAAuB,EAAC,IAAI,CAAC,EAAE,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC;IAE3E,MAAM,6BAA6B,GACjC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAA,+BAAoB,EAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,6BAA6B,CAAC,CAAC,CAAC,SAAS,CAAC;QACtF,KAAK,CAAC;IACR,MAAM,CAAC,IAAI,CACT,GAAG,IAAA,kDAAuB,EACxB,IAAI,CAAC,EAAE,EACP,MAAM,CAAC,iBAAiB,EACxB,6BAA6B,CAC9B,CACF,CAAC;IAEF,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAgB,oBAAoB,CAAC,KAAc;IACjD,OAAO,CACL,IAAA,mBAAQ,EAAC,KAAK,CAAC;QACf,KAAK,CAAC,OAAO,KAAK,sCAAuB;QACzC,KAAK,CAAC,QAAQ,KAAK,MAAM,CAC1B,CAAC;AACJ,CAAC"}
@@ -1,40 +0,0 @@
1
- {
2
- "$schema": "http://json-schema.org/draft-07/schema#",
3
- "$id": "https://graphenix.dev/schema/graphenix-executable-format-1.0.0.json",
4
- "title": "Graphenix Executable Profile 1.0.0",
5
- "description": "JSON Schema fragment for x12i.executable/v1 profile under graph.metadata.extensions.",
6
- "type": "object",
7
- "required": ["profileVersion", "modelConfig"],
8
- "additionalProperties": true,
9
- "properties": {
10
- "profileVersion": {
11
- "const": "x12i.executable/v1"
12
- },
13
- "modelConfig": {
14
- "type": "object",
15
- "required": ["version", "cases"],
16
- "properties": {
17
- "version": { "const": "graph-model-config/v1" },
18
- "cases": {
19
- "type": "array",
20
- "minItems": 1,
21
- "items": {
22
- "type": "object",
23
- "required": ["id", "modelConfig"],
24
- "properties": {
25
- "id": { "type": "string" },
26
- "modelConfig": {
27
- "type": "object",
28
- "required": [
29
- "preActionModel",
30
- "skillModel",
31
- "postActionModel"
32
- ]
33
- }
34
- }
35
- }
36
- }
37
- }
38
- }
39
- }
40
- }