@hotmeshio/long-tail 0.1.7 → 0.1.8

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 (245) hide show
  1. package/README.md +3 -1
  2. package/build/api/auth.d.ts +11 -0
  3. package/build/api/auth.js +11 -0
  4. package/build/api/bot-accounts.d.ts +87 -0
  5. package/build/api/bot-accounts.js +87 -0
  6. package/build/api/controlplane.d.ts +48 -0
  7. package/build/api/controlplane.js +48 -0
  8. package/build/api/dba.d.ts +27 -0
  9. package/build/api/dba.js +27 -0
  10. package/build/api/escalations.d.ts +201 -0
  11. package/build/api/escalations.js +236 -0
  12. package/build/api/exports.d.ts +58 -0
  13. package/build/api/exports.js +58 -0
  14. package/build/api/insight.d.ts +57 -0
  15. package/build/api/insight.js +57 -0
  16. package/build/api/maintenance.d.ts +15 -0
  17. package/build/api/maintenance.js +15 -0
  18. package/build/api/mcp-runs.d.ts +27 -0
  19. package/build/api/mcp-runs.js +27 -0
  20. package/build/api/mcp.d.ts +108 -0
  21. package/build/api/mcp.js +108 -0
  22. package/build/api/namespaces.d.ts +13 -0
  23. package/build/api/namespaces.js +13 -0
  24. package/build/api/roles.d.ts +63 -0
  25. package/build/api/roles.js +63 -5
  26. package/build/api/settings.d.ts +8 -0
  27. package/build/api/settings.js +8 -0
  28. package/build/api/tasks.d.ts +43 -0
  29. package/build/api/tasks.js +43 -0
  30. package/build/api/users.d.ts +71 -0
  31. package/build/api/users.js +71 -5
  32. package/build/api/workflow-sets.d.ts +51 -0
  33. package/build/api/workflow-sets.js +51 -0
  34. package/build/api/workflows.d.ts +110 -0
  35. package/build/api/workflows.js +109 -0
  36. package/build/api/yaml-workflows.d.ts +195 -0
  37. package/build/api/yaml-workflows.js +195 -0
  38. package/build/examples/types/envelopes.d.ts +27 -0
  39. package/build/examples/types/index.d.ts +1 -1
  40. package/build/examples/workers.js +8 -0
  41. package/build/examples/workflows/assembly-line/activities.d.ts +28 -0
  42. package/build/examples/workflows/assembly-line/activities.js +53 -0
  43. package/build/examples/workflows/assembly-line/index.d.ts +17 -0
  44. package/build/examples/workflows/assembly-line/index.js +60 -0
  45. package/build/examples/workflows/assembly-line/iterator.d.ts +12 -0
  46. package/build/examples/workflows/assembly-line/iterator.js +54 -0
  47. package/build/examples/workflows/assembly-line/reverter.d.ts +18 -0
  48. package/build/examples/workflows/assembly-line/reverter.js +89 -0
  49. package/build/examples/workflows/assembly-line/types.d.ts +25 -0
  50. package/build/examples/workflows/assembly-line/types.js +8 -0
  51. package/build/examples/workflows/assembly-line/worker.d.ts +13 -0
  52. package/build/examples/workflows/assembly-line/worker.js +81 -0
  53. package/build/routes/escalations/list.js +22 -0
  54. package/build/routes/workflows/invocation.js +15 -9
  55. package/build/sdk/index.d.ts +11 -0
  56. package/build/sdk/index.js +1 -0
  57. package/build/services/workflow-invocation.d.ts +15 -2
  58. package/build/services/workflow-invocation.js +11 -6
  59. package/build/tsconfig.tsbuildinfo +1 -1
  60. package/dashboard/dist/assets/{AdminDashboard-DRjkRSjJ.js → AdminDashboard-B15jSEV2.js} +2 -2
  61. package/dashboard/dist/assets/{AdminDashboard-DRjkRSjJ.js.map → AdminDashboard-B15jSEV2.js.map} +1 -1
  62. package/dashboard/dist/assets/{AvailableEscalationsPage-CnivX4Tz.js → AvailableEscalationsPage-0V2yvKak.js} +2 -2
  63. package/dashboard/dist/assets/{AvailableEscalationsPage-CnivX4Tz.js.map → AvailableEscalationsPage-0V2yvKak.js.map} +1 -1
  64. package/dashboard/dist/assets/{BotPicker-DwwaBhTH.js → BotPicker-B4UxHcek.js} +2 -2
  65. package/dashboard/dist/assets/{BotPicker-DwwaBhTH.js.map → BotPicker-B4UxHcek.js.map} +1 -1
  66. package/dashboard/dist/assets/{CollapsibleSection-DQpaVA0M.js → CollapsibleSection-BBexNWVd.js} +2 -2
  67. package/dashboard/dist/assets/{CollapsibleSection-DQpaVA0M.js.map → CollapsibleSection-BBexNWVd.js.map} +1 -1
  68. package/dashboard/dist/assets/{ConfirmDeleteModal-B7JoDNvt.js → ConfirmDeleteModal-DlPDJSq_.js} +2 -2
  69. package/dashboard/dist/assets/{ConfirmDeleteModal-B7JoDNvt.js.map → ConfirmDeleteModal-DlPDJSq_.js.map} +1 -1
  70. package/dashboard/dist/assets/{CopyableId-AqoZayBG.js → CopyableId-BxHW1ahb.js} +2 -2
  71. package/dashboard/dist/assets/{CopyableId-AqoZayBG.js.map → CopyableId-BxHW1ahb.js.map} +1 -1
  72. package/dashboard/dist/assets/{CredentialsPage-qGw1kQzi.js → CredentialsPage-Bp_Y1Szk.js} +2 -2
  73. package/dashboard/dist/assets/{CredentialsPage-qGw1kQzi.js.map → CredentialsPage-Bp_Y1Szk.js.map} +1 -1
  74. package/dashboard/dist/assets/{CustomDurationPicker-D1HUQcd0.js → CustomDurationPicker-ByBFqXSO.js} +2 -2
  75. package/dashboard/dist/assets/{CustomDurationPicker-D1HUQcd0.js.map → CustomDurationPicker-ByBFqXSO.js.map} +1 -1
  76. package/dashboard/dist/assets/{DataTable-DKvSKoVG.js → DataTable-DyIXg-tQ.js} +2 -2
  77. package/dashboard/dist/assets/{DataTable-DKvSKoVG.js.map → DataTable-DyIXg-tQ.js.map} +1 -1
  78. package/dashboard/dist/assets/{ElapsedCell-B0yrReGQ.js → ElapsedCell-BgnA0qpS.js} +2 -2
  79. package/dashboard/dist/assets/{ElapsedCell-B0yrReGQ.js.map → ElapsedCell-BgnA0qpS.js.map} +1 -1
  80. package/dashboard/dist/assets/{EmptyState-X0fIzYID.js → EmptyState-DlMImvgm.js} +2 -2
  81. package/dashboard/dist/assets/{EmptyState-X0fIzYID.js.map → EmptyState-DlMImvgm.js.map} +1 -1
  82. package/dashboard/dist/assets/{EscalationsOverview-BQAT9W7r.js → EscalationsOverview-D90kdfw1.js} +2 -2
  83. package/dashboard/dist/assets/{EscalationsOverview-BQAT9W7r.js.map → EscalationsOverview-D90kdfw1.js.map} +1 -1
  84. package/dashboard/dist/assets/{EventTable-CX1KNLhZ.js → EventTable-BNxtlgNz.js} +2 -2
  85. package/dashboard/dist/assets/{EventTable-CX1KNLhZ.js.map → EventTable-BNxtlgNz.js.map} +1 -1
  86. package/dashboard/dist/assets/{FilterBar-DMTvuQy-.js → FilterBar-BTiaAhCx.js} +2 -2
  87. package/dashboard/dist/assets/{FilterBar-DMTvuQy-.js.map → FilterBar-BTiaAhCx.js.map} +1 -1
  88. package/dashboard/dist/assets/{ListToolbar-DTOSxoEy.js → ListToolbar-BUcagSCn.js} +2 -2
  89. package/dashboard/dist/assets/{ListToolbar-DTOSxoEy.js.map → ListToolbar-BUcagSCn.js.map} +1 -1
  90. package/dashboard/dist/assets/{McpOverview-BaKTIWrG.js → McpOverview-B-tCvz8C.js} +2 -2
  91. package/dashboard/dist/assets/{McpOverview-BaKTIWrG.js.map → McpOverview-B-tCvz8C.js.map} +1 -1
  92. package/dashboard/dist/assets/{McpQueryDetailPage-CC08T5k8.js → McpQueryDetailPage-DPlF1wYb.js} +2 -2
  93. package/dashboard/dist/assets/{McpQueryDetailPage-CC08T5k8.js.map → McpQueryDetailPage-DPlF1wYb.js.map} +1 -1
  94. package/dashboard/dist/assets/{McpQueryPage-CVfF9dYg.js → McpQueryPage-Bz7AdcfR.js} +2 -2
  95. package/dashboard/dist/assets/{McpQueryPage-CVfF9dYg.js.map → McpQueryPage-Bz7AdcfR.js.map} +1 -1
  96. package/dashboard/dist/assets/{McpRunDetailPage-CKs1RWeV.js → McpRunDetailPage-Di_qpL2V.js} +2 -2
  97. package/dashboard/dist/assets/{McpRunDetailPage-CKs1RWeV.js.map → McpRunDetailPage-Di_qpL2V.js.map} +1 -1
  98. package/dashboard/dist/assets/{McpRunsPage-CcPD_tY1.js → McpRunsPage-BBgybBEa.js} +2 -2
  99. package/dashboard/dist/assets/{McpRunsPage-CcPD_tY1.js.map → McpRunsPage-BBgybBEa.js.map} +1 -1
  100. package/dashboard/dist/assets/{Modal-_2AbWxJT.js → Modal-CaJ0gTEa.js} +2 -2
  101. package/dashboard/dist/assets/{Modal-_2AbWxJT.js.map → Modal-CaJ0gTEa.js.map} +1 -1
  102. package/dashboard/dist/assets/{OperatorDashboard-BGiRaRDr.js → OperatorDashboard-DDfMmrmR.js} +2 -2
  103. package/dashboard/dist/assets/{OperatorDashboard-BGiRaRDr.js.map → OperatorDashboard-DDfMmrmR.js.map} +1 -1
  104. package/dashboard/dist/assets/{PageHeader-DVr5Qyzm.js → PageHeader-C5D-G5rp.js} +2 -2
  105. package/dashboard/dist/assets/{PageHeader-DVr5Qyzm.js.map → PageHeader-C5D-G5rp.js.map} +1 -1
  106. package/dashboard/dist/assets/{PageHeaderWithStats-D0KRASML.js → PageHeaderWithStats-DCa2eZh2.js} +2 -2
  107. package/dashboard/dist/assets/{PageHeaderWithStats-D0KRASML.js.map → PageHeaderWithStats-DCa2eZh2.js.map} +1 -1
  108. package/dashboard/dist/assets/{PriorityBadge-Bx2559OU.js → PriorityBadge-DTHq6OUZ.js} +2 -2
  109. package/dashboard/dist/assets/{PriorityBadge-Bx2559OU.js.map → PriorityBadge-DTHq6OUZ.js.map} +1 -1
  110. package/dashboard/dist/assets/{ProcessDetailPage-69I--sry.js → ProcessDetailPage-fC4dhrd0.js} +2 -2
  111. package/dashboard/dist/assets/{ProcessDetailPage-69I--sry.js.map → ProcessDetailPage-fC4dhrd0.js.map} +1 -1
  112. package/dashboard/dist/assets/{ProcessesListPage-BDpUbua2.js → ProcessesListPage-CL2MY8uD.js} +2 -2
  113. package/dashboard/dist/assets/{ProcessesListPage-BDpUbua2.js.map → ProcessesListPage-CL2MY8uD.js.map} +1 -1
  114. package/dashboard/dist/assets/{RolePill-CcAqEaSt.js → RolePill-kgKPANly.js} +2 -2
  115. package/dashboard/dist/assets/{RolePill-CcAqEaSt.js.map → RolePill-kgKPANly.js.map} +1 -1
  116. package/dashboard/dist/assets/{RolesPage-Cl23Hjet.js → RolesPage-Be2lXTHD.js} +2 -2
  117. package/dashboard/dist/assets/{RolesPage-Cl23Hjet.js.map → RolesPage-Be2lXTHD.js.map} +1 -1
  118. package/dashboard/dist/assets/{RowActions-B4mqIt3Z.js → RowActions-DIzJCwqR.js} +2 -2
  119. package/dashboard/dist/assets/{RowActions-B4mqIt3Z.js.map → RowActions-DIzJCwqR.js.map} +1 -1
  120. package/dashboard/dist/assets/{StatCard-Cz_2OjAZ.js → StatCard-CRi2Jy6t.js} +2 -2
  121. package/dashboard/dist/assets/{StatCard-Cz_2OjAZ.js.map → StatCard-CRi2Jy6t.js.map} +1 -1
  122. package/dashboard/dist/assets/{StatusBadge-Wi2FJZsn.js → StatusBadge-BETI_8Mr.js} +2 -2
  123. package/dashboard/dist/assets/{StatusBadge-Wi2FJZsn.js.map → StatusBadge-BETI_8Mr.js.map} +1 -1
  124. package/dashboard/dist/assets/{StepIndicator-PW5NRDMb.js → StepIndicator-DjpMqCjz.js} +2 -2
  125. package/dashboard/dist/assets/{StepIndicator-PW5NRDMb.js.map → StepIndicator-DjpMqCjz.js.map} +1 -1
  126. package/dashboard/dist/assets/{StickyPagination-Bl2Uzz65.js → StickyPagination-BZbExQ9t.js} +2 -2
  127. package/dashboard/dist/assets/{StickyPagination-Bl2Uzz65.js.map → StickyPagination-BZbExQ9t.js.map} +1 -1
  128. package/dashboard/dist/assets/{SwimlaneTimeline-CUPqMd0z.js → SwimlaneTimeline-DZthQyhR.js} +2 -2
  129. package/dashboard/dist/assets/{SwimlaneTimeline-CUPqMd0z.js.map → SwimlaneTimeline-DZthQyhR.js.map} +1 -1
  130. package/dashboard/dist/assets/{TagInput-BLtf86Ly.js → TagInput-CukbOfYn.js} +2 -2
  131. package/dashboard/dist/assets/{TagInput-BLtf86Ly.js.map → TagInput-CukbOfYn.js.map} +1 -1
  132. package/dashboard/dist/assets/{TaskDetailPage-BXJFX74D.js → TaskDetailPage-CIZHIKo9.js} +2 -2
  133. package/dashboard/dist/assets/{TaskDetailPage-BXJFX74D.js.map → TaskDetailPage-CIZHIKo9.js.map} +1 -1
  134. package/dashboard/dist/assets/{TaskQueuePill-CWYj3xKe.js → TaskQueuePill-Q7DGoysj.js} +2 -2
  135. package/dashboard/dist/assets/{TaskQueuePill-CWYj3xKe.js.map → TaskQueuePill-Q7DGoysj.js.map} +1 -1
  136. package/dashboard/dist/assets/{TasksListPage-C3cX94Mw.js → TasksListPage-CsC9wjb0.js} +2 -2
  137. package/dashboard/dist/assets/{TasksListPage-C3cX94Mw.js.map → TasksListPage-CsC9wjb0.js.map} +1 -1
  138. package/dashboard/dist/assets/{TimeAgo-B_5yDDHV.js → TimeAgo-BcOOnJeH.js} +2 -2
  139. package/dashboard/dist/assets/{TimeAgo-B_5yDDHV.js.map → TimeAgo-BcOOnJeH.js.map} +1 -1
  140. package/dashboard/dist/assets/{TimestampCell-DRX724uU.js → TimestampCell-CEMapYDQ.js} +2 -2
  141. package/dashboard/dist/assets/{TimestampCell-DRX724uU.js.map → TimestampCell-CEMapYDQ.js.map} +1 -1
  142. package/dashboard/dist/assets/{UserName-Ca8FA469.js → UserName-BHoN7iRL.js} +2 -2
  143. package/dashboard/dist/assets/{UserName-Ca8FA469.js.map → UserName-BHoN7iRL.js.map} +1 -1
  144. package/dashboard/dist/assets/{WorkflowExecutionPage-BBYWEV2P.js → WorkflowExecutionPage-DawKl1LT.js} +2 -2
  145. package/dashboard/dist/assets/{WorkflowExecutionPage-BBYWEV2P.js.map → WorkflowExecutionPage-DawKl1LT.js.map} +1 -1
  146. package/dashboard/dist/assets/{WorkflowPill-BXifAuLi.js → WorkflowPill-CP84Vqeg.js} +2 -2
  147. package/dashboard/dist/assets/{WorkflowPill-BXifAuLi.js.map → WorkflowPill-CP84Vqeg.js.map} +1 -1
  148. package/dashboard/dist/assets/{WorkflowsDashboard-Drl3juz9.js → WorkflowsDashboard-QrvVFxtQ.js} +2 -2
  149. package/dashboard/dist/assets/{WorkflowsDashboard-Drl3juz9.js.map → WorkflowsDashboard-QrvVFxtQ.js.map} +1 -1
  150. package/dashboard/dist/assets/{WorkflowsOverview-03IRrDLg.js → WorkflowsOverview-DuhAi_OY.js} +2 -2
  151. package/dashboard/dist/assets/{WorkflowsOverview-03IRrDLg.js.map → WorkflowsOverview-DuhAi_OY.js.map} +1 -1
  152. package/dashboard/dist/assets/{YamlWorkflowsPage-DC2cLxVi.js → YamlWorkflowsPage-Dc9xw82a.js} +2 -2
  153. package/dashboard/dist/assets/{YamlWorkflowsPage-DC2cLxVi.js.map → YamlWorkflowsPage-Dc9xw82a.js.map} +1 -1
  154. package/dashboard/dist/assets/{bots-DZEXcgiJ.js → bots-Dny-rmmI.js} +2 -2
  155. package/dashboard/dist/assets/{bots-DZEXcgiJ.js.map → bots-Dny-rmmI.js.map} +1 -1
  156. package/dashboard/dist/assets/{escalation-Cw48lNaF.js → escalation-CV0sKNH5.js} +2 -2
  157. package/dashboard/dist/assets/{escalation-Cw48lNaF.js.map → escalation-CV0sKNH5.js.map} +1 -1
  158. package/dashboard/dist/assets/{escalation-columns-NINpo3qf.js → escalation-columns-30CKyoWI.js} +2 -2
  159. package/dashboard/dist/assets/{escalation-columns-NINpo3qf.js.map → escalation-columns-30CKyoWI.js.map} +1 -1
  160. package/dashboard/dist/assets/{helpers-fk_qr729.js → helpers-C1-30CzH.js} +2 -2
  161. package/dashboard/dist/assets/{helpers-fk_qr729.js.map → helpers-C1-30CzH.js.map} +1 -1
  162. package/dashboard/dist/assets/{helpers-Cuu3xKfr.js → helpers-C1jaRD-d.js} +2 -2
  163. package/dashboard/dist/assets/{helpers-Cuu3xKfr.js.map → helpers-C1jaRD-d.js.map} +1 -1
  164. package/dashboard/dist/assets/{index-CNI7k7oB.js → index-BUVQ6wmy.js} +2 -2
  165. package/dashboard/dist/assets/{index-CNI7k7oB.js.map → index-BUVQ6wmy.js.map} +1 -1
  166. package/dashboard/dist/assets/{index-aRvL-dXp.js → index-CxVB7F4X.js} +2 -2
  167. package/dashboard/dist/assets/{index-aRvL-dXp.js.map → index-CxVB7F4X.js.map} +1 -1
  168. package/dashboard/dist/assets/{index-BIG3KooI.js → index-D-oCWCAS.js} +2 -2
  169. package/dashboard/dist/assets/{index-BIG3KooI.js.map → index-D-oCWCAS.js.map} +1 -1
  170. package/dashboard/dist/assets/{index-b03HlbnH.js → index-D0wPM3Ck.js} +2 -2
  171. package/dashboard/dist/assets/{index-b03HlbnH.js.map → index-D0wPM3Ck.js.map} +1 -1
  172. package/dashboard/dist/assets/{index-DwRytW9O.js → index-DHgnkykj.js} +2 -2
  173. package/dashboard/dist/assets/{index-DwRytW9O.js.map → index-DHgnkykj.js.map} +1 -1
  174. package/dashboard/dist/assets/{index-Dj-z-x8M.js → index-D_aJBEAG.js} +2 -2
  175. package/dashboard/dist/assets/{index-Dj-z-x8M.js.map → index-D_aJBEAG.js.map} +1 -1
  176. package/dashboard/dist/assets/{index-CORHB0WC.js → index-Dd_U4mLm.js} +2 -2
  177. package/dashboard/dist/assets/{index-CORHB0WC.js.map → index-Dd_U4mLm.js.map} +1 -1
  178. package/dashboard/dist/assets/{index-BwN3KP_L.js → index-DnmZbNxk.js} +7 -7
  179. package/dashboard/dist/assets/index-DnmZbNxk.js.map +1 -0
  180. package/dashboard/dist/assets/{index-B98ipWxE.js → index-_RBvi7s6.js} +2 -2
  181. package/dashboard/dist/assets/{index-B98ipWxE.js.map → index-_RBvi7s6.js.map} +1 -1
  182. package/dashboard/dist/assets/{index-Bxe8h1x4.js → index-n7td8zgX.js} +2 -2
  183. package/dashboard/dist/assets/{index-Bxe8h1x4.js.map → index-n7td8zgX.js.map} +1 -1
  184. package/dashboard/dist/assets/{mcp-BZoFryNc.js → mcp-CRFr4L9W.js} +2 -2
  185. package/dashboard/dist/assets/{mcp-BZoFryNc.js.map → mcp-CRFr4L9W.js.map} +1 -1
  186. package/dashboard/dist/assets/{mcp-query-wiw1kwm8.js → mcp-query-DHY2mZBQ.js} +2 -2
  187. package/dashboard/dist/assets/{mcp-query-wiw1kwm8.js.map → mcp-query-DHY2mZBQ.js.map} +1 -1
  188. package/dashboard/dist/assets/{mcp-runs-BaEKnf5v.js → mcp-runs-BqPHqwAO.js} +2 -2
  189. package/dashboard/dist/assets/{mcp-runs-BaEKnf5v.js.map → mcp-runs-BqPHqwAO.js.map} +1 -1
  190. package/dashboard/dist/assets/{namespaces-BwnZI4_A.js → namespaces-TG1aIpo_.js} +2 -2
  191. package/dashboard/dist/assets/{namespaces-BwnZI4_A.js.map → namespaces-TG1aIpo_.js.map} +1 -1
  192. package/dashboard/dist/assets/{roles-Bgn1K8zU.js → roles-DhhLTvXg.js} +2 -2
  193. package/dashboard/dist/assets/{roles-Bgn1K8zU.js.map → roles-DhhLTvXg.js.map} +1 -1
  194. package/dashboard/dist/assets/{settings-CizYiutL.js → settings-D9MBzEeB.js} +2 -2
  195. package/dashboard/dist/assets/{settings-CizYiutL.js.map → settings-D9MBzEeB.js.map} +1 -1
  196. package/dashboard/dist/assets/{tasks-Bmte_hc4.js → tasks-BxmcZoev.js} +2 -2
  197. package/dashboard/dist/assets/{tasks-Bmte_hc4.js.map → tasks-BxmcZoev.js.map} +1 -1
  198. package/dashboard/dist/assets/{useEventHooks-CUCxpiI2.js → useEventHooks-BylecvvI.js} +2 -2
  199. package/dashboard/dist/assets/{useEventHooks-CUCxpiI2.js.map → useEventHooks-BylecvvI.js.map} +1 -1
  200. package/dashboard/dist/assets/{useYamlActivityEvents-Cum02Ej9.js → useYamlActivityEvents-ocmj11e_.js} +2 -2
  201. package/dashboard/dist/assets/{useYamlActivityEvents-Cum02Ej9.js.map → useYamlActivityEvents-ocmj11e_.js.map} +1 -1
  202. package/dashboard/dist/assets/{users-NSDgTt-z.js → users-Ce5r-JAv.js} +2 -2
  203. package/dashboard/dist/assets/{users-NSDgTt-z.js.map → users-Ce5r-JAv.js.map} +1 -1
  204. package/dashboard/dist/assets/{workflows-k0XRdGXx.js → workflows-ykIeVbRJ.js} +2 -2
  205. package/dashboard/dist/assets/{workflows-k0XRdGXx.js.map → workflows-ykIeVbRJ.js.map} +1 -1
  206. package/dashboard/dist/assets/{yaml-workflows-DAre8I78.js → yaml-workflows-WypmKYht.js} +2 -2
  207. package/dashboard/dist/assets/{yaml-workflows-DAre8I78.js.map → yaml-workflows-WypmKYht.js.map} +1 -1
  208. package/dashboard/dist/index.html +1 -1
  209. package/docs/api/sdk/auth.md +27 -0
  210. package/docs/api/sdk/bot-accounts.md +243 -0
  211. package/docs/api/sdk/controlplane.md +103 -0
  212. package/docs/api/sdk/dba.md +52 -0
  213. package/docs/api/sdk/escalations.md +374 -0
  214. package/docs/api/sdk/events.md +68 -0
  215. package/docs/api/sdk/exports.md +124 -0
  216. package/docs/api/sdk/insight.md +112 -0
  217. package/docs/api/sdk/maintenance.md +54 -0
  218. package/docs/api/sdk/mcp-runs.md +71 -0
  219. package/docs/api/sdk/mcp.md +250 -0
  220. package/docs/api/sdk/namespaces.md +43 -0
  221. package/docs/api/sdk/roles.md +183 -0
  222. package/docs/api/sdk/settings.md +24 -0
  223. package/docs/api/sdk/tasks.md +120 -0
  224. package/docs/api/sdk/users.md +196 -0
  225. package/docs/api/sdk/workflow-sets.md +135 -0
  226. package/docs/api/sdk/workflows.md +271 -0
  227. package/docs/api/sdk/yaml-workflows.md +408 -0
  228. package/package.json +1 -1
  229. package/dashboard/dist/assets/index-BwN3KP_L.js.map +0 -1
  230. package/docs/epic-integration.md +0 -224
  231. package/docs/workflow-builder.md +0 -371
  232. /package/docs/api/{dba.md → http/dba.md} +0 -0
  233. /package/docs/api/{escalations.md → http/escalations.md} +0 -0
  234. /package/docs/api/{exports.md → http/exports.md} +0 -0
  235. /package/docs/api/{maintenance.md → http/maintenance.md} +0 -0
  236. /package/docs/api/{mcp-runs.md → http/mcp-runs.md} +0 -0
  237. /package/docs/api/{mcp-servers.md → http/mcp-servers.md} +0 -0
  238. /package/docs/api/{namespaces.md → http/namespaces.md} +0 -0
  239. /package/docs/api/{roles.md → http/roles.md} +0 -0
  240. /package/docs/api/{service-accounts.md → http/service-accounts.md} +0 -0
  241. /package/docs/api/{settings.md → http/settings.md} +0 -0
  242. /package/docs/api/{tasks.md → http/tasks.md} +0 -0
  243. /package/docs/api/{users.md → http/users.md} +0 -0
  244. /package/docs/api/{workflows.md → http/workflows.md} +0 -0
  245. /package/docs/api/{yaml-workflows.md → http/yaml-workflows.md} +0 -0
@@ -0,0 +1,120 @@
1
+ # lt.tasks
2
+
3
+ Query workflow tasks and processes tracked by the Long Tail interceptor.
4
+
5
+ ## list
6
+
7
+ List tasks with optional filters.
8
+
9
+ ```typescript
10
+ const result = await lt.tasks.list({
11
+ status: 'pending',
12
+ workflow_type: 'reviewContent',
13
+ limit: 25,
14
+ });
15
+ ```
16
+
17
+ **Parameters:**
18
+
19
+ | Field | Type | Required | Description |
20
+ |-------|------|----------|-------------|
21
+ | `status` | `string` | No | Filter by `pending` or `completed` |
22
+ | `lt_type` | `string` | No | Filter by interceptor classification |
23
+ | `workflow_type` | `string` | No | Filter by workflow function name |
24
+ | `workflow_id` | `string` | No | Filter by HotMesh workflow ID |
25
+ | `parent_workflow_id` | `string` | No | Filter by parent orchestrator ID |
26
+ | `origin_id` | `string` | No | Filter by root process origin ID |
27
+ | `limit` | `number` | No | Max results (default: 50) |
28
+ | `offset` | `number` | No | Pagination offset (default: 0) |
29
+
30
+ **Returns:** `LTApiResult<{ tasks, total }>`
31
+
32
+ **Auth:** Not required
33
+
34
+ ---
35
+
36
+ ## get
37
+
38
+ Get a single task by ID.
39
+
40
+ ```typescript
41
+ const result = await lt.tasks.get({ id: 'task_abc123' });
42
+ ```
43
+
44
+ **Parameters:**
45
+
46
+ | Field | Type | Required | Description |
47
+ |-------|------|----------|-------------|
48
+ | `id` | `string` | Yes | Task UUID |
49
+
50
+ **Returns:** `LTApiResult<Task>` -- returns status 404 if not found.
51
+
52
+ **Auth:** Not required
53
+
54
+ ---
55
+
56
+ ## listProcesses
57
+
58
+ List processes (grouped by origin_id) with optional filters.
59
+
60
+ ```typescript
61
+ const result = await lt.tasks.listProcesses({
62
+ workflow_type: 'reviewContent',
63
+ status: 'pending',
64
+ limit: 20,
65
+ });
66
+ ```
67
+
68
+ **Parameters:**
69
+
70
+ | Field | Type | Required | Description |
71
+ |-------|------|----------|-------------|
72
+ | `limit` | `number` | No | Max results (default: 50) |
73
+ | `offset` | `number` | No | Pagination offset |
74
+ | `workflow_type` | `string` | No | Filter by workflow type |
75
+ | `status` | `string` | No | Filter by status |
76
+ | `search` | `string` | No | Full-text search across process fields |
77
+
78
+ **Returns:** `LTApiResult<{ processes, total }>`
79
+
80
+ **Auth:** Not required
81
+
82
+ ---
83
+
84
+ ## getProcess
85
+
86
+ Get a single process with all its tasks and escalations.
87
+
88
+ ```typescript
89
+ const result = await lt.tasks.getProcess({ originId: 'origin_xyz' });
90
+ ```
91
+
92
+ **Parameters:**
93
+
94
+ | Field | Type | Required | Description |
95
+ |-------|------|----------|-------------|
96
+ | `originId` | `string` | Yes | Root process origin ID |
97
+
98
+ **Returns:** `LTApiResult<{ origin_id, tasks, escalations }>`
99
+
100
+ **Auth:** Not required
101
+
102
+ ---
103
+
104
+ ## getProcessStats
105
+
106
+ Return aggregate process statistics.
107
+
108
+ ```typescript
109
+ const result = await lt.tasks.getProcessStats({ period: '24h' });
110
+ ```
111
+
112
+ **Parameters:**
113
+
114
+ | Field | Type | Required | Description |
115
+ |-------|------|----------|-------------|
116
+ | `period` | `string` | No | Time window (`1h`, `24h`, `7d`, `30d`) |
117
+
118
+ **Returns:** `LTApiResult<ProcessStats>`
119
+
120
+ **Auth:** Not required
@@ -0,0 +1,196 @@
1
+ # lt.users
2
+
3
+ Manage user accounts and their role assignments.
4
+
5
+ ## list
6
+
7
+ List users with optional filters.
8
+
9
+ ```typescript
10
+ const result = await lt.users.list({
11
+ role: 'reviewer',
12
+ roleType: 'admin',
13
+ limit: 50,
14
+ });
15
+ ```
16
+
17
+ **Parameters:**
18
+
19
+ | Field | Type | Required | Description |
20
+ |-------|------|----------|-------------|
21
+ | `role` | `string` | No | Filter by role name |
22
+ | `roleType` | `string` | No | Filter by role type (`superadmin`, `admin`, `member`) |
23
+ | `status` | `string` | No | Filter by user status |
24
+ | `limit` | `number` | No | Max results |
25
+ | `offset` | `number` | No | Pagination offset |
26
+
27
+ **Returns:** `LTApiResult<User[]>`
28
+
29
+ **Auth:** Not required
30
+
31
+ ---
32
+
33
+ ## get
34
+
35
+ Retrieve a single user by ID.
36
+
37
+ ```typescript
38
+ const result = await lt.users.get({ id: 'user_123' });
39
+ ```
40
+
41
+ **Parameters:**
42
+
43
+ | Field | Type | Required | Description |
44
+ |-------|------|----------|-------------|
45
+ | `id` | `string` | Yes | User UUID |
46
+
47
+ **Returns:** `LTApiResult<User>` -- returns 404 if not found.
48
+
49
+ **Auth:** Not required
50
+
51
+ ---
52
+
53
+ ## create
54
+
55
+ Create a new user.
56
+
57
+ ```typescript
58
+ const result = await lt.users.create({
59
+ external_id: 'jane.doe',
60
+ email: 'jane@example.com',
61
+ display_name: 'Jane Doe',
62
+ roles: [{ role: 'reviewer', type: 'member' }],
63
+ });
64
+ ```
65
+
66
+ **Parameters:**
67
+
68
+ | Field | Type | Required | Description |
69
+ |-------|------|----------|-------------|
70
+ | `external_id` | `string` | Yes | External system identifier |
71
+ | `email` | `string` | No | Email address |
72
+ | `display_name` | `string` | No | Display name |
73
+ | `roles` | `{ role: string; type: string }[]` | No | Initial role assignments (type: `superadmin`, `admin`, or `member`) |
74
+ | `metadata` | `Record<string, any>` | No | Arbitrary key-value metadata |
75
+
76
+ **Returns:** `LTApiResult<User>` (status 201) -- returns 409 if `external_id` already exists.
77
+
78
+ **Auth:** Not required
79
+
80
+ ---
81
+
82
+ ## update
83
+
84
+ Update an existing user's profile fields. Only provided fields are changed.
85
+
86
+ ```typescript
87
+ const result = await lt.users.update({
88
+ id: 'user_123',
89
+ display_name: 'Jane Smith',
90
+ metadata: { department: 'engineering' },
91
+ });
92
+ ```
93
+
94
+ **Parameters:**
95
+
96
+ | Field | Type | Required | Description |
97
+ |-------|------|----------|-------------|
98
+ | `id` | `string` | Yes | User UUID |
99
+ | `email` | `string` | No | New email address |
100
+ | `display_name` | `string` | No | New display name |
101
+ | `status` | `string` | No | New user status |
102
+ | `metadata` | `Record<string, any>` | No | Replacement metadata object |
103
+
104
+ **Returns:** `LTApiResult<User>` -- returns 404 if not found.
105
+
106
+ **Auth:** Not required
107
+
108
+ ---
109
+
110
+ ## delete
111
+
112
+ Delete a user by ID.
113
+
114
+ ```typescript
115
+ const result = await lt.users.delete({ id: 'user_123' });
116
+ ```
117
+
118
+ **Parameters:**
119
+
120
+ | Field | Type | Required | Description |
121
+ |-------|------|----------|-------------|
122
+ | `id` | `string` | Yes | User UUID |
123
+
124
+ **Returns:** `LTApiResult<{ deleted: true }>` -- returns 404 if not found.
125
+
126
+ **Auth:** Not required
127
+
128
+ ---
129
+
130
+ ## getRoles
131
+
132
+ Retrieve all roles assigned to a user.
133
+
134
+ ```typescript
135
+ const result = await lt.users.getRoles({ id: 'user_123' });
136
+ ```
137
+
138
+ **Parameters:**
139
+
140
+ | Field | Type | Required | Description |
141
+ |-------|------|----------|-------------|
142
+ | `id` | `string` | Yes | User UUID |
143
+
144
+ **Returns:** `LTApiResult<{ roles: Role[] }>`
145
+
146
+ **Auth:** Not required
147
+
148
+ ---
149
+
150
+ ## addRole
151
+
152
+ Assign a role to a user.
153
+
154
+ ```typescript
155
+ const result = await lt.users.addRole({
156
+ id: 'user_123',
157
+ role: 'reviewer',
158
+ type: 'member',
159
+ });
160
+ ```
161
+
162
+ **Parameters:**
163
+
164
+ | Field | Type | Required | Description |
165
+ |-------|------|----------|-------------|
166
+ | `id` | `string` | Yes | User UUID |
167
+ | `role` | `string` | Yes | Role name to assign |
168
+ | `type` | `string` | Yes | Role type (`superadmin`, `admin`, or `member`) |
169
+
170
+ **Returns:** `LTApiResult<UserRole>` (status 201)
171
+
172
+ **Auth:** Not required
173
+
174
+ ---
175
+
176
+ ## removeRole
177
+
178
+ Remove a role from a user.
179
+
180
+ ```typescript
181
+ const result = await lt.users.removeRole({
182
+ id: 'user_123',
183
+ role: 'reviewer',
184
+ });
185
+ ```
186
+
187
+ **Parameters:**
188
+
189
+ | Field | Type | Required | Description |
190
+ |-------|------|----------|-------------|
191
+ | `id` | `string` | Yes | User UUID |
192
+ | `role` | `string` | Yes | Role name to remove |
193
+
194
+ **Returns:** `LTApiResult<{ removed: true }>` -- returns 404 if role not found.
195
+
196
+ **Auth:** Not required
@@ -0,0 +1,135 @@
1
+ # lt.workflowSets
2
+
3
+ Manage compositional workflow sets: plan, build, and deploy groups of related workflows.
4
+
5
+ ## create
6
+
7
+ Create a new workflow set and kick off the LLM-powered planner.
8
+
9
+ ```typescript
10
+ const result = await lt.workflowSets.create({
11
+ name: 'onboarding-pipeline',
12
+ specification: 'A multi-step onboarding pipeline that verifies email, provisions accounts, and sends a welcome message',
13
+ });
14
+ ```
15
+
16
+ **Parameters:**
17
+
18
+ | Field | Type | Required | Description |
19
+ |-------|------|----------|-------------|
20
+ | `name` | `string` | Yes | Unique name for the workflow set |
21
+ | `description` | `string` | No | Description of the workflow set |
22
+ | `specification` | `string` | Yes | Free-text specification the planner uses to generate workflows |
23
+
24
+ **Returns:** `LTApiResult<{ ...WorkflowSet, source_workflow_id: string, planner_workflow_id: string }>`
25
+
26
+ **Auth:** Optional (userId forwarded to the planner when provided)
27
+
28
+ ---
29
+
30
+ ## list
31
+
32
+ List workflow sets with optional filtering and pagination.
33
+
34
+ ```typescript
35
+ const result = await lt.workflowSets.list({ status: 'planned', limit: 10 });
36
+ ```
37
+
38
+ **Parameters:**
39
+
40
+ | Field | Type | Required | Description |
41
+ |-------|------|----------|-------------|
42
+ | `status` | `string` | No | Filter by workflow set status |
43
+ | `search` | `string` | No | Free-text search across set names or descriptions |
44
+ | `limit` | `number` | No | Maximum number of results to return |
45
+ | `offset` | `number` | No | Pagination offset |
46
+
47
+ **Returns:** `LTApiResult<WorkflowSet[]>`
48
+
49
+ **Auth:** Not required
50
+
51
+ ---
52
+
53
+ ## get
54
+
55
+ Retrieve a single workflow set by ID.
56
+
57
+ ```typescript
58
+ const result = await lt.workflowSets.get({ id: 'set-id' });
59
+ ```
60
+
61
+ **Parameters:**
62
+
63
+ | Field | Type | Required | Description |
64
+ |-------|------|----------|-------------|
65
+ | `id` | `string` | Yes | Unique identifier of the workflow set |
66
+
67
+ **Returns:** `LTApiResult<WorkflowSet>`
68
+
69
+ **Auth:** Not required
70
+
71
+ ---
72
+
73
+ ## updatePlan
74
+
75
+ Replace the plan and optional namespaces on a workflow set.
76
+
77
+ ```typescript
78
+ const result = await lt.workflowSets.updatePlan({
79
+ id: 'set-id',
80
+ plan: [{ name: 'step1', description: 'Verify email' }],
81
+ namespaces: [{ name: 'onboarding', description: 'Onboarding namespace' }],
82
+ });
83
+ ```
84
+
85
+ **Parameters:**
86
+
87
+ | Field | Type | Required | Description |
88
+ |-------|------|----------|-------------|
89
+ | `id` | `string` | Yes | Unique identifier of the workflow set to update |
90
+ | `plan` | `any[]` | Yes | Array of plan entries |
91
+ | `namespaces` | `any[]` | No | Array of namespace definitions associated with the plan |
92
+
93
+ **Returns:** `LTApiResult<WorkflowSet>`
94
+
95
+ **Auth:** Not required
96
+
97
+ ---
98
+
99
+ ## build
100
+
101
+ Transition a workflow set from "planned" to "building" status.
102
+
103
+ ```typescript
104
+ const result = await lt.workflowSets.build({ id: 'set-id' });
105
+ ```
106
+
107
+ **Parameters:**
108
+
109
+ | Field | Type | Required | Description |
110
+ |-------|------|----------|-------------|
111
+ | `id` | `string` | Yes | Unique identifier of the workflow set to build |
112
+
113
+ **Returns:** `LTApiResult<{ status: 'building', id: string }>`
114
+
115
+ **Auth:** Not required
116
+
117
+ ---
118
+
119
+ ## deploy
120
+
121
+ Transition a workflow set to "deploying" status.
122
+
123
+ ```typescript
124
+ const result = await lt.workflowSets.deploy({ id: 'set-id' });
125
+ ```
126
+
127
+ **Parameters:**
128
+
129
+ | Field | Type | Required | Description |
130
+ |-------|------|----------|-------------|
131
+ | `id` | `string` | Yes | Unique identifier of the workflow set to deploy |
132
+
133
+ **Returns:** `LTApiResult<{ status: 'deploying', id: string }>`
134
+
135
+ **Auth:** Not required
@@ -0,0 +1,271 @@
1
+ # lt.workflows
2
+
3
+ Invoke, inspect, and configure HotMesh Durable workflows.
4
+
5
+ ## invoke
6
+
7
+ Start a workflow execution.
8
+
9
+ Resolves the task queue, enforces auth/role constraints, builds the LTEnvelope with IAM context, and delegates to the Durable client. Any `WorkflowOptions` field (`workflowId`, `expire`, `entity`, `namespace`, `search`, `signalIn`, `pending`, etc.) can be passed via `options`.
10
+
11
+ ```typescript
12
+ const result = await lt.workflows.invoke({
13
+ type: 'reviewContent',
14
+ data: { url: 'https://example.com/page' },
15
+ metadata: { source: 'dashboard' },
16
+ });
17
+ ```
18
+
19
+ **Parameters:**
20
+
21
+ | Field | Type | Required | Description |
22
+ |-------|------|----------|-------------|
23
+ | `type` | `string` | Yes | Workflow function name |
24
+ | `data` | `Record<string, any>` | No | Envelope data payload |
25
+ | `metadata` | `Record<string, any>` | No | Envelope metadata |
26
+ | `execute_as` | `string` | No | Service account for proxy invocation |
27
+ | `options` | `Record<string, any>` | No | Passthrough to Durable WorkflowOptions |
28
+
29
+ **Returns:** `LTApiResult<{ workflowId, message }>` (status 202)
30
+
31
+ **Auth:** Required
32
+
33
+ ---
34
+
35
+ ## getStatus
36
+
37
+ Get the execution status of a workflow.
38
+
39
+ ```typescript
40
+ const result = await lt.workflows.getStatus({ workflowId: 'wf_abc' });
41
+ ```
42
+
43
+ **Parameters:**
44
+
45
+ | Field | Type | Required | Description |
46
+ |-------|------|----------|-------------|
47
+ | `workflowId` | `string` | Yes | HotMesh workflow ID |
48
+
49
+ **Returns:** `LTApiResult<{ workflowId, status }>` -- status 0 = completed, 1 = running. Returns 404 if not found.
50
+
51
+ **Auth:** Not required
52
+
53
+ ---
54
+
55
+ ## getResult
56
+
57
+ Get the result of a completed workflow.
58
+
59
+ Returns 202 if the workflow is still running. Never blocks.
60
+
61
+ ```typescript
62
+ const result = await lt.workflows.getResult({ workflowId: 'wf_abc' });
63
+ ```
64
+
65
+ **Parameters:**
66
+
67
+ | Field | Type | Required | Description |
68
+ |-------|------|----------|-------------|
69
+ | `workflowId` | `string` | Yes | HotMesh workflow ID |
70
+
71
+ **Returns:** `LTApiResult<{ workflowId, result }>` (status 200 when complete) or `LTApiResult<{ workflowId, status: 'running' }>` (status 202 when still running). Returns 404 if not found.
72
+
73
+ **Auth:** Not required
74
+
75
+ ---
76
+
77
+ ## terminate
78
+
79
+ Terminate a running workflow.
80
+
81
+ ```typescript
82
+ const result = await lt.workflows.terminate({ workflowId: 'wf_abc' });
83
+ ```
84
+
85
+ **Parameters:**
86
+
87
+ | Field | Type | Required | Description |
88
+ |-------|------|----------|-------------|
89
+ | `workflowId` | `string` | Yes | HotMesh workflow ID |
90
+
91
+ **Returns:** `LTApiResult<{ terminated: true, workflowId }>` -- returns 404 if not found.
92
+
93
+ **Auth:** Not required
94
+
95
+ ---
96
+
97
+ ## export
98
+
99
+ Export the full state of a workflow.
100
+
101
+ Returns the serialized workflow state including all activity results, signals, and metadata.
102
+
103
+ ```typescript
104
+ const result = await lt.workflows.export({ workflowId: 'wf_abc' });
105
+ ```
106
+
107
+ **Parameters:**
108
+
109
+ | Field | Type | Required | Description |
110
+ |-------|------|----------|-------------|
111
+ | `workflowId` | `string` | Yes | HotMesh workflow ID |
112
+
113
+ **Returns:** `LTApiResult<ExportedState>` -- returns 404 if not found.
114
+
115
+ **Auth:** Not required
116
+
117
+ ---
118
+
119
+ ## listWorkers
120
+
121
+ List active workflow workers with their registration status.
122
+
123
+ ```typescript
124
+ const result = await lt.workflows.listWorkers({ include_system: false });
125
+ ```
126
+
127
+ **Parameters:**
128
+
129
+ | Field | Type | Required | Description |
130
+ |-------|------|----------|-------------|
131
+ | `include_system` | `boolean` | No | Include system workflows (default: false) |
132
+
133
+ **Returns:** `LTApiResult<{ workers: [{ name, task_queue, registered, system }] }>`
134
+
135
+ **Auth:** Not required
136
+
137
+ ---
138
+
139
+ ## listDiscovered
140
+
141
+ Discover all known workflow types from workers, history, and config.
142
+
143
+ Merges three sources: active in-memory workers, historical entities from the durable jobs table, and registered workflow configs.
144
+
145
+ ```typescript
146
+ const result = await lt.workflows.listDiscovered({ include_system: false });
147
+ ```
148
+
149
+ **Parameters:**
150
+
151
+ | Field | Type | Required | Description |
152
+ |-------|------|----------|-------------|
153
+ | `include_system` | `boolean` | No | Include system workflows (default: false) |
154
+
155
+ **Returns:** `LTApiResult<{ workflows: [{ workflow_type, task_queue, registered, active, invocable, system, description, roles, invocation_roles, execute_as }] }>`
156
+
157
+ **Auth:** Not required
158
+
159
+ ---
160
+
161
+ ## getCronStatus
162
+
163
+ List all cron-scheduled workflows and their active state.
164
+
165
+ ```typescript
166
+ const result = await lt.workflows.getCronStatus();
167
+ ```
168
+
169
+ **Parameters:** None (pass `{}` or `undefined`).
170
+
171
+ **Returns:** `LTApiResult<{ schedules: [{ workflow_type, cron_schedule, description, task_queue, invocable, active, envelope_schema }] }>`
172
+
173
+ **Auth:** Not required
174
+
175
+ ---
176
+
177
+ ## listConfigs
178
+
179
+ List all registered workflow configurations.
180
+
181
+ ```typescript
182
+ const result = await lt.workflows.listConfigs();
183
+ ```
184
+
185
+ **Parameters:** None (pass `{}` or `undefined`).
186
+
187
+ **Returns:** `LTApiResult<{ workflows: LTWorkflowConfig[] }>`
188
+
189
+ **Auth:** Not required
190
+
191
+ ---
192
+
193
+ ## getConfig
194
+
195
+ Get a single workflow configuration by type.
196
+
197
+ ```typescript
198
+ const result = await lt.workflows.getConfig({ type: 'reviewContent' });
199
+ ```
200
+
201
+ **Parameters:**
202
+
203
+ | Field | Type | Required | Description |
204
+ |-------|------|----------|-------------|
205
+ | `type` | `string` | Yes | Workflow type name |
206
+
207
+ **Returns:** `LTApiResult<LTWorkflowConfig>` -- returns 404 if not found.
208
+
209
+ **Auth:** Not required
210
+
211
+ ---
212
+
213
+ ## upsertConfig
214
+
215
+ Create or replace a workflow configuration.
216
+
217
+ Invalidates the config cache and restarts the cron schedule if one is defined. Idempotent.
218
+
219
+ ```typescript
220
+ const result = await lt.workflows.upsertConfig({
221
+ type: 'reviewContent',
222
+ invocable: true,
223
+ task_queue: 'content-review',
224
+ default_role: 'reviewer',
225
+ description: 'Review flagged content',
226
+ });
227
+ ```
228
+
229
+ **Parameters:**
230
+
231
+ | Field | Type | Required | Description |
232
+ |-------|------|----------|-------------|
233
+ | `type` | `string` | Yes | Workflow type name |
234
+ | `invocable` | `boolean` | No | Whether the workflow can be started via the API |
235
+ | `task_queue` | `string \| null` | No | HotMesh task queue |
236
+ | `default_role` | `string` | No | Default escalation role |
237
+ | `description` | `string \| null` | No | Human-readable description |
238
+ | `execute_as` | `string \| null` | No | Service account for proxy invocation |
239
+ | `roles` | `string[]` | No | Roles that can resolve escalations |
240
+ | `invocation_roles` | `string[]` | No | Roles that can invoke this workflow |
241
+ | `consumes` | `string[]` | No | Workflow types whose data this workflow consumes |
242
+ | `tool_tags` | `string[]` | No | MCP tool tags for discovery |
243
+ | `envelope_schema` | `any` | No | JSON Schema for envelope.data validation |
244
+ | `resolver_schema` | `any` | No | JSON Schema for resolver payload validation |
245
+ | `cron_schedule` | `string \| null` | No | Cron expression for scheduled execution |
246
+
247
+ **Returns:** `LTApiResult<LTWorkflowConfig>`
248
+
249
+ **Auth:** Not required
250
+
251
+ ---
252
+
253
+ ## deleteConfig
254
+
255
+ Delete a workflow configuration.
256
+
257
+ Removes the config record and invalidates the cache. Active workers continue running.
258
+
259
+ ```typescript
260
+ const result = await lt.workflows.deleteConfig({ type: 'reviewContent' });
261
+ ```
262
+
263
+ **Parameters:**
264
+
265
+ | Field | Type | Required | Description |
266
+ |-------|------|----------|-------------|
267
+ | `type` | `string` | Yes | Workflow type name |
268
+
269
+ **Returns:** `LTApiResult<{ deleted: true, workflow_type }>` -- returns 404 if not found.
270
+
271
+ **Auth:** Not required