@marktoflow/core 2.0.0-alpha.15 → 2.0.0-alpha.16

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 (109) hide show
  1. package/README.md +24 -365
  2. package/dist/built-in-operations.d.ts +10 -0
  3. package/dist/built-in-operations.d.ts.map +1 -1
  4. package/dist/built-in-operations.js +386 -1
  5. package/dist/built-in-operations.js.map +1 -1
  6. package/dist/credentials.d.ts +60 -1
  7. package/dist/credentials.d.ts.map +1 -1
  8. package/dist/credentials.js +229 -4
  9. package/dist/credentials.js.map +1 -1
  10. package/dist/engine.d.ts +36 -1
  11. package/dist/engine.d.ts.map +1 -1
  12. package/dist/engine.js +462 -21
  13. package/dist/engine.js.map +1 -1
  14. package/dist/index.d.ts +5 -2
  15. package/dist/index.d.ts.map +1 -1
  16. package/dist/index.js +9 -3
  17. package/dist/index.js.map +1 -1
  18. package/dist/models.d.ts +399 -6
  19. package/dist/models.d.ts.map +1 -1
  20. package/dist/models.js +60 -1
  21. package/dist/models.js.map +1 -1
  22. package/dist/oauth-manager.d.ts +128 -0
  23. package/dist/oauth-manager.d.ts.map +1 -0
  24. package/dist/oauth-manager.js +291 -0
  25. package/dist/oauth-manager.js.map +1 -0
  26. package/dist/oauth-refresh.d.ts +37 -0
  27. package/dist/oauth-refresh.d.ts.map +1 -0
  28. package/dist/oauth-refresh.js +76 -0
  29. package/dist/oauth-refresh.js.map +1 -0
  30. package/dist/parser.d.ts.map +1 -1
  31. package/dist/parser.js +19 -0
  32. package/dist/parser.js.map +1 -1
  33. package/dist/sdk-registry.d.ts +7 -1
  34. package/dist/sdk-registry.d.ts.map +1 -1
  35. package/dist/sdk-registry.js +38 -9
  36. package/dist/sdk-registry.js.map +1 -1
  37. package/dist/secret-providers/index.d.ts +12 -0
  38. package/dist/secret-providers/index.d.ts.map +1 -0
  39. package/dist/secret-providers/index.js +11 -0
  40. package/dist/secret-providers/index.js.map +1 -0
  41. package/dist/secret-providers/providers/aws.d.ts +32 -0
  42. package/dist/secret-providers/providers/aws.d.ts.map +1 -0
  43. package/dist/secret-providers/providers/aws.js +118 -0
  44. package/dist/secret-providers/providers/aws.js.map +1 -0
  45. package/dist/secret-providers/providers/azure.d.ts +40 -0
  46. package/dist/secret-providers/providers/azure.d.ts.map +1 -0
  47. package/dist/secret-providers/providers/azure.js +170 -0
  48. package/dist/secret-providers/providers/azure.js.map +1 -0
  49. package/dist/secret-providers/providers/env.d.ts +26 -0
  50. package/dist/secret-providers/providers/env.d.ts.map +1 -0
  51. package/dist/secret-providers/providers/env.js +59 -0
  52. package/dist/secret-providers/providers/env.js.map +1 -0
  53. package/dist/secret-providers/providers/vault.d.ts +39 -0
  54. package/dist/secret-providers/providers/vault.d.ts.map +1 -0
  55. package/dist/secret-providers/providers/vault.js +180 -0
  56. package/dist/secret-providers/providers/vault.js.map +1 -0
  57. package/dist/secret-providers/secret-manager.d.ts +72 -0
  58. package/dist/secret-providers/secret-manager.d.ts.map +1 -0
  59. package/dist/secret-providers/secret-manager.js +226 -0
  60. package/dist/secret-providers/secret-manager.js.map +1 -0
  61. package/dist/secret-providers/types.d.ts +105 -0
  62. package/dist/secret-providers/types.d.ts.map +1 -0
  63. package/dist/secret-providers/types.js +8 -0
  64. package/dist/secret-providers/types.js.map +1 -0
  65. package/dist/secrets/index.d.ts +12 -0
  66. package/dist/secrets/index.d.ts.map +1 -0
  67. package/dist/secrets/index.js +11 -0
  68. package/dist/secrets/index.js.map +1 -0
  69. package/dist/secrets/providers/aws.d.ts +32 -0
  70. package/dist/secrets/providers/aws.d.ts.map +1 -0
  71. package/dist/secrets/providers/aws.js +118 -0
  72. package/dist/secrets/providers/aws.js.map +1 -0
  73. package/dist/secrets/providers/azure.d.ts +40 -0
  74. package/dist/secrets/providers/azure.d.ts.map +1 -0
  75. package/dist/secrets/providers/azure.js +170 -0
  76. package/dist/secrets/providers/azure.js.map +1 -0
  77. package/dist/secrets/providers/env.d.ts +26 -0
  78. package/dist/secrets/providers/env.d.ts.map +1 -0
  79. package/dist/secrets/providers/env.js +59 -0
  80. package/dist/secrets/providers/env.js.map +1 -0
  81. package/dist/secrets/providers/vault.d.ts +39 -0
  82. package/dist/secrets/providers/vault.d.ts.map +1 -0
  83. package/dist/secrets/providers/vault.js +180 -0
  84. package/dist/secrets/providers/vault.js.map +1 -0
  85. package/dist/secrets/secret-manager.d.ts +72 -0
  86. package/dist/secrets/secret-manager.d.ts.map +1 -0
  87. package/dist/secrets/secret-manager.js +226 -0
  88. package/dist/secrets/secret-manager.js.map +1 -0
  89. package/dist/secrets/types.d.ts +105 -0
  90. package/dist/secrets/types.d.ts.map +1 -0
  91. package/dist/secrets/types.js +8 -0
  92. package/dist/secrets/types.js.map +1 -0
  93. package/package.json +1 -1
  94. package/dist/expression-helpers.d.ts +0 -309
  95. package/dist/expression-helpers.d.ts.map +0 -1
  96. package/dist/expression-helpers.js +0 -697
  97. package/dist/expression-helpers.js.map +0 -1
  98. package/dist/pipeline-parser.d.ts +0 -38
  99. package/dist/pipeline-parser.d.ts.map +0 -1
  100. package/dist/pipeline-parser.js +0 -219
  101. package/dist/pipeline-parser.js.map +0 -1
  102. package/dist/regex-operators.d.ts +0 -86
  103. package/dist/regex-operators.d.ts.map +0 -1
  104. package/dist/regex-operators.js +0 -383
  105. package/dist/regex-operators.js.map +0 -1
  106. package/dist/version.d.ts +0 -8
  107. package/dist/version.d.ts.map +0 -1
  108. package/dist/version.js +0 -8
  109. package/dist/version.js.map +0 -1
package/dist/models.d.ts CHANGED
@@ -18,6 +18,8 @@ export declare const StepType: {
18
18
  readonly PARALLEL: "parallel";
19
19
  readonly TRY: "try";
20
20
  readonly SCRIPT: "script";
21
+ readonly WAIT: "wait";
22
+ readonly MERGE: "merge";
21
23
  };
22
24
  export type StepType = (typeof StepType)[keyof typeof StepType];
23
25
  export declare const StepStatus: {
@@ -130,6 +132,55 @@ export declare const ToolConfigSchema: z.ZodObject<{
130
132
  options?: Record<string, unknown> | undefined;
131
133
  auth?: Record<string, string> | undefined;
132
134
  }>;
135
+ export declare const WorkflowSecretProviderSchema: z.ZodObject<{
136
+ type: z.ZodEnum<["vault", "aws", "azure", "env"]>;
137
+ config: z.ZodRecord<z.ZodString, z.ZodUnknown>;
138
+ cacheEnabled: z.ZodOptional<z.ZodBoolean>;
139
+ }, "strip", z.ZodTypeAny, {
140
+ type: "vault" | "aws" | "azure" | "env";
141
+ config: Record<string, unknown>;
142
+ cacheEnabled?: boolean | undefined;
143
+ }, {
144
+ type: "vault" | "aws" | "azure" | "env";
145
+ config: Record<string, unknown>;
146
+ cacheEnabled?: boolean | undefined;
147
+ }>;
148
+ export declare const WorkflowSecretsConfigSchema: z.ZodObject<{
149
+ providers: z.ZodOptional<z.ZodArray<z.ZodObject<{
150
+ type: z.ZodEnum<["vault", "aws", "azure", "env"]>;
151
+ config: z.ZodRecord<z.ZodString, z.ZodUnknown>;
152
+ cacheEnabled: z.ZodOptional<z.ZodBoolean>;
153
+ }, "strip", z.ZodTypeAny, {
154
+ type: "vault" | "aws" | "azure" | "env";
155
+ config: Record<string, unknown>;
156
+ cacheEnabled?: boolean | undefined;
157
+ }, {
158
+ type: "vault" | "aws" | "azure" | "env";
159
+ config: Record<string, unknown>;
160
+ cacheEnabled?: boolean | undefined;
161
+ }>, "many">>;
162
+ defaultCacheTTL: z.ZodOptional<z.ZodNumber>;
163
+ referencePrefix: z.ZodOptional<z.ZodString>;
164
+ throwOnNotFound: z.ZodOptional<z.ZodBoolean>;
165
+ }, "strip", z.ZodTypeAny, {
166
+ providers?: {
167
+ type: "vault" | "aws" | "azure" | "env";
168
+ config: Record<string, unknown>;
169
+ cacheEnabled?: boolean | undefined;
170
+ }[] | undefined;
171
+ defaultCacheTTL?: number | undefined;
172
+ referencePrefix?: string | undefined;
173
+ throwOnNotFound?: boolean | undefined;
174
+ }, {
175
+ providers?: {
176
+ type: "vault" | "aws" | "azure" | "env";
177
+ config: Record<string, unknown>;
178
+ cacheEnabled?: boolean | undefined;
179
+ }[] | undefined;
180
+ defaultCacheTTL?: number | undefined;
181
+ referencePrefix?: string | undefined;
182
+ throwOnNotFound?: boolean | undefined;
183
+ }>;
133
184
  export declare const ErrorHandlingSchema: z.ZodObject<{
134
185
  action: z.ZodDefault<z.ZodEnum<["continue", "stop", "rollback"]>>;
135
186
  maxRetries: z.ZodDefault<z.ZodNumber>;
@@ -684,6 +735,10 @@ declare const ForEachStepSchema: z.ZodObject<{
684
735
  retryDelaySeconds?: number | undefined;
685
736
  fallbackAction?: string | undefined;
686
737
  }>>;
738
+ /** Process items in batches of this size. When set, {{ batch }} contains the current batch. */
739
+ batchSize: z.ZodOptional<z.ZodNumber>;
740
+ /** Pause between batches in milliseconds (useful for rate limiting) */
741
+ pauseBetweenBatches: z.ZodOptional<z.ZodNumber>;
687
742
  }, "strip", z.ZodTypeAny, {
688
743
  type: "for_each";
689
744
  id: string;
@@ -715,6 +770,8 @@ declare const ForEachStepSchema: z.ZodObject<{
715
770
  } | undefined;
716
771
  steps?: any;
717
772
  indexVariable?: string | undefined;
773
+ batchSize?: number | undefined;
774
+ pauseBetweenBatches?: number | undefined;
718
775
  }, {
719
776
  type: "for_each";
720
777
  id: string;
@@ -746,6 +803,8 @@ declare const ForEachStepSchema: z.ZodObject<{
746
803
  steps?: any;
747
804
  itemVariable?: string | undefined;
748
805
  indexVariable?: string | undefined;
806
+ batchSize?: number | undefined;
807
+ pauseBetweenBatches?: number | undefined;
749
808
  }>;
750
809
  declare const WhileStepSchema: z.ZodObject<{
751
810
  id: z.ZodString;
@@ -1523,6 +1582,277 @@ declare const ScriptStepSchema: z.ZodObject<{
1523
1582
  fallbackAction?: string | undefined;
1524
1583
  } | undefined;
1525
1584
  }>;
1585
+ declare const FormFieldSchema: z.ZodObject<{
1586
+ type: z.ZodEnum<["string", "text", "number", "boolean", "select", "date", "email", "url"]>;
1587
+ label: z.ZodOptional<z.ZodString>;
1588
+ description: z.ZodOptional<z.ZodString>;
1589
+ required: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
1590
+ default: z.ZodOptional<z.ZodUnknown>;
1591
+ options: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1592
+ validation: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1593
+ }, "strip", z.ZodTypeAny, {
1594
+ type: "string" | "number" | "boolean" | "date" | "text" | "select" | "email" | "url";
1595
+ required: boolean;
1596
+ options?: string[] | undefined;
1597
+ validation?: Record<string, unknown> | undefined;
1598
+ description?: string | undefined;
1599
+ default?: unknown;
1600
+ label?: string | undefined;
1601
+ }, {
1602
+ type: "string" | "number" | "boolean" | "date" | "text" | "select" | "email" | "url";
1603
+ options?: string[] | undefined;
1604
+ validation?: Record<string, unknown> | undefined;
1605
+ description?: string | undefined;
1606
+ default?: unknown;
1607
+ label?: string | undefined;
1608
+ required?: boolean | undefined;
1609
+ }>;
1610
+ declare const WaitStepSchema: z.ZodObject<{
1611
+ id: z.ZodString;
1612
+ name: z.ZodOptional<z.ZodString>;
1613
+ conditions: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1614
+ timeout: z.ZodOptional<z.ZodNumber>;
1615
+ outputVariable: z.ZodOptional<z.ZodString>;
1616
+ model: z.ZodOptional<z.ZodString>;
1617
+ agent: z.ZodOptional<z.ZodString>;
1618
+ permissions: z.ZodOptional<z.ZodObject<{
1619
+ read: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodArray<z.ZodString, "many">]>>;
1620
+ write: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodArray<z.ZodString, "many">]>>;
1621
+ execute: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodArray<z.ZodString, "many">]>>;
1622
+ allowedCommands: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1623
+ blockedCommands: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1624
+ allowedDirectories: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1625
+ blockedPaths: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1626
+ network: z.ZodOptional<z.ZodBoolean>;
1627
+ allowedHosts: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1628
+ maxFileSize: z.ZodOptional<z.ZodNumber>;
1629
+ }, "strip", z.ZodTypeAny, {
1630
+ read?: boolean | string[] | undefined;
1631
+ write?: boolean | string[] | undefined;
1632
+ execute?: boolean | string[] | undefined;
1633
+ allowedCommands?: string[] | undefined;
1634
+ blockedCommands?: string[] | undefined;
1635
+ allowedDirectories?: string[] | undefined;
1636
+ blockedPaths?: string[] | undefined;
1637
+ network?: boolean | undefined;
1638
+ allowedHosts?: string[] | undefined;
1639
+ maxFileSize?: number | undefined;
1640
+ }, {
1641
+ read?: boolean | string[] | undefined;
1642
+ write?: boolean | string[] | undefined;
1643
+ execute?: boolean | string[] | undefined;
1644
+ allowedCommands?: string[] | undefined;
1645
+ blockedCommands?: string[] | undefined;
1646
+ allowedDirectories?: string[] | undefined;
1647
+ blockedPaths?: string[] | undefined;
1648
+ network?: boolean | undefined;
1649
+ allowedHosts?: string[] | undefined;
1650
+ maxFileSize?: number | undefined;
1651
+ }>>;
1652
+ } & {
1653
+ type: z.ZodLiteral<"wait">;
1654
+ /** Wait mode: duration (time-based), webhook (callback URL), form (human input) */
1655
+ mode: z.ZodEnum<["duration", "webhook", "form"]>;
1656
+ /** Duration string for mode=duration (e.g., "2h", "30m", "5s") */
1657
+ duration: z.ZodOptional<z.ZodString>;
1658
+ /** Form fields for mode=form */
1659
+ fields: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
1660
+ type: z.ZodEnum<["string", "text", "number", "boolean", "select", "date", "email", "url"]>;
1661
+ label: z.ZodOptional<z.ZodString>;
1662
+ description: z.ZodOptional<z.ZodString>;
1663
+ required: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
1664
+ default: z.ZodOptional<z.ZodUnknown>;
1665
+ options: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1666
+ validation: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1667
+ }, "strip", z.ZodTypeAny, {
1668
+ type: "string" | "number" | "boolean" | "date" | "text" | "select" | "email" | "url";
1669
+ required: boolean;
1670
+ options?: string[] | undefined;
1671
+ validation?: Record<string, unknown> | undefined;
1672
+ description?: string | undefined;
1673
+ default?: unknown;
1674
+ label?: string | undefined;
1675
+ }, {
1676
+ type: "string" | "number" | "boolean" | "date" | "text" | "select" | "email" | "url";
1677
+ options?: string[] | undefined;
1678
+ validation?: Record<string, unknown> | undefined;
1679
+ description?: string | undefined;
1680
+ default?: unknown;
1681
+ label?: string | undefined;
1682
+ required?: boolean | undefined;
1683
+ }>>>;
1684
+ /** Webhook path override for mode=webhook */
1685
+ webhookPath: z.ZodOptional<z.ZodString>;
1686
+ }, "strip", z.ZodTypeAny, {
1687
+ type: "wait";
1688
+ id: string;
1689
+ mode: "webhook" | "duration" | "form";
1690
+ model?: string | undefined;
1691
+ name?: string | undefined;
1692
+ conditions?: string[] | undefined;
1693
+ timeout?: number | undefined;
1694
+ outputVariable?: string | undefined;
1695
+ agent?: string | undefined;
1696
+ permissions?: {
1697
+ read?: boolean | string[] | undefined;
1698
+ write?: boolean | string[] | undefined;
1699
+ execute?: boolean | string[] | undefined;
1700
+ allowedCommands?: string[] | undefined;
1701
+ blockedCommands?: string[] | undefined;
1702
+ allowedDirectories?: string[] | undefined;
1703
+ blockedPaths?: string[] | undefined;
1704
+ network?: boolean | undefined;
1705
+ allowedHosts?: string[] | undefined;
1706
+ maxFileSize?: number | undefined;
1707
+ } | undefined;
1708
+ duration?: string | undefined;
1709
+ fields?: Record<string, {
1710
+ type: "string" | "number" | "boolean" | "date" | "text" | "select" | "email" | "url";
1711
+ required: boolean;
1712
+ options?: string[] | undefined;
1713
+ validation?: Record<string, unknown> | undefined;
1714
+ description?: string | undefined;
1715
+ default?: unknown;
1716
+ label?: string | undefined;
1717
+ }> | undefined;
1718
+ webhookPath?: string | undefined;
1719
+ }, {
1720
+ type: "wait";
1721
+ id: string;
1722
+ mode: "webhook" | "duration" | "form";
1723
+ model?: string | undefined;
1724
+ name?: string | undefined;
1725
+ conditions?: string[] | undefined;
1726
+ timeout?: number | undefined;
1727
+ outputVariable?: string | undefined;
1728
+ agent?: string | undefined;
1729
+ permissions?: {
1730
+ read?: boolean | string[] | undefined;
1731
+ write?: boolean | string[] | undefined;
1732
+ execute?: boolean | string[] | undefined;
1733
+ allowedCommands?: string[] | undefined;
1734
+ blockedCommands?: string[] | undefined;
1735
+ allowedDirectories?: string[] | undefined;
1736
+ blockedPaths?: string[] | undefined;
1737
+ network?: boolean | undefined;
1738
+ allowedHosts?: string[] | undefined;
1739
+ maxFileSize?: number | undefined;
1740
+ } | undefined;
1741
+ duration?: string | undefined;
1742
+ fields?: Record<string, {
1743
+ type: "string" | "number" | "boolean" | "date" | "text" | "select" | "email" | "url";
1744
+ options?: string[] | undefined;
1745
+ validation?: Record<string, unknown> | undefined;
1746
+ description?: string | undefined;
1747
+ default?: unknown;
1748
+ label?: string | undefined;
1749
+ required?: boolean | undefined;
1750
+ }> | undefined;
1751
+ webhookPath?: string | undefined;
1752
+ }>;
1753
+ declare const MergeStepSchema: z.ZodObject<{
1754
+ id: z.ZodString;
1755
+ name: z.ZodOptional<z.ZodString>;
1756
+ conditions: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1757
+ timeout: z.ZodOptional<z.ZodNumber>;
1758
+ outputVariable: z.ZodOptional<z.ZodString>;
1759
+ model: z.ZodOptional<z.ZodString>;
1760
+ agent: z.ZodOptional<z.ZodString>;
1761
+ permissions: z.ZodOptional<z.ZodObject<{
1762
+ read: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodArray<z.ZodString, "many">]>>;
1763
+ write: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodArray<z.ZodString, "many">]>>;
1764
+ execute: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodArray<z.ZodString, "many">]>>;
1765
+ allowedCommands: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1766
+ blockedCommands: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1767
+ allowedDirectories: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1768
+ blockedPaths: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1769
+ network: z.ZodOptional<z.ZodBoolean>;
1770
+ allowedHosts: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1771
+ maxFileSize: z.ZodOptional<z.ZodNumber>;
1772
+ }, "strip", z.ZodTypeAny, {
1773
+ read?: boolean | string[] | undefined;
1774
+ write?: boolean | string[] | undefined;
1775
+ execute?: boolean | string[] | undefined;
1776
+ allowedCommands?: string[] | undefined;
1777
+ blockedCommands?: string[] | undefined;
1778
+ allowedDirectories?: string[] | undefined;
1779
+ blockedPaths?: string[] | undefined;
1780
+ network?: boolean | undefined;
1781
+ allowedHosts?: string[] | undefined;
1782
+ maxFileSize?: number | undefined;
1783
+ }, {
1784
+ read?: boolean | string[] | undefined;
1785
+ write?: boolean | string[] | undefined;
1786
+ execute?: boolean | string[] | undefined;
1787
+ allowedCommands?: string[] | undefined;
1788
+ blockedCommands?: string[] | undefined;
1789
+ allowedDirectories?: string[] | undefined;
1790
+ blockedPaths?: string[] | undefined;
1791
+ network?: boolean | undefined;
1792
+ allowedHosts?: string[] | undefined;
1793
+ maxFileSize?: number | undefined;
1794
+ }>>;
1795
+ } & {
1796
+ type: z.ZodLiteral<"merge">;
1797
+ /** Merge mode */
1798
+ mode: z.ZodEnum<["append", "match", "diff", "combine_by_field"]>;
1799
+ /** Template expressions resolving to arrays to merge */
1800
+ sources: z.ZodArray<z.ZodString, "many">;
1801
+ /** Field name to match/diff/combine on */
1802
+ matchField: z.ZodOptional<z.ZodString>;
1803
+ /** For combine mode: how to handle conflicts */
1804
+ onConflict: z.ZodDefault<z.ZodOptional<z.ZodEnum<["keep_first", "keep_last", "merge_fields"]>>>;
1805
+ }, "strip", z.ZodTypeAny, {
1806
+ type: "merge";
1807
+ id: string;
1808
+ mode: "append" | "match" | "diff" | "combine_by_field";
1809
+ sources: string[];
1810
+ onConflict: "keep_first" | "keep_last" | "merge_fields";
1811
+ model?: string | undefined;
1812
+ name?: string | undefined;
1813
+ conditions?: string[] | undefined;
1814
+ timeout?: number | undefined;
1815
+ outputVariable?: string | undefined;
1816
+ agent?: string | undefined;
1817
+ permissions?: {
1818
+ read?: boolean | string[] | undefined;
1819
+ write?: boolean | string[] | undefined;
1820
+ execute?: boolean | string[] | undefined;
1821
+ allowedCommands?: string[] | undefined;
1822
+ blockedCommands?: string[] | undefined;
1823
+ allowedDirectories?: string[] | undefined;
1824
+ blockedPaths?: string[] | undefined;
1825
+ network?: boolean | undefined;
1826
+ allowedHosts?: string[] | undefined;
1827
+ maxFileSize?: number | undefined;
1828
+ } | undefined;
1829
+ matchField?: string | undefined;
1830
+ }, {
1831
+ type: "merge";
1832
+ id: string;
1833
+ mode: "append" | "match" | "diff" | "combine_by_field";
1834
+ sources: string[];
1835
+ model?: string | undefined;
1836
+ name?: string | undefined;
1837
+ conditions?: string[] | undefined;
1838
+ timeout?: number | undefined;
1839
+ outputVariable?: string | undefined;
1840
+ agent?: string | undefined;
1841
+ permissions?: {
1842
+ read?: boolean | string[] | undefined;
1843
+ write?: boolean | string[] | undefined;
1844
+ execute?: boolean | string[] | undefined;
1845
+ allowedCommands?: string[] | undefined;
1846
+ blockedCommands?: string[] | undefined;
1847
+ allowedDirectories?: string[] | undefined;
1848
+ blockedPaths?: string[] | undefined;
1849
+ network?: boolean | undefined;
1850
+ allowedHosts?: string[] | undefined;
1851
+ maxFileSize?: number | undefined;
1852
+ } | undefined;
1853
+ matchField?: string | undefined;
1854
+ onConflict?: "keep_first" | "keep_last" | "merge_fields" | undefined;
1855
+ }>;
1526
1856
  declare const WorkflowStepUnionSchema: z.ZodTypeAny;
1527
1857
  export { WorkflowStepUnionSchema as WorkflowStepSchema };
1528
1858
  export declare const TriggerSchema: z.ZodObject<{
@@ -1531,12 +1861,12 @@ export declare const TriggerSchema: z.ZodObject<{
1531
1861
  config: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1532
1862
  }, "strip", z.ZodTypeAny, {
1533
1863
  type: "manual" | "schedule" | "webhook" | "event";
1534
- enabled: boolean;
1535
1864
  config: Record<string, unknown>;
1865
+ enabled: boolean;
1536
1866
  }, {
1537
1867
  type: "manual" | "schedule" | "webhook" | "event";
1538
- enabled?: boolean | undefined;
1539
1868
  config?: Record<string, unknown> | undefined;
1869
+ enabled?: boolean | undefined;
1540
1870
  }>;
1541
1871
  export declare const WorkflowInputSchema: z.ZodObject<{
1542
1872
  type: z.ZodEnum<["string", "number", "integer", "boolean", "array", "object"]>;
@@ -1593,6 +1923,42 @@ export declare const WorkflowSchema: z.ZodObject<{
1593
1923
  options?: Record<string, unknown> | undefined;
1594
1924
  auth?: Record<string, string> | undefined;
1595
1925
  }>>>;
1926
+ secrets: z.ZodOptional<z.ZodObject<{
1927
+ providers: z.ZodOptional<z.ZodArray<z.ZodObject<{
1928
+ type: z.ZodEnum<["vault", "aws", "azure", "env"]>;
1929
+ config: z.ZodRecord<z.ZodString, z.ZodUnknown>;
1930
+ cacheEnabled: z.ZodOptional<z.ZodBoolean>;
1931
+ }, "strip", z.ZodTypeAny, {
1932
+ type: "vault" | "aws" | "azure" | "env";
1933
+ config: Record<string, unknown>;
1934
+ cacheEnabled?: boolean | undefined;
1935
+ }, {
1936
+ type: "vault" | "aws" | "azure" | "env";
1937
+ config: Record<string, unknown>;
1938
+ cacheEnabled?: boolean | undefined;
1939
+ }>, "many">>;
1940
+ defaultCacheTTL: z.ZodOptional<z.ZodNumber>;
1941
+ referencePrefix: z.ZodOptional<z.ZodString>;
1942
+ throwOnNotFound: z.ZodOptional<z.ZodBoolean>;
1943
+ }, "strip", z.ZodTypeAny, {
1944
+ providers?: {
1945
+ type: "vault" | "aws" | "azure" | "env";
1946
+ config: Record<string, unknown>;
1947
+ cacheEnabled?: boolean | undefined;
1948
+ }[] | undefined;
1949
+ defaultCacheTTL?: number | undefined;
1950
+ referencePrefix?: string | undefined;
1951
+ throwOnNotFound?: boolean | undefined;
1952
+ }, {
1953
+ providers?: {
1954
+ type: "vault" | "aws" | "azure" | "env";
1955
+ config: Record<string, unknown>;
1956
+ cacheEnabled?: boolean | undefined;
1957
+ }[] | undefined;
1958
+ defaultCacheTTL?: number | undefined;
1959
+ referencePrefix?: string | undefined;
1960
+ throwOnNotFound?: boolean | undefined;
1961
+ }>>;
1596
1962
  inputs: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
1597
1963
  type: z.ZodEnum<["string", "number", "integer", "boolean", "array", "object"]>;
1598
1964
  required: z.ZodDefault<z.ZodBoolean>;
@@ -1618,12 +1984,12 @@ export declare const WorkflowSchema: z.ZodObject<{
1618
1984
  config: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1619
1985
  }, "strip", z.ZodTypeAny, {
1620
1986
  type: "manual" | "schedule" | "webhook" | "event";
1621
- enabled: boolean;
1622
1987
  config: Record<string, unknown>;
1988
+ enabled: boolean;
1623
1989
  }, {
1624
1990
  type: "manual" | "schedule" | "webhook" | "event";
1625
- enabled?: boolean | undefined;
1626
1991
  config?: Record<string, unknown> | undefined;
1992
+ enabled?: boolean | undefined;
1627
1993
  }>, "many">>;
1628
1994
  steps: z.ZodArray<z.ZodTypeAny, "many">;
1629
1995
  rawContent: z.ZodOptional<z.ZodString>;
@@ -1697,10 +2063,20 @@ export declare const WorkflowSchema: z.ZodObject<{
1697
2063
  description?: string | undefined;
1698
2064
  default?: unknown;
1699
2065
  }> | undefined;
2066
+ secrets?: {
2067
+ providers?: {
2068
+ type: "vault" | "aws" | "azure" | "env";
2069
+ config: Record<string, unknown>;
2070
+ cacheEnabled?: boolean | undefined;
2071
+ }[] | undefined;
2072
+ defaultCacheTTL?: number | undefined;
2073
+ referencePrefix?: string | undefined;
2074
+ throwOnNotFound?: boolean | undefined;
2075
+ } | undefined;
1700
2076
  triggers?: {
1701
2077
  type: "manual" | "schedule" | "webhook" | "event";
1702
- enabled: boolean;
1703
2078
  config: Record<string, unknown>;
2079
+ enabled: boolean;
1704
2080
  }[] | undefined;
1705
2081
  rawContent?: string | undefined;
1706
2082
  defaultAgent?: string | undefined;
@@ -1739,10 +2115,20 @@ export declare const WorkflowSchema: z.ZodObject<{
1739
2115
  default?: unknown;
1740
2116
  required?: boolean | undefined;
1741
2117
  }> | undefined;
2118
+ secrets?: {
2119
+ providers?: {
2120
+ type: "vault" | "aws" | "azure" | "env";
2121
+ config: Record<string, unknown>;
2122
+ cacheEnabled?: boolean | undefined;
2123
+ }[] | undefined;
2124
+ defaultCacheTTL?: number | undefined;
2125
+ referencePrefix?: string | undefined;
2126
+ throwOnNotFound?: boolean | undefined;
2127
+ } | undefined;
1742
2128
  triggers?: {
1743
2129
  type: "manual" | "schedule" | "webhook" | "event";
1744
- enabled?: boolean | undefined;
1745
2130
  config?: Record<string, unknown> | undefined;
2131
+ enabled?: boolean | undefined;
1746
2132
  }[] | undefined;
1747
2133
  rawContent?: string | undefined;
1748
2134
  defaultAgent?: string | undefined;
@@ -1750,6 +2136,8 @@ export declare const WorkflowSchema: z.ZodObject<{
1750
2136
  }>;
1751
2137
  export type WorkflowMetadata = z.infer<typeof WorkflowMetadataSchema>;
1752
2138
  export type ToolConfig = z.infer<typeof ToolConfigSchema>;
2139
+ export type WorkflowSecretProvider = z.infer<typeof WorkflowSecretProviderSchema>;
2140
+ export type WorkflowSecretsConfig = z.infer<typeof WorkflowSecretsConfigSchema>;
1753
2141
  export type ErrorHandling = z.infer<typeof ErrorHandlingSchema>;
1754
2142
  export type Trigger = z.infer<typeof TriggerSchema>;
1755
2143
  export type WorkflowInput = z.infer<typeof WorkflowInputSchema>;
@@ -1767,6 +2155,9 @@ export type ParallelStep = z.infer<typeof ParallelStepSchema>;
1767
2155
  export type ParallelBranch = z.infer<typeof ParallelBranchSchema>;
1768
2156
  export type TryStep = z.infer<typeof TryStepSchema>;
1769
2157
  export type ScriptStep = z.infer<typeof ScriptStepSchema>;
2158
+ export type WaitStep = z.infer<typeof WaitStepSchema>;
2159
+ export type MergeStep = z.infer<typeof MergeStepSchema>;
2160
+ export type FormField = z.infer<typeof FormFieldSchema>;
1770
2161
  export type WorkflowStep = z.infer<typeof WorkflowStepUnionSchema>;
1771
2162
  export declare function isActionStep(step: WorkflowStep): step is ActionStep;
1772
2163
  export declare function isSubWorkflowStep(step: WorkflowStep): step is SubWorkflowStep;
@@ -1780,6 +2171,8 @@ export declare function isReduceStep(step: WorkflowStep): step is ReduceStep;
1780
2171
  export declare function isParallelStep(step: WorkflowStep): step is ParallelStep;
1781
2172
  export declare function isTryStep(step: WorkflowStep): step is TryStep;
1782
2173
  export declare function isScriptStep(step: WorkflowStep): step is ScriptStep;
2174
+ export declare function isWaitStep(step: WorkflowStep): step is WaitStep;
2175
+ export declare function isMergeStep(step: WorkflowStep): step is MergeStep;
1783
2176
  export interface ExecutionContext {
1784
2177
  workflowId: string;
1785
2178
  runId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"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"}
package/dist/models.js CHANGED
@@ -21,6 +21,8 @@ export const StepType = {
21
21
  PARALLEL: 'parallel',
22
22
  TRY: 'try',
23
23
  SCRIPT: 'script',
24
+ WAIT: 'wait',
25
+ MERGE: 'merge',
24
26
  };
25
27
  export const StepStatus = {
26
28
  PENDING: 'pending',
@@ -80,9 +82,20 @@ export const WorkflowMetadataSchema = z.object({
80
82
  });
81
83
  export const ToolConfigSchema = z.object({
82
84
  sdk: z.string(), // e.g., "@slack/web-api"
83
- auth: z.record(z.string()).optional(), // e.g., { token: "${SLACK_TOKEN}" }
85
+ auth: z.record(z.string()).optional(), // e.g., { token: "${SLACK_TOKEN}" } or { token: "${secret:vault://path#key}" }
84
86
  options: z.record(z.unknown()).optional(),
85
87
  });
88
+ export const WorkflowSecretProviderSchema = z.object({
89
+ type: z.enum(['vault', 'aws', 'azure', 'env']),
90
+ config: z.record(z.unknown()),
91
+ cacheEnabled: z.boolean().optional(),
92
+ });
93
+ export const WorkflowSecretsConfigSchema = z.object({
94
+ providers: z.array(WorkflowSecretProviderSchema).optional(),
95
+ defaultCacheTTL: z.number().optional(),
96
+ referencePrefix: z.string().optional(),
97
+ throwOnNotFound: z.boolean().optional(),
98
+ });
86
99
  export const ErrorHandlingSchema = z.object({
87
100
  action: z.enum(['continue', 'stop', 'rollback']).default('stop'),
88
101
  maxRetries: z.number().default(3),
@@ -147,6 +160,10 @@ const ForEachStepSchema = BaseStepSchema.extend({
147
160
  indexVariable: z.string().optional(),
148
161
  steps: StepArraySchema,
149
162
  errorHandling: ErrorHandlingSchema.optional(),
163
+ /** Process items in batches of this size. When set, {{ batch }} contains the current batch. */
164
+ batchSize: z.number().int().min(1).optional(),
165
+ /** Pause between batches in milliseconds (useful for rate limiting) */
166
+ pauseBetweenBatches: z.number().int().min(0).optional(),
150
167
  });
151
168
  // While loop step
152
169
  const WhileStepSchema = BaseStepSchema.extend({
@@ -208,6 +225,39 @@ const ScriptStepSchema = BaseStepSchema.extend({
208
225
  }),
209
226
  errorHandling: ErrorHandlingSchema.optional(),
210
227
  });
228
+ // Wait/Pause step - pauses workflow execution
229
+ const FormFieldSchema = z.object({
230
+ type: z.enum(['string', 'text', 'number', 'boolean', 'select', 'date', 'email', 'url']),
231
+ label: z.string().optional(),
232
+ description: z.string().optional(),
233
+ required: z.boolean().optional().default(false),
234
+ default: z.unknown().optional(),
235
+ options: z.array(z.string()).optional(), // For select type
236
+ validation: z.record(z.unknown()).optional(),
237
+ });
238
+ const WaitStepSchema = BaseStepSchema.extend({
239
+ type: z.literal('wait'),
240
+ /** Wait mode: duration (time-based), webhook (callback URL), form (human input) */
241
+ mode: z.enum(['duration', 'webhook', 'form']),
242
+ /** Duration string for mode=duration (e.g., "2h", "30m", "5s") */
243
+ duration: z.string().optional(),
244
+ /** Form fields for mode=form */
245
+ fields: z.record(FormFieldSchema).optional(),
246
+ /** Webhook path override for mode=webhook */
247
+ webhookPath: z.string().optional(),
248
+ });
249
+ // Merge step - combines data from multiple sources
250
+ const MergeStepSchema = BaseStepSchema.extend({
251
+ type: z.literal('merge'),
252
+ /** Merge mode */
253
+ mode: z.enum(['append', 'match', 'diff', 'combine_by_field']),
254
+ /** Template expressions resolving to arrays to merge */
255
+ sources: z.array(z.string()).min(2, 'At least 2 sources required'),
256
+ /** Field name to match/diff/combine on */
257
+ matchField: z.string().optional(),
258
+ /** For combine mode: how to handle conflicts */
259
+ onConflict: z.enum(['keep_first', 'keep_last', 'merge_fields']).optional().default('keep_last'),
260
+ });
211
261
  // Discriminated union of all step types
212
262
  const WorkflowStepUnionSchema = z.union([
213
263
  ActionStepSchema,
@@ -222,6 +272,8 @@ const WorkflowStepUnionSchema = z.union([
222
272
  ParallelStepSchema,
223
273
  TryStepSchema,
224
274
  ScriptStepSchema,
275
+ WaitStepSchema,
276
+ MergeStepSchema,
225
277
  // Backward compatibility: steps without 'type' field
226
278
  z
227
279
  .object({
@@ -267,6 +319,7 @@ export const WorkflowInputSchema = z.object({
267
319
  export const WorkflowSchema = z.object({
268
320
  metadata: WorkflowMetadataSchema,
269
321
  tools: z.record(ToolConfigSchema).default({}),
322
+ secrets: WorkflowSecretsConfigSchema.optional(),
270
323
  inputs: z.record(WorkflowInputSchema).optional(),
271
324
  triggers: z.array(TriggerSchema).optional(),
272
325
  steps: z.array(WorkflowStepUnionSchema),
@@ -316,6 +369,12 @@ export function isTryStep(step) {
316
369
  export function isScriptStep(step) {
317
370
  return step.type === 'script';
318
371
  }
372
+ export function isWaitStep(step) {
373
+ return step.type === 'wait';
374
+ }
375
+ export function isMergeStep(step) {
376
+ return step.type === 'merge';
377
+ }
319
378
  // ============================================================================
320
379
  // Helper Functions
321
380
  // ============================================================================