@skaile/workspaces 2.1.0 → 2.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 (198) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/README.md +33 -3
  3. package/dist/{asset-feeds-FBGBQEYD.js → asset-feeds-DKNYRLED.js} +10 -10
  4. package/dist/{asset-feeds-FBGBQEYD.js.map → asset-feeds-DKNYRLED.js.map} +1 -1
  5. package/dist/asset-manager/catalog-deployer.js +5 -5
  6. package/dist/asset-manager/index.js +9 -9
  7. package/dist/asset-manager/installer.js +6 -6
  8. package/dist/bridge/drivers/claude-sdk.js +9 -6
  9. package/dist/bridge/drivers/claude-sdk.js.map +1 -1
  10. package/dist/bridge/drivers/codex.js +1 -1
  11. package/dist/bridge/drivers/continue.js +2 -2
  12. package/dist/bridge/drivers/echo.js +1 -1
  13. package/dist/bridge/drivers/gemini.js +3 -3
  14. package/dist/bridge/drivers/goose.js +2 -2
  15. package/dist/bridge/drivers/omp.js +1 -1
  16. package/dist/bridge/drivers/opencode.js +2 -2
  17. package/dist/bridge/drivers/qwen.js +3 -3
  18. package/dist/bridge/index.js +2 -2
  19. package/dist/bridge/src/drivers/claude-sdk.d.ts.map +1 -1
  20. package/dist/{chunk-ZWFLEMI4.js → chunk-3F54MH2T.js} +4 -4
  21. package/dist/{chunk-ZWFLEMI4.js.map → chunk-3F54MH2T.js.map} +1 -1
  22. package/dist/{chunk-RTLQAZAE.js → chunk-63ZPKREA.js} +3 -3
  23. package/dist/{chunk-RTLQAZAE.js.map → chunk-63ZPKREA.js.map} +1 -1
  24. package/dist/{chunk-MLYV6WEM.js → chunk-7IRH7MGV.js} +10 -10
  25. package/dist/{chunk-MLYV6WEM.js.map → chunk-7IRH7MGV.js.map} +1 -1
  26. package/dist/{chunk-Y6VSFX2A.js → chunk-7UZGKVSK.js} +3 -3
  27. package/dist/{chunk-Y6VSFX2A.js.map → chunk-7UZGKVSK.js.map} +1 -1
  28. package/dist/{chunk-XQVP6XWR.js → chunk-BFIK6NPZ.js} +3 -3
  29. package/dist/{chunk-XQVP6XWR.js.map → chunk-BFIK6NPZ.js.map} +1 -1
  30. package/dist/{chunk-L26NGI43.js → chunk-BLWNI5KW.js} +2 -2
  31. package/dist/{chunk-L26NGI43.js.map → chunk-BLWNI5KW.js.map} +1 -1
  32. package/dist/{chunk-CTWE7I7Z.js → chunk-CERGXDGG.js} +4 -4
  33. package/dist/{chunk-CTWE7I7Z.js.map → chunk-CERGXDGG.js.map} +1 -1
  34. package/dist/{chunk-VPXBAEWE.js → chunk-CILACPUC.js} +8 -8
  35. package/dist/{chunk-VPXBAEWE.js.map → chunk-CILACPUC.js.map} +1 -1
  36. package/dist/{chunk-43TAGQ3Z.js → chunk-CXX3UGJP.js} +8 -8
  37. package/dist/{chunk-43TAGQ3Z.js.map → chunk-CXX3UGJP.js.map} +1 -1
  38. package/dist/chunk-DZM33LQO.js +38 -0
  39. package/dist/chunk-DZM33LQO.js.map +1 -0
  40. package/dist/{chunk-PSVF3LDU.js → chunk-ETFETLLB.js} +6 -6
  41. package/dist/{chunk-PSVF3LDU.js.map → chunk-ETFETLLB.js.map} +1 -1
  42. package/dist/{chunk-Y662DNQQ.js → chunk-FB4GPWYC.js} +18 -15
  43. package/dist/chunk-FB4GPWYC.js.map +1 -0
  44. package/dist/{chunk-BTR3ZJ7S.js → chunk-G2ILW47R.js} +4 -4
  45. package/dist/{chunk-BTR3ZJ7S.js.map → chunk-G2ILW47R.js.map} +1 -1
  46. package/dist/{chunk-2BSXXTUP.js → chunk-LD6YGIKZ.js} +105 -16
  47. package/dist/chunk-LD6YGIKZ.js.map +1 -0
  48. package/dist/{chunk-HOL5KD7U.js → chunk-PTS3QN5P.js} +67 -25
  49. package/dist/chunk-PTS3QN5P.js.map +1 -0
  50. package/dist/{chunk-YODP3STD.js → chunk-Q26C5GLO.js} +3 -3
  51. package/dist/{chunk-YODP3STD.js.map → chunk-Q26C5GLO.js.map} +1 -1
  52. package/dist/{chunk-GUKMNUQK.js → chunk-RIEXN7WA.js} +2 -2
  53. package/dist/{chunk-GUKMNUQK.js.map → chunk-RIEXN7WA.js.map} +1 -1
  54. package/dist/chunk-SIF5F5SN.js +86 -0
  55. package/dist/chunk-SIF5F5SN.js.map +1 -0
  56. package/dist/{chunk-RBOPTTTK.js → chunk-TAJBFYCT.js} +32 -17
  57. package/dist/chunk-TAJBFYCT.js.map +1 -0
  58. package/dist/{chunk-MAN7AGQJ.js → chunk-TK66CMXV.js} +21 -6
  59. package/dist/chunk-TK66CMXV.js.map +1 -0
  60. package/dist/{chunk-5BGEYZ7I.js → chunk-UFY2HFLO.js} +3 -3
  61. package/dist/{chunk-5BGEYZ7I.js.map → chunk-UFY2HFLO.js.map} +1 -1
  62. package/dist/{chunk-N6TYW6EB.js → chunk-UNP4M5ZZ.js} +4 -4
  63. package/dist/{chunk-N6TYW6EB.js.map → chunk-UNP4M5ZZ.js.map} +1 -1
  64. package/dist/{chunk-HPGV54O4.js → chunk-UQ3RJKDD.js} +41 -23
  65. package/dist/chunk-UQ3RJKDD.js.map +1 -0
  66. package/dist/{chunk-XSIXGVH6.js → chunk-W3Q37HEF.js} +4 -4
  67. package/dist/{chunk-XSIXGVH6.js.map → chunk-W3Q37HEF.js.map} +1 -1
  68. package/dist/{chunk-WVPL4OGD.js → chunk-WG3L5VHF.js} +2 -2
  69. package/dist/{chunk-WVPL4OGD.js.map → chunk-WG3L5VHF.js.map} +1 -1
  70. package/dist/{chunk-SGLGA2AZ.js → chunk-X6BPVUV2.js} +3 -3
  71. package/dist/{chunk-SGLGA2AZ.js.map → chunk-X6BPVUV2.js.map} +1 -1
  72. package/dist/chunk-ZE2KEPE2.js +1002 -0
  73. package/dist/chunk-ZE2KEPE2.js.map +1 -0
  74. package/dist/{chunk-BHLNQ4L5.js → chunk-ZNIHTT22.js} +3 -3
  75. package/dist/{chunk-BHLNQ4L5.js.map → chunk-ZNIHTT22.js.map} +1 -1
  76. package/dist/{chunk-PYYL5XMA.js → chunk-ZR5Q4KZK.js} +3 -3
  77. package/dist/{chunk-PYYL5XMA.js.map → chunk-ZR5Q4KZK.js.map} +1 -1
  78. package/dist/cli/index.js +53 -50
  79. package/dist/cli/index.js.map +1 -1
  80. package/dist/connectors/config.js +6 -6
  81. package/dist/connectors/index.js +11 -9
  82. package/dist/core/index.js +5 -5
  83. package/dist/core/runtime-assets.js +3 -3
  84. package/dist/core/workspace-config.js +2 -2
  85. package/dist/deploy/index.js +5 -5
  86. package/dist/discovery/index.js +1 -1
  87. package/dist/discovery/src/requires-graph.d.ts +1 -1
  88. package/dist/discovery/src/requires-graph.d.ts.map +1 -1
  89. package/dist/{ensure-sources-AVCVX7CV.js → ensure-sources-R6KW7K3M.js} +12 -12
  90. package/dist/{ensure-sources-AVCVX7CV.js.map → ensure-sources-R6KW7K3M.js.map} +1 -1
  91. package/dist/factory-assets/connectors/box.js +11 -9
  92. package/dist/factory-assets/connectors/deploy.js +11 -9
  93. package/dist/factory-assets/connectors/devserver.js +11 -9
  94. package/dist/factory-assets/connectors/flow/CONNECTOR.md +7 -1
  95. package/dist/factory-assets/connectors/flow/adapter.d.ts +2 -3
  96. package/dist/factory-assets/connectors/flow/adapter.d.ts.map +1 -1
  97. package/dist/factory-assets/connectors/flow/adapter.js +11 -9
  98. package/dist/factory-assets/connectors/flow/contract/expression.d.ts +46 -0
  99. package/dist/factory-assets/connectors/flow/contract/expression.d.ts.map +1 -0
  100. package/dist/factory-assets/connectors/flow/contract/flow.v2.schema.json +948 -0
  101. package/dist/factory-assets/connectors/flow/contract/hash.d.ts +6 -0
  102. package/dist/factory-assets/connectors/flow/contract/hash.d.ts.map +1 -0
  103. package/dist/factory-assets/connectors/flow/contract/index.d.ts +6 -0
  104. package/dist/factory-assets/connectors/flow/contract/index.d.ts.map +1 -0
  105. package/dist/factory-assets/connectors/flow/contract/json-schema.d.ts +6 -0
  106. package/dist/factory-assets/connectors/flow/contract/json-schema.d.ts.map +1 -0
  107. package/dist/factory-assets/connectors/flow/contract/normalize.d.ts +38 -0
  108. package/dist/factory-assets/connectors/flow/contract/normalize.d.ts.map +1 -0
  109. package/dist/factory-assets/connectors/flow/contract/schema.d.ts +364 -0
  110. package/dist/factory-assets/connectors/flow/contract/schema.d.ts.map +1 -0
  111. package/dist/factory-assets/connectors/flow/contract.d.ts +2 -0
  112. package/dist/factory-assets/connectors/flow/contract.js +5 -0
  113. package/dist/factory-assets/connectors/flow/contract.js.map +1 -0
  114. package/dist/factory-assets/connectors/flow/engine/engine.d.ts +4 -4
  115. package/dist/factory-assets/connectors/flow/engine/engine.d.ts.map +1 -1
  116. package/dist/factory-assets/connectors/flow/engine/flow-kind-provider.d.ts +1 -1
  117. package/dist/factory-assets/connectors/flow/engine/flow-kind-provider.d.ts.map +1 -1
  118. package/dist/factory-assets/connectors/flow/engine/loader.d.ts.map +1 -1
  119. package/dist/factory-assets/connectors/flow/engine/node-shape.d.ts +20 -0
  120. package/dist/factory-assets/connectors/flow/engine/node-shape.d.ts.map +1 -0
  121. package/dist/factory-assets/connectors/flow/engine/types.d.ts +56 -28
  122. package/dist/factory-assets/connectors/flow/engine/types.d.ts.map +1 -1
  123. package/dist/factory-assets/connectors/flow/engine.js +8 -6
  124. package/dist/factory-assets/connectors/flow/prompt-fragments.d.ts +4 -6
  125. package/dist/factory-assets/connectors/flow/prompt-fragments.d.ts.map +1 -1
  126. package/dist/factory-assets/connectors/flow/prompt-fragments.js +2 -1
  127. package/dist/factory-assets/connectors/flow/run-flow.d.ts.map +1 -1
  128. package/dist/factory-assets/connectors/flow/run-flow.js +12 -10
  129. package/dist/factory-assets/connectors/flow.js +11 -9
  130. package/dist/factory-assets/connectors/git.js +11 -9
  131. package/dist/factory-assets/connectors/gmail.js +11 -9
  132. package/dist/factory-assets/connectors/googledrive.js +11 -9
  133. package/dist/factory-assets/connectors/local.js +11 -9
  134. package/dist/factory-assets/connectors/mattermost.js +11 -9
  135. package/dist/factory-assets/connectors/memory.js +11 -9
  136. package/dist/factory-assets/connectors/minio.js +11 -9
  137. package/dist/factory-assets/connectors/postgres.js +11 -9
  138. package/dist/factory-assets/connectors/s3.js +11 -9
  139. package/dist/factory-assets/connectors/sharepoint.js +11 -9
  140. package/dist/factory-assets/connectors/sqlite.js +11 -9
  141. package/dist/factory-assets/connectors/static-server.js +11 -9
  142. package/dist/factory-assets/connectors/tunnel.js +11 -9
  143. package/dist/factory-assets/connectors/webdav.js +11 -9
  144. package/dist/factory-assets/connectors/xstate-store.js +11 -9
  145. package/dist/factory-assets/connectors/xstate.js +11 -9
  146. package/dist/{flows-CXVFGR27.js → flows-F3CJNMK6.js} +8 -8
  147. package/dist/{flows-CXVFGR27.js.map → flows-F3CJNMK6.js.map} +1 -1
  148. package/dist/{helpers-M5SXB4LL.js → helpers-KPOLCGKX.js} +12 -12
  149. package/dist/{helpers-M5SXB4LL.js.map → helpers-KPOLCGKX.js.map} +1 -1
  150. package/dist/library/index.js +7 -7
  151. package/dist/library/install.js +5 -5
  152. package/dist/{library-publish-HVIIQMI6.js → library-publish-ZAPZS64O.js} +18 -16
  153. package/dist/library-publish-ZAPZS64O.js.map +1 -0
  154. package/dist/{open-library-EJQISBWV.js → open-library-I4F2UNOY.js} +16 -14
  155. package/dist/{open-library-EJQISBWV.js.map → open-library-I4F2UNOY.js.map} +1 -1
  156. package/dist/{paths-2HMHL25W.js → paths-KBACHM5B.js} +10 -10
  157. package/dist/{paths-2HMHL25W.js.map → paths-KBACHM5B.js.map} +1 -1
  158. package/dist/{plugin-store-TLBQ5XRS.js → plugin-store-CYSNVZIX.js} +7 -7
  159. package/dist/{plugin-store-TLBQ5XRS.js.map → plugin-store-CYSNVZIX.js.map} +1 -1
  160. package/dist/{project-M2COJFPZ.js → project-SIHZBTGB.js} +13 -13
  161. package/dist/{project-M2COJFPZ.js.map → project-SIHZBTGB.js.map} +1 -1
  162. package/dist/resolver/index.js +5 -5
  163. package/dist/runner/index.js +17 -14
  164. package/dist/runner/src/serve.d.ts.map +1 -1
  165. package/dist/sdk/asset-manager.js +9 -9
  166. package/dist/sdk/bridge.js +2 -2
  167. package/dist/sdk/core.js +5 -5
  168. package/dist/sdk/flow.js +8 -6
  169. package/dist/sdk/index.js +17 -14
  170. package/dist/sdk/index.js.map +1 -1
  171. package/dist/sdk/resolver.js +5 -5
  172. package/dist/sdk/runner.js +17 -14
  173. package/dist/sdk/transport/ws.js +1 -1
  174. package/dist/sdk/transport.js +1 -1
  175. package/dist/{setup-GWXEG3G2.js → setup-KMBXMV25.js} +9 -9
  176. package/dist/{setup-GWXEG3G2.js.map → setup-KMBXMV25.js.map} +1 -1
  177. package/dist/{skills-YTMGG23D.js → skills-LHS4TOKK.js} +7 -7
  178. package/dist/{skills-YTMGG23D.js.map → skills-LHS4TOKK.js.map} +1 -1
  179. package/dist/{source-WMXH2OBW.js → source-X226ZJPR.js} +17 -15
  180. package/dist/{source-WMXH2OBW.js.map → source-X226ZJPR.js.map} +1 -1
  181. package/dist/{source-manifest-publish-MTHUGBAY.js → source-manifest-publish-N2QVUR5U.js} +19 -17
  182. package/dist/source-manifest-publish-N2QVUR5U.js.map +1 -0
  183. package/dist/transport/index.js +1 -1
  184. package/dist/transport/ws.js +1 -1
  185. package/dist/tui/index.js +17 -14
  186. package/dist/tui/index.js.map +1 -1
  187. package/dist/workspace-plugin/adapters/mcp.js +6 -6
  188. package/dist/workspace-plugin/adapters/omp.js +7 -7
  189. package/dist/workspace-plugin/index.js +1 -1
  190. package/package.json +18 -1
  191. package/dist/chunk-2BSXXTUP.js.map +0 -1
  192. package/dist/chunk-HOL5KD7U.js.map +0 -1
  193. package/dist/chunk-HPGV54O4.js.map +0 -1
  194. package/dist/chunk-MAN7AGQJ.js.map +0 -1
  195. package/dist/chunk-RBOPTTTK.js.map +0 -1
  196. package/dist/chunk-Y662DNQQ.js.map +0 -1
  197. package/dist/library-publish-HVIIQMI6.js.map +0 -1
  198. package/dist/source-manifest-publish-MTHUGBAY.js.map +0 -1
@@ -0,0 +1,6 @@
1
+ import type { ParsedFlowDefinition } from "./normalize.js";
2
+ /** Gives equivalent definitions identical bytes while preserving content-significant array order. */
3
+ export declare function canonicalizeFlowDefinition(definition: ParsedFlowDefinition): string;
4
+ /** Creates a browser-safe content identity for caching, pinning, and change detection. */
5
+ export declare function hashFlowDefinition(definition: ParsedFlowDefinition): Promise<string>;
6
+ //# sourceMappingURL=hash.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hash.d.ts","sourceRoot":"","sources":["../../../../../factory-assets/connectors/flow/contract/hash.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAwE3D,qGAAqG;AACrG,wBAAgB,0BAA0B,CAAC,UAAU,EAAE,oBAAoB,GAAG,MAAM,CAEnF;AAED,0FAA0F;AAC1F,wBAAsB,kBAAkB,CAAC,UAAU,EAAE,oBAAoB,GAAG,OAAO,CAAC,MAAM,CAAC,CAI1F"}
@@ -0,0 +1,6 @@
1
+ export { FlowDefinitionSchema, type FlowAssetRef, type FlowDefinition, type FlowEdge, type FlowInputContract, type FlowNode, type FlowNodeBindings, type FlowNodeContract, type FlowNodeControl, type FlowNodeKind, type FlowNodePrecondition, type FlowNodeRun, type FlowOutputContract, type FlowRoute, } from "./schema.js";
2
+ export { normalizeV1, parseFlowDefinition, type FlowDefinitionIssue, type FlowDefinitionParseResult, type LegacyCompatibilityEdge, type ParsedFlowDefinition, } from "./normalize.js";
3
+ export { evaluate, evaluateFlowExpression, FLOW_EXPRESSION_LIMITS, FlowExpressionError, type FlowExpressionContext, } from "./expression.js";
4
+ export { canonicalizeFlowDefinition, hashFlowDefinition } from "./hash.js";
5
+ export { FLOW_DEFINITION_JSON_SCHEMA_ID, generateFlowDefinitionJsonSchema, } from "./json-schema.js";
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../factory-assets/connectors/flow/contract/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,QAAQ,EACb,KAAK,iBAAiB,EACtB,KAAK,QAAQ,EACb,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,oBAAoB,EACzB,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,SAAS,GACf,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,EAC9B,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,GAC1B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,QAAQ,EACR,sBAAsB,EACtB,sBAAsB,EACtB,mBAAmB,EACnB,KAAK,qBAAqB,GAC3B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,0BAA0B,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC3E,OAAO,EACL,8BAA8B,EAC9B,gCAAgC,GACjC,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,6 @@
1
+ import * as z from "zod";
2
+ /** Canonical URI editors can use to identify the published Flow v2 vocabulary. */
3
+ export declare const FLOW_DEFINITION_JSON_SCHEMA_ID = "https://skaile.ai/schemas/flow/v2.json";
4
+ /** Keeps editor tooling downstream of Zod so the checked-in artifact cannot become an authority. */
5
+ export declare function generateFlowDefinitionJsonSchema(): z.core.JSONSchema.JSONSchema;
6
+ //# sourceMappingURL=json-schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json-schema.d.ts","sourceRoot":"","sources":["../../../../../factory-assets/connectors/flow/contract/json-schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAGzB,kFAAkF;AAClF,eAAO,MAAM,8BAA8B,2CAA2C,CAAC;AAEvF,oGAAoG;AACpG,wBAAgB,gCAAgC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAS/E"}
@@ -0,0 +1,38 @@
1
+ import { type FlowDefinition } from "./schema.js";
2
+ /** Stable authored-path failure returned without exposing Zod as part of the public boundary. */
3
+ export interface FlowDefinitionIssue {
4
+ /** Dot-separated authored-data path; the empty string identifies the root. */
5
+ path: string;
6
+ /** Human-readable reason the value failed contract validation. */
7
+ message: string;
8
+ }
9
+ /** Inert legacy edge retained for round-tripping outside the closed authored-v2 vocabulary. */
10
+ export type LegacyCompatibilityEdge = {
11
+ id: string;
12
+ source: string;
13
+ target: string;
14
+ type: string;
15
+ } & Record<string, unknown>;
16
+ /** Normalized content whose nodes are strict v2 while inert legacy edges remain lossless. */
17
+ export type ParsedFlowDefinition = Omit<FlowDefinition, "edges"> & {
18
+ edges: Array<FlowDefinition["edges"][number] | LegacyCompatibilityEdge>;
19
+ };
20
+ /** Normalized authoring or compatibility content, or complete authored-path failures. */
21
+ export type FlowDefinitionParseResult = {
22
+ ok: true;
23
+ data: ParsedFlowDefinition;
24
+ } | {
25
+ ok: false;
26
+ errors: FlowDefinitionIssue[];
27
+ };
28
+ /**
29
+ * Converts a recognized v1 definition to strict v2 without mutating the authored input.
30
+ * Non-executable legacy nodes become inert placeholders so dependency and terminal semantics survive.
31
+ */
32
+ export declare function normalizeV1(data: unknown): FlowDefinitionParseResult;
33
+ /**
34
+ * Parses strict v2 or normalizes v1, reusing an unchanged successful result across boundaries.
35
+ * Only an absent own schema version permits compatibility normalization.
36
+ */
37
+ export declare function parseFlowDefinition(data: unknown): FlowDefinitionParseResult;
38
+ //# sourceMappingURL=normalize.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"normalize.d.ts","sourceRoot":"","sources":["../../../../../factory-assets/connectors/flow/contract/normalize.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,cAAc,EACpB,MAAM,aAAa,CAAC;AAyGrB,iGAAiG;AACjG,MAAM,WAAW,mBAAmB;IAClC,8EAA8E;IAC9E,IAAI,EAAE,MAAM,CAAC;IACb,kEAAkE;IAClE,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,+FAA+F;AAC/F,MAAM,MAAM,uBAAuB,GAAG;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE5B,6FAA6F;AAC7F,MAAM,MAAM,oBAAoB,GAAG,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC,GAAG;IACjE,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,GAAG,uBAAuB,CAAC,CAAC;CACzE,CAAC;AAEF,yFAAyF;AACzF,MAAM,MAAM,yBAAyB,GACjC;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,oBAAoB,CAAA;CAAE,GACxC;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,mBAAmB,EAAE,CAAA;CAAE,CAAC;AAsFjD;;;GAGG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,OAAO,GAAG,yBAAyB,CAuHpE;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,OAAO,GAAG,yBAAyB,CAY5E"}
@@ -0,0 +1,364 @@
1
+ import * as z from "zod";
2
+ /** Validates normalized field shapes without applying authored-v2 graph semantics. */
3
+ export declare function parseFlowDefinitionStructure(data: unknown): z.ZodSafeParseResult<{
4
+ schemaVersion: 2;
5
+ id: string;
6
+ version: string;
7
+ name: string;
8
+ nodes: {
9
+ id: string;
10
+ label: string;
11
+ description: string;
12
+ run: {
13
+ kind: "agent";
14
+ instruction: string;
15
+ assets?: string[] | undefined;
16
+ } | {
17
+ kind: "subprompt";
18
+ instruction: string;
19
+ assets?: string[] | undefined;
20
+ model?: string | undefined;
21
+ } | {
22
+ command: string;
23
+ kind: "function";
24
+ assets?: string[] | undefined;
25
+ runtime?: "shell" | "node" | "python" | undefined;
26
+ cwd?: string | undefined;
27
+ successExit?: number[] | undefined;
28
+ capture?: {
29
+ stdout?: string | undefined;
30
+ stderr?: string | undefined;
31
+ } | undefined;
32
+ } | {
33
+ command: string;
34
+ kind: "check";
35
+ onFail: "escalate" | "fail";
36
+ assets?: string[] | undefined;
37
+ runtime?: "shell" | "node" | "python" | undefined;
38
+ cwd?: string | undefined;
39
+ successExit?: number[] | undefined;
40
+ capture?: {
41
+ stdout?: string | undefined;
42
+ stderr?: string | undefined;
43
+ } | undefined;
44
+ } | {
45
+ kind: "gate";
46
+ prompt: string;
47
+ schema: {
48
+ kind: "text";
49
+ multiline?: boolean | undefined;
50
+ } | {
51
+ kind: "choice";
52
+ options: {
53
+ id: string;
54
+ label: string;
55
+ description?: string | undefined;
56
+ }[];
57
+ multiple?: boolean | undefined;
58
+ } | {
59
+ kind: "form";
60
+ fields: {
61
+ id: string;
62
+ label: string;
63
+ type: "number" | "boolean" | "text" | "file" | "choice" | "textarea" | "date";
64
+ required?: boolean | undefined;
65
+ options?: {
66
+ id: string;
67
+ label: string;
68
+ description?: string | undefined;
69
+ }[] | undefined;
70
+ accept?: string[] | undefined;
71
+ }[];
72
+ } | {
73
+ kind: "file";
74
+ accept?: string[] | undefined;
75
+ maxSize?: number | undefined;
76
+ multiple?: boolean | undefined;
77
+ };
78
+ assets?: string[] | undefined;
79
+ } | {
80
+ kind: "router";
81
+ routes: {
82
+ when: string;
83
+ target: string | null;
84
+ }[];
85
+ assets?: string[] | undefined;
86
+ };
87
+ phase?: string | undefined;
88
+ contract?: {
89
+ requires?: {
90
+ expr: string;
91
+ message?: string | undefined;
92
+ }[] | undefined;
93
+ input?: Record<string, z.core.util.JSONType> | undefined;
94
+ output?: {
95
+ fields?: Record<string, z.core.util.JSONType> | undefined;
96
+ artifacts?: {
97
+ kind: string;
98
+ lifetime: "session" | "persistent";
99
+ }[] | undefined;
100
+ } | undefined;
101
+ } | undefined;
102
+ gate?: {
103
+ approval: "none" | "optional" | "mandatory";
104
+ } | undefined;
105
+ control?: {
106
+ optional?: boolean | undefined;
107
+ retries?: number | undefined;
108
+ timeoutSec?: number | undefined;
109
+ parallelGroup?: string | undefined;
110
+ } | undefined;
111
+ }[];
112
+ edges: {
113
+ id: string;
114
+ source: string;
115
+ target: string;
116
+ type: "flow" | "optional" | "parallel";
117
+ }[];
118
+ $schema?: string | undefined;
119
+ description?: string | undefined;
120
+ input?: {
121
+ schema: Record<string, z.core.util.JSONType>;
122
+ example?: z.core.util.JSONType | undefined;
123
+ } | undefined;
124
+ output?: {
125
+ schema: Record<string, z.core.util.JSONType>;
126
+ } | undefined;
127
+ defaults?: {
128
+ approval?: "manual" | "auto" | "checkpoint" | undefined;
129
+ researchDepth?: string | undefined;
130
+ autoReview?: boolean | undefined;
131
+ subagentMode?: boolean | undefined;
132
+ verbosity?: string | undefined;
133
+ cliMode?: boolean | undefined;
134
+ run_input?: z.core.util.JSONType | undefined;
135
+ parameters?: Record<string, z.core.util.JSONType> | undefined;
136
+ } | undefined;
137
+ entry?: string | undefined;
138
+ meta?: {
139
+ icon?: string | undefined;
140
+ category?: string | undefined;
141
+ tags?: string[] | undefined;
142
+ stage?: string | undefined;
143
+ onboarding?: {
144
+ input_style: "repo" | "freeform" | "structured";
145
+ placeholder?: string | undefined;
146
+ fields?: string[] | undefined;
147
+ } | undefined;
148
+ } | undefined;
149
+ }>;
150
+ /** Authoritative strict runtime schema for authored, acyclic Flow v2 definitions. */
151
+ export declare const FlowDefinitionSchema: z.ZodObject<{
152
+ $schema: z.ZodOptional<z.ZodString>;
153
+ schemaVersion: z.ZodLiteral<2>;
154
+ id: z.ZodString;
155
+ version: z.ZodString;
156
+ name: z.ZodString;
157
+ description: z.ZodOptional<z.ZodString>;
158
+ input: z.ZodOptional<z.ZodObject<{
159
+ schema: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
160
+ example: z.ZodOptional<z.ZodJSONSchema>;
161
+ }, z.core.$strict>>;
162
+ output: z.ZodOptional<z.ZodObject<{
163
+ schema: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
164
+ }, z.core.$strict>>;
165
+ defaults: z.ZodOptional<z.ZodObject<{
166
+ approval: z.ZodOptional<z.ZodEnum<{
167
+ manual: "manual";
168
+ auto: "auto";
169
+ checkpoint: "checkpoint";
170
+ }>>;
171
+ researchDepth: z.ZodOptional<z.ZodString>;
172
+ autoReview: z.ZodOptional<z.ZodBoolean>;
173
+ subagentMode: z.ZodOptional<z.ZodBoolean>;
174
+ verbosity: z.ZodOptional<z.ZodString>;
175
+ cliMode: z.ZodOptional<z.ZodBoolean>;
176
+ run_input: z.ZodOptional<z.ZodJSONSchema>;
177
+ parameters: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
178
+ }, z.core.$strict>>;
179
+ entry: z.ZodOptional<z.ZodString>;
180
+ nodes: z.ZodArray<z.ZodObject<{
181
+ id: z.ZodString;
182
+ label: z.ZodString;
183
+ description: z.ZodString;
184
+ phase: z.ZodOptional<z.ZodString>;
185
+ run: z.ZodDiscriminatedUnion<[z.ZodObject<{
186
+ assets: z.ZodOptional<z.ZodArray<z.ZodString>>;
187
+ kind: z.ZodLiteral<"agent">;
188
+ instruction: z.ZodString;
189
+ }, z.core.$strict>, z.ZodObject<{
190
+ assets: z.ZodOptional<z.ZodArray<z.ZodString>>;
191
+ kind: z.ZodLiteral<"subprompt">;
192
+ instruction: z.ZodString;
193
+ model: z.ZodOptional<z.ZodString>;
194
+ }, z.core.$strict>, z.ZodObject<{
195
+ assets: z.ZodOptional<z.ZodArray<z.ZodString>>;
196
+ runtime: z.ZodOptional<z.ZodEnum<{
197
+ shell: "shell";
198
+ node: "node";
199
+ python: "python";
200
+ }>>;
201
+ command: z.ZodString;
202
+ cwd: z.ZodOptional<z.ZodString>;
203
+ successExit: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
204
+ capture: z.ZodOptional<z.ZodObject<{
205
+ stdout: z.ZodOptional<z.ZodString>;
206
+ stderr: z.ZodOptional<z.ZodString>;
207
+ }, z.core.$strict>>;
208
+ kind: z.ZodLiteral<"function">;
209
+ }, z.core.$strict>, z.ZodObject<{
210
+ assets: z.ZodOptional<z.ZodArray<z.ZodString>>;
211
+ runtime: z.ZodOptional<z.ZodEnum<{
212
+ shell: "shell";
213
+ node: "node";
214
+ python: "python";
215
+ }>>;
216
+ command: z.ZodString;
217
+ cwd: z.ZodOptional<z.ZodString>;
218
+ successExit: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
219
+ capture: z.ZodOptional<z.ZodObject<{
220
+ stdout: z.ZodOptional<z.ZodString>;
221
+ stderr: z.ZodOptional<z.ZodString>;
222
+ }, z.core.$strict>>;
223
+ kind: z.ZodLiteral<"check">;
224
+ onFail: z.ZodDefault<z.ZodEnum<{
225
+ escalate: "escalate";
226
+ fail: "fail";
227
+ }>>;
228
+ }, z.core.$strict>, z.ZodObject<{
229
+ assets: z.ZodOptional<z.ZodArray<z.ZodString>>;
230
+ kind: z.ZodLiteral<"gate">;
231
+ prompt: z.ZodString;
232
+ schema: z.ZodDiscriminatedUnion<[z.ZodObject<{
233
+ kind: z.ZodLiteral<"text">;
234
+ multiline: z.ZodOptional<z.ZodBoolean>;
235
+ }, z.core.$strict>, z.ZodObject<{
236
+ kind: z.ZodLiteral<"choice">;
237
+ options: z.ZodArray<z.ZodObject<{
238
+ id: z.ZodString;
239
+ label: z.ZodString;
240
+ description: z.ZodOptional<z.ZodString>;
241
+ }, z.core.$strict>>;
242
+ multiple: z.ZodOptional<z.ZodBoolean>;
243
+ }, z.core.$strict>, z.ZodObject<{
244
+ kind: z.ZodLiteral<"form">;
245
+ fields: z.ZodArray<z.ZodObject<{
246
+ id: z.ZodString;
247
+ label: z.ZodString;
248
+ type: z.ZodEnum<{
249
+ number: "number";
250
+ boolean: "boolean";
251
+ text: "text";
252
+ file: "file";
253
+ choice: "choice";
254
+ textarea: "textarea";
255
+ date: "date";
256
+ }>;
257
+ required: z.ZodOptional<z.ZodBoolean>;
258
+ options: z.ZodOptional<z.ZodArray<z.ZodObject<{
259
+ id: z.ZodString;
260
+ label: z.ZodString;
261
+ description: z.ZodOptional<z.ZodString>;
262
+ }, z.core.$strict>>>;
263
+ accept: z.ZodOptional<z.ZodArray<z.ZodString>>;
264
+ }, z.core.$strict>>;
265
+ }, z.core.$strict>, z.ZodObject<{
266
+ kind: z.ZodLiteral<"file">;
267
+ accept: z.ZodOptional<z.ZodArray<z.ZodString>>;
268
+ maxSize: z.ZodOptional<z.ZodNumber>;
269
+ multiple: z.ZodOptional<z.ZodBoolean>;
270
+ }, z.core.$strict>], "kind">;
271
+ }, z.core.$strict>, z.ZodObject<{
272
+ assets: z.ZodOptional<z.ZodArray<z.ZodString>>;
273
+ kind: z.ZodLiteral<"router">;
274
+ routes: z.ZodArray<z.ZodObject<{
275
+ when: z.ZodString;
276
+ target: z.ZodNullable<z.ZodString>;
277
+ }, z.core.$strict>>;
278
+ }, z.core.$strict>], "kind">;
279
+ contract: z.ZodOptional<z.ZodObject<{
280
+ requires: z.ZodOptional<z.ZodArray<z.ZodObject<{
281
+ expr: z.ZodString;
282
+ message: z.ZodOptional<z.ZodString>;
283
+ }, z.core.$strict>>>;
284
+ input: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
285
+ output: z.ZodOptional<z.ZodObject<{
286
+ fields: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
287
+ artifacts: z.ZodOptional<z.ZodArray<z.ZodObject<{
288
+ kind: z.ZodString;
289
+ lifetime: z.ZodEnum<{
290
+ session: "session";
291
+ persistent: "persistent";
292
+ }>;
293
+ }, z.core.$strict>>>;
294
+ }, z.core.$strict>>;
295
+ }, z.core.$strict>>;
296
+ gate: z.ZodOptional<z.ZodObject<{
297
+ approval: z.ZodEnum<{
298
+ none: "none";
299
+ optional: "optional";
300
+ mandatory: "mandatory";
301
+ }>;
302
+ }, z.core.$strict>>;
303
+ control: z.ZodOptional<z.ZodObject<{
304
+ optional: z.ZodOptional<z.ZodBoolean>;
305
+ retries: z.ZodOptional<z.ZodNumber>;
306
+ timeoutSec: z.ZodOptional<z.ZodNumber>;
307
+ parallelGroup: z.ZodOptional<z.ZodString>;
308
+ }, z.core.$strict>>;
309
+ }, z.core.$strict>>;
310
+ edges: z.ZodArray<z.ZodObject<{
311
+ id: z.ZodString;
312
+ source: z.ZodString;
313
+ target: z.ZodString;
314
+ type: z.ZodEnum<{
315
+ flow: "flow";
316
+ optional: "optional";
317
+ parallel: "parallel";
318
+ }>;
319
+ }, z.core.$strict>>;
320
+ meta: z.ZodOptional<z.ZodObject<{
321
+ icon: z.ZodOptional<z.ZodString>;
322
+ category: z.ZodOptional<z.ZodString>;
323
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
324
+ stage: z.ZodOptional<z.ZodString>;
325
+ onboarding: z.ZodOptional<z.ZodObject<{
326
+ input_style: z.ZodEnum<{
327
+ repo: "repo";
328
+ freeform: "freeform";
329
+ structured: "structured";
330
+ }>;
331
+ placeholder: z.ZodOptional<z.ZodString>;
332
+ fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
333
+ }, z.core.$strict>>;
334
+ }, z.core.$strict>>;
335
+ }, z.core.$strict>;
336
+ /** Validated authoring content that is strict, acyclic, and always schema version 2. */
337
+ export type FlowDefinition = z.infer<typeof FlowDefinitionSchema>;
338
+ /** Graph vertex whose execution identity comes only from its `run.kind`. */
339
+ export type FlowNode = FlowDefinition["nodes"][number];
340
+ /** Directed dependency link whose authored array position remains content-significant. */
341
+ export type FlowEdge = FlowDefinition["edges"][number];
342
+ /** Closed execution-owner declaration with no dispatch or conversation-mode switches. */
343
+ export type FlowNodeRun = FlowNode["run"];
344
+ /** Closed vocabulary of the six supported execution-owner identities. */
345
+ export type FlowNodeKind = FlowNodeRun["kind"];
346
+ /** Validation boundary applied to values entering a Flow run. */
347
+ export type FlowInputContract = NonNullable<FlowDefinition["input"]>;
348
+ /** Validation boundary applied to values leaving a Flow run. */
349
+ export type FlowOutputContract = NonNullable<FlowDefinition["output"]>;
350
+ /** Node admission and data contract; output typing is paid only when downstream consumers need it. */
351
+ export type FlowNodeContract = NonNullable<FlowNode["contract"]>;
352
+ /** Availability and failure policy that never changes execution ownership. */
353
+ export type FlowNodeControl = NonNullable<FlowNode["control"]>;
354
+ /** Named values resolved at the consumer boundary before admission. */
355
+ export type FlowNodeBindings = NonNullable<FlowNode["contract"]>["input"];
356
+ /** Bounded deterministic admission condition; arbitrary calls and property access are invalid. */
357
+ export type FlowNodePrecondition = NonNullable<FlowNode["contract"]>["requires"] extends Array<infer T> | undefined ? T : never;
358
+ /** Ordered router branch; the first matching condition owns the routing decision. */
359
+ export type FlowRoute = Extract<FlowNodeRun, {
360
+ kind: "router";
361
+ }>["routes"][number];
362
+ /** Asset requirement independent of node identity and available on every run kind. */
363
+ export type FlowAssetRef = NonNullable<FlowNodeRun["assets"]>[number];
364
+ //# sourceMappingURL=schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../../../factory-assets/connectors/flow/contract/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAyMzB,sFAAsF;AACtF,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAEzD;AA6CD,qFAAqF;AACrF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAgL/B,CAAC;AAEH,wFAAwF;AACxF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,4EAA4E;AAC5E,MAAM,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;AAEvD,0FAA0F;AAC1F,MAAM,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;AAEvD,yFAAyF;AACzF,MAAM,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;AAE1C,yEAAyE;AACzE,MAAM,MAAM,YAAY,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;AAE/C,iEAAiE;AACjE,MAAM,MAAM,iBAAiB,GAAG,WAAW,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;AAErE,gEAAgE;AAChE,MAAM,MAAM,kBAAkB,GAAG,WAAW,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC;AAEvE,sGAAsG;AACtG,MAAM,MAAM,gBAAgB,GAAG,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;AAEjE,8EAA8E;AAC9E,MAAM,MAAM,eAAe,GAAG,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;AAE/D,uEAAuE;AACvE,MAAM,MAAM,gBAAgB,GAAG,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;AAE1E,kGAAkG;AAClG,MAAM,MAAM,oBAAoB,GAAG,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,SAC5E,KAAK,CAAC,MAAM,CAAC,CAAC,GACd,SAAS,GACT,CAAC,GACD,KAAK,CAAC;AAEV,qFAAqF;AACrF,MAAM,MAAM,SAAS,GAAG,OAAO,CAAC,WAAW,EAAE;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnF,sFAAsF;AACtF,MAAM,MAAM,YAAY,GAAG,WAAW,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ // Auto-generated by _scripts/emit-dts-sidecars.ts — do not edit by hand.
2
+ export * from "./contract/index.js";
@@ -0,0 +1,5 @@
1
+ export { FLOW_DEFINITION_JSON_SCHEMA_ID, canonicalizeFlowDefinition, generateFlowDefinitionJsonSchema, hashFlowDefinition } from '../../../chunk-SIF5F5SN.js';
2
+ export { FLOW_EXPRESSION_LIMITS, FlowDefinitionSchema, FlowExpressionError, evaluate, evaluateFlowExpression, normalizeV1, parseFlowDefinition } from '../../../chunk-ZE2KEPE2.js';
3
+ import '../../../chunk-NSBPE2FW.js';
4
+ //# sourceMappingURL=contract.js.map
5
+ //# sourceMappingURL=contract.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"contract.js"}
@@ -22,7 +22,7 @@ import type { FlowDefinition, FlowState, NodeExecutionSnapshot, NodeStatus } fro
22
22
  * @param runningIds - Set of node IDs currently executing. Defaults to an empty set.
23
23
  * @param skippedIds - Set of node IDs that were explicitly skipped. Skipped nodes count
24
24
  * as satisfied for downstream dependency checks. Defaults to an empty set.
25
- * @returns A {@link FlowState} describing the current status of every skill node.
25
+ * @returns A {@link FlowState} describing every active agent node.
26
26
  * @docLink packages/flow-engine/concepts#compute-flow-state
27
27
  */
28
28
  export declare function computeFlowState(flow: FlowDefinition, completedIds: Set<string>, runningIds?: Set<string>, skippedIds?: Set<string>): FlowState;
@@ -48,7 +48,7 @@ export declare function computeFlowState(flow: FlowDefinition, completedIds: Set
48
48
  * @param flow - The parsed flow definition.
49
49
  * @param snapshots - Map from node ID to its current {@link NodeExecutionSnapshot}.
50
50
  * Missing entries default to `not_started` with no interaction metadata.
51
- * @returns A {@link FlowState} describing the current status of every skill node,
51
+ * @returns A {@link FlowState} describing every active agent node,
52
52
  * including interaction fields (`approval`, `input`, `output`, `error`) copied
53
53
  * from the matching snapshot.
54
54
  * @docLink packages/flow-engine/concepts#compute-flow-state-from-snapshots
@@ -82,10 +82,10 @@ export declare function isBlocking(status: NodeStatus): boolean;
82
82
  * @param completedIds - Set of node IDs already known to be complete before this call.
83
83
  * @param skippedIds - Set of node IDs that were explicitly skipped. Defaults to an empty set.
84
84
  * @returns Array of node IDs whose hard dependencies are now fully satisfied and that
85
- * were not already available before `justCompleted` finished. Unlike {@link skillNodes}-based
85
+ * were not already available before `justCompleted` finished. Unlike agent-node-filtered
86
86
  * helpers, this walks raw edge targets and does not filter by node type — if a `group`,
87
87
  * `sub-flow`, or `router` node is a direct successor, its ID can appear here. Callers that
88
- * dispatch these IDs as runnable skill nodes are responsible for filtering non-`'skill'` IDs.
88
+ * dispatch these IDs are responsible for filtering non-agent nodes.
89
89
  * @docLink packages/flow-engine/concepts#resolve-next-nodes
90
90
  */
91
91
  export declare function resolveNextNodes(flow: FlowDefinition, justCompleted: string, completedIds: Set<string>, skippedIds?: Set<string>): string[];
@@ -1 +1 @@
1
- {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../../../../factory-assets/connectors/flow/engine/engine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EAGd,SAAS,EACT,qBAAqB,EAErB,UAAU,EACX,MAAM,YAAY,CAAC;AA+BpB;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,cAAc,EACpB,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,EACzB,UAAU,GAAE,GAAG,CAAC,MAAM,CAAa,EACnC,UAAU,GAAE,GAAG,CAAC,MAAM,CAAa,GAClC,SAAS,CA+EX;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,6BAA6B,CAC3C,IAAI,EAAE,cAAc,EACpB,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,GAC5C,SAAS,CA6DX;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAEtD;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,cAAc,EACpB,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,EACzB,UAAU,GAAE,GAAG,CAAC,MAAM,CAAa,GAClC,MAAM,EAAE,CAmBV;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,cAAc,EAAE,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,MAAM,EAAE,CAgB1F"}
1
+ {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../../../../factory-assets/connectors/flow/engine/engine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EAGd,SAAS,EACT,qBAAqB,EAErB,UAAU,EACX,MAAM,YAAY,CAAC;AAgCpB;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,cAAc,EACpB,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,EACzB,UAAU,GAAE,GAAG,CAAC,MAAM,CAAa,EACnC,UAAU,GAAE,GAAG,CAAC,MAAM,CAAa,GAClC,SAAS,CA+EX;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,6BAA6B,CAC3C,IAAI,EAAE,cAAc,EACpB,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,GAC5C,SAAS,CA6DX;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAEtD;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,cAAc,EACpB,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,EACzB,UAAU,GAAE,GAAG,CAAC,MAAM,CAAa,GAClC,MAAM,EAAE,CAmBV;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,cAAc,EAAE,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,MAAM,EAAE,CAgB1F"}
@@ -8,7 +8,7 @@
8
8
  * Implements IAssetKindProvider with flow-specific:
9
9
  * - Discovery patterns: *.flow.yaml, *.flow.json
10
10
  * - Manifest validation via FlowManifestSchema
11
- * - Requires extraction: nodes[].data.skill / nodes[].data.flow references
11
+ * - Requires extraction: nodes[].run.assets plus legacy skill/sub-flow references
12
12
  * - File filter: just the manifest file (flows are single-file)
13
13
  */
14
14
  import type { IAssetKindProvider } from "@skaile/workspaces/plugins";
@@ -1 +1 @@
1
- {"version":3,"file":"flow-kind-provider.d.ts","sourceRoot":"","sources":["../../../../../factory-assets/connectors/flow/engine/flow-kind-provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,KAAK,EAGV,kBAAkB,EACnB,MAAM,4BAA4B,CAAC;AAOpC,eAAO,MAAM,gBAAgB,EAAE,kBAkD9B,CAAC"}
1
+ {"version":3,"file":"flow-kind-provider.d.ts","sourceRoot":"","sources":["../../../../../factory-assets/connectors/flow/engine/flow-kind-provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,KAAK,EAGV,kBAAkB,EACnB,MAAM,4BAA4B,CAAC;AAOpC,eAAO,MAAM,gBAAgB,EAAE,kBA6D9B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../../../factory-assets/connectors/flow/engine/loader.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD;;;;;;;;;;;GAWG;AACH,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,CAOzD;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,cAAc,EAAE,CAsBlE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,YAAY,CAAC,eAAe,EAAE,MAAM,GAAG,cAAc,EAAE,CActE"}
1
+ {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../../../factory-assets/connectors/flow/engine/loader.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD;;;;;;;;;;;GAWG;AACH,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,CAYzD;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,cAAc,EAAE,CAsBlE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,YAAY,CAAC,eAAe,EAAE,MAAM,GAAG,cAAc,EAAE,CActE"}
@@ -0,0 +1,20 @@
1
+ import type { FlowDefinition, FlowNode } from "./types.js";
2
+ /** Returns whether a node is executable by the currently active agent-turn runtime. */
3
+ export declare function isAgentNode(node: FlowNode): boolean;
4
+ /** Returns the node's optional policy across strict v2 and legacy definitions. */
5
+ export declare function nodeIsOptional(node: FlowNode): boolean;
6
+ /** Returns the node's mandatory approval policy across strict v2 and legacy definitions. */
7
+ export declare function nodeRequiresApproval(node: FlowNode): boolean;
8
+ /** Returns the first declared skill requirement without making it the node identity. */
9
+ export declare function nodeSkillId(node: FlowNode): string;
10
+ /** Returns the user-facing node label across strict v2 and legacy definitions. */
11
+ export declare function nodeLabel(node: FlowNode): string;
12
+ /** Returns strict v2 run assets or the equivalent legacy declarations. */
13
+ export declare function nodeAssets(node: FlowNode): string[];
14
+ /** Returns the binding values already supplied at the node boundary. */
15
+ export declare function nodeBindings(node: FlowNode): Record<string, unknown>;
16
+ /** Returns the first-class instruction for a strict v2 agent node. */
17
+ export declare function nodeInstruction(node: FlowNode): string | undefined;
18
+ /** Returns run-scoped defaults across strict v2 and legacy definitions. */
19
+ export declare function flowDefaults(flow: FlowDefinition): Record<string, unknown>;
20
+ //# sourceMappingURL=node-shape.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-shape.d.ts","sourceRoot":"","sources":["../../../../../factory-assets/connectors/flow/engine/node-shape.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3D,uFAAuF;AACvF,wBAAgB,WAAW,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAEnD;AAED,kFAAkF;AAClF,wBAAgB,cAAc,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAEtD;AAED,4FAA4F;AAC5F,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAE5D;AAED,wFAAwF;AACxF,wBAAgB,WAAW,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAIlD;AAED,kFAAkF;AAClF,wBAAgB,SAAS,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAEhD;AAED,0EAA0E;AAC1E,wBAAgB,UAAU,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,EAAE,CAOnD;AAED,wEAAwE;AACxE,wBAAgB,YAAY,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAGpE;AAED,sEAAsE;AACtE,wBAAgB,eAAe,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,SAAS,CAElE;AAED,2EAA2E;AAC3E,wBAAgB,YAAY,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAE1E"}