@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
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { type LocalCoordinator } from '../coordinator/index.js';
|
|
2
|
+
import { type AgentProfile } from '../agent/profiles.js';
|
|
3
|
+
import type { AgentProvider } from '../agent/types.js';
|
|
4
|
+
import type { FwMockConfig } from '../built-in-nodes/mock-types.js';
|
|
5
|
+
import { type CallbackOutcome } from './callback-delivery.js';
|
|
6
|
+
import type { CallbackPolicy } from './callback-url.js';
|
|
7
|
+
import type { Json } from './respond.js';
|
|
8
|
+
import type { ServerRequest, ServerResponse } from './transport.js';
|
|
9
|
+
import type { RunResponse, WorkflowEndpoint } from './types.js';
|
|
10
|
+
export interface RunDriverOptions {
|
|
11
|
+
/** The project: agent profiles are read from its `.flowweaver/agents.yaml`. */
|
|
12
|
+
dir: string;
|
|
13
|
+
coordinator: LocalCoordinator;
|
|
14
|
+
/** The function names of the workflows served here; the run list shows only their runs. */
|
|
15
|
+
workflowNames(): Set<string>;
|
|
16
|
+
/** Answer agent gates from the profiles. */
|
|
17
|
+
agents: boolean;
|
|
18
|
+
env?: NodeJS.ProcessEnv;
|
|
19
|
+
agentProvider?: (profile: AgentProfile, env: NodeJS.ProcessEnv) => AgentProvider;
|
|
20
|
+
trace?: boolean;
|
|
21
|
+
origin?: string;
|
|
22
|
+
maxInFlight: number;
|
|
23
|
+
onRun?: (run: RunResponse) => void;
|
|
24
|
+
/** Which URLs callbacks go to, and the token that signs them. */
|
|
25
|
+
callbacks?: CallbackPolicy;
|
|
26
|
+
token?: string;
|
|
27
|
+
onCallback?: (outcome: CallbackOutcome) => void;
|
|
28
|
+
}
|
|
29
|
+
export type RunDriver = ReturnType<typeof createRunDriver>;
|
|
30
|
+
export declare function createRunDriver(opts: RunDriverOptions): {
|
|
31
|
+
callbacks: {
|
|
32
|
+
deliver: (id: string) => Promise<void>;
|
|
33
|
+
owe(id: string): void;
|
|
34
|
+
scan(workflowNames: ReadonlySet<string>): Promise<void>;
|
|
35
|
+
deliverPending(): Promise<void>;
|
|
36
|
+
pending: () => readonly string[];
|
|
37
|
+
};
|
|
38
|
+
admit: () => void;
|
|
39
|
+
start: (endpoint: WorkflowEndpoint, id: string, params: Json, mocks: FwMockConfig | undefined) => Promise<void>;
|
|
40
|
+
resume: (id: string, input: {
|
|
41
|
+
answer?: unknown;
|
|
42
|
+
} | {
|
|
43
|
+
reject: string;
|
|
44
|
+
}) => Promise<void>;
|
|
45
|
+
cancel: (id: string) => Promise<void>;
|
|
46
|
+
tick: () => Promise<void>;
|
|
47
|
+
snapshot: (id: string, base?: string) => Promise<RunResponse | undefined>;
|
|
48
|
+
listRuns: (workflow: string | undefined, base: string) => Promise<{
|
|
49
|
+
count: number;
|
|
50
|
+
runs: RunResponse[];
|
|
51
|
+
}>;
|
|
52
|
+
follow: (req: ServerRequest, res: ServerResponse, id: string, base: string) => Promise<void>;
|
|
53
|
+
/** The parameters of a run this process is driving, before the store has its record. */
|
|
54
|
+
inFlightParams: (id: string) => Json | undefined;
|
|
55
|
+
/** Stop what is in flight and end every stream. */
|
|
56
|
+
close(): void;
|
|
57
|
+
};
|
|
58
|
+
//# sourceMappingURL=run-driver.d.ts.map
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* How a run reads from outside: the run resource built from its stored
|
|
3
|
+
* record and, while a segment is in flight here, from that segment; the
|
|
4
|
+
* data ports of a result without the control ports; and the HTTP status each
|
|
5
|
+
* state answers with on a run resource.
|
|
6
|
+
*/
|
|
7
|
+
import type { RunRecord } from '../coordinator/index.js';
|
|
8
|
+
import type { RunResponse } from './types.js';
|
|
9
|
+
import type { Json } from './respond.js';
|
|
10
|
+
/** What a segment in flight here knows of its run before, or besides, the store. */
|
|
11
|
+
export interface InFlightRun {
|
|
12
|
+
workflow: string;
|
|
13
|
+
params: Json;
|
|
14
|
+
startedAt: number;
|
|
15
|
+
error?: string;
|
|
16
|
+
}
|
|
17
|
+
/** The run resource, with links under `base`. Undefined when neither the store nor this process knows the run. */
|
|
18
|
+
export declare function runView(id: string, base: string, l: InFlightRun | undefined, rec: RunRecord | undefined): RunResponse | undefined;
|
|
19
|
+
/** The output ports of a completed run, without the control ports. */
|
|
20
|
+
export declare function dataOf(result: unknown): {
|
|
21
|
+
data: Json;
|
|
22
|
+
failed: boolean;
|
|
23
|
+
};
|
|
24
|
+
/** The HTTP status a run's state reads as on a run resource. */
|
|
25
|
+
export declare const statusFor: (run: RunResponse) => 200 | 500 | 202;
|
|
26
|
+
//# sourceMappingURL=run-view.d.ts.map
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/** What the handler reads from a request. Node's IncomingMessage is one, and so is the fetch shim below. */
|
|
2
|
+
export interface ServerRequest {
|
|
3
|
+
method?: string;
|
|
4
|
+
url?: string;
|
|
5
|
+
headers: Record<string, string | string[] | undefined>;
|
|
6
|
+
[Symbol.asyncIterator](): AsyncIterator<Uint8Array | string>;
|
|
7
|
+
on(event: 'close', listener: () => void): unknown;
|
|
8
|
+
/**
|
|
9
|
+
* A body a framework already parsed (`express.json()`, `express.urlencoded()`
|
|
10
|
+
* set this). When present the stream is not read again, which it could not
|
|
11
|
+
* be anyway. A string or Buffer is parsed by the request's content type.
|
|
12
|
+
*/
|
|
13
|
+
body?: unknown;
|
|
14
|
+
}
|
|
15
|
+
/** What the handler writes to a response. Node's ServerResponse is one. */
|
|
16
|
+
export interface ServerResponse {
|
|
17
|
+
headersSent: boolean;
|
|
18
|
+
writeHead(status: number, headers?: Record<string, string | number>): unknown;
|
|
19
|
+
setHeader(name: string, value: string): unknown;
|
|
20
|
+
write(chunk: string): unknown;
|
|
21
|
+
end(chunk?: string): unknown;
|
|
22
|
+
}
|
|
23
|
+
type Handle = (req: ServerRequest, res: ServerResponse, opts?: {
|
|
24
|
+
basePath?: string;
|
|
25
|
+
}) => Promise<boolean>;
|
|
26
|
+
/**
|
|
27
|
+
* Run the handler against a Web Request, answering a Web Response. The
|
|
28
|
+
* response resolves as soon as headers are written, with a stream for the
|
|
29
|
+
* body, so server-sent events flow through hosts that support streaming.
|
|
30
|
+
*/
|
|
31
|
+
export declare function fetchAdapter(handle: Handle, request: Request, opts?: {
|
|
32
|
+
basePath?: string;
|
|
33
|
+
}): Promise<Response>;
|
|
34
|
+
export {};
|
|
35
|
+
//# sourceMappingURL=transport.d.ts.map
|
package/dist/server/types.d.ts
CHANGED
|
@@ -1,84 +1,154 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*/
|
|
4
|
-
/**
|
|
5
|
-
* Represents a workflow exposed as an HTTP endpoint
|
|
2
|
+
* Types for `fw serve`: workflows as HTTP endpoints, runs as resources.
|
|
6
3
|
*/
|
|
4
|
+
import type { AgentNote } from '../coordinator/run-store.js';
|
|
5
|
+
/** A workflow exposed as an HTTP endpoint. */
|
|
7
6
|
export interface WorkflowEndpoint {
|
|
8
|
-
/** Workflow name (used in URL
|
|
7
|
+
/** Workflow name (used in the URL). */
|
|
9
8
|
name: string;
|
|
10
|
-
/** Function name in the source file */
|
|
9
|
+
/** Function name in the source file. */
|
|
11
10
|
functionName: string;
|
|
12
|
-
/** Path to the source file */
|
|
11
|
+
/** Path to the source file. */
|
|
13
12
|
filePath: string;
|
|
14
|
-
/** HTTP method for the endpoint */
|
|
13
|
+
/** HTTP method for the endpoint. */
|
|
15
14
|
method: 'POST' | 'GET';
|
|
16
|
-
/** URL path for the endpoint */
|
|
15
|
+
/** URL path for the endpoint. */
|
|
17
16
|
path: string;
|
|
18
|
-
/** JSON Schema for input parameters */
|
|
17
|
+
/** JSON Schema for the input parameters. */
|
|
19
18
|
inputSchema?: Record<string, unknown>;
|
|
20
|
-
/** JSON Schema for output */
|
|
19
|
+
/** JSON Schema for the output. */
|
|
21
20
|
outputSchema?: Record<string, unknown>;
|
|
22
|
-
/** Workflow description */
|
|
21
|
+
/** Workflow description. */
|
|
23
22
|
description?: string;
|
|
23
|
+
/** How many durable gates the workflow declares. A gated workflow answers 202 and a run id. */
|
|
24
|
+
gates?: number;
|
|
25
|
+
/** The routes the workflow declares with `@http`, in order. */
|
|
26
|
+
routes?: import('../ast/types.js').THttpRoute[];
|
|
24
27
|
}
|
|
25
|
-
/**
|
|
26
|
-
* Configuration for the webhook server
|
|
27
|
-
*/
|
|
28
|
+
/** Configuration for the server. */
|
|
28
29
|
export interface WebhookServerConfig {
|
|
29
|
-
/** Port to listen on */
|
|
30
30
|
port: number;
|
|
31
|
-
/** Host to bind to */
|
|
32
31
|
host: string;
|
|
33
|
-
/** Directory containing workflow files */
|
|
32
|
+
/** Directory containing the workflow files. It is also where `.flowweaver/agents.yaml` is looked for. */
|
|
34
33
|
workflowDir: string;
|
|
35
|
-
/**
|
|
34
|
+
/** Re-discover workflows when files change. */
|
|
36
35
|
watchEnabled: boolean;
|
|
37
|
-
/** CORS origin
|
|
38
|
-
corsOrigin
|
|
39
|
-
/**
|
|
40
|
-
production
|
|
41
|
-
/**
|
|
42
|
-
precompile
|
|
43
|
-
/**
|
|
36
|
+
/** CORS origin. Unset means no CORS headers are sent. */
|
|
37
|
+
corsOrigin?: string | string[];
|
|
38
|
+
/** Deprecated alias for `trace: false`. */
|
|
39
|
+
production?: boolean;
|
|
40
|
+
/** Accepted for compatibility. Workflows are compiled by the coordinator as they run. */
|
|
41
|
+
precompile?: boolean;
|
|
42
|
+
/** Serve Swagger UI at /docs. The spec at /openapi.json is always there. */
|
|
44
43
|
swaggerEnabled?: boolean;
|
|
44
|
+
/** Bearer token every route except /health must carry. Unset means open. */
|
|
45
|
+
token?: string;
|
|
46
|
+
/** Answer agent gates from the project's agent profiles. Default true. */
|
|
47
|
+
agents?: boolean;
|
|
48
|
+
/** Keep a step trace for every run and stream it on /runs/:id/events. Default false. */
|
|
49
|
+
trace?: boolean;
|
|
50
|
+
/** Development conveniences: error stacks in responses, `mocks` accepted in a start body. */
|
|
51
|
+
dev?: boolean;
|
|
52
|
+
/** Where runs are stored. `fw serve` passes the project's `.fw/runs`; unset falls back to `~/.fw/runs`. */
|
|
53
|
+
runsDir?: string;
|
|
54
|
+
/** A run store of your own in place of the directory. */
|
|
55
|
+
store?: import('../coordinator/store.js').RunStore;
|
|
56
|
+
/** The environment agent profiles read their keys from. Defaults to `process.env`. */
|
|
57
|
+
env?: NodeJS.ProcessEnv;
|
|
58
|
+
/** Build the provider for a profile yourself -- an embedding's own client, or a test's fake. */
|
|
59
|
+
agentProvider?: (profile: import('../agent/profiles.js').AgentProfile, env: NodeJS.ProcessEnv) => import('../agent/types.js').AgentProvider;
|
|
60
|
+
/** Also mount every workflow at `POST /workflows/<name>`, declared or not. Default true. */
|
|
61
|
+
legacyRoutes?: boolean;
|
|
62
|
+
/** Which callback URLs are delivered to. Public hosts only by default. */
|
|
63
|
+
callbacks?: import('./callback-url.js').CallbackPolicy & {
|
|
64
|
+
sweepMs?: number;
|
|
65
|
+
};
|
|
66
|
+
/** The largest request body read. Default 1 MiB. */
|
|
67
|
+
maxBodyBytes?: number;
|
|
68
|
+
/** Segments started by requests that may run at once. Past it, 503. Default 32. */
|
|
69
|
+
maxInFlight?: number;
|
|
70
|
+
/** The longest a request waits for its segment before answering 202. Default 60 s. */
|
|
71
|
+
maxWaitMs?: number;
|
|
72
|
+
/** Every state change of a run, for logs and metrics. */
|
|
73
|
+
onRun?: (run: RunResponse) => void;
|
|
74
|
+
/** Every callback delivery attempt. */
|
|
75
|
+
onCallback?: (outcome: {
|
|
76
|
+
runId: string;
|
|
77
|
+
url: string;
|
|
78
|
+
ok: boolean;
|
|
79
|
+
status?: number;
|
|
80
|
+
error?: string;
|
|
81
|
+
attempt: number;
|
|
82
|
+
gaveUp?: boolean;
|
|
83
|
+
}) => void;
|
|
45
84
|
}
|
|
46
|
-
/**
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
export interface ExecutionResult {
|
|
50
|
-
/** Whether execution succeeded */
|
|
51
|
-
success: boolean;
|
|
52
|
-
/** Name of the executed workflow */
|
|
85
|
+
/** A run as the API shows it. */
|
|
86
|
+
export interface RunResponse {
|
|
87
|
+
runId: string;
|
|
53
88
|
workflow: string;
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
89
|
+
status: 'running' | 'waiting' | 'completed' | 'failed' | 'cancelled';
|
|
90
|
+
startedAt: string;
|
|
91
|
+
updatedAt: string;
|
|
92
|
+
params?: Record<string, unknown>;
|
|
93
|
+
/** Present while `waiting`: the gate and what it needs. */
|
|
94
|
+
gate?: {
|
|
95
|
+
id: string;
|
|
96
|
+
kind: 'approval' | 'input' | 'agent' | 'timer';
|
|
97
|
+
node: string;
|
|
98
|
+
inputs: Record<string, unknown>;
|
|
99
|
+
absent: string[];
|
|
100
|
+
outputs: string[];
|
|
101
|
+
hasFailurePort: boolean;
|
|
102
|
+
};
|
|
103
|
+
/**
|
|
104
|
+
* Present while `waiting` when the clock will move the run: a `timer` gate
|
|
105
|
+
* wakes (`wake`) at `at`, and a gate given a `timeout` takes its failure path
|
|
106
|
+
* (`timeout`) at `at`. The API's sweep does it, so nobody has to call resolve.
|
|
107
|
+
*/
|
|
108
|
+
due?: {
|
|
109
|
+
at: string;
|
|
110
|
+
action: 'wake' | 'timeout';
|
|
111
|
+
};
|
|
112
|
+
/** What an agent profile is doing, or did, about the run's agent gate. */
|
|
113
|
+
agent?: AgentNote;
|
|
114
|
+
/** Present when `completed`. */
|
|
57
115
|
result?: unknown;
|
|
58
|
-
/**
|
|
59
|
-
error?:
|
|
60
|
-
|
|
61
|
-
|
|
116
|
+
/** Present when `failed`. */
|
|
117
|
+
error?: ErrorDetail;
|
|
118
|
+
/** Milliseconds the answering segment took, on a synchronous start or resume. */
|
|
119
|
+
executionTime?: number;
|
|
120
|
+
/** Where to go next. */
|
|
121
|
+
links: {
|
|
122
|
+
self: string;
|
|
123
|
+
events: string;
|
|
124
|
+
result: string;
|
|
125
|
+
resolve?: string;
|
|
126
|
+
cancel?: string;
|
|
62
127
|
};
|
|
63
|
-
/** Execution trace events (if requested) */
|
|
64
|
-
trace?: Array<{
|
|
65
|
-
type: string;
|
|
66
|
-
timestamp: number;
|
|
67
|
-
data?: unknown;
|
|
68
|
-
}>;
|
|
69
128
|
}
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
129
|
+
export interface ErrorDetail {
|
|
130
|
+
code: string;
|
|
131
|
+
message: string;
|
|
132
|
+
/** Field-level detail, such as which parameters were missing. */
|
|
133
|
+
details?: unknown;
|
|
134
|
+
stack?: string;
|
|
135
|
+
}
|
|
136
|
+
export interface ErrorBody {
|
|
137
|
+
error: ErrorDetail;
|
|
138
|
+
}
|
|
139
|
+
/** Health check response. */
|
|
73
140
|
export interface HealthResponse {
|
|
74
141
|
status: 'ok' | 'error';
|
|
75
142
|
timestamp: string;
|
|
76
143
|
workflows: number;
|
|
77
144
|
uptime?: number;
|
|
145
|
+
version: string;
|
|
146
|
+
auth: 'token' | 'open';
|
|
147
|
+
agents: boolean;
|
|
148
|
+
/** Declared `@http` routes mounted. */
|
|
149
|
+
routes: number;
|
|
78
150
|
}
|
|
79
|
-
/**
|
|
80
|
-
* Workflow list response
|
|
81
|
-
*/
|
|
151
|
+
/** Workflow list response. */
|
|
82
152
|
export interface WorkflowListResponse {
|
|
83
153
|
count: number;
|
|
84
154
|
workflows: Array<{
|
|
@@ -86,8 +156,29 @@ export interface WorkflowListResponse {
|
|
|
86
156
|
path: string;
|
|
87
157
|
method: string;
|
|
88
158
|
description?: string;
|
|
159
|
+
gates?: number;
|
|
160
|
+
routes?: import('../ast/types.js').THttpRoute[];
|
|
89
161
|
inputSchema?: Record<string, unknown>;
|
|
90
162
|
outputSchema?: Record<string, unknown>;
|
|
91
163
|
}>;
|
|
92
164
|
}
|
|
165
|
+
/**
|
|
166
|
+
* @deprecated The pre-0.39 execution response. `POST /workflows/:name` now
|
|
167
|
+
* answers with a `RunResponse`. Kept so older imports still compile.
|
|
168
|
+
*/
|
|
169
|
+
export interface ExecutionResult {
|
|
170
|
+
success: boolean;
|
|
171
|
+
workflow: string;
|
|
172
|
+
executionTime: number;
|
|
173
|
+
result?: unknown;
|
|
174
|
+
error?: {
|
|
175
|
+
message: string;
|
|
176
|
+
stack?: string;
|
|
177
|
+
};
|
|
178
|
+
trace?: Array<{
|
|
179
|
+
type: string;
|
|
180
|
+
timestamp: number;
|
|
181
|
+
data?: unknown;
|
|
182
|
+
}>;
|
|
183
|
+
}
|
|
93
184
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1,50 +1,24 @@
|
|
|
1
|
-
|
|
2
|
-
* Webhook server for exposing workflows as HTTP endpoints
|
|
3
|
-
*/
|
|
1
|
+
import { type WorkflowApi } from './api.js';
|
|
4
2
|
import type { WebhookServerConfig } from './types.js';
|
|
5
|
-
|
|
6
|
-
* HTTP server that exposes Flow Weaver workflows as REST endpoints
|
|
7
|
-
*/
|
|
3
|
+
export type { CallbackPolicy } from './callback-url.js';
|
|
8
4
|
export declare class WebhookServer {
|
|
9
|
-
private
|
|
10
|
-
|
|
5
|
+
private server;
|
|
6
|
+
readonly api: WorkflowApi;
|
|
11
7
|
private config;
|
|
8
|
+
/** Where the server is listening, once it is. */
|
|
9
|
+
url: string;
|
|
12
10
|
constructor(config: WebhookServerConfig);
|
|
13
|
-
/**
|
|
14
|
-
* Start the HTTP server
|
|
15
|
-
*/
|
|
11
|
+
/** Start listening. `port: 0` picks a free one; `url` says which. */
|
|
16
12
|
start(): Promise<void>;
|
|
17
|
-
/**
|
|
18
|
-
|
|
19
|
-
*/
|
|
20
|
-
private setupHealthRoute;
|
|
21
|
-
/**
|
|
22
|
-
* Setup workflow list endpoint
|
|
23
|
-
*/
|
|
24
|
-
private setupListRoute;
|
|
25
|
-
/**
|
|
26
|
-
* Setup dynamic workflow execution route
|
|
27
|
-
*/
|
|
28
|
-
private setupExecuteRoute;
|
|
29
|
-
/**
|
|
30
|
-
* Build OpenAPI spec from discovered workflows
|
|
31
|
-
*/
|
|
32
|
-
private buildOpenApiSpec;
|
|
33
|
-
/**
|
|
34
|
-
* Setup Swagger UI and OpenAPI spec routes
|
|
35
|
-
*/
|
|
36
|
-
private setupSwaggerRoutes;
|
|
37
|
-
/**
|
|
38
|
-
* Get server info for external logging
|
|
39
|
-
*/
|
|
13
|
+
/** Stop listening, end every stream, and stop what is in flight. */
|
|
14
|
+
stop(): Promise<void>;
|
|
40
15
|
getServerInfo(): {
|
|
41
16
|
port: number;
|
|
42
17
|
host: string;
|
|
43
18
|
endpoints: number;
|
|
19
|
+
routes: number;
|
|
20
|
+
url: string;
|
|
44
21
|
};
|
|
45
|
-
|
|
46
|
-
* Stop the HTTP server
|
|
47
|
-
*/
|
|
48
|
-
stop(): Promise<void>;
|
|
22
|
+
buildOpenApiSpec(): object;
|
|
49
23
|
}
|
|
50
24
|
//# sourceMappingURL=webhook-server.d.ts.map
|
|
@@ -11,7 +11,6 @@ export declare class WorkflowRegistry {
|
|
|
11
11
|
private endpoints;
|
|
12
12
|
private watcher;
|
|
13
13
|
private debounceTimers;
|
|
14
|
-
private parser;
|
|
15
14
|
private startTime;
|
|
16
15
|
constructor(workflowDir: string, options?: {
|
|
17
16
|
precompile?: boolean;
|
|
@@ -34,7 +33,8 @@ export declare class WorkflowRegistry {
|
|
|
34
33
|
*/
|
|
35
34
|
private extractOutputSchema;
|
|
36
35
|
/**
|
|
37
|
-
*
|
|
36
|
+
* A Flow Weaver data type as a JSON Schema fragment. `ANY` has no JSON
|
|
37
|
+
* Schema type: it is the empty schema, which admits anything.
|
|
38
38
|
*/
|
|
39
39
|
private dataTypeToJsonSchema;
|
|
40
40
|
/**
|
|
@@ -50,9 +50,12 @@ export declare class WorkflowRegistry {
|
|
|
50
50
|
*/
|
|
51
51
|
getUptime(): number;
|
|
52
52
|
/**
|
|
53
|
-
* Start watching for file changes
|
|
53
|
+
* Start watching for file changes. After a change settles, the workflows
|
|
54
|
+
* are discovered again and `onChange` runs. A rediscovery that fails goes
|
|
55
|
+
* to `onError`, which by default writes it to stderr, and the next change
|
|
56
|
+
* tries again.
|
|
54
57
|
*/
|
|
55
|
-
startWatching(onChange: () => void): Promise<void>;
|
|
58
|
+
startWatching(onChange: () => void, onError?: (error: unknown) => void): Promise<void>;
|
|
56
59
|
/**
|
|
57
60
|
* Stop watching for file changes
|
|
58
61
|
*/
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
export type ServiceKind = 'mcp-server' | 'serve' | 'console';
|
|
2
|
+
export interface ServiceRecord {
|
|
3
|
+
kind: ServiceKind;
|
|
4
|
+
pid: number;
|
|
5
|
+
/** Flow Weaver's version, and the install it runs from. */
|
|
6
|
+
version: string;
|
|
7
|
+
install: string;
|
|
8
|
+
/** Where it was started. */
|
|
9
|
+
cwd: string;
|
|
10
|
+
/** The project it serves, when that is not the working directory. */
|
|
11
|
+
project?: string;
|
|
12
|
+
url?: string;
|
|
13
|
+
transport?: 'stdio' | 'http';
|
|
14
|
+
/** What is on the other end, when known: the MCP client's name and version. */
|
|
15
|
+
client?: string;
|
|
16
|
+
startedAt: string;
|
|
17
|
+
lastActivityAt: string;
|
|
18
|
+
/** The last thing it did: a tool name, a request. */
|
|
19
|
+
activity?: string;
|
|
20
|
+
activityCount: number;
|
|
21
|
+
}
|
|
22
|
+
/** The package this module runs from: `dist/` or `src/` sits one level below it. */
|
|
23
|
+
export declare function installRoot(): string;
|
|
24
|
+
/** Whether a process exists. `EPERM` means it exists but is not ours. */
|
|
25
|
+
export declare function isAlive(pid: number): boolean;
|
|
26
|
+
export interface Announcement {
|
|
27
|
+
readonly file: string;
|
|
28
|
+
/** Note activity, at most one write a second. */
|
|
29
|
+
touch(activity?: string): void;
|
|
30
|
+
/** Change what is known about the service (its client, its project). */
|
|
31
|
+
update(patch: Partial<Pick<ServiceRecord, 'client' | 'project' | 'url'>>): void;
|
|
32
|
+
/** Withdraw the record. Also done on exit. */
|
|
33
|
+
retire(): void;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Announce this process. Best effort throughout: a service must never fail
|
|
37
|
+
* to start because its status directory could not be written.
|
|
38
|
+
*/
|
|
39
|
+
export declare function announceService(init: {
|
|
40
|
+
kind: ServiceKind;
|
|
41
|
+
cwd?: string;
|
|
42
|
+
project?: string;
|
|
43
|
+
url?: string;
|
|
44
|
+
transport?: 'stdio' | 'http';
|
|
45
|
+
dir?: string;
|
|
46
|
+
}): Announcement;
|
|
47
|
+
/** Every service alive now, newest first. Records of dead processes are removed as they are found. */
|
|
48
|
+
export declare function listServices(dir?: string): ServiceRecord[];
|
|
49
|
+
//# sourceMappingURL=service-registry.d.ts.map
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
// src/service-registry.ts
|
|
2
|
+
import * as fs from "node:fs";
|
|
3
|
+
import * as os from "node:os";
|
|
4
|
+
import * as path from "node:path";
|
|
5
|
+
import { fileURLToPath } from "node:url";
|
|
6
|
+
|
|
7
|
+
// src/generated-version.ts
|
|
8
|
+
var VERSION = "0.44.0";
|
|
9
|
+
|
|
10
|
+
// src/service-registry.ts
|
|
11
|
+
function servicesDir() {
|
|
12
|
+
return process.env.FW_SERVICES_DIR ?? path.join(os.homedir(), ".fw", "services");
|
|
13
|
+
}
|
|
14
|
+
function installRoot() {
|
|
15
|
+
return path.resolve(path.dirname(fileURLToPath(import.meta.url)), "..");
|
|
16
|
+
}
|
|
17
|
+
function isAlive(pid) {
|
|
18
|
+
try {
|
|
19
|
+
process.kill(pid, 0);
|
|
20
|
+
return true;
|
|
21
|
+
} catch (err) {
|
|
22
|
+
return err.code === "EPERM";
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
function writeAtomic(file, data) {
|
|
26
|
+
const tmp = `${file}.${process.pid}.tmp`;
|
|
27
|
+
fs.writeFileSync(tmp, data);
|
|
28
|
+
fs.renameSync(tmp, file);
|
|
29
|
+
}
|
|
30
|
+
function announceService(init) {
|
|
31
|
+
const dir = init.dir ?? servicesDir();
|
|
32
|
+
const file = path.join(dir, `${init.kind}-${process.pid}.json`);
|
|
33
|
+
const now = (/* @__PURE__ */ new Date()).toISOString();
|
|
34
|
+
let record = {
|
|
35
|
+
kind: init.kind,
|
|
36
|
+
pid: process.pid,
|
|
37
|
+
version: VERSION,
|
|
38
|
+
install: installRoot(),
|
|
39
|
+
cwd: init.cwd ?? process.cwd(),
|
|
40
|
+
project: init.project,
|
|
41
|
+
url: init.url,
|
|
42
|
+
transport: init.transport,
|
|
43
|
+
startedAt: now,
|
|
44
|
+
lastActivityAt: now,
|
|
45
|
+
activityCount: 0
|
|
46
|
+
};
|
|
47
|
+
const write = () => {
|
|
48
|
+
try {
|
|
49
|
+
fs.mkdirSync(dir, { recursive: true });
|
|
50
|
+
writeAtomic(file, JSON.stringify(record));
|
|
51
|
+
} catch {
|
|
52
|
+
}
|
|
53
|
+
};
|
|
54
|
+
write();
|
|
55
|
+
let lastWrite = Date.now();
|
|
56
|
+
let pending;
|
|
57
|
+
const retire = () => {
|
|
58
|
+
if (pending) clearTimeout(pending);
|
|
59
|
+
try {
|
|
60
|
+
fs.rmSync(file, { force: true });
|
|
61
|
+
} catch {
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
process.once("exit", retire);
|
|
65
|
+
for (const sig of ["SIGINT", "SIGTERM"]) {
|
|
66
|
+
process.once(sig, () => {
|
|
67
|
+
retire();
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
return {
|
|
71
|
+
file,
|
|
72
|
+
touch(activity) {
|
|
73
|
+
record = { ...record, lastActivityAt: (/* @__PURE__ */ new Date()).toISOString(), activity: activity ?? record.activity, activityCount: record.activityCount + 1 };
|
|
74
|
+
const due = 1e3 - (Date.now() - lastWrite);
|
|
75
|
+
if (due <= 0) {
|
|
76
|
+
lastWrite = Date.now();
|
|
77
|
+
write();
|
|
78
|
+
} else if (!pending) pending = setTimeout(() => {
|
|
79
|
+
pending = void 0;
|
|
80
|
+
lastWrite = Date.now();
|
|
81
|
+
write();
|
|
82
|
+
}, due).unref?.();
|
|
83
|
+
},
|
|
84
|
+
update(patch) {
|
|
85
|
+
record = { ...record, ...patch };
|
|
86
|
+
write();
|
|
87
|
+
},
|
|
88
|
+
retire
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
function listServices(dir = servicesDir()) {
|
|
92
|
+
let names;
|
|
93
|
+
try {
|
|
94
|
+
names = fs.readdirSync(dir).filter((n) => n.endsWith(".json"));
|
|
95
|
+
} catch {
|
|
96
|
+
return [];
|
|
97
|
+
}
|
|
98
|
+
const out = [];
|
|
99
|
+
for (const name of names) {
|
|
100
|
+
const file = path.join(dir, name);
|
|
101
|
+
let record;
|
|
102
|
+
try {
|
|
103
|
+
record = JSON.parse(fs.readFileSync(file, "utf8"));
|
|
104
|
+
} catch {
|
|
105
|
+
continue;
|
|
106
|
+
}
|
|
107
|
+
if (!record || typeof record.pid !== "number" || !isAlive(record.pid)) {
|
|
108
|
+
try {
|
|
109
|
+
fs.rmSync(file, { force: true });
|
|
110
|
+
} catch {
|
|
111
|
+
}
|
|
112
|
+
continue;
|
|
113
|
+
}
|
|
114
|
+
out.push(record);
|
|
115
|
+
}
|
|
116
|
+
return out.sort((a, b) => b.startedAt.localeCompare(a.startedAt));
|
|
117
|
+
}
|
|
118
|
+
export {
|
|
119
|
+
announceService,
|
|
120
|
+
installRoot,
|
|
121
|
+
isAlive,
|
|
122
|
+
listServices
|
|
123
|
+
};
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Usage:
|
|
5
5
|
* ```typescript
|
|
6
|
-
* import { expectAgentResult } from 'flow-weaver/testing';
|
|
6
|
+
* import { expectAgentResult } from '@synergenius/flow-weaver/testing';
|
|
7
7
|
*
|
|
8
8
|
* const result = await myAgentWorkflow(true, { query: 'hello' });
|
|
9
9
|
*
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
* .toNotHaveOutput('error');
|
|
14
14
|
* ```
|
|
15
15
|
*/
|
|
16
|
-
import type { MockLlmProvider } from './mock-llm
|
|
16
|
+
import type { MockLlmProvider } from './mock-llm';
|
|
17
17
|
export interface AgentResultAssertions {
|
|
18
18
|
/** Assert the workflow completed successfully (onSuccess === true) */
|
|
19
19
|
toHaveSucceeded(): AgentResultAssertions;
|
package/dist/testing/index.d.ts
CHANGED
|
@@ -12,19 +12,20 @@
|
|
|
12
12
|
* expectAgentResult,
|
|
13
13
|
* expectMockLlm,
|
|
14
14
|
* TokenTracker,
|
|
15
|
-
* } from 'flow-weaver/testing';
|
|
15
|
+
* } from '@synergenius/flow-weaver/testing';
|
|
16
16
|
* ```
|
|
17
17
|
*/
|
|
18
|
-
export { createMockLlmProvider } from './mock-llm
|
|
19
|
-
export type { MockLlmProvider, MockLlmResponse, MockLlmCall, LLMProvider, LLMMessage, LLMResponse, LLMToolCall, LLMTool, LLMTokenUsage, } from './mock-llm
|
|
20
|
-
export { expectAgentResult, expectMockLlm } from './assertions
|
|
21
|
-
export type { AgentResultAssertions, MockLlmAssertions } from './assertions
|
|
22
|
-
export { TokenTracker } from './token-tracker
|
|
23
|
-
export type { TrackedStep } from './token-tracker
|
|
24
|
-
export { createRecordingProvider } from './recorder
|
|
25
|
-
export type { RecordingLlmProvider, LlmRecording, LlmRecordingStep } from './recorder
|
|
26
|
-
export { createReplayProvider, loadRecording } from './replayer
|
|
27
|
-
export type { ReplayOptions } from './replayer
|
|
28
|
-
export {
|
|
29
|
-
export
|
|
18
|
+
export { createMockLlmProvider } from './mock-llm';
|
|
19
|
+
export type { MockLlmProvider, MockLlmResponse, MockLlmCall, LLMProvider, LLMMessage, LLMResponse, LLMToolCall, LLMTool, LLMTokenUsage, } from './mock-llm';
|
|
20
|
+
export { expectAgentResult, expectMockLlm } from './assertions';
|
|
21
|
+
export type { AgentResultAssertions, MockLlmAssertions } from './assertions';
|
|
22
|
+
export { TokenTracker } from './token-tracker';
|
|
23
|
+
export type { TrackedStep } from './token-tracker';
|
|
24
|
+
export { createRecordingProvider } from './recorder';
|
|
25
|
+
export type { RecordingLlmProvider, LlmRecording, LlmRecordingStep } from './recorder';
|
|
26
|
+
export { createReplayProvider, loadRecording } from './replayer';
|
|
27
|
+
export type { ReplayOptions } from './replayer';
|
|
28
|
+
export { checkRunStore } from './run-store-check';
|
|
29
|
+
export { createMockApprovalProvider } from './mock-approval';
|
|
30
|
+
export type { MockApprovalProvider, MockApprovalResponse, MockApprovalCall, ApprovalProvider, ApprovalRequest, ApprovalResult, } from './mock-approval';
|
|
30
31
|
//# sourceMappingURL=index.d.ts.map
|