@pikku/cli 0.12.104 → 0.12.107
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/CHANGELOG.md +7306 -0
- package/console-app/assets/abnfDiagram-N423BO3Z-C5uToS9v.js +1 -0
- package/console-app/assets/arc-D8VmsdJb.js +1 -0
- package/console-app/assets/architecture-TIHT7OUA-B1IpeRpl.js +1 -0
- package/console-app/assets/architectureDiagram-T3A2C74G-BzJDRfv4.js +36 -0
- package/console-app/assets/{blockDiagram-677ZJIJ3-CcSxyQZH.js → blockDiagram-VBNYF7ZC-X5G9Ch-D.js} +5 -5
- package/console-app/assets/c4Diagram-5PPSVZJV-B59aO2Sc.js +10 -0
- package/console-app/assets/channel-sTJGzqn9.js +1 -0
- package/console-app/assets/{chunk-32BRIVSS-Atv4wjmh.js → chunk-2GRJ4B5K-Bwe32j_R.js} +1 -1
- package/console-app/assets/{chunk-HOUHSVGY-CyU0q_QM.js → chunk-4I5QYGJK-Beg_uQQN.js} +1 -1
- package/console-app/assets/chunk-5RXB4S5H-0HaMiv3k.js +231 -0
- package/console-app/assets/{chunk-MOJQB5TN-DUKLkDFX.js → chunk-6Q2QTUOP-CXxkExOq.js} +1 -1
- package/console-app/assets/chunk-7Z6QIM7H-zUqPbrvp.js +10 -0
- package/console-app/assets/{chunk-V7JOEXUC-BfBH_WMn.js → chunk-GF5L2VYU-CY0wGPcJ.js} +3 -3
- package/console-app/assets/chunk-I66GZJ75-BP5UNkJY.js +127 -0
- package/console-app/assets/chunk-JQJVKLGR-3dvnUUZN.js +156 -0
- package/console-app/assets/{chunk-VR4S4FIN-q02O9Hva.js → chunk-KBJHAD2P-ChD7o2bf.js} +1 -1
- package/console-app/assets/{chunk-KEIR6QF5-DNzq6p3w.js → chunk-KEIR6QF5-BICK3FdT.js} +32 -32
- package/console-app/assets/chunk-NSK5VX7P-oG1nh33f.js +2 -0
- package/console-app/assets/{chunk-ZGVPDNZ5-2b6-Ub1z.js → chunk-QR6OTTB3-D_uKJrj6.js} +3 -3
- package/console-app/assets/chunk-RYQCIY6F-CtYhP8W5.js +1 -0
- package/console-app/assets/chunk-UBXNYLIW-CMgD3fvL.js +1 -0
- package/console-app/assets/{chunk-C7G6YPKG-DhtQv4yx.js → chunk-W5SLKNZC-cjI56NCs.js} +1 -1
- package/console-app/assets/{chunk-Q4XR5HBZ-Cpak96ZI.js → chunk-WRU74C26-BQqHgerX.js} +7 -7
- package/console-app/assets/chunk-XXDRQBXY-CLdTtHL4.js +1 -0
- package/console-app/assets/classDiagram-JCYQIIEL-Dh0wx8TK.js +1 -0
- package/console-app/assets/classDiagram-v2-OCEON4UE-Dh0wx8TK.js +1 -0
- package/console-app/assets/cose-bilkent-JH36ORCC-DcHzDpDb.js +1 -0
- package/console-app/assets/cynefin-VYW2F7L2-Cn2zn-8-.js +1 -0
- package/console-app/assets/cynefinDiagram-MW4NZA55-C00zINdu.js +62 -0
- package/console-app/assets/cytoscape.esm-B-NFISlW.js +321 -0
- package/console-app/assets/dagre-DE2imcyX.js +1 -0
- package/console-app/assets/dagre-VZM6K2ZE-Bb2uZ7tL.js +4 -0
- package/console-app/assets/defaultLocale-BFoDCU3G.js +1 -0
- package/console-app/assets/{diagram-OA4YK3LP-Dv-j07Wh.js → diagram-7IWD3JNH-DUN-JIa1.js} +3 -3
- package/console-app/assets/{diagram-FQU43EPY-SGSSyx5P.js → diagram-B4RE2ZJO-Ct5iRFhI.js} +1 -1
- package/console-app/assets/diagram-LBJQPF4R-BZ2Hrr-9.js +24 -0
- package/console-app/assets/diagram-Q27KOJAE-BHaThj6T.js +24 -0
- package/console-app/assets/diagram-UB23O5K3-CH-SzBoh.js +41 -0
- package/console-app/assets/dist-CsdsWTxp.js +1 -0
- package/console-app/assets/ebnfDiagram-BXEA7PRR-BkjeNaQH.js +1 -0
- package/console-app/assets/{erDiagram-Q63AITRT-DQ5Gu1Tw.js → erDiagram-JOGREHBK-BdL77bY3.js} +3 -3
- package/console-app/assets/eventmodeling-45OFAUF4-C6PNVeIU.js +1 -0
- package/console-app/assets/flowDiagram-UKHOOZJN-CmURPvo2.js +1 -0
- package/console-app/assets/ganttDiagram-PKOTCBZU-DfgO68Ez.js +292 -0
- package/console-app/assets/gitGraph-TEB2WS4Q-BNbepAzP.js +1 -0
- package/console-app/assets/{gitGraphDiagram-IHSO6WYX-7JFgdH2Q.js → gitGraphDiagram-DS77QQ5N-Crb8obGB.js} +4 -4
- package/console-app/assets/graphlib-IlWVLY3o.js +1 -0
- package/console-app/assets/index-Dsydm-nw.css +1 -0
- package/console-app/assets/index-g8jA8DJo.js +290 -0
- package/console-app/assets/info-DKCQHKI2-D9tXUXel.js +1 -0
- package/console-app/assets/infoDiagram-6WML65LV-BvG8ufLa.js +2 -0
- package/console-app/assets/init-C-OQMol4.js +1 -0
- package/console-app/assets/isUndefined-T4snU1Mx.js +1 -0
- package/console-app/assets/{ishikawaDiagram-FXEZZL3T-XjQC7Fmw.js → ishikawaDiagram-WSZJBQD7-BWoGxEjO.js} +3 -3
- package/console-app/assets/{journeyDiagram-5HDEW3XC-DyIcpJQM.js → journeyDiagram-NVQOT4AX-CR4YcPHg.js} +3 -3
- package/console-app/assets/{kanban-definition-HUTT4EX6-B1zYF1dv.js → kanban-definition-27J2QSJJ-DYfc5EZe.js} +6 -6
- package/console-app/assets/{katex-Vhh-h91d.js → katex-CXMH3UgJ.js} +3 -3
- package/console-app/assets/{line-C6UySSzG.js → line-NIaf8Mfw.js} +1 -1
- package/console-app/assets/linear-DB_1BE-l.js +1 -0
- package/console-app/assets/map-BmPfXn7V.js +1 -0
- package/console-app/assets/{mermaid-parser.core-Tfk1Eudy.js → mermaid-parser.core-BqCVMHRZ.js} +3 -3
- package/console-app/assets/mermaid.core-CYaeERjF.js +42 -0
- package/console-app/assets/{mindmap-definition-LN4V7U3C-5tBdCFVy.js → mindmap-definition-FAOFIHXS-BCjT2v4F.js} +3 -3
- package/console-app/assets/{ordinal-hYBb2elL.js → ordinal-BDEzSJ7C.js} +1 -1
- package/console-app/assets/packet-7NZHBO7P-CzFZvntp.js +1 -0
- package/console-app/assets/path-fybaL0A-.js +1 -0
- package/console-app/assets/pegDiagram-VL7TDLO6-3iMotW64.js +1 -0
- package/console-app/assets/pie-RZYD4A2V-CXIoUTJn.js +1 -0
- package/console-app/assets/pieDiagram-7S7Q4E2Y-B-EOKkdd.js +39 -0
- package/console-app/assets/{quadrantDiagram-ABIIQ3AL-Bwdtm5-W.js → quadrantDiagram-CIZ2JOQS-DDdq8l2N.js} +2 -2
- package/console-app/assets/radar-I7S5WNFK-9SLSkJ73.js +1 -0
- package/console-app/assets/railroad-3IZDKUUU-DdJ88Ord.js +1 -0
- package/console-app/assets/railroad-abnf-AHOZXSZD-D2QiLT8B.js +1 -0
- package/console-app/assets/railroad-ebnf-EBAXGLYW-CSMqj9L2.js +1 -0
- package/console-app/assets/railroad-peg-LSFZ7HO6-Cg1-F8im.js +1 -0
- package/console-app/assets/railroadDiagram-AXF67PYL-BMW_s9QW.js +1 -0
- package/console-app/assets/{requirementDiagram-TGXJPOKE-CRV748Vu.js → requirementDiagram-LRYGKXZP-BzcnEvjk.js} +2 -2
- package/console-app/assets/rolldown-runtime-BcKkbAw3.js +1 -0
- package/console-app/assets/{rough.esm-CSKSodPl.js → rough.esm-Dy-Kn_BL.js} +1 -1
- package/console-app/assets/{sankeyDiagram-HTMAVEWB-CrFvfCvp.js → sankeyDiagram-W5VNT64P-Dh2TFvuG.js} +2 -2
- package/console-app/assets/sequenceDiagram-SI44F4Z6-b-m-tQYz.js +162 -0
- package/console-app/assets/src-Dm8O0hiD.js +1 -0
- package/console-app/assets/stateDiagram-OKZ733FA-W98kCkqj.js +1 -0
- package/console-app/assets/stateDiagram-v2-UEYNNEHI-DpnoMNHC.js +1 -0
- package/console-app/assets/swimlanes-SLNWSIFB-0q_y6cLu.js +2 -0
- package/console-app/assets/swimlanesDiagram-ULZ7WXOC-BmGtOaWo.js +8 -0
- package/console-app/assets/timeline-definition-Z64GVDOM-DmsNlhwe.js +120 -0
- package/console-app/assets/treeView-QDETBFTQ-DY7A9uJm.js +1 -0
- package/console-app/assets/treemap-6X3UGDF4-DI73Vm90.js +1 -0
- package/console-app/assets/vennDiagram-T6HMQDX7-Czpr9diJ.js +34 -0
- package/console-app/assets/wardley-OPB4EBWU-C39AmDqd.js +1 -0
- package/console-app/assets/{wardleyDiagram-EHGQE667-uWxnqqVK.js → wardleyDiagram-T6FBY63Y-DOtWBvnk.js} +36 -36
- package/console-app/assets/{xychartDiagram-FW5EYKEG-ClVawwGR.js → xychartDiagram-ELKLHX3M-VHHuGrWV.js} +4 -4
- package/console-app/index.html +4 -2
- package/dist/.pikku/addon/index.d.ts +7 -0
- package/dist/.pikku/addon/index.js +7 -0
- package/dist/.pikku/addon/pikku-addon-types.gen.d.ts +7 -0
- package/dist/.pikku/addon/pikku-addon-types.gen.js +7 -0
- package/dist/.pikku/agent/index.d.ts +7 -0
- package/dist/.pikku/agent/index.js +7 -0
- package/dist/.pikku/agent/pikku-agent-types.gen.d.ts +14 -13
- package/dist/.pikku/agent/pikku-agent-types.gen.js +5 -6
- package/dist/.pikku/agent/pikku-model-aliases.gen.js +2 -2
- package/dist/.pikku/auth/index.d.ts +8 -0
- package/dist/.pikku/auth/index.js +8 -0
- package/dist/.pikku/auth/pikku-auth-types.gen.d.ts +118 -0
- package/dist/.pikku/auth/pikku-auth-types.gen.js +92 -0
- package/dist/.pikku/channel/index.d.ts +7 -0
- package/dist/.pikku/channel/index.js +7 -0
- package/dist/.pikku/channel/pikku-channel-types.gen.d.ts +6 -8
- package/dist/.pikku/channel/pikku-channel-types.gen.js +2 -9
- package/dist/.pikku/cli/index.d.ts +7 -0
- package/dist/.pikku/cli/index.js +7 -0
- package/dist/.pikku/cli/pikku-cli-channel.js +14 -3
- package/dist/.pikku/cli/pikku-cli-client.gen.d.ts +1 -1
- package/dist/.pikku/cli/pikku-cli-client.gen.js +1 -1
- package/dist/.pikku/cli/pikku-cli-contracts-meta.gen.d.ts +1 -1
- package/dist/.pikku/cli/pikku-cli-contracts-meta.gen.js +1 -1
- package/dist/.pikku/cli/pikku-cli-types.gen.d.ts +3 -2
- package/dist/.pikku/cli/pikku-cli-types.gen.js +1 -1
- package/dist/.pikku/cli/pikku-cli-wirings-meta.gen.js +2 -2
- package/dist/.pikku/cli/pikku-cli-wirings-meta.gen.json +86 -22
- package/dist/.pikku/cli/pikku-cli-wirings.gen.d.ts +1 -1
- package/dist/.pikku/cli/pikku-cli-wirings.gen.js +1 -1
- package/dist/.pikku/cli/pikku-cli.gen.d.ts +1 -1
- package/dist/.pikku/cli/pikku-cli.gen.js +1 -1
- package/dist/.pikku/console/index.d.ts +1 -0
- package/dist/.pikku/console/index.js +1 -0
- package/dist/.pikku/console/pikku-node-types.gen.d.ts +1 -1
- package/dist/.pikku/error/index.d.ts +7 -0
- package/dist/.pikku/error/index.js +7 -0
- package/dist/.pikku/error/pikku-error-types.gen.d.ts +7 -0
- package/dist/.pikku/error/pikku-error-types.gen.js +7 -0
- package/dist/.pikku/function/index.d.ts +7 -0
- package/dist/.pikku/function/index.js +7 -0
- package/dist/.pikku/function/pikku-function-types.gen.d.ts +26 -258
- package/dist/.pikku/function/pikku-function-types.gen.js +2 -236
- package/dist/.pikku/function/pikku-functions-meta.gen.js +2 -2
- package/dist/.pikku/function/pikku-functions-meta.gen.json +193 -128
- package/dist/.pikku/function/pikku-functions.gen.js +14 -12
- package/dist/.pikku/gateway/index.d.ts +7 -0
- package/dist/.pikku/gateway/index.js +7 -0
- package/dist/.pikku/gateway/pikku-gateway-types.gen.d.ts +36 -0
- package/dist/.pikku/gateway/pikku-gateway-types.gen.js +25 -0
- package/dist/.pikku/http/index.d.ts +7 -0
- package/dist/.pikku/http/index.js +7 -0
- package/dist/.pikku/http/pikku-http-types.gen.d.ts +4 -22
- package/dist/.pikku/http/pikku-http-types.gen.js +2 -24
- package/dist/.pikku/mcp/index.d.ts +7 -0
- package/dist/.pikku/mcp/index.js +7 -0
- package/dist/.pikku/mcp/pikku-mcp-types.gen.d.ts +7 -4
- package/dist/.pikku/mcp/pikku-mcp-types.gen.js +1 -1
- package/dist/.pikku/middleware/index.d.ts +7 -0
- package/dist/.pikku/middleware/index.js +7 -0
- package/dist/.pikku/middleware/pikku-middleware-types.gen.d.ts +117 -0
- package/dist/.pikku/middleware/pikku-middleware-types.gen.js +108 -0
- package/dist/.pikku/node/index.d.ts +1 -0
- package/dist/.pikku/node/index.js +1 -0
- package/dist/.pikku/pikku-bootstrap-scenarios.gen.d.ts +1 -1
- package/dist/.pikku/pikku-bootstrap-scenarios.gen.js +1 -1
- package/dist/.pikku/pikku-bootstrap.gen.d.ts +1 -1
- package/dist/.pikku/pikku-bootstrap.gen.js +1 -1
- package/dist/.pikku/pikku-meta-service.gen.d.ts +1 -1
- package/dist/.pikku/pikku-meta-service.gen.js +1 -1
- package/dist/.pikku/pikku-services.gen.d.ts +4 -4
- package/dist/.pikku/pikku-services.gen.js +3 -3
- package/dist/.pikku/pikku-types.gen.d.ts +1 -1
- package/dist/.pikku/pikku-types.gen.js +1 -1
- package/dist/.pikku/queue/index.d.ts +7 -0
- package/dist/.pikku/queue/index.js +7 -0
- package/dist/.pikku/queue/pikku-queue-types.gen.d.ts +1 -1
- package/dist/.pikku/queue/pikku-queue-types.gen.js +1 -1
- package/dist/.pikku/queue/pikku-queue-workers-wirings-meta.gen.js +2 -2
- package/dist/.pikku/queue/pikku-queue-workers-wirings.gen.d.ts +1 -1
- package/dist/.pikku/queue/pikku-queue-workers-wirings.gen.js +1 -1
- package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.js +2 -2
- package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.json +8 -5
- package/dist/.pikku/scenarios/index.d.ts +7 -0
- package/dist/.pikku/scenarios/index.js +7 -0
- package/dist/.pikku/scenarios/pikku-personas.gen.d.ts +17 -0
- package/dist/.pikku/scenarios/pikku-personas.gen.js +17 -0
- package/dist/.pikku/scenarios/pikku-scenario-functions-meta.gen.js +2 -2
- package/dist/.pikku/scenarios/pikku-scenario-functions.gen.d.ts +1 -1
- package/dist/.pikku/scenarios/pikku-scenario-types.gen.d.ts +310 -0
- package/dist/.pikku/scenarios/pikku-scenario-types.gen.js +71 -0
- package/dist/.pikku/scenarios/pikku-scenario-wirings-meta.gen.js +2 -2
- package/dist/.pikku/scenarios/pikku-scenario-wirings.gen.d.ts +1 -1
- package/dist/.pikku/scenarios/schemas/register.gen.d.ts +1 -1
- package/dist/.pikku/scenarios/schemas/register.gen.js +1 -1
- package/dist/.pikku/scheduler/index.d.ts +7 -0
- package/dist/.pikku/scheduler/index.js +7 -0
- package/dist/.pikku/scheduler/pikku-scheduler-types.gen.d.ts +3 -2
- package/dist/.pikku/scheduler/pikku-scheduler-types.gen.js +1 -1
- package/dist/.pikku/schemas/register.gen.js +9 -7
- package/dist/.pikku/schemas/schemas/PikkuSemverOutput.schema.json +1 -0
- package/dist/.pikku/scopes/index.d.ts +7 -0
- package/dist/.pikku/scopes/index.js +7 -0
- package/dist/.pikku/scopes/pikku-personas.gen.d.ts +5 -13
- package/dist/.pikku/scopes/pikku-personas.gen.js +1 -1
- package/dist/.pikku/scopes/pikku-roles.gen.d.ts +1 -1
- package/dist/.pikku/scopes/pikku-scope-types.gen.d.ts +1 -3
- package/dist/.pikku/scopes/pikku-scope-types.gen.js +1 -1
- package/dist/.pikku/scopes/pikku-scopes.gen.d.ts +1 -1
- package/dist/.pikku/secrets/index.d.ts +8 -0
- package/dist/.pikku/secrets/index.js +8 -0
- package/dist/.pikku/secrets/pikku-secret-types.gen.d.ts +1 -2
- package/dist/.pikku/secrets/pikku-secret-types.gen.js +1 -1
- package/dist/.pikku/secrets/pikku-secrets.gen.d.ts +8 -12
- package/dist/.pikku/secrets/pikku-secrets.gen.js +7 -9
- package/dist/.pikku/services/pikku-meta-service.gen.d.ts +7 -0
- package/dist/.pikku/services/pikku-meta-service.gen.js +9 -0
- package/dist/.pikku/setup/index.d.ts +7 -0
- package/dist/.pikku/setup/index.js +7 -0
- package/dist/.pikku/setup/pikku-setup-types.gen.d.ts +66 -0
- package/dist/.pikku/setup/pikku-setup-types.gen.js +87 -0
- package/dist/.pikku/trigger/index.d.ts +7 -0
- package/dist/.pikku/trigger/index.js +7 -0
- package/dist/.pikku/trigger/pikku-trigger-types.gen.d.ts +6 -6
- package/dist/.pikku/trigger/pikku-trigger-types.gen.js +1 -1
- package/dist/.pikku/variables/index.d.ts +8 -0
- package/dist/.pikku/variables/index.js +8 -0
- package/dist/.pikku/variables/pikku-variable-types.gen.d.ts +1 -2
- package/dist/.pikku/variables/pikku-variable-types.gen.js +1 -1
- package/dist/.pikku/variables/pikku-variables.gen.d.ts +7 -10
- package/dist/.pikku/variables/pikku-variables.gen.js +8 -10
- package/dist/.pikku/workflow/index.d.ts +7 -0
- package/dist/.pikku/workflow/index.js +7 -0
- package/dist/.pikku/workflow/meta/allWorkflow.gen.json +105 -82
- package/dist/.pikku/workflow/pikku-personas.gen.d.ts +1 -2
- package/dist/.pikku/workflow/pikku-personas.gen.js +1 -1
- package/dist/.pikku/workflow/pikku-workflow-types.gen.d.ts +21 -263
- package/dist/.pikku/workflow/pikku-workflow-types.gen.js +2 -65
- package/dist/.pikku/workflow/pikku-workflow-wirings-meta.gen.js +2 -2
- package/dist/.pikku/workflow/pikku-workflow-wirings.gen.d.ts +0 -1
- package/dist/.pikku/workflow/pikku-workflow-wirings.gen.js +1 -1
- package/dist/bin/pikku-bin.mjs +2 -2
- package/dist/src/cli.wiring.js +69 -7
- package/dist/src/deploy/analyzer/analyzer.js +39 -17
- package/dist/src/deploy/build-pipeline.d.ts +13 -0
- package/dist/src/deploy/build-pipeline.js +22 -0
- package/dist/src/deploy/bundler/bundler.js +2 -2
- package/dist/src/deploy/server-entry.js +1 -1
- package/dist/src/fabric/fabric-commands.d.ts +104 -104
- package/dist/src/fabric/functions/add.function.d.ts +4 -4
- package/dist/src/fabric/functions/add.function.js +1 -1
- package/dist/src/fabric/functions/addon-verify.function.d.ts +4 -4
- package/dist/src/fabric/functions/addon-verify.function.js +1 -1
- package/dist/src/fabric/functions/db-schema.function.d.ts +4 -4
- package/dist/src/fabric/functions/db-schema.function.js +1 -1
- package/dist/src/fabric/functions/deploy-list.function.d.ts +4 -4
- package/dist/src/fabric/functions/deploy-list.function.js +1 -1
- package/dist/src/fabric/functions/deploy-units.function.d.ts +4 -4
- package/dist/src/fabric/functions/deploy-units.function.js +1 -1
- package/dist/src/fabric/functions/deploy.function.d.ts +8 -8
- package/dist/src/fabric/functions/deploy.function.js +1 -1
- package/dist/src/fabric/functions/domains-add.function.d.ts +4 -4
- package/dist/src/fabric/functions/domains-add.function.js +1 -1
- package/dist/src/fabric/functions/domains-list.function.d.ts +4 -4
- package/dist/src/fabric/functions/domains-list.function.js +1 -1
- package/dist/src/fabric/functions/domains-remove.function.d.ts +4 -4
- package/dist/src/fabric/functions/domains-remove.function.js +1 -1
- package/dist/src/fabric/functions/errors.function.d.ts +4 -4
- package/dist/src/fabric/functions/errors.function.js +1 -1
- package/dist/src/fabric/functions/init.function.d.ts +4 -4
- package/dist/src/fabric/functions/init.function.js +1 -1
- package/dist/src/fabric/functions/link.function.d.ts +4 -4
- package/dist/src/fabric/functions/link.function.js +1 -1
- package/dist/src/fabric/functions/llm-key.function.d.ts +4 -4
- package/dist/src/fabric/functions/llm-key.function.js +1 -1
- package/dist/src/fabric/functions/login.function.d.ts +4 -4
- package/dist/src/fabric/functions/login.function.js +1 -1
- package/dist/src/fabric/functions/logs.function.d.ts +4 -4
- package/dist/src/fabric/functions/logs.function.js +1 -1
- package/dist/src/fabric/functions/metrics.function.d.ts +4 -4
- package/dist/src/fabric/functions/metrics.function.js +1 -1
- package/dist/src/fabric/functions/publish.function.d.ts +4 -4
- package/dist/src/fabric/functions/publish.function.js +1 -1
- package/dist/src/fabric/functions/rollback.function.d.ts +4 -4
- package/dist/src/fabric/functions/rollback.function.js +1 -1
- package/dist/src/fabric/functions/secrets-list.function.d.ts +4 -4
- package/dist/src/fabric/functions/secrets-list.function.js +1 -1
- package/dist/src/fabric/functions/secrets-rotate.function.d.ts +4 -4
- package/dist/src/fabric/functions/secrets-rotate.function.js +1 -1
- package/dist/src/fabric/functions/secrets-set.function.d.ts +4 -4
- package/dist/src/fabric/functions/secrets-set.function.js +1 -1
- package/dist/src/fabric/functions/smoke.function.d.ts +4 -4
- package/dist/src/fabric/functions/smoke.function.js +13 -13
- package/dist/src/fabric/functions/status.function.d.ts +4 -4
- package/dist/src/fabric/functions/status.function.js +1 -1
- package/dist/src/fabric/functions/trace.function.d.ts +4 -4
- package/dist/src/fabric/functions/trace.function.js +1 -1
- package/dist/src/fabric/functions/validate.function.d.ts +4 -4
- package/dist/src/fabric/functions/validate.function.js +90 -27
- package/dist/src/fabric/lib/git.d.ts +23 -0
- package/dist/src/fabric/lib/git.js +39 -0
- package/dist/src/functions/commands/all.d.ts +1 -1
- package/dist/src/functions/commands/all.js +1 -1
- package/dist/src/functions/commands/audit.d.ts +11 -1
- package/dist/src/functions/commands/audit.js +59 -23
- package/dist/src/functions/commands/binary.d.ts +4 -4
- package/dist/src/functions/commands/binary.js +1 -1
- package/dist/src/functions/commands/bootstrap.d.ts +1 -1
- package/dist/src/functions/commands/bootstrap.js +5 -4
- package/dist/src/functions/commands/bun-coverage-loader.js +4 -1
- package/dist/src/functions/commands/db-audit.d.ts +1 -1
- package/dist/src/functions/commands/db-audit.js +1 -1
- package/dist/src/functions/commands/db-baseline.d.ts +1 -1
- package/dist/src/functions/commands/db-baseline.js +1 -1
- package/dist/src/functions/commands/db-check.d.ts +1 -1
- package/dist/src/functions/commands/db-check.js +1 -1
- package/dist/src/functions/commands/db-codegen.d.ts +1 -1
- package/dist/src/functions/commands/db-codegen.js +1 -1
- package/dist/src/functions/commands/db-export.d.ts +1 -1
- package/dist/src/functions/commands/db-export.js +1 -1
- package/dist/src/functions/commands/db-generate.d.ts +1 -1
- package/dist/src/functions/commands/db-generate.js +1 -1
- package/dist/src/functions/commands/db-migrate.d.ts +1 -1
- package/dist/src/functions/commands/db-migrate.js +1 -1
- package/dist/src/functions/commands/db-reset.d.ts +4 -4
- package/dist/src/functions/commands/db-reset.js +1 -1
- package/dist/src/functions/commands/deploy-apply.d.ts +4 -4
- package/dist/src/functions/commands/deploy-apply.js +14 -2
- package/dist/src/functions/commands/deploy-info.d.ts +1 -1
- package/dist/src/functions/commands/deploy-info.js +1 -1
- package/dist/src/functions/commands/deploy-plan.d.ts +4 -4
- package/dist/src/functions/commands/deploy-plan.js +6 -2
- package/dist/src/functions/commands/{dev-ai-runner.d.ts → dev-agent-runner.d.ts} +5 -4
- package/dist/src/functions/commands/{dev-ai-runner.js → dev-agent-runner.js} +4 -4
- package/dist/src/functions/commands/dev.d.ts +4 -4
- package/dist/src/functions/commands/dev.js +32 -25
- package/dist/src/functions/commands/emails-init.d.ts +1 -1
- package/dist/src/functions/commands/emails-init.js +19 -6
- package/dist/src/functions/commands/enable.d.ts +8 -8
- package/dist/src/functions/commands/enable.js +4 -2
- package/dist/src/functions/commands/environment.d.ts +27 -0
- package/dist/src/functions/commands/environment.js +36 -2
- package/dist/src/functions/commands/import-n8n.d.ts +4 -4
- package/dist/src/functions/commands/import-n8n.js +1 -1
- package/dist/src/functions/commands/info.d.ts +4 -4
- package/dist/src/functions/commands/info.js +1 -1
- package/dist/src/functions/commands/knowledge-index.d.ts +4 -4
- package/dist/src/functions/commands/knowledge-index.js +1 -1
- package/dist/src/functions/commands/knowledge-validate.d.ts +4 -4
- package/dist/src/functions/commands/knowledge-validate.js +1 -1
- package/dist/src/functions/commands/login.d.ts +9 -9
- package/dist/src/functions/commands/login.js +1 -1
- package/dist/src/functions/commands/meta.d.ts +37 -37
- package/dist/src/functions/commands/meta.js +1 -1
- package/dist/src/functions/commands/new-addon.d.ts +5 -4
- package/dist/src/functions/commands/new-addon.js +27 -25
- package/dist/src/functions/commands/new-function.d.ts +4 -4
- package/dist/src/functions/commands/new-function.js +4 -4
- package/dist/src/functions/commands/new-middleware.d.ts +4 -4
- package/dist/src/functions/commands/new-middleware.js +3 -3
- package/dist/src/functions/commands/new-permission.d.ts +4 -4
- package/dist/src/functions/commands/new-permission.js +3 -3
- package/dist/src/functions/commands/new-wiring.d.ts +4 -4
- package/dist/src/functions/commands/new-wiring.js +8 -8
- package/dist/src/functions/commands/persona-sync.d.ts +4 -4
- package/dist/src/functions/commands/persona-sync.js +1 -1
- package/dist/src/functions/commands/persona.d.ts +5 -5
- package/dist/src/functions/commands/persona.js +6 -6
- package/dist/src/functions/commands/pikku-command-bootstrap.d.ts +1 -1
- package/dist/src/functions/commands/pikku-command-bootstrap.js +7 -2
- package/dist/src/functions/commands/pikku-command-summary.d.ts +1 -1
- package/dist/src/functions/commands/pikku-command-summary.js +2 -2
- package/dist/src/functions/commands/roles-audit.d.ts +1 -1
- package/dist/src/functions/commands/roles-audit.js +1 -1
- package/dist/src/functions/commands/roles-prune.d.ts +4 -4
- package/dist/src/functions/commands/roles-prune.js +1 -1
- package/dist/src/functions/commands/scenario-browser.d.ts +18 -12
- package/dist/src/functions/commands/scenario-browser.js +20 -6
- package/dist/src/functions/commands/scenario-formatter.d.ts +6 -52
- package/dist/src/functions/commands/scenario-ladder.d.ts +4 -4
- package/dist/src/functions/commands/scenario.d.ts +8 -11
- package/dist/src/functions/commands/scenario.js +107 -55
- package/dist/src/functions/commands/scopes-audit.d.ts +1 -1
- package/dist/src/functions/commands/scopes-audit.js +1 -1
- package/dist/src/functions/commands/scopes-prune.d.ts +4 -4
- package/dist/src/functions/commands/scopes-prune.js +1 -1
- package/dist/src/functions/commands/semver-render.d.ts +2 -0
- package/dist/src/functions/commands/semver-render.js +60 -0
- package/dist/src/functions/commands/semver.d.ts +25 -0
- package/dist/src/functions/commands/semver.js +50 -0
- package/dist/src/functions/commands/serve.d.ts +4 -4
- package/dist/src/functions/commands/serve.js +25 -22
- package/dist/src/functions/commands/skills.d.ts +8 -8
- package/dist/src/functions/commands/skills.js +1 -1
- package/dist/src/functions/commands/update-render.d.ts +2 -0
- package/dist/src/functions/commands/update-render.js +102 -0
- package/dist/src/functions/commands/update.d.ts +99 -0
- package/dist/src/functions/commands/update.js +392 -0
- package/dist/src/functions/commands/validate.d.ts +4 -4
- package/dist/src/functions/commands/validate.js +1 -1
- package/dist/src/functions/commands/versions-check.d.ts +1 -1
- package/dist/src/functions/commands/versions-check.js +1 -1
- package/dist/src/functions/commands/versions-init.d.ts +4 -4
- package/dist/src/functions/commands/versions-init.js +1 -1
- package/dist/src/functions/commands/versions-update.d.ts +1 -1
- package/dist/src/functions/commands/versions-update.js +1 -1
- package/dist/src/functions/commands/watch.d.ts +4 -4
- package/dist/src/functions/commands/watch.js +1 -1
- package/dist/src/functions/db/annotation-parser.d.ts +11 -3
- package/dist/src/functions/db/better-auth-schema.js +1 -1
- package/dist/src/functions/db/db-codegen.js +4 -2
- package/dist/src/functions/db/local-db.js +3 -3
- package/dist/src/functions/runtimes/fetch/index.d.ts +1 -1
- package/dist/src/functions/runtimes/fetch/index.js +1 -1
- package/dist/src/functions/runtimes/nextjs/pikku-command-nextjs.d.ts +1 -1
- package/dist/src/functions/runtimes/nextjs/pikku-command-nextjs.js +1 -1
- package/dist/src/functions/runtimes/tanstack-start/pikku-command-tanstack-start.d.ts +1 -1
- package/dist/src/functions/runtimes/tanstack-start/pikku-command-tanstack-start.js +1 -1
- package/dist/src/functions/runtimes/websocket/pikku-command-websocket-typed.d.ts +1 -1
- package/dist/src/functions/runtimes/websocket/pikku-command-websocket-typed.js +1 -1
- package/dist/src/functions/surface/build-surface-doc.d.ts +22 -0
- package/dist/src/functions/surface/build-surface-doc.js +151 -0
- package/dist/src/functions/surface/collect-surface-usage.d.ts +16 -0
- package/dist/src/functions/surface/collect-surface-usage.js +35 -0
- package/dist/src/functions/surface/collect-surface.d.ts +19 -1
- package/dist/src/functions/surface/collect-surface.js +104 -16
- package/dist/src/functions/surface/generate-surface-doc.d.ts +1 -0
- package/dist/src/functions/surface/generate-surface-doc.js +46 -0
- package/dist/src/functions/surface/shipped-surface-doc.d.ts +16 -0
- package/dist/src/functions/surface/shipped-surface-doc.js +44 -0
- package/dist/src/functions/surface/surface-doc.types.d.ts +69 -0
- package/dist/src/functions/surface/surface-doc.types.js +1 -0
- package/dist/src/functions/surface/surface-editorial.d.ts +25 -0
- package/dist/src/functions/surface/surface-editorial.js +101 -0
- package/dist/src/functions/surface/write-surface-usage.d.ts +12 -0
- package/dist/src/functions/surface/write-surface-usage.js +18 -0
- package/dist/src/functions/validate/pikku-barrel-checks.d.ts +12 -0
- package/dist/src/functions/validate/pikku-barrel-checks.js +97 -0
- package/dist/src/functions/validate/scenario-file-checks.js +1 -1
- package/dist/src/functions/validate/shared-checks.d.ts +10 -0
- package/dist/src/functions/validate/shared-checks.js +16 -2
- package/dist/src/functions/validate/validate-registry.js +20 -0
- package/dist/src/functions/validate/workspace-exports-checks.d.ts +14 -0
- package/dist/src/functions/validate/workspace-exports-checks.js +211 -0
- package/dist/src/functions/wirings/agent/pikku-command-agent-types.d.ts +1 -0
- package/dist/src/functions/wirings/{ai-agent/pikku-command-ai-agent-types.js → agent/pikku-command-agent-types.js} +5 -4
- package/dist/src/functions/wirings/agent/pikku-command-agent.d.ts +1 -0
- package/dist/src/functions/wirings/{ai-agent/pikku-command-ai-agent.js → agent/pikku-command-agent.js} +7 -7
- package/dist/src/functions/wirings/agent/pikku-command-public-agent.d.ts +1 -0
- package/dist/src/functions/wirings/{ai-agent → agent}/pikku-command-public-agent.js +4 -4
- package/dist/src/functions/wirings/{ai-agent → agent}/serialize-agent-map.d.ts +2 -2
- package/dist/src/functions/wirings/agent/serialize-agent-types.d.ts +1 -0
- package/dist/src/functions/wirings/{ai-agent/serialize-ai-agent-types.js → agent/serialize-agent-types.js} +24 -30
- package/dist/src/functions/wirings/{ai-agent → agent}/serialize-model-aliases.js +1 -1
- package/dist/src/functions/wirings/agent/serialize-public-agent.d.ts +5 -0
- package/dist/src/functions/wirings/{ai-agent → agent}/serialize-public-agent.js +5 -3
- package/dist/src/functions/wirings/agent-scorer/pikku-command-agent-scorer.d.ts +1 -0
- package/dist/src/functions/wirings/{ai-scorer/pikku-command-ai-scorer.js → agent-scorer/pikku-command-agent-scorer.js} +7 -7
- package/dist/src/functions/wirings/{ai-scorer → agent-scorer}/serialize-scorer-names.d.ts +1 -1
- package/dist/src/functions/wirings/auth/pikku-command-auth.d.ts +4 -4
- package/dist/src/functions/wirings/auth/pikku-command-auth.js +5 -4
- package/dist/src/functions/wirings/auth/serialize-auth-gen.d.ts +1 -1
- package/dist/src/functions/wirings/auth/serialize-auth-gen.js +3 -8
- package/dist/src/functions/wirings/auth/serialize-auth-guards.d.ts +12 -0
- package/dist/src/functions/wirings/auth/serialize-auth-guards.js +168 -0
- package/dist/src/functions/wirings/auth/serialize-auth-types.d.ts +4 -4
- package/dist/src/functions/wirings/auth/serialize-auth-types.js +4 -4
- package/dist/src/functions/wirings/channels/pikku-channels.d.ts +1 -1
- package/dist/src/functions/wirings/channels/pikku-channels.js +2 -2
- package/dist/src/functions/wirings/channels/pikku-command-channel-types.d.ts +1 -1
- package/dist/src/functions/wirings/channels/pikku-command-channel-types.js +6 -3
- package/dist/src/functions/wirings/channels/pikku-command-channels-map.d.ts +1 -1
- package/dist/src/functions/wirings/channels/pikku-command-channels-map.js +1 -1
- package/dist/src/functions/wirings/channels/pikku-command-channels.d.ts +1 -1
- package/dist/src/functions/wirings/channels/pikku-command-channels.js +2 -2
- package/dist/src/functions/wirings/channels/serialize-channel-types.d.ts +3 -1
- package/dist/src/functions/wirings/channels/serialize-channel-types.js +18 -24
- package/dist/src/functions/wirings/channels/serialize-typed-channel-map.d.ts +1 -2
- package/dist/src/functions/wirings/cli/pikku-command-cli-entry.d.ts +1 -1
- package/dist/src/functions/wirings/cli/pikku-command-cli-entry.js +2 -2
- package/dist/src/functions/wirings/cli/pikku-command-cli-types.d.ts +1 -1
- package/dist/src/functions/wirings/cli/pikku-command-cli-types.js +3 -3
- package/dist/src/functions/wirings/cli/pikku-command-cli.d.ts +1 -1
- package/dist/src/functions/wirings/cli/pikku-command-cli.js +2 -2
- package/dist/src/functions/wirings/cli/serialize-channel-cli.d.ts +1 -1
- package/dist/src/functions/wirings/cli/serialize-channel-cli.js +9 -3
- package/dist/src/functions/wirings/cli/serialize-cli-types.d.ts +1 -1
- package/dist/src/functions/wirings/cli/serialize-cli-types.js +9 -3
- package/dist/src/functions/wirings/console/pikku-command-console-functions.d.ts +1 -1
- package/dist/src/functions/wirings/console/pikku-command-console-functions.js +6 -5
- package/dist/src/functions/wirings/console/pikku-command-nodes-meta.d.ts +1 -1
- package/dist/src/functions/wirings/console/pikku-command-nodes-meta.js +1 -1
- package/dist/src/functions/wirings/console/serialize-console-functions.d.ts +1 -1
- package/dist/src/functions/wirings/console/serialize-console-functions.js +20 -4
- package/dist/src/functions/wirings/credentials/pikku-command-credentials.d.ts +1 -1
- package/dist/src/functions/wirings/credentials/pikku-command-credentials.js +2 -2
- package/dist/src/functions/wirings/credentials/serialize-credentials-types.js +3 -4
- package/dist/src/functions/wirings/emails/pikku-command-emails.d.ts +1 -1
- package/dist/src/functions/wirings/emails/pikku-command-emails.js +1 -1
- package/dist/src/functions/wirings/emails/serialize-emails.js +2 -2
- package/dist/src/functions/wirings/errors/pikku-command-error-types.d.ts +1 -0
- package/dist/src/functions/wirings/errors/pikku-command-error-types.js +17 -0
- package/dist/src/functions/wirings/errors/serialize-error-types.d.ts +9 -0
- package/dist/src/functions/wirings/errors/serialize-error-types.js +16 -0
- package/dist/src/functions/wirings/functions/pikku-command-addon-types.d.ts +1 -1
- package/dist/src/functions/wirings/functions/pikku-command-addon-types.js +20 -8
- package/dist/src/functions/wirings/functions/pikku-command-function-types-split.d.ts +4 -4
- package/dist/src/functions/wirings/functions/pikku-command-function-types-split.js +17 -3
- package/dist/src/functions/wirings/functions/pikku-command-functions.d.ts +1 -1
- package/dist/src/functions/wirings/functions/pikku-command-functions.js +2 -2
- package/dist/src/functions/wirings/functions/pikku-command-leaf-indexes.d.ts +14 -0
- package/dist/src/functions/wirings/functions/pikku-command-leaf-indexes.js +119 -0
- package/dist/src/functions/wirings/functions/pikku-command-services.d.ts +1 -1
- package/dist/src/functions/wirings/functions/pikku-command-services.js +18 -3
- package/dist/src/functions/wirings/functions/schemas.d.ts +1 -1
- package/dist/src/functions/wirings/functions/schemas.js +1 -1
- package/dist/src/functions/wirings/functions/serialize-addon-types.d.ts +13 -0
- package/dist/src/functions/wirings/functions/serialize-addon-types.js +20 -1
- package/dist/src/functions/wirings/functions/serialize-function-imports.d.ts +1 -1
- package/dist/src/functions/wirings/functions/serialize-function-types.d.ts +7 -2
- package/dist/src/functions/wirings/functions/serialize-function-types.js +46 -361
- package/dist/src/functions/wirings/functions/serialize-leaf-index.d.ts +17 -0
- package/dist/src/functions/wirings/functions/serialize-leaf-index.js +27 -0
- package/dist/src/functions/wirings/gateway/pikku-command-gateway-types.d.ts +7 -0
- package/dist/src/functions/wirings/gateway/pikku-command-gateway-types.js +24 -0
- package/dist/src/functions/wirings/gateway/pikku-command-gateway.d.ts +1 -1
- package/dist/src/functions/wirings/gateway/pikku-command-gateway.js +1 -1
- package/dist/src/functions/wirings/gateway/serialize-gateway-types.d.ts +6 -0
- package/dist/src/functions/wirings/gateway/serialize-gateway-types.js +55 -0
- package/dist/src/functions/wirings/graph/pikku-command-graph-wirings.d.ts +1 -1
- package/dist/src/functions/wirings/graph/pikku-command-graph-wirings.js +3 -4
- package/dist/src/functions/wirings/graph/serialize-graph-wirings.d.ts +1 -1
- package/dist/src/functions/wirings/graph/serialize-graph-wirings.js +2 -2
- package/dist/src/functions/wirings/http/pikku-command-http-map.d.ts +1 -1
- package/dist/src/functions/wirings/http/pikku-command-http-map.js +3 -3
- package/dist/src/functions/wirings/http/pikku-command-http-routes.d.ts +1 -1
- package/dist/src/functions/wirings/http/pikku-command-http-routes.js +2 -2
- package/dist/src/functions/wirings/http/pikku-command-http-types.d.ts +1 -1
- package/dist/src/functions/wirings/http/pikku-command-http-types.js +7 -3
- package/dist/src/functions/wirings/http/pikku-command-openapi.d.ts +1 -1
- package/dist/src/functions/wirings/http/pikku-command-openapi.js +1 -1
- package/dist/src/functions/wirings/http/pikku-http-routes.d.ts +1 -1
- package/dist/src/functions/wirings/http/pikku-http-routes.js +2 -2
- package/dist/src/functions/wirings/http/serialize-http-types.d.ts +3 -1
- package/dist/src/functions/wirings/http/serialize-http-types.js +20 -35
- package/dist/src/functions/wirings/http/serialize-typed-http-map.d.ts +5 -1
- package/dist/src/functions/wirings/http/serialize-typed-http-map.js +5 -4
- package/dist/src/functions/wirings/mcp/pikku-command-mcp-json.d.ts +1 -1
- package/dist/src/functions/wirings/mcp/pikku-command-mcp-json.js +1 -1
- package/dist/src/functions/wirings/mcp/pikku-command-mcp-types.d.ts +1 -1
- package/dist/src/functions/wirings/mcp/pikku-command-mcp-types.js +5 -2
- package/dist/src/functions/wirings/mcp/pikku-command-mcp.d.ts +1 -1
- package/dist/src/functions/wirings/mcp/pikku-command-mcp.js +7 -3
- package/dist/src/functions/wirings/mcp/serialize-mcp-types.d.ts +3 -1
- package/dist/src/functions/wirings/mcp/serialize-mcp-types.js +15 -15
- package/dist/src/functions/wirings/middleware/pikku-command-middleware.d.ts +1 -1
- package/dist/src/functions/wirings/middleware/pikku-command-middleware.js +1 -1
- package/dist/src/functions/wirings/middleware/serialize-middleware-types.d.ts +9 -0
- package/dist/src/functions/wirings/middleware/serialize-middleware-types.js +176 -0
- package/dist/src/functions/wirings/package/pikku-command-package-types.d.ts +3 -3
- package/dist/src/functions/wirings/package/pikku-command-package-types.js +1 -1
- package/dist/src/functions/wirings/package/pikku-command-package.d.ts +1 -1
- package/dist/src/functions/wirings/package/pikku-command-package.js +1 -1
- package/dist/src/functions/wirings/package/serialize-package-types.js +0 -4
- package/dist/src/functions/wirings/package/serialize-package.js +1 -1
- package/dist/src/functions/wirings/permissions/pikku-command-permissions.d.ts +1 -1
- package/dist/src/functions/wirings/permissions/pikku-command-permissions.js +1 -1
- package/dist/src/functions/wirings/personas/pikku-command-personas.d.ts +4 -4
- package/dist/src/functions/wirings/personas/pikku-command-personas.js +1 -1
- package/dist/src/functions/wirings/personas/serialize-personas-types.d.ts +1 -1
- package/dist/src/functions/wirings/personas/serialize-personas-types.js +9 -28
- package/dist/src/functions/wirings/queue/pikku-command-queue-map.d.ts +1 -1
- package/dist/src/functions/wirings/queue/pikku-command-queue-map.js +1 -1
- package/dist/src/functions/wirings/queue/pikku-command-queue-service.d.ts +1 -1
- package/dist/src/functions/wirings/queue/pikku-command-queue-service.js +1 -1
- package/dist/src/functions/wirings/queue/pikku-command-queue-types.d.ts +1 -1
- package/dist/src/functions/wirings/queue/pikku-command-queue-types.js +4 -2
- package/dist/src/functions/wirings/queue/pikku-command-queue.d.ts +1 -1
- package/dist/src/functions/wirings/queue/pikku-command-queue.js +1 -1
- package/dist/src/functions/wirings/queue/pikku-queue-map.d.ts +1 -1
- package/dist/src/functions/wirings/queue/pikku-queue-map.js +1 -1
- package/dist/src/functions/wirings/queue/pikku-queue.d.ts +1 -1
- package/dist/src/functions/wirings/queue/pikku-queue.js +1 -1
- package/dist/src/functions/wirings/queue/serialize-queue-map.js +1 -1
- package/dist/src/functions/wirings/queue/serialize-queue-types.d.ts +3 -1
- package/dist/src/functions/wirings/queue/serialize-queue-types.js +8 -5
- package/dist/src/functions/wirings/queue/serialize-queue-wrapper.js +1 -1
- package/dist/src/functions/wirings/realtime/pikku-command-events-scaffold.d.ts +1 -1
- package/dist/src/functions/wirings/realtime/pikku-command-events-scaffold.js +3 -4
- package/dist/src/functions/wirings/realtime/pikku-command-realtime.d.ts +1 -1
- package/dist/src/functions/wirings/realtime/pikku-command-realtime.js +1 -1
- package/dist/src/functions/wirings/realtime/serialize-events-scaffold.d.ts +1 -1
- package/dist/src/functions/wirings/realtime/serialize-events-scaffold.js +4 -8
- package/dist/src/functions/wirings/roles/pikku-command-roles.d.ts +4 -4
- package/dist/src/functions/wirings/roles/pikku-command-roles.js +2 -2
- package/dist/src/functions/wirings/rpc/pikku-command-public-rpc.d.ts +1 -1
- package/dist/src/functions/wirings/rpc/pikku-command-public-rpc.js +6 -6
- package/dist/src/functions/wirings/rpc/pikku-command-react-query.d.ts +1 -1
- package/dist/src/functions/wirings/rpc/pikku-command-react-query.js +1 -1
- package/dist/src/functions/wirings/rpc/pikku-command-remote-rpc.d.ts +1 -1
- package/dist/src/functions/wirings/rpc/pikku-command-remote-rpc.js +6 -6
- package/dist/src/functions/wirings/rpc/pikku-command-rpc-client.d.ts +1 -1
- package/dist/src/functions/wirings/rpc/pikku-command-rpc-client.js +1 -1
- package/dist/src/functions/wirings/rpc/pikku-command-rpc-map.d.ts +3 -3
- package/dist/src/functions/wirings/rpc/pikku-command-rpc-map.js +1 -1
- package/dist/src/functions/wirings/rpc/pikku-command-rpc.d.ts +1 -1
- package/dist/src/functions/wirings/rpc/pikku-command-rpc.js +2 -2
- package/dist/src/functions/wirings/rpc/serialize-public-rpc.d.ts +1 -1
- package/dist/src/functions/wirings/rpc/serialize-public-rpc.js +3 -2
- package/dist/src/functions/wirings/rpc/serialize-remote-rpc.d.ts +1 -1
- package/dist/src/functions/wirings/rpc/serialize-remote-rpc.js +4 -2
- package/dist/src/functions/wirings/rpc/serialize-typed-rpc-map.js +5 -5
- package/dist/src/functions/wirings/scenarios/register-scenario-instrumentation.js +3 -3
- package/dist/src/functions/wirings/scenarios/scenario-partition.d.ts +1 -1
- package/dist/src/functions/wirings/scenarios/scenario-schema-partition.d.ts +1 -1
- package/dist/src/functions/wirings/scenarios/serialize-scenario-meta.js +4 -4
- package/dist/src/functions/wirings/scheduler/pikku-command-scheduler-types.d.ts +1 -1
- package/dist/src/functions/wirings/scheduler/pikku-command-scheduler-types.js +5 -2
- package/dist/src/functions/wirings/scheduler/pikku-command-scheduler.d.ts +1 -1
- package/dist/src/functions/wirings/scheduler/pikku-command-scheduler.js +1 -1
- package/dist/src/functions/wirings/scheduler/serialize-scheduler-types.d.ts +3 -1
- package/dist/src/functions/wirings/scheduler/serialize-scheduler-types.js +10 -5
- package/dist/src/functions/wirings/scopes/pikku-command-scopes.d.ts +4 -4
- package/dist/src/functions/wirings/scopes/pikku-command-scopes.js +4 -3
- package/dist/src/functions/wirings/secrets/pikku-command-secrets.d.ts +1 -1
- package/dist/src/functions/wirings/secrets/pikku-command-secrets.js +1 -1
- package/dist/src/functions/wirings/secrets/serialize-secrets-types.js +13 -19
- package/dist/src/functions/wirings/setup/serialize-setup-types.d.ts +7 -0
- package/dist/src/functions/wirings/setup/serialize-setup-types.js +111 -0
- package/dist/src/functions/wirings/triggers/pikku-command-trigger-types.d.ts +4 -4
- package/dist/src/functions/wirings/triggers/pikku-command-trigger-types.js +2 -2
- package/dist/src/functions/wirings/triggers/pikku-command-trigger.d.ts +1 -1
- package/dist/src/functions/wirings/triggers/pikku-command-trigger.js +1 -1
- package/dist/src/functions/wirings/triggers/serialize-trigger-meta.js +2 -2
- package/dist/src/functions/wirings/triggers/serialize-trigger-types.d.ts +3 -1
- package/dist/src/functions/wirings/triggers/serialize-trigger-types.js +18 -11
- package/dist/src/functions/wirings/user-admin/pikku-command-user-admin-functions.d.ts +1 -1
- package/dist/src/functions/wirings/user-admin/pikku-command-user-admin-functions.js +18 -17
- package/dist/src/functions/wirings/user-admin/serialize-user-admin-functions.d.ts +10 -9
- package/dist/src/functions/wirings/user-admin/serialize-user-admin-functions.js +67 -49
- package/dist/src/functions/wirings/variables/pikku-command-variables.d.ts +1 -1
- package/dist/src/functions/wirings/variables/pikku-command-variables.js +1 -1
- package/dist/src/functions/wirings/variables/serialize-variables-types.js +12 -16
- package/dist/src/functions/wirings/virtual-user/pikku-command-virtual-user-functions.d.ts +1 -1
- package/dist/src/functions/wirings/virtual-user/pikku-command-virtual-user-functions.js +4 -3
- package/dist/src/functions/wirings/virtual-user/serialize-virtual-user-functions.d.ts +1 -1
- package/dist/src/functions/wirings/virtual-user/serialize-virtual-user-functions.js +9 -11
- package/dist/src/functions/wirings/webhook/pikku-command-webhook.d.ts +1 -1
- package/dist/src/functions/wirings/webhook/pikku-command-webhook.js +6 -6
- package/dist/src/functions/wirings/webhook/serialize-webhook.d.ts +1 -1
- package/dist/src/functions/wirings/webhook/serialize-webhook.js +3 -2
- package/dist/src/functions/wirings/workflow/pikku-command-workflow-routes.d.ts +1 -1
- package/dist/src/functions/wirings/workflow/pikku-command-workflow-routes.js +4 -4
- package/dist/src/functions/wirings/workflow/pikku-command-workflow.d.ts +1 -1
- package/dist/src/functions/wirings/workflow/pikku-command-workflow.js +14 -5
- package/dist/src/functions/wirings/workflow/serialize-personas.js +2 -1
- package/dist/src/functions/wirings/workflow/serialize-scenario-step-map.d.ts +1 -2
- package/dist/src/functions/wirings/workflow/serialize-scenario-types.d.ts +2 -0
- package/dist/src/functions/wirings/workflow/serialize-scenario-types.js +511 -0
- package/dist/src/functions/wirings/workflow/serialize-workflow-map.d.ts +1 -2
- package/dist/src/functions/wirings/workflow/serialize-workflow-map.js +1 -1
- package/dist/src/functions/wirings/workflow/serialize-workflow-meta.js +4 -4
- package/dist/src/functions/wirings/workflow/serialize-workflow-registration.js +0 -4
- package/dist/src/functions/wirings/workflow/serialize-workflow-routes.d.ts +1 -1
- package/dist/src/functions/wirings/workflow/serialize-workflow-routes.js +3 -2
- package/dist/src/functions/wirings/workflow/serialize-workflow-types.d.ts +1 -1
- package/dist/src/functions/wirings/workflow/serialize-workflow-types.js +28 -441
- package/dist/src/functions/workflows/all.workflow.d.ts +1 -1
- package/dist/src/functions/workflows/all.workflow.js +83 -27
- package/dist/src/middleware/log-command-info-and-time.d.ts +1 -1
- package/dist/src/server/bun-server-runner.d.ts +1 -1
- package/dist/src/server/content-signing-jwt.js +1 -1
- package/dist/src/server/dev-server-runner.interface.d.ts +1 -1
- package/dist/src/server/node-server-runner.d.ts +1 -1
- package/dist/src/server/node-server-runner.js +5 -2
- package/dist/src/services/cli-logger.service.d.ts +1 -1
- package/dist/src/services/cli-logger.service.js +1 -1
- package/dist/src/services.d.ts +9 -6
- package/dist/src/services.js +22 -6
- package/dist/src/utils/file-writer.d.ts +2 -0
- package/dist/src/utils/file-writer.js +37 -1
- package/dist/src/utils/is-deploy-codegen.d.ts +21 -0
- package/dist/src/utils/is-deploy-codegen.js +23 -0
- package/dist/src/utils/leaf-import-path.d.ts +16 -0
- package/dist/src/utils/leaf-import-path.js +15 -0
- package/dist/src/utils/parse-cli-filters.js +15 -35
- package/dist/src/utils/pikku-cli-config.d.ts +11 -0
- package/dist/src/utils/pikku-cli-config.js +82 -12
- package/dist/src/utils/remove-legacy-scaffold-file.d.ts +14 -0
- package/dist/src/utils/remove-legacy-scaffold-file.js +36 -1
- package/dist/src/utils/resolve-scaffold-feature.js +5 -1
- package/dist/src/utils/schema-diff.d.ts +22 -0
- package/dist/src/utils/schema-diff.js +190 -0
- package/dist/src/utils/serialize-meta-ts.js +1 -1
- package/dist/src/utils/serialize-schemas.d.ts +1 -1
- package/dist/src/utils/surface-diff.d.ts +35 -0
- package/dist/src/utils/surface-diff.js +183 -0
- package/dist/src/utils/surface.d.ts +51 -0
- package/dist/src/utils/surface.js +156 -0
- package/dist/src/utils/tsc-check.d.ts +1 -1
- package/dist/src/utils/tsc-check.js +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +53 -44
- package/surface.json +4464 -0
- package/console-app/assets/abnfDiagram-VRR7QNED-DTI8lQi3.js +0 -1
- package/console-app/assets/arc-B_XK0Xbk.js +0 -1
- package/console-app/assets/architecture-TIHT7OUA-BtQ4ypaP.js +0 -1
- package/console-app/assets/architectureDiagram-ZJ3FMSHR-CzE1T938.js +0 -36
- package/console-app/assets/c4Diagram-LMCZKHZV-DSsAqAm5.js +0 -10
- package/console-app/assets/channel-yWsB39zH.js +0 -1
- package/console-app/assets/chunk-52WLFC77-DkXgWHeH.js +0 -10
- package/console-app/assets/chunk-EX3LRPZG-0GIQyrn1.js +0 -231
- package/console-app/assets/chunk-FWX5IMBZ-DZvpxO7-.js +0 -2
- package/console-app/assets/chunk-ICXQ74PX-CzAIiCX5.js +0 -2
- package/console-app/assets/chunk-OGEWGWER-DhmfsQT_.js +0 -1
- package/console-app/assets/chunk-PUDLZKDR-BMAILUQ6.js +0 -156
- package/console-app/assets/chunk-RYQCIY6F-9OVlGtkS.js +0 -1
- package/console-app/assets/chunk-VAUOI2AC-DbUlDq35.js +0 -1
- package/console-app/assets/chunk-WYO6CB5R-cQuwndtk.js +0 -127
- package/console-app/assets/chunk-XXDRQBXY-D0yYTMY0.js +0 -1
- package/console-app/assets/chunk-ZIRB5QZD-H-kepumB.js +0 -32
- package/console-app/assets/classDiagram-OUVF2IWQ-jBNBOKfR.js +0 -1
- package/console-app/assets/classDiagram-v2-EOCWNBFH-jBNBOKfR.js +0 -1
- package/console-app/assets/cose-bilkent-JH36ORCC-D8cALtKZ.js +0 -1
- package/console-app/assets/cynefin-VYW2F7L2-BphwdLzc.js +0 -1
- package/console-app/assets/cynefinDiagram-TSTJHNR4-7Rk31pXX.js +0 -62
- package/console-app/assets/cytoscape.esm-h6BdjjI9.js +0 -321
- package/console-app/assets/dagre-CXRCoUWR.js +0 -1
- package/console-app/assets/dagre-VKFMJZFB-e8-5QJxJ.js +0 -4
- package/console-app/assets/defaultLocale-C8Fc0cco.js +0 -1
- package/console-app/assets/diagram-G47NLZAW-F_m68BCv.js +0 -24
- package/console-app/assets/diagram-NH7WQ7WH-5p6A3YHp.js +0 -24
- package/console-app/assets/diagram-WEI45ONY-1gqT-Dqp.js +0 -41
- package/console-app/assets/dist-DQ3gF-0S.js +0 -1
- package/console-app/assets/ebnfDiagram-CCIWWBDH-Dsfd8DxK.js +0 -1
- package/console-app/assets/eventmodeling-45OFAUF4-BSTAXikh.js +0 -1
- package/console-app/assets/flowDiagram-23GEKE2U-zX29jtvN.js +0 -1
- package/console-app/assets/ganttDiagram-NO4QXBWP-2of9JObw.js +0 -292
- package/console-app/assets/gitGraph-TEB2WS4Q-q2ow8moS.js +0 -1
- package/console-app/assets/graphlib-B8gBHxth.js +0 -1
- package/console-app/assets/index-CTO5cTAD.css +0 -1
- package/console-app/assets/index-FDk51Irw.js +0 -255
- package/console-app/assets/info-DKCQHKI2-DA35x9Eq.js +0 -1
- package/console-app/assets/infoDiagram-FWYZ7A6U-wBw6slQd.js +0 -2
- package/console-app/assets/init-D6jRqBbL.js +0 -1
- package/console-app/assets/linear-B-Zu24zW.js +0 -1
- package/console-app/assets/map-DsCK-0Cs.js +0 -1
- package/console-app/assets/mermaid.core-HtlOIxsD.js +0 -11
- package/console-app/assets/packet-7NZHBO7P-CvZpWSge.js +0 -1
- package/console-app/assets/path-BWPyau1x.js +0 -1
- package/console-app/assets/pegDiagram-2B236MQR-Bw6WA3kx.js +0 -1
- package/console-app/assets/pie-RZYD4A2V-cW9hD9gn.js +0 -1
- package/console-app/assets/pieDiagram-ENE6RG2P-DkD_01Ea.js +0 -39
- package/console-app/assets/radar-I7S5WNFK-tOWig5fu.js +0 -1
- package/console-app/assets/railroad-3IZDKUUU-tZ2PcrQC.js +0 -1
- package/console-app/assets/railroad-abnf-AHOZXSZD-D3lzFQzK.js +0 -1
- package/console-app/assets/railroad-ebnf-EBAXGLYW-DRp6_rsA.js +0 -1
- package/console-app/assets/railroad-peg-LSFZ7HO6-CuWNWp3P.js +0 -1
- package/console-app/assets/railroadDiagram-RFXS5EU6-Dljzejc8.js +0 -1
- package/console-app/assets/sequenceDiagram-DBY2YBRQ-CXysYi1c.js +0 -162
- package/console-app/assets/src-Bilm7g2t.js +0 -1
- package/console-app/assets/stateDiagram-2N3HPSRC-C8aGjwyh.js +0 -1
- package/console-app/assets/stateDiagram-v2-6OUMAXLB-C21qKRsf.js +0 -1
- package/console-app/assets/swimlanes-5IMT3BWC-VaTW8Eyb.js +0 -2
- package/console-app/assets/swimlanesDiagram-G3AALYLV-CCQS8jgU.js +0 -8
- package/console-app/assets/timeline-definition-FHXFAJF6-D88F4W4L.js +0 -120
- package/console-app/assets/treeView-QDETBFTQ-hN0LxmWJ.js +0 -1
- package/console-app/assets/treemap-6X3UGDF4-Cz4whnzW.js +0 -1
- package/console-app/assets/vennDiagram-L72KCM5P-CoW2kun8.js +0 -34
- package/console-app/assets/wardley-OPB4EBWU-l9vWUHbB.js +0 -1
- package/dist/src/functions/db/coercion-plugin.d.ts +0 -7
- package/dist/src/functions/db/coercion-plugin.js +0 -103
- package/dist/src/functions/wirings/ai-agent/pikku-command-ai-agent-types.d.ts +0 -1
- package/dist/src/functions/wirings/ai-agent/pikku-command-ai-agent.d.ts +0 -1
- package/dist/src/functions/wirings/ai-agent/pikku-command-public-agent.d.ts +0 -1
- package/dist/src/functions/wirings/ai-agent/serialize-ai-agent-types.d.ts +0 -1
- package/dist/src/functions/wirings/ai-agent/serialize-public-agent.d.ts +0 -5
- package/dist/src/functions/wirings/ai-scorer/pikku-command-ai-scorer.d.ts +0 -1
- package/dist/src/functions/wirings/console/pikku-command-node-types.d.ts +0 -1
- package/dist/src/functions/wirings/console/pikku-command-node-types.js +0 -21
- package/dist/src/functions/wirings/console/serialize-node-types.d.ts +0 -1
- package/dist/src/functions/wirings/console/serialize-node-types.js +0 -11
- package/dist/src/functions/wirings/functions/pikku-command-function-types.d.ts +0 -7
- package/dist/src/functions/wirings/functions/pikku-command-function-types.js +0 -43
- package/dist/src/functions/wirings/functions/serialize-pikku-types-hub.d.ts +0 -4
- package/dist/src/functions/wirings/functions/serialize-pikku-types-hub.js +0 -36
- /package/dist/.pikku/schemas/schemas/{PikkuAIAgentOutput.schema.json → PikkuAgentOutput.schema.json} +0 -0
- /package/dist/.pikku/schemas/schemas/{PikkuAIScorerOutput.schema.json → PikkuAgentScorerOutput.schema.json} +0 -0
- /package/dist/.pikku/schemas/schemas/{PikkuFunctionTypesInput.schema.json → PikkuGatewayTypesInput.schema.json} +0 -0
- /package/dist/src/functions/wirings/{ai-agent → agent}/serialize-agent-map.js +0 -0
- /package/dist/src/functions/wirings/{ai-agent → agent}/serialize-model-aliases.d.ts +0 -0
- /package/dist/src/functions/wirings/{ai-scorer → agent-scorer}/serialize-scorer-names.js +0 -0
|
@@ -1,22 +1,21 @@
|
|
|
1
1
|
import { randomUUID } from 'node:crypto';
|
|
2
2
|
import { resolve, join } from 'node:path';
|
|
3
3
|
import { mkdirSync, writeFileSync } from 'node:fs';
|
|
4
|
-
import { pikkuSessionlessFunc } from '#pikku';
|
|
4
|
+
import { pikkuSessionlessFunc } from '#pikku/function';
|
|
5
5
|
import { InMemoryWorkflowService } from '@pikku/core/services';
|
|
6
|
+
import { FileScenarioRunStore } from '@pikku/core/services';
|
|
6
7
|
import { createHttpPersonas } from '@pikku/core/persona';
|
|
7
|
-
import { PikkuScenarioService } from '@pikku/core/scenario';
|
|
8
|
-
import { pikkuState, getAllPackageStates } from '@pikku/core/
|
|
9
|
-
import { resolveFeatureScenarios } from '@pikku/core/scenario';
|
|
8
|
+
import { PikkuScenarioService, resolveFeatureScenarios, SCENARIO_SURFACES, } from '@pikku/core/scenario';
|
|
9
|
+
import { pikkuState, getAllPackageStates } from '@pikku/core/state';
|
|
10
10
|
import { loadScenarioBootstrap } from './load-user-project.js';
|
|
11
11
|
import { collectScenarioStepProse, scenarioBrowserSteps, scenarioFailureFromSteps, scenarioStepRows, scenarioStepsWithoutBinding, scenarioSurfaceCoverage, } from './scenario-ladder.js';
|
|
12
|
-
import { SCENARIO_SURFACES } from '@pikku/core/scenario';
|
|
13
12
|
import { formatScenarioReport } from './scenario-formatter.js';
|
|
14
13
|
import { resolveScenarioBrowserProvider, scenarioBrowserLifecycle, } from './scenario-browser.js';
|
|
15
14
|
import { resolvePersonas } from '../../utils/resolve-personas.js';
|
|
16
15
|
import { spawnDevServer } from '../../server/spawn-dev-server.js';
|
|
17
16
|
import { buildScenarioPlan } from './scenario-plan.js';
|
|
18
17
|
import { resolveEnvironment } from './environment.js';
|
|
19
|
-
import {
|
|
18
|
+
import { createDevAgentRunner } from './dev-agent-runner.js';
|
|
20
19
|
const isScenario = (wf) => wf?.scenario === true;
|
|
21
20
|
const listScenarios = (state) => Object.entries(state.workflows?.meta ?? {})
|
|
22
21
|
.filter(([, wf]) => isScenario(wf))
|
|
@@ -88,7 +87,7 @@ export const scenarioList = pikkuSessionlessFunc({
|
|
|
88
87
|
},
|
|
89
88
|
});
|
|
90
89
|
export const scenarioRun = pikkuSessionlessFunc({
|
|
91
|
-
func: async ({ logger, config, getInspectorState, variables }, { environment, flows, features, tags, excludeTags, coverage,
|
|
90
|
+
func: async ({ logger, config, getInspectorState, variables }, { environment, flows, features, tags, excludeTags, coverage, run: runSurface = 'default', strict = false, spawn = false, keepAlive = false, trace = false, screenshots = false, video = 'failed', apiUrl, appUrl, }) => {
|
|
92
91
|
if (!SCENARIO_SURFACES.includes(runSurface)) {
|
|
93
92
|
throw new Error(`Unknown --run surface '${runSurface}'. Expected one of: ${SCENARIO_SURFACES.join(', ')}.`);
|
|
94
93
|
}
|
|
@@ -191,49 +190,44 @@ export const scenarioRun = pikkuSessionlessFunc({
|
|
|
191
190
|
scenarioBrowserSteps(state.workflows?.meta?.[name], functionsMeta),
|
|
192
191
|
])
|
|
193
192
|
.filter(([, steps]) => steps.length > 0));
|
|
194
|
-
// `--no-browser` is the blunt form of `--run default`: a machine with no
|
|
195
|
-
// browser takes the server-side path rather than skipping the scenario.
|
|
196
|
-
const effectiveSurface = browser === false && runSurface === 'browser' ? 'default' : runSurface;
|
|
197
193
|
const unrunnableStepsByFlow = new Map([...scenarioNames]
|
|
198
194
|
.map((name) => [
|
|
199
195
|
name,
|
|
200
|
-
scenarioStepsWithoutBinding(state.workflows?.meta?.[name], functionsMeta,
|
|
196
|
+
scenarioStepsWithoutBinding(state.workflows?.meta?.[name], functionsMeta, runSurface),
|
|
201
197
|
])
|
|
202
198
|
.filter(([, steps]) => steps.length > 0));
|
|
203
|
-
//
|
|
204
|
-
//
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
// already cleared that reason for anything named directly with `--flows`.
|
|
208
|
-
const skipReasonFor = (entry) => {
|
|
209
|
-
if (entry.skip)
|
|
210
|
-
return entry.skip;
|
|
211
|
-
const unrunnable = unrunnableStepsByFlow.get(entry.scenarioName);
|
|
212
|
-
if (unrunnable?.length) {
|
|
213
|
-
return `no ${effectiveSurface} or default binding: ${unrunnable.join(', ')}`;
|
|
214
|
-
}
|
|
215
|
-
return undefined;
|
|
216
|
-
};
|
|
217
|
-
const skipped = [];
|
|
199
|
+
// A `skip` is the project quarantining a scenario on purpose and stays
|
|
200
|
+
// green; no binding for the run surface is a misconfigured run and fails.
|
|
201
|
+
const quarantined = [];
|
|
202
|
+
const unrunnable = [];
|
|
218
203
|
groups = groups
|
|
219
204
|
.map((group) => ({
|
|
220
205
|
...group,
|
|
221
206
|
entries: group.entries.filter((entry) => {
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
return
|
|
225
|
-
|
|
226
|
-
|
|
207
|
+
if (entry.skip) {
|
|
208
|
+
quarantined.push({ name: entry.scenarioName, reason: entry.skip });
|
|
209
|
+
return false;
|
|
210
|
+
}
|
|
211
|
+
const steps = unrunnableStepsByFlow.get(entry.scenarioName);
|
|
212
|
+
if (steps?.length) {
|
|
213
|
+
unrunnable.push({
|
|
214
|
+
name: entry.scenarioName,
|
|
215
|
+
reason: `no ${runSurface} or default binding: ${steps.join(', ')}`,
|
|
216
|
+
});
|
|
217
|
+
return false;
|
|
218
|
+
}
|
|
219
|
+
return true;
|
|
227
220
|
}),
|
|
228
221
|
}))
|
|
229
222
|
.filter((group) => group.entries.length > 0);
|
|
223
|
+
const skipped = [...quarantined, ...unrunnable];
|
|
230
224
|
const workflowService = new InMemoryWorkflowService();
|
|
231
225
|
const scenarioService = workflowService.setRunExtension((engine) => new PikkuScenarioService(engine));
|
|
232
226
|
scenarioService.setScenarioEnvironment({
|
|
233
227
|
apiUrl: env.apiUrl,
|
|
234
228
|
appUrl: env.appUrl,
|
|
235
229
|
});
|
|
236
|
-
scenarioService.setRunSurface(
|
|
230
|
+
scenarioService.setRunSurface(runSurface);
|
|
237
231
|
// Scenario steps run here, not on the target — everything they touch of the
|
|
238
232
|
// app goes over HTTP through an actor, which is what `guardRpc` below
|
|
239
233
|
// enforces. `actor.converse` is the exception, and the reason this is not
|
|
@@ -242,8 +236,8 @@ export const scenarioRun = pikkuSessionlessFunc({
|
|
|
242
236
|
// before it says anything. Built the same way `pikku dev` builds its own,
|
|
243
237
|
// and only when the project declares agents, so a project with no agents
|
|
244
238
|
// does not have to have AI env set to run scenarios.
|
|
245
|
-
const
|
|
246
|
-
? await
|
|
239
|
+
const agentRunner = Object.keys(state.agents?.agentsMeta ?? {}).length > 0
|
|
240
|
+
? await createDevAgentRunner({
|
|
247
241
|
logger,
|
|
248
242
|
projectRoot: config.rootDir,
|
|
249
243
|
variables,
|
|
@@ -253,7 +247,7 @@ export const scenarioRun = pikkuSessionlessFunc({
|
|
|
253
247
|
logger,
|
|
254
248
|
workflowService,
|
|
255
249
|
workflowRunService: workflowService,
|
|
256
|
-
...(
|
|
250
|
+
...(agentRunner ? { agentRunner } : {}),
|
|
257
251
|
});
|
|
258
252
|
const refuseInternal = (rpcName) => {
|
|
259
253
|
throw new Error(`Scenario tried to run '${rpcName}' as an internal step. Every workflow.do ` +
|
|
@@ -283,30 +277,32 @@ export const scenarioRun = pikkuSessionlessFunc({
|
|
|
283
277
|
// Only a browser run launches one. Under `--run default` a step with a
|
|
284
278
|
// browser binding takes its default path instead, so there is nothing to
|
|
285
279
|
// drive and nothing to pay for.
|
|
286
|
-
const needsBrowser =
|
|
280
|
+
const needsBrowser = runSurface === 'browser' &&
|
|
287
281
|
groups.some((group) => group.entries.some((entry) => browserStepsByFlow.has(entry.scenarioName)));
|
|
288
|
-
const failureDir = join(resolve(config.rootDir, config.outDir), 'scenario-failures');
|
|
289
282
|
// Artifacts are filed under the run, not the scenario, so one run's output
|
|
290
|
-
// is one folder to open, keep or delete.
|
|
291
|
-
// recording without somewhere to put it is not a thing anyone wants.
|
|
283
|
+
// is one folder to open, keep or delete.
|
|
292
284
|
const captureDir = join(resolve(config.rootDir, config.outDir), 'scenario-runs');
|
|
293
285
|
// One id for the whole invocation, distinct from a scenario's own runId:
|
|
294
286
|
// reviewing artifacts means opening what `pikku scenario run` just produced,
|
|
295
287
|
// not hunting for one scenario's folder among many.
|
|
296
288
|
const captureRunId = randomUUID();
|
|
297
|
-
const capture =
|
|
298
|
-
|
|
299
|
-
:
|
|
289
|
+
const capture = {
|
|
290
|
+
dir: captureDir,
|
|
291
|
+
runId: captureRunId,
|
|
292
|
+
screenshots,
|
|
293
|
+
video,
|
|
294
|
+
compress: true,
|
|
295
|
+
};
|
|
300
296
|
const browserLifecycle = scenarioBrowserLifecycle(needsBrowser
|
|
301
297
|
? await (async () => {
|
|
302
298
|
const provider = await resolveScenarioBrowserProvider({
|
|
303
299
|
environment,
|
|
304
300
|
apiUrl: env.apiUrl,
|
|
305
301
|
appUrl: env.appUrl,
|
|
302
|
+
appUrls: env.appUrls,
|
|
306
303
|
secret,
|
|
307
304
|
actors: scenarioActors,
|
|
308
305
|
signInPath: env.signInPath,
|
|
309
|
-
failureDir,
|
|
310
306
|
capture,
|
|
311
307
|
browserScenarios: [...browserStepsByFlow.keys()],
|
|
312
308
|
driver: config.scenarios?.browserDriver,
|
|
@@ -316,6 +312,21 @@ export const scenarioRun = pikkuSessionlessFunc({
|
|
|
316
312
|
})()
|
|
317
313
|
: undefined);
|
|
318
314
|
const results = [];
|
|
315
|
+
// Opened before the first scenario and written to as each one finishes, so
|
|
316
|
+
// a suite that dies on its fortieth still leaves the thirty-nine behind —
|
|
317
|
+
// and the console can show a run while it is still going.
|
|
318
|
+
const runStore = new FileScenarioRunStore({ dir: captureDir });
|
|
319
|
+
const startedAtIso = new Date().toISOString();
|
|
320
|
+
await runStore.start({
|
|
321
|
+
runId: captureRunId,
|
|
322
|
+
environment,
|
|
323
|
+
surface: runSurface,
|
|
324
|
+
status: 'running',
|
|
325
|
+
startedAt: startedAtIso,
|
|
326
|
+
results: [],
|
|
327
|
+
skipped,
|
|
328
|
+
hookFailures: [],
|
|
329
|
+
});
|
|
319
330
|
/**
|
|
320
331
|
* The step ladder is read back off the recorded run, so it needs no live
|
|
321
332
|
* step events — it is the same data the console renders. Joining it to the
|
|
@@ -378,7 +389,22 @@ export const scenarioRun = pikkuSessionlessFunc({
|
|
|
378
389
|
});
|
|
379
390
|
};
|
|
380
391
|
const hookFailures = [];
|
|
381
|
-
|
|
392
|
+
/**
|
|
393
|
+
* What a result carries beyond its own outcome: which registration ran,
|
|
394
|
+
* which feature grouped it, and the tags it was selected by. Snapshotted
|
|
395
|
+
* into the record because a run read back next week is describing a suite
|
|
396
|
+
* whose source has moved on.
|
|
397
|
+
*/
|
|
398
|
+
const identify = (result, scenarioName, feature) => {
|
|
399
|
+
const tags = state.workflows?.meta?.[scenarioName]?.tags;
|
|
400
|
+
return {
|
|
401
|
+
...result,
|
|
402
|
+
scenarioName,
|
|
403
|
+
...(feature ? { feature } : {}),
|
|
404
|
+
...(tags?.length ? { tags } : {}),
|
|
405
|
+
};
|
|
406
|
+
};
|
|
407
|
+
const runEntry = async (label, scenarioName, data, feature) => {
|
|
382
408
|
const startedAt = Date.now();
|
|
383
409
|
// Before the scenario, not after it: the last scenario's window is left
|
|
384
410
|
// open for headed debugging, while this one still starts clean.
|
|
@@ -452,6 +478,11 @@ export const scenarioRun = pikkuSessionlessFunc({
|
|
|
452
478
|
browser: await browserLifecycle.captureFailure(label),
|
|
453
479
|
};
|
|
454
480
|
}
|
|
481
|
+
// Told here, acted on at the next scenario's reset — that is what closes
|
|
482
|
+
// these windows and finalises the video this outcome decides the fate of.
|
|
483
|
+
browserLifecycle.endScenario(result.status);
|
|
484
|
+
Object.assign(result, identify(result, scenarioName, feature));
|
|
485
|
+
await runStore.recordScenario(captureRunId, result);
|
|
455
486
|
if (coverageActive) {
|
|
456
487
|
const report = await invokeCoverage('pikkuScenarioTakeLiveCoverage');
|
|
457
488
|
if (report) {
|
|
@@ -484,17 +515,19 @@ export const scenarioRun = pikkuSessionlessFunc({
|
|
|
484
515
|
// Setup failed, so nothing in the group ran. Reporting them as failed
|
|
485
516
|
// rather than skipped is the honest reading: they did not pass.
|
|
486
517
|
for (const entry of group.entries) {
|
|
487
|
-
|
|
518
|
+
const result = identify({
|
|
488
519
|
name: label(entry),
|
|
489
520
|
status: 'failed',
|
|
490
521
|
durationMs: 0,
|
|
491
522
|
error: `feature '${groupName}' before hook failed: ${beforeError?.message ?? beforeError}`,
|
|
492
|
-
});
|
|
523
|
+
}, entry.scenarioName, groupName);
|
|
524
|
+
results.push(result);
|
|
525
|
+
await runStore.recordScenario(captureRunId, result);
|
|
493
526
|
}
|
|
494
527
|
}
|
|
495
528
|
else {
|
|
496
529
|
for (const entry of group.entries) {
|
|
497
|
-
await runEntry(label(entry), entry.scenarioName, entry.data);
|
|
530
|
+
await runEntry(label(entry), entry.scenarioName, entry.data, groupName);
|
|
498
531
|
}
|
|
499
532
|
}
|
|
500
533
|
}
|
|
@@ -510,10 +543,23 @@ export const scenarioRun = pikkuSessionlessFunc({
|
|
|
510
543
|
}
|
|
511
544
|
}
|
|
512
545
|
await browserLifecycle.close();
|
|
513
|
-
//
|
|
514
|
-
// when its context is
|
|
515
|
-
//
|
|
516
|
-
|
|
546
|
+
// Collected after the browser has closed, because a video is only finalised
|
|
547
|
+
// when its context is — and renamed again by the encode that close() runs.
|
|
548
|
+
// This is the first moment the answer is complete.
|
|
549
|
+
const artifacts = browserLifecycle.artifacts();
|
|
550
|
+
await runStore.attachArtifacts(captureRunId, artifacts);
|
|
551
|
+
const failed = results.filter((r) => r.status === 'failed');
|
|
552
|
+
await runStore.finish(captureRunId, {
|
|
553
|
+
status: failed.length > 0 || hookFailures.length > 0 ? 'failed' : 'passed',
|
|
554
|
+
finishedAt: new Date().toISOString(),
|
|
555
|
+
skipped,
|
|
556
|
+
hookFailures,
|
|
557
|
+
});
|
|
558
|
+
// A capture nobody can find is a capture nobody looks at, and looking at
|
|
559
|
+
// them is the entire point of the flags. Announced only when the run
|
|
560
|
+
// actually filed something: every run leaves a record behind, and most of
|
|
561
|
+
// them have no images or footage to go with it.
|
|
562
|
+
if (artifacts.length > 0) {
|
|
517
563
|
logger.info(`Captures → ${join(capture.dir, capture.runId)}`);
|
|
518
564
|
}
|
|
519
565
|
if (coverage && Object.keys(scenarioCoverage).length > 0) {
|
|
@@ -542,14 +588,14 @@ export const scenarioRun = pikkuSessionlessFunc({
|
|
|
542
588
|
const surfaceCoverage = { onSurface: 0, total: 0 };
|
|
543
589
|
const unwitnessed = new Set();
|
|
544
590
|
for (const name of scenarioNames) {
|
|
545
|
-
const scenario = scenarioSurfaceCoverage(state.workflows?.meta?.[name], functionsMeta,
|
|
591
|
+
const scenario = scenarioSurfaceCoverage(state.workflows?.meta?.[name], functionsMeta, runSurface);
|
|
546
592
|
surfaceCoverage.onSurface += scenario.onSurface;
|
|
547
593
|
surfaceCoverage.total += scenario.total;
|
|
548
594
|
for (const step of scenario.unwitnessed)
|
|
549
595
|
unwitnessed.add(step);
|
|
550
596
|
}
|
|
551
|
-
if (
|
|
552
|
-
const line = `${surfaceCoverage.onSurface}/${surfaceCoverage.total} steps ran on ${
|
|
597
|
+
if (runSurface !== 'default' && surfaceCoverage.total > 0) {
|
|
598
|
+
const line = `${surfaceCoverage.onSurface}/${surfaceCoverage.total} steps ran on ${runSurface}`;
|
|
553
599
|
if (unwitnessed.size === 0) {
|
|
554
600
|
logger.info(line);
|
|
555
601
|
}
|
|
@@ -558,9 +604,15 @@ export const scenarioRun = pikkuSessionlessFunc({
|
|
|
558
604
|
write(`${line} — asserted server-side only: ${[...unwitnessed].join(', ')}`);
|
|
559
605
|
}
|
|
560
606
|
}
|
|
561
|
-
|
|
607
|
+
// Exiting 0 here makes "62 held back" and "62 passed" indistinguishable
|
|
608
|
+
// to CI, which is how a whole browser suite went unrun.
|
|
609
|
+
if (unrunnable.length > 0) {
|
|
610
|
+
logger.error(`${unrunnable.length} scenario(s) could not run on '${runSurface}' — no binding for that surface and no default to fall back to. ` +
|
|
611
|
+
`Run them on the surface they are written for (--run browser), or hold them back explicitly with --exclude-tags.`);
|
|
612
|
+
}
|
|
562
613
|
if (failed.length > 0 ||
|
|
563
614
|
hookFailures.length > 0 ||
|
|
615
|
+
unrunnable.length > 0 ||
|
|
564
616
|
(strict && unwitnessed.size > 0)) {
|
|
565
617
|
process.exitCode = 1;
|
|
566
618
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const scopesAudit: import("#pikku").PikkuFunctionConfig<{}, void, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<{}, void, "rpc" | "session", import("#pikku").WiredServices, unknown> | import("#pikku").PikkuFunction<{}, void, "rpc" | "session", import("#pikku").WiredServices>, undefined, undefined>;
|
|
1
|
+
export declare const scopesAudit: import("#pikku/function").PikkuFunctionConfig<{}, void, "rpc" | "session", import("#pikku/function").PikkuFunctionSessionless<{}, void, "rpc" | "session", import("#pikku/function").WiredServices, unknown> | import("#pikku/function").PikkuFunction<{}, void, "rpc" | "session", import("#pikku/function").WiredServices>, undefined, undefined>;
|
|
@@ -5,10 +5,10 @@
|
|
|
5
5
|
* This revokes access, so it never runs implicitly — not at boot, not as part
|
|
6
6
|
* of `pikku all`. Without `--yes` it only reports the blast radius.
|
|
7
7
|
*/
|
|
8
|
-
export declare const scopesPrune: import("#pikku").PikkuFunctionConfig<{
|
|
8
|
+
export declare const scopesPrune: import("#pikku/function").PikkuFunctionConfig<{
|
|
9
9
|
yes?: boolean;
|
|
10
|
-
}, void, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<{
|
|
10
|
+
}, void, "rpc" | "session", import("#pikku/function").PikkuFunctionSessionless<{
|
|
11
11
|
yes?: boolean;
|
|
12
|
-
}, void, "rpc" | "session", import("#pikku").WiredServices, unknown> | import("#pikku").PikkuFunction<{
|
|
12
|
+
}, void, "rpc" | "session", import("#pikku/function").WiredServices, unknown> | import("#pikku/function").PikkuFunction<{
|
|
13
13
|
yes?: boolean;
|
|
14
|
-
}, void, "rpc" | "session", import("#pikku").WiredServices>, undefined, undefined>;
|
|
14
|
+
}, void, "rpc" | "session", import("#pikku/function").WiredServices>, undefined, undefined>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { pikkuSessionlessFunc } from '#pikku';
|
|
1
|
+
import { pikkuSessionlessFunc } from '#pikku/function';
|
|
2
2
|
import { loadDeclaredScopes, openScopeService, reportStaleScopes, } from './scopes-shared.js';
|
|
3
3
|
/**
|
|
4
4
|
* Removes scopes that are no longer declared in code, cascading them out of
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { added, changed, dim, removed, table } from '../../fabric/lib/output.js';
|
|
2
|
+
const STATUS_COLOUR = {
|
|
3
|
+
added,
|
|
4
|
+
removed,
|
|
5
|
+
modified: changed,
|
|
6
|
+
};
|
|
7
|
+
const verdictColour = (verdict) => verdict === 'major'
|
|
8
|
+
? removed(verdict)
|
|
9
|
+
: verdict === 'minor'
|
|
10
|
+
? changed(verdict)
|
|
11
|
+
: dim(verdict);
|
|
12
|
+
export const renderSemver = (_services, result) => {
|
|
13
|
+
if (result.mode === 'emit') {
|
|
14
|
+
// No `--out`: the snapshot itself is the output, so it can be redirected.
|
|
15
|
+
if (!result.written) {
|
|
16
|
+
console.log(JSON.stringify(result.surface));
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
19
|
+
const counts = [
|
|
20
|
+
`${Object.keys(result.surface.functions).length} functions`,
|
|
21
|
+
`${Object.keys(result.surface.schemas).length} schemas`,
|
|
22
|
+
].join(', ');
|
|
23
|
+
console.log(`Surface snapshot written to ${result.written} ${dim(counts)}`);
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
const lines = [''];
|
|
27
|
+
if (result.changes.length === 0) {
|
|
28
|
+
lines.push(`${verdictColour('patch')} no surface change against ${result.baseline}`, dim(' only internals moved'), '');
|
|
29
|
+
lines.push(dim(` written to ${result.written}`));
|
|
30
|
+
console.log(lines.join('\n'));
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
const rows = result.changes.map((change) => [
|
|
34
|
+
change.breaking ? removed('breaking') : dim('compatible'),
|
|
35
|
+
change.kind,
|
|
36
|
+
STATUS_COLOUR[change.status](change.status),
|
|
37
|
+
change.id,
|
|
38
|
+
change.reasons[0] ?? '',
|
|
39
|
+
]);
|
|
40
|
+
lines.push(table(['', 'Kind', 'Status', 'Id', 'Reason'], rows));
|
|
41
|
+
// Only the first reason fits the table; a function whose schema moved in
|
|
42
|
+
// several ways gets the rest listed underneath so nothing is lost to layout.
|
|
43
|
+
for (const change of result.changes) {
|
|
44
|
+
if (change.reasons.length <= 1)
|
|
45
|
+
continue;
|
|
46
|
+
lines.push('', `${change.kind} ${change.id}`);
|
|
47
|
+
for (const reason of change.reasons) {
|
|
48
|
+
lines.push(dim(` ${reason}`));
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
const { breaking, added: addedCount, removed: removedCount, modified, } = result.summary;
|
|
52
|
+
const summary = [
|
|
53
|
+
`${breaking} breaking`,
|
|
54
|
+
`${addedCount} added`,
|
|
55
|
+
`${removedCount} removed`,
|
|
56
|
+
`${modified} modified`,
|
|
57
|
+
].join(' ');
|
|
58
|
+
lines.push('', '─'.repeat(40), `${verdictColour(result.verdict)} against ${result.baseline}`, dim(` ${summary}`), dim(` written to ${result.written}`));
|
|
59
|
+
console.log(lines.join('\n'));
|
|
60
|
+
};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { type Surface } from '../../utils/surface.js';
|
|
2
|
+
import { type SurfaceChanges } from '../../utils/surface-diff.js';
|
|
3
|
+
/**
|
|
4
|
+
* `pikku semver` — what does this build owe the clients of another one?
|
|
5
|
+
*
|
|
6
|
+
* The baseline is deliberately external: a deployed environment, not the
|
|
7
|
+
* previous commit. Comparing against production is what makes the answer
|
|
8
|
+
* actionable, and pointing `--against` somewhere else is how you ask the same
|
|
9
|
+
* question about staging.
|
|
10
|
+
*/
|
|
11
|
+
export type SemverInput = {
|
|
12
|
+
against?: string;
|
|
13
|
+
emit?: boolean;
|
|
14
|
+
out?: string;
|
|
15
|
+
failOn?: string;
|
|
16
|
+
};
|
|
17
|
+
export type SemverResult = {
|
|
18
|
+
mode: 'emit';
|
|
19
|
+
surface: Surface;
|
|
20
|
+
written: string | null;
|
|
21
|
+
} | ({
|
|
22
|
+
mode: 'compare';
|
|
23
|
+
written: string;
|
|
24
|
+
} & SurfaceChanges);
|
|
25
|
+
export declare const pikkuSemver: import("#pikku/function").PikkuFunctionConfig<SemverInput, SemverResult, "rpc" | "session", import("#pikku/function").PikkuFunctionSessionless<SemverInput, SemverResult, "rpc" | "session", import("#pikku/function").WiredServices, unknown> | import("#pikku/function").PikkuFunction<SemverInput, SemverResult, "rpc" | "session", import("#pikku/function").WiredServices>, undefined, undefined>;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { mkdirSync, writeFileSync } from 'fs';
|
|
2
|
+
import { dirname, join, resolve } from 'path';
|
|
3
|
+
import { pikkuSessionlessFunc } from '#pikku/function';
|
|
4
|
+
import { loadManifest } from '../../utils/contract-versions.js';
|
|
5
|
+
import { loadSurface, readSurface } from '../../utils/surface.js';
|
|
6
|
+
import { computeSurfaceDiff, } from '../../utils/surface-diff.js';
|
|
7
|
+
const FAIL_LEVELS = ['major', 'minor', 'patch'];
|
|
8
|
+
// Ordered by severity, so `--fail-on minor` also fails on major.
|
|
9
|
+
const SEVERITY = { patch: 0, minor: 1, major: 2 };
|
|
10
|
+
async function currentSurface(rootDir, outDir) {
|
|
11
|
+
const manifest = await loadManifest(join(rootDir, 'versions.pikku.json'));
|
|
12
|
+
return readSurface(outDir, manifest);
|
|
13
|
+
}
|
|
14
|
+
function writeJson(path, value) {
|
|
15
|
+
mkdirSync(dirname(path), { recursive: true });
|
|
16
|
+
writeFileSync(path, JSON.stringify(value, null, 2) + '\n', 'utf-8');
|
|
17
|
+
}
|
|
18
|
+
export const pikkuSemver = pikkuSessionlessFunc({
|
|
19
|
+
func: async ({ config }, input) => {
|
|
20
|
+
const outDir = resolve(config.rootDir, config.outDir);
|
|
21
|
+
const out = input?.out ? resolve(config.rootDir, input.out) : null;
|
|
22
|
+
if (input?.emit === true) {
|
|
23
|
+
const surface = await currentSurface(config.rootDir, outDir);
|
|
24
|
+
if (out)
|
|
25
|
+
writeJson(out, surface);
|
|
26
|
+
return { mode: 'emit', surface, written: out };
|
|
27
|
+
}
|
|
28
|
+
const against = input?.against;
|
|
29
|
+
if (!against) {
|
|
30
|
+
throw new Error("Nothing to compare against. Pass `--against <path|url>` — a `.pikku` directory, a snapshot file, or a snapshot URL — or `--emit` to produce this build's snapshot.");
|
|
31
|
+
}
|
|
32
|
+
const [before, after] = await Promise.all([
|
|
33
|
+
loadSurface(against),
|
|
34
|
+
currentSurface(config.rootDir, outDir),
|
|
35
|
+
]);
|
|
36
|
+
const changes = computeSurfaceDiff(before, after, against);
|
|
37
|
+
const changesPath = out ?? join(outDir, 'changes.gen.json');
|
|
38
|
+
writeJson(changesPath, changes);
|
|
39
|
+
const failOn = input?.failOn;
|
|
40
|
+
if (failOn) {
|
|
41
|
+
if (!FAIL_LEVELS.includes(failOn)) {
|
|
42
|
+
throw new Error(`--fail-on must be one of ${FAIL_LEVELS.join(', ')}, got '${failOn}'.`);
|
|
43
|
+
}
|
|
44
|
+
if (SEVERITY[changes.verdict] >= SEVERITY[failOn]) {
|
|
45
|
+
throw new Error(`Release is ${changes.verdict} against ${against}, at or above --fail-on ${failOn}. See ${changesPath}.`);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
return { mode: 'compare', written: changesPath, ...changes };
|
|
49
|
+
},
|
|
50
|
+
});
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
export declare const serve: import("#pikku").PikkuFunctionConfig<{
|
|
1
|
+
export declare const serve: import("#pikku/function").PikkuFunctionConfig<{
|
|
2
2
|
port?: string;
|
|
3
3
|
console?: boolean;
|
|
4
4
|
model?: string;
|
|
5
|
-
}, void, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<{
|
|
5
|
+
}, void, "rpc" | "session", import("#pikku/function").PikkuFunctionSessionless<{
|
|
6
6
|
port?: string;
|
|
7
7
|
console?: boolean;
|
|
8
8
|
model?: string;
|
|
9
|
-
}, void, "rpc" | "session", import("#pikku").WiredServices, unknown> | import("#pikku").PikkuFunction<{
|
|
9
|
+
}, void, "rpc" | "session", import("#pikku/function").WiredServices, unknown> | import("#pikku/function").PikkuFunction<{
|
|
10
10
|
port?: string;
|
|
11
11
|
console?: boolean;
|
|
12
12
|
model?: string;
|
|
13
|
-
}, void, "rpc" | "session", import("#pikku").WiredServices>, undefined, undefined>;
|
|
13
|
+
}, void, "rpc" | "session", import("#pikku/function").WiredServices>, undefined, undefined>;
|
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
import { join, resolve } from 'path';
|
|
2
|
-
import { pikkuSessionlessFunc } from '#pikku';
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
2
|
+
import { pikkuSessionlessFunc } from '#pikku/function';
|
|
3
|
+
import { InMemoryQueueService, QueueWebhookService } from '@pikku/core/services';
|
|
4
|
+
import { ConsoleLogger, LocalEmailService, InMemoryAgentRunStateService, } from '@pikku/core/services';
|
|
5
|
+
import { InMemoryTriggerService } from '@pikku/core/services';
|
|
6
|
+
import { InMemoryWorkflowService } from '@pikku/core/services';
|
|
7
|
+
import { KyselyAgentStorageService, KyselyAgentRunStateService, KyselyAgentRunService, } from '@pikku/kysely';
|
|
8
|
+
import { stopSingletonServices } from '@pikku/core/utils';
|
|
9
|
+
import { pikkuState } from '@pikku/core/state';
|
|
10
|
+
import { wireAgentScorerQueueWorkers } from '@pikku/core/agent-scorer';
|
|
8
11
|
import { LocalMetaService } from '@pikku/core/services/local-meta';
|
|
9
12
|
import { LocalContent, } from '@pikku/core/services/local-content';
|
|
10
13
|
import { InMemorySchedulerService } from '@pikku/schedule';
|
|
@@ -12,7 +15,7 @@ import { resolveDb, createKysely, parseDatabaseUrl, } from '../db/local-db.js';
|
|
|
12
15
|
import { loadUserBootstrap, loadUserModule } from './load-user-project.js';
|
|
13
16
|
import { registerScenarioInstrumentation } from '../wirings/scenarios/register-scenario-instrumentation.js';
|
|
14
17
|
import { resolveScaffoldFeature } from '../../utils/resolve-scaffold-feature.js';
|
|
15
|
-
import {
|
|
18
|
+
import { createDevAgentRunner } from './dev-agent-runner.js';
|
|
16
19
|
import { resolveConsoleMount } from './serve-console.js';
|
|
17
20
|
import { serverReadyLine } from '../../server/server-ready.js';
|
|
18
21
|
import { createEphemeralContentSigningJWT } from '../../server/content-signing-jwt.js';
|
|
@@ -75,24 +78,24 @@ export const serve = pikkuSessionlessFunc({
|
|
|
75
78
|
? new LocalContent(localContentConfig, logger, contentSigningJWT)
|
|
76
79
|
: undefined;
|
|
77
80
|
const schedulerService = new InMemorySchedulerService();
|
|
78
|
-
const
|
|
79
|
-
? new
|
|
81
|
+
const agentStorage = kysely
|
|
82
|
+
? new KyselyAgentStorageService(kysely)
|
|
80
83
|
: undefined;
|
|
81
|
-
const
|
|
82
|
-
? new
|
|
83
|
-
: new
|
|
84
|
+
const agentRunState = kysely
|
|
85
|
+
? new KyselyAgentRunStateService(kysely)
|
|
86
|
+
: new InMemoryAgentRunStateService();
|
|
84
87
|
const agentRunService = kysely
|
|
85
88
|
? new KyselyAgentRunService(kysely)
|
|
86
89
|
: undefined;
|
|
87
|
-
if (
|
|
88
|
-
await
|
|
89
|
-
if ('init' in
|
|
90
|
-
await
|
|
90
|
+
if (agentStorage)
|
|
91
|
+
await agentStorage.init();
|
|
92
|
+
if ('init' in agentRunState && typeof agentRunState.init === 'function') {
|
|
93
|
+
await agentRunState.init();
|
|
91
94
|
}
|
|
92
95
|
const devLogger = new ConsoleLogger();
|
|
93
96
|
const hasAgents = Object.keys(inspectorState.agents.agentsMeta).length > 0;
|
|
94
|
-
const
|
|
95
|
-
? await
|
|
97
|
+
const agentRunner = hasAgents
|
|
98
|
+
? await createDevAgentRunner({
|
|
96
99
|
logger,
|
|
97
100
|
projectRoot: config.rootDir,
|
|
98
101
|
variables,
|
|
@@ -102,7 +105,7 @@ export const serve = pikkuSessionlessFunc({
|
|
|
102
105
|
const serveQueueService = new InMemoryQueueService();
|
|
103
106
|
const inMemoryServices = {
|
|
104
107
|
logger: devLogger,
|
|
105
|
-
...(
|
|
108
|
+
...(agentRunner ? { agentRunner } : {}),
|
|
106
109
|
emailService: new LocalEmailService(),
|
|
107
110
|
metaService: new LocalMetaService(pikkuDir),
|
|
108
111
|
schedulerService,
|
|
@@ -111,8 +114,8 @@ export const serve = pikkuSessionlessFunc({
|
|
|
111
114
|
workflowService,
|
|
112
115
|
workflowRunService: workflowService,
|
|
113
116
|
triggerService: new InMemoryTriggerService(),
|
|
114
|
-
|
|
115
|
-
|
|
117
|
+
agentStorage,
|
|
118
|
+
agentRunState,
|
|
116
119
|
agentRunService,
|
|
117
120
|
eventHub,
|
|
118
121
|
...(kysely ? { kysely } : {}),
|
|
@@ -128,7 +131,7 @@ export const serve = pikkuSessionlessFunc({
|
|
|
128
131
|
};
|
|
129
132
|
pikkuState(null, 'package', 'singletonServices', resolvedServices);
|
|
130
133
|
resolvedServices.workflowService?.wireQueueWorkers?.();
|
|
131
|
-
|
|
134
|
+
wireAgentScorerQueueWorkers();
|
|
132
135
|
const { serverLifecycleFactory } = inspectorState.filesAndMethods;
|
|
133
136
|
const loadLifecycle = async () => {
|
|
134
137
|
if (!serverLifecycleFactory)
|
|
@@ -1,26 +1,26 @@
|
|
|
1
|
-
export declare const pikkuSkillsList: import("#pikku").PikkuFunctionConfig<{
|
|
1
|
+
export declare const pikkuSkillsList: import("#pikku/function").PikkuFunctionConfig<{
|
|
2
2
|
target?: string;
|
|
3
|
-
}, void, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<{
|
|
3
|
+
}, void, "rpc" | "session", import("#pikku/function").PikkuFunctionSessionless<{
|
|
4
4
|
target?: string;
|
|
5
|
-
}, void, "rpc" | "session", import("#pikku").WiredServices, unknown> | import("#pikku").PikkuFunction<{
|
|
5
|
+
}, void, "rpc" | "session", import("#pikku/function").WiredServices, unknown> | import("#pikku/function").PikkuFunction<{
|
|
6
6
|
target?: string;
|
|
7
|
-
}, void, "rpc" | "session", import("#pikku").WiredServices>, undefined, undefined>;
|
|
8
|
-
export declare const pikkuSkillsInstall: import("#pikku").PikkuFunctionConfig<{
|
|
7
|
+
}, void, "rpc" | "session", import("#pikku/function").WiredServices>, undefined, undefined>;
|
|
8
|
+
export declare const pikkuSkillsInstall: import("#pikku/function").PikkuFunctionConfig<{
|
|
9
9
|
agent?: string;
|
|
10
10
|
only?: string;
|
|
11
11
|
core?: boolean;
|
|
12
12
|
fabric?: boolean;
|
|
13
13
|
update?: boolean;
|
|
14
|
-
}, void, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<{
|
|
14
|
+
}, void, "rpc" | "session", import("#pikku/function").PikkuFunctionSessionless<{
|
|
15
15
|
agent?: string;
|
|
16
16
|
only?: string;
|
|
17
17
|
core?: boolean;
|
|
18
18
|
fabric?: boolean;
|
|
19
19
|
update?: boolean;
|
|
20
|
-
}, void, "rpc" | "session", import("#pikku").WiredServices, unknown> | import("#pikku").PikkuFunction<{
|
|
20
|
+
}, void, "rpc" | "session", import("#pikku/function").WiredServices, unknown> | import("#pikku/function").PikkuFunction<{
|
|
21
21
|
agent?: string;
|
|
22
22
|
only?: string;
|
|
23
23
|
core?: boolean;
|
|
24
24
|
fabric?: boolean;
|
|
25
25
|
update?: boolean;
|
|
26
|
-
}, void, "rpc" | "session", import("#pikku").WiredServices>, undefined, undefined>;
|
|
26
|
+
}, void, "rpc" | "session", import("#pikku/function").WiredServices>, undefined, undefined>;
|