@synergenius/flow-weaver 0.33.1 → 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 -244
- 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 -89498
- 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 +22 -29
- 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 +15 -51
- package/dist/diagram/process-view.d.ts +79 -0
- package/dist/diagram/spine.d.ts +25 -0
- package/dist/diagram/theme.d.ts +3 -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 -1267
- package/dist/diagram/html-viewer.d.ts +0 -21
- package/dist/diagram/html-viewer.js +0 -1689
- package/dist/diagram/layout.js +0 -143
- package/dist/diagram/orthogonal-router.js +0 -568
- package/dist/diagram/renderer.d.ts +0 -3
- package/dist/diagram/renderer.js +0 -266
- 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,194 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Manifest generation — converts parsed ASTs into a flowweaver.manifest.json file.
|
|
3
|
-
*
|
|
4
|
-
* The manifest mirrors AST types so the editor can consume it directly
|
|
5
|
-
* without re-parsing source files.
|
|
6
|
-
*/
|
|
7
|
-
import * as fs from 'fs';
|
|
8
|
-
import * as path from 'path';
|
|
9
|
-
import { glob } from 'glob';
|
|
10
|
-
import { AnnotationParser } from '../parser.js';
|
|
11
|
-
// ── Port mapping ─────────────────────────────────────────────────────────────
|
|
12
|
-
function toManifestPort(port) {
|
|
13
|
-
return {
|
|
14
|
-
dataType: port.dataType,
|
|
15
|
-
...(port.description && { description: port.description }),
|
|
16
|
-
...(port.optional && { optional: true }),
|
|
17
|
-
};
|
|
18
|
-
}
|
|
19
|
-
function toManifestPortFromPattern(port) {
|
|
20
|
-
return {
|
|
21
|
-
dataType: port.dataType ?? 'ANY',
|
|
22
|
-
...(port.description && { description: port.description }),
|
|
23
|
-
};
|
|
24
|
-
}
|
|
25
|
-
function toManifestPorts(ports) {
|
|
26
|
-
const result = {};
|
|
27
|
-
for (const [name, def] of Object.entries(ports)) {
|
|
28
|
-
result[name] = toManifestPort(def);
|
|
29
|
-
}
|
|
30
|
-
return result;
|
|
31
|
-
}
|
|
32
|
-
// ── AST → Manifest mapping ──────────────────────────────────────────────────
|
|
33
|
-
function nodeTypeToManifest(nt, relativeFile) {
|
|
34
|
-
return {
|
|
35
|
-
name: nt.name,
|
|
36
|
-
...(nt.description && { description: nt.description }),
|
|
37
|
-
file: relativeFile,
|
|
38
|
-
functionName: nt.functionName,
|
|
39
|
-
isAsync: nt.isAsync,
|
|
40
|
-
inputs: toManifestPorts(nt.inputs),
|
|
41
|
-
outputs: toManifestPorts(nt.outputs),
|
|
42
|
-
...(nt.visuals && {
|
|
43
|
-
visuals: {
|
|
44
|
-
...(nt.visuals.color && { color: nt.visuals.color }),
|
|
45
|
-
...(nt.visuals.icon && { icon: nt.visuals.icon }),
|
|
46
|
-
...(nt.visuals.tags && { tags: nt.visuals.tags }),
|
|
47
|
-
},
|
|
48
|
-
}),
|
|
49
|
-
};
|
|
50
|
-
}
|
|
51
|
-
function workflowToManifest(wf, relativeFile) {
|
|
52
|
-
return {
|
|
53
|
-
name: wf.name,
|
|
54
|
-
...(wf.description && { description: wf.description }),
|
|
55
|
-
file: relativeFile,
|
|
56
|
-
functionName: wf.functionName,
|
|
57
|
-
startPorts: toManifestPorts(wf.startPorts),
|
|
58
|
-
exitPorts: toManifestPorts(wf.exitPorts),
|
|
59
|
-
nodeCount: wf.instances.length,
|
|
60
|
-
connectionCount: wf.connections.length,
|
|
61
|
-
};
|
|
62
|
-
}
|
|
63
|
-
function patternToManifest(pat, relativeFile) {
|
|
64
|
-
const inputPorts = {};
|
|
65
|
-
for (const [name, def] of Object.entries(pat.inputPorts)) {
|
|
66
|
-
inputPorts[name] = toManifestPortFromPattern(def);
|
|
67
|
-
}
|
|
68
|
-
const outputPorts = {};
|
|
69
|
-
for (const [name, def] of Object.entries(pat.outputPorts)) {
|
|
70
|
-
outputPorts[name] = toManifestPortFromPattern(def);
|
|
71
|
-
}
|
|
72
|
-
return {
|
|
73
|
-
name: pat.name,
|
|
74
|
-
...(pat.description && { description: pat.description }),
|
|
75
|
-
file: relativeFile,
|
|
76
|
-
inputPorts,
|
|
77
|
-
outputPorts,
|
|
78
|
-
nodeCount: pat.instances.length,
|
|
79
|
-
};
|
|
80
|
-
}
|
|
81
|
-
/**
|
|
82
|
-
* Generate a marketplace manifest by parsing all annotated source files
|
|
83
|
-
* in the package directory.
|
|
84
|
-
*/
|
|
85
|
-
export async function generateManifest(options) {
|
|
86
|
-
const { directory, srcDir = 'src', distDir = 'dist' } = options;
|
|
87
|
-
// Read package.json
|
|
88
|
-
const pkgPath = path.join(directory, 'package.json');
|
|
89
|
-
if (!fs.existsSync(pkgPath)) {
|
|
90
|
-
return {
|
|
91
|
-
manifest: emptyManifest('unknown', '0.0.0'),
|
|
92
|
-
parsedFiles: [],
|
|
93
|
-
errors: ['package.json not found'],
|
|
94
|
-
};
|
|
95
|
-
}
|
|
96
|
-
const pkg = JSON.parse(fs.readFileSync(pkgPath, 'utf-8'));
|
|
97
|
-
const srcRoot = path.join(directory, srcDir);
|
|
98
|
-
// Find all TypeScript files in src/
|
|
99
|
-
const pattern = path.join(srcRoot, '**/*.ts').replace(/\\/g, '/');
|
|
100
|
-
const files = await glob(pattern, { absolute: true });
|
|
101
|
-
const tsFiles = files.filter((f) => !f.endsWith('.d.ts') && !f.includes('node_modules'));
|
|
102
|
-
const parser = new AnnotationParser();
|
|
103
|
-
const allNodeTypes = [];
|
|
104
|
-
const allWorkflows = [];
|
|
105
|
-
const allPatterns = [];
|
|
106
|
-
const errors = [];
|
|
107
|
-
const parsedFiles = [];
|
|
108
|
-
for (const file of tsFiles) {
|
|
109
|
-
try {
|
|
110
|
-
const result = parser.parse(file);
|
|
111
|
-
parsedFiles.push(file);
|
|
112
|
-
// Map source paths to dist paths: src/foo/bar.ts → dist/foo/bar.js
|
|
113
|
-
const relFromSrc = path.relative(srcRoot, file);
|
|
114
|
-
const distRelative = path.join(distDir, relFromSrc.replace(/\.ts$/, '.js'));
|
|
115
|
-
// Collect standalone node types (not embedded in workflows)
|
|
116
|
-
for (const nt of result.nodeTypes) {
|
|
117
|
-
allNodeTypes.push(nodeTypeToManifest(nt, distRelative));
|
|
118
|
-
}
|
|
119
|
-
// Collect workflows
|
|
120
|
-
for (const wf of result.workflows) {
|
|
121
|
-
allWorkflows.push(workflowToManifest(wf, distRelative));
|
|
122
|
-
}
|
|
123
|
-
// Collect patterns
|
|
124
|
-
for (const pat of result.patterns) {
|
|
125
|
-
allPatterns.push(patternToManifest(pat, distRelative));
|
|
126
|
-
}
|
|
127
|
-
if (result.errors.length > 0) {
|
|
128
|
-
errors.push(...result.errors.map((e) => `${file}: ${e}`));
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
catch (err) {
|
|
132
|
-
errors.push(`Failed to parse ${file}: ${err instanceof Error ? err.message : String(err)}`);
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
// Preserve v2 extension fields from the existing manifest so that
|
|
136
|
-
// re-running pack:manifest doesn't wipe manually declared tagHandlers,
|
|
137
|
-
// validationRuleSets, docs, exportTargets, initContributions, etc.
|
|
138
|
-
const existing = readManifest(directory);
|
|
139
|
-
const v2Fields = {};
|
|
140
|
-
if (existing) {
|
|
141
|
-
if (existing.tagHandlers)
|
|
142
|
-
v2Fields.tagHandlers = existing.tagHandlers;
|
|
143
|
-
if (existing.validationRuleSets)
|
|
144
|
-
v2Fields.validationRuleSets = existing.validationRuleSets;
|
|
145
|
-
if (existing.exportTargets)
|
|
146
|
-
v2Fields.exportTargets = existing.exportTargets;
|
|
147
|
-
if (existing.docs)
|
|
148
|
-
v2Fields.docs = existing.docs;
|
|
149
|
-
if (existing.initContributions)
|
|
150
|
-
v2Fields.initContributions = existing.initContributions;
|
|
151
|
-
}
|
|
152
|
-
const manifest = {
|
|
153
|
-
manifestVersion: 2,
|
|
154
|
-
name: pkg.name ?? 'unknown',
|
|
155
|
-
version: pkg.version ?? '0.0.0',
|
|
156
|
-
...(pkg.description && { description: pkg.description }),
|
|
157
|
-
...(pkg.flowWeaver?.engineVersion && { engineVersion: pkg.flowWeaver.engineVersion }),
|
|
158
|
-
...(pkg.flowWeaver?.categories && { categories: pkg.flowWeaver.categories }),
|
|
159
|
-
nodeTypes: allNodeTypes,
|
|
160
|
-
workflows: allWorkflows,
|
|
161
|
-
patterns: allPatterns,
|
|
162
|
-
...v2Fields,
|
|
163
|
-
...(Object.keys(pkg.dependencies ?? {}).length > 0 && {
|
|
164
|
-
dependencies: {
|
|
165
|
-
npm: pkg.dependencies,
|
|
166
|
-
},
|
|
167
|
-
}),
|
|
168
|
-
};
|
|
169
|
-
return { manifest, parsedFiles, errors };
|
|
170
|
-
}
|
|
171
|
-
/** Write manifest JSON to disk. */
|
|
172
|
-
export function writeManifest(directory, manifest) {
|
|
173
|
-
const outPath = path.join(directory, 'flowweaver.manifest.json');
|
|
174
|
-
fs.writeFileSync(outPath, JSON.stringify(manifest, null, 2) + '\n', 'utf-8');
|
|
175
|
-
return outPath;
|
|
176
|
-
}
|
|
177
|
-
/** Read manifest JSON from disk. */
|
|
178
|
-
export function readManifest(directory) {
|
|
179
|
-
const manifestPath = path.join(directory, 'flowweaver.manifest.json');
|
|
180
|
-
if (!fs.existsSync(manifestPath))
|
|
181
|
-
return null;
|
|
182
|
-
return JSON.parse(fs.readFileSync(manifestPath, 'utf-8'));
|
|
183
|
-
}
|
|
184
|
-
function emptyManifest(name, version) {
|
|
185
|
-
return {
|
|
186
|
-
manifestVersion: 2,
|
|
187
|
-
name,
|
|
188
|
-
version,
|
|
189
|
-
nodeTypes: [],
|
|
190
|
-
workflows: [],
|
|
191
|
-
patterns: [],
|
|
192
|
-
};
|
|
193
|
-
}
|
|
194
|
-
//# sourceMappingURL=manifest.js.map
|
|
@@ -1,198 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Registry integration — npm search API + local package scanning.
|
|
3
|
-
*
|
|
4
|
-
* Uses the npm registry search endpoint filtered by the
|
|
5
|
-
* `flow-weaver-marketplace-pack` keyword for discovery, and scans
|
|
6
|
-
* `node_modules/` for locally installed packages.
|
|
7
|
-
*/
|
|
8
|
-
import * as fs from 'fs';
|
|
9
|
-
import * as path from 'path';
|
|
10
|
-
import { glob } from 'glob';
|
|
11
|
-
const MARKETPLACE_KEYWORD = 'flow-weaver-marketplace-pack';
|
|
12
|
-
const NPM_SEARCH_URL = 'https://registry.npmjs.org/-/v1/search';
|
|
13
|
-
const PACK_NAME_RE = /^(@[^/]+\/)?flow-weaver-pack-.+$/;
|
|
14
|
-
/**
|
|
15
|
-
* Search the npm registry for marketplace packages.
|
|
16
|
-
*/
|
|
17
|
-
export async function searchPackages(options = {}) {
|
|
18
|
-
const { query, limit = 20, registryUrl } = options;
|
|
19
|
-
// Build search query: always filter by marketplace keyword
|
|
20
|
-
const textParts = [
|
|
21
|
-
`keywords:${MARKETPLACE_KEYWORD}`,
|
|
22
|
-
...(query ? [query] : []),
|
|
23
|
-
];
|
|
24
|
-
const url = new URL(registryUrl ?? NPM_SEARCH_URL);
|
|
25
|
-
url.searchParams.set('text', textParts.join(' '));
|
|
26
|
-
url.searchParams.set('size', String(limit));
|
|
27
|
-
const response = await fetch(url.toString());
|
|
28
|
-
if (!response.ok) {
|
|
29
|
-
throw new Error(`npm search failed: ${response.status} ${response.statusText}`);
|
|
30
|
-
}
|
|
31
|
-
const data = (await response.json());
|
|
32
|
-
return data.objects
|
|
33
|
-
.filter((obj) => PACK_NAME_RE.test(obj.package.name))
|
|
34
|
-
.map((obj) => ({
|
|
35
|
-
name: obj.package.name,
|
|
36
|
-
version: obj.package.version,
|
|
37
|
-
description: obj.package.description,
|
|
38
|
-
keywords: obj.package.keywords,
|
|
39
|
-
publisher: obj.package.publisher?.username,
|
|
40
|
-
official: obj.package.name.startsWith('@synergenius/'),
|
|
41
|
-
}));
|
|
42
|
-
}
|
|
43
|
-
// ── Local scanning ───────────────────────────────────────────────────────────
|
|
44
|
-
/**
|
|
45
|
-
* Scan node_modules for installed marketplace packages by looking for
|
|
46
|
-
* `flowweaver.manifest.json` files in matching package directories.
|
|
47
|
-
*/
|
|
48
|
-
export async function listInstalledPackages(projectDir) {
|
|
49
|
-
const nodeModules = path.join(projectDir, 'node_modules');
|
|
50
|
-
if (!fs.existsSync(nodeModules))
|
|
51
|
-
return [];
|
|
52
|
-
// Look for flow-weaver-pack-* and @*/flow-weaver-pack-* directories
|
|
53
|
-
const patterns = [
|
|
54
|
-
path.join(nodeModules, 'flow-weaver-pack-*', 'flowweaver.manifest.json'),
|
|
55
|
-
path.join(nodeModules, '@*', 'flow-weaver-pack-*', 'flowweaver.manifest.json'),
|
|
56
|
-
];
|
|
57
|
-
const results = [];
|
|
58
|
-
for (const pattern of patterns) {
|
|
59
|
-
const manifestPaths = await glob(pattern.replace(/\\/g, '/'), { absolute: true });
|
|
60
|
-
for (const manifestPath of manifestPaths) {
|
|
61
|
-
try {
|
|
62
|
-
const pkgDir = path.dirname(manifestPath);
|
|
63
|
-
const manifest = JSON.parse(fs.readFileSync(manifestPath, 'utf-8'));
|
|
64
|
-
// Also read package.json for accurate version
|
|
65
|
-
const pkgJsonPath = path.join(pkgDir, 'package.json');
|
|
66
|
-
let version = manifest.version;
|
|
67
|
-
if (fs.existsSync(pkgJsonPath)) {
|
|
68
|
-
const pkg = JSON.parse(fs.readFileSync(pkgJsonPath, 'utf-8'));
|
|
69
|
-
version = pkg.version ?? manifest.version;
|
|
70
|
-
}
|
|
71
|
-
results.push({
|
|
72
|
-
name: manifest.name,
|
|
73
|
-
version,
|
|
74
|
-
manifest,
|
|
75
|
-
path: pkgDir,
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
catch {
|
|
79
|
-
// Skip malformed manifests
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
return results;
|
|
84
|
-
}
|
|
85
|
-
/**
|
|
86
|
-
* Read the manifest for a specific installed package.
|
|
87
|
-
*/
|
|
88
|
-
export function getInstalledPackageManifest(projectDir, packageName) {
|
|
89
|
-
const packageDir = path.join(projectDir, 'node_modules', packageName);
|
|
90
|
-
const manifestPath = path.join(packageDir, 'flowweaver.manifest.json');
|
|
91
|
-
if (!fs.existsSync(manifestPath))
|
|
92
|
-
return null;
|
|
93
|
-
try {
|
|
94
|
-
return JSON.parse(fs.readFileSync(manifestPath, 'utf-8'));
|
|
95
|
-
}
|
|
96
|
-
catch {
|
|
97
|
-
return null;
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
/**
|
|
101
|
-
* Discover all tag handlers from installed pack manifests.
|
|
102
|
-
*/
|
|
103
|
-
export async function discoverTagHandlers(projectDir) {
|
|
104
|
-
const packages = await listInstalledPackages(projectDir);
|
|
105
|
-
const handlers = [];
|
|
106
|
-
for (const pkg of packages) {
|
|
107
|
-
const manifest = pkg.manifest;
|
|
108
|
-
if (!manifest.tagHandlers)
|
|
109
|
-
continue;
|
|
110
|
-
for (const handler of manifest.tagHandlers) {
|
|
111
|
-
handlers.push({
|
|
112
|
-
...handler,
|
|
113
|
-
absoluteFile: path.join(pkg.path, handler.file),
|
|
114
|
-
packageName: pkg.name,
|
|
115
|
-
});
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
return handlers;
|
|
119
|
-
}
|
|
120
|
-
/**
|
|
121
|
-
* Discover all validation rule sets from installed pack manifests.
|
|
122
|
-
*/
|
|
123
|
-
export async function discoverValidationRuleSets(projectDir) {
|
|
124
|
-
const packages = await listInstalledPackages(projectDir);
|
|
125
|
-
const ruleSets = [];
|
|
126
|
-
for (const pkg of packages) {
|
|
127
|
-
const manifest = pkg.manifest;
|
|
128
|
-
if (!manifest.validationRuleSets)
|
|
129
|
-
continue;
|
|
130
|
-
for (const ruleSet of manifest.validationRuleSets) {
|
|
131
|
-
ruleSets.push({
|
|
132
|
-
...ruleSet,
|
|
133
|
-
absoluteFile: path.join(pkg.path, ruleSet.file),
|
|
134
|
-
packageName: pkg.name,
|
|
135
|
-
});
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
return ruleSets;
|
|
139
|
-
}
|
|
140
|
-
/**
|
|
141
|
-
* Discover all doc topics from installed pack manifests.
|
|
142
|
-
*/
|
|
143
|
-
export async function discoverDocTopics(projectDir) {
|
|
144
|
-
const packages = await listInstalledPackages(projectDir);
|
|
145
|
-
const topics = [];
|
|
146
|
-
for (const pkg of packages) {
|
|
147
|
-
const manifest = pkg.manifest;
|
|
148
|
-
if (!manifest.docs)
|
|
149
|
-
continue;
|
|
150
|
-
for (const doc of manifest.docs) {
|
|
151
|
-
topics.push({
|
|
152
|
-
...doc,
|
|
153
|
-
absoluteFile: path.join(pkg.path, doc.file),
|
|
154
|
-
packageName: pkg.name,
|
|
155
|
-
});
|
|
156
|
-
}
|
|
157
|
-
}
|
|
158
|
-
return topics;
|
|
159
|
-
}
|
|
160
|
-
/**
|
|
161
|
-
* Discover all init contributions from installed pack manifests.
|
|
162
|
-
*/
|
|
163
|
-
export async function discoverInitContributions(projectDir) {
|
|
164
|
-
const packages = await listInstalledPackages(projectDir);
|
|
165
|
-
const contributions = [];
|
|
166
|
-
for (const pkg of packages) {
|
|
167
|
-
const manifest = pkg.manifest;
|
|
168
|
-
if (!manifest.initContributions)
|
|
169
|
-
continue;
|
|
170
|
-
contributions.push({
|
|
171
|
-
...manifest.initContributions,
|
|
172
|
-
packageName: pkg.name,
|
|
173
|
-
});
|
|
174
|
-
}
|
|
175
|
-
return contributions;
|
|
176
|
-
}
|
|
177
|
-
/**
|
|
178
|
-
* Discover all device handler entry points from installed pack manifests.
|
|
179
|
-
*
|
|
180
|
-
* Returns packs that declare a `deviceHandlers` field in their manifest,
|
|
181
|
-
* resolved to an absolute entrypoint path.
|
|
182
|
-
*/
|
|
183
|
-
export async function discoverDeviceHandlers(projectDir) {
|
|
184
|
-
const packages = await listInstalledPackages(projectDir);
|
|
185
|
-
const handlers = [];
|
|
186
|
-
for (const pkg of packages) {
|
|
187
|
-
const manifest = pkg.manifest;
|
|
188
|
-
if (!manifest.deviceHandlers)
|
|
189
|
-
continue;
|
|
190
|
-
handlers.push({
|
|
191
|
-
packageName: pkg.name,
|
|
192
|
-
packagePath: pkg.path,
|
|
193
|
-
entrypoint: path.join(pkg.path, manifest.deviceHandlers),
|
|
194
|
-
});
|
|
195
|
-
}
|
|
196
|
-
return handlers;
|
|
197
|
-
}
|
|
198
|
-
//# sourceMappingURL=registry.js.map
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Marketplace types for Flow Weaver package distribution.
|
|
3
|
-
*
|
|
4
|
-
* Packages follow the naming convention `flow-weaver-pack-*` and use
|
|
5
|
-
* npm as the distribution backbone. The manifest is auto-generated
|
|
6
|
-
* from source annotations via the parser.
|
|
7
|
-
*/
|
|
8
|
-
export {};
|
|
9
|
-
//# sourceMappingURL=types.js.map
|
|
@@ -1,150 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Package validation — checks that a marketplace package meets
|
|
3
|
-
* all requirements before publishing.
|
|
4
|
-
*/
|
|
5
|
-
import * as fs from 'fs';
|
|
6
|
-
import * as path from 'path';
|
|
7
|
-
import { parseWorkflow, validateWorkflow } from '../api/index.js';
|
|
8
|
-
// ── Helpers ──────────────────────────────────────────────────────────────────
|
|
9
|
-
function issue(code, severity, message) {
|
|
10
|
-
return { code, severity, message };
|
|
11
|
-
}
|
|
12
|
-
const PACK_NAME_RE = /^(@[^/]+\/)?flow-weaver-pack-.+$/;
|
|
13
|
-
const MARKETPLACE_KEYWORD = 'flow-weaver-marketplace-pack';
|
|
14
|
-
// ── Package-level rules ──────────────────────────────────────────────────────
|
|
15
|
-
function validatePackageJson(pkg, directory) {
|
|
16
|
-
const issues = [];
|
|
17
|
-
// PKG-005: Name must match flow-weaver-pack-* or @*/flow-weaver-pack-*
|
|
18
|
-
const name = pkg.name;
|
|
19
|
-
if (!name || !PACK_NAME_RE.test(name)) {
|
|
20
|
-
issues.push(issue('PKG-005', 'error', `Package name must match "flow-weaver-pack-*" or "@<scope>/flow-weaver-pack-*", got "${name ?? ''}"`));
|
|
21
|
-
}
|
|
22
|
-
// PKG-001: keywords must include flow-weaver-marketplace-pack
|
|
23
|
-
const keywords = (pkg.keywords ?? []);
|
|
24
|
-
if (!keywords.includes(MARKETPLACE_KEYWORD)) {
|
|
25
|
-
issues.push(issue('PKG-001', 'error', `"keywords" must include "${MARKETPLACE_KEYWORD}"`));
|
|
26
|
-
}
|
|
27
|
-
// PKG-002: flowWeaver.engineVersion must be set
|
|
28
|
-
const fw = pkg.flowWeaver;
|
|
29
|
-
if (!fw?.engineVersion) {
|
|
30
|
-
issues.push(issue('PKG-002', 'error', '"flowWeaver.engineVersion" must be set in package.json'));
|
|
31
|
-
}
|
|
32
|
-
// PKG-003: peerDependencies must include @synergenius/flow-weaver
|
|
33
|
-
const peers = (pkg.peerDependencies ?? {});
|
|
34
|
-
if (!peers['@synergenius/flow-weaver']) {
|
|
35
|
-
issues.push(issue('PKG-003', 'error', '"peerDependencies" must include "@synergenius/flow-weaver"'));
|
|
36
|
-
}
|
|
37
|
-
// PKG-004: Must not be private
|
|
38
|
-
if (pkg.private === true) {
|
|
39
|
-
issues.push(issue('PKG-004', 'error', 'Package must not be "private: true"'));
|
|
40
|
-
}
|
|
41
|
-
// PKG-007: README.md should exist
|
|
42
|
-
if (!fs.existsSync(path.join(directory, 'README.md'))) {
|
|
43
|
-
issues.push(issue('PKG-007', 'warning', 'README.md should exist'));
|
|
44
|
-
}
|
|
45
|
-
return issues;
|
|
46
|
-
}
|
|
47
|
-
// ── Manifest-level rules ─────────────────────────────────────────────────────
|
|
48
|
-
function validateManifestContents(manifest) {
|
|
49
|
-
const issues = [];
|
|
50
|
-
const totalUnits = manifest.nodeTypes.length + manifest.workflows.length + manifest.patterns.length +
|
|
51
|
-
(manifest.exportTargets?.length ?? 0);
|
|
52
|
-
// PKG-006: Must contain at least one unit
|
|
53
|
-
if (totalUnits === 0) {
|
|
54
|
-
issues.push(issue('PKG-006', 'error', 'Package must contain at least one node type, workflow, pattern, or export target'));
|
|
55
|
-
}
|
|
56
|
-
// TGT-001: Export target entries must have name and file
|
|
57
|
-
for (const et of manifest.exportTargets ?? []) {
|
|
58
|
-
if (!et.name) {
|
|
59
|
-
issues.push(issue('TGT-001', 'error', 'Export target entry must have a "name"'));
|
|
60
|
-
}
|
|
61
|
-
if (!et.file) {
|
|
62
|
-
issues.push(issue('TGT-001', 'error', `Export target "${et.name || '(unnamed)'}" must have a "file"`));
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
// TGT-002: Export target names must be unique within the package
|
|
66
|
-
const etNames = new Set();
|
|
67
|
-
for (const et of manifest.exportTargets ?? []) {
|
|
68
|
-
if (et.name && etNames.has(et.name)) {
|
|
69
|
-
issues.push(issue('TGT-002', 'error', `Duplicate export target name: "${et.name}"`));
|
|
70
|
-
}
|
|
71
|
-
if (et.name)
|
|
72
|
-
etNames.add(et.name);
|
|
73
|
-
}
|
|
74
|
-
// UNIT-002: Node type names must be unique within the package
|
|
75
|
-
const ntNames = new Set();
|
|
76
|
-
for (const nt of manifest.nodeTypes) {
|
|
77
|
-
if (ntNames.has(nt.name)) {
|
|
78
|
-
issues.push(issue('UNIT-002', 'error', `Duplicate node type name: "${nt.name}"`));
|
|
79
|
-
}
|
|
80
|
-
ntNames.add(nt.name);
|
|
81
|
-
}
|
|
82
|
-
// PKG-008: All node types should have descriptions
|
|
83
|
-
for (const nt of manifest.nodeTypes) {
|
|
84
|
-
if (!nt.description) {
|
|
85
|
-
issues.push(issue('PKG-008', 'warning', `Node type "${nt.name}" should have a description`));
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
// PKG-009: All node types should have visuals
|
|
89
|
-
for (const nt of manifest.nodeTypes) {
|
|
90
|
-
if (!nt.visuals || (!nt.visuals.color && !nt.visuals.icon && !nt.visuals.tags)) {
|
|
91
|
-
issues.push(issue('PKG-009', 'warning', `Node type "${nt.name}" should have visuals (color, icon, or tags)`));
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
// UNIT-003: Patterns must have at least one IN or OUT port
|
|
95
|
-
for (const pat of manifest.patterns) {
|
|
96
|
-
const inCount = Object.keys(pat.inputPorts).length;
|
|
97
|
-
const outCount = Object.keys(pat.outputPorts).length;
|
|
98
|
-
if (inCount === 0 && outCount === 0) {
|
|
99
|
-
issues.push(issue('UNIT-003', 'error', `Pattern "${pat.name}" must have at least one IN or OUT port`));
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
return issues;
|
|
103
|
-
}
|
|
104
|
-
// ── Workflow validation (UNIT-001) ───────────────────────────────────────────
|
|
105
|
-
async function validateWorkflows(manifest, directory) {
|
|
106
|
-
const issues = [];
|
|
107
|
-
for (const wf of manifest.workflows) {
|
|
108
|
-
// Resolve source file from dist path back to src
|
|
109
|
-
const srcFile = path.join(directory, wf.file.replace(/^dist\//, 'src/').replace(/\.js$/, '.ts'));
|
|
110
|
-
if (!fs.existsSync(srcFile))
|
|
111
|
-
continue;
|
|
112
|
-
try {
|
|
113
|
-
const parseResult = await parseWorkflow(srcFile, { workflowName: wf.functionName });
|
|
114
|
-
if (parseResult.errors.length > 0)
|
|
115
|
-
continue; // Parse errors reported by pack command
|
|
116
|
-
const result = validateWorkflow(parseResult.ast);
|
|
117
|
-
if (result.errors.length > 0) {
|
|
118
|
-
issues.push(issue('UNIT-001', 'error', `Workflow "${wf.name}" has validation errors: ${result.errors.map((e) => e.message).join('; ')}`));
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
catch {
|
|
122
|
-
// If parsing fails entirely, the pack command will already have reported the error
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
return issues;
|
|
126
|
-
}
|
|
127
|
-
// ── Public API ───────────────────────────────────────────────────────────────
|
|
128
|
-
/**
|
|
129
|
-
* Validate a marketplace package directory.
|
|
130
|
-
*
|
|
131
|
-
* Checks package.json fields, manifest contents, and individual workflow validity.
|
|
132
|
-
*/
|
|
133
|
-
export async function validatePackage(directory, manifest) {
|
|
134
|
-
const pkgPath = path.join(directory, 'package.json');
|
|
135
|
-
if (!fs.existsSync(pkgPath)) {
|
|
136
|
-
return {
|
|
137
|
-
valid: false,
|
|
138
|
-
issues: [issue('PKG-000', 'error', 'package.json not found')],
|
|
139
|
-
};
|
|
140
|
-
}
|
|
141
|
-
const pkg = JSON.parse(fs.readFileSync(pkgPath, 'utf-8'));
|
|
142
|
-
const issues = [
|
|
143
|
-
...validatePackageJson(pkg, directory),
|
|
144
|
-
...validateManifestContents(manifest),
|
|
145
|
-
...(await validateWorkflows(manifest, directory)),
|
|
146
|
-
];
|
|
147
|
-
const valid = !issues.some((i) => i.severity === 'error');
|
|
148
|
-
return { valid, issues };
|
|
149
|
-
}
|
|
150
|
-
//# sourceMappingURL=validator.js.map
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* AgentChannel provides Promise-based pause/resume for workflow execution.
|
|
3
|
-
*
|
|
4
|
-
* When a workflow hits a waitForAgent node, the node calls `request()` which
|
|
5
|
-
* suspends execution on an unresolved Promise. The executor detects the pause
|
|
6
|
-
* via `onPause()`, and later calls `resume()` to resolve the Promise and
|
|
7
|
-
* continue execution from exactly where it paused.
|
|
8
|
-
*/
|
|
9
|
-
export declare class AgentChannel {
|
|
10
|
-
private _resolve;
|
|
11
|
-
private _reject;
|
|
12
|
-
private _pauseResolve;
|
|
13
|
-
private _pausePromise;
|
|
14
|
-
constructor();
|
|
15
|
-
/**
|
|
16
|
-
* Called by the waitForAgent node to suspend execution.
|
|
17
|
-
* Returns a Promise that resolves when `resume()` is called.
|
|
18
|
-
*/
|
|
19
|
-
request(agentRequest: object): Promise<object>;
|
|
20
|
-
/**
|
|
21
|
-
* Awaited by the executor to detect when the workflow pauses.
|
|
22
|
-
* Resolves with the agent request data from `request()`.
|
|
23
|
-
*/
|
|
24
|
-
onPause(): Promise<object>;
|
|
25
|
-
/**
|
|
26
|
-
* Called by fw_resume_workflow to continue execution with the agent's result.
|
|
27
|
-
*/
|
|
28
|
-
resume(result: object): void;
|
|
29
|
-
/**
|
|
30
|
-
* Called to fail a pending wait with an error.
|
|
31
|
-
*/
|
|
32
|
-
fail(reason: string): void;
|
|
33
|
-
private _createPausePromise;
|
|
34
|
-
}
|
|
35
|
-
//# sourceMappingURL=agent-channel.d.ts.map
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* AgentChannel provides Promise-based pause/resume for workflow execution.
|
|
3
|
-
*
|
|
4
|
-
* When a workflow hits a waitForAgent node, the node calls `request()` which
|
|
5
|
-
* suspends execution on an unresolved Promise. The executor detects the pause
|
|
6
|
-
* via `onPause()`, and later calls `resume()` to resolve the Promise and
|
|
7
|
-
* continue execution from exactly where it paused.
|
|
8
|
-
*/
|
|
9
|
-
export class AgentChannel {
|
|
10
|
-
_resolve = null;
|
|
11
|
-
_reject = null;
|
|
12
|
-
_pauseResolve = null;
|
|
13
|
-
_pausePromise;
|
|
14
|
-
constructor() {
|
|
15
|
-
this._pausePromise = this._createPausePromise();
|
|
16
|
-
}
|
|
17
|
-
/**
|
|
18
|
-
* Called by the waitForAgent node to suspend execution.
|
|
19
|
-
* Returns a Promise that resolves when `resume()` is called.
|
|
20
|
-
*/
|
|
21
|
-
async request(agentRequest) {
|
|
22
|
-
// Signal the executor that we're pausing
|
|
23
|
-
this._pauseResolve?.(agentRequest);
|
|
24
|
-
// Suspend on a new Promise until resume() or fail() is called
|
|
25
|
-
return new Promise((resolve, reject) => {
|
|
26
|
-
this._resolve = resolve;
|
|
27
|
-
this._reject = reject;
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* Awaited by the executor to detect when the workflow pauses.
|
|
32
|
-
* Resolves with the agent request data from `request()`.
|
|
33
|
-
*/
|
|
34
|
-
onPause() {
|
|
35
|
-
return this._pausePromise;
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* Called by fw_resume_workflow to continue execution with the agent's result.
|
|
39
|
-
*/
|
|
40
|
-
resume(result) {
|
|
41
|
-
this._resolve?.(result);
|
|
42
|
-
this._resolve = null;
|
|
43
|
-
this._reject = null;
|
|
44
|
-
this._pausePromise = this._createPausePromise();
|
|
45
|
-
}
|
|
46
|
-
/**
|
|
47
|
-
* Called to fail a pending wait with an error.
|
|
48
|
-
*/
|
|
49
|
-
fail(reason) {
|
|
50
|
-
this._reject?.(new Error(reason));
|
|
51
|
-
this._resolve = null;
|
|
52
|
-
this._reject = null;
|
|
53
|
-
this._pausePromise = this._createPausePromise();
|
|
54
|
-
}
|
|
55
|
-
_createPausePromise() {
|
|
56
|
-
return new Promise((resolve) => {
|
|
57
|
-
this._pauseResolve = resolve;
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
//# sourceMappingURL=agent-channel.js.map
|