@copado/agentia-cli 1.1.0 → 1.3.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 (394) hide show
  1. package/CHANGELOG.md +69 -0
  2. package/README.md +3290 -2095
  3. package/dist/commands/ai/agent/ask.js +4 -4
  4. package/dist/commands/ai/agent/chat.js +4 -4
  5. package/dist/commands/auth/get.js +21 -1
  6. package/dist/commands/auth/set.js +13 -0
  7. package/dist/commands/auth/unset.js +37 -0
  8. package/dist/commands/cicd/cloud/commit.js +2 -2
  9. package/dist/commands/cicd/cloud/promote.js +19 -5
  10. package/dist/commands/cicd/credential/auth/status.js +38 -0
  11. package/dist/commands/cicd/credential/auth/web/login.js +54 -0
  12. package/dist/commands/cicd/credential/create.js +2 -2
  13. package/dist/commands/cicd/credential/list.js +15 -19
  14. package/dist/commands/cicd/credential/open.js +30 -0
  15. package/dist/commands/cicd/credential/update.js +11 -14
  16. package/dist/commands/cicd/data/commit/create.js +2 -2
  17. package/dist/commands/cicd/data/commit/list.js +2 -2
  18. package/dist/commands/cicd/data/dataset-file/content.js +2 -2
  19. package/dist/commands/cicd/data/dataset-file/list.js +2 -2
  20. package/dist/commands/cicd/data/filter/add.js +2 -2
  21. package/dist/commands/cicd/data/filter/delete.js +2 -2
  22. package/dist/commands/cicd/data/filter/list.js +2 -2
  23. package/dist/commands/cicd/data/filter/update.js +2 -2
  24. package/dist/commands/cicd/data/formula/create.js +2 -2
  25. package/dist/commands/cicd/data/formula/list.js +2 -2
  26. package/dist/commands/cicd/data/formula/update.js +2 -2
  27. package/dist/commands/cicd/data/records/match.js +2 -2
  28. package/dist/commands/cicd/data/records/search.js +2 -2
  29. package/dist/commands/cicd/data/sobject/fields.js +2 -2
  30. package/dist/commands/cicd/data/sobject/relationships.js +2 -2
  31. package/dist/commands/cicd/data/sync/apply.js +2 -2
  32. package/dist/commands/cicd/data/sync/preview-updates.js +2 -2
  33. package/dist/commands/cicd/data/template/convert-old.js +2 -2
  34. package/dist/commands/cicd/data/template/create.js +2 -2
  35. package/dist/commands/cicd/data/template/delete.js +2 -2
  36. package/dist/commands/cicd/data/template/get-detail.js +2 -2
  37. package/dist/commands/cicd/data/template/get.js +2 -2
  38. package/dist/commands/cicd/data/template/list.js +2 -2
  39. package/dist/commands/cicd/data/template/open.js +2 -2
  40. package/dist/commands/cicd/data/template/save-detail.js +2 -2
  41. package/dist/commands/cicd/environment/auth/status.js +36 -15
  42. package/dist/commands/cicd/environment/auth/web/login.js +22 -6
  43. package/dist/commands/cicd/environment/create.js +2 -2
  44. package/dist/commands/cicd/environment/get.js +2 -2
  45. package/dist/commands/cicd/environment/list.js +2 -2
  46. package/dist/commands/cicd/environment/open.js +8 -24
  47. package/dist/commands/cicd/environment/update.js +2 -2
  48. package/dist/commands/cicd/extension/create.js +2 -2
  49. package/dist/commands/cicd/extension/install.js +2 -2
  50. package/dist/commands/cicd/extension/package.js +2 -2
  51. package/dist/commands/cicd/extension/publish.js +2 -2
  52. package/dist/commands/cicd/extension/uninstall.js +2 -2
  53. package/dist/commands/cicd/extension/validate.js +2 -2
  54. package/dist/commands/cicd/extension-configuration/get.js +24 -0
  55. package/dist/commands/cicd/extension-configuration/list.js +49 -0
  56. package/dist/commands/cicd/extension-configuration/open.js +38 -0
  57. package/dist/commands/cicd/function/defaults.js +2 -2
  58. package/dist/commands/cicd/function/delete.js +2 -2
  59. package/dist/commands/cicd/function/get.js +2 -2
  60. package/dist/commands/cicd/function/list.js +2 -2
  61. package/dist/commands/cicd/function/open.js +2 -2
  62. package/dist/commands/cicd/function/result/get.js +2 -2
  63. package/dist/commands/cicd/function/result/log/get.js +2 -2
  64. package/dist/commands/cicd/function/run-local.js +2 -2
  65. package/dist/commands/cicd/function/run.js +2 -2
  66. package/dist/commands/cicd/function/upsert.js +2 -2
  67. package/dist/commands/cicd/health-check.js +2 -2
  68. package/dist/commands/cicd/job/get.js +2 -2
  69. package/dist/commands/cicd/job/kill.js +2 -2
  70. package/dist/commands/cicd/job/list.js +2 -2
  71. package/dist/commands/cicd/job/log/get.js +2 -2
  72. package/dist/commands/cicd/job/open.js +2 -2
  73. package/dist/commands/cicd/job/pause.js +2 -2
  74. package/dist/commands/cicd/job/result-file/get.js +2 -2
  75. package/dist/commands/cicd/job/result-file/list.js +2 -2
  76. package/dist/commands/cicd/job/resume.js +2 -2
  77. package/dist/commands/cicd/job/run.js +2 -2
  78. package/dist/commands/cicd/metadata/content/compare.js +2 -2
  79. package/dist/commands/cicd/metadata/content/get.js +3 -3
  80. package/dist/commands/cicd/metadata/dependency/list.js +45 -22
  81. package/dist/commands/cicd/metadata/explore.js +81 -0
  82. package/dist/commands/cicd/metadata/index/compare.js +2 -2
  83. package/dist/commands/cicd/metadata/list.js +5 -5
  84. package/dist/commands/cicd/metadata/refresh/deleted.js +3 -3
  85. package/dist/commands/cicd/metadata/refresh/run.js +4 -4
  86. package/dist/commands/cicd/metadata/refresh/status.js +4 -4
  87. package/dist/commands/cicd/notification/configure.js +2 -2
  88. package/dist/commands/cicd/notification/get.js +2 -2
  89. package/dist/commands/cicd/pipeline/automation/activate.js +39 -0
  90. package/dist/commands/cicd/pipeline/automation/create.js +33 -0
  91. package/dist/commands/cicd/pipeline/automation/deactivate.js +39 -0
  92. package/dist/commands/cicd/pipeline/automation/delete.js +45 -0
  93. package/dist/commands/cicd/pipeline/automation/get.js +32 -0
  94. package/dist/commands/cicd/pipeline/automation/list.js +38 -0
  95. package/dist/commands/cicd/pipeline/automation/open.js +38 -0
  96. package/dist/commands/cicd/pipeline/automation/update.js +38 -0
  97. package/dist/commands/cicd/pipeline/connection/create.js +2 -2
  98. package/dist/commands/cicd/pipeline/connection/delete.js +2 -2
  99. package/dist/commands/cicd/pipeline/connection/list.js +2 -2
  100. package/dist/commands/cicd/pipeline/connection/open.js +2 -2
  101. package/dist/commands/cicd/pipeline/connection/update.js +2 -2
  102. package/dist/commands/cicd/pipeline/create.js +2 -2
  103. package/dist/commands/cicd/pipeline/get.js +2 -2
  104. package/dist/commands/cicd/pipeline/list.js +2 -2
  105. package/dist/commands/cicd/pipeline/open.js +2 -2
  106. package/dist/commands/cicd/pipeline/quality-gate/activate.js +39 -0
  107. package/dist/commands/cicd/pipeline/quality-gate/create.js +34 -0
  108. package/dist/commands/cicd/pipeline/quality-gate/deactivate.js +39 -0
  109. package/dist/commands/cicd/pipeline/quality-gate/delete.js +45 -0
  110. package/dist/commands/cicd/pipeline/quality-gate/get.js +32 -0
  111. package/dist/commands/cicd/pipeline/quality-gate/list.js +34 -0
  112. package/dist/commands/cicd/pipeline/quality-gate/open.js +38 -0
  113. package/dist/commands/cicd/pipeline/quality-gate/update.js +38 -0
  114. package/dist/commands/cicd/pipeline/stage-connection/create.js +2 -2
  115. package/dist/commands/cicd/pipeline/stage-connection/delete.js +2 -2
  116. package/dist/commands/cicd/pipeline/stage-connection/list.js +2 -2
  117. package/dist/commands/cicd/pipeline/stage-connection/open.js +2 -2
  118. package/dist/commands/cicd/pipeline/stage-connection/update.js +2 -2
  119. package/dist/commands/cicd/pipeline/update.js +2 -2
  120. package/dist/commands/cicd/project/create.js +2 -2
  121. package/dist/commands/cicd/project/default/get.js +2 -2
  122. package/dist/commands/cicd/project/default/set.js +2 -2
  123. package/dist/commands/cicd/project/default/unset.js +2 -2
  124. package/dist/commands/cicd/project/delete.js +2 -2
  125. package/dist/commands/cicd/project/get.js +2 -2
  126. package/dist/commands/cicd/project/list.js +2 -2
  127. package/dist/commands/cicd/project/open.js +2 -2
  128. package/dist/commands/cicd/project/update.js +2 -2
  129. package/dist/commands/cicd/promotion/conflict/get.js +2 -2
  130. package/dist/commands/cicd/promotion/conflict/list.js +2 -2
  131. package/dist/commands/cicd/promotion/conflict/resolve.js +2 -2
  132. package/dist/commands/cicd/promotion/conflict/unresolve.js +2 -2
  133. package/dist/commands/cicd/promotion/get.js +2 -2
  134. package/dist/commands/cicd/promotion/job-step/update.js +2 -2
  135. package/dist/commands/cicd/promotion/list.js +2 -2
  136. package/dist/commands/cicd/promotion/open.js +2 -2
  137. package/dist/commands/cicd/promotion/queue/list.js +28 -0
  138. package/dist/commands/cicd/promotion/queue/remove.js +37 -0
  139. package/dist/commands/cicd/promotion/run.js +2 -2
  140. package/dist/commands/cicd/repository/auth/https/configure.js +2 -2
  141. package/dist/commands/cicd/repository/auth/oauth/login.js +2 -2
  142. package/dist/commands/cicd/repository/auth/setup.js +2 -2
  143. package/dist/commands/cicd/repository/auth/ssh/configure.js +2 -2
  144. package/dist/commands/cicd/repository/create.js +2 -2
  145. package/dist/commands/cicd/repository/delete.js +2 -2
  146. package/dist/commands/cicd/repository/get.js +2 -2
  147. package/dist/commands/cicd/repository/list.js +2 -2
  148. package/dist/commands/cicd/repository/open.js +2 -2
  149. package/dist/commands/cicd/repository/reset.js +2 -2
  150. package/dist/commands/cicd/repository/update.js +2 -2
  151. package/dist/commands/cicd/repository/validate.js +2 -2
  152. package/dist/commands/cicd/stage/create.js +2 -2
  153. package/dist/commands/cicd/stage/delete.js +2 -2
  154. package/dist/commands/cicd/stage/get.js +2 -2
  155. package/dist/commands/cicd/stage/list.js +2 -2
  156. package/dist/commands/cicd/stage/open.js +2 -2
  157. package/dist/commands/cicd/stage/update.js +2 -2
  158. package/dist/commands/cicd/template/defaults.js +2 -2
  159. package/dist/commands/cicd/template/delete.js +2 -2
  160. package/dist/commands/cicd/template/get.js +2 -2
  161. package/dist/commands/cicd/template/list.js +2 -2
  162. package/dist/commands/cicd/template/upsert.js +2 -2
  163. package/dist/commands/cicd/user/get.js +2 -2
  164. package/dist/commands/cicd/work/ahead-behind.js +2 -2
  165. package/dist/commands/cicd/work/create.js +3 -2
  166. package/dist/commands/cicd/work/delete.js +2 -2
  167. package/dist/commands/cicd/work/deployment-step/create.js +2 -2
  168. package/dist/commands/cicd/work/deployment-step/delete.js +2 -2
  169. package/dist/commands/cicd/work/deployment-step/list.js +2 -2
  170. package/dist/commands/cicd/work/deployment-step/reorder.js +2 -2
  171. package/dist/commands/cicd/work/deployment-step/salesforce-flows.js +2 -2
  172. package/dist/commands/cicd/work/deployment-step/types.js +2 -2
  173. package/dist/commands/cicd/work/deployment-step/update.js +2 -2
  174. package/dist/commands/cicd/work/done.js +2 -2
  175. package/dist/commands/cicd/work/environment-sync.js +10 -9
  176. package/dist/commands/cicd/work/get.js +2 -2
  177. package/dist/commands/cicd/work/list.js +2 -2
  178. package/dist/commands/cicd/work/open.js +2 -2
  179. package/dist/commands/cicd/work/promote.js +2 -2
  180. package/dist/commands/cicd/work/publish.js +2 -2
  181. package/dist/commands/cicd/work/push.js +2 -2
  182. package/dist/commands/cicd/work/set.js +8 -6
  183. package/dist/commands/cicd/work/status.js +2 -2
  184. package/dist/commands/cicd/work/submit.js +5 -4
  185. package/dist/commands/cicd/work/test/apex.js +2 -2
  186. package/dist/commands/cicd/work/test.js +2 -2
  187. package/dist/commands/cicd/work/update.js +3 -2
  188. package/dist/commands/help-agent.js +15 -0
  189. package/dist/commands/help.js +38 -0
  190. package/dist/commands/history/clear.js +42 -0
  191. package/dist/commands/history/list.js +50 -0
  192. package/dist/commands/plugins/install.js +2 -5
  193. package/dist/commands/setup/skills/create.js +28 -2
  194. package/dist/commands/setup/skills/list.js +55 -0
  195. package/dist/commands/setup/skills/update.js +36 -3
  196. package/dist/commands/setup.js +3 -3
  197. package/dist/commands/support.js +15 -0
  198. package/dist/commands/testing/browser/execute.js +49 -0
  199. package/dist/commands/testing/browser/history.js +49 -0
  200. package/dist/commands/testing/browser/inspect.js +35 -0
  201. package/dist/commands/testing/browser/recorder.js +52 -0
  202. package/dist/commands/testing/browser/reports.js +33 -0
  203. package/dist/commands/testing/browser/screenshot.js +27 -0
  204. package/dist/commands/testing/browser/set-options.js +35 -0
  205. package/dist/commands/testing/browser/start.js +51 -0
  206. package/dist/commands/testing/browser/status.js +26 -0
  207. package/dist/commands/testing/browser/stop.js +34 -0
  208. package/dist/commands/testing/browser/view.js +35 -0
  209. package/dist/commands/testing/data-table/create.js +1 -2
  210. package/dist/commands/testing/data-table/delete.js +1 -2
  211. package/dist/commands/testing/data-table/export.js +2 -6
  212. package/dist/commands/testing/data-table/get.js +2 -4
  213. package/dist/commands/testing/data-table/list.js +1 -2
  214. package/dist/commands/testing/data-table/update.js +3 -4
  215. package/dist/commands/testing/job/create.js +26 -22
  216. package/dist/commands/testing/job/delete.js +2 -2
  217. package/dist/commands/testing/job/files/download.js +73 -0
  218. package/dist/commands/testing/job/files/list.js +43 -0
  219. package/dist/commands/testing/job/{upload.js → files/upload.js} +13 -9
  220. package/dist/commands/testing/job/get.js +2 -2
  221. package/dist/commands/testing/job/list.js +1 -1
  222. package/dist/commands/testing/job/refs.js +4 -4
  223. package/dist/commands/testing/job/run.js +134 -1
  224. package/dist/commands/testing/{build → job/runs}/abort.js +10 -8
  225. package/dist/commands/testing/job/runs/get.js +42 -0
  226. package/dist/commands/testing/{build → job/runs}/list.js +19 -10
  227. package/dist/commands/testing/{logs.js → job/runs/logs.js} +9 -6
  228. package/dist/commands/testing/{build → job/runs}/search.js +9 -7
  229. package/dist/commands/testing/job/schedule/get.js +5 -11
  230. package/dist/commands/testing/job/schedule/remove.js +3 -3
  231. package/dist/commands/testing/job/schedule/set.js +3 -3
  232. package/dist/commands/testing/job/update.js +22 -65
  233. package/dist/commands/testing/project/create.js +1 -17
  234. package/dist/commands/testing/project/get.js +0 -1
  235. package/dist/commands/testing/project/list.js +2 -2
  236. package/dist/commands/testing/project/permission/set.js +3 -7
  237. package/dist/commands/testing/project/permission/update.js +2 -2
  238. package/dist/commands/testing/robot/create.js +22 -25
  239. package/dist/commands/testing/robot/get.js +1 -1
  240. package/dist/commands/testing/robot/list.js +3 -3
  241. package/dist/commands/testing/robot/update.js +3 -3
  242. package/dist/commands/testing/user-parameter/create.js +3 -9
  243. package/dist/commands/testing/user-parameter/update.js +1 -7
  244. package/dist/commands/testing/variable/create.js +4 -9
  245. package/dist/commands/testing/variable/list.js +3 -3
  246. package/dist/commands/testing/variable/update.js +5 -12
  247. package/dist/help.js +17 -0
  248. package/dist/hooks/init/cicd-connection.js +59 -0
  249. package/dist/lib/agentia-command.js +69 -6
  250. package/dist/lib/ai-types.js +2 -1
  251. package/dist/lib/cicd-command.js +3 -0
  252. package/dist/lib/cicd-connection.js +22 -0
  253. package/dist/lib/cicd-gateway.js +2 -1
  254. package/dist/lib/claude-mcp-config.js +15 -0
  255. package/dist/lib/command-history-sanitization.js +9 -0
  256. package/dist/lib/command-history.js +11 -0
  257. package/dist/lib/command-output-buffer.js +6 -1
  258. package/dist/lib/credential-sync.js +1 -2
  259. package/dist/lib/defaults-store.js +6 -1
  260. package/dist/lib/dependency-from-changes.js +3 -1
  261. package/dist/lib/dependency-source-context.js +3 -0
  262. package/dist/lib/environment-auth-status.js +2 -1
  263. package/dist/lib/environment-auth.js +2 -1
  264. package/dist/lib/environment-credential-flags.js +3 -1
  265. package/dist/lib/environment-credential-operations.js +8 -2
  266. package/dist/lib/environment-types.js +3 -1
  267. package/dist/lib/extension-configuration-ops.js +4 -0
  268. package/dist/lib/extension-configuration-sanitize.js +7 -0
  269. package/dist/lib/extension-configuration-types.js +8 -0
  270. package/dist/lib/help-agent-command.js +3 -0
  271. package/dist/lib/help-agent-interaction-history.js +10 -0
  272. package/dist/lib/help-agent-session.js +3 -0
  273. package/dist/lib/http-proxy.js +13 -0
  274. package/dist/lib/mcp/ai-tools.js +3 -3
  275. package/dist/lib/mcp/command-id.js +2 -0
  276. package/dist/lib/mcp/pipeline-automation-quality-tools.js +452 -0
  277. package/dist/lib/mcp/result.js +41 -3
  278. package/dist/lib/mcp/server.js +73 -3
  279. package/dist/lib/mcp/testing-browser-tools.js +194 -0
  280. package/dist/lib/mcp/testing-tools.js +242 -552
  281. package/dist/lib/mcp/tool-annotations.js +59 -30
  282. package/dist/lib/mcp/tools.js +202 -66
  283. package/dist/lib/mcp/work-tools.js +18 -4
  284. package/dist/lib/metadata-explore.js +8 -0
  285. package/dist/lib/network-error.js +8 -0
  286. package/dist/lib/pipeline-automation-flags.js +12 -0
  287. package/dist/lib/pipeline-automation-ops.js +9 -0
  288. package/dist/lib/pipeline-automation-types.js +18 -0
  289. package/dist/lib/pipeline-lifecycle-id.js +3 -0
  290. package/dist/lib/pipeline-quality-gate-flags.js +12 -0
  291. package/dist/lib/pipeline-quality-gate-ops.js +9 -0
  292. package/dist/lib/pipeline-quality-gate-types.js +17 -0
  293. package/dist/lib/plugin-host/ai.js +2 -1
  294. package/dist/lib/plugin-skills.js +22 -0
  295. package/dist/lib/plugin-trust/gate.js +1 -2
  296. package/dist/lib/project-root.js +3 -1
  297. package/dist/lib/promotion-queue.js +5 -0
  298. package/dist/lib/promotion-run.js +2 -1
  299. package/dist/lib/runtime.js +1 -1
  300. package/dist/lib/salesforce-tooling-check.js +6 -0
  301. package/dist/lib/skill-packs.js +7 -0
  302. package/dist/lib/support-ai-context.js +11 -0
  303. package/dist/lib/support-ai-stream-parser.js +4 -0
  304. package/dist/lib/support-ai.js +9 -0
  305. package/dist/lib/testing-archive.js +9 -0
  306. package/dist/lib/testing-browser-command.js +6 -0
  307. package/dist/lib/testing-browser-operations.js +17 -0
  308. package/dist/lib/testing-browser-requests.js +11 -0
  309. package/dist/lib/testing-browser-robot.js +9 -0
  310. package/dist/lib/testing-browser-session.js +14 -0
  311. package/dist/lib/testing-browser-state.js +17 -0
  312. package/dist/lib/testing-browser-stream.js +7 -0
  313. package/dist/lib/testing-browser-types.js +3 -0
  314. package/dist/lib/testing-browser-viewer-key.js +7 -0
  315. package/dist/lib/testing-data-table.js +39 -0
  316. package/dist/lib/testing-execution.js +22 -0
  317. package/dist/lib/testing-flags.js +6 -2
  318. package/dist/lib/testing-gateway.js +5 -1
  319. package/dist/lib/testing-operations.js +9 -4
  320. package/dist/lib/testing-sanitization.js +3 -1
  321. package/dist/lib/testing-secret-input.js +2 -1
  322. package/dist/lib/testing-types.js +24 -3
  323. package/dist/lib/work-environment-sync.js +3 -1
  324. package/dist/lib/work-flags.js +6 -1
  325. package/dist/lib/work-local-development-flow.js +4 -0
  326. package/dist/lib/work-promote.js +2 -1
  327. package/dist/lib/work-submit-wait.js +3 -1
  328. package/oclif.manifest.json +8841 -7469
  329. package/package.json +45 -5
  330. package/templates/skills/agentia-ai/SKILL.md +9 -6
  331. package/templates/skills/agentia-ai/references/ai-agents.md +21 -3
  332. package/templates/skills/agentia-cicd/SKILL.md +8 -5
  333. package/templates/skills/agentia-cicd/references/environments-and-credentials.md +35 -13
  334. package/templates/skills/agentia-cicd/references/extensions.md +3 -0
  335. package/templates/skills/agentia-cicd/references/pipelines.md +36 -2
  336. package/templates/skills/agentia-cicd/references/promotions.md +10 -1
  337. package/templates/skills/agentia-cicd/references/work.md +20 -5
  338. package/templates/skills/agentia-metadata/SKILL.md +146 -0
  339. package/templates/skills/agentia-metadata/references/metadata-dependency.md +70 -0
  340. package/templates/skills/agentia-metadata/references/metadata-explore.md +146 -0
  341. package/templates/skills/agentia-testing/SKILL.md +12 -7
  342. package/templates/skills/agentia-testing/references/browser-testing.md +93 -0
  343. package/templates/skills/agentia-testing/references/flow-automation.md +112 -0
  344. package/templates/skills/agentia-testing/references/qforce.md +88 -0
  345. package/templates/skills/agentia-testing/references/qweb.md +103 -0
  346. package/templates/skills/agentia-testing/references/tests.md +31 -23
  347. package/dist/commands/testing/build/get.js +0 -38
  348. package/dist/commands/testing/build/latest.js +0 -40
  349. package/dist/commands/testing/build/logs.js +0 -47
  350. package/dist/commands/testing/build/run.js +0 -26
  351. package/dist/commands/testing/create.js +0 -2
  352. package/dist/commands/testing/job/download.js +0 -54
  353. package/dist/commands/testing/job/files.js +0 -34
  354. package/dist/commands/testing/live/continue.js +0 -21
  355. package/dist/commands/testing/live/execute.js +0 -43
  356. package/dist/commands/testing/live/history.js +0 -35
  357. package/dist/commands/testing/live/inspect.js +0 -30
  358. package/dist/commands/testing/live/interrupt.js +0 -21
  359. package/dist/commands/testing/live/recorder.js +0 -134
  360. package/dist/commands/testing/live/reports.js +0 -31
  361. package/dist/commands/testing/live/screenshot.js +0 -25
  362. package/dist/commands/testing/live/set-options.js +0 -28
  363. package/dist/commands/testing/live/start.js +0 -53
  364. package/dist/commands/testing/live/status.js +0 -27
  365. package/dist/commands/testing/live/stop.js +0 -38
  366. package/dist/commands/testing/live/view.js +0 -36
  367. package/dist/commands/testing/run.js +0 -26
  368. package/dist/commands/testing/status.js +0 -45
  369. package/dist/commands/testing/test/create.js +0 -2
  370. package/dist/commands/testing/test/logs.js +0 -2
  371. package/dist/commands/testing/test/run.js +0 -26
  372. package/dist/commands/testing/test/status.js +0 -2
  373. package/dist/commands/testing/test/update.js +0 -2
  374. package/dist/commands/testing/update.js +0 -65
  375. package/dist/lib/mcp/testing-live-tools.js +0 -215
  376. package/dist/lib/testing-data-command.js +0 -8
  377. package/dist/lib/testing-data-core.js +0 -20
  378. package/dist/lib/testing-data-export.js +0 -6
  379. package/dist/lib/testing-data-import.js +0 -6
  380. package/dist/lib/testing-data-io.js +0 -12
  381. package/dist/lib/testing-data-operations.js +0 -10
  382. package/dist/lib/testing-data-types.js +0 -4
  383. package/dist/lib/testing-live-command.js +0 -6
  384. package/dist/lib/testing-live-endpoints.js +0 -6
  385. package/dist/lib/testing-live-history.js +0 -7
  386. package/dist/lib/testing-live-operations.js +0 -19
  387. package/dist/lib/testing-live-recorder.js +0 -9
  388. package/dist/lib/testing-live-robot.js +0 -9
  389. package/dist/lib/testing-live-state.js +0 -5
  390. package/dist/lib/testing-live-types.js +0 -3
  391. package/dist/lib/testing-run-command.js +0 -3
  392. package/dist/lib/testing-schedule.js +0 -5
  393. package/dist/lib/testing-session.js +0 -5
  394. package/dist/lib/testing-watch.js +0 -4
@@ -2,23 +2,26 @@
2
2
  import { z } from 'zod';
3
3
  import { buildMetadataCompareFileRequests } from '../../commands/cicd/metadata/content/compare.js';
4
4
  import { buildMetadataContentRequest } from '../../commands/cicd/metadata/content/get.js';
5
+ import { buildDependencyRequest, enrichDependencyResult, } from '../../commands/cicd/metadata/dependency/list.js';
5
6
  import { buildMetadataCompareRequest } from '../../commands/cicd/metadata/index/compare.js';
6
7
  import { buildMetadataIndexRequest } from '../../commands/cicd/metadata/list.js';
8
+ import { AI_METADATA_ACTIONS, buildAiMetadataToolRequest, callAiMetadataTool, } from '../metadata-explore.js';
7
9
  import { assertRequired } from '../assert.js';
8
10
  import { applyAuthSet, getAiAuthStatus, getCicdAuthStatus, getCrtAuthStatus } from '../auth-config.js';
9
11
  import { CicdGateway } from '../cicd-gateway.js';
10
12
  import { CICD_REGIONS } from '../cicd-region.js';
11
13
  import { credentialLabel, } from '../credential-store.js';
12
14
  import { readDefaults, readLastWorkItem, resolveDefaults, unsetDefaults, writeDefaults, } from '../defaults-store.js';
13
- import { runEnvironmentAuthStatus } from '../environment-auth-status.js';
15
+ import { runCredentialAuthStatus, runEnvironmentAuthStatus } from '../environment-auth-status.js';
14
16
  import { collectCredentialUpdateFlagKeys, validateCredentialName } from '../environment-credential-flags.js';
15
- import { createEnvironmentCredential, listEnvironmentCredentials, resolveEnvironmentOrgType, sanitizeEnvironment, updateEnvironmentCredential, } from '../environment-credential-operations.js';
17
+ import { createEnvironmentCredential, listCredentials, resolveEnvironmentOrgType, sanitizeCredentialListItem, sanitizeEnvironment, updateCredentialById, } from '../environment-credential-operations.js';
16
18
  import { buildCreatePayload, buildMutationPayload, ENVIRONMENT_STRING_VALIDATION_KEYS, validateNonEmptyStringFields, } from '../environment-flags.js';
17
19
  import { fetchEnvironment, fetchEnvironments } from '../environment-get.js';
18
20
  import { DEFAULT_ENVIRONMENT_PLATFORM, DEFAULT_ENVIRONMENT_TYPE, ENVIRONMENT_TYPES, environmentEndpoint, } from '../environment-types.js';
19
21
  import { executeLocalFunctionRun } from '../function-local-run.js';
20
22
  import { FUNCTION_LIST_TYPES, FUNCTION_RUNTIMES, functionEndpoint, functionResultEndpoint, functionResultLogEndpoint, functionRunEndpoint, functionsEndpoint, normalizeFunction, normalizeFunctionResultStatus, normalizeFunctionRunResult, normalizeFunctionsListPage, normalizeFunctionUpsertPayload, } from '../function-types.js';
21
23
  import { fetchJob, fetchJobs } from '../job-get.js';
24
+ import { fetchPromotionQueue, removePromotionQueueItems } from '../promotion-queue.js';
22
25
  import { jobEndpoint, jobKillEndpoint, jobPauseEndpoint, jobResultFileContentEndpoint, jobResultFilesEndpoint, jobResultLogEndpoint, jobResumeEndpoint, jobRunEndpoint, normalizeJob, normalizeJobOperation, normalizeJobResultFileContent, normalizeJobResultFiles, resolveJobStepForLog, } from '../job-types.js';
23
26
  import { listPaginationZodFields, mcpPaginatedListPayload } from '../list-pagination.js';
24
27
  import { COMPARISON_MODES, CONTENT_SOURCES, contentResultToCompareSide, createUnifiedDiff, INDEX_SOURCES, MODULE_TYPES, ORDER_DIRECTIONS, PLATFORM_EXPERIENCES, RETRIEVE_MODES, sourceSideLabel, } from '../metadata-common.js';
@@ -58,6 +61,7 @@ import { agentiaMcpAiToolHandlers, registerAgentiaMcpAiTools } from './ai-tools.
58
61
  import { agentiaMcpDataToolHandlers, registerAgentiaMcpDataTools } from './data-tools.js';
59
62
  import { agentiaMcpDeploymentStepToolHandlers, registerAgentiaMcpDeploymentStepTools } from './deployment-step-tools.js';
60
63
  import { agentiaMcpHealthCheckToolHandlers, registerAgentiaMcpHealthCheckTools } from './health-check-tools.js';
64
+ import { agentiaMcpPipelineAutomationQualityToolHandlers, registerAgentiaMcpPipelineAutomationQualityTools, } from './pipeline-automation-quality-tools.js';
61
65
  import { safelyHandleTool, wrapMcpToolHandlers } from './result.js';
62
66
  import { agentiaMcpTestingToolHandlers, registerAgentiaMcpTestingTools } from './testing-tools.js';
63
67
  import { agentiaMcpWorkToolHandlers, registerAgentiaMcpWorkTools } from './work-tools.js';
@@ -203,9 +207,12 @@ async function credentialCreate(args) {
203
207
  });
204
208
  return { credential };
205
209
  }
206
- async function credentialList(args) {
207
- const credentials = await listEnvironmentCredentials(assertRequired(args.environmentId, 'environmentId'));
208
- return { credentials };
210
+ async function credentialList(args = {}) {
211
+ const page = await listCredentials(args);
212
+ return mcpPaginatedListPayload('credentials', {
213
+ ...page,
214
+ data: page.data.map((credential) => sanitizeCredentialListItem(credential)),
215
+ });
209
216
  }
210
217
  async function credentialUpdate(args) {
211
218
  const selectedKeys = collectCredentialUpdateFlagKeys({
@@ -219,15 +226,17 @@ async function credentialUpdate(args) {
219
226
  if (nameError !== undefined) {
220
227
  throw new Error(nameError);
221
228
  }
222
- const orgType = await resolveEnvironmentOrgType(assertRequired(args.environmentId, 'environmentId'));
223
- const credential = await updateEnvironmentCredential({
229
+ const credential = await updateCredentialById({
224
230
  credentialId: assertRequired(args.id, 'id'),
225
231
  defaultCredential: args.default,
226
- environmentId: args.environmentId,
227
232
  name: args.name,
228
- orgType,
229
233
  });
230
- return { credential };
234
+ return { credential: sanitizeCredentialListItem(credential) };
235
+ }
236
+ async function credentialAuthStatus(args) {
237
+ return runCredentialAuthStatus({
238
+ credentialId: assertRequired(args.id, 'id'),
239
+ });
231
240
  }
232
241
  async function jobList(args) {
233
242
  const filters = {
@@ -280,6 +289,12 @@ async function jobPause(args) {
280
289
  });
281
290
  return { result: normalizeJobOperation(result) };
282
291
  }
292
+ async function promotionQueueList(args) {
293
+ return { queue: await fetchPromotionQueue(assertRequired(args.promotion, 'promotion')) };
294
+ }
295
+ async function promotionQueueRemove(args) {
296
+ return { queue: await removePromotionQueueItems(assertRequired(args.promotion, 'promotion'), args.itemIds) };
297
+ }
283
298
  async function pipelineList(args = {}) {
284
299
  return mcpPaginatedListPayload('pipelines', await fetchPipelines(args));
285
300
  }
@@ -969,44 +984,70 @@ async function metadataContentCompare(args) {
969
984
  target: targetSide,
970
985
  };
971
986
  }
972
- async function metadataDependencyList(args) {
973
- const selection = {
974
- name: assertRequired(args.metadataName, 'metadataName'),
975
- type: assertRequired(args.metadataType, 'metadataType'),
976
- };
977
- if (args.metadataCategory) {
978
- selection.category = args.metadataCategory;
979
- }
980
- const body = {
981
- compareOptions: {
982
- sourceCredentialId: assertRequired(args.sourceCredentialId, 'sourceCredentialId'),
983
- sourceOrgId: assertRequired(args.sourceOrgId, 'sourceOrgId'),
984
- },
985
- metadataSelections: [selection],
986
- pipelineId: assertRequired(args.pipelineId, 'pipelineId'),
987
+ async function metadataExplore(args) {
988
+ const body = await buildAiMetadataToolRequest({
989
+ action: assertRequired(args.action, 'action'),
990
+ 'apex-unit-tests': args.apexUnitTests,
991
+ // Deferred write/deploy flags:
992
+ // 'async-id': args.asyncId,
993
+ // 'metadata-files': args.metadataFiles,
994
+ // 'organization-name': args.organizationName,
995
+ // 'test-level': args.testLevel,
996
+ // 'validate-only': args.validateOnly,
997
+ 'credential-id': args.credentialId,
998
+ endpoint: args.endpoint,
999
+ 'full-name': args.fullName,
1000
+ 'object-type': args.objectType,
1001
+ pattern: args.pattern,
1002
+ 'session-id': args.sessionId,
1003
+ });
1004
+ const output = await callAiMetadataTool(body);
1005
+ return {
1006
+ ...(body.credentialId === undefined ? {} : { credentialId: body.credentialId }),
1007
+ output,
987
1008
  };
988
- if (args.targetOrgId) {
989
- body.compareOptions.targetOrgId = args.targetOrgId;
990
- }
991
- if (args.retrieveMode) {
992
- body.compareOptions.retrieveMode = args.retrieveMode;
993
- }
994
- if (args.moduleType) {
995
- body.moduleType = args.moduleType;
1009
+ }
1010
+ function normalizeDependencyPathArg(path) {
1011
+ if (path === undefined) {
1012
+ return undefined;
996
1013
  }
997
- if (args.resultId) {
998
- body.resultId = args.resultId;
1014
+ const paths = (Array.isArray(path) ? path : [path]).map((entry) => entry.trim()).filter(Boolean);
1015
+ return paths.length > 0 ? paths : undefined;
1016
+ }
1017
+ async function metadataDependencyList(args) {
1018
+ const paths = normalizeDependencyPathArg(args.path);
1019
+ if (paths && (args.metadataName || args.metadataType)) {
1020
+ throw new Error('Use either path or metadataName/metadataType, not both.');
999
1021
  }
1000
- const platformExperience = args.platformExperience ?? 'salesforce';
1001
- const result = await CicdGateway.call({
1022
+ const { body, localPathsBySelection, platformExperience } = await buildDependencyRequest({
1023
+ 'base-ref': 'origin/main',
1024
+ 'from-changes': false,
1025
+ 'metadata-category': args.metadataCategory,
1026
+ 'metadata-name': args.metadataName,
1027
+ 'metadata-type': args.metadataType,
1028
+ 'module-type': args.moduleType,
1029
+ path: paths,
1030
+ 'pipeline-id': args.pipelineId,
1031
+ 'platform-experience': args.platformExperience,
1032
+ 'result-id': args.resultId,
1033
+ 'retrieve-mode': args.retrieveMode,
1034
+ 'source-credential-id': args.sourceCredentialId,
1035
+ 'source-org-id': args.sourceOrgId,
1036
+ stdin: false,
1037
+ 'target-org-id': args.targetOrgId,
1038
+ });
1039
+ const gatewayResult = await CicdGateway.call({
1002
1040
  body,
1003
1041
  endpoint: '/release/metadata/dependencies',
1004
1042
  headers: {
1005
1043
  'Content-Type': 'application/json',
1006
- 'platform-experience': platformExperience,
1044
+ ...(platformExperience === undefined ? {} : { 'platform-experience': platformExperience }),
1007
1045
  },
1008
1046
  method: 'POST',
1009
1047
  });
1048
+ const result = localPathsBySelection
1049
+ ? await enrichDependencyResult(gatewayResult, localPathsBySelection, args.moduleType)
1050
+ : gatewayResult;
1010
1051
  return { result };
1011
1052
  }
1012
1053
  function authCredentialResult(type) {
@@ -1048,9 +1089,14 @@ async function authSet(args) {
1048
1089
  return { ...(result.baseUrl === undefined ? {} : { baseUrl: result.baseUrl }), stored: result.stored };
1049
1090
  }
1050
1091
  async function environmentAuthStatus(args) {
1092
+ const environmentId = typeof args.id === 'string' ? args.id.trim() : '';
1093
+ const credentialId = typeof args.credentialId === 'string' ? args.credentialId.trim() : '';
1094
+ if (environmentId.length === 0 && credentialId.length === 0) {
1095
+ throw new Error('Provide id (environment ID) or credentialId.');
1096
+ }
1051
1097
  return runEnvironmentAuthStatus({
1052
- credentialId: args.credentialId,
1053
- environmentId: assertRequired(args.id, 'id'),
1098
+ credentialId: credentialId.length > 0 ? credentialId : undefined,
1099
+ environmentId: environmentId.length > 0 ? environmentId : undefined,
1054
1100
  });
1055
1101
  }
1056
1102
  async function jobLogGet(args) {
@@ -1249,8 +1295,10 @@ export const agentiaMcpToolHandlers = wrapMcpToolHandlers({
1249
1295
  ...agentiaMcpDataToolHandlers,
1250
1296
  ...agentiaMcpDeploymentStepToolHandlers,
1251
1297
  ...agentiaMcpHealthCheckToolHandlers,
1298
+ ...agentiaMcpPipelineAutomationQualityToolHandlers,
1252
1299
  authGet,
1253
1300
  authSet,
1301
+ credentialAuthStatus,
1254
1302
  credentialCreate,
1255
1303
  credentialList,
1256
1304
  credentialUpdate,
@@ -1273,6 +1321,8 @@ export const agentiaMcpToolHandlers = wrapMcpToolHandlers({
1273
1321
  jobList,
1274
1322
  jobLogGet,
1275
1323
  jobPause,
1324
+ promotionQueueList,
1325
+ promotionQueueRemove,
1276
1326
  jobResultFileGet,
1277
1327
  jobResultFileList,
1278
1328
  jobResume,
@@ -1280,6 +1330,7 @@ export const agentiaMcpToolHandlers = wrapMcpToolHandlers({
1280
1330
  metadataContentCompare,
1281
1331
  metadataContentGet,
1282
1332
  metadataDependencyList,
1333
+ metadataExplore,
1283
1334
  metadataIndexCompare,
1284
1335
  metadataList,
1285
1336
  metadataRefreshDeleted,
@@ -1426,6 +1477,7 @@ export function registerAgentiaMcpTools(server) {
1426
1477
  registerAgentiaMcpDataTools(server);
1427
1478
  registerAgentiaMcpDeploymentStepTools(server);
1428
1479
  registerAgentiaMcpHealthCheckTools(server);
1480
+ registerAgentiaMcpPipelineAutomationQualityTools(server);
1429
1481
  registerAgentiaMcpTestingTools(server);
1430
1482
  server.registerTool('agentia_environment_list', {
1431
1483
  description: 'List Copado environments via the CICD gateway.',
@@ -1472,22 +1524,29 @@ export function registerAgentiaMcpTools(server) {
1472
1524
  title: 'Agentia Credential Create',
1473
1525
  }, (args) => safelyHandleTool(() => credentialCreate(args)));
1474
1526
  server.registerTool('agentia_credential_list', {
1475
- description: 'List credentials for a Copado environment via the CICD gateway.',
1527
+ description: 'List Copado credentials via the CICD gateway, optionally filtered by name.',
1476
1528
  inputSchema: {
1477
- environmentId: z.string().describe('Copado environment Id or name.'),
1529
+ name: z.string().optional().describe('Filter credentials by name (partial match).'),
1530
+ ...listPaginationZodFields,
1478
1531
  },
1479
1532
  title: 'Agentia Credential List',
1480
- }, (args) => safelyHandleTool(() => credentialList(args)));
1533
+ }, (args) => safelyHandleTool(() => credentialList(args || {})));
1481
1534
  server.registerTool('agentia_credential_update', {
1482
- description: 'Update a Copado environment credential by Id via the CICD gateway.',
1535
+ description: 'Update a Copado credential by Id via the CICD gateway.',
1483
1536
  inputSchema: {
1484
1537
  default: z.boolean().optional().describe('Mark this credential as the environment default.'),
1485
- environmentId: z.string().describe('Copado environment Id.'),
1486
1538
  id: z.string().describe('Copado credential Id.'),
1487
1539
  name: z.string().optional().describe('Credential name.'),
1488
1540
  },
1489
1541
  title: 'Agentia Credential Update',
1490
1542
  }, (args) => safelyHandleTool(() => credentialUpdate(args)));
1543
+ server.registerTool('agentia_credential_auth_status', {
1544
+ description: 'Validate a Copado credential by Id through the CICD gateway.',
1545
+ inputSchema: {
1546
+ id: z.string().describe('Copado credential Id.'),
1547
+ },
1548
+ title: 'Agentia Credential Auth Status',
1549
+ }, (args) => safelyHandleTool(() => credentialAuthStatus(args)));
1491
1550
  server.registerTool('agentia_promotion_list', {
1492
1551
  description: 'List Copado promotions via the CICD gateway.',
1493
1552
  inputSchema: promotionListSchema,
@@ -1597,6 +1656,19 @@ export function registerAgentiaMcpTools(server) {
1597
1656
  },
1598
1657
  title: 'Agentia Job Pause',
1599
1658
  }, (args) => safelyHandleTool(() => jobPause(args)));
1659
+ server.registerTool('agentia_promotion_queue_list', {
1660
+ description: 'List the promotion queue for a Copado promotion via the CICD gateway.',
1661
+ inputSchema: { promotion: z.string().describe('Copado promotion ID or name.') },
1662
+ title: 'Agentia Promotion Queue List',
1663
+ }, (args) => safelyHandleTool(() => promotionQueueList(args)));
1664
+ server.registerTool('agentia_promotion_queue_remove', {
1665
+ description: 'Remove items from a Copado promotion promotion queue via the CICD gateway (requires the Manage Queue permission).',
1666
+ inputSchema: {
1667
+ itemIds: z.array(z.string()).min(1).describe('Queue item IDs to remove (from agentia_promotion_queue_list).'),
1668
+ promotion: z.string().describe('Copado promotion ID or name.'),
1669
+ },
1670
+ title: 'Agentia Promotion Queue Remove',
1671
+ }, (args) => safelyHandleTool(() => promotionQueueRemove(args)));
1600
1672
  server.registerTool('agentia_pipeline_list', {
1601
1673
  description: 'List Copado pipelines via the CICD gateway.',
1602
1674
  inputSchema: {
@@ -1801,12 +1873,12 @@ export function registerAgentiaMcpTools(server) {
1801
1873
  }, (args) => safelyHandleTool(() => projectDefaultUnset(args || {})));
1802
1874
  registerAgentiaMcpWorkTools(server);
1803
1875
  server.registerTool('agentia_metadata_list', {
1804
- description: 'Search the Copado metadata index via the CICD gateway.',
1876
+ description: 'Search the Copado metadata index.',
1805
1877
  inputSchema: {
1806
1878
  avoidSourceTracking: z
1807
1879
  .boolean()
1808
1880
  .optional()
1809
- .describe('Pass avoidSourceTracking=true to the gateway index route.'),
1881
+ .describe('Pass avoidSourceTracking=true to the index route.'),
1810
1882
  changeDateFrom: z
1811
1883
  .string()
1812
1884
  .optional()
@@ -1820,7 +1892,7 @@ export function registerAgentiaMcpTools(server) {
1820
1892
  moduleType: z.enum(MODULE_TYPES).optional().describe('Optional addon module type.'),
1821
1893
  orderDirection: z.enum(ORDER_DIRECTIONS).optional().describe('Sort direction for last modified date.'),
1822
1894
  pipelineId: z.string().describe('Pipeline Id.'),
1823
- platformExperience: z.enum(PLATFORM_EXPERIENCES).optional().describe('Gateway platform experience header.'),
1895
+ platformExperience: z.enum(PLATFORM_EXPERIENCES).optional().describe('Platform experience header.'),
1824
1896
  source: z.enum(INDEX_SOURCES).optional().describe('Index source filter.'),
1825
1897
  sourceCredentialId: z.string().describe('Source org credential Id.'),
1826
1898
  sourceOrgId: z.string().describe('Source org Id.'),
@@ -1828,8 +1900,44 @@ export function registerAgentiaMcpTools(server) {
1828
1900
  },
1829
1901
  title: 'Agentia Metadata List',
1830
1902
  }, (args) => safelyHandleTool(() => metadataList(args)));
1903
+ server.registerTool('agentia_metadata_explore', {
1904
+ description: 'Explore Salesforce metadata through Org Intelligence. Uses the project default credential when credentialId is omitted; otherwise pass credentialId, or both sessionId and endpoint. Returns YAML tool output.',
1905
+ inputSchema: {
1906
+ action: z
1907
+ .enum(AI_METADATA_ACTIONS)
1908
+ .describe('Metadata action: list, search, read_documentation, describe_type, read, find_references, run_apex_tests.'),
1909
+ apexUnitTests: z
1910
+ .string()
1911
+ .optional()
1912
+ .describe('Comma-separated Apex test classes. Required for run_apex_tests.'),
1913
+ // Deferred write/deploy MCP fields (re-add with AI_METADATA_ACTIONS when shipping mutate):
1914
+ // asyncId, metadataFiles, organizationName, testLevel, validateOnly
1915
+ credentialId: z
1916
+ .string()
1917
+ .optional()
1918
+ .describe('Copado credential Id. Defaults to the CICD project default credential when set. Exclusive with sessionId+endpoint.'),
1919
+ endpoint: z
1920
+ .string()
1921
+ .optional()
1922
+ .describe('Salesforce instance URL used with sessionId when credentialId is omitted.'),
1923
+ fullName: z
1924
+ .string()
1925
+ .optional()
1926
+ .describe('Fully qualified metadata name (required for read).'),
1927
+ objectType: z.string().optional().describe('Metadata type, for example ApexClass or CustomObject.'),
1928
+ pattern: z
1929
+ .string()
1930
+ .optional()
1931
+ .describe('Wildcard pattern for list/search (name without namespace). Defaults to *.'),
1932
+ sessionId: z
1933
+ .string()
1934
+ .optional()
1935
+ .describe('Salesforce session Id used with endpoint when credentialId is omitted.'),
1936
+ },
1937
+ title: 'Agentia Metadata Explore',
1938
+ }, (args) => safelyHandleTool(() => metadataExplore(args)));
1831
1939
  server.registerTool('agentia_metadata_content_get', {
1832
- description: 'Retrieve metadata file content via the CICD gateway.',
1940
+ description: 'Retrieve metadata file content.',
1833
1941
  inputSchema: {
1834
1942
  apiName: z.string().describe('Metadata API name.'),
1835
1943
  branch: z.string().optional().describe('Git branch when source is REPOSITORY or GIT_MIRROR.'),
@@ -1844,7 +1952,7 @@ export function registerAgentiaMcpTools(server) {
1844
1952
  title: 'Agentia Metadata Content Get',
1845
1953
  }, (args) => safelyHandleTool(() => metadataContentGet(args)));
1846
1954
  server.registerTool('agentia_metadata_index_compare', {
1847
- description: 'Compare metadata between orgs or Git branches via the CICD gateway.',
1955
+ description: 'Compare metadata between orgs or Git branches.',
1848
1956
  inputSchema: {
1849
1957
  comparisonMode: z.enum(COMPARISON_MODES).describe('Comparison mode.'),
1850
1958
  filterType: z.string().optional().describe('Optional metadata type filter, for example ApexClass.'),
@@ -1874,19 +1982,44 @@ export function registerAgentiaMcpTools(server) {
1874
1982
  title: 'Agentia Metadata Content Compare',
1875
1983
  }, (args) => safelyHandleTool(() => metadataContentCompare(args)));
1876
1984
  server.registerTool('agentia_metadata_dependency_list', {
1877
- description: 'Retrieve metadata dependencies via the CICD gateway.',
1985
+ description: 'Retrieve metadata dependencies. Provide either path (one or more local Salesforce source files) or both metadataName and metadataType. pipelineId, sourceCredentialId, sourceOrgId, and platformExperience default from the active work item or project defaults when omitted; targetOrgId is never inferred.',
1878
1986
  inputSchema: {
1879
1987
  metadataCategory: z.string().optional().describe('Optional metadata category.'),
1880
- metadataName: z.string().describe('Metadata API name.'),
1881
- metadataType: z.string().describe('Metadata type, for example ApexClass.'),
1988
+ metadataName: z
1989
+ .string()
1990
+ .optional()
1991
+ .describe('Metadata API name. Required with metadataType when path is omitted.'),
1992
+ metadataType: z
1993
+ .string()
1994
+ .optional()
1995
+ .describe('Metadata type, for example ApexClass. Required with metadataName when path is omitted.'),
1882
1996
  moduleType: z.enum(MODULE_TYPES).optional().describe('Optional addon module type.'),
1883
- pipelineId: z.string().describe('Pipeline Id.'),
1884
- platformExperience: z.enum(PLATFORM_EXPERIENCES).optional().describe('Gateway platform experience header.'),
1997
+ path: z
1998
+ .union([z.string(), z.array(z.string())])
1999
+ .optional()
2000
+ .describe('Local Salesforce source file path(s) resolved into metadata selections. Mutually exclusive with metadataName/metadataType.'),
2001
+ pipelineId: z
2002
+ .string()
2003
+ .optional()
2004
+ .describe('Pipeline Id. Defaults to the active work item pipelineId or the project default pipeline.'),
2005
+ platformExperience: z
2006
+ .enum(PLATFORM_EXPERIENCES)
2007
+ .optional()
2008
+ .describe('Platform experience header. Defaults to the active work item platform, then sfdx.'),
1885
2009
  resultId: z.string().optional().describe('Optional result Id from a prior metadata operation.'),
1886
2010
  retrieveMode: z.enum(RETRIEVE_MODES).optional().describe('Dependency retrieve mode.'),
1887
- sourceCredentialId: z.string().describe('Source org credential Id.'),
1888
- sourceOrgId: z.string().describe('Source org Id.'),
1889
- targetOrgId: z.string().optional().describe('Optional target org Id.'),
2011
+ sourceCredentialId: z
2012
+ .string()
2013
+ .optional()
2014
+ .describe('Source org credential Id. Defaults to the active work item source credential or the project default credential.'),
2015
+ sourceOrgId: z
2016
+ .string()
2017
+ .optional()
2018
+ .describe('Source org Id. Defaults to the active work item sourceOrgId or orgId from the resolved credential/environment.'),
2019
+ targetOrgId: z
2020
+ .string()
2021
+ .optional()
2022
+ .describe('Optional target org Id. Not inferred from work item or project defaults.'),
1890
2023
  },
1891
2024
  title: 'Agentia Metadata Dependency List',
1892
2025
  }, (args) => safelyHandleTool(() => metadataDependencyList(args)));
@@ -1918,10 +2051,13 @@ export function registerAgentiaMcpTools(server) {
1918
2051
  title: 'Agentia Auth Set',
1919
2052
  }, (args) => safelyHandleTool(() => authSet(args)));
1920
2053
  server.registerTool('agentia_environment_auth_status', {
1921
- description: 'Validate an environment credential through the CICD gateway.',
2054
+ description: 'Validate an environment credential through the CICD gateway. Provide id, or credentialId alone to resolve the environment from the credential.',
1922
2055
  inputSchema: {
1923
- credentialId: z.string().optional().describe('Credential ID when selection is ambiguous.'),
1924
- id: z.string().describe('Copado environment ID.'),
2056
+ credentialId: z
2057
+ .string()
2058
+ .optional()
2059
+ .describe('Credential ID; when id is omitted, resolves the environment from the credential.'),
2060
+ id: z.string().optional().describe('Copado environment ID (optional when credentialId is provided).'),
1925
2061
  },
1926
2062
  title: 'Agentia Environment Auth Status',
1927
2063
  }, (args) => safelyHandleTool(() => environmentAuthStatus(args)));
@@ -2267,14 +2403,14 @@ export function registerAgentiaMcpTools(server) {
2267
2403
  title: 'Agentia Promotion Conflict Unresolve',
2268
2404
  }, (args) => safelyHandleTool(() => promotionConflictUnresolve(args)));
2269
2405
  server.registerTool('agentia_metadata_refresh_run', {
2270
- description: 'Trigger a metadata index refresh via the CICD gateway.',
2406
+ description: 'Trigger a metadata index refresh.',
2271
2407
  inputSchema: {
2272
2408
  all: z.boolean().optional().describe('Replace the metadata index instead of merging it.'),
2273
2409
  env: z.string().describe('Environment ID used to resolve source configuration.'),
2274
2410
  gitFiles: z.array(z.string()).optional().describe('Git file paths to refresh.'),
2275
2411
  moduleType: z.enum(MODULE_TYPES).optional().describe('Optional addon module type.'),
2276
2412
  pipelineId: z.string().optional().describe('Optional pipeline ID.'),
2277
- platformExperience: z.enum(PLATFORM_EXPERIENCES).optional().describe('Gateway platform experience header.'),
2413
+ platformExperience: z.enum(PLATFORM_EXPERIENCES).optional().describe('Platform experience header.'),
2278
2414
  refreshMode: z.string().optional().describe('Optional refresh mode.'),
2279
2415
  selectedName: z.string().optional().describe('Selected metadata API name.'),
2280
2416
  selectedType: z.string().optional().describe('Selected metadata type.'),
@@ -2285,16 +2421,16 @@ export function registerAgentiaMcpTools(server) {
2285
2421
  title: 'Agentia Metadata Refresh Run',
2286
2422
  }, (args) => safelyHandleTool(() => metadataRefreshRun(args)));
2287
2423
  server.registerTool('agentia_metadata_refresh_status', {
2288
- description: 'Get metadata index refresh status via the CICD gateway.',
2424
+ description: 'Get metadata index refresh status.',
2289
2425
  inputSchema: {
2290
2426
  jobId: z.string().describe('Metadata refresh event ID.'),
2291
2427
  moduleType: z.enum(MODULE_TYPES).optional().describe('Addon module type used by the refresh.'),
2292
- platformExperience: z.enum(PLATFORM_EXPERIENCES).optional().describe('Gateway platform experience header.'),
2428
+ platformExperience: z.enum(PLATFORM_EXPERIENCES).optional().describe('Platform experience header.'),
2293
2429
  },
2294
2430
  title: 'Agentia Metadata Refresh Status',
2295
2431
  }, (args) => safelyHandleTool(() => metadataRefreshStatus(args)));
2296
2432
  server.registerTool('agentia_metadata_refresh_deleted', {
2297
- description: 'Refresh deleted metadata index entries via the CICD gateway.',
2433
+ description: 'Refresh deleted metadata index entries.',
2298
2434
  inputSchema: {
2299
2435
  env: z.string().describe('Environment ID used to resolve the source credential.'),
2300
2436
  moduleType: z.enum(MODULE_TYPES).optional().describe('Optional addon module type.'),
@@ -17,7 +17,7 @@ import { planWorkApexTestRun, recordWorkApexTestOutcome } from '../work-apex-tes
17
17
  import { DEFAULT_APEX_TEST_WAIT_MINUTES, parseApexTestClassNames, runWorkApexTests, skippedWorkApexTestResult, validateApexTestWaitMinutes, WorkApexTestError, } from '../work-apex-test.js';
18
18
  import { buildWorkCommitRequest, normalizeWorkCommitInput, performWorkCommit, resolveWorkCommitPlatformExperience, WORK_COMMIT_ACTIONS, WORK_COMMIT_CHANGES_HELP, WORK_COMMIT_DEFAULT_TIMEOUT_SECONDS, WORK_COMMIT_METADATA_CATEGORY_HELP, } from '../work-commit.js';
19
19
  import { buildWorkCreatePayload } from '../work-defaults.js';
20
- import { validateWorkMutationPayload, WORK_LONG_TEXT_MAX_LENGTH, WORK_SHORT_TEXT_MAX_LENGTH, } from '../work-flags.js';
20
+ import { normalizeWorkCustomFields, validateWorkMutationPayload, WORK_LONG_TEXT_MAX_LENGTH, WORK_SHORT_TEXT_MAX_LENGTH, } from '../work-flags.js';
21
21
  import { fetchWorkItems, fetchWorkItemWithOptions } from '../work-get.js';
22
22
  import { performWorkLocalCommit } from '../work-local-commit.js';
23
23
  import { reportLocalQualityGatesFailure, reportLocalQualityGatesOutcome, } from '../work-local-run-tests.js';
@@ -54,6 +54,7 @@ const WORK_MUTATION_PAYLOAD_KEYS = [
54
54
  'assignee',
55
55
  'cancellationReason',
56
56
  'closeDate',
57
+ 'customFields',
57
58
  'epic',
58
59
  'excludedFromCbm',
59
60
  'feature',
@@ -80,7 +81,12 @@ function buildWorkMutationPayloadFromArgs(args) {
80
81
  for (const key of WORK_MUTATION_PAYLOAD_KEYS) {
81
82
  const value = args[key];
82
83
  if (value !== undefined) {
83
- Object.assign(payload, { [key]: value });
84
+ if (key === 'customFields') {
85
+ Object.assign(payload, { customFields: normalizeWorkCustomFields(value) });
86
+ }
87
+ else {
88
+ Object.assign(payload, { [key]: value });
89
+ }
84
90
  }
85
91
  }
86
92
  return applySourceCredentialEnvironmentRule(payload);
@@ -617,6 +623,10 @@ const skipNestedMetadataDetectionSchema = z
617
623
  .boolean()
618
624
  .optional()
619
625
  .describe('Do not detect the nested metadata changed across the branch. Also configurable via skipNestedMetadataDetection in .agentia/config.json or .agentia/config.user.json.');
626
+ const workCustomFieldWriteSchema = z.object({
627
+ apiName: z.string().min(1).describe('Salesforce subscriber custom field API name (for example JIRA_Key__c).'),
628
+ value: z.unknown().optional().describe('Field value to write (string, number, boolean, null, or multipicklist string).'),
629
+ });
620
630
  const workMutationSchema = {
621
631
  acceptanceCriteria: z.string().max(WORK_SHORT_TEXT_MAX_LENGTH).optional().describe('Acceptance criteria (maximum 255 characters).'),
622
632
  actualPoints: z.number().int().optional().describe('Actual points.'),
@@ -624,6 +634,10 @@ const workMutationSchema = {
624
634
  assignee: z.string().optional().describe('Assignee ID.'),
625
635
  cancellationReason: z.string().optional().describe('Cancellation reason.'),
626
636
  closeDate: z.string().optional().describe('Close date.'),
637
+ customFields: z
638
+ .array(workCustomFieldWriteSchema)
639
+ .optional()
640
+ .describe('Subscriber custom fields to write as [{ apiName, value }]. Omit for packaged-only create/update. Duplicate apiNames are rejected.'),
627
641
  epic: z.string().optional().describe('Epic.'),
628
642
  excludedFromCbm: z.boolean().optional().describe('Exclude from CBM.'),
629
643
  feature: z.string().optional().describe('Feature.'),
@@ -697,7 +711,7 @@ export function registerAgentiaMcpWorkTools(server) {
697
711
  title: 'Agentia Work Delete',
698
712
  }, (args) => safelyHandleTool(() => workDelete(args)));
699
713
  server.registerTool('agentia_work_set', {
700
- description: 'Set the active Copado work item and prepare a local feature/<user-story-name> branch. Requires a clean tracked working tree. Fetches the base branch from origin, fetches the feature branch when it exists on origin, then creates or checks out the feature branch from the remote feature when present, otherwise from the base. A gateway warning prints the message, skips git, clears lastBaseBranch/lastDevOrgBranch/lastPullRequestBaseUrl, and records lastWorkItemId/lastWorkItem/lastWorkItemTitle from the returned work item. After work/set returns, compares the Story source credential with the CICD project default: warns when the default or Story credential is missing, and warns without changing the Story when they differ (shows the current credential and environment; use work update to change it). With none=true, clears every last* key from config.user.json and checks out the previous lastBaseBranch when present, else main, else master, else stays put.',
714
+ description: 'Set the active Copado work item and prepare a local feature/<user-story-name> branch. Requires a clean tracked working tree. Fetches the base branch from origin, fetches the feature branch when it exists on origin, then creates or checks out the feature branch from the remote feature when present, otherwise from the base. A gateway warning prints the message, skips git, clears lastBaseBranch/lastDevOrgBranch/lastPullRequestBaseUrl, and records lastWorkItemId/lastWorkItem/lastWorkItemTitle from the returned work item. After work/set returns, compares the Story source credential with the CICD project default: warns when the Story credential is missing, skips comparison when a bound Story has no project default, and warns without changing the Story when they differ (shows the current credential and environment; use work update to change it). With none=true, clears every last* key from config.user.json and checks out the previous lastBaseBranch when present, else main, else master, else stays put.',
701
715
  inputSchema: {
702
716
  baseBranch: z
703
717
  .string()
@@ -727,7 +741,7 @@ export function registerAgentiaMcpWorkTools(server) {
727
741
  skipNestedMetadataDetection: skipNestedMetadataDetectionSchema,
728
742
  };
729
743
  server.registerTool('agentia_work_publish', {
730
- description: 'Publish the current feature/<lastWorkItem> branch and register commits with Copado. Requires a clean working tree, lastBaseBranch, and lastDevOrgBranch from config.user.json. Applies Copado environment-variable then yaml replacements when needed (yaml `-b` is the feature branch, matching Copado Commit), commits both as a single follow-up commit, sends one headless push changeListUpdate list of Action:MetadataType:MetadataName corrections (lastPermissionSelected and the permissions argument plus the nested metadata of the changed profiles and permission sets as RetrieveOnly so Copado registers that metadata with the Retrieve Only commit action, lastFullMetadataSelected and the fullMetadata argument plus brand-new nested parent files as fullMetadata, the ignored nested parents as unchanged, the nested metadata the branch deleted as Del, and the remaining nested metadata as Add). The changed profiles and permission sets themselves are never sent as corrections, so they stay in the change list and deploy only the permissions their RetrieveOnly entries select; brand-new nested parent files are sent as fullMetadata instead. Merges the feature branch into the recorded dev org branch after headless push. With dryRun=true, previews replacements and changeListUpdate, restores dirtied tracked files, and skips commit/push/lock/register/dev-org sync. Prefer this over agentia_work_push.',
744
+ description: 'Publish the current feature/<lastWorkItem> branch and register commits with Copado. Requires a clean working tree, lastBaseBranch, and lastDevOrgBranch from config.user.json. Applies Copado environment-variable then yaml replacements when needed (yaml `-b` is the feature branch, matching Copado Commit), commits both as a single follow-up commit, sends one headless push changeListUpdate list of Action:MetadataType:MetadataName corrections (lastPermissionSelected and the permissions argument plus the nested metadata of the changed profiles and permission sets as RetrieveOnly so Copado registers that metadata with the Retrieve Only commit action, lastFullMetadataSelected and the fullMetadata argument plus brand-new nested parent files as fullMetadata, the ignored nested parents as unchanged, the nested metadata the branch deleted as Delete, and the remaining nested metadata as Add). The changed profiles and permission sets themselves are never sent as corrections, so they stay in the change list and deploy only the permissions their RetrieveOnly entries select; brand-new nested parent files are sent as fullMetadata instead. Merges the feature branch into the recorded dev org branch after headless push. With dryRun=true, previews replacements and changeListUpdate, restores dirtied tracked files, and skips commit/push/lock/register/dev-org sync. Prefer this over agentia_work_push.',
731
745
  inputSchema: workPublishInputSchema,
732
746
  title: 'Agentia Work Publish',
733
747
  }, (args) => safelyHandleTool(() => workPublish(args || {})));
@@ -0,0 +1,8 @@
1
+ import {modules} from './runtime.js';
2
+ const AI_METADATA_ACTIONS = modules["metadata-explore.js"]["AI_METADATA_ACTIONS"]
3
+ const AI_METADATA_TOOL_ENDPOINT = modules["metadata-explore.js"]["AI_METADATA_TOOL_ENDPOINT"]
4
+ const buildAiMetadataToolRequest = modules["metadata-explore.js"]["buildAiMetadataToolRequest"]
5
+ const callAiMetadataTool = modules["metadata-explore.js"]["callAiMetadataTool"]
6
+ const missingExploreCredentialError = modules["metadata-explore.js"]["missingExploreCredentialError"]
7
+ const resolveExploreCredentialId = modules["metadata-explore.js"]["resolveExploreCredentialId"]
8
+ export {AI_METADATA_ACTIONS, AI_METADATA_TOOL_ENDPOINT, buildAiMetadataToolRequest, callAiMetadataTool, missingExploreCredentialError, resolveExploreCredentialId};
@@ -0,0 +1,8 @@
1
+ import {modules} from './runtime.js';
2
+ const formatTransportNetworkError = modules["network-error.js"]["formatTransportNetworkError"]
3
+ const gatewayTimeoutError = modules["network-error.js"]["gatewayTimeoutError"]
4
+ const getTransportNetworkInfo = modules["network-error.js"]["getTransportNetworkInfo"]
5
+ const isHttpGatewaySoftMiss = modules["network-error.js"]["isHttpGatewaySoftMiss"]
6
+ const isTransportNetworkError = modules["network-error.js"]["isTransportNetworkError"]
7
+ const throwFormattedTransportNetworkError = modules["network-error.js"]["throwFormattedTransportNetworkError"]
8
+ export {formatTransportNetworkError, gatewayTimeoutError, getTransportNetworkInfo, isHttpGatewaySoftMiss, isTransportNetworkError, throwFormattedTransportNetworkError};
@@ -0,0 +1,12 @@
1
+ import {modules} from './runtime.js';
2
+ const AUTOMATION_FILTER_CRITERIA_FLAG_DESCRIPTION = modules["pipeline-automation-flags.js"]["AUTOMATION_FILTER_CRITERIA_FLAG_DESCRIPTION"]
3
+ const buildPipelineAutomationCreatePayload = modules["pipeline-automation-flags.js"]["buildPipelineAutomationCreatePayload"]
4
+ const buildPipelineAutomationUpdatePayload = modules["pipeline-automation-flags.js"]["buildPipelineAutomationUpdatePayload"]
5
+ const normalizeAutomationFilterCriteria = modules["pipeline-automation-flags.js"]["normalizeAutomationFilterCriteria"]
6
+ const parseAutomationFilterCriteria = modules["pipeline-automation-flags.js"]["parseAutomationFilterCriteria"]
7
+ const pipelineAutomationListFlags = modules["pipeline-automation-flags.js"]["pipelineAutomationListFlags"]
8
+ const pipelineAutomationMutationFlags = modules["pipeline-automation-flags.js"]["pipelineAutomationMutationFlags"]
9
+ const readAutomationFilterCriteriaFromFile = modules["pipeline-automation-flags.js"]["readAutomationFilterCriteriaFromFile"]
10
+ const resolveAutomationFilterCriteria = modules["pipeline-automation-flags.js"]["resolveAutomationFilterCriteria"]
11
+ const validateAutomationCreateControls = modules["pipeline-automation-flags.js"]["validateAutomationCreateControls"]
12
+ export {AUTOMATION_FILTER_CRITERIA_FLAG_DESCRIPTION, buildPipelineAutomationCreatePayload, buildPipelineAutomationUpdatePayload, normalizeAutomationFilterCriteria, parseAutomationFilterCriteria, pipelineAutomationListFlags, pipelineAutomationMutationFlags, readAutomationFilterCriteriaFromFile, resolveAutomationFilterCriteria, validateAutomationCreateControls};
@@ -0,0 +1,9 @@
1
+ import {modules} from './runtime.js';
2
+ const activatePipelineAutomationRule = modules["pipeline-automation-ops.js"]["activatePipelineAutomationRule"]
3
+ const createPipelineAutomationRule = modules["pipeline-automation-ops.js"]["createPipelineAutomationRule"]
4
+ const deactivatePipelineAutomationRule = modules["pipeline-automation-ops.js"]["deactivatePipelineAutomationRule"]
5
+ const deletePipelineAutomationRule = modules["pipeline-automation-ops.js"]["deletePipelineAutomationRule"]
6
+ const fetchPipelineAutomationRule = modules["pipeline-automation-ops.js"]["fetchPipelineAutomationRule"]
7
+ const fetchPipelineAutomationRules = modules["pipeline-automation-ops.js"]["fetchPipelineAutomationRules"]
8
+ const updatePipelineAutomationRule = modules["pipeline-automation-ops.js"]["updatePipelineAutomationRule"]
9
+ export {activatePipelineAutomationRule, createPipelineAutomationRule, deactivatePipelineAutomationRule, deletePipelineAutomationRule, fetchPipelineAutomationRule, fetchPipelineAutomationRules, updatePipelineAutomationRule};
@@ -0,0 +1,18 @@
1
+ import {modules} from './runtime.js';
2
+ const AUTOMATION_CRITERIA_LOGICS = modules["pipeline-automation-types.js"]["AUTOMATION_CRITERIA_LOGICS"]
3
+ const AUTOMATION_CRITERIA_MODES = modules["pipeline-automation-types.js"]["AUTOMATION_CRITERIA_MODES"]
4
+ const AUTOMATION_CRITERIA_OPERATORS = modules["pipeline-automation-types.js"]["AUTOMATION_CRITERIA_OPERATORS"]
5
+ const AUTOMATION_EXECUTION_TIMES = modules["pipeline-automation-types.js"]["AUTOMATION_EXECUTION_TIMES"]
6
+ const AUTOMATION_PROMOTION_TRIGGERS = modules["pipeline-automation-types.js"]["AUTOMATION_PROMOTION_TRIGGERS"]
7
+ const AUTOMATION_SCOPES = modules["pipeline-automation-types.js"]["AUTOMATION_SCOPES"]
8
+ const AUTOMATION_SOURCE_ACTIONS = modules["pipeline-automation-types.js"]["AUTOMATION_SOURCE_ACTIONS"]
9
+ const AUTOMATION_SOURCE_ACTION_STATUSES = modules["pipeline-automation-types.js"]["AUTOMATION_SOURCE_ACTION_STATUSES"]
10
+ const formatPipelineAutomationRuleDetail = modules["pipeline-automation-types.js"]["formatPipelineAutomationRuleDetail"]
11
+ const formatPipelineAutomationRuleTable = modules["pipeline-automation-types.js"]["formatPipelineAutomationRuleTable"]
12
+ const normalizePipelineAutomationRule = modules["pipeline-automation-types.js"]["normalizePipelineAutomationRule"]
13
+ const normalizePipelineAutomationRulesListPage = modules["pipeline-automation-types.js"]["normalizePipelineAutomationRulesListPage"]
14
+ const pipelineAutomationRuleActivateEndpoint = modules["pipeline-automation-types.js"]["pipelineAutomationRuleActivateEndpoint"]
15
+ const pipelineAutomationRuleDeactivateEndpoint = modules["pipeline-automation-types.js"]["pipelineAutomationRuleDeactivateEndpoint"]
16
+ const pipelineAutomationRuleEndpoint = modules["pipeline-automation-types.js"]["pipelineAutomationRuleEndpoint"]
17
+ const pipelineAutomationRulesEndpoint = modules["pipeline-automation-types.js"]["pipelineAutomationRulesEndpoint"]
18
+ export {AUTOMATION_CRITERIA_LOGICS, AUTOMATION_CRITERIA_MODES, AUTOMATION_CRITERIA_OPERATORS, AUTOMATION_EXECUTION_TIMES, AUTOMATION_PROMOTION_TRIGGERS, AUTOMATION_SCOPES, AUTOMATION_SOURCE_ACTIONS, AUTOMATION_SOURCE_ACTION_STATUSES, formatPipelineAutomationRuleDetail, formatPipelineAutomationRuleTable, normalizePipelineAutomationRule, normalizePipelineAutomationRulesListPage, pipelineAutomationRuleActivateEndpoint, pipelineAutomationRuleDeactivateEndpoint, pipelineAutomationRuleEndpoint, pipelineAutomationRulesEndpoint};
@@ -0,0 +1,3 @@
1
+ import {modules} from './runtime.js';
2
+ const assertSalesforceLifecycleId = modules["pipeline-lifecycle-id.js"]["assertSalesforceLifecycleId"]
3
+ export {assertSalesforceLifecycleId};