@synergenius/flow-weaver 0.33.2 → 0.44.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.
- package/LICENSE +201 -226
- package/NOTICE +13 -0
- package/README.md +152 -245
- package/dist/agent/agent-loop.d.ts +4 -2
- package/dist/agent/cli-session.d.ts +3 -3
- package/dist/agent/cli-session.js +511 -438
- package/dist/agent/cli-spawn-config.d.ts +4 -4
- package/dist/agent/gate.d.ts +164 -0
- package/dist/agent/index.d.ts +4 -4
- package/dist/agent/index.js +174 -28
- package/dist/agent/mcp-bridge.d.ts +1 -1
- package/dist/agent/mcp-bridge.js +114 -128
- package/dist/agent/mcp-tool-server.d.ts +2 -2
- package/dist/agent/mcp-tool-server.js +147 -189
- package/dist/agent/profiles.d.ts +69 -0
- package/dist/agent/providers/anthropic.d.ts +2 -4
- package/dist/agent/providers/claude-cli.d.ts +4 -5
- package/dist/agent/providers/openai-compat.d.ts +8 -1
- package/dist/agent/streaming.d.ts +2 -2
- package/dist/agent/types.d.ts +16 -10
- package/dist/api/builder.d.ts +3 -3
- package/dist/api/compile.d.ts +9 -4
- package/dist/api/durable-validation.d.ts +15 -0
- package/dist/api/generate-in-place.d.ts +21 -19
- package/dist/api/generate.d.ts +21 -16
- package/dist/api/generated-module/local-node-functions.d.ts +24 -0
- package/dist/api/generated-module/module-format.d.ts +23 -0
- package/dist/api/generated-module/module-writer.d.ts +34 -0
- package/dist/api/generated-module/node-type-imports.d.ts +39 -0
- package/dist/api/generated-module/preamble.d.ts +16 -0
- package/dist/api/generated-module/workflow-functions.d.ts +29 -0
- package/dist/api/graph-identity.d.ts +39 -0
- package/dist/api/helpers.d.ts +4 -60
- package/dist/api/in-place/built-in-nodes.d.ts +18 -0
- package/dist/api/in-place/function-body.d.ts +21 -0
- package/dist/api/in-place/fw-imports.d.ts +30 -0
- package/dist/api/in-place/macro-coverage.d.ts +14 -0
- package/dist/api/in-place/node-type-functions.d.ts +18 -0
- package/dist/api/in-place/node-type-jsdoc.d.ts +20 -0
- package/dist/api/in-place/orphaned-node-types.d.ts +16 -0
- package/dist/api/in-place/runtime-section.d.ts +16 -0
- package/dist/api/in-place/signature.d.ts +47 -0
- package/dist/api/in-place/source-file.d.ts +19 -0
- package/dist/api/in-place/workflow-jsdoc.d.ts +19 -0
- package/dist/api/index.d.ts +18 -21
- package/dist/api/index.js +259 -53
- package/dist/api/inline-engine.generated.d.ts +3 -0
- package/dist/api/inline-runtime.d.ts +10 -2
- package/dist/api/manipulation/connections.d.ts +1 -1
- package/dist/api/manipulation/index.d.ts +8 -8
- package/dist/api/manipulation/node-types.d.ts +1 -1
- package/dist/api/manipulation/nodes.d.ts +3 -13
- package/dist/api/manipulation/ports.d.ts +1 -1
- package/dist/api/manipulation/scopes.d.ts +1 -1
- package/dist/api/manipulation/workflow.d.ts +1 -1
- package/dist/api/modify-operation.d.ts +0 -2
- package/dist/api/parse.d.ts +22 -1
- package/dist/api/port-references.d.ts +66 -0
- package/dist/api/query.d.ts +18 -2
- package/dist/api/templates.d.ts +1 -1
- package/dist/api/transform.d.ts +1 -1
- package/dist/api/validate.d.ts +1 -1
- package/dist/api/validation-registry.d.ts +2 -2
- package/dist/artifacts/brief.d.ts +43 -0
- package/dist/artifacts/index.d.ts +31 -0
- package/dist/artifacts/pdf.d.ts +19 -0
- package/dist/ast/builder.d.ts +3 -3
- package/dist/ast/index.d.ts +4 -4
- package/dist/ast/index.js +60 -5
- package/dist/ast/serialization-node.d.ts +1 -1
- package/dist/ast/serialization.d.ts +1 -1
- package/dist/ast/types.d.ts +82 -291
- package/dist/ast/workflow-utils.d.ts +4 -4
- package/dist/built-in-nodes/coercion-types.d.ts +1 -1
- package/dist/built-in-nodes/delay.d.ts +3 -1
- package/dist/built-in-nodes/generated-registry.d.ts +1 -1
- package/dist/built-in-nodes/index.d.ts +6 -5
- package/dist/built-in-nodes/index.js +79 -5
- package/dist/built-in-nodes/invoke-workflow.d.ts +2 -1
- package/dist/built-in-nodes/mock-types.d.ts +45 -14
- package/dist/built-in-nodes/sleep.d.ts +12 -0
- package/dist/built-in-nodes/wait-for-agent.d.ts +2 -1
- package/dist/built-in-nodes/wait-for-event.d.ts +2 -1
- package/dist/chevrotain-parser/coerce-parser.d.ts +1 -1
- package/dist/chevrotain-parser/connect-parser.d.ts +1 -1
- package/dist/chevrotain-parser/grammar-diagrams.d.ts +1 -1
- package/dist/chevrotain-parser/index.d.ts +20 -23
- package/dist/chevrotain-parser/node-parser.d.ts +7 -8
- package/dist/chevrotain-parser/parse-line.d.ts +54 -0
- package/dist/chevrotain-parser/tokens.d.ts +0 -17
- package/dist/chevrotain-parser/trigger-cancel-parser.d.ts +6 -1
- package/dist/chunks/chunk-4EUSHAY6.js +298 -0
- package/dist/chunks/chunk-4KDUEOFD.js +197 -0
- package/dist/chunks/chunk-5Y3AIUWY.js +911 -0
- package/dist/chunks/chunk-6KMVP6AU.js +20 -0
- package/dist/chunks/chunk-6PNJORFL.js +128 -0
- package/dist/chunks/chunk-7AAQNGRH.js +2001 -0
- package/dist/chunks/chunk-7YYKTPJ5.js +22705 -0
- package/dist/chunks/chunk-A5MBOFVY.js +33 -0
- package/dist/chunks/chunk-AXNQRVJB.js +18 -0
- package/dist/chunks/chunk-B6HQ6YS5.js +572 -0
- package/dist/chunks/chunk-CY3RNVML.js +296 -0
- package/dist/chunks/chunk-CYHYDLV4.js +653 -0
- package/dist/chunks/chunk-CZBCCK4Y.js +82 -0
- package/dist/chunks/chunk-DCMGQP5V.js +505 -0
- package/dist/chunks/chunk-DIAA66GL.js +72 -0
- package/dist/chunks/chunk-DUO6H5PR.js +20 -0
- package/dist/chunks/chunk-E5WN7IGO.js +125 -0
- package/dist/chunks/chunk-EFGFXXQF.js +184 -0
- package/dist/chunks/chunk-F3RTZV2A.js +2811 -0
- package/dist/chunks/chunk-FMTLP5ZX.js +1397 -0
- package/dist/chunks/chunk-HKZLQJDV.js +79 -0
- package/dist/chunks/chunk-INDEVYEC.js +146 -0
- package/dist/chunks/chunk-JQTF4R5L.js +390 -0
- package/dist/chunks/chunk-KMCAYNUM.js +331 -0
- package/dist/chunks/chunk-KMWCCOUJ.js +1444 -0
- package/dist/chunks/chunk-KU3CLJI2.js +338 -0
- package/dist/chunks/chunk-NDSTGMKR.js +3300 -0
- package/dist/chunks/chunk-NQNLUAPO.js +505 -0
- package/dist/chunks/chunk-O2U2LO57.js +466 -0
- package/dist/chunks/chunk-OOQG7UPP.js +457 -0
- package/dist/chunks/chunk-OZQAW5ZG.js +112 -0
- package/dist/chunks/chunk-P2CVDGHR.js +487 -0
- package/dist/chunks/chunk-P44RIZ7C.js +592 -0
- package/dist/chunks/chunk-PEZCT37T.js +1475 -0
- package/dist/chunks/chunk-PKWSAW6O.js +152 -0
- package/dist/chunks/chunk-Q6MDDZMT.js +4373 -0
- package/dist/chunks/chunk-QDE4Z7KW.js +6 -0
- package/dist/chunks/chunk-QJDAVSNY.js +8 -0
- package/dist/chunks/chunk-QYPORSLO.js +7552 -0
- package/dist/chunks/chunk-R4QGNK34.js +183 -0
- package/dist/chunks/chunk-REEYC73I.js +3002 -0
- package/dist/chunks/chunk-SEWDMQ6Q.js +46 -0
- package/dist/chunks/chunk-TAIUWKZB.js +3057 -0
- package/dist/chunks/chunk-TN4YZ3O7.js +196 -0
- package/dist/chunks/chunk-TRMFB43C.js +143 -0
- package/dist/chunks/chunk-VO4QXG2X.js +1016 -0
- package/dist/chunks/chunk-VP2P3BPA.js +1002 -0
- package/dist/chunks/chunk-VQ7H33J4.js +2176 -0
- package/dist/chunks/chunk-VWA7MCV2.js +105 -0
- package/dist/chunks/chunk-XAV22WD7.js +253 -0
- package/dist/chunks/chunk-YSPBPZDV.js +148 -0
- package/dist/chunks/chunk-ZKEGXO73.js +282 -0
- package/dist/chunks/chunk-ZMGN6F3S.js +4256 -0
- package/dist/chunks/grammar-diagrams-AI7VDXOM.js +14 -0
- package/dist/chunks/index.min-ECJD6GZC.js +37 -0
- package/dist/chunks/manifest-EPTR5MYH.js +21 -0
- package/dist/chunks/openapi-document-6TCGVDUW.js +69 -0
- package/dist/chunks/registry-K2U5KUTY.js +23 -0
- package/dist/chunks/serialization-node-UGY6CFH6.js +38 -0
- package/dist/chunks/validate-GEKSZPIN.js +24 -0
- package/dist/chunks/validation-registry-IQZX3UE3.js +7 -0
- package/dist/chunks/validator-VXFHLPDW.js +26 -0
- package/dist/chunks/workflow-executor-KBGFKHNR.js +36 -0
- package/dist/cli/commands/agents.d.ts +16 -0
- package/dist/cli/commands/artifact.d.ts +10 -0
- package/dist/cli/commands/compile.d.ts +0 -30
- package/dist/cli/commands/console.d.ts +32 -0
- package/dist/cli/commands/context.d.ts +0 -3
- package/dist/cli/commands/describe.js +386 -352
- package/dist/cli/commands/dev.d.ts +9 -4
- package/dist/cli/commands/diagram.d.ts +3 -5
- package/dist/cli/commands/doctor.d.ts +27 -4
- package/dist/cli/commands/doctor.js +3307 -633
- package/dist/cli/commands/export.d.ts +6 -4
- package/dist/cli/commands/grammar.d.ts +0 -3
- package/dist/cli/commands/implement.d.ts +1 -1
- package/dist/cli/commands/init/agent-handoff.d.ts +28 -0
- package/dist/cli/commands/init/config.d.ts +3 -0
- package/dist/cli/commands/init/files.d.ts +12 -0
- package/dist/cli/commands/init/naming.d.ts +13 -0
- package/dist/cli/commands/init/output.d.ts +12 -0
- package/dist/cli/commands/init/setup.d.ts +21 -0
- package/dist/cli/commands/init/types.d.ts +53 -0
- package/dist/cli/commands/init-personas.d.ts +9 -1
- package/dist/cli/commands/init.d.ts +24 -88
- package/dist/cli/commands/market.d.ts +1 -1
- package/dist/cli/commands/mcp-setup.d.ts +1 -4
- package/dist/cli/commands/modify.d.ts +0 -5
- package/dist/cli/commands/openapi.d.ts +9 -11
- package/dist/cli/commands/run.d.ts +0 -4
- package/dist/cli/commands/serve.d.ts +24 -26
- package/dist/cli/commands/status.d.ts +1 -1
- package/dist/cli/exports.d.ts +3 -4
- package/dist/cli/exports.js +124 -23
- package/dist/cli/flow-weaver-agents-H653446S.mjs +81 -0
- package/dist/cli/flow-weaver-artifact-WBFYTW76.mjs +58 -0
- package/dist/cli/flow-weaver-chunk-265CEK74.mjs +2 -0
- package/dist/cli/flow-weaver-chunk-2C7PZCV5.mjs +186 -0
- package/dist/cli/flow-weaver-chunk-3BSYCWPL.mjs +3109 -0
- package/dist/cli/flow-weaver-chunk-3MKUQP3D.mjs +547 -0
- package/dist/cli/flow-weaver-chunk-3ZLMPQTH.mjs +27 -0
- package/dist/cli/flow-weaver-chunk-4DVY73ML.mjs +280 -0
- package/dist/cli/flow-weaver-chunk-54M4KNEL.mjs +200 -0
- package/dist/cli/flow-weaver-chunk-55QMUZIA.mjs +256 -0
- package/dist/cli/flow-weaver-chunk-6ZUJ7LMX.mjs +2003 -0
- package/dist/cli/flow-weaver-chunk-7ET6N32V.mjs +419 -0
- package/dist/cli/flow-weaver-chunk-7G63RR4K.mjs +8880 -0
- package/dist/cli/flow-weaver-chunk-A6M5K3W7.mjs +4418 -0
- package/dist/cli/flow-weaver-chunk-AA3NATMX.mjs +154 -0
- package/dist/cli/flow-weaver-chunk-APX6MQ5A.mjs +5652 -0
- package/dist/cli/flow-weaver-chunk-BHCC5FE5.mjs +17 -0
- package/dist/cli/flow-weaver-chunk-DM4BBRRU.mjs +35 -0
- package/dist/cli/flow-weaver-chunk-DRN7KPWY.mjs +168 -0
- package/dist/cli/flow-weaver-chunk-EKWF27G6.mjs +23 -0
- package/dist/cli/flow-weaver-chunk-EM5HWQ4R.mjs +338 -0
- package/dist/cli/flow-weaver-chunk-FPPPU2DG.mjs +226 -0
- package/dist/cli/flow-weaver-chunk-GAQXZHNO.mjs +3005 -0
- package/dist/cli/flow-weaver-chunk-GBUNNP33.mjs +1329 -0
- package/dist/cli/flow-weaver-chunk-HMAKDE55.mjs +636 -0
- package/dist/cli/flow-weaver-chunk-HQ3ZAN44.mjs +367 -0
- package/dist/cli/flow-weaver-chunk-I4APCXYN.mjs +21442 -0
- package/dist/cli/flow-weaver-chunk-IJJ4JXTL.mjs +2297 -0
- package/dist/cli/flow-weaver-chunk-J7EPZW2I.mjs +33 -0
- package/dist/cli/flow-weaver-chunk-KOEMJHLG.mjs +83 -0
- package/dist/cli/flow-weaver-chunk-M6CBWQKJ.mjs +271 -0
- package/dist/cli/flow-weaver-chunk-MHJ4N652.mjs +1580 -0
- package/dist/cli/flow-weaver-chunk-MKAFQWLP.mjs +202 -0
- package/dist/cli/flow-weaver-chunk-MMV2XGD3.mjs +3291 -0
- package/dist/cli/flow-weaver-chunk-MSI2UJES.mjs +125 -0
- package/dist/cli/flow-weaver-chunk-N767YRAI.mjs +48 -0
- package/dist/cli/flow-weaver-chunk-NQKKWDGF.mjs +56 -0
- package/dist/cli/flow-weaver-chunk-NYZDQYFU.mjs +45 -0
- package/dist/cli/flow-weaver-chunk-OMVWSNHJ.mjs +14 -0
- package/dist/cli/flow-weaver-chunk-PUWZ47H5.mjs +2188 -0
- package/dist/cli/flow-weaver-chunk-QOPRVDES.mjs +46 -0
- package/dist/cli/flow-weaver-chunk-RIWE7YTR.mjs +216 -0
- package/dist/cli/flow-weaver-chunk-S63Q3JIU.mjs +789 -0
- package/dist/cli/flow-weaver-chunk-T7X5A23H.mjs +558 -0
- package/dist/cli/flow-weaver-chunk-TLV3VZUN.mjs +2 -0
- package/dist/cli/flow-weaver-chunk-TS5P3PIN.mjs +194 -0
- package/dist/cli/flow-weaver-chunk-U3EO3X4B.mjs +649 -0
- package/dist/cli/flow-weaver-chunk-UNFS3NQP.mjs +34 -0
- package/dist/cli/flow-weaver-chunk-V6DHWFQG.mjs +2811 -0
- package/dist/cli/flow-weaver-chunk-VXWNLYQU.mjs +9 -0
- package/dist/cli/flow-weaver-chunk-W3YNK26P.mjs +149 -0
- package/dist/cli/flow-weaver-chunk-XG2WKXYZ.mjs +324 -0
- package/dist/cli/flow-weaver-chunk-YLSRZWFK.mjs +2219 -0
- package/dist/cli/flow-weaver-chunk-YVPURWS6.mjs +40 -0
- package/dist/cli/flow-weaver-chunk-Z44JK332.mjs +582 -0
- package/dist/cli/flow-weaver-chunk-Z5ZJPNSY.mjs +517 -0
- package/dist/cli/flow-weaver-chunk-ZQALO25T.mjs +594 -0
- package/dist/cli/flow-weaver-compile-A2CABDSB.mjs +37 -0
- package/dist/cli/flow-weaver-console-6EBHDBTN.mjs +71 -0
- package/dist/cli/flow-weaver-context-ECLYANFF.mjs +17 -0
- package/dist/cli/flow-weaver-context-ZRUMW2KE.mjs +69 -0
- package/dist/cli/flow-weaver-create-WIP4EFNP.mjs +124 -0
- package/dist/cli/flow-weaver-deployment-WJJRK7NO.mjs +14 -0
- package/dist/cli/flow-weaver-describe-XDIFF5LI.mjs +41 -0
- package/dist/cli/flow-weaver-dev-LG2NSQAU.mjs +196 -0
- package/dist/cli/flow-weaver-diagram-3EVQARQE.mjs +52 -0
- package/dist/cli/flow-weaver-diagram-7LR7O4M2.mjs +44 -0
- package/dist/cli/flow-weaver-diff-USF7DJLU.mjs +85 -0
- package/dist/cli/flow-weaver-docs-QU2ZOXKH.mjs +96 -0
- package/dist/cli/flow-weaver-doctor-K447YWHR.mjs +43 -0
- package/dist/cli/flow-weaver-export-LAS6N56Y.mjs +140 -0
- package/dist/cli/flow-weaver-grammar-RIRUS3Q6.mjs +49 -0
- package/dist/cli/flow-weaver-grammar-diagrams-WXRTW5SK.mjs +15 -0
- package/dist/cli/flow-weaver-implement-5JG6BCFZ.mjs +114 -0
- package/dist/cli/flow-weaver-index.min-OR5SIHXD.mjs +39 -0
- package/dist/cli/flow-weaver-init-34YZNPQX.mjs +972 -0
- package/dist/cli/flow-weaver-init-personas-NOGZTQQ2.mjs +48 -0
- package/dist/cli/flow-weaver-manifest-4JNUSEB3.mjs +18 -0
- package/dist/cli/flow-weaver-market-WA4CKHKV.mjs +444 -0
- package/dist/cli/flow-weaver-mcp-setup-O26MGXSD.mjs +22 -0
- package/dist/cli/flow-weaver-migrate-VFVEUTPH.mjs +119 -0
- package/dist/cli/flow-weaver-modify-VM3JP5K6.mjs +97 -0
- package/dist/cli/flow-weaver-openapi-IRBWI3HM.mjs +71 -0
- package/dist/cli/flow-weaver-openapi-document-7N6YMPG3.mjs +30 -0
- package/dist/cli/flow-weaver-pack-commands-OS2QRXAK.mjs +146 -0
- package/dist/cli/flow-weaver-registry-5MLFRPPT.mjs +25 -0
- package/dist/cli/flow-weaver-run-DSTLSTHR.mjs +555 -0
- package/dist/cli/flow-weaver-serialization-node-LE6PCG4M.mjs +50 -0
- package/dist/cli/flow-weaver-serve-NVLCLSOW.mjs +192 -0
- package/dist/cli/flow-weaver-server-7IERLVXE.mjs +2925 -0
- package/dist/cli/flow-weaver-server-KWF4PXYC.mjs +19112 -0
- package/dist/cli/flow-weaver-status-75W2S3YB.mjs +138 -0
- package/dist/cli/flow-weaver-strip-AZPXUYVA.mjs +79 -0
- package/dist/cli/flow-weaver-templates-DSNMB6K7.mjs +72 -0
- package/dist/cli/flow-weaver-validate-A4UWDQN6.mjs +19 -0
- package/dist/cli/flow-weaver-validate-GRBZ5W4C.mjs +296 -0
- package/dist/cli/flow-weaver-validation-registry-BINGUNXX.mjs +9 -0
- package/dist/cli/flow-weaver-validator-TY56CI42.mjs +21 -0
- package/dist/cli/flow-weaver-watch-OPPERXL6.mjs +114 -0
- package/dist/cli/flow-weaver-workflow-executor-6AHYPXAN.mjs +26 -0
- package/dist/cli/flow-weaver.mjs +3557 -89384
- package/dist/cli/index.d.ts +5 -2
- package/dist/cli/pack-commands-needed.d.ts +12 -0
- package/dist/cli/program.d.ts +14 -0
- package/dist/cli/templates/ai/mock-provider.d.ts +1 -1
- package/dist/cli/templates/index.d.ts +1 -8
- package/dist/cli/templates/nodes/agent-router.d.ts +1 -1
- package/dist/cli/templates/nodes/aggregator.d.ts +1 -1
- package/dist/cli/templates/nodes/conversation-memory.d.ts +1 -1
- package/dist/cli/templates/nodes/http.d.ts +1 -1
- package/dist/cli/templates/nodes/human-approval.d.ts +1 -1
- package/dist/cli/templates/nodes/json-extractor.d.ts +1 -1
- package/dist/cli/templates/nodes/llm-call.d.ts +1 -1
- package/dist/cli/templates/nodes/prompt-template.d.ts +1 -1
- package/dist/cli/templates/nodes/rag-retriever.d.ts +1 -1
- package/dist/cli/templates/nodes/tool-executor.d.ts +1 -1
- package/dist/cli/templates/nodes/transformer.d.ts +1 -1
- package/dist/cli/templates/nodes/validator.d.ts +1 -1
- package/dist/cli/templates/shared/approval-types.d.ts +1 -1
- package/dist/cli/templates/shared/case.d.ts +14 -0
- package/dist/cli/templates/shared/llm-types.d.ts +4 -4
- package/dist/cli/templates/workflows/aggregator.d.ts +1 -1
- package/dist/cli/templates/workflows/ai-agent.d.ts +1 -1
- package/dist/cli/templates/workflows/ai-chat.d.ts +1 -1
- package/dist/cli/templates/workflows/ai-rag.d.ts +1 -1
- package/dist/cli/templates/workflows/ai-react.d.ts +1 -1
- package/dist/cli/templates/workflows/approval.d.ts +10 -0
- package/dist/cli/templates/workflows/conditional.d.ts +2 -2
- package/dist/cli/templates/workflows/error-handler.d.ts +2 -2
- package/dist/cli/templates/workflows/foreach.d.ts +1 -1
- package/dist/cli/templates/workflows/sequential.d.ts +1 -1
- package/dist/cli/templates/workflows/webhook.d.ts +1 -1
- package/dist/cli/utils/interactive.d.ts +6 -0
- package/dist/cli/utils/json-option.d.ts +8 -0
- package/dist/cli/utils/logger.d.ts +2 -0
- package/dist/compiler/durable-source-proof.d.ts +23 -0
- package/dist/compiler/executable-artifact.d.ts +29 -0
- package/dist/compiler/index.d.ts +4 -0
- package/dist/compiler/index.js +36 -0
- package/dist/console/app.js +106 -0
- package/dist/console/assets/synergenius.svg +18 -0
- package/dist/console/author.d.ts +32 -0
- package/dist/console/cli-catalog.d.ts +21 -0
- package/dist/console/cli-run.d.ts +35 -0
- package/dist/console/cli-run.js +46 -0
- package/dist/console/debug.d.ts +67 -0
- package/dist/console/diff-view.d.ts +96 -0
- package/dist/console/export.d.ts +36 -0
- package/dist/console/git.d.ts +27 -0
- package/dist/console/index.d.ts +4 -0
- package/dist/console/index.html +16 -0
- package/dist/console/index.js +203 -0
- package/dist/console/packs.d.ts +100 -0
- package/dist/console/request-guard.d.ts +10 -0
- package/dist/console/respond.d.ts +16 -0
- package/dist/console/router.d.ts +64 -0
- package/dist/console/routes-agents.d.ts +14 -0
- package/dist/console/routes-project.d.ts +3 -0
- package/dist/console/routes-runs.d.ts +3 -0
- package/dist/console/routes-services.d.ts +7 -0
- package/dist/console/routes-tools.d.ts +3 -0
- package/dist/console/runs.d.ts +69 -0
- package/dist/console/scan.d.ts +49 -0
- package/dist/console/schema.d.ts +74 -0
- package/dist/console/server.d.ts +34 -0
- package/dist/console/server.js +43264 -0
- package/dist/console/services.d.ts +119 -0
- package/dist/console/source.d.ts +23 -0
- package/dist/console/status.d.ts +68 -0
- package/dist/console/styles.css +1023 -0
- package/dist/console/terminals.d.ts +22 -0
- package/dist/console/workflow-view.d.ts +153 -0
- package/dist/constants.d.ts +5 -1
- package/dist/constants.js +56 -167
- package/dist/context/index.d.ts +10 -0
- package/dist/context/index.js +14 -191
- package/dist/coordinator/agent-gate.d.ts +107 -0
- package/dist/coordinator/bundle-digest.d.ts +20 -0
- package/dist/coordinator/clock-tick.d.ts +4 -0
- package/dist/coordinator/effect-receipts.d.ts +10 -0
- package/dist/coordinator/errors.d.ts +31 -0
- package/dist/coordinator/file-store.d.ts +3 -0
- package/dist/coordinator/gate-labeling.d.ts +33 -0
- package/dist/coordinator/gate-resolution.d.ts +28 -0
- package/dist/coordinator/index.d.ts +12 -0
- package/dist/coordinator/index.js +107 -0
- package/dist/coordinator/memory-store.d.ts +3 -0
- package/dist/coordinator/params.d.ts +18 -0
- package/dist/coordinator/run-annotations.d.ts +6 -0
- package/dist/coordinator/run-context.d.ts +11 -0
- package/dist/coordinator/run-ending.d.ts +5 -0
- package/dist/coordinator/run-outcome.d.ts +31 -0
- package/dist/coordinator/run-resume.d.ts +6 -0
- package/dist/coordinator/run-start.d.ts +4 -0
- package/dist/coordinator/run-store.d.ts +275 -0
- package/dist/coordinator/run-trace.d.ts +41 -0
- package/dist/coordinator/run-views.d.ts +12 -0
- package/dist/coordinator/runs-dir.d.ts +26 -0
- package/dist/coordinator/store.d.ts +67 -0
- package/dist/coordinator/time.d.ts +39 -0
- package/dist/coordinator/workflow-selection.d.ts +6 -0
- package/dist/deployment/index.d.ts +11 -16
- package/dist/deployment/index.js +541 -50
- package/dist/deployment/targets/base.d.ts +11 -13
- package/dist/deployment/targets/openapi-parts.d.ts +92 -0
- package/dist/diagram/arms.d.ts +70 -0
- package/dist/diagram/ascii-renderer.d.ts +1 -1
- package/dist/diagram/geometry.d.ts +20 -32
- package/dist/diagram/graph/bounds.d.ts +30 -0
- package/dist/diagram/graph/metrics.d.ts +21 -0
- package/dist/diagram/graph/nodes.d.ts +33 -0
- package/dist/diagram/graph/placement.d.ts +22 -0
- package/dist/diagram/graph/ports.d.ts +23 -0
- package/dist/diagram/graph/routing.d.ts +40 -0
- package/dist/diagram/graph/scopes.d.ts +30 -0
- package/dist/diagram/index.d.ts +15 -23
- package/dist/diagram/index.js +632 -111
- package/dist/diagram/labels.d.ts +12 -0
- package/dist/diagram/lanes.d.ts +93 -0
- package/dist/diagram/layout.d.ts +1 -1
- package/dist/diagram/material-symbols.d.ts +7 -0
- package/dist/diagram/orthogonal-router.d.ts +2 -3
- package/dist/diagram/process-view.d.ts +79 -0
- package/dist/diagram/spine.d.ts +25 -0
- package/dist/diagram/theme.d.ts +1 -5
- package/dist/diagram/types.d.ts +6 -20
- package/dist/diff/index.js +53 -9
- package/dist/diff/types.d.ts +1 -5
- package/dist/doc-metadata/extractors/annotations.d.ts +0 -4
- package/dist/doc-metadata/extractors/cli-commands.d.ts +2 -1
- package/dist/doc-metadata/extractors/core-metadata.d.ts +19 -4
- package/dist/doc-metadata/extractors/error-codes.d.ts +1 -1
- package/dist/doc-metadata/extractors/mcp-tools.d.ts +7 -3
- package/dist/doc-metadata/index.d.ts +1 -2
- package/dist/doc-metadata/index.js +2368 -9
- package/dist/doc-metadata/types.d.ts +7 -24
- package/dist/docs/guide.d.ts +33 -0
- package/dist/docs/index.d.ts +7 -4
- package/dist/docs/index.js +298 -298
- package/dist/docs/pack-topics.d.ts +18 -0
- package/dist/editor-completions/annotationValues.d.ts +1 -1
- package/dist/editor-completions/contextParser.d.ts +3 -2
- package/dist/editor-completions/dataTypes.d.ts +1 -1
- package/dist/editor-completions/goToDefinition.d.ts +1 -1
- package/dist/editor-completions/index.d.ts +8 -8
- package/dist/editor-completions/index.js +1244 -175
- package/dist/editor-completions/jsDocAnnotations.d.ts +1 -1
- package/dist/editor-completions/modifierCompletions.d.ts +1 -1
- package/dist/export/index.d.ts +7 -1
- package/dist/generated-branding.js +8 -21
- package/dist/generated-version.d.ts +1 -1
- package/dist/generated-version.js +7 -3
- package/dist/generator/annotation-generator.d.ts +84 -0
- package/dist/generator/async-detection.d.ts +1 -1
- package/dist/{body-generator.d.ts → generator/body-generator.d.ts} +7 -3
- package/dist/generator/code-utils.d.ts +15 -60
- package/dist/generator/connection-reads.d.ts +94 -0
- package/dist/generator/control-flow-plan.d.ts +74 -0
- package/dist/generator/control-flow.d.ts +1 -1
- package/dist/generator/exit-assembly.d.ts +11 -0
- package/dist/generator/index.d.ts +4 -5
- package/dist/generator/index.js +34 -11
- package/dist/generator/input-port-values.d.ts +22 -0
- package/dist/generator/{scope-function-generator.d.ts → node-arguments.d.ts} +76 -1
- package/dist/generator/node-invocation.d.ts +74 -0
- package/dist/{node-types-generator.d.ts → generator/node-types-generator.d.ts} +3 -2
- package/dist/generator/scope-closure.d.ts +23 -0
- package/dist/generator/scoped-child.d.ts +49 -0
- package/dist/{sugar-optimizer.d.ts → generator/sugar-optimizer.d.ts} +1 -1
- package/dist/generator/unified.d.ts +14 -2
- package/dist/generator/workflow-generator.d.ts +37 -0
- package/dist/index.d.ts +29 -26
- package/dist/index.js +1322 -92
- package/dist/jsdoc-port-sync/apply-diff.d.ts +15 -0
- package/dist/jsdoc-port-sync/callback-signature.d.ts +17 -0
- package/dist/jsdoc-port-sync/diff.d.ts +5 -7
- package/dist/jsdoc-port-sync/incomplete-lines.d.ts +41 -0
- package/dist/jsdoc-port-sync/index.d.ts +11 -11
- package/dist/jsdoc-port-sync/index.js +88 -45
- package/dist/jsdoc-port-sync/jsdoc-to-signature.d.ts +66 -0
- package/dist/jsdoc-port-sync/port-parser.d.ts +6 -24
- package/dist/jsdoc-port-sync/port-tag-placement.d.ts +55 -0
- package/dist/jsdoc-port-sync/scoped-ports.d.ts +21 -0
- package/dist/jsdoc-port-sync/signature-parser.d.ts +8 -1
- package/dist/jsdoc-port-sync/signature-to-jsdoc.d.ts +77 -0
- package/dist/jsdoc-port-sync/sync.d.ts +4 -1
- package/dist/marketplace/index.d.ts +5 -3
- package/dist/marketplace/index.js +62 -10
- package/dist/marketplace/install.d.ts +24 -0
- package/dist/marketplace/manifest.d.ts +1 -1
- package/dist/marketplace/npmrc.d.ts +24 -0
- package/dist/marketplace/registry.d.ts +46 -11
- package/dist/marketplace/types.d.ts +41 -24
- package/dist/marketplace/validator.d.ts +1 -1
- package/dist/mcp/debug-session.d.ts +2 -4
- package/dist/mcp/dist-imports.d.ts +12 -0
- package/dist/mcp/response-utils.d.ts +11 -9
- package/dist/mcp/server.d.ts +0 -1
- package/dist/mcp/tools-context.d.ts +11 -0
- package/dist/mcp/tools-diagram.d.ts +1 -2
- package/dist/mcp/tools-export.d.ts +2 -2
- package/dist/mcp/tools-marketplace.d.ts +1 -1
- package/dist/mcp/tools-run.d.ts +17 -0
- package/dist/mcp/tools-workflow.d.ts +3 -0
- package/dist/mcp/types.d.ts +4 -14
- package/dist/mcp/workflow-executor.d.ts +57 -19
- package/dist/npm-packages.d.ts +1 -1
- package/dist/npm-packages.js +10 -473
- package/dist/parser/annotation-parser.d.ts +88 -0
- package/dist/parser/annotation-suggestion.d.ts +23 -0
- package/dist/parser/durable-effect-contract.d.ts +10 -0
- package/dist/parser/expression-references.d.ts +101 -0
- package/dist/parser/external-node-types.d.ts +69 -0
- package/dist/{function-like.d.ts → parser/function-like.d.ts} +10 -3
- package/dist/parser/generated-sections.d.ts +25 -0
- package/dist/parser/import-resolution.d.ts +67 -0
- package/dist/parser/import-stub.d.ts +29 -0
- package/dist/parser/jsdoc/config-types.d.ts +209 -0
- package/dist/parser/jsdoc/graph-tags.d.ts +54 -0
- package/dist/parser/jsdoc/node-type-block.d.ts +23 -0
- package/dist/parser/jsdoc/parse-line-once.d.ts +11 -0
- package/dist/parser/jsdoc/port-tags.d.ts +42 -0
- package/dist/parser/jsdoc/runtime-tags.d.ts +65 -0
- package/dist/parser/jsdoc/signature-types.d.ts +52 -0
- package/dist/parser/jsdoc/workflow-block.d.ts +22 -0
- package/dist/parser/jsdoc-parser.d.ts +23 -0
- package/dist/parser/macro-expansion.d.ts +80 -0
- package/dist/parser/module-resolution.d.ts +38 -0
- package/dist/parser/node-inference.d.ts +39 -0
- package/dist/parser/npm-node-types.d.ts +24 -0
- package/dist/parser/pack-handlers.d.ts +12 -0
- package/dist/parser/path-data-resolution.d.ts +75 -0
- package/dist/parser/port-inference.d.ts +15 -0
- package/dist/{resolve-package-types.d.ts → parser/resolve-package-types.d.ts} +4 -0
- package/dist/parser/serialize-deploy-annotations.d.ts +19 -0
- package/dist/parser/tag-registry.d.ts +22 -0
- package/dist/parser/workflow-extraction.d.ts +39 -0
- package/dist/runtime/ExecutionContext.d.ts +87 -99
- package/dist/runtime/continuation-core.d.ts +147 -0
- package/dist/runtime/continuation.d.ts +48 -0
- package/dist/runtime/debug-controller.d.ts +7 -22
- package/dist/runtime/durable-execution.d.ts +176 -0
- package/dist/runtime/events.d.ts +16 -1
- package/dist/runtime/executable-module-contract.d.ts +16 -0
- package/dist/runtime/index.d.ts +13 -10
- package/dist/runtime/index.js +947 -9
- package/dist/runtime/strict-json.d.ts +15 -0
- package/dist/server/access.d.ts +12 -0
- package/dist/server/api.d.ts +126 -0
- package/dist/server/callback-delivery.d.ts +62 -0
- package/dist/server/callback-url.d.ts +44 -0
- package/dist/server/context.d.ts +35 -0
- package/dist/server/http-error.d.ts +10 -0
- package/dist/server/index.d.ts +7 -1
- package/dist/server/index.js +125 -6
- package/dist/server/openapi-document.d.ts +33 -0
- package/dist/server/openapi.d.ts +32 -0
- package/dist/server/respond.d.ts +35 -0
- package/dist/server/route-params.d.ts +17 -0
- package/dist/server/route-plan.d.ts +41 -0
- package/dist/server/routes-catalog.d.ts +5 -0
- package/dist/server/routes-declared.d.ts +12 -0
- package/dist/server/routes-runs.d.ts +8 -0
- package/dist/server/run-driver.d.ts +58 -0
- package/dist/server/run-view.d.ts +26 -0
- package/dist/server/transport.d.ts +35 -0
- package/dist/server/types.d.ts +143 -52
- package/dist/server/webhook-server.d.ts +12 -38
- package/dist/server/workflow-registry.d.ts +7 -4
- package/dist/service-registry.d.ts +49 -0
- package/dist/service-registry.js +123 -0
- package/dist/testing/assertions.d.ts +2 -2
- package/dist/testing/index.d.ts +14 -13
- package/dist/testing/index.js +582 -24
- package/dist/testing/mock-approval.d.ts +3 -5
- package/dist/testing/mock-llm.d.ts +2 -3
- package/dist/testing/recorder.d.ts +5 -6
- package/dist/testing/replayer.d.ts +6 -7
- package/dist/testing/run-store-check.d.ts +3 -0
- package/dist/testing/token-tracker.d.ts +2 -2
- package/dist/{type-mappings.d.ts → types/type-mappings.d.ts} +13 -1
- package/dist/utils/error-utils.d.ts +4 -2
- package/dist/utils/port-ordering.d.ts +2 -2
- package/dist/utils/port-tag-utils.d.ts +1 -1
- package/dist/validation/agent-detection.d.ts +17 -5
- package/dist/validation/agent-rules.d.ts +6 -7
- package/dist/validation/core-rules.d.ts +49 -0
- package/dist/validation/design-rules.d.ts +9 -3
- package/dist/validation/rule-registry.d.ts +3 -3
- package/dist/validation/rules/connections.d.ts +27 -0
- package/dist/validation/rules/context.d.ts +11 -0
- package/dist/validation/rules/cycles.d.ts +17 -0
- package/dist/validation/rules/data-flow.d.ts +19 -0
- package/dist/validation/rules/scope-topology.d.ts +35 -0
- package/dist/validation/rules/type-compatibility.d.ts +30 -0
- package/dist/validation/type-checker.d.ts +39 -0
- package/dist/validation/validator-helpers.d.ts +31 -0
- package/dist/validation/validator.d.ts +30 -0
- package/docs/reference/advanced-annotations.md +277 -60
- package/docs/reference/built-in-nodes.md +164 -94
- package/docs/reference/cancellation.md +44 -0
- package/docs/reference/cli-reference.md +252 -234
- package/docs/reference/compilation.md +36 -109
- package/docs/reference/concepts.md +80 -63
- package/docs/reference/console.md +169 -0
- package/docs/reference/debugging.md +26 -57
- package/docs/reference/deployment.md +217 -143
- package/docs/reference/durable-gates.md +445 -0
- package/docs/reference/error-codes.md +90 -43
- package/docs/reference/export-interface.md +91 -26
- package/docs/reference/iterative-development.md +50 -28
- package/docs/reference/jsdoc-grammar.md +66 -311
- package/docs/reference/library.md +250 -0
- package/docs/reference/marketplace.md +301 -152
- package/docs/reference/mcp-tools.md +102 -0
- package/docs/reference/node-conversion.md +84 -59
- package/docs/reference/orientation.md +68 -0
- package/docs/reference/scaffold.md +5 -4
- package/docs/reference/tutorial.md +106 -166
- package/docs/reference/visual-reference.md +1 -1
- package/package.json +85 -50
- package/dist/agent/agent-loop.js +0 -156
- package/dist/agent/cli-spawn-config.js +0 -65
- package/dist/agent/device-connection.d.ts +0 -79
- package/dist/agent/device-connection.js +0 -184
- package/dist/agent/env-allowlist.js +0 -60
- package/dist/agent/providers/anthropic.js +0 -198
- package/dist/agent/providers/claude-cli.js +0 -161
- package/dist/agent/providers/openai-compat.js +0 -205
- package/dist/agent/providers/platform.d.ts +0 -23
- package/dist/agent/providers/platform.js +0 -132
- package/dist/agent/streaming.js +0 -186
- package/dist/agent/types.js +0 -20
- package/dist/annotation-generator.d.ts +0 -50
- package/dist/annotation-generator.js +0 -743
- package/dist/api/builder.js +0 -345
- package/dist/api/command-runner.js +0 -787
- package/dist/api/compile.js +0 -148
- package/dist/api/extract-types.js +0 -57
- package/dist/api/generate-in-place.js +0 -1477
- package/dist/api/generate.js +0 -514
- package/dist/api/helpers.js +0 -285
- package/dist/api/inline-runtime.js +0 -526
- package/dist/api/manipulation/connections.js +0 -151
- package/dist/api/manipulation/index.js +0 -41
- package/dist/api/manipulation/node-types.js +0 -200
- package/dist/api/manipulation/nodes.js +0 -355
- package/dist/api/manipulation/ports.js +0 -228
- package/dist/api/manipulation/scopes.js +0 -156
- package/dist/api/manipulation/workflow.js +0 -116
- package/dist/api/modify-operation.js +0 -177
- package/dist/api/parse.js +0 -115
- package/dist/api/patterns.d.ts +0 -112
- package/dist/api/patterns.js +0 -303
- package/dist/api/query.js +0 -840
- package/dist/api/templates.js +0 -117
- package/dist/api/transform.js +0 -40
- package/dist/api/validate.js +0 -64
- package/dist/api/validation-registry.js +0 -10
- package/dist/api/workflow-file-operations.js +0 -180
- package/dist/ast/builder.js +0 -395
- package/dist/ast/serialization-node.js +0 -30
- package/dist/ast/serialization.js +0 -134
- package/dist/ast/types.js +0 -2
- package/dist/ast/workflow-utils.js +0 -114
- package/dist/body-generator.js +0 -35
- package/dist/built-in-nodes/coercion-types.js +0 -61
- package/dist/built-in-nodes/delay.js +0 -29
- package/dist/built-in-nodes/generated-registry.js +0 -299
- package/dist/built-in-nodes/invoke-workflow.js +0 -36
- package/dist/built-in-nodes/mock-types.js +0 -42
- package/dist/built-in-nodes/wait-for-agent.js +0 -31
- package/dist/built-in-nodes/wait-for-event.js +0 -25
- package/dist/chevrotain-parser/coerce-parser.js +0 -103
- package/dist/chevrotain-parser/connect-parser.js +0 -136
- package/dist/chevrotain-parser/fan-parser.js +0 -149
- package/dist/chevrotain-parser/grammar-diagrams.js +0 -273
- package/dist/chevrotain-parser/index.js +0 -31
- package/dist/chevrotain-parser/map-parser.js +0 -130
- package/dist/chevrotain-parser/node-parser.js +0 -558
- package/dist/chevrotain-parser/path-parser.js +0 -140
- package/dist/chevrotain-parser/port-parser.js +0 -519
- package/dist/chevrotain-parser/position-parser.d.ts +0 -20
- package/dist/chevrotain-parser/position-parser.js +0 -83
- package/dist/chevrotain-parser/scope-parser.js +0 -104
- package/dist/chevrotain-parser/tokens.js +0 -429
- package/dist/chevrotain-parser/trigger-cancel-parser.js +0 -291
- package/dist/cli/commands/account.d.ts +0 -4
- package/dist/cli/commands/account.js +0 -50
- package/dist/cli/commands/ai-credentials.d.ts +0 -12
- package/dist/cli/commands/ai-credentials.js +0 -95
- package/dist/cli/commands/apikey.d.ts +0 -4
- package/dist/cli/commands/apikey.js +0 -64
- package/dist/cli/commands/auth.d.ts +0 -9
- package/dist/cli/commands/auth.js +0 -255
- package/dist/cli/commands/compile.js +0 -331
- package/dist/cli/commands/connect.d.ts +0 -4
- package/dist/cli/commands/connect.js +0 -163
- package/dist/cli/commands/context.js +0 -51
- package/dist/cli/commands/create.js +0 -139
- package/dist/cli/commands/deploy.d.ts +0 -6
- package/dist/cli/commands/deploy.js +0 -74
- package/dist/cli/commands/dev.js +0 -227
- package/dist/cli/commands/diagram.js +0 -39
- package/dist/cli/commands/diff.js +0 -57
- package/dist/cli/commands/docs.js +0 -74
- package/dist/cli/commands/export.js +0 -153
- package/dist/cli/commands/grammar.js +0 -40
- package/dist/cli/commands/implement.js +0 -91
- package/dist/cli/commands/init-personas.js +0 -541
- package/dist/cli/commands/init.js +0 -797
- package/dist/cli/commands/market.js +0 -440
- package/dist/cli/commands/mcp-setup.js +0 -433
- package/dist/cli/commands/migrate.js +0 -91
- package/dist/cli/commands/modify.js +0 -58
- package/dist/cli/commands/openapi.js +0 -71
- package/dist/cli/commands/org.d.ts +0 -8
- package/dist/cli/commands/org.js +0 -136
- package/dist/cli/commands/pattern.d.ts +0 -34
- package/dist/cli/commands/pattern.js +0 -186
- package/dist/cli/commands/plugin.d.ts +0 -16
- package/dist/cli/commands/plugin.js +0 -176
- package/dist/cli/commands/run.js +0 -742
- package/dist/cli/commands/serve.js +0 -93
- package/dist/cli/commands/status.js +0 -123
- package/dist/cli/commands/strip.js +0 -61
- package/dist/cli/commands/templates.js +0 -58
- package/dist/cli/commands/validate.js +0 -267
- package/dist/cli/commands/watch.js +0 -71
- package/dist/cli/config/credentials.d.ts +0 -15
- package/dist/cli/config/credentials.js +0 -43
- package/dist/cli/config/platform-client.d.ts +0 -123
- package/dist/cli/config/platform-client.js +0 -248
- package/dist/cli/env-setup.js +0 -12
- package/dist/cli/index.js +0 -850
- package/dist/cli/pack-commands.js +0 -122
- package/dist/cli/postinstall.d.ts +0 -16
- package/dist/cli/postinstall.js +0 -119
- package/dist/cli/templates/ai/mock-provider.js +0 -64
- package/dist/cli/templates/ai/types.js +0 -5
- package/dist/cli/templates/approvals/index.d.ts +0 -15
- package/dist/cli/templates/approvals/index.js +0 -241
- package/dist/cli/templates/index.js +0 -123
- package/dist/cli/templates/nodes/agent-router.js +0 -114
- package/dist/cli/templates/nodes/aggregator.js +0 -63
- package/dist/cli/templates/nodes/conversation-memory.js +0 -85
- package/dist/cli/templates/nodes/http.js +0 -80
- package/dist/cli/templates/nodes/human-approval.js +0 -109
- package/dist/cli/templates/nodes/json-extractor.js +0 -119
- package/dist/cli/templates/nodes/llm-call.js +0 -106
- package/dist/cli/templates/nodes/prompt-template.js +0 -52
- package/dist/cli/templates/nodes/rag-retriever.js +0 -128
- package/dist/cli/templates/nodes/tool-executor.js +0 -108
- package/dist/cli/templates/nodes/transformer.js +0 -68
- package/dist/cli/templates/nodes/validator.js +0 -62
- package/dist/cli/templates/pack-loader.js +0 -58
- package/dist/cli/templates/providers/index.js +0 -239
- package/dist/cli/templates/shared/approval-types.js +0 -31
- package/dist/cli/templates/shared/llm-types.js +0 -109
- package/dist/cli/templates/workflows/aggregator.js +0 -101
- package/dist/cli/templates/workflows/ai-agent.js +0 -326
- package/dist/cli/templates/workflows/ai-chat.js +0 -167
- package/dist/cli/templates/workflows/ai-rag.js +0 -184
- package/dist/cli/templates/workflows/ai-react.js +0 -293
- package/dist/cli/templates/workflows/conditional.js +0 -139
- package/dist/cli/templates/workflows/error-handler.js +0 -145
- package/dist/cli/templates/workflows/foreach.js +0 -140
- package/dist/cli/templates/workflows/sequential.js +0 -200
- package/dist/cli/templates/workflows/webhook.js +0 -158
- package/dist/cli/utils/cli-helpers.d.ts +0 -44
- package/dist/cli/utils/cli-helpers.js +0 -99
- package/dist/cli/utils/logger.js +0 -126
- package/dist/cli/utils/parse-int-strict.js +0 -17
- package/dist/cli/utils/safe-write.js +0 -54
- package/dist/deployment/config/defaults.d.ts +0 -29
- package/dist/deployment/config/defaults.js +0 -98
- package/dist/deployment/config/loader.d.ts +0 -24
- package/dist/deployment/config/loader.js +0 -237
- package/dist/deployment/config/types.d.ts +0 -117
- package/dist/deployment/config/types.js +0 -5
- package/dist/deployment/core/adapters.d.ts +0 -66
- package/dist/deployment/core/adapters.js +0 -156
- package/dist/deployment/core/executor.d.ts +0 -62
- package/dist/deployment/core/executor.js +0 -197
- package/dist/deployment/core/formatters.d.ts +0 -42
- package/dist/deployment/core/formatters.js +0 -146
- package/dist/deployment/openapi/generator.d.ts +0 -146
- package/dist/deployment/openapi/generator.js +0 -347
- package/dist/deployment/openapi/schema-converter.d.ts +0 -49
- package/dist/deployment/openapi/schema-converter.js +0 -192
- package/dist/deployment/targets/base.js +0 -855
- package/dist/deployment/types.d.ts +0 -140
- package/dist/deployment/types.js +0 -8
- package/dist/diagram/ascii-renderer.js +0 -528
- package/dist/diagram/geometry.js +0 -1226
- package/dist/diagram/html-viewer.d.ts +0 -21
- package/dist/diagram/html-viewer.js +0 -1745
- package/dist/diagram/layout.js +0 -143
- package/dist/diagram/orthogonal-router.js +0 -458
- package/dist/diagram/renderer.d.ts +0 -3
- package/dist/diagram/renderer.js +0 -280
- package/dist/diagram/theme.js +0 -282
- package/dist/diagram/types.js +0 -2
- package/dist/diff/WorkflowDiffer.js +0 -429
- package/dist/diff/formatDiff.js +0 -239
- package/dist/diff/impact.js +0 -119
- package/dist/diff/types.js +0 -35
- package/dist/doc-metadata/extractors/annotations.js +0 -638
- package/dist/doc-metadata/extractors/cli-commands.js +0 -326
- package/dist/doc-metadata/extractors/core-metadata.js +0 -61
- package/dist/doc-metadata/extractors/error-codes.js +0 -372
- package/dist/doc-metadata/extractors/grammar-rules.js +0 -51
- package/dist/doc-metadata/extractors/mcp-tools.js +0 -705
- package/dist/doc-metadata/extractors/plugin-api.d.ts +0 -19
- package/dist/doc-metadata/extractors/plugin-api.js +0 -279
- package/dist/doc-metadata/types.js +0 -5
- package/dist/editor-completions/annotationValues.js +0 -146
- package/dist/editor-completions/contextParser.js +0 -410
- package/dist/editor-completions/dataTypes.js +0 -95
- package/dist/editor-completions/goToDefinition.js +0 -112
- package/dist/editor-completions/jsDocAnnotations.js +0 -359
- package/dist/editor-completions/modifierCompletions.js +0 -197
- package/dist/editor-completions/types.js +0 -8
- package/dist/export/index.js +0 -212
- package/dist/extensions/index.d.ts +0 -16
- package/dist/extensions/index.js +0 -17
- package/dist/friendly-errors.js +0 -761
- package/dist/function-like.js +0 -84
- package/dist/generator/async-detection.js +0 -56
- package/dist/generator/code-utils.js +0 -551
- package/dist/generator/compile-target-registry.d.ts +0 -20
- package/dist/generator/compile-target-registry.js +0 -20
- package/dist/generator/control-flow.js +0 -358
- package/dist/generator/dev-mode-registry.d.ts +0 -27
- package/dist/generator/dev-mode-registry.js +0 -20
- package/dist/generator/scope-function-generator.js +0 -397
- package/dist/generator/unified.js +0 -1831
- package/dist/generator.d.ts +0 -54
- package/dist/generator.js +0 -101
- package/dist/jsdoc-parser.d.ts +0 -377
- package/dist/jsdoc-parser.js +0 -1189
- package/dist/jsdoc-port-sync/constants.js +0 -103
- package/dist/jsdoc-port-sync/diff.js +0 -319
- package/dist/jsdoc-port-sync/port-parser.js +0 -579
- package/dist/jsdoc-port-sync/rename.js +0 -256
- package/dist/jsdoc-port-sync/signature-parser.js +0 -559
- package/dist/jsdoc-port-sync/sync.js +0 -653
- package/dist/marketplace/manifest.js +0 -194
- package/dist/marketplace/registry.js +0 -198
- package/dist/marketplace/types.js +0 -9
- package/dist/marketplace/validator.js +0 -150
- package/dist/mcp/agent-channel.d.ts +0 -35
- package/dist/mcp/agent-channel.js +0 -61
- package/dist/mcp/auto-registration.d.ts +0 -3
- package/dist/mcp/auto-registration.js +0 -62
- package/dist/mcp/debug-session.js +0 -25
- package/dist/mcp/index.d.ts +0 -11
- package/dist/mcp/index.js +0 -10
- package/dist/mcp/pack-tools.js +0 -59
- package/dist/mcp/prompts.js +0 -68
- package/dist/mcp/response-utils.js +0 -97
- package/dist/mcp/run-registry.d.ts +0 -29
- package/dist/mcp/run-registry.js +0 -24
- package/dist/mcp/server.js +0 -63
- package/dist/mcp/tools-context.js +0 -51
- package/dist/mcp/tools-debug.js +0 -451
- package/dist/mcp/tools-diagram.js +0 -97
- package/dist/mcp/tools-docs.js +0 -62
- package/dist/mcp/tools-export.js +0 -222
- package/dist/mcp/tools-marketplace.js +0 -132
- package/dist/mcp/tools-model.d.ts +0 -3
- package/dist/mcp/tools-model.js +0 -279
- package/dist/mcp/tools-pattern.d.ts +0 -3
- package/dist/mcp/tools-pattern.js +0 -604
- package/dist/mcp/tools-query.js +0 -377
- package/dist/mcp/tools-resources.js +0 -41
- package/dist/mcp/tools-template.js +0 -119
- package/dist/mcp/tools-workflow-run.d.ts +0 -40
- package/dist/mcp/tools-workflow-run.js +0 -150
- package/dist/mcp/types.js +0 -2
- package/dist/mcp/workflow-executor.js +0 -242
- package/dist/migration/registry.js +0 -29
- package/dist/node-types-generator.js +0 -139
- package/dist/parser/tag-registry.js +0 -57
- package/dist/parser.d.ts +0 -232
- package/dist/parser.js +0 -2500
- package/dist/plugin/PluginPanel.d.ts +0 -12
- package/dist/plugin/PluginPanel.js +0 -5
- package/dist/plugin/index.d.ts +0 -13
- package/dist/plugin/index.js +0 -14
- package/dist/plugin/types.d.ts +0 -75
- package/dist/plugin/types.js +0 -8
- package/dist/resolve-package-types.js +0 -123
- package/dist/runtime/CancellationError.js +0 -20
- package/dist/runtime/ExecutionContext.js +0 -280
- package/dist/runtime/builtin-functions.js +0 -549
- package/dist/runtime/checkpoint.d.ts +0 -84
- package/dist/runtime/checkpoint.js +0 -225
- package/dist/runtime/debug-controller.js +0 -247
- package/dist/runtime/events.js +0 -2
- package/dist/runtime/function-registry.js +0 -66
- package/dist/runtime/parameter-resolver.js +0 -113
- package/dist/server/types.js +0 -5
- package/dist/server/webhook-server.js +0 -269
- package/dist/server/workflow-registry.js +0 -202
- package/dist/shared-project.js +0 -28
- package/dist/sugar-optimizer.js +0 -498
- package/dist/testing/assertions.js +0 -127
- package/dist/testing/mock-approval.js +0 -98
- package/dist/testing/mock-llm.js +0 -119
- package/dist/testing/recorder.js +0 -70
- package/dist/testing/replayer.js +0 -143
- package/dist/testing/token-tracker.js +0 -94
- package/dist/type-checker.d.ts +0 -42
- package/dist/type-checker.js +0 -190
- package/dist/type-mappings.js +0 -131
- package/dist/types/branded-ports.d.ts +0 -151
- package/dist/types/branded-ports.js +0 -121
- package/dist/types/index.d.ts +0 -5
- package/dist/types/index.js +0 -5
- package/dist/types.d.ts +0 -139
- package/dist/types.js +0 -15
- package/dist/utils/error-utils.js +0 -27
- package/dist/utils/lru-cache.js +0 -40
- package/dist/utils/port-ordering.js +0 -81
- package/dist/utils/port-tag-utils.js +0 -41
- package/dist/utils/string-distance.js +0 -56
- package/dist/validation/agent-detection.js +0 -115
- package/dist/validation/agent-rules.js +0 -262
- package/dist/validation/design-rules.js +0 -377
- package/dist/validation/rule-registry.js +0 -37
- package/dist/validator.d.ts +0 -113
- package/dist/validator.js +0 -1631
- package/docs/reference/patterns.md +0 -159
- package/scripts/postinstall.cjs +0 -86
- /package/dist/{shared-project.d.ts → parser/shared-project.d.ts} +0 -0
- /package/dist/{friendly-errors.d.ts → validation/friendly-errors.d.ts} +0 -0
|
@@ -1,28 +1,54 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
*
|
|
2
|
+
* Canned answers for a run under test, carried by the execution-scoped
|
|
3
|
+
* runtime (`runtime.services.mocks`).
|
|
4
|
+
*
|
|
5
|
+
* Who reads them is the point. A compiled workflow never calls the bodies of
|
|
6
|
+
* `waitForEvent`, `waitForAgent` or `sleep`: the generator emits a durable
|
|
7
|
+
* gate in their place, and the engine (`mockedGateAnswer` in
|
|
8
|
+
* `src/runtime/durable-execution.ts`) answers that gate from here before it
|
|
9
|
+
* yields. The bodies of those three nodes throw if reached. `invokeWorkflow`
|
|
10
|
+
* and `delay` do run as functions and read `invocations` and `fast`
|
|
11
|
+
* themselves.
|
|
12
|
+
*
|
|
13
|
+
* How a gate is answered, in this order:
|
|
14
|
+
*
|
|
15
|
+
* - `gates[nodeId]` answers any gate, built-in or authored, with the gate's
|
|
16
|
+
* data outputs; control ports are filled in as for a person's answer.
|
|
17
|
+
* - `waitForAgent` also reads `agents` and `waitForEvent` reads `events`,
|
|
18
|
+
* keyed by the node's first input (the agent id, the event name), by
|
|
19
|
+
* `nodeId:key`, or by `nodeId:*` (the lookup `lookupMock` describes).
|
|
20
|
+
* - `sleep` wakes at once under `fast`, as `delay` returns at once.
|
|
21
|
+
* - A gate no entry answers yields for a person, whether or not its section
|
|
22
|
+
* exists: an `agents` section without this agent's key is a wait, not a
|
|
23
|
+
* failure. Nothing takes the failure path on a missing key.
|
|
5
24
|
*/
|
|
25
|
+
import type { NodeExecutionRuntime } from '../runtime/durable-execution.js';
|
|
6
26
|
export interface FwMockConfig {
|
|
7
|
-
/**
|
|
27
|
+
/** Event payloads keyed by event name (or `nodeId:name`, `nodeId:*`). Answers a `waitForEvent` gate. */
|
|
8
28
|
events?: Record<string, object>;
|
|
9
|
-
/**
|
|
29
|
+
/** Invocation results keyed by functionId (or `nodeId:functionId`, `nodeId:*`). Read by `invokeWorkflow` itself. */
|
|
10
30
|
invocations?: Record<string, object>;
|
|
11
|
-
/**
|
|
31
|
+
/** Agent results keyed by agent id (or `nodeId:agentId`, `nodeId:*`). Answers a `waitForAgent` gate. */
|
|
12
32
|
agents?: Record<string, object>;
|
|
13
|
-
/**
|
|
33
|
+
/**
|
|
34
|
+
* An answer for any durable gate, keyed by the node's instance id: the
|
|
35
|
+
* gate's data outputs as an object (`{ decision: { approved: true } }`).
|
|
36
|
+
* The run goes through the gate as if a person had answered that.
|
|
37
|
+
*/
|
|
38
|
+
gates?: Record<string, object>;
|
|
39
|
+
/** When true, `delay` waits 1ms instead of its duration and a `sleep` gate wakes at once. */
|
|
14
40
|
fast?: boolean;
|
|
15
41
|
}
|
|
16
42
|
/**
|
|
17
|
-
* Read
|
|
43
|
+
* Read mock configuration from the execution-scoped runtime.
|
|
18
44
|
*/
|
|
19
|
-
export declare function getMockConfig(): FwMockConfig | undefined;
|
|
45
|
+
export declare function getMockConfig(runtime?: NodeExecutionRuntime): FwMockConfig | undefined;
|
|
20
46
|
/**
|
|
21
47
|
* Look up a mock value from a section, supporting instance-qualified keys.
|
|
22
48
|
*
|
|
23
|
-
* Checks "instanceId:key" first (for per-node targeting), then
|
|
24
|
-
*
|
|
25
|
-
*
|
|
49
|
+
* Checks "instanceId:key" first (for per-node targeting), then
|
|
50
|
+
* "instanceId:*" (whatever key this node asks for), then falls back to
|
|
51
|
+
* plain "key".
|
|
26
52
|
*
|
|
27
53
|
* @example
|
|
28
54
|
* ```json
|
|
@@ -30,11 +56,16 @@ export declare function getMockConfig(): FwMockConfig | undefined;
|
|
|
30
56
|
* "invocations": {
|
|
31
57
|
* "retryCall:api/process": { "status": "ok" },
|
|
32
58
|
* "api/process": { "status": "default" }
|
|
59
|
+
* },
|
|
60
|
+
* "events": {
|
|
61
|
+
* "link:*": { "url": "https://figma.com/file/abc" }
|
|
33
62
|
* }
|
|
34
63
|
* }
|
|
35
64
|
* ```
|
|
36
65
|
* When the node "retryCall" invokes "api/process", it gets `{ status: "ok" }`.
|
|
37
|
-
* Any other node invoking "api/process" gets `{ status: "default" }`.
|
|
66
|
+
* Any other node invoking "api/process" gets `{ status: "default" }`. The
|
|
67
|
+
* node "link" gets its event whatever name it waits for -- the name is
|
|
68
|
+
* often computed at run time, and the console mocks by node, not by name.
|
|
38
69
|
*/
|
|
39
|
-
export declare function lookupMock<T>(section: Record<string, T> | undefined, key: string): T | undefined;
|
|
70
|
+
export declare function lookupMock<T>(section: Record<string, T> | undefined, key: string, runtime?: NodeExecutionRuntime): T | undefined;
|
|
40
71
|
//# sourceMappingURL=mock-types.d.ts.map
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { NodeExecutionRuntime } from '../runtime/durable-execution.js';
|
|
2
|
+
/**
|
|
3
|
+
* @flowWeaver nodeType
|
|
4
|
+
* @input duration - How long the run sleeps before it goes on (e.g. "30s", "2h", "3d")
|
|
5
|
+
* @output wokeAt - When the run went on, as an ISO 8601 time
|
|
6
|
+
*/
|
|
7
|
+
export declare function sleep(execute: boolean, duration: string, runtime?: NodeExecutionRuntime): Promise<{
|
|
8
|
+
onSuccess: boolean;
|
|
9
|
+
onFailure: boolean;
|
|
10
|
+
wokeAt: string;
|
|
11
|
+
}>;
|
|
12
|
+
//# sourceMappingURL=sleep.d.ts.map
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { NodeExecutionRuntime } from '../runtime/durable-execution.js';
|
|
1
2
|
/**
|
|
2
3
|
* @flowWeaver nodeType
|
|
3
4
|
* @input agentId - Agent/task identifier
|
|
@@ -5,7 +6,7 @@
|
|
|
5
6
|
* @input [prompt] - Message to display when requesting input
|
|
6
7
|
* @output agentResult - Result returned by the agent
|
|
7
8
|
*/
|
|
8
|
-
export declare function waitForAgent(execute: boolean, agentId: string, context: object, prompt?: string): Promise<{
|
|
9
|
+
export declare function waitForAgent(execute: boolean, agentId: string, context: object, prompt?: string, _abortSignal?: AbortSignal, runtime?: NodeExecutionRuntime): Promise<{
|
|
9
10
|
onSuccess: boolean;
|
|
10
11
|
onFailure: boolean;
|
|
11
12
|
agentResult: object;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { NodeExecutionRuntime } from '../runtime/durable-execution.js';
|
|
1
2
|
/**
|
|
2
3
|
* @flowWeaver nodeType
|
|
3
4
|
* @input eventName - Event name to wait for (e.g. "app/approval.received")
|
|
@@ -5,7 +6,7 @@
|
|
|
5
6
|
* @input [timeout] - Max wait time (e.g. "24h", "7d"). Empty = no timeout
|
|
6
7
|
* @output eventData - The received event's data payload
|
|
7
8
|
*/
|
|
8
|
-
export declare function waitForEvent(execute: boolean, eventName: string, match?: string, timeout?: string): Promise<{
|
|
9
|
+
export declare function waitForEvent(execute: boolean, eventName: string, match?: string, timeout?: string, runtime?: NodeExecutionRuntime): Promise<{
|
|
9
10
|
onSuccess: boolean;
|
|
10
11
|
onFailure: boolean;
|
|
11
12
|
eventData: object;
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
*
|
|
9
9
|
* Where targetType is one of: string, number, boolean, json, object
|
|
10
10
|
*/
|
|
11
|
-
import type { TCoerceTargetType } from '../ast/types
|
|
11
|
+
import type { TCoerceTargetType } from '../ast/types';
|
|
12
12
|
export interface CoerceParseResult {
|
|
13
13
|
instanceId: string;
|
|
14
14
|
source: {
|
|
@@ -9,11 +9,11 @@ export interface GrammarCollection {
|
|
|
9
9
|
port: ISerializedGast[];
|
|
10
10
|
node: ISerializedGast[];
|
|
11
11
|
connect: ISerializedGast[];
|
|
12
|
-
position: ISerializedGast[];
|
|
13
12
|
scope: ISerializedGast[];
|
|
14
13
|
path: ISerializedGast[];
|
|
15
14
|
map: ISerializedGast[];
|
|
16
15
|
fan: ISerializedGast[];
|
|
16
|
+
coerce: ISerializedGast[];
|
|
17
17
|
triggerCancel: ISerializedGast[];
|
|
18
18
|
}
|
|
19
19
|
/**
|
|
@@ -2,28 +2,25 @@
|
|
|
2
2
|
* @module chevrotain-parser
|
|
3
3
|
*
|
|
4
4
|
* Chevrotain-based parsers for JSDoc annotations.
|
|
5
|
-
* Provides structured parsing for @input, @output, @node, @connect
|
|
5
|
+
* Provides structured parsing for @input, @output, @node, @connect and the sugar tags.
|
|
6
6
|
*/
|
|
7
|
-
export {
|
|
8
|
-
export {
|
|
9
|
-
export
|
|
10
|
-
export {
|
|
11
|
-
export
|
|
12
|
-
export {
|
|
13
|
-
export
|
|
14
|
-
export {
|
|
15
|
-
export
|
|
16
|
-
export {
|
|
17
|
-
export
|
|
18
|
-
export {
|
|
19
|
-
export
|
|
20
|
-
export {
|
|
21
|
-
export
|
|
22
|
-
export {
|
|
23
|
-
export
|
|
24
|
-
export {
|
|
25
|
-
export
|
|
26
|
-
export { parseTriggerLine, parseCancelOnLine, parseRetriesLine, parseTimeoutLine, parseThrottleLine } from './trigger-cancel-parser.js';
|
|
27
|
-
export type { TriggerParseResult, CancelOnParseResult, ThrottleParseResult } from './trigger-cancel-parser.js';
|
|
28
|
-
export { generateGrammarDiagrams, getAllGrammars, serializedToEBNF } from './grammar-diagrams.js';
|
|
7
|
+
export { parsePortLine, getPortGrammar } from './port-parser';
|
|
8
|
+
export type { PortParseResult } from './port-parser';
|
|
9
|
+
export { parseNodeLine, getNodeGrammar } from './node-parser';
|
|
10
|
+
export type { NodeParseResult } from './node-parser';
|
|
11
|
+
export { parseConnectLine, getConnectGrammar } from './connect-parser';
|
|
12
|
+
export type { ConnectParseResult, PortReference } from './connect-parser';
|
|
13
|
+
export { parseScopeLine, getScopeGrammar } from './scope-parser';
|
|
14
|
+
export type { ScopeParseResult } from './scope-parser';
|
|
15
|
+
export { parseMapLine } from './map-parser';
|
|
16
|
+
export type { MapParseResult } from './map-parser';
|
|
17
|
+
export { parsePathLine } from './path-parser';
|
|
18
|
+
export type { PathParseResult, PathStep } from './path-parser';
|
|
19
|
+
export { parseFanOutLine, parseFanInLine } from './fan-parser';
|
|
20
|
+
export type { FanOutParseResult, FanInParseResult, PortRef } from './fan-parser';
|
|
21
|
+
export { parseCoerceLine } from './coerce-parser';
|
|
22
|
+
export type { CoerceParseResult } from './coerce-parser';
|
|
23
|
+
export { parseTriggerLine, parseCancelOnLine, parseRetriesLine, parseTimeoutLine, parseThrottleLine } from './trigger-cancel-parser';
|
|
24
|
+
export type { TriggerParseResult, CancelOnParseResult, ThrottleParseResult } from './trigger-cancel-parser';
|
|
25
|
+
export { generateGrammarDiagrams, getAllGrammars, serializedToEBNF } from './grammar-diagrams';
|
|
29
26
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -17,20 +17,19 @@ export interface NodeParseResult {
|
|
|
17
17
|
width: number;
|
|
18
18
|
height: number;
|
|
19
19
|
};
|
|
20
|
-
position?: {
|
|
21
|
-
x: number;
|
|
22
|
-
y: number;
|
|
23
|
-
};
|
|
24
20
|
color?: string;
|
|
25
21
|
icon?: string;
|
|
26
22
|
tags?: Array<{
|
|
27
23
|
label: string;
|
|
28
24
|
tooltip?: string;
|
|
29
25
|
}>;
|
|
30
|
-
/**
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
26
|
+
/**
|
|
27
|
+
* Generic `[key: "value"]` bracket attributes not claimed by a named
|
|
28
|
+
* attribute above. Core does not interpret these; a pack reads them from the
|
|
29
|
+
* node instance and gives them meaning (validation, export, serialization).
|
|
30
|
+
* This is the extension point for domain vocabularies on `@node`.
|
|
31
|
+
*/
|
|
32
|
+
attributes?: Record<string, string>;
|
|
34
33
|
/** Warning codes to suppress for this instance */
|
|
35
34
|
suppress?: string[];
|
|
36
35
|
}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module chevrotain-parser/parse-line
|
|
3
|
+
*
|
|
4
|
+
* The steps every single-line annotation parser shares: lex the line, check
|
|
5
|
+
* that it starts with the parser's tag, run the entry rule, and word the
|
|
6
|
+
* warning when the rule fails.
|
|
7
|
+
*/
|
|
8
|
+
import type { CstNode, CstParser, IRecognitionException, IToken, TokenType } from 'chevrotain';
|
|
9
|
+
/** A CST token as the visitors read it: only its source text matters. */
|
|
10
|
+
export interface CstNodeWithImage {
|
|
11
|
+
image: string;
|
|
12
|
+
}
|
|
13
|
+
export interface LexTaggedLineOptions {
|
|
14
|
+
/**
|
|
15
|
+
* Parse the tokens even when the lexer reported errors. Port lines use this
|
|
16
|
+
* because their free-text description can hold characters the lexer rejects.
|
|
17
|
+
*/
|
|
18
|
+
ignoreLexErrors?: boolean;
|
|
19
|
+
/** Called with the first lexer error message before the line is rejected. */
|
|
20
|
+
onLexError?: (message: string) => void;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Lex `input` and return its tokens when the first one is one of `tags`.
|
|
24
|
+
* Returns null for a line that does not lex cleanly, is empty, or belongs to
|
|
25
|
+
* another tag.
|
|
26
|
+
*/
|
|
27
|
+
export declare function lexTaggedLine(input: string, tags: TokenType | readonly TokenType[], options?: LexTaggedLineOptions): IToken[] | null;
|
|
28
|
+
/** What running an entry rule produced: the tree, and the first error if the rule failed. */
|
|
29
|
+
export interface RuleResult {
|
|
30
|
+
cst: CstNode;
|
|
31
|
+
error: IRecognitionException | undefined;
|
|
32
|
+
}
|
|
33
|
+
/** Feed `tokens` to the parser singleton and run one of its entry rules. */
|
|
34
|
+
export declare function runRule(parser: CstParser, tokens: IToken[], rule: () => CstNode): RuleResult;
|
|
35
|
+
export interface LineFailureOptions {
|
|
36
|
+
/** How many characters of the line to quote. */
|
|
37
|
+
maxLength?: number;
|
|
38
|
+
/** The verb in the first line; `tokenize` for lexer failures. */
|
|
39
|
+
verb?: 'parse' | 'tokenize';
|
|
40
|
+
/** Text placed right after the quoted line, such as the rule that failed. */
|
|
41
|
+
context?: string;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* The warning for a line that did not parse:
|
|
45
|
+
* `Failed to parse <kind> line: "<line>"`, then the error, then the expected format.
|
|
46
|
+
*/
|
|
47
|
+
export declare function lineFailure(kind: string, input: string, error: string, expected: string, options?: LineFailureOptions): string;
|
|
48
|
+
/**
|
|
49
|
+
* Remove the quotes around a string literal token and undo its escapes: `\"`
|
|
50
|
+
* becomes `"` and `*\/` becomes `*` followed by `/`, the escape that keeps a
|
|
51
|
+
* value from closing the JSDoc comment it sits in.
|
|
52
|
+
*/
|
|
53
|
+
export declare function unquoteStringLiteral(raw: string): string;
|
|
54
|
+
//# sourceMappingURL=parse-line.d.ts.map
|
|
@@ -5,15 +5,12 @@
|
|
|
5
5
|
* These tokens are used by the lexer to tokenize JSDoc content.
|
|
6
6
|
*/
|
|
7
7
|
import { Lexer } from 'chevrotain';
|
|
8
|
-
export declare const WhiteSpace: import("chevrotain").TokenType;
|
|
9
|
-
export declare const Newline: import("chevrotain").TokenType;
|
|
10
8
|
export declare const Asterisk: import("chevrotain").TokenType;
|
|
11
9
|
export declare const InputTag: import("chevrotain").TokenType;
|
|
12
10
|
export declare const OutputTag: import("chevrotain").TokenType;
|
|
13
11
|
export declare const StepTag: import("chevrotain").TokenType;
|
|
14
12
|
export declare const NodeTag: import("chevrotain").TokenType;
|
|
15
13
|
export declare const ConnectTag: import("chevrotain").TokenType;
|
|
16
|
-
export declare const PositionTag: import("chevrotain").TokenType;
|
|
17
14
|
export declare const ScopeTag: import("chevrotain").TokenType;
|
|
18
15
|
export declare const MapTag: import("chevrotain").TokenType;
|
|
19
16
|
export declare const PathTag: import("chevrotain").TokenType;
|
|
@@ -27,11 +24,6 @@ export declare const TimeoutTag: import("chevrotain").TokenType;
|
|
|
27
24
|
export declare const ThrottleTag: import("chevrotain").TokenType;
|
|
28
25
|
export declare const OverKeyword: import("chevrotain").TokenType;
|
|
29
26
|
export declare const AsKeyword: import("chevrotain").TokenType;
|
|
30
|
-
export declare const ParamTag: import("chevrotain").TokenType;
|
|
31
|
-
export declare const ReturnsTag: import("chevrotain").TokenType;
|
|
32
|
-
export declare const FlowWeaverTag: import("chevrotain").TokenType;
|
|
33
|
-
export declare const LabelAttr: import("chevrotain").TokenType;
|
|
34
|
-
export declare const NameAttr: import("chevrotain").TokenType;
|
|
35
27
|
export declare const ScopePrefix: import("chevrotain").TokenType;
|
|
36
28
|
export declare const OrderPrefix: import("chevrotain").TokenType;
|
|
37
29
|
export declare const PlacementPrefix: import("chevrotain").TokenType;
|
|
@@ -45,19 +37,10 @@ export declare const PullExecutionPrefix: import("chevrotain").TokenType;
|
|
|
45
37
|
export declare const MinimizedKeyword: import("chevrotain").TokenType;
|
|
46
38
|
export declare const HiddenKeyword: import("chevrotain").TokenType;
|
|
47
39
|
export declare const SizePrefix: import("chevrotain").TokenType;
|
|
48
|
-
export declare const PositionPrefix: import("chevrotain").TokenType;
|
|
49
40
|
export declare const ColorPrefix: import("chevrotain").TokenType;
|
|
50
41
|
export declare const IconPrefix: import("chevrotain").TokenType;
|
|
51
|
-
export declare const JobPrefix: import("chevrotain").TokenType;
|
|
52
|
-
export declare const EnvironmentAttrPrefix: import("chevrotain").TokenType;
|
|
53
42
|
export declare const TagsPrefix: import("chevrotain").TokenType;
|
|
54
43
|
export declare const SuppressPrefix: import("chevrotain").TokenType;
|
|
55
|
-
export declare const EventEq: import("chevrotain").TokenType;
|
|
56
|
-
export declare const CronEq: import("chevrotain").TokenType;
|
|
57
|
-
export declare const MatchEq: import("chevrotain").TokenType;
|
|
58
|
-
export declare const TimeoutEq: import("chevrotain").TokenType;
|
|
59
|
-
export declare const LimitEq: import("chevrotain").TokenType;
|
|
60
|
-
export declare const PeriodEq: import("chevrotain").TokenType;
|
|
61
44
|
export declare const TopKeyword: import("chevrotain").TokenType;
|
|
62
45
|
export declare const BottomKeyword: import("chevrotain").TokenType;
|
|
63
46
|
export declare const TrueKeyword: import("chevrotain").TokenType;
|
|
@@ -2,6 +2,11 @@
|
|
|
2
2
|
* @module chevrotain-parser/trigger-cancel-parser
|
|
3
3
|
*
|
|
4
4
|
* Shared Chevrotain parser for @trigger, @cancelOn, @retries, @timeout, @throttle annotations.
|
|
5
|
+
*
|
|
6
|
+
* The `key=value` options on @trigger, @cancelOn and @throttle are parsed as a
|
|
7
|
+
* generic list of `Identifier "=" (STRING | INTEGER)` assignments; the visitor
|
|
8
|
+
* checks the key names. Lexing `event=` or `timeout=` as their own tokens would
|
|
9
|
+
* shadow a port that happens to carry that name on @input and @node lines.
|
|
5
10
|
*/
|
|
6
11
|
export interface TriggerParseResult {
|
|
7
12
|
event?: string;
|
|
@@ -46,9 +51,9 @@ export declare function parseTimeoutLine(input: string, warnings: string[]): Tim
|
|
|
46
51
|
* Parse a @throttle line and return structured result.
|
|
47
52
|
* Returns null if the line is not a throttle declaration.
|
|
48
53
|
*/
|
|
54
|
+
export declare function parseThrottleLine(input: string, warnings: string[]): ThrottleParseResult | null;
|
|
49
55
|
/**
|
|
50
56
|
* Get serialized grammar productions for documentation/diagrams.
|
|
51
57
|
*/
|
|
52
58
|
export declare function getTriggerCancelGrammar(): import("chevrotain").ISerializedGast[];
|
|
53
|
-
export declare function parseThrottleLine(input: string, warnings: string[]): ThrottleParseResult | null;
|
|
54
59
|
//# sourceMappingURL=trigger-cancel-parser.d.ts.map
|
|
@@ -0,0 +1,298 @@
|
|
|
1
|
+
import {
|
|
2
|
+
RESERVED_NODE_NAMES,
|
|
3
|
+
isExitNode,
|
|
4
|
+
isFailurePort,
|
|
5
|
+
isStartNode,
|
|
6
|
+
isSuccessPort
|
|
7
|
+
} from "./chunk-R4QGNK34.js";
|
|
8
|
+
|
|
9
|
+
// src/generator/control-flow.ts
|
|
10
|
+
function buildControlFlowGraph(workflow, nodeTypes) {
|
|
11
|
+
const graph = /* @__PURE__ */ new Map();
|
|
12
|
+
const inDegree = /* @__PURE__ */ new Map();
|
|
13
|
+
graph.set(RESERVED_NODE_NAMES.START, []);
|
|
14
|
+
inDegree.set(RESERVED_NODE_NAMES.START, 0);
|
|
15
|
+
graph.set(RESERVED_NODE_NAMES.EXIT, []);
|
|
16
|
+
inDegree.set(RESERVED_NODE_NAMES.EXIT, 0);
|
|
17
|
+
workflow.instances.forEach((instance) => {
|
|
18
|
+
if (isPerPortScopedChild(instance, workflow, nodeTypes)) {
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
graph.set(instance.id, []);
|
|
22
|
+
inDegree.set(instance.id, 0);
|
|
23
|
+
});
|
|
24
|
+
workflow.connections.forEach((conn) => {
|
|
25
|
+
const fromNode = conn.from.node;
|
|
26
|
+
const toNode = conn.to.node;
|
|
27
|
+
if (conn.from.scope || conn.to.scope) {
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
const fromInstance = workflow.instances.find((i) => i.id === fromNode);
|
|
31
|
+
const toInstance = workflow.instances.find((i) => i.id === toNode);
|
|
32
|
+
if (fromInstance && isPerPortScopedChild(fromInstance, workflow, nodeTypes) || toInstance && isPerPortScopedChild(toInstance, workflow, nodeTypes)) {
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
if (graph.has(fromNode) && graph.has(toNode)) {
|
|
36
|
+
const successors = graph.get(fromNode) || [];
|
|
37
|
+
if (!successors.includes(toNode)) {
|
|
38
|
+
successors.push(toNode);
|
|
39
|
+
graph.set(fromNode, successors);
|
|
40
|
+
inDegree.set(toNode, (inDegree.get(toNode) || 0) + 1);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
workflow.instances.forEach((instance) => {
|
|
45
|
+
if (isPerPortScopedChild(instance, workflow, nodeTypes)) {
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
if ((inDegree.get(instance.id) || 0) === 0) {
|
|
49
|
+
const startSuccessors = graph.get(RESERVED_NODE_NAMES.START) || [];
|
|
50
|
+
if (!startSuccessors.includes(instance.id)) {
|
|
51
|
+
startSuccessors.push(instance.id);
|
|
52
|
+
graph.set(RESERVED_NODE_NAMES.START, startSuccessors);
|
|
53
|
+
inDegree.set(instance.id, 1);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
workflow.instances.forEach((instance) => {
|
|
58
|
+
if (isPerPortScopedChild(instance, workflow, nodeTypes)) {
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
const successors = graph.get(instance.id) || [];
|
|
62
|
+
if (successors.length === 0) {
|
|
63
|
+
successors.push(RESERVED_NODE_NAMES.EXIT);
|
|
64
|
+
graph.set(instance.id, successors);
|
|
65
|
+
inDegree.set(RESERVED_NODE_NAMES.EXIT, (inDegree.get(RESERVED_NODE_NAMES.EXIT) || 0) + 1);
|
|
66
|
+
}
|
|
67
|
+
});
|
|
68
|
+
return { graph, inDegree };
|
|
69
|
+
}
|
|
70
|
+
function performKahnsTopologicalSort(controlFlowGraph) {
|
|
71
|
+
const executionOrder = [];
|
|
72
|
+
const inDegree = new Map(controlFlowGraph.inDegree);
|
|
73
|
+
const queue = [];
|
|
74
|
+
inDegree.forEach((degree, node) => {
|
|
75
|
+
if (degree === 0) {
|
|
76
|
+
queue.push(node);
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
while (queue.length > 0) {
|
|
80
|
+
const node = queue.shift();
|
|
81
|
+
executionOrder.push(node);
|
|
82
|
+
const successors = controlFlowGraph.graph.get(node) || [];
|
|
83
|
+
successors.forEach((successor) => {
|
|
84
|
+
const newDegree = (inDegree.get(successor) || 0) - 1;
|
|
85
|
+
inDegree.set(successor, newDegree);
|
|
86
|
+
if (newDegree === 0) {
|
|
87
|
+
queue.push(successor);
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
if (executionOrder.length !== controlFlowGraph.graph.size) {
|
|
92
|
+
const cycleNodes = [];
|
|
93
|
+
inDegree.forEach((degree, node) => {
|
|
94
|
+
if (degree > 0 && !executionOrder.includes(node)) {
|
|
95
|
+
cycleNodes.push(node);
|
|
96
|
+
}
|
|
97
|
+
});
|
|
98
|
+
throw new Error(
|
|
99
|
+
`Circular dependency detected in workflow. Nodes in cycle: ${cycleNodes.join(", ")}`
|
|
100
|
+
);
|
|
101
|
+
}
|
|
102
|
+
return executionOrder;
|
|
103
|
+
}
|
|
104
|
+
function findAllBranchingNodes(workflow, nodeTypes) {
|
|
105
|
+
const branchingNodes = /* @__PURE__ */ new Set();
|
|
106
|
+
workflow.connections.forEach((conn) => {
|
|
107
|
+
const nodeName = conn.from.node;
|
|
108
|
+
const portName = conn.from.port;
|
|
109
|
+
if (isSuccessPort(portName) || isFailurePort(portName)) {
|
|
110
|
+
const instance = workflow.instances.find((i) => i.id === nodeName);
|
|
111
|
+
if (instance && isPerPortScopedChild(instance, workflow, nodeTypes)) {
|
|
112
|
+
return;
|
|
113
|
+
}
|
|
114
|
+
branchingNodes.add(nodeName);
|
|
115
|
+
}
|
|
116
|
+
});
|
|
117
|
+
return branchingNodes;
|
|
118
|
+
}
|
|
119
|
+
function isPerPortScopedChild(instance, workflow, nodeTypes) {
|
|
120
|
+
if (!instance.parent) return false;
|
|
121
|
+
const parentInstance = workflow.instances.find((i) => i.id === instance.parent.id);
|
|
122
|
+
if (!parentInstance) return false;
|
|
123
|
+
const parentNodeType = nodeTypes.find((nt) => nt.name === parentInstance.nodeType || nt.functionName === parentInstance.nodeType);
|
|
124
|
+
if (!parentNodeType) return false;
|
|
125
|
+
const scopeName = instance.parent.scope;
|
|
126
|
+
const hasOutputWithScope = Object.values(parentNodeType.outputs).some(
|
|
127
|
+
(port) => port.scope === scopeName
|
|
128
|
+
);
|
|
129
|
+
const hasInputWithScope = Object.values(parentNodeType.inputs).some(
|
|
130
|
+
(port) => port.scope === scopeName
|
|
131
|
+
);
|
|
132
|
+
return hasOutputWithScope || hasInputWithScope;
|
|
133
|
+
}
|
|
134
|
+
function findNodesInBranch(branchNode, branchPort, workflow, allNodes, stopAtBranchingNodes) {
|
|
135
|
+
const reachable = /* @__PURE__ */ new Set();
|
|
136
|
+
const visited = /* @__PURE__ */ new Set();
|
|
137
|
+
const queue = [];
|
|
138
|
+
workflow.connections.forEach((conn) => {
|
|
139
|
+
const fromNode = conn.from.node;
|
|
140
|
+
const fromPort = conn.from.port;
|
|
141
|
+
const toNode = conn.to.node;
|
|
142
|
+
if (fromNode === branchNode && fromPort === branchPort) {
|
|
143
|
+
queue.push(toNode);
|
|
144
|
+
}
|
|
145
|
+
});
|
|
146
|
+
while (queue.length > 0) {
|
|
147
|
+
const current = queue.shift();
|
|
148
|
+
if (visited.has(current) || isExitNode(current) || isStartNode(current)) {
|
|
149
|
+
continue;
|
|
150
|
+
}
|
|
151
|
+
visited.add(current);
|
|
152
|
+
if (stopAtBranchingNodes.has(current) && current !== branchNode) {
|
|
153
|
+
reachable.add(current);
|
|
154
|
+
continue;
|
|
155
|
+
}
|
|
156
|
+
if (allNodes.has(current)) {
|
|
157
|
+
reachable.add(current);
|
|
158
|
+
workflow.connections.forEach((conn) => {
|
|
159
|
+
const fromNode = conn.from.node;
|
|
160
|
+
const fromPort = conn.from.port;
|
|
161
|
+
const toNode = conn.to.node;
|
|
162
|
+
if (fromNode === current && !isSuccessPort(fromPort) && !isFailurePort(fromPort)) {
|
|
163
|
+
if (!visited.has(toNode)) {
|
|
164
|
+
queue.push(toNode);
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
});
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
return reachable;
|
|
171
|
+
}
|
|
172
|
+
function detectBranchingChains(branchingNodes, branchRegions) {
|
|
173
|
+
const chainSuccessor = /* @__PURE__ */ new Map();
|
|
174
|
+
for (const nodeId of branchingNodes) {
|
|
175
|
+
const region = branchRegions.get(nodeId);
|
|
176
|
+
if (!region) continue;
|
|
177
|
+
const successBranching = [...region.successNodes].filter((n) => branchingNodes.has(n));
|
|
178
|
+
const failureBranching = [...region.failureNodes].filter((n) => branchingNodes.has(n));
|
|
179
|
+
let nextNode = null;
|
|
180
|
+
if (successBranching.length === 1 && failureBranching.length === 0) {
|
|
181
|
+
nextNode = successBranching[0];
|
|
182
|
+
} else if (failureBranching.length === 1 && successBranching.length === 0) {
|
|
183
|
+
nextNode = failureBranching[0];
|
|
184
|
+
}
|
|
185
|
+
if (nextNode) {
|
|
186
|
+
chainSuccessor.set(nodeId, nextNode);
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
const hasChainPredecessor = new Set(chainSuccessor.values());
|
|
190
|
+
const chains = /* @__PURE__ */ new Map();
|
|
191
|
+
for (const nodeId of branchingNodes) {
|
|
192
|
+
if (hasChainPredecessor.has(nodeId)) continue;
|
|
193
|
+
if (!chainSuccessor.has(nodeId)) continue;
|
|
194
|
+
const chain = [nodeId];
|
|
195
|
+
let current = nodeId;
|
|
196
|
+
while (chainSuccessor.has(current)) {
|
|
197
|
+
const next = chainSuccessor.get(current);
|
|
198
|
+
chain.push(next);
|
|
199
|
+
current = next;
|
|
200
|
+
}
|
|
201
|
+
if (chain.length >= 2) {
|
|
202
|
+
chains.set(nodeId, chain);
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
return chains;
|
|
206
|
+
}
|
|
207
|
+
function computeParallelLevels(cfg, branchingNodes, scopedChildren) {
|
|
208
|
+
const inDegree = new Map(cfg.inDegree);
|
|
209
|
+
const queue = [];
|
|
210
|
+
const nodeLevel = /* @__PURE__ */ new Map();
|
|
211
|
+
inDegree.forEach((degree, node) => {
|
|
212
|
+
if (degree === 0) {
|
|
213
|
+
queue.push(node);
|
|
214
|
+
nodeLevel.set(node, 0);
|
|
215
|
+
}
|
|
216
|
+
});
|
|
217
|
+
while (queue.length > 0) {
|
|
218
|
+
const node = queue.shift();
|
|
219
|
+
const level = nodeLevel.get(node);
|
|
220
|
+
const successors = cfg.graph.get(node) || [];
|
|
221
|
+
for (const succ of successors) {
|
|
222
|
+
const newDeg = (inDegree.get(succ) || 0) - 1;
|
|
223
|
+
inDegree.set(succ, newDeg);
|
|
224
|
+
const currentLevel = nodeLevel.get(succ) ?? 0;
|
|
225
|
+
nodeLevel.set(succ, Math.max(currentLevel, level + 1));
|
|
226
|
+
if (newDeg === 0) {
|
|
227
|
+
queue.push(succ);
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
const levelGroups = /* @__PURE__ */ new Map();
|
|
232
|
+
nodeLevel.forEach((level, node) => {
|
|
233
|
+
if (isStartNode(node) || isExitNode(node)) return;
|
|
234
|
+
if (!levelGroups.has(level)) {
|
|
235
|
+
levelGroups.set(level, []);
|
|
236
|
+
}
|
|
237
|
+
levelGroups.get(level).push(node);
|
|
238
|
+
});
|
|
239
|
+
const sortedLevels = Array.from(levelGroups.keys()).sort((a, b) => a - b);
|
|
240
|
+
const result = [];
|
|
241
|
+
for (const level of sortedLevels) {
|
|
242
|
+
const nodes = levelGroups.get(level);
|
|
243
|
+
const parallelGroup = [];
|
|
244
|
+
for (const node of nodes) {
|
|
245
|
+
if (branchingNodes.has(node) || scopedChildren.has(node)) {
|
|
246
|
+
if (parallelGroup.length > 0) {
|
|
247
|
+
result.push([...parallelGroup]);
|
|
248
|
+
parallelGroup.length = 0;
|
|
249
|
+
}
|
|
250
|
+
result.push([node]);
|
|
251
|
+
} else {
|
|
252
|
+
parallelGroup.push(node);
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
if (parallelGroup.length > 0) {
|
|
256
|
+
result.push(parallelGroup);
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
return result;
|
|
260
|
+
}
|
|
261
|
+
function determineExecutionOrder(workflow, nodes) {
|
|
262
|
+
const nodeMap = /* @__PURE__ */ new Map();
|
|
263
|
+
nodes.forEach((node) => nodeMap.set(node.functionName, node));
|
|
264
|
+
const executionOrder = [];
|
|
265
|
+
const visited = /* @__PURE__ */ new Set();
|
|
266
|
+
function visit(nodeName) {
|
|
267
|
+
if (visited.has(nodeName)) return;
|
|
268
|
+
visited.add(nodeName);
|
|
269
|
+
const outgoingConnections = workflow.connections.filter(
|
|
270
|
+
(conn) => conn.from.node === nodeName && !isExitNode(conn.to.node)
|
|
271
|
+
);
|
|
272
|
+
outgoingConnections.forEach((conn) => {
|
|
273
|
+
const targetNode = conn.to.node;
|
|
274
|
+
if (!isExitNode(targetNode)) {
|
|
275
|
+
visit(targetNode);
|
|
276
|
+
}
|
|
277
|
+
});
|
|
278
|
+
executionOrder.unshift(nodeName);
|
|
279
|
+
}
|
|
280
|
+
const startConnections = workflow.connections.filter(
|
|
281
|
+
(conn) => isStartNode(conn.from.node) && !isExitNode(conn.to.node)
|
|
282
|
+
);
|
|
283
|
+
startConnections.forEach((conn) => {
|
|
284
|
+
visit(conn.to.node);
|
|
285
|
+
});
|
|
286
|
+
return executionOrder;
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
export {
|
|
290
|
+
buildControlFlowGraph,
|
|
291
|
+
performKahnsTopologicalSort,
|
|
292
|
+
findAllBranchingNodes,
|
|
293
|
+
isPerPortScopedChild,
|
|
294
|
+
findNodesInBranch,
|
|
295
|
+
detectBranchingChains,
|
|
296
|
+
computeParallelLevels,
|
|
297
|
+
determineExecutionOrder
|
|
298
|
+
};
|