@pikku/cli 0.11.1 → 0.11.3

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 (358) hide show
  1. package/.pikku/channel/pikku-channel-types.gen.ts +73 -17
  2. package/.pikku/channel/pikku-channels-map.gen.d.ts +11 -11
  3. package/.pikku/channel/pikku-channels-meta.gen.json +1 -0
  4. package/.pikku/channel/pikku-channels-meta.gen.ts +4 -2
  5. package/.pikku/channel/pikku-channels.gen.ts +1 -1
  6. package/.pikku/cli/pikku-cli-channel.ts +2 -2
  7. package/.pikku/cli/pikku-cli-client.gen.ts +1 -3
  8. package/.pikku/cli/pikku-cli-types.gen.ts +3 -3
  9. package/.pikku/cli/pikku-cli-wirings-meta.gen.json +147 -0
  10. package/.pikku/cli/pikku-cli-wirings-meta.gen.ts +4 -157
  11. package/.pikku/cli/pikku-cli-wirings.gen.ts +3 -3
  12. package/.pikku/cli/pikku-cli.gen.ts +3 -3
  13. package/.pikku/forge/pikku-forge-types.gen.ts +83 -0
  14. package/.pikku/function/pikku-function-types.gen.ts +223 -91
  15. package/.pikku/function/pikku-functions-meta-verbose.gen.json +1030 -0
  16. package/.pikku/function/pikku-functions-meta.gen.json +656 -0
  17. package/.pikku/function/pikku-functions-meta.gen.ts +4 -970
  18. package/.pikku/http/pikku-http-types.gen.ts +20 -4
  19. package/.pikku/http/pikku-http-wirings-map.gen.d.ts +11 -11
  20. package/.pikku/http/pikku-http-wirings-meta.gen.json +9 -0
  21. package/.pikku/http/pikku-http-wirings-meta.gen.ts +4 -10
  22. package/.pikku/http/pikku-http-wirings.gen.ts +1 -1
  23. package/.pikku/mcp/pikku-mcp-types.gen.ts +72 -20
  24. package/.pikku/mcp/pikku-mcp-wirings-meta.gen.json +5 -0
  25. package/.pikku/mcp/pikku-mcp-wirings-meta.gen.ts +6 -4
  26. package/.pikku/mcp/pikku-mcp-wirings.gen.ts +1 -1
  27. package/.pikku/pikku-bootstrap.gen.ts +7 -12
  28. package/.pikku/pikku-services.gen.ts +6 -7
  29. package/.pikku/pikku-types.gen.ts +4 -1
  30. package/.pikku/pikku-websocket.gen.ts +1 -1
  31. package/.pikku/queue/pikku-queue-types.gen.ts +2 -2
  32. package/.pikku/queue/pikku-queue-workers-wirings-map.gen.d.ts +11 -11
  33. package/.pikku/queue/pikku-queue-workers-wirings-meta.gen.json +1 -0
  34. package/.pikku/queue/pikku-queue-workers-wirings-meta.gen.ts +5 -7
  35. package/.pikku/queue/pikku-queue-workers-wirings.gen.ts +1 -1
  36. package/.pikku/rpc/pikku-remote-rpc-workers.gen.ts +5 -2
  37. package/.pikku/rpc/pikku-rpc-wirings-map.gen.d.ts +19 -14
  38. package/.pikku/rpc/pikku-rpc-wirings-map.internal.gen.d.ts +46 -39
  39. package/.pikku/scheduler/pikku-scheduler-types.gen.ts +2 -2
  40. package/.pikku/scheduler/pikku-schedulers-wirings-meta.gen.json +1 -0
  41. package/.pikku/scheduler/pikku-schedulers-wirings-meta.gen.ts +5 -2
  42. package/.pikku/scheduler/pikku-schedulers-wirings.gen.ts +1 -1
  43. package/.pikku/schemas/register.gen.ts +31 -23
  44. package/.pikku/schemas/schemas/PikkuCLIConfig.schema.json +1 -1
  45. package/.pikku/schemas/schemas/PikkuCLIOutput.schema.json +1 -1
  46. package/.pikku/schemas/schemas/PikkuChannelsOutput.schema.json +1 -1
  47. package/.pikku/schemas/schemas/PikkuForgeNodesOutput.schema.json +1 -0
  48. package/.pikku/schemas/schemas/PikkuFunctionsOutput.schema.json +1 -1
  49. package/.pikku/schemas/schemas/PikkuHTTPOutput.schema.json +1 -1
  50. package/.pikku/schemas/schemas/PikkuMCPOutput.schema.json +1 -1
  51. package/.pikku/schemas/schemas/PikkuMiddlewareOutput.schema.json +1 -1
  52. package/.pikku/schemas/schemas/PikkuPackageOutput.schema.json +1 -0
  53. package/.pikku/schemas/schemas/PikkuPermissionsOutput.schema.json +1 -1
  54. package/.pikku/schemas/schemas/PikkuPublicRPCOutput.schema.json +1 -1
  55. package/.pikku/schemas/schemas/PikkuQueueOutput.schema.json +1 -1
  56. package/.pikku/schemas/schemas/PikkuRPCOutput.schema.json +1 -1
  57. package/.pikku/schemas/schemas/PikkuRemoteRPCOutput.schema.json +1 -1
  58. package/.pikku/schemas/schemas/PikkuSchedulerOutput.schema.json +1 -1
  59. package/.pikku/schemas/schemas/PikkuSchemasOutput.schema.json +1 -1
  60. package/.pikku/schemas/schemas/PikkuWorkflowOutput.schema.json +1 -1
  61. package/.pikku/services/config.gen.json +104 -0
  62. package/.pikku/services/getInspectorState.gen.json +10 -0
  63. package/.pikku/services/jwt.gen.json +13 -0
  64. package/.pikku/services/logger.gen.json +25 -0
  65. package/.pikku/services/queueService.gen.json +14 -0
  66. package/.pikku/services/schedulerService.gen.json +17 -0
  67. package/.pikku/services/schema.gen.json +14 -0
  68. package/.pikku/services/secrets.gen.json +13 -0
  69. package/.pikku/services/variables.gen.json +13 -0
  70. package/.pikku/services/workflowService.gen.json +31 -0
  71. package/.pikku/workflow/pikku-workflow-map.gen.d.ts +2 -36
  72. package/.pikku/workflow/pikku-workflow-types.gen.ts +305 -48
  73. package/.pikku/workflow/pikku-workflow-wirings-meta.gen.ts +6 -2
  74. package/.pikku/workflow/pikku-workflow-wirings.gen.ts +1 -2
  75. package/CHANGELOG.md +44 -1
  76. package/bin/pikku.ts +6 -32
  77. package/build.sh +53 -31
  78. package/cli.schema.json +1 -1
  79. package/dist/.pikku/channel/pikku-channel-types.gen.d.ts +51 -10
  80. package/dist/.pikku/channel/pikku-channel-types.gen.js +3 -13
  81. package/dist/.pikku/channel/pikku-channels-meta.gen.js +3 -2
  82. package/dist/.pikku/channel/pikku-channels-meta.gen.json +1 -0
  83. package/dist/.pikku/channel/pikku-channels.gen.d.ts +1 -1
  84. package/dist/.pikku/channel/pikku-channels.gen.js +1 -1
  85. package/dist/.pikku/cli/pikku-cli-channel.js +2 -2
  86. package/dist/.pikku/cli/pikku-cli-client.gen.d.ts +1 -1
  87. package/dist/.pikku/cli/pikku-cli-client.gen.js +1 -3
  88. package/dist/.pikku/cli/pikku-cli-types.gen.d.ts +3 -3
  89. package/dist/.pikku/cli/pikku-cli-types.gen.js +1 -1
  90. package/dist/.pikku/cli/pikku-cli-wirings-meta.gen.js +3 -157
  91. package/dist/.pikku/cli/pikku-cli-wirings-meta.gen.json +147 -0
  92. package/dist/.pikku/cli/pikku-cli-wirings.gen.d.ts +2 -2
  93. package/dist/.pikku/cli/pikku-cli-wirings.gen.js +2 -2
  94. package/dist/.pikku/cli/pikku-cli.gen.d.ts +1 -1
  95. package/dist/.pikku/cli/pikku-cli.gen.js +3 -3
  96. package/dist/.pikku/forge/pikku-forge-types.gen.d.ts +72 -0
  97. package/dist/.pikku/forge/pikku-forge-types.gen.js +55 -0
  98. package/dist/.pikku/function/pikku-function-types.gen.d.ts +141 -99
  99. package/dist/.pikku/function/pikku-function-types.gen.js +52 -62
  100. package/dist/.pikku/function/pikku-functions-meta.gen.js +3 -969
  101. package/dist/.pikku/function/pikku-functions-meta.gen.json +656 -0
  102. package/dist/.pikku/http/pikku-http-types.gen.d.ts +19 -4
  103. package/dist/.pikku/http/pikku-http-types.gen.js +1 -1
  104. package/dist/.pikku/http/pikku-http-wirings-meta.gen.js +3 -10
  105. package/dist/.pikku/http/pikku-http-wirings-meta.gen.json +9 -0
  106. package/dist/.pikku/http/pikku-http-wirings.gen.d.ts +1 -1
  107. package/dist/.pikku/http/pikku-http-wirings.gen.js +1 -1
  108. package/dist/.pikku/mcp/pikku-mcp-types.gen.d.ts +57 -17
  109. package/dist/.pikku/mcp/pikku-mcp-types.gen.js +7 -31
  110. package/dist/.pikku/mcp/pikku-mcp-wirings-meta.gen.js +5 -4
  111. package/dist/.pikku/mcp/pikku-mcp-wirings-meta.gen.json +5 -0
  112. package/dist/.pikku/mcp/pikku-mcp-wirings.gen.d.ts +1 -1
  113. package/dist/.pikku/mcp/pikku-mcp-wirings.gen.js +1 -1
  114. package/dist/.pikku/pikku-bootstrap.gen.d.ts +7 -12
  115. package/dist/.pikku/pikku-bootstrap.gen.js +7 -12
  116. package/dist/.pikku/pikku-services.gen.d.ts +5 -7
  117. package/dist/.pikku/pikku-services.gen.js +3 -5
  118. package/dist/.pikku/pikku-types.gen.d.ts +2 -1
  119. package/dist/.pikku/pikku-types.gen.js +3 -1
  120. package/dist/.pikku/pikku-websocket.gen.d.ts +1 -1
  121. package/dist/.pikku/pikku-websocket.gen.js +1 -1
  122. package/dist/.pikku/queue/pikku-queue-types.gen.d.ts +2 -2
  123. package/dist/.pikku/queue/pikku-queue-types.gen.js +1 -1
  124. package/dist/.pikku/queue/pikku-queue-workers-wirings-meta.gen.js +3 -7
  125. package/dist/.pikku/queue/pikku-queue-workers-wirings-meta.gen.json +1 -0
  126. package/dist/.pikku/queue/pikku-queue-workers-wirings.gen.d.ts +1 -1
  127. package/dist/.pikku/queue/pikku-queue-workers-wirings.gen.js +1 -1
  128. package/dist/.pikku/rpc/pikku-remote-rpc-workers.gen.d.ts +9 -9
  129. package/dist/.pikku/rpc/pikku-remote-rpc-workers.gen.js +5 -2
  130. package/dist/.pikku/scheduler/pikku-scheduler-types.gen.d.ts +2 -2
  131. package/dist/.pikku/scheduler/pikku-scheduler-types.gen.js +1 -1
  132. package/dist/.pikku/scheduler/pikku-schedulers-wirings-meta.gen.js +3 -2
  133. package/dist/.pikku/scheduler/pikku-schedulers-wirings-meta.gen.json +1 -0
  134. package/dist/.pikku/scheduler/pikku-schedulers-wirings.gen.d.ts +1 -1
  135. package/dist/.pikku/scheduler/pikku-schedulers-wirings.gen.js +1 -1
  136. package/dist/.pikku/schemas/register.gen.js +19 -15
  137. package/dist/.pikku/schemas/schemas/PikkuCLIConfig.schema.json +1 -1
  138. package/dist/.pikku/schemas/schemas/PikkuCLIOutput.schema.json +1 -1
  139. package/dist/.pikku/schemas/schemas/PikkuChannelsOutput.schema.json +1 -1
  140. package/dist/.pikku/schemas/schemas/PikkuForgeNodesOutput.schema.json +1 -0
  141. package/dist/.pikku/schemas/schemas/PikkuFunctionsOutput.schema.json +1 -1
  142. package/dist/.pikku/schemas/schemas/PikkuHTTPOutput.schema.json +1 -1
  143. package/dist/.pikku/schemas/schemas/PikkuMCPOutput.schema.json +1 -1
  144. package/dist/.pikku/schemas/schemas/PikkuMiddlewareOutput.schema.json +1 -1
  145. package/dist/.pikku/schemas/schemas/PikkuPackageOutput.schema.json +1 -0
  146. package/dist/.pikku/schemas/schemas/PikkuPermissionsOutput.schema.json +1 -1
  147. package/dist/.pikku/schemas/schemas/PikkuPublicRPCOutput.schema.json +1 -1
  148. package/dist/.pikku/schemas/schemas/PikkuQueueOutput.schema.json +1 -1
  149. package/dist/.pikku/schemas/schemas/PikkuRPCOutput.schema.json +1 -1
  150. package/dist/.pikku/schemas/schemas/PikkuRemoteRPCOutput.schema.json +1 -1
  151. package/dist/.pikku/schemas/schemas/PikkuSchedulerOutput.schema.json +1 -1
  152. package/dist/.pikku/schemas/schemas/PikkuSchemasOutput.schema.json +1 -1
  153. package/dist/.pikku/schemas/schemas/PikkuWorkflowOutput.schema.json +1 -1
  154. package/dist/.pikku/workflow/pikku-workflow-types.gen.d.ts +213 -39
  155. package/dist/.pikku/workflow/pikku-workflow-types.gen.js +106 -16
  156. package/dist/.pikku/workflow/pikku-workflow-wirings-meta.gen.js +3 -2
  157. package/dist/.pikku/workflow/pikku-workflow-wirings.gen.d.ts +1 -1
  158. package/dist/.pikku/workflow/pikku-workflow-wirings.gen.js +1 -2
  159. package/dist/bin/pikku.js +5 -26
  160. package/dist/src/cli.wiring.js +4 -4
  161. package/dist/src/functions/commands/all.js +172 -94
  162. package/dist/src/functions/commands/bootstrap.js +21 -16
  163. package/dist/src/functions/commands/watch.js +6 -3
  164. package/dist/src/functions/runtimes/nextjs/pikku-command-nextjs.js +12 -8
  165. package/dist/src/functions/runtimes/nextjs/serialize-nextjs-backend-wrapper.d.ts +1 -1
  166. package/dist/src/functions/runtimes/nextjs/serialize-nextjs-backend-wrapper.js +74 -22
  167. package/dist/src/functions/runtimes/nextjs/serialize-nextjs-http-wrapper.d.ts +1 -1
  168. package/dist/src/functions/runtimes/nextjs/serialize-nextjs-http-wrapper.js +72 -20
  169. package/dist/src/functions/wirings/channels/pikku-channels.js +9 -2
  170. package/dist/src/functions/wirings/channels/pikku-command-channels.js +18 -2
  171. package/dist/src/functions/wirings/channels/serialize-channel-types.js +72 -16
  172. package/dist/src/functions/wirings/channels/serialize-typed-channel-map.js +1 -2
  173. package/dist/src/functions/wirings/cli/pikku-command-cli-entry.js +4 -4
  174. package/dist/src/functions/wirings/cli/pikku-command-cli-types.js +1 -1
  175. package/dist/src/functions/wirings/cli/pikku-command-cli.js +17 -3
  176. package/dist/src/functions/wirings/cli/serialize-channel-cli.js +1 -1
  177. package/dist/src/functions/wirings/cli/serialize-cli-types.js +2 -2
  178. package/dist/src/functions/wirings/cli/serialize-local-cli-bootstrap.d.ts +1 -1
  179. package/dist/src/functions/wirings/cli/serialize-local-cli-bootstrap.js +4 -4
  180. package/dist/src/functions/wirings/forge/pikku-command-forge-nodes.d.ts +1 -0
  181. package/dist/src/functions/wirings/forge/pikku-command-forge-nodes.js +90 -0
  182. package/dist/src/functions/wirings/forge/pikku-command-forge-types.d.ts +1 -0
  183. package/dist/src/functions/wirings/forge/pikku-command-forge-types.js +26 -0
  184. package/dist/src/functions/wirings/forge/serialize-forge-types.d.ts +4 -0
  185. package/dist/src/functions/wirings/forge/serialize-forge-types.js +90 -0
  186. package/dist/src/functions/wirings/functions/pikku-command-function-types-split.js +4 -4
  187. package/dist/src/functions/wirings/functions/pikku-command-function-types.js +7 -2
  188. package/dist/src/functions/wirings/functions/pikku-command-functions.js +35 -10
  189. package/dist/src/functions/wirings/functions/pikku-command-services.d.ts +1 -1
  190. package/dist/src/functions/wirings/functions/pikku-command-services.js +24 -24
  191. package/dist/src/functions/wirings/functions/pikku-function-types.js +2 -2
  192. package/dist/src/functions/wirings/functions/schemas.d.ts +1 -1
  193. package/dist/src/functions/wirings/functions/schemas.js +5 -4
  194. package/dist/src/functions/wirings/functions/serialize-function-imports.d.ts +3 -1
  195. package/dist/src/functions/wirings/functions/serialize-function-imports.js +7 -3
  196. package/dist/src/functions/wirings/functions/serialize-function-types.d.ts +1 -1
  197. package/dist/src/functions/wirings/functions/serialize-function-types.js +224 -91
  198. package/dist/src/functions/wirings/functions/serialize-pikku-types-hub.d.ts +1 -1
  199. package/dist/src/functions/wirings/functions/serialize-pikku-types-hub.js +19 -21
  200. package/dist/src/functions/wirings/http/openapi-spec-generator.js +5 -5
  201. package/dist/src/functions/wirings/http/pikku-command-http-routes.js +18 -2
  202. package/dist/src/functions/wirings/http/pikku-command-openapi.js +2 -2
  203. package/dist/src/functions/wirings/http/pikku-http-routes.js +9 -2
  204. package/dist/src/functions/wirings/http/serialize-http-types.js +19 -3
  205. package/dist/src/functions/wirings/http/serialize-typed-http-map.js +33 -8
  206. package/dist/src/functions/wirings/mcp/pikku-command-mcp.js +29 -6
  207. package/dist/src/functions/wirings/mcp/serialize-mcp-json.js +3 -2
  208. package/dist/src/functions/wirings/mcp/serialize-mcp-types.js +71 -19
  209. package/dist/src/functions/wirings/middleware/pikku-command-middleware.js +29 -2
  210. package/dist/src/functions/wirings/middleware/serialize-middleware-groups-meta.d.ts +5 -2
  211. package/dist/src/functions/wirings/middleware/serialize-middleware-groups-meta.js +5 -13
  212. package/dist/src/functions/wirings/package/pikku-command-package.d.ts +1 -0
  213. package/dist/src/functions/wirings/package/pikku-command-package.js +58 -0
  214. package/dist/src/functions/wirings/package/serialize-package.d.ts +5 -0
  215. package/dist/src/functions/wirings/package/serialize-package.js +32 -0
  216. package/dist/src/functions/wirings/queue/pikku-command-queue.js +17 -3
  217. package/dist/src/functions/wirings/queue/pikku-queue.js +9 -11
  218. package/dist/src/functions/wirings/queue/serialize-queue-map.js +20 -3
  219. package/dist/src/functions/wirings/queue/serialize-queue-meta.d.ts +2 -1
  220. package/dist/src/functions/wirings/queue/serialize-queue-meta.js +10 -1
  221. package/dist/src/functions/wirings/queue/serialize-queue-types.js +1 -1
  222. package/dist/src/functions/wirings/rpc/pikku-command-rpc-map.js +4 -4
  223. package/dist/src/functions/wirings/rpc/pikku-command-rpc.js +9 -2
  224. package/dist/src/functions/wirings/rpc/serialize-public-rpc.js +11 -4
  225. package/dist/src/functions/wirings/rpc/serialize-remote-rpc.js +4 -1
  226. package/dist/src/functions/wirings/rpc/serialize-rpc-wrapper.js +3 -3
  227. package/dist/src/functions/wirings/rpc/serialize-typed-rpc-map.d.ts +1 -1
  228. package/dist/src/functions/wirings/rpc/serialize-typed-rpc-map.js +54 -8
  229. package/dist/src/functions/wirings/scheduler/pikku-command-scheduler.js +15 -3
  230. package/dist/src/functions/wirings/scheduler/serialize-scheduler-meta.d.ts +2 -1
  231. package/dist/src/functions/wirings/scheduler/serialize-scheduler-meta.js +11 -1
  232. package/dist/src/functions/wirings/scheduler/serialize-scheduler-types.js +1 -1
  233. package/dist/src/functions/wirings/services/pikku-command-service-metadata.d.ts +1 -0
  234. package/dist/src/functions/wirings/services/pikku-command-service-metadata.js +22 -0
  235. package/dist/src/functions/wirings/workflow/pikku-command-workflow.js +58 -16
  236. package/dist/src/functions/wirings/workflow/serialize-workflow-map.d.ts +3 -0
  237. package/dist/src/functions/wirings/workflow/serialize-workflow-map.js +30 -32
  238. package/dist/src/functions/wirings/workflow/serialize-workflow-meta.d.ts +1 -2
  239. package/dist/src/functions/wirings/workflow/serialize-workflow-meta.js +43 -8
  240. package/dist/src/functions/wirings/workflow/serialize-workflow-registration.d.ts +7 -0
  241. package/dist/src/functions/wirings/workflow/serialize-workflow-registration.js +53 -0
  242. package/dist/src/functions/wirings/workflow/serialize-workflow-types.d.ts +4 -2
  243. package/dist/src/functions/wirings/workflow/serialize-workflow-types.js +308 -49
  244. package/dist/src/functions/wirings/workflow/serialize-workflow-workers.d.ts +1 -1
  245. package/dist/src/functions/wirings/workflow/serialize-workflow-workers.js +16 -29
  246. package/dist/src/middleware/log-command-info-and-time.d.ts +2 -2
  247. package/dist/src/middleware/log-command-info-and-time.js +1 -4
  248. package/dist/src/services/cli-logger-forwarder.service.js +1 -1
  249. package/dist/src/services.d.ts +2 -7
  250. package/dist/src/services.js +18 -13
  251. package/dist/src/utils/check-required-types.d.ts +2 -2
  252. package/dist/src/utils/check-required-types.js +2 -3
  253. package/dist/src/utils/command-summary.d.ts +2 -0
  254. package/dist/src/utils/command-summary.js +2 -0
  255. package/dist/src/utils/custom-types-generator.js +13 -15
  256. package/dist/src/utils/generate-bootstrap-file.js +1 -1
  257. package/dist/src/utils/pikku-cli-config.js +65 -4
  258. package/dist/src/utils/pikku-files-and-methods.d.ts +2 -2
  259. package/dist/src/utils/pikku-files-and-methods.js +4 -4
  260. package/dist/src/utils/schema-generator.d.ts +4 -3
  261. package/dist/src/utils/schema-generator.js +135 -15
  262. package/dist/src/utils/strip-verbose-meta.d.ts +43 -0
  263. package/dist/src/utils/strip-verbose-meta.js +210 -0
  264. package/dist/tsconfig.tsbuildinfo +1 -1
  265. package/package.json +11 -9
  266. package/src/cli.wiring.ts +4 -4
  267. package/src/functions/commands/all.ts +203 -107
  268. package/src/functions/commands/bootstrap.ts +23 -16
  269. package/src/functions/commands/watch.ts +6 -3
  270. package/src/functions/runtimes/nextjs/pikku-command-nextjs.ts +26 -6
  271. package/src/functions/runtimes/nextjs/serialize-nextjs-backend-wrapper.ts +75 -22
  272. package/src/functions/runtimes/nextjs/serialize-nextjs-http-wrapper.ts +72 -19
  273. package/src/functions/wirings/channels/pikku-channels.ts +27 -3
  274. package/src/functions/wirings/channels/pikku-command-channels.ts +46 -3
  275. package/src/functions/wirings/channels/serialize-channel-types.ts +72 -16
  276. package/src/functions/wirings/channels/serialize-typed-channel-map.ts +3 -2
  277. package/src/functions/wirings/cli/pikku-command-cli-entry.ts +4 -4
  278. package/src/functions/wirings/cli/pikku-command-cli-types.ts +1 -1
  279. package/src/functions/wirings/cli/pikku-command-cli.ts +45 -3
  280. package/src/functions/wirings/cli/serialize-channel-cli.ts +1 -1
  281. package/src/functions/wirings/cli/serialize-cli-types.ts +2 -2
  282. package/src/functions/wirings/cli/serialize-local-cli-bootstrap.ts +5 -5
  283. package/src/functions/wirings/forge/pikku-command-forge-nodes.ts +135 -0
  284. package/src/functions/wirings/forge/pikku-command-forge-types.ts +38 -0
  285. package/src/functions/wirings/forge/serialize-forge-types.ts +94 -0
  286. package/src/functions/wirings/functions/pikku-command-function-types-split.ts +9 -8
  287. package/src/functions/wirings/functions/pikku-command-function-types.ts +17 -10
  288. package/src/functions/wirings/functions/pikku-command-functions.ts +59 -14
  289. package/src/functions/wirings/functions/pikku-command-services.ts +26 -26
  290. package/src/functions/wirings/functions/pikku-function-types.ts +3 -1
  291. package/src/functions/wirings/functions/schemas.ts +14 -4
  292. package/src/functions/wirings/functions/serialize-function-imports.ts +12 -3
  293. package/src/functions/wirings/functions/serialize-function-types.ts +227 -93
  294. package/src/functions/wirings/functions/serialize-pikku-types-hub.ts +27 -26
  295. package/src/functions/wirings/http/openapi-spec-generator.ts +15 -6
  296. package/src/functions/wirings/http/pikku-command-http-routes.ts +46 -2
  297. package/src/functions/wirings/http/pikku-command-openapi.ts +3 -2
  298. package/src/functions/wirings/http/pikku-http-routes.ts +28 -2
  299. package/src/functions/wirings/http/serialize-http-types.ts +19 -3
  300. package/src/functions/wirings/http/serialize-typed-http-map.ts +32 -8
  301. package/src/functions/wirings/mcp/pikku-command-mcp.ts +58 -10
  302. package/src/functions/wirings/mcp/serialize-mcp-json.ts +8 -6
  303. package/src/functions/wirings/mcp/serialize-mcp-types.ts +71 -19
  304. package/src/functions/wirings/middleware/pikku-command-middleware.ts +39 -2
  305. package/src/functions/wirings/middleware/serialize-middleware-groups-meta.ts +4 -19
  306. package/src/functions/wirings/package/pikku-command-package.ts +81 -0
  307. package/src/functions/wirings/package/serialize-package.ts +69 -0
  308. package/src/functions/wirings/permissions/pikku-command-permissions.ts +2 -2
  309. package/src/functions/wirings/queue/pikku-command-queue.ts +47 -2
  310. package/src/functions/wirings/queue/pikku-queue.ts +26 -10
  311. package/src/functions/wirings/queue/serialize-queue-map.ts +18 -3
  312. package/src/functions/wirings/queue/serialize-queue-meta.ts +15 -1
  313. package/src/functions/wirings/queue/serialize-queue-types.ts +1 -1
  314. package/src/functions/wirings/rpc/pikku-command-rpc-map.ts +7 -4
  315. package/src/functions/wirings/rpc/pikku-command-rpc.ts +25 -2
  316. package/src/functions/wirings/rpc/serialize-public-rpc.ts +11 -4
  317. package/src/functions/wirings/rpc/serialize-remote-rpc.ts +4 -1
  318. package/src/functions/wirings/rpc/serialize-rpc-wrapper.ts +3 -3
  319. package/src/functions/wirings/rpc/serialize-typed-rpc-map.ts +74 -8
  320. package/src/functions/wirings/scheduler/pikku-command-scheduler.ts +51 -4
  321. package/src/functions/wirings/scheduler/serialize-scheduler-meta.ts +20 -1
  322. package/src/functions/wirings/scheduler/serialize-scheduler-types.ts +1 -1
  323. package/src/functions/wirings/services/pikku-command-service-metadata.ts +25 -0
  324. package/src/functions/wirings/workflow/pikku-command-workflow.ts +114 -19
  325. package/src/functions/wirings/workflow/serialize-workflow-map.ts +38 -40
  326. package/src/functions/wirings/workflow/serialize-workflow-meta.ts +68 -11
  327. package/src/functions/wirings/workflow/serialize-workflow-registration.ts +83 -0
  328. package/src/functions/wirings/workflow/serialize-workflow-types.ts +311 -49
  329. package/src/functions/wirings/workflow/serialize-workflow-workers.ts +16 -29
  330. package/src/middleware/log-command-info-and-time.ts +3 -6
  331. package/src/services/cli-logger-forwarder.service.ts +1 -1
  332. package/src/services.ts +23 -16
  333. package/src/utils/check-required-types.ts +4 -7
  334. package/src/utils/command-summary.ts +4 -0
  335. package/src/utils/custom-types-generator.ts +15 -15
  336. package/src/utils/generate-bootstrap-file.ts +1 -1
  337. package/src/utils/pikku-cli-config.ts +105 -5
  338. package/src/utils/pikku-files-and-methods.ts +10 -13
  339. package/src/utils/schema-generator.ts +185 -22
  340. package/src/utils/strip-verbose-meta.ts +254 -0
  341. package/types/application-types.d.ts +1 -1
  342. package/types/config.d.ts +47 -2
  343. package/.pikku/function/pikku-functions-meta.min.gen.ts +0 -211
  344. package/.pikku/function/pikku-functions.gen.ts +0 -84
  345. package/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.ts +0 -47
  346. package/dist/.pikku/function/pikku-functions-meta.min.gen.d.ts +0 -1
  347. package/dist/.pikku/function/pikku-functions-meta.min.gen.js +0 -211
  348. package/dist/.pikku/function/pikku-functions.gen.d.ts +0 -1
  349. package/dist/.pikku/function/pikku-functions.gen.js +0 -83
  350. package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.d.ts +0 -1
  351. package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.js +0 -47
  352. package/dist/.pikku/schemas/schemas/PikkuRemoteInternalRPCInput.schema.json +0 -1
  353. package/dist/src/functions/wirings/workflow/pikku-command-workflow-map.d.ts +0 -1
  354. package/dist/src/functions/wirings/workflow/pikku-command-workflow-map.js +0 -12
  355. package/dist/src/functions/wirings/workflow/pikku-command-workflow-types.d.ts +0 -1
  356. package/dist/src/functions/wirings/workflow/pikku-command-workflow-types.js +0 -11
  357. package/src/functions/wirings/workflow/pikku-command-workflow-map.ts +0 -24
  358. package/src/functions/wirings/workflow/pikku-command-workflow-types.ts +0 -22
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.11.1
2
+ * This file was generated by @pikku/cli@0.11.3
3
3
  */
4
4
  /**
5
5
  * HTTP-specific type definitions for tree-shaking optimization
@@ -7,7 +7,7 @@
7
7
 
8
8
  import { AssertHTTPWiringParams, wireHTTP as wireHTTPCore, addHTTPMiddleware as addHTTPMiddlewareCore, addHTTPPermission as addHTTPPermissionCore } from '@pikku/core/http'
9
9
  import type { PikkuFunction, PikkuFunctionSessionless, PikkuPermission, PikkuMiddleware } from '../function/pikku-function-types.gen.js'
10
- import type { CoreHTTPFunctionWiring } from '@pikku/core/http'
10
+ import type { CoreHTTPFunctionWiring, HTTPMethod } from '@pikku/core/http'
11
11
 
12
12
  /**
13
13
  * Type definition for HTTP API wirings with type-safe path parameters.
@@ -17,7 +17,23 @@ import type { CoreHTTPFunctionWiring } from '@pikku/core/http'
17
17
  * @template Out - Output type for the HTTP wiring
18
18
  * @template Route - String literal type for the HTTP path (e.g., "/users/:id")
19
19
  */
20
- type HTTPWiring<In, Out, Route extends string> = CoreHTTPFunctionWiring<In, Out, Route, PikkuFunction<In, Out>, PikkuFunctionSessionless<In, Out>, PikkuPermission<In>, PikkuMiddleware>
20
+ type HTTPWiring<In, Out, Route extends string> = CoreHTTPFunctionWiring<In, Out, Route, PikkuFunction<In, Out, 'rpc' | 'session'>, PikkuFunctionSessionless<In, Out, 'rpc' | 'session'>, PikkuPermission<In>, PikkuMiddleware>
21
+
22
+ /**
23
+ * HTTP wiring for workflow triggers (no function needed)
24
+ */
25
+ type HTTPWorkflowWiring<Route extends string> = {
26
+ route: Route
27
+ method: HTTPMethod
28
+ workflow: true
29
+ func?: undefined
30
+ permissions?: undefined
31
+ auth?: undefined
32
+ tags?: undefined
33
+ middleware?: undefined
34
+ returnsJSON?: undefined
35
+ sse?: boolean
36
+ }
21
37
 
22
38
  /**
23
39
  * Registers an HTTP wiring with the Pikku framework.
@@ -28,7 +44,7 @@ type HTTPWiring<In, Out, Route extends string> = CoreHTTPFunctionWiring<In, Out,
28
44
  * @param httpWiring - HTTP wiring definition with handler, method, and optional middleware
29
45
  */
30
46
  export const wireHTTP = <In, Out, Route extends string>(
31
- httpWiring: HTTPWiring<In, Out, Route> & AssertHTTPWiringParams<In, Route>
47
+ httpWiring: (HTTPWiring<In, Out, Route> & AssertHTTPWiringParams<In, Route>) | HTTPWorkflowWiring<Route>
32
48
  ) => {
33
49
  wireHTTPCore(httpWiring as any)
34
50
  }
@@ -1,28 +1,28 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.11.1
2
+ * This file was generated by @pikku/cli@0.11.3
3
3
  */
4
4
  /**
5
5
  * This provides the structure needed for typescript to be aware of routes and their return types
6
6
  */
7
-
8
7
 
9
8
 
10
- // Custom types are those that are defined directly within generics
11
- // or are broken into simpler types
9
+
12
10
  export type PikkuSchemasOutput = false | true
13
- export type PikkuChannelsOutput = false | true
14
- export type PikkuCLIOutput = false | true
15
11
  export type PikkuFunctionsOutput = false | true
16
- export type PikkuHTTPOutput = false | true
17
- export type PikkuMCPOutput = false | true
18
12
  export type PikkuMiddlewareOutput = false | true
19
13
  export type PikkuPermissionsOutput = false | true
20
- export type PikkuQueueOutput = false | true
21
- export type PikkuPublicRPCOutput = false | true
22
- export type PikkuRemoteRPCOutput = false | true
23
14
  export type PikkuRPCOutput = false | true
15
+ export type PikkuPublicRPCOutput = false | true
16
+ export type PikkuHTTPOutput = false | true
24
17
  export type PikkuSchedulerOutput = false | true
25
18
  export type PikkuWorkflowOutput = false | true
19
+ export type PikkuRemoteRPCOutput = false | true
20
+ export type PikkuQueueOutput = false | true
21
+ export type PikkuChannelsOutput = false | true
22
+ export type PikkuMCPOutput = false | true
23
+ export type PikkuCLIOutput = false | true
24
+ export type PikkuPackageOutput = false | true
25
+ export type PikkuForgeNodesOutput = false | true
26
26
 
27
27
  // The '& {}' is a workaround for not directly refering to a type since it confuses typescript
28
28
 
@@ -0,0 +1,9 @@
1
+ {
2
+ "get": {},
3
+ "post": {},
4
+ "put": {},
5
+ "delete": {},
6
+ "head": {},
7
+ "patch": {},
8
+ "options": {}
9
+ }
@@ -1,13 +1,7 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.11.1
2
+ * This file was generated by @pikku/cli@0.11.3
3
3
  */
4
4
  import { pikkuState } from '@pikku/core'
5
- pikkuState('http', 'meta', {
6
- "get": {},
7
- "post": {},
8
- "put": {},
9
- "delete": {},
10
- "head": {},
11
- "patch": {},
12
- "options": {}
13
- })
5
+ import type { HTTPWiringsMeta } from '@pikku/core/http'
6
+ import metaData from './pikku-http-wirings-meta.gen.json' with { type: 'json' }
7
+ pikkuState(null, 'http', 'meta', metaData as HTTPWiringsMeta)
@@ -1,4 +1,4 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.11.1
2
+ * This file was generated by @pikku/cli@0.11.3
3
3
  */
4
4
  /* The files with an wireHTTP function call */
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.11.1
2
+ * This file was generated by @pikku/cli@0.11.3
3
3
  */
4
4
  /**
5
5
  * MCP-specific type definitions for tree-shaking optimization
@@ -18,7 +18,8 @@ import {
18
18
  AssertMCPResourceURIParams
19
19
  } from '@pikku/core/mcp'
20
20
 
21
- import type { PikkuFunctionConfig, PikkuFunctionSessionless } from '../function/pikku-function-types.gen.js'
21
+ import type { PikkuFunctionConfig, PikkuFunctionSessionless, InferZodOutput } from '../function/pikku-function-types.gen.js'
22
+ import type { ZodLike } from '@pikku/core'
22
23
 
23
24
  /**
24
25
  * Type definition for MCP resources that provide data to AI models.
@@ -26,21 +27,21 @@ import type { PikkuFunctionConfig, PikkuFunctionSessionless } from '../function/
26
27
  * @template In - Input type for the resource request
27
28
  * @template URI - URI template string type for compile-time parameter validation
28
29
  */
29
- type MCPResourceWiring<In, URI extends string> = CoreMCPResource<PikkuFunctionConfig<In, MCPResourceResponse>> & { uri: URI }
30
+ type MCPResourceWiring<In, URI extends string> = CoreMCPResource<PikkuFunctionConfig<In, MCPResourceResponse, 'rpc' | 'session' | 'mcp'>> & { uri: URI }
30
31
 
31
32
  /**
32
33
  * Type definition for MCP tools that AI models can invoke.
33
34
  *
34
35
  * @template In - Input type for the tool invocation
35
36
  */
36
- type MCPToolWiring<In> = CoreMCPTool<PikkuFunctionConfig<In, MCPToolResponse>>
37
+ type MCPToolWiring<In> = CoreMCPTool<PikkuFunctionConfig<In, MCPToolResponse, 'rpc' | 'session' | 'mcp'>>
37
38
 
38
39
  /**
39
40
  * Type definition for MCP prompts that provide templates to AI models.
40
41
  *
41
42
  * @template In - Input type for the prompt parameters
42
43
  */
43
- type MCPPromptWiring<In> = CoreMCPPrompt<PikkuFunctionConfig<In, MCPPromptResponse>>
44
+ type MCPPromptWiring<In> = CoreMCPPrompt<PikkuFunctionConfig<In, MCPPromptResponse, 'rpc' | 'session' | 'mcp'>>
44
45
 
45
46
  /**
46
47
  * Registers an MCP resource with the Pikku framework.
@@ -82,59 +83,110 @@ export const wireMCPPrompt = <In>(
82
83
  wireMCPPromptCore(mcpPrompt as any)
83
84
  }
84
85
 
86
+ /**
87
+ * Configuration for MCP prompt with Zod schema input validation.
88
+ */
89
+ type MCPPromptFuncConfigWithSchema<InputSchema extends ZodLike> = {
90
+ func: PikkuFunctionSessionless<InferZodOutput<InputSchema>, MCPPromptResponse, 'mcp' | 'rpc'>
91
+ name?: string
92
+ input: InputSchema
93
+ }
94
+
85
95
  /**
86
96
  * Creates a function for handling MCP prompt requests.
87
97
  * These functions generate prompt templates for AI models.
88
98
  *
89
- * @template In - Input type for the prompt parameters
99
+ * Supports two patterns:
100
+ * 1. Generic types: `pikkuMCPPromptFunc<Input>({ func: ... })`
101
+ * 2. Zod schemas: `pikkuMCPPromptFunc({ input: z.object(...), func: ... })`
102
+ *
103
+ * @template In - Input type for the prompt parameters (inferred from schema if provided)
90
104
  * @param func - Function definition, either direct function or configuration object
91
105
  * @returns The unwrapped function for internal use
92
106
  */
93
- export const pikkuMCPPromptFunc = <In>(
107
+ export function pikkuMCPPromptFunc<InputSchema extends ZodLike>(
108
+ config: MCPPromptFuncConfigWithSchema<InputSchema>
109
+ ): PikkuFunctionConfig<InferZodOutput<InputSchema>, MCPPromptResponse, 'mcp' | 'rpc'>
110
+ export function pikkuMCPPromptFunc<In>(
94
111
  func:
95
- | PikkuFunctionSessionless<In, MCPPromptResponse>
112
+ | PikkuFunctionSessionless<In, MCPPromptResponse, 'mcp' | 'rpc'>
96
113
  | {
97
- func: PikkuFunctionSessionless<In, MCPPromptResponse>
114
+ func: PikkuFunctionSessionless<In, MCPPromptResponse, 'mcp' | 'rpc'>
98
115
  name?: string
99
116
  }
100
- ): PikkuFunctionConfig<In, MCPPromptResponse> => {
117
+ ): PikkuFunctionConfig<In, MCPPromptResponse, 'mcp' | 'rpc'>
118
+ export function pikkuMCPPromptFunc(func: any): any {
101
119
  return typeof func === 'function' ? { func } : func
102
120
  }
103
121
 
122
+ /**
123
+ * Configuration for MCP tool with Zod schema input validation.
124
+ */
125
+ type MCPToolFuncConfigWithSchema<InputSchema extends ZodLike> = {
126
+ func: PikkuFunctionSessionless<InferZodOutput<InputSchema>, MCPToolResponse, 'mcp' | 'rpc'>
127
+ name?: string
128
+ input: InputSchema
129
+ }
130
+
104
131
  /**
105
132
  * Creates a function for handling MCP tool invocations.
106
133
  * These functions perform actions that AI models can request.
107
134
  *
108
- * @template In - Input type for the tool invocation
135
+ * Supports two patterns:
136
+ * 1. Generic types: `pikkuMCPToolFunc<Input>({ func: ... })`
137
+ * 2. Zod schemas: `pikkuMCPToolFunc({ input: z.object(...), func: ... })`
138
+ *
139
+ * @template In - Input type for the tool invocation (inferred from schema if provided)
109
140
  * @param func - Function definition, either direct function or configuration object
110
141
  * @returns The unwrapped function for internal use
111
142
  */
112
- export const pikkuMCPToolFunc = <In>(
143
+ export function pikkuMCPToolFunc<InputSchema extends ZodLike>(
144
+ config: MCPToolFuncConfigWithSchema<InputSchema>
145
+ ): PikkuFunctionConfig<InferZodOutput<InputSchema>, MCPToolResponse, 'mcp' | 'rpc'>
146
+ export function pikkuMCPToolFunc<In>(
113
147
  func:
114
- | PikkuFunctionSessionless<In, MCPToolResponse, null, true>
148
+ | PikkuFunctionSessionless<In, MCPToolResponse, 'mcp' | 'rpc'>
115
149
  | {
116
- func: PikkuFunctionSessionless<In, MCPToolResponse, null, true>
150
+ func: PikkuFunctionSessionless<In, MCPToolResponse, 'mcp' | 'rpc'>
117
151
  name?: string
118
152
  }
119
- ): PikkuFunctionConfig<In, MCPToolResponse> => {
153
+ ): PikkuFunctionConfig<In, MCPToolResponse, 'mcp' | 'rpc'>
154
+ export function pikkuMCPToolFunc(func: any): any {
120
155
  return typeof func === 'function' ? { func } : func
121
156
  }
122
157
 
158
+ /**
159
+ * Configuration for MCP resource with Zod schema input validation.
160
+ */
161
+ type MCPResourceFuncConfigWithSchema<InputSchema extends ZodLike> = {
162
+ func: PikkuFunctionSessionless<InferZodOutput<InputSchema>, MCPResourceResponse, 'mcp' | 'rpc'>
163
+ name?: string
164
+ input: InputSchema
165
+ }
166
+
123
167
  /**
124
168
  * Creates a function for handling MCP resource requests.
125
169
  * These functions provide data that AI models can access.
126
170
  *
127
- * @template In - Input type for the resource request
171
+ * Supports two patterns:
172
+ * 1. Generic types: `pikkuMCPResourceFunc<Input>({ func: ... })`
173
+ * 2. Zod schemas: `pikkuMCPResourceFunc({ input: z.object(...), func: ... })`
174
+ *
175
+ * @template In - Input type for the resource request (inferred from schema if provided)
128
176
  * @param func - Function definition, either direct function or configuration object
129
177
  * @returns The unwrapped function for internal use
130
178
  */
131
- export const pikkuMCPResourceFunc = <In>(
179
+ export function pikkuMCPResourceFunc<InputSchema extends ZodLike>(
180
+ config: MCPResourceFuncConfigWithSchema<InputSchema>
181
+ ): PikkuFunctionConfig<InferZodOutput<InputSchema>, MCPResourceResponse, 'mcp' | 'rpc'>
182
+ export function pikkuMCPResourceFunc<In>(
132
183
  func:
133
- | PikkuFunctionSessionless<In, MCPResourceResponse, null, true>
184
+ | PikkuFunctionSessionless<In, MCPResourceResponse, 'mcp' | 'rpc'>
134
185
  | {
135
- func: PikkuFunctionSessionless<In, MCPResourceResponse, null, true>
186
+ func: PikkuFunctionSessionless<In, MCPResourceResponse, 'mcp' | 'rpc'>
136
187
  name?: string
137
188
  }
138
- ): PikkuFunctionConfig<In, MCPResourceResponse> => {
189
+ ): PikkuFunctionConfig<In, MCPResourceResponse, 'mcp' | 'rpc'>
190
+ export function pikkuMCPResourceFunc(func: any): any {
139
191
  return typeof func === 'function' ? { func } : func
140
192
  }
@@ -0,0 +1,5 @@
1
+ {
2
+ "resourcesMeta": {},
3
+ "toolsMeta": {},
4
+ "promptsMeta": {}
5
+ }
@@ -1,7 +1,9 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.11.1
2
+ * This file was generated by @pikku/cli@0.11.3
3
3
  */
4
4
  import { pikkuState } from '@pikku/core'
5
- pikkuState('mcp', 'resourcesMeta', {})
6
- pikkuState('mcp', 'toolsMeta', {})
7
- pikkuState('mcp', 'promptsMeta', {})
5
+ import type { MCPResourceMeta, MCPToolMeta, MCPPromptMeta } from '@pikku/core/mcp'
6
+ import metaData from './pikku-mcp-wirings-meta.gen.json' with { type: 'json' }
7
+ pikkuState(null, 'mcp', 'resourcesMeta', metaData.resourcesMeta as MCPResourceMeta)
8
+ pikkuState(null, 'mcp', 'toolsMeta', metaData.toolsMeta as MCPToolMeta)
9
+ pikkuState(null, 'mcp', 'promptsMeta', metaData.promptsMeta as MCPPromptMeta)
@@ -1,4 +1,4 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.11.1
2
+ * This file was generated by @pikku/cli@0.11.3
3
3
  */
4
4
  /* The files with an wireMCPResource or wireMCPTool function call */
@@ -1,21 +1,16 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.11.1
2
+ * This file was generated by @pikku/cli@0.11.3
3
3
  */
4
- import './cli/pikku-cli-wirings-meta.gen.js'
5
- import './mcp/pikku-mcp-wirings-meta.gen.js'
6
- import './channel/pikku-channels-meta.gen.js'
7
- import './queue/pikku-queue-workers-wirings-meta.gen.js'
8
- import './workflow/pikku-workflow-wirings-meta.gen.js'
9
- import './scheduler/pikku-schedulers-wirings-meta.gen.js'
10
- import './http/pikku-http-wirings-meta.gen.js'
11
- import './rpc/pikku-rpc-wirings-meta.internal.gen.js'
12
4
  import './function/pikku-functions-meta.gen.js'
13
- import './function/pikku-functions.gen.js'
5
+ import './http/pikku-http-wirings-meta.gen.js'
6
+ import './scheduler/pikku-schedulers-wirings-meta.gen.js'
7
+ import './queue/pikku-queue-workers-wirings-meta.gen.js'
8
+ import './channel/pikku-channels-meta.gen.js'
9
+ import './mcp/pikku-mcp-wirings-meta.gen.js'
10
+ import './cli/pikku-cli-wirings-meta.gen.js'
14
11
  import './schemas/register.gen.js'
15
12
  import './http/pikku-http-wirings.gen.js'
16
13
  import './scheduler/pikku-schedulers-wirings.gen.js'
17
- import './workflow/pikku-workflow-wirings.gen.js'
18
- import './rpc/pikku-remote-rpc-workers.gen.js'
19
14
  import './queue/pikku-queue-workers-wirings.gen.js'
20
15
  import './channel/pikku-channels.gen.js'
21
16
  import './mcp/pikku-mcp-wirings.gen.js'
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.11.1
2
+ * This file was generated by @pikku/cli@0.11.3
3
3
  */
4
4
  import type { SingletonServices } from '../types/application-types.d.js'
5
5
  import type { Services } from '../types/application-types.d.js'
@@ -13,17 +13,16 @@ export const requiredSingletonServices = {
13
13
  'queueService': false,
14
14
  'schedulerService': false,
15
15
  'schema': true,
16
+ 'secrets': true,
16
17
  'variables': true,
17
18
  'workflowService': false,
18
19
  } as const
19
20
 
20
- // Session services map: true if required, false if available but unused
21
- export const requiredSessionServices = {
22
- 'workflow': false,
23
- 'workflowStep': false,
21
+ // Wire services map: true if required, false if available but unused
22
+ export const requiredWireServices = {
24
23
  } as const
25
24
 
26
25
  // Type exports
27
- export type RequiredSingletonServices = Pick<SingletonServices, 'config' | 'getInspectorState' | 'logger' | 'schema' | 'variables'> & Partial<Omit<SingletonServices, 'config' | 'getInspectorState' | 'logger' | 'schema' | 'variables'>>
26
+ export type RequiredSingletonServices = Pick<SingletonServices, 'config' | 'getInspectorState' | 'logger' | 'schema' | 'secrets' | 'variables'> & Partial<Omit<SingletonServices, 'config' | 'getInspectorState' | 'logger' | 'schema' | 'secrets' | 'variables'>>
28
27
 
29
- export type RequiredSessionServices = Partial<Services>
28
+ export type RequiredWireServices = Partial<Services>
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.11.1
2
+ * This file was generated by @pikku/cli@0.11.3
3
3
  */
4
4
  /**
5
5
  * Main type export hub - re-exports all wiring-specific types
@@ -25,3 +25,6 @@ export * from './mcp/pikku-mcp-types.gen.js'
25
25
 
26
26
  // CLI wiring types
27
27
  export * from './cli/pikku-cli-types.gen.js'
28
+
29
+ // Forge wiring types
30
+ export * from './forge/pikku-forge-types.gen.js'
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.11.1
2
+ * This file was generated by @pikku/cli@0.11.3
3
3
  */
4
4
  import { CorePikkuWebsocket, CorePikkuRouteHandler } from '@pikku/websocket'
5
5
  import { ChannelDefaultHandlerOf, ChannelWiringHandlerOf, ChannelsMap } from './channel/pikku-channels-map.gen.d.js';
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.11.1
2
+ * This file was generated by @pikku/cli@0.11.3
3
3
  */
4
4
  /**
5
5
  * Queue-specific type definitions for tree-shaking optimization
@@ -14,7 +14,7 @@ import type { PikkuFunctionConfig } from '../function/pikku-function-types.gen.j
14
14
  * @template In - Input type for the queue job
15
15
  * @template Out - Output type for the queue job
16
16
  */
17
- type QueueWiring<In, Out> = CoreQueueWorker<PikkuFunctionConfig<In, Out>>
17
+ type QueueWiring<In, Out> = CoreQueueWorker<PikkuFunctionConfig<In, Out, 'session' | 'rpc'>>
18
18
 
19
19
  /**
20
20
  * Registers a queue worker with the Pikku framework.
@@ -1,28 +1,28 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.11.1
2
+ * This file was generated by @pikku/cli@0.11.3
3
3
  */
4
4
  /**
5
5
  * This provides the structure needed for typescript to be aware of Queue workers and their input/output types
6
6
  */
7
-
8
7
 
9
8
 
10
- // Custom types are those that are defined directly within generics
11
- // or are broken into simpler types
9
+
12
10
  export type PikkuSchemasOutput = false | true
13
- export type PikkuChannelsOutput = false | true
14
- export type PikkuCLIOutput = false | true
15
11
  export type PikkuFunctionsOutput = false | true
16
- export type PikkuHTTPOutput = false | true
17
- export type PikkuMCPOutput = false | true
18
12
  export type PikkuMiddlewareOutput = false | true
19
13
  export type PikkuPermissionsOutput = false | true
20
- export type PikkuQueueOutput = false | true
21
- export type PikkuPublicRPCOutput = false | true
22
- export type PikkuRemoteRPCOutput = false | true
23
14
  export type PikkuRPCOutput = false | true
15
+ export type PikkuPublicRPCOutput = false | true
16
+ export type PikkuHTTPOutput = false | true
24
17
  export type PikkuSchedulerOutput = false | true
25
18
  export type PikkuWorkflowOutput = false | true
19
+ export type PikkuRemoteRPCOutput = false | true
20
+ export type PikkuQueueOutput = false | true
21
+ export type PikkuChannelsOutput = false | true
22
+ export type PikkuMCPOutput = false | true
23
+ export type PikkuCLIOutput = false | true
24
+ export type PikkuPackageOutput = false | true
25
+ export type PikkuForgeNodesOutput = false | true
26
26
 
27
27
  import type { QueueJob } from '@pikku/core/queue'
28
28
 
@@ -1,10 +1,8 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.11.1
2
+ * This file was generated by @pikku/cli@0.11.3
3
3
  */
4
4
  import { pikkuState } from '@pikku/core'
5
- pikkuState('queue', 'meta', {
6
- "pikku-remote-internal-rpc": {
7
- "pikkuFuncName": "pikkuRemoteInternalRPC",
8
- "queueName": "pikku-remote-internal-rpc"
9
- }
10
- })
5
+ import { QueueWorkersMeta } from '@pikku/core/queue'
6
+ import metaData from './pikku-queue-workers-wirings-meta.gen.json' with { type: 'json' }
7
+
8
+ pikkuState(null, 'queue', 'meta', metaData as QueueWorkersMeta)
@@ -1,4 +1,4 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.11.1
2
+ * This file was generated by @pikku/cli@0.11.3
3
3
  */
4
4
  /* The files with an addQueueWorkers function call */
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.11.1
2
+ * This file was generated by @pikku/cli@0.11.3
3
3
  */
4
4
  /**
5
5
  * Auto-generated remote internal RPC queue worker and HTTP endpoint
@@ -10,12 +10,15 @@ import { pikkuSessionlessFunc, wireQueueWorker } from '../pikku-types.gen.js'
10
10
  /**
11
11
  * Generic remote RPC worker that invokes any internal RPC by name
12
12
  * This is used for executing internal RPCs via a queue or HTTP (e.g., scheduled tasks, background jobs, internal services)
13
+ *
14
+ * TODO: Security risk - this allows any RPC to be invoked by name. Should validate
15
+ * that rpcName is in an allowlist of permitted internal RPCs to prevent unauthorized access.
13
16
  */
14
17
  export const pikkuRemoteInternalRPC = pikkuSessionlessFunc<
15
18
  { rpcName: string, data?: any },
16
19
  any
17
20
  >({
18
- func: async ({ rpc }, { rpcName, data }) => {
21
+ func: async (_services, { rpcName, data }, { rpc }) => {
19
22
  return await (rpc.invoke as any)(rpcName, data)
20
23
  },
21
24
  internal: true,
@@ -1,28 +1,28 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.11.1
2
+ * This file was generated by @pikku/cli@0.11.3
3
3
  */
4
4
  /**
5
5
  * This provides the structure needed for typescript to be aware of RPCs and their return types
6
6
  */
7
-
8
7
 
9
8
 
10
- // Custom types are those that are defined directly within generics
11
- // or are broken into simpler types
9
+
12
10
  export type PikkuSchemasOutput = false | true
13
- export type PikkuChannelsOutput = false | true
14
- export type PikkuCLIOutput = false | true
15
11
  export type PikkuFunctionsOutput = false | true
16
- export type PikkuHTTPOutput = false | true
17
- export type PikkuMCPOutput = false | true
18
12
  export type PikkuMiddlewareOutput = false | true
19
13
  export type PikkuPermissionsOutput = false | true
20
- export type PikkuQueueOutput = false | true
21
- export type PikkuPublicRPCOutput = false | true
22
- export type PikkuRemoteRPCOutput = false | true
23
14
  export type PikkuRPCOutput = false | true
15
+ export type PikkuPublicRPCOutput = false | true
16
+ export type PikkuHTTPOutput = false | true
24
17
  export type PikkuSchedulerOutput = false | true
25
18
  export type PikkuWorkflowOutput = false | true
19
+ export type PikkuRemoteRPCOutput = false | true
20
+ export type PikkuQueueOutput = false | true
21
+ export type PikkuChannelsOutput = false | true
22
+ export type PikkuMCPOutput = false | true
23
+ export type PikkuCLIOutput = false | true
24
+ export type PikkuPackageOutput = false | true
25
+ export type PikkuForgeNodesOutput = false | true
26
26
 
27
27
  interface RPCHandler<I, O> {
28
28
  input: I;
@@ -33,13 +33,18 @@ export type RPCMap = {
33
33
  };
34
34
 
35
35
 
36
- export type RPCInvoke = <Name extends keyof RPCMap>(
36
+
37
+ // No external packages, use RPCMap directly
38
+ export type FlattenedRPCMap = RPCMap
39
+
40
+
41
+ export type RPCInvoke = <Name extends keyof FlattenedRPCMap>(
37
42
  name: Name,
38
- data: RPCMap[Name]['input'],
43
+ data: FlattenedRPCMap[Name]['input'],
39
44
  options?: {
40
45
  location?: 'local' | 'remote' | 'auto'
41
46
  }
42
- ) => Promise<RPCMap[Name]['output']>
47
+ ) => Promise<FlattenedRPCMap[Name]['output']>
43
48
 
44
49
  // Import WorkflowMap for workflow typing
45
50
  import type { WorkflowMap } from '../workflow/pikku-workflow-map.gen.js'