@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.
Files changed (787) hide show
  1. package/CHANGELOG.md +7306 -0
  2. package/console-app/assets/abnfDiagram-N423BO3Z-C5uToS9v.js +1 -0
  3. package/console-app/assets/arc-D8VmsdJb.js +1 -0
  4. package/console-app/assets/architecture-TIHT7OUA-B1IpeRpl.js +1 -0
  5. package/console-app/assets/architectureDiagram-T3A2C74G-BzJDRfv4.js +36 -0
  6. package/console-app/assets/{blockDiagram-677ZJIJ3-CcSxyQZH.js → blockDiagram-VBNYF7ZC-X5G9Ch-D.js} +5 -5
  7. package/console-app/assets/c4Diagram-5PPSVZJV-B59aO2Sc.js +10 -0
  8. package/console-app/assets/channel-sTJGzqn9.js +1 -0
  9. package/console-app/assets/{chunk-32BRIVSS-Atv4wjmh.js → chunk-2GRJ4B5K-Bwe32j_R.js} +1 -1
  10. package/console-app/assets/{chunk-HOUHSVGY-CyU0q_QM.js → chunk-4I5QYGJK-Beg_uQQN.js} +1 -1
  11. package/console-app/assets/chunk-5RXB4S5H-0HaMiv3k.js +231 -0
  12. package/console-app/assets/{chunk-MOJQB5TN-DUKLkDFX.js → chunk-6Q2QTUOP-CXxkExOq.js} +1 -1
  13. package/console-app/assets/chunk-7Z6QIM7H-zUqPbrvp.js +10 -0
  14. package/console-app/assets/{chunk-V7JOEXUC-BfBH_WMn.js → chunk-GF5L2VYU-CY0wGPcJ.js} +3 -3
  15. package/console-app/assets/chunk-I66GZJ75-BP5UNkJY.js +127 -0
  16. package/console-app/assets/chunk-JQJVKLGR-3dvnUUZN.js +156 -0
  17. package/console-app/assets/{chunk-VR4S4FIN-q02O9Hva.js → chunk-KBJHAD2P-ChD7o2bf.js} +1 -1
  18. package/console-app/assets/{chunk-KEIR6QF5-DNzq6p3w.js → chunk-KEIR6QF5-BICK3FdT.js} +32 -32
  19. package/console-app/assets/chunk-NSK5VX7P-oG1nh33f.js +2 -0
  20. package/console-app/assets/{chunk-ZGVPDNZ5-2b6-Ub1z.js → chunk-QR6OTTB3-D_uKJrj6.js} +3 -3
  21. package/console-app/assets/chunk-RYQCIY6F-CtYhP8W5.js +1 -0
  22. package/console-app/assets/chunk-UBXNYLIW-CMgD3fvL.js +1 -0
  23. package/console-app/assets/{chunk-C7G6YPKG-DhtQv4yx.js → chunk-W5SLKNZC-cjI56NCs.js} +1 -1
  24. package/console-app/assets/{chunk-Q4XR5HBZ-Cpak96ZI.js → chunk-WRU74C26-BQqHgerX.js} +7 -7
  25. package/console-app/assets/chunk-XXDRQBXY-CLdTtHL4.js +1 -0
  26. package/console-app/assets/classDiagram-JCYQIIEL-Dh0wx8TK.js +1 -0
  27. package/console-app/assets/classDiagram-v2-OCEON4UE-Dh0wx8TK.js +1 -0
  28. package/console-app/assets/cose-bilkent-JH36ORCC-DcHzDpDb.js +1 -0
  29. package/console-app/assets/cynefin-VYW2F7L2-Cn2zn-8-.js +1 -0
  30. package/console-app/assets/cynefinDiagram-MW4NZA55-C00zINdu.js +62 -0
  31. package/console-app/assets/cytoscape.esm-B-NFISlW.js +321 -0
  32. package/console-app/assets/dagre-DE2imcyX.js +1 -0
  33. package/console-app/assets/dagre-VZM6K2ZE-Bb2uZ7tL.js +4 -0
  34. package/console-app/assets/defaultLocale-BFoDCU3G.js +1 -0
  35. package/console-app/assets/{diagram-OA4YK3LP-Dv-j07Wh.js → diagram-7IWD3JNH-DUN-JIa1.js} +3 -3
  36. package/console-app/assets/{diagram-FQU43EPY-SGSSyx5P.js → diagram-B4RE2ZJO-Ct5iRFhI.js} +1 -1
  37. package/console-app/assets/diagram-LBJQPF4R-BZ2Hrr-9.js +24 -0
  38. package/console-app/assets/diagram-Q27KOJAE-BHaThj6T.js +24 -0
  39. package/console-app/assets/diagram-UB23O5K3-CH-SzBoh.js +41 -0
  40. package/console-app/assets/dist-CsdsWTxp.js +1 -0
  41. package/console-app/assets/ebnfDiagram-BXEA7PRR-BkjeNaQH.js +1 -0
  42. package/console-app/assets/{erDiagram-Q63AITRT-DQ5Gu1Tw.js → erDiagram-JOGREHBK-BdL77bY3.js} +3 -3
  43. package/console-app/assets/eventmodeling-45OFAUF4-C6PNVeIU.js +1 -0
  44. package/console-app/assets/flowDiagram-UKHOOZJN-CmURPvo2.js +1 -0
  45. package/console-app/assets/ganttDiagram-PKOTCBZU-DfgO68Ez.js +292 -0
  46. package/console-app/assets/gitGraph-TEB2WS4Q-BNbepAzP.js +1 -0
  47. package/console-app/assets/{gitGraphDiagram-IHSO6WYX-7JFgdH2Q.js → gitGraphDiagram-DS77QQ5N-Crb8obGB.js} +4 -4
  48. package/console-app/assets/graphlib-IlWVLY3o.js +1 -0
  49. package/console-app/assets/index-Dsydm-nw.css +1 -0
  50. package/console-app/assets/index-g8jA8DJo.js +290 -0
  51. package/console-app/assets/info-DKCQHKI2-D9tXUXel.js +1 -0
  52. package/console-app/assets/infoDiagram-6WML65LV-BvG8ufLa.js +2 -0
  53. package/console-app/assets/init-C-OQMol4.js +1 -0
  54. package/console-app/assets/isUndefined-T4snU1Mx.js +1 -0
  55. package/console-app/assets/{ishikawaDiagram-FXEZZL3T-XjQC7Fmw.js → ishikawaDiagram-WSZJBQD7-BWoGxEjO.js} +3 -3
  56. package/console-app/assets/{journeyDiagram-5HDEW3XC-DyIcpJQM.js → journeyDiagram-NVQOT4AX-CR4YcPHg.js} +3 -3
  57. package/console-app/assets/{kanban-definition-HUTT4EX6-B1zYF1dv.js → kanban-definition-27J2QSJJ-DYfc5EZe.js} +6 -6
  58. package/console-app/assets/{katex-Vhh-h91d.js → katex-CXMH3UgJ.js} +3 -3
  59. package/console-app/assets/{line-C6UySSzG.js → line-NIaf8Mfw.js} +1 -1
  60. package/console-app/assets/linear-DB_1BE-l.js +1 -0
  61. package/console-app/assets/map-BmPfXn7V.js +1 -0
  62. package/console-app/assets/{mermaid-parser.core-Tfk1Eudy.js → mermaid-parser.core-BqCVMHRZ.js} +3 -3
  63. package/console-app/assets/mermaid.core-CYaeERjF.js +42 -0
  64. package/console-app/assets/{mindmap-definition-LN4V7U3C-5tBdCFVy.js → mindmap-definition-FAOFIHXS-BCjT2v4F.js} +3 -3
  65. package/console-app/assets/{ordinal-hYBb2elL.js → ordinal-BDEzSJ7C.js} +1 -1
  66. package/console-app/assets/packet-7NZHBO7P-CzFZvntp.js +1 -0
  67. package/console-app/assets/path-fybaL0A-.js +1 -0
  68. package/console-app/assets/pegDiagram-VL7TDLO6-3iMotW64.js +1 -0
  69. package/console-app/assets/pie-RZYD4A2V-CXIoUTJn.js +1 -0
  70. package/console-app/assets/pieDiagram-7S7Q4E2Y-B-EOKkdd.js +39 -0
  71. package/console-app/assets/{quadrantDiagram-ABIIQ3AL-Bwdtm5-W.js → quadrantDiagram-CIZ2JOQS-DDdq8l2N.js} +2 -2
  72. package/console-app/assets/radar-I7S5WNFK-9SLSkJ73.js +1 -0
  73. package/console-app/assets/railroad-3IZDKUUU-DdJ88Ord.js +1 -0
  74. package/console-app/assets/railroad-abnf-AHOZXSZD-D2QiLT8B.js +1 -0
  75. package/console-app/assets/railroad-ebnf-EBAXGLYW-CSMqj9L2.js +1 -0
  76. package/console-app/assets/railroad-peg-LSFZ7HO6-Cg1-F8im.js +1 -0
  77. package/console-app/assets/railroadDiagram-AXF67PYL-BMW_s9QW.js +1 -0
  78. package/console-app/assets/{requirementDiagram-TGXJPOKE-CRV748Vu.js → requirementDiagram-LRYGKXZP-BzcnEvjk.js} +2 -2
  79. package/console-app/assets/rolldown-runtime-BcKkbAw3.js +1 -0
  80. package/console-app/assets/{rough.esm-CSKSodPl.js → rough.esm-Dy-Kn_BL.js} +1 -1
  81. package/console-app/assets/{sankeyDiagram-HTMAVEWB-CrFvfCvp.js → sankeyDiagram-W5VNT64P-Dh2TFvuG.js} +2 -2
  82. package/console-app/assets/sequenceDiagram-SI44F4Z6-b-m-tQYz.js +162 -0
  83. package/console-app/assets/src-Dm8O0hiD.js +1 -0
  84. package/console-app/assets/stateDiagram-OKZ733FA-W98kCkqj.js +1 -0
  85. package/console-app/assets/stateDiagram-v2-UEYNNEHI-DpnoMNHC.js +1 -0
  86. package/console-app/assets/swimlanes-SLNWSIFB-0q_y6cLu.js +2 -0
  87. package/console-app/assets/swimlanesDiagram-ULZ7WXOC-BmGtOaWo.js +8 -0
  88. package/console-app/assets/timeline-definition-Z64GVDOM-DmsNlhwe.js +120 -0
  89. package/console-app/assets/treeView-QDETBFTQ-DY7A9uJm.js +1 -0
  90. package/console-app/assets/treemap-6X3UGDF4-DI73Vm90.js +1 -0
  91. package/console-app/assets/vennDiagram-T6HMQDX7-Czpr9diJ.js +34 -0
  92. package/console-app/assets/wardley-OPB4EBWU-C39AmDqd.js +1 -0
  93. package/console-app/assets/{wardleyDiagram-EHGQE667-uWxnqqVK.js → wardleyDiagram-T6FBY63Y-DOtWBvnk.js} +36 -36
  94. package/console-app/assets/{xychartDiagram-FW5EYKEG-ClVawwGR.js → xychartDiagram-ELKLHX3M-VHHuGrWV.js} +4 -4
  95. package/console-app/index.html +4 -2
  96. package/dist/.pikku/addon/index.d.ts +7 -0
  97. package/dist/.pikku/addon/index.js +7 -0
  98. package/dist/.pikku/addon/pikku-addon-types.gen.d.ts +7 -0
  99. package/dist/.pikku/addon/pikku-addon-types.gen.js +7 -0
  100. package/dist/.pikku/agent/index.d.ts +7 -0
  101. package/dist/.pikku/agent/index.js +7 -0
  102. package/dist/.pikku/agent/pikku-agent-types.gen.d.ts +14 -13
  103. package/dist/.pikku/agent/pikku-agent-types.gen.js +5 -6
  104. package/dist/.pikku/agent/pikku-model-aliases.gen.js +2 -2
  105. package/dist/.pikku/auth/index.d.ts +8 -0
  106. package/dist/.pikku/auth/index.js +8 -0
  107. package/dist/.pikku/auth/pikku-auth-types.gen.d.ts +118 -0
  108. package/dist/.pikku/auth/pikku-auth-types.gen.js +92 -0
  109. package/dist/.pikku/channel/index.d.ts +7 -0
  110. package/dist/.pikku/channel/index.js +7 -0
  111. package/dist/.pikku/channel/pikku-channel-types.gen.d.ts +6 -8
  112. package/dist/.pikku/channel/pikku-channel-types.gen.js +2 -9
  113. package/dist/.pikku/cli/index.d.ts +7 -0
  114. package/dist/.pikku/cli/index.js +7 -0
  115. package/dist/.pikku/cli/pikku-cli-channel.js +14 -3
  116. package/dist/.pikku/cli/pikku-cli-client.gen.d.ts +1 -1
  117. package/dist/.pikku/cli/pikku-cli-client.gen.js +1 -1
  118. package/dist/.pikku/cli/pikku-cli-contracts-meta.gen.d.ts +1 -1
  119. package/dist/.pikku/cli/pikku-cli-contracts-meta.gen.js +1 -1
  120. package/dist/.pikku/cli/pikku-cli-types.gen.d.ts +3 -2
  121. package/dist/.pikku/cli/pikku-cli-types.gen.js +1 -1
  122. package/dist/.pikku/cli/pikku-cli-wirings-meta.gen.js +2 -2
  123. package/dist/.pikku/cli/pikku-cli-wirings-meta.gen.json +86 -22
  124. package/dist/.pikku/cli/pikku-cli-wirings.gen.d.ts +1 -1
  125. package/dist/.pikku/cli/pikku-cli-wirings.gen.js +1 -1
  126. package/dist/.pikku/cli/pikku-cli.gen.d.ts +1 -1
  127. package/dist/.pikku/cli/pikku-cli.gen.js +1 -1
  128. package/dist/.pikku/console/index.d.ts +1 -0
  129. package/dist/.pikku/console/index.js +1 -0
  130. package/dist/.pikku/console/pikku-node-types.gen.d.ts +1 -1
  131. package/dist/.pikku/error/index.d.ts +7 -0
  132. package/dist/.pikku/error/index.js +7 -0
  133. package/dist/.pikku/error/pikku-error-types.gen.d.ts +7 -0
  134. package/dist/.pikku/error/pikku-error-types.gen.js +7 -0
  135. package/dist/.pikku/function/index.d.ts +7 -0
  136. package/dist/.pikku/function/index.js +7 -0
  137. package/dist/.pikku/function/pikku-function-types.gen.d.ts +26 -258
  138. package/dist/.pikku/function/pikku-function-types.gen.js +2 -236
  139. package/dist/.pikku/function/pikku-functions-meta.gen.js +2 -2
  140. package/dist/.pikku/function/pikku-functions-meta.gen.json +193 -128
  141. package/dist/.pikku/function/pikku-functions.gen.js +14 -12
  142. package/dist/.pikku/gateway/index.d.ts +7 -0
  143. package/dist/.pikku/gateway/index.js +7 -0
  144. package/dist/.pikku/gateway/pikku-gateway-types.gen.d.ts +36 -0
  145. package/dist/.pikku/gateway/pikku-gateway-types.gen.js +25 -0
  146. package/dist/.pikku/http/index.d.ts +7 -0
  147. package/dist/.pikku/http/index.js +7 -0
  148. package/dist/.pikku/http/pikku-http-types.gen.d.ts +4 -22
  149. package/dist/.pikku/http/pikku-http-types.gen.js +2 -24
  150. package/dist/.pikku/mcp/index.d.ts +7 -0
  151. package/dist/.pikku/mcp/index.js +7 -0
  152. package/dist/.pikku/mcp/pikku-mcp-types.gen.d.ts +7 -4
  153. package/dist/.pikku/mcp/pikku-mcp-types.gen.js +1 -1
  154. package/dist/.pikku/middleware/index.d.ts +7 -0
  155. package/dist/.pikku/middleware/index.js +7 -0
  156. package/dist/.pikku/middleware/pikku-middleware-types.gen.d.ts +117 -0
  157. package/dist/.pikku/middleware/pikku-middleware-types.gen.js +108 -0
  158. package/dist/.pikku/node/index.d.ts +1 -0
  159. package/dist/.pikku/node/index.js +1 -0
  160. package/dist/.pikku/pikku-bootstrap-scenarios.gen.d.ts +1 -1
  161. package/dist/.pikku/pikku-bootstrap-scenarios.gen.js +1 -1
  162. package/dist/.pikku/pikku-bootstrap.gen.d.ts +1 -1
  163. package/dist/.pikku/pikku-bootstrap.gen.js +1 -1
  164. package/dist/.pikku/pikku-meta-service.gen.d.ts +1 -1
  165. package/dist/.pikku/pikku-meta-service.gen.js +1 -1
  166. package/dist/.pikku/pikku-services.gen.d.ts +4 -4
  167. package/dist/.pikku/pikku-services.gen.js +3 -3
  168. package/dist/.pikku/pikku-types.gen.d.ts +1 -1
  169. package/dist/.pikku/pikku-types.gen.js +1 -1
  170. package/dist/.pikku/queue/index.d.ts +7 -0
  171. package/dist/.pikku/queue/index.js +7 -0
  172. package/dist/.pikku/queue/pikku-queue-types.gen.d.ts +1 -1
  173. package/dist/.pikku/queue/pikku-queue-types.gen.js +1 -1
  174. package/dist/.pikku/queue/pikku-queue-workers-wirings-meta.gen.js +2 -2
  175. package/dist/.pikku/queue/pikku-queue-workers-wirings.gen.d.ts +1 -1
  176. package/dist/.pikku/queue/pikku-queue-workers-wirings.gen.js +1 -1
  177. package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.js +2 -2
  178. package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.json +8 -5
  179. package/dist/.pikku/scenarios/index.d.ts +7 -0
  180. package/dist/.pikku/scenarios/index.js +7 -0
  181. package/dist/.pikku/scenarios/pikku-personas.gen.d.ts +17 -0
  182. package/dist/.pikku/scenarios/pikku-personas.gen.js +17 -0
  183. package/dist/.pikku/scenarios/pikku-scenario-functions-meta.gen.js +2 -2
  184. package/dist/.pikku/scenarios/pikku-scenario-functions.gen.d.ts +1 -1
  185. package/dist/.pikku/scenarios/pikku-scenario-types.gen.d.ts +310 -0
  186. package/dist/.pikku/scenarios/pikku-scenario-types.gen.js +71 -0
  187. package/dist/.pikku/scenarios/pikku-scenario-wirings-meta.gen.js +2 -2
  188. package/dist/.pikku/scenarios/pikku-scenario-wirings.gen.d.ts +1 -1
  189. package/dist/.pikku/scenarios/schemas/register.gen.d.ts +1 -1
  190. package/dist/.pikku/scenarios/schemas/register.gen.js +1 -1
  191. package/dist/.pikku/scheduler/index.d.ts +7 -0
  192. package/dist/.pikku/scheduler/index.js +7 -0
  193. package/dist/.pikku/scheduler/pikku-scheduler-types.gen.d.ts +3 -2
  194. package/dist/.pikku/scheduler/pikku-scheduler-types.gen.js +1 -1
  195. package/dist/.pikku/schemas/register.gen.js +9 -7
  196. package/dist/.pikku/schemas/schemas/PikkuSemverOutput.schema.json +1 -0
  197. package/dist/.pikku/scopes/index.d.ts +7 -0
  198. package/dist/.pikku/scopes/index.js +7 -0
  199. package/dist/.pikku/scopes/pikku-personas.gen.d.ts +5 -13
  200. package/dist/.pikku/scopes/pikku-personas.gen.js +1 -1
  201. package/dist/.pikku/scopes/pikku-roles.gen.d.ts +1 -1
  202. package/dist/.pikku/scopes/pikku-scope-types.gen.d.ts +1 -3
  203. package/dist/.pikku/scopes/pikku-scope-types.gen.js +1 -1
  204. package/dist/.pikku/scopes/pikku-scopes.gen.d.ts +1 -1
  205. package/dist/.pikku/secrets/index.d.ts +8 -0
  206. package/dist/.pikku/secrets/index.js +8 -0
  207. package/dist/.pikku/secrets/pikku-secret-types.gen.d.ts +1 -2
  208. package/dist/.pikku/secrets/pikku-secret-types.gen.js +1 -1
  209. package/dist/.pikku/secrets/pikku-secrets.gen.d.ts +8 -12
  210. package/dist/.pikku/secrets/pikku-secrets.gen.js +7 -9
  211. package/dist/.pikku/services/pikku-meta-service.gen.d.ts +7 -0
  212. package/dist/.pikku/services/pikku-meta-service.gen.js +9 -0
  213. package/dist/.pikku/setup/index.d.ts +7 -0
  214. package/dist/.pikku/setup/index.js +7 -0
  215. package/dist/.pikku/setup/pikku-setup-types.gen.d.ts +66 -0
  216. package/dist/.pikku/setup/pikku-setup-types.gen.js +87 -0
  217. package/dist/.pikku/trigger/index.d.ts +7 -0
  218. package/dist/.pikku/trigger/index.js +7 -0
  219. package/dist/.pikku/trigger/pikku-trigger-types.gen.d.ts +6 -6
  220. package/dist/.pikku/trigger/pikku-trigger-types.gen.js +1 -1
  221. package/dist/.pikku/variables/index.d.ts +8 -0
  222. package/dist/.pikku/variables/index.js +8 -0
  223. package/dist/.pikku/variables/pikku-variable-types.gen.d.ts +1 -2
  224. package/dist/.pikku/variables/pikku-variable-types.gen.js +1 -1
  225. package/dist/.pikku/variables/pikku-variables.gen.d.ts +7 -10
  226. package/dist/.pikku/variables/pikku-variables.gen.js +8 -10
  227. package/dist/.pikku/workflow/index.d.ts +7 -0
  228. package/dist/.pikku/workflow/index.js +7 -0
  229. package/dist/.pikku/workflow/meta/allWorkflow.gen.json +105 -82
  230. package/dist/.pikku/workflow/pikku-personas.gen.d.ts +1 -2
  231. package/dist/.pikku/workflow/pikku-personas.gen.js +1 -1
  232. package/dist/.pikku/workflow/pikku-workflow-types.gen.d.ts +21 -263
  233. package/dist/.pikku/workflow/pikku-workflow-types.gen.js +2 -65
  234. package/dist/.pikku/workflow/pikku-workflow-wirings-meta.gen.js +2 -2
  235. package/dist/.pikku/workflow/pikku-workflow-wirings.gen.d.ts +0 -1
  236. package/dist/.pikku/workflow/pikku-workflow-wirings.gen.js +1 -1
  237. package/dist/bin/pikku-bin.mjs +2 -2
  238. package/dist/src/cli.wiring.js +69 -7
  239. package/dist/src/deploy/analyzer/analyzer.js +39 -17
  240. package/dist/src/deploy/build-pipeline.d.ts +13 -0
  241. package/dist/src/deploy/build-pipeline.js +22 -0
  242. package/dist/src/deploy/bundler/bundler.js +2 -2
  243. package/dist/src/deploy/server-entry.js +1 -1
  244. package/dist/src/fabric/fabric-commands.d.ts +104 -104
  245. package/dist/src/fabric/functions/add.function.d.ts +4 -4
  246. package/dist/src/fabric/functions/add.function.js +1 -1
  247. package/dist/src/fabric/functions/addon-verify.function.d.ts +4 -4
  248. package/dist/src/fabric/functions/addon-verify.function.js +1 -1
  249. package/dist/src/fabric/functions/db-schema.function.d.ts +4 -4
  250. package/dist/src/fabric/functions/db-schema.function.js +1 -1
  251. package/dist/src/fabric/functions/deploy-list.function.d.ts +4 -4
  252. package/dist/src/fabric/functions/deploy-list.function.js +1 -1
  253. package/dist/src/fabric/functions/deploy-units.function.d.ts +4 -4
  254. package/dist/src/fabric/functions/deploy-units.function.js +1 -1
  255. package/dist/src/fabric/functions/deploy.function.d.ts +8 -8
  256. package/dist/src/fabric/functions/deploy.function.js +1 -1
  257. package/dist/src/fabric/functions/domains-add.function.d.ts +4 -4
  258. package/dist/src/fabric/functions/domains-add.function.js +1 -1
  259. package/dist/src/fabric/functions/domains-list.function.d.ts +4 -4
  260. package/dist/src/fabric/functions/domains-list.function.js +1 -1
  261. package/dist/src/fabric/functions/domains-remove.function.d.ts +4 -4
  262. package/dist/src/fabric/functions/domains-remove.function.js +1 -1
  263. package/dist/src/fabric/functions/errors.function.d.ts +4 -4
  264. package/dist/src/fabric/functions/errors.function.js +1 -1
  265. package/dist/src/fabric/functions/init.function.d.ts +4 -4
  266. package/dist/src/fabric/functions/init.function.js +1 -1
  267. package/dist/src/fabric/functions/link.function.d.ts +4 -4
  268. package/dist/src/fabric/functions/link.function.js +1 -1
  269. package/dist/src/fabric/functions/llm-key.function.d.ts +4 -4
  270. package/dist/src/fabric/functions/llm-key.function.js +1 -1
  271. package/dist/src/fabric/functions/login.function.d.ts +4 -4
  272. package/dist/src/fabric/functions/login.function.js +1 -1
  273. package/dist/src/fabric/functions/logs.function.d.ts +4 -4
  274. package/dist/src/fabric/functions/logs.function.js +1 -1
  275. package/dist/src/fabric/functions/metrics.function.d.ts +4 -4
  276. package/dist/src/fabric/functions/metrics.function.js +1 -1
  277. package/dist/src/fabric/functions/publish.function.d.ts +4 -4
  278. package/dist/src/fabric/functions/publish.function.js +1 -1
  279. package/dist/src/fabric/functions/rollback.function.d.ts +4 -4
  280. package/dist/src/fabric/functions/rollback.function.js +1 -1
  281. package/dist/src/fabric/functions/secrets-list.function.d.ts +4 -4
  282. package/dist/src/fabric/functions/secrets-list.function.js +1 -1
  283. package/dist/src/fabric/functions/secrets-rotate.function.d.ts +4 -4
  284. package/dist/src/fabric/functions/secrets-rotate.function.js +1 -1
  285. package/dist/src/fabric/functions/secrets-set.function.d.ts +4 -4
  286. package/dist/src/fabric/functions/secrets-set.function.js +1 -1
  287. package/dist/src/fabric/functions/smoke.function.d.ts +4 -4
  288. package/dist/src/fabric/functions/smoke.function.js +13 -13
  289. package/dist/src/fabric/functions/status.function.d.ts +4 -4
  290. package/dist/src/fabric/functions/status.function.js +1 -1
  291. package/dist/src/fabric/functions/trace.function.d.ts +4 -4
  292. package/dist/src/fabric/functions/trace.function.js +1 -1
  293. package/dist/src/fabric/functions/validate.function.d.ts +4 -4
  294. package/dist/src/fabric/functions/validate.function.js +90 -27
  295. package/dist/src/fabric/lib/git.d.ts +23 -0
  296. package/dist/src/fabric/lib/git.js +39 -0
  297. package/dist/src/functions/commands/all.d.ts +1 -1
  298. package/dist/src/functions/commands/all.js +1 -1
  299. package/dist/src/functions/commands/audit.d.ts +11 -1
  300. package/dist/src/functions/commands/audit.js +59 -23
  301. package/dist/src/functions/commands/binary.d.ts +4 -4
  302. package/dist/src/functions/commands/binary.js +1 -1
  303. package/dist/src/functions/commands/bootstrap.d.ts +1 -1
  304. package/dist/src/functions/commands/bootstrap.js +5 -4
  305. package/dist/src/functions/commands/bun-coverage-loader.js +4 -1
  306. package/dist/src/functions/commands/db-audit.d.ts +1 -1
  307. package/dist/src/functions/commands/db-audit.js +1 -1
  308. package/dist/src/functions/commands/db-baseline.d.ts +1 -1
  309. package/dist/src/functions/commands/db-baseline.js +1 -1
  310. package/dist/src/functions/commands/db-check.d.ts +1 -1
  311. package/dist/src/functions/commands/db-check.js +1 -1
  312. package/dist/src/functions/commands/db-codegen.d.ts +1 -1
  313. package/dist/src/functions/commands/db-codegen.js +1 -1
  314. package/dist/src/functions/commands/db-export.d.ts +1 -1
  315. package/dist/src/functions/commands/db-export.js +1 -1
  316. package/dist/src/functions/commands/db-generate.d.ts +1 -1
  317. package/dist/src/functions/commands/db-generate.js +1 -1
  318. package/dist/src/functions/commands/db-migrate.d.ts +1 -1
  319. package/dist/src/functions/commands/db-migrate.js +1 -1
  320. package/dist/src/functions/commands/db-reset.d.ts +4 -4
  321. package/dist/src/functions/commands/db-reset.js +1 -1
  322. package/dist/src/functions/commands/deploy-apply.d.ts +4 -4
  323. package/dist/src/functions/commands/deploy-apply.js +14 -2
  324. package/dist/src/functions/commands/deploy-info.d.ts +1 -1
  325. package/dist/src/functions/commands/deploy-info.js +1 -1
  326. package/dist/src/functions/commands/deploy-plan.d.ts +4 -4
  327. package/dist/src/functions/commands/deploy-plan.js +6 -2
  328. package/dist/src/functions/commands/{dev-ai-runner.d.ts → dev-agent-runner.d.ts} +5 -4
  329. package/dist/src/functions/commands/{dev-ai-runner.js → dev-agent-runner.js} +4 -4
  330. package/dist/src/functions/commands/dev.d.ts +4 -4
  331. package/dist/src/functions/commands/dev.js +32 -25
  332. package/dist/src/functions/commands/emails-init.d.ts +1 -1
  333. package/dist/src/functions/commands/emails-init.js +19 -6
  334. package/dist/src/functions/commands/enable.d.ts +8 -8
  335. package/dist/src/functions/commands/enable.js +4 -2
  336. package/dist/src/functions/commands/environment.d.ts +27 -0
  337. package/dist/src/functions/commands/environment.js +36 -2
  338. package/dist/src/functions/commands/import-n8n.d.ts +4 -4
  339. package/dist/src/functions/commands/import-n8n.js +1 -1
  340. package/dist/src/functions/commands/info.d.ts +4 -4
  341. package/dist/src/functions/commands/info.js +1 -1
  342. package/dist/src/functions/commands/knowledge-index.d.ts +4 -4
  343. package/dist/src/functions/commands/knowledge-index.js +1 -1
  344. package/dist/src/functions/commands/knowledge-validate.d.ts +4 -4
  345. package/dist/src/functions/commands/knowledge-validate.js +1 -1
  346. package/dist/src/functions/commands/login.d.ts +9 -9
  347. package/dist/src/functions/commands/login.js +1 -1
  348. package/dist/src/functions/commands/meta.d.ts +37 -37
  349. package/dist/src/functions/commands/meta.js +1 -1
  350. package/dist/src/functions/commands/new-addon.d.ts +5 -4
  351. package/dist/src/functions/commands/new-addon.js +27 -25
  352. package/dist/src/functions/commands/new-function.d.ts +4 -4
  353. package/dist/src/functions/commands/new-function.js +4 -4
  354. package/dist/src/functions/commands/new-middleware.d.ts +4 -4
  355. package/dist/src/functions/commands/new-middleware.js +3 -3
  356. package/dist/src/functions/commands/new-permission.d.ts +4 -4
  357. package/dist/src/functions/commands/new-permission.js +3 -3
  358. package/dist/src/functions/commands/new-wiring.d.ts +4 -4
  359. package/dist/src/functions/commands/new-wiring.js +8 -8
  360. package/dist/src/functions/commands/persona-sync.d.ts +4 -4
  361. package/dist/src/functions/commands/persona-sync.js +1 -1
  362. package/dist/src/functions/commands/persona.d.ts +5 -5
  363. package/dist/src/functions/commands/persona.js +6 -6
  364. package/dist/src/functions/commands/pikku-command-bootstrap.d.ts +1 -1
  365. package/dist/src/functions/commands/pikku-command-bootstrap.js +7 -2
  366. package/dist/src/functions/commands/pikku-command-summary.d.ts +1 -1
  367. package/dist/src/functions/commands/pikku-command-summary.js +2 -2
  368. package/dist/src/functions/commands/roles-audit.d.ts +1 -1
  369. package/dist/src/functions/commands/roles-audit.js +1 -1
  370. package/dist/src/functions/commands/roles-prune.d.ts +4 -4
  371. package/dist/src/functions/commands/roles-prune.js +1 -1
  372. package/dist/src/functions/commands/scenario-browser.d.ts +18 -12
  373. package/dist/src/functions/commands/scenario-browser.js +20 -6
  374. package/dist/src/functions/commands/scenario-formatter.d.ts +6 -52
  375. package/dist/src/functions/commands/scenario-ladder.d.ts +4 -4
  376. package/dist/src/functions/commands/scenario.d.ts +8 -11
  377. package/dist/src/functions/commands/scenario.js +107 -55
  378. package/dist/src/functions/commands/scopes-audit.d.ts +1 -1
  379. package/dist/src/functions/commands/scopes-audit.js +1 -1
  380. package/dist/src/functions/commands/scopes-prune.d.ts +4 -4
  381. package/dist/src/functions/commands/scopes-prune.js +1 -1
  382. package/dist/src/functions/commands/semver-render.d.ts +2 -0
  383. package/dist/src/functions/commands/semver-render.js +60 -0
  384. package/dist/src/functions/commands/semver.d.ts +25 -0
  385. package/dist/src/functions/commands/semver.js +50 -0
  386. package/dist/src/functions/commands/serve.d.ts +4 -4
  387. package/dist/src/functions/commands/serve.js +25 -22
  388. package/dist/src/functions/commands/skills.d.ts +8 -8
  389. package/dist/src/functions/commands/skills.js +1 -1
  390. package/dist/src/functions/commands/update-render.d.ts +2 -0
  391. package/dist/src/functions/commands/update-render.js +102 -0
  392. package/dist/src/functions/commands/update.d.ts +99 -0
  393. package/dist/src/functions/commands/update.js +392 -0
  394. package/dist/src/functions/commands/validate.d.ts +4 -4
  395. package/dist/src/functions/commands/validate.js +1 -1
  396. package/dist/src/functions/commands/versions-check.d.ts +1 -1
  397. package/dist/src/functions/commands/versions-check.js +1 -1
  398. package/dist/src/functions/commands/versions-init.d.ts +4 -4
  399. package/dist/src/functions/commands/versions-init.js +1 -1
  400. package/dist/src/functions/commands/versions-update.d.ts +1 -1
  401. package/dist/src/functions/commands/versions-update.js +1 -1
  402. package/dist/src/functions/commands/watch.d.ts +4 -4
  403. package/dist/src/functions/commands/watch.js +1 -1
  404. package/dist/src/functions/db/annotation-parser.d.ts +11 -3
  405. package/dist/src/functions/db/better-auth-schema.js +1 -1
  406. package/dist/src/functions/db/db-codegen.js +4 -2
  407. package/dist/src/functions/db/local-db.js +3 -3
  408. package/dist/src/functions/runtimes/fetch/index.d.ts +1 -1
  409. package/dist/src/functions/runtimes/fetch/index.js +1 -1
  410. package/dist/src/functions/runtimes/nextjs/pikku-command-nextjs.d.ts +1 -1
  411. package/dist/src/functions/runtimes/nextjs/pikku-command-nextjs.js +1 -1
  412. package/dist/src/functions/runtimes/tanstack-start/pikku-command-tanstack-start.d.ts +1 -1
  413. package/dist/src/functions/runtimes/tanstack-start/pikku-command-tanstack-start.js +1 -1
  414. package/dist/src/functions/runtimes/websocket/pikku-command-websocket-typed.d.ts +1 -1
  415. package/dist/src/functions/runtimes/websocket/pikku-command-websocket-typed.js +1 -1
  416. package/dist/src/functions/surface/build-surface-doc.d.ts +22 -0
  417. package/dist/src/functions/surface/build-surface-doc.js +151 -0
  418. package/dist/src/functions/surface/collect-surface-usage.d.ts +16 -0
  419. package/dist/src/functions/surface/collect-surface-usage.js +35 -0
  420. package/dist/src/functions/surface/collect-surface.d.ts +19 -1
  421. package/dist/src/functions/surface/collect-surface.js +104 -16
  422. package/dist/src/functions/surface/generate-surface-doc.d.ts +1 -0
  423. package/dist/src/functions/surface/generate-surface-doc.js +46 -0
  424. package/dist/src/functions/surface/shipped-surface-doc.d.ts +16 -0
  425. package/dist/src/functions/surface/shipped-surface-doc.js +44 -0
  426. package/dist/src/functions/surface/surface-doc.types.d.ts +69 -0
  427. package/dist/src/functions/surface/surface-doc.types.js +1 -0
  428. package/dist/src/functions/surface/surface-editorial.d.ts +25 -0
  429. package/dist/src/functions/surface/surface-editorial.js +101 -0
  430. package/dist/src/functions/surface/write-surface-usage.d.ts +12 -0
  431. package/dist/src/functions/surface/write-surface-usage.js +18 -0
  432. package/dist/src/functions/validate/pikku-barrel-checks.d.ts +12 -0
  433. package/dist/src/functions/validate/pikku-barrel-checks.js +97 -0
  434. package/dist/src/functions/validate/scenario-file-checks.js +1 -1
  435. package/dist/src/functions/validate/shared-checks.d.ts +10 -0
  436. package/dist/src/functions/validate/shared-checks.js +16 -2
  437. package/dist/src/functions/validate/validate-registry.js +20 -0
  438. package/dist/src/functions/validate/workspace-exports-checks.d.ts +14 -0
  439. package/dist/src/functions/validate/workspace-exports-checks.js +211 -0
  440. package/dist/src/functions/wirings/agent/pikku-command-agent-types.d.ts +1 -0
  441. package/dist/src/functions/wirings/{ai-agent/pikku-command-ai-agent-types.js → agent/pikku-command-agent-types.js} +5 -4
  442. package/dist/src/functions/wirings/agent/pikku-command-agent.d.ts +1 -0
  443. package/dist/src/functions/wirings/{ai-agent/pikku-command-ai-agent.js → agent/pikku-command-agent.js} +7 -7
  444. package/dist/src/functions/wirings/agent/pikku-command-public-agent.d.ts +1 -0
  445. package/dist/src/functions/wirings/{ai-agent → agent}/pikku-command-public-agent.js +4 -4
  446. package/dist/src/functions/wirings/{ai-agent → agent}/serialize-agent-map.d.ts +2 -2
  447. package/dist/src/functions/wirings/agent/serialize-agent-types.d.ts +1 -0
  448. package/dist/src/functions/wirings/{ai-agent/serialize-ai-agent-types.js → agent/serialize-agent-types.js} +24 -30
  449. package/dist/src/functions/wirings/{ai-agent → agent}/serialize-model-aliases.js +1 -1
  450. package/dist/src/functions/wirings/agent/serialize-public-agent.d.ts +5 -0
  451. package/dist/src/functions/wirings/{ai-agent → agent}/serialize-public-agent.js +5 -3
  452. package/dist/src/functions/wirings/agent-scorer/pikku-command-agent-scorer.d.ts +1 -0
  453. package/dist/src/functions/wirings/{ai-scorer/pikku-command-ai-scorer.js → agent-scorer/pikku-command-agent-scorer.js} +7 -7
  454. package/dist/src/functions/wirings/{ai-scorer → agent-scorer}/serialize-scorer-names.d.ts +1 -1
  455. package/dist/src/functions/wirings/auth/pikku-command-auth.d.ts +4 -4
  456. package/dist/src/functions/wirings/auth/pikku-command-auth.js +5 -4
  457. package/dist/src/functions/wirings/auth/serialize-auth-gen.d.ts +1 -1
  458. package/dist/src/functions/wirings/auth/serialize-auth-gen.js +3 -8
  459. package/dist/src/functions/wirings/auth/serialize-auth-guards.d.ts +12 -0
  460. package/dist/src/functions/wirings/auth/serialize-auth-guards.js +168 -0
  461. package/dist/src/functions/wirings/auth/serialize-auth-types.d.ts +4 -4
  462. package/dist/src/functions/wirings/auth/serialize-auth-types.js +4 -4
  463. package/dist/src/functions/wirings/channels/pikku-channels.d.ts +1 -1
  464. package/dist/src/functions/wirings/channels/pikku-channels.js +2 -2
  465. package/dist/src/functions/wirings/channels/pikku-command-channel-types.d.ts +1 -1
  466. package/dist/src/functions/wirings/channels/pikku-command-channel-types.js +6 -3
  467. package/dist/src/functions/wirings/channels/pikku-command-channels-map.d.ts +1 -1
  468. package/dist/src/functions/wirings/channels/pikku-command-channels-map.js +1 -1
  469. package/dist/src/functions/wirings/channels/pikku-command-channels.d.ts +1 -1
  470. package/dist/src/functions/wirings/channels/pikku-command-channels.js +2 -2
  471. package/dist/src/functions/wirings/channels/serialize-channel-types.d.ts +3 -1
  472. package/dist/src/functions/wirings/channels/serialize-channel-types.js +18 -24
  473. package/dist/src/functions/wirings/channels/serialize-typed-channel-map.d.ts +1 -2
  474. package/dist/src/functions/wirings/cli/pikku-command-cli-entry.d.ts +1 -1
  475. package/dist/src/functions/wirings/cli/pikku-command-cli-entry.js +2 -2
  476. package/dist/src/functions/wirings/cli/pikku-command-cli-types.d.ts +1 -1
  477. package/dist/src/functions/wirings/cli/pikku-command-cli-types.js +3 -3
  478. package/dist/src/functions/wirings/cli/pikku-command-cli.d.ts +1 -1
  479. package/dist/src/functions/wirings/cli/pikku-command-cli.js +2 -2
  480. package/dist/src/functions/wirings/cli/serialize-channel-cli.d.ts +1 -1
  481. package/dist/src/functions/wirings/cli/serialize-channel-cli.js +9 -3
  482. package/dist/src/functions/wirings/cli/serialize-cli-types.d.ts +1 -1
  483. package/dist/src/functions/wirings/cli/serialize-cli-types.js +9 -3
  484. package/dist/src/functions/wirings/console/pikku-command-console-functions.d.ts +1 -1
  485. package/dist/src/functions/wirings/console/pikku-command-console-functions.js +6 -5
  486. package/dist/src/functions/wirings/console/pikku-command-nodes-meta.d.ts +1 -1
  487. package/dist/src/functions/wirings/console/pikku-command-nodes-meta.js +1 -1
  488. package/dist/src/functions/wirings/console/serialize-console-functions.d.ts +1 -1
  489. package/dist/src/functions/wirings/console/serialize-console-functions.js +20 -4
  490. package/dist/src/functions/wirings/credentials/pikku-command-credentials.d.ts +1 -1
  491. package/dist/src/functions/wirings/credentials/pikku-command-credentials.js +2 -2
  492. package/dist/src/functions/wirings/credentials/serialize-credentials-types.js +3 -4
  493. package/dist/src/functions/wirings/emails/pikku-command-emails.d.ts +1 -1
  494. package/dist/src/functions/wirings/emails/pikku-command-emails.js +1 -1
  495. package/dist/src/functions/wirings/emails/serialize-emails.js +2 -2
  496. package/dist/src/functions/wirings/errors/pikku-command-error-types.d.ts +1 -0
  497. package/dist/src/functions/wirings/errors/pikku-command-error-types.js +17 -0
  498. package/dist/src/functions/wirings/errors/serialize-error-types.d.ts +9 -0
  499. package/dist/src/functions/wirings/errors/serialize-error-types.js +16 -0
  500. package/dist/src/functions/wirings/functions/pikku-command-addon-types.d.ts +1 -1
  501. package/dist/src/functions/wirings/functions/pikku-command-addon-types.js +20 -8
  502. package/dist/src/functions/wirings/functions/pikku-command-function-types-split.d.ts +4 -4
  503. package/dist/src/functions/wirings/functions/pikku-command-function-types-split.js +17 -3
  504. package/dist/src/functions/wirings/functions/pikku-command-functions.d.ts +1 -1
  505. package/dist/src/functions/wirings/functions/pikku-command-functions.js +2 -2
  506. package/dist/src/functions/wirings/functions/pikku-command-leaf-indexes.d.ts +14 -0
  507. package/dist/src/functions/wirings/functions/pikku-command-leaf-indexes.js +119 -0
  508. package/dist/src/functions/wirings/functions/pikku-command-services.d.ts +1 -1
  509. package/dist/src/functions/wirings/functions/pikku-command-services.js +18 -3
  510. package/dist/src/functions/wirings/functions/schemas.d.ts +1 -1
  511. package/dist/src/functions/wirings/functions/schemas.js +1 -1
  512. package/dist/src/functions/wirings/functions/serialize-addon-types.d.ts +13 -0
  513. package/dist/src/functions/wirings/functions/serialize-addon-types.js +20 -1
  514. package/dist/src/functions/wirings/functions/serialize-function-imports.d.ts +1 -1
  515. package/dist/src/functions/wirings/functions/serialize-function-types.d.ts +7 -2
  516. package/dist/src/functions/wirings/functions/serialize-function-types.js +46 -361
  517. package/dist/src/functions/wirings/functions/serialize-leaf-index.d.ts +17 -0
  518. package/dist/src/functions/wirings/functions/serialize-leaf-index.js +27 -0
  519. package/dist/src/functions/wirings/gateway/pikku-command-gateway-types.d.ts +7 -0
  520. package/dist/src/functions/wirings/gateway/pikku-command-gateway-types.js +24 -0
  521. package/dist/src/functions/wirings/gateway/pikku-command-gateway.d.ts +1 -1
  522. package/dist/src/functions/wirings/gateway/pikku-command-gateway.js +1 -1
  523. package/dist/src/functions/wirings/gateway/serialize-gateway-types.d.ts +6 -0
  524. package/dist/src/functions/wirings/gateway/serialize-gateway-types.js +55 -0
  525. package/dist/src/functions/wirings/graph/pikku-command-graph-wirings.d.ts +1 -1
  526. package/dist/src/functions/wirings/graph/pikku-command-graph-wirings.js +3 -4
  527. package/dist/src/functions/wirings/graph/serialize-graph-wirings.d.ts +1 -1
  528. package/dist/src/functions/wirings/graph/serialize-graph-wirings.js +2 -2
  529. package/dist/src/functions/wirings/http/pikku-command-http-map.d.ts +1 -1
  530. package/dist/src/functions/wirings/http/pikku-command-http-map.js +3 -3
  531. package/dist/src/functions/wirings/http/pikku-command-http-routes.d.ts +1 -1
  532. package/dist/src/functions/wirings/http/pikku-command-http-routes.js +2 -2
  533. package/dist/src/functions/wirings/http/pikku-command-http-types.d.ts +1 -1
  534. package/dist/src/functions/wirings/http/pikku-command-http-types.js +7 -3
  535. package/dist/src/functions/wirings/http/pikku-command-openapi.d.ts +1 -1
  536. package/dist/src/functions/wirings/http/pikku-command-openapi.js +1 -1
  537. package/dist/src/functions/wirings/http/pikku-http-routes.d.ts +1 -1
  538. package/dist/src/functions/wirings/http/pikku-http-routes.js +2 -2
  539. package/dist/src/functions/wirings/http/serialize-http-types.d.ts +3 -1
  540. package/dist/src/functions/wirings/http/serialize-http-types.js +20 -35
  541. package/dist/src/functions/wirings/http/serialize-typed-http-map.d.ts +5 -1
  542. package/dist/src/functions/wirings/http/serialize-typed-http-map.js +5 -4
  543. package/dist/src/functions/wirings/mcp/pikku-command-mcp-json.d.ts +1 -1
  544. package/dist/src/functions/wirings/mcp/pikku-command-mcp-json.js +1 -1
  545. package/dist/src/functions/wirings/mcp/pikku-command-mcp-types.d.ts +1 -1
  546. package/dist/src/functions/wirings/mcp/pikku-command-mcp-types.js +5 -2
  547. package/dist/src/functions/wirings/mcp/pikku-command-mcp.d.ts +1 -1
  548. package/dist/src/functions/wirings/mcp/pikku-command-mcp.js +7 -3
  549. package/dist/src/functions/wirings/mcp/serialize-mcp-types.d.ts +3 -1
  550. package/dist/src/functions/wirings/mcp/serialize-mcp-types.js +15 -15
  551. package/dist/src/functions/wirings/middleware/pikku-command-middleware.d.ts +1 -1
  552. package/dist/src/functions/wirings/middleware/pikku-command-middleware.js +1 -1
  553. package/dist/src/functions/wirings/middleware/serialize-middleware-types.d.ts +9 -0
  554. package/dist/src/functions/wirings/middleware/serialize-middleware-types.js +176 -0
  555. package/dist/src/functions/wirings/package/pikku-command-package-types.d.ts +3 -3
  556. package/dist/src/functions/wirings/package/pikku-command-package-types.js +1 -1
  557. package/dist/src/functions/wirings/package/pikku-command-package.d.ts +1 -1
  558. package/dist/src/functions/wirings/package/pikku-command-package.js +1 -1
  559. package/dist/src/functions/wirings/package/serialize-package-types.js +0 -4
  560. package/dist/src/functions/wirings/package/serialize-package.js +1 -1
  561. package/dist/src/functions/wirings/permissions/pikku-command-permissions.d.ts +1 -1
  562. package/dist/src/functions/wirings/permissions/pikku-command-permissions.js +1 -1
  563. package/dist/src/functions/wirings/personas/pikku-command-personas.d.ts +4 -4
  564. package/dist/src/functions/wirings/personas/pikku-command-personas.js +1 -1
  565. package/dist/src/functions/wirings/personas/serialize-personas-types.d.ts +1 -1
  566. package/dist/src/functions/wirings/personas/serialize-personas-types.js +9 -28
  567. package/dist/src/functions/wirings/queue/pikku-command-queue-map.d.ts +1 -1
  568. package/dist/src/functions/wirings/queue/pikku-command-queue-map.js +1 -1
  569. package/dist/src/functions/wirings/queue/pikku-command-queue-service.d.ts +1 -1
  570. package/dist/src/functions/wirings/queue/pikku-command-queue-service.js +1 -1
  571. package/dist/src/functions/wirings/queue/pikku-command-queue-types.d.ts +1 -1
  572. package/dist/src/functions/wirings/queue/pikku-command-queue-types.js +4 -2
  573. package/dist/src/functions/wirings/queue/pikku-command-queue.d.ts +1 -1
  574. package/dist/src/functions/wirings/queue/pikku-command-queue.js +1 -1
  575. package/dist/src/functions/wirings/queue/pikku-queue-map.d.ts +1 -1
  576. package/dist/src/functions/wirings/queue/pikku-queue-map.js +1 -1
  577. package/dist/src/functions/wirings/queue/pikku-queue.d.ts +1 -1
  578. package/dist/src/functions/wirings/queue/pikku-queue.js +1 -1
  579. package/dist/src/functions/wirings/queue/serialize-queue-map.js +1 -1
  580. package/dist/src/functions/wirings/queue/serialize-queue-types.d.ts +3 -1
  581. package/dist/src/functions/wirings/queue/serialize-queue-types.js +8 -5
  582. package/dist/src/functions/wirings/queue/serialize-queue-wrapper.js +1 -1
  583. package/dist/src/functions/wirings/realtime/pikku-command-events-scaffold.d.ts +1 -1
  584. package/dist/src/functions/wirings/realtime/pikku-command-events-scaffold.js +3 -4
  585. package/dist/src/functions/wirings/realtime/pikku-command-realtime.d.ts +1 -1
  586. package/dist/src/functions/wirings/realtime/pikku-command-realtime.js +1 -1
  587. package/dist/src/functions/wirings/realtime/serialize-events-scaffold.d.ts +1 -1
  588. package/dist/src/functions/wirings/realtime/serialize-events-scaffold.js +4 -8
  589. package/dist/src/functions/wirings/roles/pikku-command-roles.d.ts +4 -4
  590. package/dist/src/functions/wirings/roles/pikku-command-roles.js +2 -2
  591. package/dist/src/functions/wirings/rpc/pikku-command-public-rpc.d.ts +1 -1
  592. package/dist/src/functions/wirings/rpc/pikku-command-public-rpc.js +6 -6
  593. package/dist/src/functions/wirings/rpc/pikku-command-react-query.d.ts +1 -1
  594. package/dist/src/functions/wirings/rpc/pikku-command-react-query.js +1 -1
  595. package/dist/src/functions/wirings/rpc/pikku-command-remote-rpc.d.ts +1 -1
  596. package/dist/src/functions/wirings/rpc/pikku-command-remote-rpc.js +6 -6
  597. package/dist/src/functions/wirings/rpc/pikku-command-rpc-client.d.ts +1 -1
  598. package/dist/src/functions/wirings/rpc/pikku-command-rpc-client.js +1 -1
  599. package/dist/src/functions/wirings/rpc/pikku-command-rpc-map.d.ts +3 -3
  600. package/dist/src/functions/wirings/rpc/pikku-command-rpc-map.js +1 -1
  601. package/dist/src/functions/wirings/rpc/pikku-command-rpc.d.ts +1 -1
  602. package/dist/src/functions/wirings/rpc/pikku-command-rpc.js +2 -2
  603. package/dist/src/functions/wirings/rpc/serialize-public-rpc.d.ts +1 -1
  604. package/dist/src/functions/wirings/rpc/serialize-public-rpc.js +3 -2
  605. package/dist/src/functions/wirings/rpc/serialize-remote-rpc.d.ts +1 -1
  606. package/dist/src/functions/wirings/rpc/serialize-remote-rpc.js +4 -2
  607. package/dist/src/functions/wirings/rpc/serialize-typed-rpc-map.js +5 -5
  608. package/dist/src/functions/wirings/scenarios/register-scenario-instrumentation.js +3 -3
  609. package/dist/src/functions/wirings/scenarios/scenario-partition.d.ts +1 -1
  610. package/dist/src/functions/wirings/scenarios/scenario-schema-partition.d.ts +1 -1
  611. package/dist/src/functions/wirings/scenarios/serialize-scenario-meta.js +4 -4
  612. package/dist/src/functions/wirings/scheduler/pikku-command-scheduler-types.d.ts +1 -1
  613. package/dist/src/functions/wirings/scheduler/pikku-command-scheduler-types.js +5 -2
  614. package/dist/src/functions/wirings/scheduler/pikku-command-scheduler.d.ts +1 -1
  615. package/dist/src/functions/wirings/scheduler/pikku-command-scheduler.js +1 -1
  616. package/dist/src/functions/wirings/scheduler/serialize-scheduler-types.d.ts +3 -1
  617. package/dist/src/functions/wirings/scheduler/serialize-scheduler-types.js +10 -5
  618. package/dist/src/functions/wirings/scopes/pikku-command-scopes.d.ts +4 -4
  619. package/dist/src/functions/wirings/scopes/pikku-command-scopes.js +4 -3
  620. package/dist/src/functions/wirings/secrets/pikku-command-secrets.d.ts +1 -1
  621. package/dist/src/functions/wirings/secrets/pikku-command-secrets.js +1 -1
  622. package/dist/src/functions/wirings/secrets/serialize-secrets-types.js +13 -19
  623. package/dist/src/functions/wirings/setup/serialize-setup-types.d.ts +7 -0
  624. package/dist/src/functions/wirings/setup/serialize-setup-types.js +111 -0
  625. package/dist/src/functions/wirings/triggers/pikku-command-trigger-types.d.ts +4 -4
  626. package/dist/src/functions/wirings/triggers/pikku-command-trigger-types.js +2 -2
  627. package/dist/src/functions/wirings/triggers/pikku-command-trigger.d.ts +1 -1
  628. package/dist/src/functions/wirings/triggers/pikku-command-trigger.js +1 -1
  629. package/dist/src/functions/wirings/triggers/serialize-trigger-meta.js +2 -2
  630. package/dist/src/functions/wirings/triggers/serialize-trigger-types.d.ts +3 -1
  631. package/dist/src/functions/wirings/triggers/serialize-trigger-types.js +18 -11
  632. package/dist/src/functions/wirings/user-admin/pikku-command-user-admin-functions.d.ts +1 -1
  633. package/dist/src/functions/wirings/user-admin/pikku-command-user-admin-functions.js +18 -17
  634. package/dist/src/functions/wirings/user-admin/serialize-user-admin-functions.d.ts +10 -9
  635. package/dist/src/functions/wirings/user-admin/serialize-user-admin-functions.js +67 -49
  636. package/dist/src/functions/wirings/variables/pikku-command-variables.d.ts +1 -1
  637. package/dist/src/functions/wirings/variables/pikku-command-variables.js +1 -1
  638. package/dist/src/functions/wirings/variables/serialize-variables-types.js +12 -16
  639. package/dist/src/functions/wirings/virtual-user/pikku-command-virtual-user-functions.d.ts +1 -1
  640. package/dist/src/functions/wirings/virtual-user/pikku-command-virtual-user-functions.js +4 -3
  641. package/dist/src/functions/wirings/virtual-user/serialize-virtual-user-functions.d.ts +1 -1
  642. package/dist/src/functions/wirings/virtual-user/serialize-virtual-user-functions.js +9 -11
  643. package/dist/src/functions/wirings/webhook/pikku-command-webhook.d.ts +1 -1
  644. package/dist/src/functions/wirings/webhook/pikku-command-webhook.js +6 -6
  645. package/dist/src/functions/wirings/webhook/serialize-webhook.d.ts +1 -1
  646. package/dist/src/functions/wirings/webhook/serialize-webhook.js +3 -2
  647. package/dist/src/functions/wirings/workflow/pikku-command-workflow-routes.d.ts +1 -1
  648. package/dist/src/functions/wirings/workflow/pikku-command-workflow-routes.js +4 -4
  649. package/dist/src/functions/wirings/workflow/pikku-command-workflow.d.ts +1 -1
  650. package/dist/src/functions/wirings/workflow/pikku-command-workflow.js +14 -5
  651. package/dist/src/functions/wirings/workflow/serialize-personas.js +2 -1
  652. package/dist/src/functions/wirings/workflow/serialize-scenario-step-map.d.ts +1 -2
  653. package/dist/src/functions/wirings/workflow/serialize-scenario-types.d.ts +2 -0
  654. package/dist/src/functions/wirings/workflow/serialize-scenario-types.js +511 -0
  655. package/dist/src/functions/wirings/workflow/serialize-workflow-map.d.ts +1 -2
  656. package/dist/src/functions/wirings/workflow/serialize-workflow-map.js +1 -1
  657. package/dist/src/functions/wirings/workflow/serialize-workflow-meta.js +4 -4
  658. package/dist/src/functions/wirings/workflow/serialize-workflow-registration.js +0 -4
  659. package/dist/src/functions/wirings/workflow/serialize-workflow-routes.d.ts +1 -1
  660. package/dist/src/functions/wirings/workflow/serialize-workflow-routes.js +3 -2
  661. package/dist/src/functions/wirings/workflow/serialize-workflow-types.d.ts +1 -1
  662. package/dist/src/functions/wirings/workflow/serialize-workflow-types.js +28 -441
  663. package/dist/src/functions/workflows/all.workflow.d.ts +1 -1
  664. package/dist/src/functions/workflows/all.workflow.js +83 -27
  665. package/dist/src/middleware/log-command-info-and-time.d.ts +1 -1
  666. package/dist/src/server/bun-server-runner.d.ts +1 -1
  667. package/dist/src/server/content-signing-jwt.js +1 -1
  668. package/dist/src/server/dev-server-runner.interface.d.ts +1 -1
  669. package/dist/src/server/node-server-runner.d.ts +1 -1
  670. package/dist/src/server/node-server-runner.js +5 -2
  671. package/dist/src/services/cli-logger.service.d.ts +1 -1
  672. package/dist/src/services/cli-logger.service.js +1 -1
  673. package/dist/src/services.d.ts +9 -6
  674. package/dist/src/services.js +22 -6
  675. package/dist/src/utils/file-writer.d.ts +2 -0
  676. package/dist/src/utils/file-writer.js +37 -1
  677. package/dist/src/utils/is-deploy-codegen.d.ts +21 -0
  678. package/dist/src/utils/is-deploy-codegen.js +23 -0
  679. package/dist/src/utils/leaf-import-path.d.ts +16 -0
  680. package/dist/src/utils/leaf-import-path.js +15 -0
  681. package/dist/src/utils/parse-cli-filters.js +15 -35
  682. package/dist/src/utils/pikku-cli-config.d.ts +11 -0
  683. package/dist/src/utils/pikku-cli-config.js +82 -12
  684. package/dist/src/utils/remove-legacy-scaffold-file.d.ts +14 -0
  685. package/dist/src/utils/remove-legacy-scaffold-file.js +36 -1
  686. package/dist/src/utils/resolve-scaffold-feature.js +5 -1
  687. package/dist/src/utils/schema-diff.d.ts +22 -0
  688. package/dist/src/utils/schema-diff.js +190 -0
  689. package/dist/src/utils/serialize-meta-ts.js +1 -1
  690. package/dist/src/utils/serialize-schemas.d.ts +1 -1
  691. package/dist/src/utils/surface-diff.d.ts +35 -0
  692. package/dist/src/utils/surface-diff.js +183 -0
  693. package/dist/src/utils/surface.d.ts +51 -0
  694. package/dist/src/utils/surface.js +156 -0
  695. package/dist/src/utils/tsc-check.d.ts +1 -1
  696. package/dist/src/utils/tsc-check.js +1 -1
  697. package/dist/tsconfig.tsbuildinfo +1 -1
  698. package/package.json +53 -44
  699. package/surface.json +4464 -0
  700. package/console-app/assets/abnfDiagram-VRR7QNED-DTI8lQi3.js +0 -1
  701. package/console-app/assets/arc-B_XK0Xbk.js +0 -1
  702. package/console-app/assets/architecture-TIHT7OUA-BtQ4ypaP.js +0 -1
  703. package/console-app/assets/architectureDiagram-ZJ3FMSHR-CzE1T938.js +0 -36
  704. package/console-app/assets/c4Diagram-LMCZKHZV-DSsAqAm5.js +0 -10
  705. package/console-app/assets/channel-yWsB39zH.js +0 -1
  706. package/console-app/assets/chunk-52WLFC77-DkXgWHeH.js +0 -10
  707. package/console-app/assets/chunk-EX3LRPZG-0GIQyrn1.js +0 -231
  708. package/console-app/assets/chunk-FWX5IMBZ-DZvpxO7-.js +0 -2
  709. package/console-app/assets/chunk-ICXQ74PX-CzAIiCX5.js +0 -2
  710. package/console-app/assets/chunk-OGEWGWER-DhmfsQT_.js +0 -1
  711. package/console-app/assets/chunk-PUDLZKDR-BMAILUQ6.js +0 -156
  712. package/console-app/assets/chunk-RYQCIY6F-9OVlGtkS.js +0 -1
  713. package/console-app/assets/chunk-VAUOI2AC-DbUlDq35.js +0 -1
  714. package/console-app/assets/chunk-WYO6CB5R-cQuwndtk.js +0 -127
  715. package/console-app/assets/chunk-XXDRQBXY-D0yYTMY0.js +0 -1
  716. package/console-app/assets/chunk-ZIRB5QZD-H-kepumB.js +0 -32
  717. package/console-app/assets/classDiagram-OUVF2IWQ-jBNBOKfR.js +0 -1
  718. package/console-app/assets/classDiagram-v2-EOCWNBFH-jBNBOKfR.js +0 -1
  719. package/console-app/assets/cose-bilkent-JH36ORCC-D8cALtKZ.js +0 -1
  720. package/console-app/assets/cynefin-VYW2F7L2-BphwdLzc.js +0 -1
  721. package/console-app/assets/cynefinDiagram-TSTJHNR4-7Rk31pXX.js +0 -62
  722. package/console-app/assets/cytoscape.esm-h6BdjjI9.js +0 -321
  723. package/console-app/assets/dagre-CXRCoUWR.js +0 -1
  724. package/console-app/assets/dagre-VKFMJZFB-e8-5QJxJ.js +0 -4
  725. package/console-app/assets/defaultLocale-C8Fc0cco.js +0 -1
  726. package/console-app/assets/diagram-G47NLZAW-F_m68BCv.js +0 -24
  727. package/console-app/assets/diagram-NH7WQ7WH-5p6A3YHp.js +0 -24
  728. package/console-app/assets/diagram-WEI45ONY-1gqT-Dqp.js +0 -41
  729. package/console-app/assets/dist-DQ3gF-0S.js +0 -1
  730. package/console-app/assets/ebnfDiagram-CCIWWBDH-Dsfd8DxK.js +0 -1
  731. package/console-app/assets/eventmodeling-45OFAUF4-BSTAXikh.js +0 -1
  732. package/console-app/assets/flowDiagram-23GEKE2U-zX29jtvN.js +0 -1
  733. package/console-app/assets/ganttDiagram-NO4QXBWP-2of9JObw.js +0 -292
  734. package/console-app/assets/gitGraph-TEB2WS4Q-q2ow8moS.js +0 -1
  735. package/console-app/assets/graphlib-B8gBHxth.js +0 -1
  736. package/console-app/assets/index-CTO5cTAD.css +0 -1
  737. package/console-app/assets/index-FDk51Irw.js +0 -255
  738. package/console-app/assets/info-DKCQHKI2-DA35x9Eq.js +0 -1
  739. package/console-app/assets/infoDiagram-FWYZ7A6U-wBw6slQd.js +0 -2
  740. package/console-app/assets/init-D6jRqBbL.js +0 -1
  741. package/console-app/assets/linear-B-Zu24zW.js +0 -1
  742. package/console-app/assets/map-DsCK-0Cs.js +0 -1
  743. package/console-app/assets/mermaid.core-HtlOIxsD.js +0 -11
  744. package/console-app/assets/packet-7NZHBO7P-CvZpWSge.js +0 -1
  745. package/console-app/assets/path-BWPyau1x.js +0 -1
  746. package/console-app/assets/pegDiagram-2B236MQR-Bw6WA3kx.js +0 -1
  747. package/console-app/assets/pie-RZYD4A2V-cW9hD9gn.js +0 -1
  748. package/console-app/assets/pieDiagram-ENE6RG2P-DkD_01Ea.js +0 -39
  749. package/console-app/assets/radar-I7S5WNFK-tOWig5fu.js +0 -1
  750. package/console-app/assets/railroad-3IZDKUUU-tZ2PcrQC.js +0 -1
  751. package/console-app/assets/railroad-abnf-AHOZXSZD-D3lzFQzK.js +0 -1
  752. package/console-app/assets/railroad-ebnf-EBAXGLYW-DRp6_rsA.js +0 -1
  753. package/console-app/assets/railroad-peg-LSFZ7HO6-CuWNWp3P.js +0 -1
  754. package/console-app/assets/railroadDiagram-RFXS5EU6-Dljzejc8.js +0 -1
  755. package/console-app/assets/sequenceDiagram-DBY2YBRQ-CXysYi1c.js +0 -162
  756. package/console-app/assets/src-Bilm7g2t.js +0 -1
  757. package/console-app/assets/stateDiagram-2N3HPSRC-C8aGjwyh.js +0 -1
  758. package/console-app/assets/stateDiagram-v2-6OUMAXLB-C21qKRsf.js +0 -1
  759. package/console-app/assets/swimlanes-5IMT3BWC-VaTW8Eyb.js +0 -2
  760. package/console-app/assets/swimlanesDiagram-G3AALYLV-CCQS8jgU.js +0 -8
  761. package/console-app/assets/timeline-definition-FHXFAJF6-D88F4W4L.js +0 -120
  762. package/console-app/assets/treeView-QDETBFTQ-hN0LxmWJ.js +0 -1
  763. package/console-app/assets/treemap-6X3UGDF4-Cz4whnzW.js +0 -1
  764. package/console-app/assets/vennDiagram-L72KCM5P-CoW2kun8.js +0 -34
  765. package/console-app/assets/wardley-OPB4EBWU-l9vWUHbB.js +0 -1
  766. package/dist/src/functions/db/coercion-plugin.d.ts +0 -7
  767. package/dist/src/functions/db/coercion-plugin.js +0 -103
  768. package/dist/src/functions/wirings/ai-agent/pikku-command-ai-agent-types.d.ts +0 -1
  769. package/dist/src/functions/wirings/ai-agent/pikku-command-ai-agent.d.ts +0 -1
  770. package/dist/src/functions/wirings/ai-agent/pikku-command-public-agent.d.ts +0 -1
  771. package/dist/src/functions/wirings/ai-agent/serialize-ai-agent-types.d.ts +0 -1
  772. package/dist/src/functions/wirings/ai-agent/serialize-public-agent.d.ts +0 -5
  773. package/dist/src/functions/wirings/ai-scorer/pikku-command-ai-scorer.d.ts +0 -1
  774. package/dist/src/functions/wirings/console/pikku-command-node-types.d.ts +0 -1
  775. package/dist/src/functions/wirings/console/pikku-command-node-types.js +0 -21
  776. package/dist/src/functions/wirings/console/serialize-node-types.d.ts +0 -1
  777. package/dist/src/functions/wirings/console/serialize-node-types.js +0 -11
  778. package/dist/src/functions/wirings/functions/pikku-command-function-types.d.ts +0 -7
  779. package/dist/src/functions/wirings/functions/pikku-command-function-types.js +0 -43
  780. package/dist/src/functions/wirings/functions/serialize-pikku-types-hub.d.ts +0 -4
  781. package/dist/src/functions/wirings/functions/serialize-pikku-types-hub.js +0 -36
  782. /package/dist/.pikku/schemas/schemas/{PikkuAIAgentOutput.schema.json → PikkuAgentOutput.schema.json} +0 -0
  783. /package/dist/.pikku/schemas/schemas/{PikkuAIScorerOutput.schema.json → PikkuAgentScorerOutput.schema.json} +0 -0
  784. /package/dist/.pikku/schemas/schemas/{PikkuFunctionTypesInput.schema.json → PikkuGatewayTypesInput.schema.json} +0 -0
  785. /package/dist/src/functions/wirings/{ai-agent → agent}/serialize-agent-map.js +0 -0
  786. /package/dist/src/functions/wirings/{ai-agent → agent}/serialize-model-aliases.d.ts +0 -0
  787. /package/dist/src/functions/wirings/{ai-scorer → agent-scorer}/serialize-scorer-names.js +0 -0
@@ -0,0 +1,168 @@
1
+ /**
2
+ * Generates the authorization surface — who may call a function, and the
3
+ * credentials a call is made with. Permissions and auth gates were on the
4
+ * function leaf, where they sat next to the definers as if writing a function
5
+ * meant deciding who could reach it; they are a separate decision, taken once
6
+ * and reused across wirings, so they are a separate import.
7
+ *
8
+ * `PikkuPermission` is declared here rather than beside the function config that
9
+ * references it; that config imports it back, which is a type-only edge and
10
+ * carries no runtime cycle.
11
+ */
12
+ export const serializeAuthGuards = (functionTypesImportPath, packageName) => {
13
+ const packageNameValue = packageName ? `'${packageName}'` : 'null';
14
+ return `/**
15
+ * Permission, auth gate and credential definitions
16
+ */
17
+
18
+ import type { PikkuWire, SecretlessServices } from '@pikku/core/types'
19
+ import type {
20
+ CorePermissionGroup,
21
+ CorePikkuAuth,
22
+ CorePikkuAuthConfig,
23
+ CorePikkuPermission,
24
+ } from '@pikku/core/function'
25
+ import { pikkuAuth as pikkuAuthCore } from '@pikku/core/function'
26
+ import { addGlobalPermission as addGlobalPermissionCore } from '@pikku/core/middleware'
27
+ import type {
28
+ Services,
29
+ Session,
30
+ SingletonServices,
31
+ WiredServices,
32
+ WiredSingletonServices,
33
+ } from '${functionTypesImportPath}'
34
+
35
+ export { defineCredential } from '@pikku/core/credential'
36
+
37
+ /** \`WiredSingletonServices\` without \`secrets\`, for auth gates. */
38
+ type WiredAuthServices = SecretlessServices<WiredSingletonServices>
39
+
40
+ /**
41
+ * Type-safe API permission definition that integrates with your application's session type.
42
+ * Use this to define authorization logic for your API endpoints.
43
+ *
44
+ * @template In - The input type that the permission check will receive
45
+ * @template RequiredServices - The services required for this permission check
46
+ */
47
+ export type PikkuPermission<In = unknown, RequiredServices extends SecretlessServices<Services> = WiredServices> = CorePikkuPermission<In, RequiredServices, PikkuWire<In, never, false, Session>>
48
+
49
+ /**
50
+ * Configuration object for creating a permission with metadata
51
+ */
52
+ type PikkuPermissionConfig<In = unknown, RequiredServices extends SecretlessServices<Services> = WiredServices> = {
53
+ /** The permission function */
54
+ func: PikkuPermission<In, RequiredServices>
55
+ /** Optional human-readable name for the permission */
56
+ name?: string
57
+ /** Optional description of what the permission checks */
58
+ description?: string
59
+ }
60
+
61
+ /**
62
+ * Factory function for creating permissions with tree-shaking support.
63
+ * Supports both direct function and configuration object syntax.
64
+ *
65
+ * @example
66
+ * \`\`\`typescript
67
+ * // Direct function syntax
68
+ * const permission = pikkuPermission(async ({ logger }, data, { session }) => {
69
+ * const session = await session?.get()
70
+ * return session?.role === 'admin'
71
+ * })
72
+ *
73
+ * // Configuration object syntax with metadata
74
+ * const adminPermission = pikkuPermission({
75
+ * name: 'Admin Permission',
76
+ * description: 'Checks if user has admin role',
77
+ * func: async ({ logger }, data, { session }) => {
78
+ * const session = await session?.get()
79
+ * return session?.role === 'admin'
80
+ * }
81
+ * })
82
+ * \`\`\`
83
+ */
84
+ export const pikkuPermission = <In>(
85
+ permission: PikkuPermission<In> | PikkuPermissionConfig<In>
86
+ ): PikkuPermission<In> => {
87
+ return typeof permission === 'function' ? permission : permission.func
88
+ }
89
+
90
+ /**
91
+ * Type-safe auth-only permission that only needs services and session.
92
+ * Use this for upfront authorization gates (MCP tools, AI agents, workflows)
93
+ * where request data isn't available yet.
94
+ *
95
+ * @template RequiredServices - The services required for this auth check
96
+ */
97
+ type PikkuAuth<RequiredServices extends SecretlessServices<SingletonServices> = WiredAuthServices> = CorePikkuAuth<RequiredServices, Session>
98
+
99
+ /**
100
+ * Configuration object for creating an auth permission with metadata
101
+ */
102
+ type PikkuAuthConfig<RequiredServices extends SecretlessServices<SingletonServices> = WiredAuthServices> = CorePikkuAuthConfig<RequiredServices, Session>
103
+
104
+ /**
105
+ * Factory function for creating auth-only permissions with tree-shaking support.
106
+ * Auth permissions only receive services and session (no request data),
107
+ * making them evaluable before request data is available.
108
+ *
109
+ * @example
110
+ * \\\`\\\`\\\`typescript
111
+ * const isAuthenticated = pikkuAuth(async ({ logger }, session) => {
112
+ * return !!session
113
+ * })
114
+ *
115
+ * const isAdmin = pikkuAuth({
116
+ * name: 'Admin Auth',
117
+ * description: 'Checks if user is an admin',
118
+ * func: async ({ logger }, session) => {
119
+ * return session?.role === 'admin'
120
+ * }
121
+ * })
122
+ * \\\`\\\`\\\`
123
+ */
124
+ export const pikkuAuth = <RequiredServices extends SecretlessServices<SingletonServices> = WiredAuthServices>(
125
+ auth: PikkuAuth<RequiredServices> | PikkuAuthConfig<RequiredServices>
126
+ ): PikkuPermission<any, any> => {
127
+ return pikkuAuthCore(auth as any) as any
128
+ }
129
+
130
+ /**
131
+ * Factory function for creating permission factories
132
+ * Use this when your permission needs configuration/input parameters
133
+ *
134
+ * @example
135
+ * \`\`\`typescript
136
+ * export const requireRole = pikkuPermissionFactory<{ role: string }>(({
137
+ * role
138
+ * }) => {
139
+ * return pikkuPermission(async ({ logger }, data, { session }) => {
140
+ * if (!session || session.role !== role) {
141
+ * logger.warn(\`Permission denied: required role '\${role}'\`)
142
+ * return false
143
+ * }
144
+ * return true
145
+ * })
146
+ * })
147
+ * \`\`\`
148
+ */
149
+ export const pikkuPermissionFactory = <In = any>(
150
+ factory: (input: In) => PikkuPermission<any>
151
+ ): ((input: In) => PikkuPermission<any>) => {
152
+ return factory
153
+ }
154
+
155
+ /**
156
+ * Wire-agnostic global permissions. Runs at the top of every wiring's
157
+ * permission resolution — before wire-, tag-, and function-level entries.
158
+ *
159
+ * Resolution order: global -> wire -> tag -> function.
160
+ *
161
+ * @example
162
+ * addGlobalPermission([signedInUser])
163
+ */
164
+ export const addGlobalPermission = <In = unknown>(permissions: CorePermissionGroup<PikkuPermission<In>> | PikkuPermission<In>[]) => {
165
+ addGlobalPermissionCore(permissions as any, ${packageNameValue})
166
+ }
167
+ `;
168
+ };
@@ -4,7 +4,7 @@
4
4
  * `SingletonServices` type for the generic `CoreSingletonServices`. This lets
5
5
  * users write:
6
6
  *
7
- * import { pikkuBetterAuth } from '#pikku'
7
+ * import { pikkuBetterAuth } from '#pikku/auth'
8
8
  *
9
9
  * and get proper autocomplete on the factory's `services` param (e.g.
10
10
  * `(services) => betterAuth({ database: { db: services.kysely } })` types
@@ -23,13 +23,13 @@
23
23
  * with no inline `getSecrets<{ ... }>()` generic, because the secret types flow
24
24
  * from the generated `CredentialsMap`.
25
25
  *
26
- * The file is re-exported from `.pikku/pikku-types.gen.ts` (the `#pikku` hub)
27
- * so the single import resolves correctly.
26
+ * The file is the `#pikku/auth` leaf's entry, so a project imports it as
27
+ * `#pikku/auth` and gets nothing else.
28
28
  */
29
29
  /**
30
30
  * A minimal `auth.types.ts` written during bootstrap (before the inspector has
31
31
  * run, so the typed wrapper above can't be built yet). It re-exports the raw
32
- * `pikkuBetterAuth` so `import { pikkuBetterAuth } from '#pikku'` resolves while
32
+ * `pikkuBetterAuth` so `import { pikkuBetterAuth } from '#pikku/auth'` resolves while
33
33
  * codegen is still in its bootstrap state — otherwise the first full inspect (or
34
34
  * a standalone `pikku db generate`) crashes importing the user's auth file with
35
35
  * "does not provide an export named 'pikkuBetterAuth'". The typed wrapper from
@@ -5,7 +5,7 @@ import { getFileImportRelativePath } from '../../../utils/file-import-path.js';
5
5
  * `SingletonServices` type for the generic `CoreSingletonServices`. This lets
6
6
  * users write:
7
7
  *
8
- * import { pikkuBetterAuth } from '#pikku'
8
+ * import { pikkuBetterAuth } from '#pikku/auth'
9
9
  *
10
10
  * and get proper autocomplete on the factory's `services` param (e.g.
11
11
  * `(services) => betterAuth({ database: { db: services.kysely } })` types
@@ -24,13 +24,13 @@ import { getFileImportRelativePath } from '../../../utils/file-import-path.js';
24
24
  * with no inline `getSecrets<{ ... }>()` generic, because the secret types flow
25
25
  * from the generated `CredentialsMap`.
26
26
  *
27
- * The file is re-exported from `.pikku/pikku-types.gen.ts` (the `#pikku` hub)
28
- * so the single import resolves correctly.
27
+ * The file is the `#pikku/auth` leaf's entry, so a project imports it as
28
+ * `#pikku/auth` and gets nothing else.
29
29
  */
30
30
  /**
31
31
  * A minimal `auth.types.ts` written during bootstrap (before the inspector has
32
32
  * run, so the typed wrapper above can't be built yet). It re-exports the raw
33
- * `pikkuBetterAuth` so `import { pikkuBetterAuth } from '#pikku'` resolves while
33
+ * `pikkuBetterAuth` so `import { pikkuBetterAuth } from '#pikku/auth'` resolves while
34
34
  * codegen is still in its bootstrap state — otherwise the first full inspect (or
35
35
  * a standalone `pikku db generate`) crashes importing the user's auth file with
36
36
  * "does not provide an export named 'pikkuBetterAuth'". The typed wrapper from
@@ -1 +1 @@
1
- export declare const pikkuChannels: import("#pikku").PikkuFunctionSessionlessConfig<void, void, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<void, void, "rpc" | "session", import("#pikku").WiredServices, unknown>, undefined, undefined>;
1
+ export declare const pikkuChannels: import("#pikku/function").PikkuFunctionConfig<void, void, "rpc" | "session", import("#pikku/function").PikkuFunctionSessionless<void, void, "rpc" | "session", import("#pikku/function").WiredServices, unknown> | import("#pikku/function").PikkuFunction<void, void, "rpc" | "session", import("#pikku/function").WiredServices>, undefined, undefined>;
@@ -1,4 +1,4 @@
1
- import { pikkuVoidFunc } from '#pikku';
1
+ import { pikkuVoidFunc } from '#pikku/function';
2
2
  import { serializeFileImports } from '../../../utils/file-imports-serializer.js';
3
3
  import { writeFileInDir } from '../../../utils/file-writer.js';
4
4
  import { logCommandInfoAndTime } from '../../../middleware/log-command-info-and-time.js';
@@ -26,7 +26,7 @@ export const pikkuChannels = pikkuVoidFunc({
26
26
  const importStatement = supportsImportAttributes
27
27
  ? `import metaData from '${jsonImportPath}' with { type: 'json' }`
28
28
  : `import metaData from '${jsonImportPath}'`;
29
- await writeFileInDir(logger, channelsWiringMetaFile, `import { pikkuState } from '@pikku/core/ecosystem'\nimport { ChannelsMeta } from '@pikku/core/channel'\n${importStatement}\npikkuState(null, 'channel', 'meta', metaData as ChannelsMeta)`);
29
+ await writeFileInDir(logger, channelsWiringMetaFile, `import { pikkuState } from '@pikku/core/state'\nimport { ChannelsMeta } from '@pikku/core/channel'\n${importStatement}\npikkuState(null, 'channel', 'meta', metaData as ChannelsMeta)`);
30
30
  }
31
31
  },
32
32
  middleware: [
@@ -1 +1 @@
1
- export declare const pikkuChannelTypes: import("#pikku").PikkuFunctionConfig<void, void, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<void, void, "rpc" | "session", import("#pikku").WiredServices, unknown> | import("#pikku").PikkuFunction<void, void, "rpc" | "session", import("#pikku").WiredServices>, undefined, undefined>;
1
+ export declare const pikkuChannelTypes: import("#pikku/function").PikkuFunctionConfig<void, void, "rpc" | "session", import("#pikku/function").PikkuFunctionSessionless<void, void, "rpc" | "session", import("#pikku/function").WiredServices, unknown> | import("#pikku/function").PikkuFunction<void, void, "rpc" | "session", import("#pikku/function").WiredServices>, undefined, undefined>;
@@ -1,13 +1,16 @@
1
- import { pikkuSessionlessFunc } from '#pikku';
1
+ import { pikkuSessionlessFunc } from '#pikku/function';
2
2
  import { writeFileInDir } from '../../../utils/file-writer.js';
3
3
  import { getFileImportRelativePath } from '../../../utils/file-import-path.js';
4
4
  import { logCommandInfoAndTime } from '../../../middleware/log-command-info-and-time.js';
5
5
  import { serializeChannelTypes } from './serialize-channel-types.js';
6
6
  export const pikkuChannelTypes = pikkuSessionlessFunc({
7
7
  func: async ({ logger, config }) => {
8
- const { channelsTypesFile, functionTypesFile, packageMappings, addonName } = config;
8
+ const { channelsTypesFile, functionTypesFile, middlewareTypesFile, packageMappings, } = config;
9
9
  const functionTypesImportPath = getFileImportRelativePath(channelsTypesFile, functionTypesFile, packageMappings);
10
- const content = serializeChannelTypes(functionTypesImportPath, addonName);
10
+ const middlewareTypesImportPath = getFileImportRelativePath(channelsTypesFile, middlewareTypesFile, packageMappings);
11
+ const content = serializeChannelTypes(functionTypesImportPath, middlewareTypesImportPath, getFileImportRelativePath(channelsTypesFile, config.authGuardsFile, packageMappings), {
12
+ addon: !!config.addon,
13
+ });
11
14
  await writeFileInDir(logger, channelsTypesFile, content);
12
15
  },
13
16
  middleware: [
@@ -1 +1 @@
1
- export declare const pikkuChannelsMap: import("#pikku").PikkuFunctionConfig<void, void, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<void, void, "rpc" | "session", import("#pikku").WiredServices, unknown> | import("#pikku").PikkuFunction<void, void, "rpc" | "session", import("#pikku").WiredServices>, undefined, undefined>;
1
+ export declare const pikkuChannelsMap: import("#pikku/function").PikkuFunctionConfig<void, void, "rpc" | "session", import("#pikku/function").PikkuFunctionSessionless<void, void, "rpc" | "session", import("#pikku/function").WiredServices, unknown> | import("#pikku/function").PikkuFunction<void, 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 { writeFileInDir } from '../../../utils/file-writer.js';
3
3
  import { logCommandInfoAndTime } from '../../../middleware/log-command-info-and-time.js';
4
4
  import { serializeTypedChannelsMap } from './serialize-typed-channel-map.js';
@@ -1 +1 @@
1
- export declare const pikkuCommandChannels: import("#pikku").PikkuFunctionConfig<void, boolean | undefined, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<void, boolean | undefined, "rpc" | "session", import("#pikku").WiredServices, unknown> | import("#pikku").PikkuFunction<void, boolean | undefined, "rpc" | "session", import("#pikku").WiredServices>, undefined, undefined>;
1
+ export declare const pikkuCommandChannels: import("#pikku/function").PikkuFunctionConfig<void, boolean | undefined, "rpc" | "session", import("#pikku/function").PikkuFunctionSessionless<void, boolean | undefined, "rpc" | "session", import("#pikku/function").WiredServices, unknown> | import("#pikku/function").PikkuFunction<void, boolean | undefined, "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 { serializeFileImports } from '../../../utils/file-imports-serializer.js';
3
3
  import { writeFileInDir } from '../../../utils/file-writer.js';
4
4
  import { logCommandInfoAndTime } from '../../../middleware/log-command-info-and-time.js';
@@ -41,7 +41,7 @@ export const pikkuCommandChannels = pikkuSessionlessFunc({
41
41
  const importStatement = supportsImportAttributes
42
42
  ? `import metaData from '${jsonImportPath}' with { type: 'json' }`
43
43
  : `import metaData from '${jsonImportPath}'`;
44
- await writeFileInDir(logger, channelsWiringMetaFile, `import { pikkuState } from '@pikku/core/ecosystem'\nimport type { ChannelsMeta } from '@pikku/core/channel'\n${importStatement}\npikkuState(null, 'channel', 'meta', metaData as ChannelsMeta)`);
44
+ await writeFileInDir(logger, channelsWiringMetaFile, `import { pikkuState } from '@pikku/core/state'\nimport type { ChannelsMeta } from '@pikku/core/channel'\n${importStatement}\npikkuState(null, 'channel', 'meta', metaData as ChannelsMeta)`);
45
45
  return true;
46
46
  },
47
47
  middleware: [
@@ -1,4 +1,6 @@
1
1
  /**
2
2
  * Generates type definitions for WebSocket channel wirings
3
3
  */
4
- export declare const serializeChannelTypes: (functionTypesImportPath: string, packageName?: string) => string;
4
+ export declare const serializeChannelTypes: (functionTypesImportPath: string, middlewareTypesImportPath: string, authTypesImportPath: string, { addon }?: {
5
+ addon?: boolean;
6
+ }) => string;
@@ -1,16 +1,20 @@
1
1
  /**
2
2
  * Generates type definitions for WebSocket channel wirings
3
3
  */
4
- export const serializeChannelTypes = (functionTypesImportPath, packageName) => {
5
- const packageNameValue = packageName ? `'${packageName}'` : 'null';
4
+ export const serializeChannelTypes = (functionTypesImportPath, middlewareTypesImportPath, authTypesImportPath, { addon = false } = {}) => {
6
5
  return `/**
7
6
  * Channel-specific type definitions for tree-shaking optimization
8
7
  */
9
8
 
10
- import { CoreChannel, CorePikkuChannelMiddleware, CorePikkuChannelMiddlewareFactory, wireChannel as wireChannelCore, defineChannelRoutes as defineChannelRoutesCore, addChannelMiddleware as addChannelMiddlewareCore } from '@pikku/core/channel'
11
- import { AssertHTTPWiringParams } from '@pikku/core/http'
12
- import type { PikkuFunctionConfig, PikkuFunctionSessionless, PikkuPermission, PikkuMiddleware, Services } from '${functionTypesImportPath}'
13
- import type { CorePermissionGroup } from '@pikku/core'
9
+ import { ${addon ? '' : 'wireChannel as wireChannelCore, '}defineChannelRoutes as defineChannelRoutesCore } from '@pikku/core/channel'
10
+ ${addon
11
+ ? ''
12
+ : `import {
13
+ CoreChannel,
14
+ } from '@pikku/core/channel'\n`}${addon ? '' : `import { AssertHTTPWiringParams } from '@pikku/core/http'\n`}import type { PikkuFunctionConfig, PikkuFunctionSessionless } from '${functionTypesImportPath}'
15
+ import type { PikkuPermission } from '${authTypesImportPath}'
16
+ import type { PikkuMiddleware } from '${middlewareTypesImportPath}'
17
+ import type { CorePermissionGroup } from '@pikku/core/function'
14
18
  import type { StandardSchemaV1 } from '@standard-schema/spec'
15
19
 
16
20
  /**
@@ -18,7 +22,9 @@ import type { StandardSchemaV1 } from '@standard-schema/spec'
18
22
  */
19
23
  type InferSchemaOutput<T> = T extends StandardSchemaV1<any, infer Output> ? Output : never
20
24
 
21
- /**
25
+ ${addon
26
+ ? ''
27
+ : `/**
22
28
  * Type definition for WebSocket channels with typed data exchange.
23
29
  * Supports connection, disconnection, and message handling.
24
30
  * Accepts both session-based (PikkuFunction) and sessionless (PikkuFunctionSessionless) functions.
@@ -35,6 +41,7 @@ type ChannelWiring<ChannelData, Channel extends string> = CoreChannel<
35
41
  PikkuPermission,
36
42
  PikkuMiddleware
37
43
  >
44
+ `}
38
45
 
39
46
  /**
40
47
  * Creates a function that handles WebSocket channel connections.
@@ -136,7 +143,9 @@ export function pikkuChannelFunc(func: any) {
136
143
  return typeof func === 'function' ? { func } : func
137
144
  }
138
145
 
139
- /**
146
+ ${addon
147
+ ? ''
148
+ : `/**
140
149
  * Registers a WebSocket channel with the Pikku framework.
141
150
  *
142
151
  * @template ChannelData - Type of data associated with the channel
@@ -148,7 +157,7 @@ export const wireChannel = <ChannelData, Channel extends string>(
148
157
  ) => {
149
158
  wireChannelCore(channel as any)
150
159
  }
151
-
160
+ `}
152
161
  /**
153
162
  * Type-safe helper for defining channel message routes that can be composed.
154
163
  * Returns the routes record as-is for use with wireChannel's onMessageWiring.
@@ -161,21 +170,6 @@ export function defineChannelRoutes<T extends Record<string, any>>(routes: T): T
161
170
  return defineChannelRoutesCore(routes)
162
171
  }
163
172
 
164
- export type PikkuChannelMiddleware<RequiredServices extends Services = Services, Event = unknown> = CorePikkuChannelMiddleware<RequiredServices, Event>
165
-
166
- export const pikkuChannelMiddleware = <RequiredServices extends Services = Services, Event = unknown>(
167
- middleware: PikkuChannelMiddleware<RequiredServices, Event>
168
- ): PikkuChannelMiddleware<RequiredServices, Event> => {
169
- return middleware
170
- }
171
-
172
- export const pikkuChannelMiddlewareFactory = <In = any>(
173
- factory: CorePikkuChannelMiddlewareFactory<In>
174
- ): CorePikkuChannelMiddlewareFactory<In> => {
175
- return factory
176
- }
177
173
 
178
- export const addChannelMiddleware = (tag: string, middleware: PikkuChannelMiddleware[]) =>
179
- addChannelMiddlewareCore(tag, middleware, ${packageNameValue})
180
174
  `;
181
175
  };
@@ -1,5 +1,4 @@
1
1
  import type { ChannelsMeta } from '@pikku/core/channel';
2
2
  import type { TypesMap } from '@pikku/inspector';
3
- import type { FunctionsMeta } from '@pikku/core';
4
- import type { Logger } from '@pikku/core/services';
3
+ import type { FunctionsMeta, Logger } from '@pikku/core/services';
5
4
  export declare const serializeTypedChannelsMap: (logger: Logger, relativeToPath: string, packageMappings: Record<string, string>, typesMap: TypesMap, functionsMeta: FunctionsMeta, addonFunctions: Record<string, FunctionsMeta>, channelsMeta: ChannelsMeta, rpcInternalMapDeclarationFile: string) => string;
@@ -1 +1 @@
1
- export declare const pikkuCLIEntry: import("#pikku").PikkuFunctionConfig<void, boolean, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<void, boolean, "rpc" | "session", import("#pikku").WiredServices, unknown> | import("#pikku").PikkuFunction<void, boolean, "rpc" | "session", import("#pikku").WiredServices>, undefined, undefined>;
1
+ export declare const pikkuCLIEntry: import("#pikku/function").PikkuFunctionConfig<void, boolean, "rpc" | "session", import("#pikku/function").PikkuFunctionSessionless<void, boolean, "rpc" | "session", import("#pikku/function").WiredServices, unknown> | import("#pikku/function").PikkuFunction<void, boolean, "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 { writeFileInDir } from '../../../utils/file-writer.js';
3
3
  import { checkRequiredTypes } from '../../../utils/check-required-types.js';
4
4
  import { logCommandInfoAndTime } from '../../../middleware/log-command-info-and-time.js';
@@ -57,7 +57,7 @@ export const pikkuCLIEntry = pikkuSessionlessFunc({
57
57
  `Move it to a source directory like "src/wirings/cli-channel.gen.ts".`);
58
58
  }
59
59
  const channelWireFile = resolvedWirePath;
60
- const channelCode = serializeChannelCLI(programName, programMeta, channelWireFile, visitState.functions.files, config.packageMappings, config.channelsTypesFile, config.functionTypesFile, channelName, channelRoute, config.globalHTTPPrefix || '', visitState.rpc?.wireAddonDeclarations);
60
+ const channelCode = serializeChannelCLI(programName, programMeta, channelWireFile, visitState.functions.files, config.packageMappings, config.channelsTypesFile, config.functionTypesFile, config.middlewareTypesFile, channelName, channelRoute, config.globalHTTPPrefix || '', visitState.rpc?.wireAddonDeclarations);
61
61
  await writeFileInDir(logger, channelWireFile, channelCode);
62
62
  channelWireGenerated = true;
63
63
  logger.debug(`Serialized CLI channel for ${programName}: ${channelWireFile}`);
@@ -1,5 +1,5 @@
1
1
  type CLITypesCommandInput = {
2
2
  bootstrap?: boolean;
3
3
  };
4
- export declare const pikkuCLITypes: import("#pikku").PikkuFunctionConfig<CLITypesCommandInput, void, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<CLITypesCommandInput, void, "rpc" | "session", import("#pikku").WiredServices, unknown> | import("#pikku").PikkuFunction<CLITypesCommandInput, void, "rpc" | "session", import("#pikku").WiredServices>, undefined, undefined>;
4
+ export declare const pikkuCLITypes: import("#pikku/function").PikkuFunctionConfig<CLITypesCommandInput, void, "rpc" | "session", import("#pikku/function").PikkuFunctionSessionless<CLITypesCommandInput, void, "rpc" | "session", import("#pikku/function").WiredServices, unknown> | import("#pikku/function").PikkuFunction<CLITypesCommandInput, void, "rpc" | "session", import("#pikku/function").WiredServices>, undefined, undefined>;
5
5
  export {};
@@ -1,4 +1,4 @@
1
- import { pikkuSessionlessFunc } from '#pikku';
1
+ import { pikkuSessionlessFunc } from '#pikku/function';
2
2
  import { writeFileInDir } from '../../../utils/file-writer.js';
3
3
  import { getFileImportRelativePath } from '../../../utils/file-import-path.js';
4
4
  import { logCommandInfoAndTime } from '../../../middleware/log-command-info-and-time.js';
@@ -10,7 +10,7 @@ export const pikkuCLITypes = pikkuSessionlessFunc({
10
10
  const bootstrap = input?.bootstrap === true;
11
11
  // In bootstrap mode we only need filesAndMethods (userSession/singleton
12
12
  // services types) — skip schema generation. Full mode would dynamic-import
13
- // pikku-types.gen.ts, which re-exports the not-yet-written cli-types file.
13
+ // the not-yet-written cli-types file through '#pikku/cli'.
14
14
  const visitState = bootstrap
15
15
  ? await getInspectorState(false, true, true)
16
16
  : await getInspectorState();
@@ -25,7 +25,7 @@ export const pikkuCLITypes = pikkuSessionlessFunc({
25
25
  if (!userSessionType || !singletonServicesType) {
26
26
  throw new Error('Required types not found');
27
27
  }
28
- const content = serializeCLITypes(functionTypesImportPath, `import type { ${userSessionType.type} } from '${getFileImportRelativePath(cliTypesFile, userSessionType.typePath, packageMappings)}'`, userSessionType.type, `import type { ${singletonServicesType.type} } from '${getFileImportRelativePath(cliTypesFile, singletonServicesType.typePath, packageMappings)}'`, singletonServicesType.type);
28
+ const content = serializeCLITypes(functionTypesImportPath, getFileImportRelativePath(cliTypesFile, config.middlewareTypesFile, packageMappings), `import type { ${userSessionType.type} } from '${getFileImportRelativePath(cliTypesFile, userSessionType.typePath, packageMappings)}'`, userSessionType.type, `import type { ${singletonServicesType.type} } from '${getFileImportRelativePath(cliTypesFile, singletonServicesType.typePath, packageMappings)}'`, singletonServicesType.type);
29
29
  await writeFileInDir(logger, cliTypesFile, content);
30
30
  },
31
31
  middleware: [
@@ -1 +1 @@
1
- export declare const pikkuCLI: import("#pikku").PikkuFunctionConfig<void, boolean | undefined, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<void, boolean | undefined, "rpc" | "session", import("#pikku").WiredServices, unknown> | import("#pikku").PikkuFunction<void, boolean | undefined, "rpc" | "session", import("#pikku").WiredServices>, undefined, undefined>;
1
+ export declare const pikkuCLI: import("#pikku/function").PikkuFunctionConfig<void, boolean | undefined, "rpc" | "session", import("#pikku/function").PikkuFunctionSessionless<void, boolean | undefined, "rpc" | "session", import("#pikku/function").WiredServices, unknown> | import("#pikku/function").PikkuFunction<void, boolean | undefined, "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 { serializeFileImports } from '../../../utils/file-imports-serializer.js';
3
3
  import { writeFileInDir } from '../../../utils/file-writer.js';
4
4
  import { logCommandInfoAndTime } from '../../../middleware/log-command-info-and-time.js';
@@ -41,7 +41,7 @@ export const pikkuCLI = pikkuSessionlessFunc({
41
41
  const importStatement = supportsImportAttributes
42
42
  ? `import metaData from '${jsonImportPath}' with { type: 'json' }`
43
43
  : `import metaData from '${jsonImportPath}'`;
44
- await writeFileInDir(logger, cliWiringMetaFile, `import { pikkuState } from '@pikku/core/ecosystem'\nimport { CLIMeta } from '@pikku/core/cli'\n${importStatement}\npikkuState(null, 'cli', 'meta', metaData as CLIMeta)`);
44
+ await writeFileInDir(logger, cliWiringMetaFile, `import { pikkuState } from '@pikku/core/state'\nimport { CLIMeta } from '@pikku/core/cli'\n${importStatement}\npikkuState(null, 'cli', 'meta', metaData as CLIMeta)`);
45
45
  return true;
46
46
  },
47
47
  middleware: [
@@ -9,5 +9,5 @@ type WireAddonDeclarations = Map<string, {
9
9
  export declare function serializeChannelCLI(programName: string, programMeta: CLIProgramMeta, channelFile: string, functionFiles: Map<string, {
10
10
  path: string;
11
11
  exportedName: string;
12
- }>, packageMappings: Record<string, string>, channelTypesFile: string, functionTypesFile: string, channelName?: string, channelRoute?: string, globalHTTPPrefix?: string, wireAddonDeclarations?: WireAddonDeclarations): string;
12
+ }>, packageMappings: Record<string, string>, channelTypesFile: string, functionTypesFile: string, middlewareTypesFile: string, channelName?: string, channelRoute?: string, globalHTTPPrefix?: string, wireAddonDeclarations?: WireAddonDeclarations): string;
13
13
  export {};
@@ -3,7 +3,7 @@ import { getFileImportRelativePath } from '../../../utils/file-import-path.js';
3
3
  * Serializes a wireChannel call from CLI metadata
4
4
  * This creates a WebSocket backend for all CLI commands
5
5
  */
6
- export function serializeChannelCLI(programName, programMeta, channelFile, functionFiles, packageMappings, channelTypesFile, functionTypesFile, channelName, channelRoute, globalHTTPPrefix = '', wireAddonDeclarations) {
6
+ export function serializeChannelCLI(programName, programMeta, channelFile, functionFiles, packageMappings, channelTypesFile, functionTypesFile, middlewareTypesFile, channelName, channelRoute, globalHTTPPrefix = '', wireAddonDeclarations) {
7
7
  const packageToNamespace = new Map();
8
8
  if (wireAddonDeclarations) {
9
9
  for (const [namespace, decl] of wireAddonDeclarations.entries()) {
@@ -54,14 +54,20 @@ export function serializeChannelCLI(programName, programMeta, channelFile, funct
54
54
  const channelTypesPath = getFileImportRelativePath(channelFile, channelTypesFile, packageMappings);
55
55
  // Get relative path to function types file
56
56
  const functionTypesPath = getFileImportRelativePath(channelFile, functionTypesFile, packageMappings);
57
+ const middlewareTypesPath = getFileImportRelativePath(channelFile, middlewareTypesFile, packageMappings);
57
58
  return `/**
58
59
  * WebSocket channel backend for '${programName}' CLI commands
59
60
  */
60
61
  import { wireChannel } from '${channelTypesPath}'
61
- import { pikkuMiddleware${hasAddonFuncs ? ', ref' : ''}, pikkuSessionlessFunc } from '${functionTypesPath}'
62
+ import { ${hasAddonFuncs ? 'ref, ' : ''}pikkuSessionlessFunc } from '${functionTypesPath}'
63
+ import { pikkuMiddleware } from '${middlewareTypesPath}'
62
64
  import { generateCommandHelp } from '@pikku/core/cli'
63
65
  import { handleRawCLI, type RawCLIFrame } from '@pikku/core/cli/channel'
64
- import { pikkuState, getSingletonServices, getCreateWireServices } from '@pikku/core/ecosystem'
66
+ import {
67
+ pikkuState,
68
+ getSingletonServices,
69
+ getCreateWireServices,
70
+ } from '@pikku/core/state'
65
71
  ${imports}
66
72
 
67
73
  // Middleware to close the channel after CLI command completes
@@ -1,4 +1,4 @@
1
1
  /**
2
2
  * Generates type definitions for CLI wirings
3
3
  */
4
- export declare const serializeCLITypes: (functionTypesImportPath: string, userSessionTypeImport: string, userSessionTypeName: string, singletonServicesTypeImport: string, singletonServicesTypeName: string) => string;
4
+ export declare const serializeCLITypes: (functionTypesImportPath: string, middlewareTypesImportPath: string, userSessionTypeImport: string, userSessionTypeName: string, singletonServicesTypeImport: string, singletonServicesTypeName: string) => string;
@@ -1,14 +1,20 @@
1
1
  /**
2
2
  * Generates type definitions for CLI wirings
3
3
  */
4
- export const serializeCLITypes = (functionTypesImportPath, userSessionTypeImport, userSessionTypeName, singletonServicesTypeImport, singletonServicesTypeName) => {
4
+ export const serializeCLITypes = (functionTypesImportPath, middlewareTypesImportPath, userSessionTypeImport, userSessionTypeName, singletonServicesTypeImport, singletonServicesTypeName) => {
5
5
  return `/**
6
6
 
7
7
  * CLI-specific type definitions for tree-shaking optimization
8
8
  */
9
9
 
10
- import { CoreCLI, wireCLI as wireCLICore, CorePikkuCLIRender, CoreCLICommandConfig, defineCLICommands as defineCLICommandsCore } from '@pikku/core/cli'
11
- import type { PikkuFunctionConfig, PikkuMiddleware } from '${functionTypesImportPath}'
10
+ import { wireCLI as wireCLICore, defineCLICommands as defineCLICommandsCore } from '@pikku/core/cli'
11
+ import {
12
+ CoreCLI,
13
+ CorePikkuCLIRender,
14
+ CoreCLICommandConfig,
15
+ } from '@pikku/core/cli'
16
+ import type { PikkuFunctionConfig } from '${functionTypesImportPath}'
17
+ import type { PikkuMiddleware } from '${middlewareTypesImportPath}'
12
18
  ${userSessionTypeImport}
13
19
  ${singletonServicesTypeImport}
14
20
 
@@ -1 +1 @@
1
- export declare const pikkuConsoleFunctions: import("#pikku").PikkuFunctionConfig<void, boolean, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<void, boolean, "rpc" | "session", import("#pikku").WiredServices, unknown> | import("#pikku").PikkuFunction<void, boolean, "rpc" | "session", import("#pikku").WiredServices>, undefined, undefined>;
1
+ export declare const pikkuConsoleFunctions: import("#pikku/function").PikkuFunctionConfig<void, boolean, "rpc" | "session", import("#pikku/function").PikkuFunctionSessionless<void, boolean, "rpc" | "session", import("#pikku/function").WiredServices, unknown> | import("#pikku/function").PikkuFunction<void, boolean, "rpc" | "session", import("#pikku/function").WiredServices>, undefined, undefined>;
@@ -1,14 +1,15 @@
1
- import { pikkuSessionlessFunc } from '#pikku';
1
+ import { pikkuSessionlessFunc } from '#pikku/function';
2
2
  import { getFileImportRelativePath } from '../../../utils/file-import-path.js';
3
+ import { getLeafImportPath } from '../../../utils/leaf-import-path.js';
3
4
  import { writeFileInDir } from '../../../utils/file-writer.js';
4
5
  import { logCommandInfoAndTime } from '../../../middleware/log-command-info-and-time.js';
5
6
  import { projectDeclaresBetterAuth } from '../../../utils/detect-better-auth.js';
6
7
  import { removeLegacyScaffoldFile } from '../../../utils/remove-legacy-scaffold-file.js';
7
8
  import { serializeConsoleFunctions } from './serialize-console-functions.js';
9
+ import { isDeployCodegen } from '../../../utils/is-deploy-codegen.js';
8
10
  export const pikkuConsoleFunctions = pikkuSessionlessFunc({
9
11
  func: async ({ logger, config, variables }) => {
10
- const deployCodegenFlag = await variables.get('PIKKU_DEPLOY_CODEGEN');
11
- if (deployCodegenFlag === '1') {
12
+ if (await isDeployCodegen(variables)) {
12
13
  return false;
13
14
  }
14
15
  if (config.scaffold?.console && config.consoleSchemasFile) {
@@ -24,9 +25,9 @@ export const pikkuConsoleFunctions = pikkuSessionlessFunc({
24
25
  `Fix: set up Better Auth (add a pikkuBetterAuth(...) config) before scaffolding the console, ` +
25
26
  `or remove "scaffold.console" from pikku.config.json.`);
26
27
  }
27
- const pathToPikkuTypes = getFileImportRelativePath(config.consoleFunctionsFile, config.typesDeclarationFile, config.packageMappings);
28
+ const leaf = (name) => getLeafImportPath(config.consoleFunctionsFile, name, config);
28
29
  const pathToAgentTypes = getFileImportRelativePath(config.consoleFunctionsFile, config.agentTypesFile, config.packageMappings);
29
- const { schemas, functions } = serializeConsoleFunctions(pathToPikkuTypes, pathToAgentTypes, config.globalHTTPPrefix || '');
30
+ const { schemas, functions } = serializeConsoleFunctions(leaf, pathToAgentTypes, config.globalHTTPPrefix || '');
30
31
  await writeFileInDir(logger, config.consoleSchemasFile, schemas);
31
32
  await writeFileInDir(logger, config.consoleFunctionsFile, functions);
32
33
  await removeLegacyScaffoldFile(config.consoleFunctionsFile);
@@ -1 +1 @@
1
- export declare const pikkuNodesMeta: import("#pikku").PikkuFunctionConfig<void, boolean | undefined, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<void, boolean | undefined, "rpc" | "session", import("#pikku").WiredServices, unknown> | import("#pikku").PikkuFunction<void, boolean | undefined, "rpc" | "session", import("#pikku").WiredServices>, undefined, undefined>;
1
+ export declare const pikkuNodesMeta: import("#pikku/function").PikkuFunctionConfig<void, boolean | undefined, "rpc" | "session", import("#pikku/function").PikkuFunctionSessionless<void, boolean | undefined, "rpc" | "session", import("#pikku/function").WiredServices, unknown> | import("#pikku/function").PikkuFunction<void, boolean | undefined, "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 { ErrorCode } from '@pikku/inspector';
3
3
  import { writeFileInDir } from '../../../utils/file-writer.js';
4
4
  import { logCommandInfoAndTime } from '../../../middleware/log-command-info-and-time.js';
@@ -2,4 +2,4 @@ export interface ConsoleGenOutput {
2
2
  schemas: string;
3
3
  functions: string;
4
4
  }
5
- export declare const serializeConsoleFunctions: (pathToPikkuTypes: string, _pathToAgentTypes: string, globalHTTPPrefix?: string) => ConsoleGenOutput;
5
+ export declare const serializeConsoleFunctions: (leaf: (name: string) => string, _pathToAgentTypes: string, globalHTTPPrefix?: string) => ConsoleGenOutput;