@pikku/cli 0.12.145 → 0.12.151

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 (547) hide show
  1. package/console-app/assets/HelpPanel-CxjgE40i.js +1 -0
  2. package/console-app/assets/{abnfDiagram-N423BO3Z-BIPJyOId.js → abnfDiagram-VCTEODGH-UPW1PlxM.js} +1 -1
  3. package/console-app/assets/architecture-7GRP2DOG-BQN972Vc.js +1 -0
  4. package/console-app/assets/architectureDiagram-5GKGNRK7-B3XFrvZk.js +36 -0
  5. package/console-app/assets/blockDiagram-I7D4REHJ-Ca0v9UJQ.js +129 -0
  6. package/console-app/assets/c4Diagram-7LVT6UL2-CLewVsj_.js +38 -0
  7. package/console-app/assets/channel-B8xtOmL3.js +1 -0
  8. package/console-app/assets/chunk-4HAMMTFA-BwhbhOD9.js +62 -0
  9. package/console-app/assets/{chunk-NSK5VX7P-VK0slsok.js → chunk-75Z2AOVW-C7nAgNk0.js} +1 -1
  10. package/console-app/assets/chunk-DU6HZSFF-D4yYAcHt.js +127 -0
  11. package/console-app/assets/{chunk-2GRJ4B5K-pBREt5-Y.js → chunk-F27PBJKO-UHllOPps.js} +1 -1
  12. package/console-app/assets/{chunk-KEIR6QF5-BICK3FdT.js → chunk-FOHPRMQF-CoA4358r.js} +9 -9
  13. package/console-app/assets/chunk-GMAD6QVW-C0l_vm7T.js +72 -0
  14. package/console-app/assets/chunk-GVQU2GXP-h-H2Oird.js +1 -0
  15. package/console-app/assets/{chunk-5RXB4S5H-wo8Xtqiv.js → chunk-IMKFNOWR-DJ_W9CSg.js} +2 -2
  16. package/console-app/assets/chunk-L3NEJ4N5-Ce9oniwE.js +1 -0
  17. package/console-app/assets/chunk-OSK3NFVY-CdGE5qxS.js +10 -0
  18. package/console-app/assets/chunk-P2QGCYS3-DK1pHDdz.js +1 -0
  19. package/console-app/assets/{chunk-KBJHAD2P-PiPaopal.js → chunk-POPQ4Y6H-DjevEFNo.js} +1 -1
  20. package/console-app/assets/{chunk-4I5QYGJK-SmJ1Rqsn.js → chunk-PWAF6VOD-BVF5N1No.js} +1 -1
  21. package/console-app/assets/chunk-SHT3W25Y-BX8We-wN.js +168 -0
  22. package/console-app/assets/{chunk-6Q2QTUOP-B6uqaxr0.js → chunk-SVP7TREG-Cl0GgAPC.js} +1 -1
  23. package/console-app/assets/{chunk-GF5L2VYU-Cw7tsTe6.js → chunk-TICWLB2K-IWZAWDhu.js} +2 -2
  24. package/console-app/assets/chunk-XXDRQBXY-CGWcS5Ol.js +1 -0
  25. package/console-app/assets/classDiagram-ZZMXUADV-OGsmOlmO.js +1 -0
  26. package/console-app/assets/classDiagram-v2-VYDZK3BY-OGsmOlmO.js +1 -0
  27. package/console-app/assets/cose-bilkent-JH36ORCC-GsQ0JAnL.js +1 -0
  28. package/console-app/assets/cynefin-OW5HDTMX-hZsAZp_5.js +1 -0
  29. package/console-app/assets/{cynefinDiagram-MW4NZA55-BzFWEf8Y.js → cynefinDiagram-5FMLGOSQ-CsyMovx1.js} +1 -1
  30. package/console-app/assets/cytoscape.esm-B-1iW2ft.js +321 -0
  31. package/console-app/assets/dagre-BP8XEFz-.js +1 -0
  32. package/console-app/assets/dagre-GXQ25YYZ-Jg5285rx.js +4 -0
  33. package/console-app/assets/{diagram-7IWD3JNH-C58VaHJt.js → diagram-S7CK7UJ4-n9JiR8HK.js} +4 -4
  34. package/console-app/assets/{diagram-UB23O5K3-CmRNd5vm.js → diagram-UQ7AKVKN-Cde-dgbI.js} +1 -1
  35. package/console-app/assets/{diagram-B4RE2ZJO-B3w3TcXn.js → diagram-VSXAHHWV-CPZUg4FP.js} +1 -1
  36. package/console-app/assets/{diagram-Q27KOJAE-7oaP3D-d.js → diagram-VX7I27RA-B2rCDWvn.js} +1 -1
  37. package/console-app/assets/{diagram-LBJQPF4R-L1ZkDsab.js → diagram-Z3DM3KII-UwO0hte3.js} +1 -1
  38. package/console-app/assets/{ebnfDiagram-BXEA7PRR-D0rxzLaa.js → ebnfDiagram-PWID7BFC-BGJ_PBlS.js} +1 -1
  39. package/console-app/assets/erDiagram-RLTQ6QDP-CKsTScr3.js +99 -0
  40. package/console-app/assets/eventmodeling-NTZA5JFV-CnZOTLz3.js +1 -0
  41. package/console-app/assets/flowDiagram-HODETNUW-TYMCrte8.js +1 -0
  42. package/console-app/assets/ganttDiagram-EL5Y4UJY-koeTkIEA.js +292 -0
  43. package/console-app/assets/gitGraph-4MIJSDKK-DyRPbcM4.js +1 -0
  44. package/console-app/assets/{gitGraphDiagram-DS77QQ5N-JaW7OYCY.js → gitGraphDiagram-WWUBYQGX-DSIejrYw.js} +1 -1
  45. package/console-app/assets/graphlib-BpQ_697T.js +1 -0
  46. package/console-app/assets/index-BbJGr-r1.css +1 -0
  47. package/console-app/assets/index-Du9_fRSw.js +262 -0
  48. package/console-app/assets/info-A6RAGUB7-C63f9an_.js +1 -0
  49. package/console-app/assets/{infoDiagram-6WML65LV-DIbMcTbW.js → infoDiagram-27XIBGKW-Dz5gMcUF.js} +1 -1
  50. package/console-app/assets/{ishikawaDiagram-WSZJBQD7-mozqgfxi.js → ishikawaDiagram-5VMMS53U-m-nTAZTH.js} +1 -1
  51. package/console-app/assets/{journeyDiagram-NVQOT4AX-CKDrjPz5.js → journeyDiagram-3NMN7TZE-C7mjFY7i.js} +2 -2
  52. package/console-app/assets/{kanban-definition-27J2QSJJ-B9shPbST.js → kanban-definition-UXKFOSKX-Cm7PqOOP.js} +2 -2
  53. package/console-app/assets/{katex-CXMH3UgJ.js → katex-ZlcWpGUi.js} +2 -2
  54. package/console-app/assets/{line-DLrnl2PN.js → line-RZNRGurC.js} +1 -1
  55. package/console-app/assets/linear-C2IGWMlF.js +1 -0
  56. package/console-app/assets/{mermaid-parser.core-ElI_yw4f.js → mermaid-parser.core-DN1yDqgB.js} +3 -3
  57. package/console-app/assets/mermaid.core-DDRs3TbC.js +44 -0
  58. package/console-app/assets/{mindmap-definition-FAOFIHXS-BTvmLZE7.js → mindmap-definition-YA3MSWOX-o6riOwlF.js} +1 -1
  59. package/console-app/assets/packet-AYTQ26CC-B89F6gXG.js +1 -0
  60. package/console-app/assets/{pegDiagram-VL7TDLO6-1hBiUSmO.js → pegDiagram-XKGWAZYB-BQ1AAIaV.js} +1 -1
  61. package/console-app/assets/pie-WAS4IAKB-CzuwQlQz.js +1 -0
  62. package/console-app/assets/{pieDiagram-7S7Q4E2Y-vvgYfdFq.js → pieDiagram-E7YTZNPT-DlcGHWGT.js} +1 -1
  63. package/console-app/assets/{quadrantDiagram-CIZ2JOQS-B_emxK6O.js → quadrantDiagram-AXDQQJYC-DdITwqw-.js} +1 -1
  64. package/console-app/assets/radar-RG4KPBEZ-DlJ29jAN.js +1 -0
  65. package/console-app/assets/railroad-74A4TZTK-BL49fdM8.js +1 -0
  66. package/console-app/assets/railroad-abnf-HS5TGJTU-D9Ej_sin.js +1 -0
  67. package/console-app/assets/railroad-ebnf-LZEXJU2U-CjzlC3qv.js +1 -0
  68. package/console-app/assets/railroad-peg-WCYAUIDC-BPa6lIrj.js +1 -0
  69. package/console-app/assets/{railroadDiagram-AXF67PYL-IXXj_KlB.js → railroadDiagram-O6MQD6OU-BNgQGtF5.js} +1 -1
  70. package/console-app/assets/{requirementDiagram-LRYGKXZP-B15ZEbec.js → requirementDiagram-BXWQKSXE-48lE_WeD.js} +2 -2
  71. package/console-app/assets/{sankeyDiagram-W5VNT64P-w-sj_WN8.js → sankeyDiagram-P5KCCOFB-WmTardCP.js} +1 -1
  72. package/console-app/assets/{sequenceDiagram-SI44F4Z6-BP1UgEbX.js → sequenceDiagram-WJ2MYXX4-Bd5cHDMs.js} +1 -1
  73. package/console-app/assets/src-BTXg_NtK.js +1 -0
  74. package/console-app/assets/{stateDiagram-OKZ733FA-DE4L-y3n.js → stateDiagram-D77RDMKH-DBoCkqGv.js} +1 -1
  75. package/console-app/assets/stateDiagram-v2-MP3YSRHH-BLbaZawL.js +1 -0
  76. package/console-app/assets/swimlanes-42K2YHIH-lecUPBaK.js +1 -0
  77. package/console-app/assets/swimlanesDiagram-VR7AAH4N-CM_5HS_7.js +8 -0
  78. package/console-app/assets/{timeline-definition-Z64GVDOM-Cc8M2qee.js → timeline-definition-24CTP7MA-CWq0OWm1.js} +1 -1
  79. package/console-app/assets/treeView-Q6P3EWNA-C7lEeqUz.js +1 -0
  80. package/console-app/assets/treemap-WGGIJYW6-Bkx2DAoI.js +1 -0
  81. package/console-app/assets/{vennDiagram-T6HMQDX7-dpGyGzMg.js → vennDiagram-4TSXK5OY-Bw_kGRL3.js} +1 -1
  82. package/console-app/assets/wardley-WFR3VGLG-V0zki2L0.js +1 -0
  83. package/console-app/assets/{wardleyDiagram-T6FBY63Y-CBvRf8GJ.js → wardleyDiagram-VM6X3IG4-C5vrwEHM.js} +1 -1
  84. package/console-app/assets/{xychartDiagram-ELKLHX3M-UlPqx-ve.js → xychartDiagram-S5SC5T6Z-B9uA0moC.js} +3 -3
  85. package/console-app/index.html +2 -3
  86. package/dist/.pikku/addon/index.d.ts +1 -1
  87. package/dist/.pikku/addon/index.js +1 -1
  88. package/dist/.pikku/addon/pikku-addon-types.gen.d.ts +1 -1
  89. package/dist/.pikku/addon/pikku-addon-types.gen.js +1 -1
  90. package/dist/.pikku/agent/index.d.ts +1 -1
  91. package/dist/.pikku/agent/index.js +1 -1
  92. package/dist/.pikku/agent/pikku-agent-types.gen.d.ts +6 -6
  93. package/dist/.pikku/agent/pikku-model-aliases.gen.js +1 -1
  94. package/dist/.pikku/analytics/index.d.ts +7 -0
  95. package/dist/.pikku/analytics/index.js +7 -0
  96. package/dist/.pikku/analytics/pikku-analytics-types.gen.d.ts +5 -0
  97. package/dist/.pikku/analytics/pikku-analytics-types.gen.js +4 -0
  98. package/dist/.pikku/auth/auth.types.d.ts +1 -1
  99. package/dist/.pikku/auth/auth.types.js +1 -1
  100. package/dist/.pikku/auth/index.d.ts +1 -1
  101. package/dist/.pikku/auth/index.js +1 -1
  102. package/dist/.pikku/auth/pikku-auth-types.gen.d.ts +1 -1
  103. package/dist/.pikku/auth/pikku-auth-types.gen.js +1 -1
  104. package/dist/.pikku/channel/index.d.ts +1 -1
  105. package/dist/.pikku/channel/index.js +1 -1
  106. package/dist/.pikku/channel/pikku-channel-types.gen.d.ts +3 -3
  107. package/dist/.pikku/channel/pikku-channel-types.gen.js +1 -1
  108. package/dist/.pikku/cli/index.d.ts +1 -1
  109. package/dist/.pikku/cli/index.js +1 -1
  110. package/dist/.pikku/cli/pikku-cli-channel.d.ts +7 -7
  111. package/dist/.pikku/cli/pikku-cli-channel.js +31 -1
  112. package/dist/.pikku/cli/pikku-cli-client.gen.d.ts +1 -1
  113. package/dist/.pikku/cli/pikku-cli-client.gen.js +1 -1
  114. package/dist/.pikku/cli/pikku-cli-contracts-meta.gen.d.ts +1 -1
  115. package/dist/.pikku/cli/pikku-cli-contracts-meta.gen.js +1 -1
  116. package/dist/.pikku/cli/pikku-cli-contracts-meta.gen.json +170 -0
  117. package/dist/.pikku/cli/pikku-cli-types.gen.d.ts +2 -2
  118. package/dist/.pikku/cli/pikku-cli-types.gen.js +1 -1
  119. package/dist/.pikku/cli/pikku-cli-wirings-meta.gen.js +1 -1
  120. package/dist/.pikku/cli/pikku-cli-wirings-meta.gen.json +170 -0
  121. package/dist/.pikku/cli/pikku-cli-wirings.gen.d.ts +1 -1
  122. package/dist/.pikku/cli/pikku-cli-wirings.gen.js +1 -1
  123. package/dist/.pikku/cli/pikku-cli.gen.d.ts +1 -1
  124. package/dist/.pikku/cli/pikku-cli.gen.js +1 -1
  125. package/dist/.pikku/error/index.d.ts +1 -1
  126. package/dist/.pikku/error/index.js +1 -1
  127. package/dist/.pikku/error/pikku-error-types.gen.d.ts +1 -1
  128. package/dist/.pikku/error/pikku-error-types.gen.js +1 -1
  129. package/dist/.pikku/function/index.d.ts +1 -1
  130. package/dist/.pikku/function/index.js +1 -1
  131. package/dist/.pikku/function/pikku-function-types.gen.d.ts +8 -7
  132. package/dist/.pikku/function/pikku-function-types.gen.js +1 -1
  133. package/dist/.pikku/function/pikku-functions-meta.gen.js +1 -1
  134. package/dist/.pikku/function/pikku-functions-meta.gen.json +234 -26
  135. package/dist/.pikku/function/pikku-functions.gen.js +9 -1
  136. package/dist/.pikku/gateway/index.d.ts +1 -1
  137. package/dist/.pikku/gateway/index.js +1 -1
  138. package/dist/.pikku/gateway/pikku-gateway-types.gen.d.ts +1 -1
  139. package/dist/.pikku/gateway/pikku-gateway-types.gen.js +1 -1
  140. package/dist/.pikku/http/index.d.ts +1 -1
  141. package/dist/.pikku/http/index.js +1 -1
  142. package/dist/.pikku/http/pikku-http-types.gen.d.ts +1 -1
  143. package/dist/.pikku/http/pikku-http-types.gen.js +1 -1
  144. package/dist/.pikku/mcp/index.d.ts +1 -1
  145. package/dist/.pikku/mcp/index.js +1 -1
  146. package/dist/.pikku/mcp/pikku-mcp-types.gen.d.ts +1 -1
  147. package/dist/.pikku/mcp/pikku-mcp-types.gen.js +1 -1
  148. package/dist/.pikku/middleware/index.d.ts +1 -1
  149. package/dist/.pikku/middleware/index.js +1 -1
  150. package/dist/.pikku/middleware/pikku-middleware-types.gen.d.ts +1 -1
  151. package/dist/.pikku/middleware/pikku-middleware-types.gen.js +1 -1
  152. package/dist/.pikku/pikku-bootstrap-scenarios.gen.d.ts +1 -1
  153. package/dist/.pikku/pikku-bootstrap-scenarios.gen.js +1 -1
  154. package/dist/.pikku/pikku-bootstrap.gen.d.ts +1 -1
  155. package/dist/.pikku/pikku-bootstrap.gen.js +1 -1
  156. package/dist/.pikku/pikku-services.gen.d.ts +5 -1
  157. package/dist/.pikku/pikku-services.gen.js +4 -0
  158. package/dist/.pikku/queue/index.d.ts +1 -1
  159. package/dist/.pikku/queue/index.js +1 -1
  160. package/dist/.pikku/queue/pikku-queue-types.gen.d.ts +1 -1
  161. package/dist/.pikku/queue/pikku-queue-types.gen.js +1 -1
  162. package/dist/.pikku/queue/pikku-queue-workers-wirings-meta.gen.js +1 -1
  163. package/dist/.pikku/queue/pikku-queue-workers-wirings.gen.d.ts +1 -1
  164. package/dist/.pikku/queue/pikku-queue-workers-wirings.gen.js +1 -1
  165. package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.js +1 -1
  166. package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.json +10 -0
  167. package/dist/.pikku/scenarios/index.d.ts +1 -1
  168. package/dist/.pikku/scenarios/index.js +1 -1
  169. package/dist/.pikku/scenarios/pikku-personas.gen.d.ts +1 -1
  170. package/dist/.pikku/scenarios/pikku-personas.gen.js +1 -1
  171. package/dist/.pikku/scenarios/pikku-scenario-functions-meta.gen.js +1 -1
  172. package/dist/.pikku/scenarios/pikku-scenario-functions.gen.d.ts +1 -1
  173. package/dist/.pikku/scenarios/pikku-scenario-types.gen.d.ts +1 -1
  174. package/dist/.pikku/scenarios/pikku-scenario-wirings-meta.gen.js +1 -1
  175. package/dist/.pikku/scenarios/pikku-scenario-wirings.gen.d.ts +1 -1
  176. package/dist/.pikku/scenarios/schemas/register.gen.d.ts +1 -1
  177. package/dist/.pikku/scenarios/schemas/register.gen.js +1 -1
  178. package/dist/.pikku/scheduler/index.d.ts +1 -1
  179. package/dist/.pikku/scheduler/index.js +1 -1
  180. package/dist/.pikku/scheduler/pikku-scheduler-types.gen.d.ts +1 -1
  181. package/dist/.pikku/scheduler/pikku-scheduler-types.gen.js +1 -1
  182. package/dist/.pikku/schemas/register.gen.js +31 -1
  183. package/dist/.pikku/schemas/schemas/FabricChangesAskInput.schema.json +1 -0
  184. package/dist/.pikku/schemas/schemas/FabricChangesAskOutput.schema.json +1 -0
  185. package/dist/.pikku/schemas/schemas/FabricChangesClaimInput.schema.json +1 -0
  186. package/dist/.pikku/schemas/schemas/FabricChangesClaimOutput.schema.json +1 -0
  187. package/dist/.pikku/schemas/schemas/FabricChangesDoneInput.schema.json +1 -0
  188. package/dist/.pikku/schemas/schemas/FabricChangesDoneOutput.schema.json +1 -0
  189. package/dist/.pikku/schemas/schemas/FabricChangesListInput.schema.json +1 -0
  190. package/dist/.pikku/schemas/schemas/FabricChangesListOutput.schema.json +1 -0
  191. package/dist/.pikku/schemas/schemas/FabricChangesShotInput.schema.json +1 -0
  192. package/dist/.pikku/schemas/schemas/FabricChangesShotOutput.schema.json +1 -0
  193. package/dist/.pikku/schemas/schemas/FabricChangesShowInput.schema.json +1 -0
  194. package/dist/.pikku/schemas/schemas/FabricChangesShowOutput.schema.json +1 -0
  195. package/dist/.pikku/schemas/schemas/FabricDeployApplyOutput.schema.json +1 -1
  196. package/dist/.pikku/schemas/schemas/FabricFindingsListOutput.schema.json +1 -1
  197. package/dist/.pikku/schemas/schemas/FabricProjectsListOutput.schema.json +1 -1
  198. package/dist/.pikku/schemas/schemas/FabricPublishOutput.schema.json +1 -1
  199. package/dist/.pikku/schemas/schemas/FabricRollbackOutput.schema.json +1 -1
  200. package/dist/.pikku/schemas/schemas/FabricSecretsDeleteOutput.schema.json +1 -1
  201. package/dist/.pikku/schemas/schemas/FabricSecretsRotateOutput.schema.json +1 -1
  202. package/dist/.pikku/schemas/schemas/PikkuAnalyticsOutput.schema.json +1 -0
  203. package/dist/.pikku/schemas/schemas/PikkuFeatureFlagsScaffoldOutput.schema.json +1 -0
  204. package/dist/.pikku/schemas/schemas/PikkuFlagsInput.schema.json +1 -0
  205. package/dist/.pikku/scopes/index.d.ts +2 -1
  206. package/dist/.pikku/scopes/index.js +2 -1
  207. package/dist/.pikku/scopes/pikku-flags-meta.gen.json +1 -0
  208. package/dist/.pikku/scopes/pikku-flags.gen.d.ts +41 -0
  209. package/dist/.pikku/scopes/pikku-flags.gen.js +34 -0
  210. package/dist/.pikku/scopes/pikku-personas.gen.js +1 -1
  211. package/dist/.pikku/scopes/pikku-roles.gen.d.ts +1 -1
  212. package/dist/.pikku/scopes/pikku-scope-types.gen.d.ts +2 -1
  213. package/dist/.pikku/scopes/pikku-scope-types.gen.js +2 -1
  214. package/dist/.pikku/scopes/pikku-scopes.gen.d.ts +1 -1
  215. package/dist/.pikku/secrets/index.d.ts +1 -1
  216. package/dist/.pikku/secrets/index.js +1 -1
  217. package/dist/.pikku/secrets/pikku-secret-types.gen.d.ts +1 -1
  218. package/dist/.pikku/secrets/pikku-secret-types.gen.js +1 -1
  219. package/dist/.pikku/secrets/pikku-secrets.gen.d.ts +1 -1
  220. package/dist/.pikku/secrets/pikku-secrets.gen.js +1 -1
  221. package/dist/.pikku/services/pikku-meta-service.gen.d.ts +1 -1
  222. package/dist/.pikku/services/pikku-meta-service.gen.js +1 -1
  223. package/dist/.pikku/setup/index.d.ts +1 -1
  224. package/dist/.pikku/setup/index.js +1 -1
  225. package/dist/.pikku/setup/pikku-setup-types.gen.d.ts +2 -2
  226. package/dist/.pikku/setup/pikku-setup-types.gen.js +1 -1
  227. package/dist/.pikku/trigger/index.d.ts +1 -1
  228. package/dist/.pikku/trigger/index.js +1 -1
  229. package/dist/.pikku/trigger/pikku-trigger-types.gen.d.ts +1 -1
  230. package/dist/.pikku/trigger/pikku-trigger-types.gen.js +1 -1
  231. package/dist/.pikku/variables/index.d.ts +1 -1
  232. package/dist/.pikku/variables/index.js +1 -1
  233. package/dist/.pikku/variables/pikku-variable-types.gen.d.ts +1 -1
  234. package/dist/.pikku/variables/pikku-variable-types.gen.js +1 -1
  235. package/dist/.pikku/variables/pikku-variables.gen.d.ts +1 -1
  236. package/dist/.pikku/variables/pikku-variables.gen.js +1 -1
  237. package/dist/.pikku/workflow/index.d.ts +1 -1
  238. package/dist/.pikku/workflow/index.js +1 -1
  239. package/dist/.pikku/workflow/meta/allWorkflow.gen.json +42 -6
  240. package/dist/.pikku/workflow/pikku-workflow-types.gen.d.ts +1 -1
  241. package/dist/.pikku/workflow/pikku-workflow-types.gen.js +1 -1
  242. package/dist/.pikku/workflow/pikku-workflow-wirings-meta.gen.js +1 -1
  243. package/dist/.pikku/workflow/pikku-workflow-wirings.gen.js +1 -1
  244. package/dist/bin/pikku-bin.mjs +2 -2
  245. package/dist/src/deploy/analyzer/analyzer.d.ts +1 -1
  246. package/dist/src/deploy/analyzer/analyzer.js +40 -2
  247. package/dist/src/deploy/analyzer/grouping.d.ts +41 -7
  248. package/dist/src/deploy/analyzer/grouping.js +76 -2
  249. package/dist/src/deploy/build-pipeline.js +4 -0
  250. package/dist/src/fabric/fabric-commands.d.ts +323 -138
  251. package/dist/src/fabric/fabric-commands.js +135 -0
  252. package/dist/src/fabric/functions/add.function.d.ts +3 -3
  253. package/dist/src/fabric/functions/addon-verify.function.d.ts +9 -9
  254. package/dist/src/fabric/functions/changes-ask.function.d.ts +34 -0
  255. package/dist/src/fabric/functions/changes-ask.function.js +30 -0
  256. package/dist/src/fabric/functions/changes-claim.function.d.ts +50 -0
  257. package/dist/src/fabric/functions/changes-claim.function.js +43 -0
  258. package/dist/src/fabric/functions/changes-done.function.d.ts +55 -0
  259. package/dist/src/fabric/functions/changes-done.function.js +59 -0
  260. package/dist/src/fabric/functions/changes-list.function.d.ts +60 -0
  261. package/dist/src/fabric/functions/changes-list.function.js +82 -0
  262. package/dist/src/fabric/functions/changes-shot.function.d.ts +66 -0
  263. package/dist/src/fabric/functions/changes-shot.function.js +56 -0
  264. package/dist/src/fabric/functions/changes-show.function.d.ts +41 -0
  265. package/dist/src/fabric/functions/changes-show.function.js +80 -0
  266. package/dist/src/fabric/functions/db-schema.function.d.ts +3 -3
  267. package/dist/src/fabric/functions/deploy-list.function.d.ts +3 -3
  268. package/dist/src/fabric/functions/deploy-units.function.d.ts +3 -3
  269. package/dist/src/fabric/functions/deploy.function.d.ts +12 -12
  270. package/dist/src/fabric/functions/deploy.function.js +6 -5
  271. package/dist/src/fabric/functions/domains-add.function.d.ts +7 -7
  272. package/dist/src/fabric/functions/domains-list.function.d.ts +3 -3
  273. package/dist/src/fabric/functions/domains-remove.function.d.ts +3 -3
  274. package/dist/src/fabric/functions/errors.function.d.ts +3 -3
  275. package/dist/src/fabric/functions/findings-clear.function.d.ts +3 -3
  276. package/dist/src/fabric/functions/findings-flush.function.d.ts +3 -3
  277. package/dist/src/fabric/functions/findings-list.function.d.ts +3 -3
  278. package/dist/src/fabric/functions/init.function.d.ts +3 -3
  279. package/dist/src/fabric/functions/link.function.d.ts +3 -3
  280. package/dist/src/fabric/functions/link.function.js +3 -2
  281. package/dist/src/fabric/functions/llm-key.function.d.ts +9 -9
  282. package/dist/src/fabric/functions/login.function.d.ts +3 -3
  283. package/dist/src/fabric/functions/logs.function.d.ts +3 -3
  284. package/dist/src/fabric/functions/logs.function.js +2 -1
  285. package/dist/src/fabric/functions/metrics.function.d.ts +3 -3
  286. package/dist/src/fabric/functions/projects-list.function.d.ts +3 -3
  287. package/dist/src/fabric/functions/publish.function.d.ts +3 -3
  288. package/dist/src/fabric/functions/report.function.d.ts +15 -15
  289. package/dist/src/fabric/functions/rollback.function.d.ts +9 -9
  290. package/dist/src/fabric/functions/secrets-delete.function.d.ts +3 -3
  291. package/dist/src/fabric/functions/secrets-list.function.d.ts +3 -3
  292. package/dist/src/fabric/functions/secrets-rotate.function.d.ts +3 -3
  293. package/dist/src/fabric/functions/secrets-set.function.d.ts +3 -3
  294. package/dist/src/fabric/functions/smoke.function.d.ts +3 -3
  295. package/dist/src/fabric/functions/status.function.d.ts +3 -3
  296. package/dist/src/fabric/functions/trace.function.d.ts +3 -3
  297. package/dist/src/fabric/functions/validate.function.d.ts +7 -7
  298. package/dist/src/fabric/functions/variables-get.function.d.ts +3 -3
  299. package/dist/src/fabric/functions/variables-set.function.d.ts +6 -6
  300. package/dist/src/fabric/lib/changes.d.ts +38 -0
  301. package/dist/src/fabric/lib/changes.js +70 -0
  302. package/dist/src/fabric/lib/errors.d.ts +21 -0
  303. package/dist/src/fabric/lib/errors.js +21 -0
  304. package/dist/src/fabric/lib/finding.d.ts +3 -3
  305. package/dist/src/fabric/lib/git.d.ts +3 -2
  306. package/dist/src/fabric/lib/git.js +10 -8
  307. package/dist/src/fabric/lib/output.d.ts +20 -0
  308. package/dist/src/fabric/lib/output.js +32 -7
  309. package/dist/src/functions/commands/all.d.ts +1 -1
  310. package/dist/src/functions/commands/audit.d.ts +1 -1
  311. package/dist/src/functions/commands/binary.d.ts +3 -3
  312. package/dist/src/functions/commands/bootstrap.d.ts +1 -1
  313. package/dist/src/functions/commands/bootstrap.js +3 -0
  314. package/dist/src/functions/commands/db-audit.d.ts +1 -1
  315. package/dist/src/functions/commands/db-baseline.d.ts +1 -1
  316. package/dist/src/functions/commands/db-check.d.ts +1 -1
  317. package/dist/src/functions/commands/db-codegen.d.ts +1 -1
  318. package/dist/src/functions/commands/db-export.d.ts +1 -1
  319. package/dist/src/functions/commands/db-generate.d.ts +1 -1
  320. package/dist/src/functions/commands/db-migrate.d.ts +1 -1
  321. package/dist/src/functions/commands/db-reset.d.ts +3 -3
  322. package/dist/src/functions/commands/deploy-apply.d.ts +3 -3
  323. package/dist/src/functions/commands/deploy-apply.js +35 -3
  324. package/dist/src/functions/commands/deploy-info.d.ts +1 -1
  325. package/dist/src/functions/commands/deploy-plan.d.ts +3 -3
  326. package/dist/src/functions/commands/deploy-plan.js +1 -0
  327. package/dist/src/functions/commands/dev-agent-runner.d.ts +9 -7
  328. package/dist/src/functions/commands/dev-agent-runner.js +56 -12
  329. package/dist/src/functions/commands/dev.d.ts +3 -3
  330. package/dist/src/functions/commands/dev.js +60 -6
  331. package/dist/src/functions/commands/dist.d.ts +3 -3
  332. package/dist/src/functions/commands/dist.js +2 -9
  333. package/dist/src/functions/commands/doc.d.ts +3 -3
  334. package/dist/src/functions/commands/emails-init.d.ts +1 -1
  335. package/dist/src/functions/commands/enable.d.ts +9 -9
  336. package/dist/src/functions/commands/import-n8n.d.ts +3 -3
  337. package/dist/src/functions/commands/info.d.ts +4 -4
  338. package/dist/src/functions/commands/init-or-warn.d.ts +19 -0
  339. package/dist/src/functions/commands/init-or-warn.js +25 -0
  340. package/dist/src/functions/commands/knowledge-index.d.ts +6 -6
  341. package/dist/src/functions/commands/knowledge-plan.d.ts +15 -15
  342. package/dist/src/functions/commands/knowledge-reconcile.d.ts +6 -6
  343. package/dist/src/functions/commands/knowledge-validate.d.ts +6 -6
  344. package/dist/src/functions/commands/login.d.ts +7 -7
  345. package/dist/src/functions/commands/meta.d.ts +34 -34
  346. package/dist/src/functions/commands/new-addon.d.ts +3 -3
  347. package/dist/src/functions/commands/new-function.d.ts +3 -3
  348. package/dist/src/functions/commands/new-middleware.d.ts +3 -3
  349. package/dist/src/functions/commands/new-permission.d.ts +3 -3
  350. package/dist/src/functions/commands/new-wiring.d.ts +3 -3
  351. package/dist/src/functions/commands/persona-sync.d.ts +3 -3
  352. package/dist/src/functions/commands/persona.d.ts +7 -7
  353. package/dist/src/functions/commands/pikku-command-bootstrap.d.ts +1 -1
  354. package/dist/src/functions/commands/pikku-command-summary.d.ts +1 -1
  355. package/dist/src/functions/commands/roles-audit.d.ts +1 -1
  356. package/dist/src/functions/commands/roles-prune.d.ts +3 -3
  357. package/dist/src/functions/commands/scenario.d.ts +7 -7
  358. package/dist/src/functions/commands/scopes-audit.d.ts +1 -1
  359. package/dist/src/functions/commands/scopes-prune.d.ts +3 -3
  360. package/dist/src/functions/commands/semver.d.ts +1 -1
  361. package/dist/src/functions/commands/serve.d.ts +3 -3
  362. package/dist/src/functions/commands/serve.js +40 -3
  363. package/dist/src/functions/commands/skills.d.ts +6 -6
  364. package/dist/src/functions/commands/update.d.ts +1 -1
  365. package/dist/src/functions/commands/validate.d.ts +6 -6
  366. package/dist/src/functions/commands/versions-check.d.ts +1 -1
  367. package/dist/src/functions/commands/versions-init.d.ts +3 -3
  368. package/dist/src/functions/commands/versions-update.d.ts +1 -1
  369. package/dist/src/functions/commands/watch.d.ts +3 -3
  370. package/dist/src/functions/db/zod-codegen.d.ts +19 -19
  371. package/dist/src/functions/knowledge/schemas.d.ts +5 -5
  372. package/dist/src/functions/runtimes/fetch/index.d.ts +1 -1
  373. package/dist/src/functions/runtimes/nextjs/pikku-command-nextjs.d.ts +1 -1
  374. package/dist/src/functions/runtimes/tanstack-start/pikku-command-tanstack-start.d.ts +1 -1
  375. package/dist/src/functions/runtimes/websocket/pikku-command-websocket-typed.d.ts +1 -1
  376. package/dist/src/functions/surface/build-surface-doc.js +1 -1
  377. package/dist/src/functions/surface/surface-doc.types.d.ts +1 -1
  378. package/dist/src/functions/surface/surface-editorial.js +5 -0
  379. package/dist/src/functions/validate/pikku-barrel-checks.js +2 -22
  380. package/dist/src/functions/validate/validate.d.ts +2 -2
  381. package/dist/src/functions/validate/websocket-deps-checks.d.ts +1 -1
  382. package/dist/src/functions/wirings/agent/pikku-command-agent-types.d.ts +1 -1
  383. package/dist/src/functions/wirings/agent/pikku-command-agent.d.ts +1 -1
  384. package/dist/src/functions/wirings/agent/pikku-command-public-agent.d.ts +1 -1
  385. package/dist/src/functions/wirings/agent-scorer/pikku-command-agent-scorer.d.ts +1 -1
  386. package/dist/src/functions/wirings/analytics/pikku-command-analytics.d.ts +11 -0
  387. package/dist/src/functions/wirings/analytics/pikku-command-analytics.js +66 -0
  388. package/dist/src/functions/wirings/analytics/serialize-analytics.d.ts +30 -0
  389. package/dist/src/functions/wirings/analytics/serialize-analytics.js +141 -0
  390. package/dist/src/functions/wirings/auth/pikku-command-auth.d.ts +3 -3
  391. package/dist/src/functions/wirings/auth/pikku-command-auth.js +2 -6
  392. package/dist/src/functions/wirings/auth/serialize-auth-gen.d.ts +1 -1
  393. package/dist/src/functions/wirings/auth/serialize-auth-gen.js +15 -36
  394. package/dist/src/functions/wirings/channels/pikku-command-channel-types.d.ts +1 -1
  395. package/dist/src/functions/wirings/channels/pikku-command-channels-map.d.ts +1 -1
  396. package/dist/src/functions/wirings/channels/pikku-command-channels.d.ts +1 -1
  397. package/dist/src/functions/wirings/cli/pikku-command-cli-entry.d.ts +1 -1
  398. package/dist/src/functions/wirings/cli/pikku-command-cli-types.d.ts +1 -1
  399. package/dist/src/functions/wirings/cli/pikku-command-cli.d.ts +1 -1
  400. package/dist/src/functions/wirings/console/pikku-command-console-functions.d.ts +1 -1
  401. package/dist/src/functions/wirings/console/pikku-command-nodes-meta.d.ts +1 -1
  402. package/dist/src/functions/wirings/credentials/pikku-command-credentials.d.ts +1 -1
  403. package/dist/src/functions/wirings/emails/pikku-command-emails.d.ts +1 -1
  404. package/dist/src/functions/wirings/errors/pikku-command-error-types.d.ts +1 -1
  405. package/dist/src/functions/wirings/flags/pikku-command-feature-flags-scaffold.d.ts +1 -0
  406. package/dist/src/functions/wirings/flags/pikku-command-feature-flags-scaffold.js +36 -0
  407. package/dist/src/functions/wirings/flags/pikku-command-flags.d.ts +7 -0
  408. package/dist/src/functions/wirings/flags/pikku-command-flags.js +36 -0
  409. package/dist/src/functions/wirings/flags/serialize-feature-flags-scaffold.d.ts +13 -0
  410. package/dist/src/functions/wirings/flags/serialize-feature-flags-scaffold.js +73 -0
  411. package/dist/src/functions/wirings/flags/serialize-flags-types.d.ts +14 -0
  412. package/dist/src/functions/wirings/flags/serialize-flags-types.js +68 -0
  413. package/dist/src/functions/wirings/functions/pikku-command-addon-types.d.ts +1 -1
  414. package/dist/src/functions/wirings/functions/pikku-command-function-types-split.d.ts +3 -3
  415. package/dist/src/functions/wirings/functions/pikku-command-function-types-split.js +1 -1
  416. package/dist/src/functions/wirings/functions/pikku-command-functions.d.ts +1 -1
  417. package/dist/src/functions/wirings/functions/pikku-command-leaf-indexes.d.ts +2 -2
  418. package/dist/src/functions/wirings/functions/pikku-command-leaf-indexes.js +2 -1
  419. package/dist/src/functions/wirings/functions/pikku-command-services.d.ts +1 -1
  420. package/dist/src/functions/wirings/functions/pikku-command-services.js +9 -2
  421. package/dist/src/functions/wirings/functions/schemas.d.ts +1 -1
  422. package/dist/src/functions/wirings/functions/serialize-function-types.d.ts +1 -1
  423. package/dist/src/functions/wirings/functions/serialize-function-types.js +9 -4
  424. package/dist/src/functions/wirings/gateway/pikku-command-gateway-types.d.ts +3 -3
  425. package/dist/src/functions/wirings/gateway/pikku-command-gateway.d.ts +1 -1
  426. package/dist/src/functions/wirings/graph/pikku-command-graph-wirings.d.ts +1 -1
  427. package/dist/src/functions/wirings/http/pikku-command-http-map.d.ts +1 -1
  428. package/dist/src/functions/wirings/http/pikku-command-http-routes.d.ts +1 -1
  429. package/dist/src/functions/wirings/http/pikku-command-http-types.d.ts +1 -1
  430. package/dist/src/functions/wirings/http/pikku-command-openapi.d.ts +1 -1
  431. package/dist/src/functions/wirings/mcp/pikku-command-mcp-json.d.ts +1 -1
  432. package/dist/src/functions/wirings/mcp/pikku-command-mcp-types.d.ts +1 -1
  433. package/dist/src/functions/wirings/mcp/pikku-command-mcp.d.ts +1 -1
  434. package/dist/src/functions/wirings/middleware/pikku-command-middleware.d.ts +1 -1
  435. package/dist/src/functions/wirings/package/pikku-command-package-types.d.ts +4 -3
  436. package/dist/src/functions/wirings/package/pikku-command-package-types.js +14 -1
  437. package/dist/src/functions/wirings/package/pikku-command-package.d.ts +1 -1
  438. package/dist/src/functions/wirings/package/serialize-package-types.d.ts +1 -0
  439. package/dist/src/functions/wirings/package/serialize-package-types.js +15 -0
  440. package/dist/src/functions/wirings/permissions/pikku-command-permissions.d.ts +1 -1
  441. package/dist/src/functions/wirings/personas/pikku-command-personas.d.ts +3 -3
  442. package/dist/src/functions/wirings/queue/pikku-command-queue-map.d.ts +1 -1
  443. package/dist/src/functions/wirings/queue/pikku-command-queue-service.d.ts +1 -1
  444. package/dist/src/functions/wirings/queue/pikku-command-queue-types.d.ts +1 -1
  445. package/dist/src/functions/wirings/queue/pikku-command-queue.d.ts +1 -1
  446. package/dist/src/functions/wirings/queue/pikku-queue-map.d.ts +1 -1
  447. package/dist/src/functions/wirings/realtime/pikku-command-events-scaffold.d.ts +1 -1
  448. package/dist/src/functions/wirings/realtime/pikku-command-realtime.d.ts +1 -1
  449. package/dist/src/functions/wirings/remote-jobs/pikku-command-remote-jobs.d.ts +1 -1
  450. package/dist/src/functions/wirings/roles/pikku-command-roles.d.ts +3 -3
  451. package/dist/src/functions/wirings/rpc/pikku-command-public-rpc.d.ts +1 -1
  452. package/dist/src/functions/wirings/rpc/pikku-command-react-query.d.ts +1 -1
  453. package/dist/src/functions/wirings/rpc/pikku-command-remote-rpc.d.ts +1 -1
  454. package/dist/src/functions/wirings/rpc/pikku-command-rpc-client.d.ts +1 -1
  455. package/dist/src/functions/wirings/rpc/pikku-command-rpc-map.d.ts +3 -3
  456. package/dist/src/functions/wirings/rpc/pikku-command-rpc.d.ts +1 -1
  457. package/dist/src/functions/wirings/scheduler/pikku-command-scheduler-types.d.ts +1 -1
  458. package/dist/src/functions/wirings/scheduler/pikku-command-scheduler.d.ts +1 -1
  459. package/dist/src/functions/wirings/scopes/pikku-command-scopes.d.ts +3 -3
  460. package/dist/src/functions/wirings/secrets/pikku-command-secrets.d.ts +1 -1
  461. package/dist/src/functions/wirings/triggers/pikku-command-trigger-types.d.ts +3 -3
  462. package/dist/src/functions/wirings/triggers/pikku-command-trigger.d.ts +1 -1
  463. package/dist/src/functions/wirings/variables/pikku-command-variables.d.ts +1 -1
  464. package/dist/src/functions/wirings/virtual-user/pikku-command-virtual-user-functions.d.ts +1 -1
  465. package/dist/src/functions/wirings/webhook/pikku-command-webhook.d.ts +1 -1
  466. package/dist/src/functions/wirings/workflow/pikku-command-workflow-routes.d.ts +1 -1
  467. package/dist/src/functions/wirings/workflow/pikku-command-workflow.d.ts +1 -1
  468. package/dist/src/functions/workflows/all.workflow.js +34 -9
  469. package/dist/src/services.js +7 -0
  470. package/dist/src/utils/analytics-schemas-file.d.ts +6 -0
  471. package/dist/src/utils/analytics-schemas-file.js +9 -0
  472. package/dist/src/utils/file-import-path.js +4 -1
  473. package/dist/src/utils/pikku-cli-config.d.ts +2 -2
  474. package/dist/src/utils/pikku-cli-config.js +28 -0
  475. package/dist/src/utils/remove-legacy-scaffold-file.js +4 -0
  476. package/dist/src/utils/resolve-from-project.d.ts +5 -0
  477. package/dist/src/utils/resolve-from-project.js +8 -2
  478. package/dist/src/utils/tsc-check.d.ts +11 -15
  479. package/dist/src/utils/tsc-check.js +97 -86
  480. package/dist/tsconfig.tsbuildinfo +1 -1
  481. package/package.json +32 -25
  482. package/snippets.json +1 -1
  483. package/surface.json +743 -27
  484. package/CHANGELOG.md +0 -9620
  485. package/console-app/assets/HelpPanel-nYO2hRY5.js +0 -1
  486. package/console-app/assets/architecture-TIHT7OUA-B-c05-x5.js +0 -1
  487. package/console-app/assets/architectureDiagram-T3A2C74G-BAH1O4B7.js +0 -36
  488. package/console-app/assets/blockDiagram-VBNYF7ZC-T3kmcPgj.js +0 -132
  489. package/console-app/assets/c4Diagram-5PPSVZJV-DRva89Br.js +0 -10
  490. package/console-app/assets/channel-DJ3jfSNX.js +0 -1
  491. package/console-app/assets/chunk-7BUUIJ7U-Bb538aSH.js +0 -1
  492. package/console-app/assets/chunk-7Z6QIM7H-uxzNGOHh.js +0 -10
  493. package/console-app/assets/chunk-I66GZJ75-DksrbEtn.js +0 -127
  494. package/console-app/assets/chunk-JQJVKLGR-BnRvPhDK.js +0 -156
  495. package/console-app/assets/chunk-QR6OTTB3-CgQotuzQ.js +0 -62
  496. package/console-app/assets/chunk-RYQCIY6F-Cei0abOq.js +0 -1
  497. package/console-app/assets/chunk-UBXNYLIW-B55XJk4O.js +0 -1
  498. package/console-app/assets/chunk-W5SLKNZC-gFa01tuI.js +0 -1
  499. package/console-app/assets/chunk-WRU74C26-C3ESZQ-F.js +0 -70
  500. package/console-app/assets/chunk-XXDRQBXY-D0tL6SVk.js +0 -1
  501. package/console-app/assets/classDiagram-JCYQIIEL-BqEwCDi8.js +0 -1
  502. package/console-app/assets/classDiagram-v2-OCEON4UE-BqEwCDi8.js +0 -1
  503. package/console-app/assets/cose-bilkent-JH36ORCC-CUxqwjs-.js +0 -1
  504. package/console-app/assets/cynefin-VYW2F7L2-Dh1yOBBs.js +0 -1
  505. package/console-app/assets/cytoscape.esm-B-NFISlW.js +0 -321
  506. package/console-app/assets/dagre-DKjebq_c.js +0 -1
  507. package/console-app/assets/dagre-VZM6K2ZE-BllFBMe9.js +0 -4
  508. package/console-app/assets/erDiagram-JOGREHBK-Bg0FPLS0.js +0 -85
  509. package/console-app/assets/eventmodeling-45OFAUF4-CVovwmpS.js +0 -1
  510. package/console-app/assets/flowDiagram-UKHOOZJN-DwRgEyXD.js +0 -1
  511. package/console-app/assets/ganttDiagram-PKOTCBZU-BBxxHrPG.js +0 -292
  512. package/console-app/assets/gitGraph-TEB2WS4Q-Cn1MjFvM.js +0 -1
  513. package/console-app/assets/graphlib-IlWVLY3o.js +0 -1
  514. package/console-app/assets/index-C8MC-uMB.css +0 -1
  515. package/console-app/assets/index-Deds7K2I.js +0 -290
  516. package/console-app/assets/info-DKCQHKI2-C2R7hV-y.js +0 -1
  517. package/console-app/assets/isUndefined-T4snU1Mx.js +0 -1
  518. package/console-app/assets/linear-BQOZezXu.js +0 -1
  519. package/console-app/assets/map-BmPfXn7V.js +0 -1
  520. package/console-app/assets/mermaid.core-B02bSmuz.js +0 -42
  521. package/console-app/assets/packet-7NZHBO7P-CkYMF0Cd.js +0 -1
  522. package/console-app/assets/pie-RZYD4A2V-BFMvieVM.js +0 -1
  523. package/console-app/assets/radar-I7S5WNFK-C_2tp7_w.js +0 -1
  524. package/console-app/assets/railroad-3IZDKUUU-DwlFJLv5.js +0 -1
  525. package/console-app/assets/railroad-abnf-AHOZXSZD-Cyu_rpdZ.js +0 -1
  526. package/console-app/assets/railroad-ebnf-EBAXGLYW-BLiwK-H7.js +0 -1
  527. package/console-app/assets/railroad-peg-LSFZ7HO6-BUDTDYmP.js +0 -1
  528. package/console-app/assets/src-BI35UZf8.js +0 -1
  529. package/console-app/assets/stateDiagram-v2-UEYNNEHI-BsP8TwKV.js +0 -1
  530. package/console-app/assets/swimlanes-SLNWSIFB-DvAJxCGQ.js +0 -2
  531. package/console-app/assets/swimlanesDiagram-ULZ7WXOC-BAXO3Id2.js +0 -8
  532. package/console-app/assets/treeView-QDETBFTQ-DnlS0s0_.js +0 -1
  533. package/console-app/assets/treemap-6X3UGDF4-CiUoxlJe.js +0 -1
  534. package/console-app/assets/wardley-OPB4EBWU-DrTySJtR.js +0 -1
  535. package/dist/.pikku/console/index.d.ts +0 -1
  536. package/dist/.pikku/console/index.js +0 -1
  537. package/dist/.pikku/console/pikku-node-types.gen.d.ts +0 -6
  538. package/dist/.pikku/console/pikku-node-types.gen.js +0 -1
  539. package/dist/.pikku/pikku-meta-service.gen.d.ts +0 -7
  540. package/dist/.pikku/pikku-meta-service.gen.js +0 -9
  541. package/dist/.pikku/pikku-types.gen.d.ts +0 -17
  542. package/dist/.pikku/pikku-types.gen.js +0 -28
  543. package/dist/.pikku/workflow/pikku-personas.gen.d.ts +0 -15
  544. package/dist/.pikku/workflow/pikku-personas.gen.js +0 -17
  545. package/dist/src/functions/surface/collect-surface.d.ts +0 -58
  546. package/dist/src/functions/surface/collect-surface.js +0 -613
  547. /package/console-app/assets/{sizeCapture-X5ZJPWSS-B0uUizjq.js → sizeCapture-INFHLROL-B0uUizjq.js} +0 -0
@@ -7,8 +7,8 @@
7
7
  */
8
8
  export declare const scopesPrune: import("#pikku/function").PikkuFunctionConfig<{
9
9
  yes?: boolean;
10
- }, void, "rpc" | "session", import("#pikku/function").PikkuFunctionSessionless<{
10
+ }, void, "rpc" | "session", import("#pikku/function").PikkuFunction<{
11
11
  yes?: boolean;
12
- }, void, "rpc" | "session", import("#pikku/function").WiredServices, unknown> | import("#pikku/function").PikkuFunction<{
12
+ }, void, "rpc" | "session", import("#pikku/function").WiredServices> | import("#pikku/function").PikkuFunctionSessionless<{
13
13
  yes?: boolean;
14
- }, void, "rpc" | "session", import("#pikku/function").WiredServices>, undefined, undefined>;
14
+ }, void, "rpc" | "session", import("#pikku/function").WiredServices, unknown>, undefined, undefined>;
@@ -22,4 +22,4 @@ export type SemverResult = {
22
22
  mode: 'compare';
23
23
  written: string;
24
24
  } & SurfaceChanges);
25
- export declare const pikkuSemver: import("#pikku/function").PikkuFunctionConfig<SemverInput, SemverResult, "rpc" | "session", import("#pikku/function").PikkuFunctionSessionless<SemverInput, SemverResult, "rpc" | "session", import("#pikku/function").WiredServices, unknown> | import("#pikku/function").PikkuFunction<SemverInput, SemverResult, "rpc" | "session", import("#pikku/function").WiredServices>, undefined, undefined>;
25
+ export declare const pikkuSemver: import("#pikku/function").PikkuFunctionConfig<SemverInput, SemverResult, "rpc" | "session", import("#pikku/function").PikkuFunction<SemverInput, SemverResult, "rpc" | "session", import("#pikku/function").WiredServices> | import("#pikku/function").PikkuFunctionSessionless<SemverInput, SemverResult, "rpc" | "session", import("#pikku/function").WiredServices, unknown>, undefined, undefined>;
@@ -2,12 +2,12 @@ export declare const serve: import("#pikku/function").PikkuFunctionConfig<{
2
2
  port?: string;
3
3
  console?: boolean;
4
4
  model?: string;
5
- }, void, "rpc" | "session", import("#pikku/function").PikkuFunctionSessionless<{
5
+ }, void, "rpc" | "session", import("#pikku/function").PikkuFunction<{
6
6
  port?: string;
7
7
  console?: boolean;
8
8
  model?: string;
9
- }, void, "rpc" | "session", import("#pikku/function").WiredServices, unknown> | import("#pikku/function").PikkuFunction<{
9
+ }, void, "rpc" | "session", import("#pikku/function").WiredServices> | import("#pikku/function").PikkuFunctionSessionless<{
10
10
  port?: string;
11
11
  console?: boolean;
12
12
  model?: string;
13
- }, void, "rpc" | "session", import("#pikku/function").WiredServices>, undefined, undefined>;
13
+ }, void, "rpc" | "session", import("#pikku/function").WiredServices, unknown>, undefined, undefined>;
@@ -1,10 +1,12 @@
1
1
  import { join, resolve } from 'path';
2
2
  import { pikkuSessionlessFunc } from '#pikku/function';
3
3
  import { InMemoryQueueService, QueueWebhookService } from '@pikku/core/services';
4
+ import { flattenScopeDefinitions } from '@pikku/core/scope';
5
+ import { flattenSystemRoleDefinitions } from '@pikku/core/role';
4
6
  import { ConsoleLogger, LocalEmailService, InMemoryAgentRunStateService, } from '@pikku/core/services';
5
7
  import { InMemoryTriggerService } from '@pikku/core/services';
6
8
  import { InMemoryWorkflowService } from '@pikku/core/services';
7
- import { KyselyAgentStorageService, KyselyAgentRunStateService, KyselyAgentRunService, } from '@pikku/kysely';
9
+ import { KyselyAgentStorageService, KyselyAgentRunStateService, KyselyAgentRunService, KyselyAnalyticsService, KyselyFeatureFlagStore, KyselyScopeService, KyselyWebhookService, } from '@pikku/kysely';
8
10
  import { stopSingletonServices } from '@pikku/core/utils';
9
11
  import { pikkuState } from '@pikku/core/state';
10
12
  import { wireAgentScorerQueueWorkers } from '@pikku/core/agent-scorer';
@@ -13,6 +15,7 @@ import { LocalContent, } from '@pikku/core/services/local-content';
13
15
  import { InMemorySchedulerService } from '@pikku/schedule';
14
16
  import { resolveDb, createKysely, parseDatabaseUrl, } from '../db/local-db.js';
15
17
  import { loadUserBootstrap, loadUserModule } from './load-user-project.js';
18
+ import { initOrWarn } from './init-or-warn.js';
16
19
  import { registerScenarioInstrumentation } from '../wirings/scenarios/register-scenario-instrumentation.js';
17
20
  import { createDevAgentRunner } from './dev-agent-runner.js';
18
21
  import { resolveConsoleMount } from './serve-console.js';
@@ -88,9 +91,34 @@ export const serve = pikkuSessionlessFunc({
88
91
  if ('init' in agentRunState && typeof agentRunState.init === 'function') {
89
92
  await agentRunState.init();
90
93
  }
94
+ // Flags and analytics get the same local database the rest of the services
95
+ // do, so a flag an operator flips in the console survives a restart and a
96
+ // declared event lands somewhere a query can reach.
97
+ //
98
+ // Dropped with a warning rather than thrown on, unlike the agent services
99
+ // above: both tables are generated from a declaration the project may have
100
+ // added since it last migrated, and neither absence is worse than what a
101
+ // project has today — an unregistered flag source resolves every gate open,
102
+ // and analytics without a service falls back to the logger. Failing the
103
+ // boot instead would turn adding one `featureFlag:` into a dead dev server.
104
+ const featureFlags = kysely
105
+ ? await initOrWarn(new KyselyFeatureFlagStore(kysely), 'featureFlags', logger)
106
+ : undefined;
107
+ const analyticsService = kysely
108
+ ? await initOrWarn(new KyselyAnalyticsService(kysely), 'analyticsService', logger)
109
+ : undefined;
110
+ const requiredServices = inspectorState.serviceAggregation.requiredServices;
111
+ const scopeService = kysely && requiredServices.has('scopeService')
112
+ ? new KyselyScopeService(kysely)
113
+ : undefined;
114
+ if (scopeService) {
115
+ await scopeService.init();
116
+ await scopeService.syncScopes(flattenScopeDefinitions(inspectorState.scopes.definitions));
117
+ await scopeService.syncSystemRoles(flattenSystemRoleDefinitions(inspectorState.systemRoles.definitions));
118
+ }
91
119
  const devLogger = new ConsoleLogger();
92
120
  const hasAgents = Object.keys(inspectorState.agents.agentsMeta).length > 0;
93
- const agentRunner = hasAgents
121
+ const agentRunner = hasAgents || requiredServices.has('agentRunner')
94
122
  ? await createDevAgentRunner({
95
123
  logger,
96
124
  projectRoot: config.rootDir,
@@ -99,6 +127,12 @@ export const serve = pikkuSessionlessFunc({
99
127
  : undefined;
100
128
  const eventHub = await devServerRunner.createEventHub();
101
129
  const serveQueueService = new InMemoryQueueService();
130
+ const serveWebhookService = kysely && requiredServices.has('webhookService')
131
+ ? new KyselyWebhookService(serveQueueService, kysely)
132
+ : new QueueWebhookService(serveQueueService);
133
+ if (serveWebhookService instanceof KyselyWebhookService) {
134
+ await serveWebhookService.init();
135
+ }
102
136
  const inMemoryServices = {
103
137
  logger: devLogger,
104
138
  ...(agentRunner ? { agentRunner } : {}),
@@ -106,13 +140,16 @@ export const serve = pikkuSessionlessFunc({
106
140
  metaService: new LocalMetaService(pikkuDir),
107
141
  schedulerService,
108
142
  queueService: serveQueueService,
109
- webhookService: new QueueWebhookService(serveQueueService),
143
+ webhookService: serveWebhookService,
144
+ ...(scopeService ? { scopeService } : {}),
110
145
  workflowService,
111
146
  workflowRunService: workflowService,
112
147
  triggerService: new InMemoryTriggerService(),
113
148
  agentStorage,
114
149
  agentRunState,
115
150
  agentRunService,
151
+ ...(featureFlags ? { featureFlags } : {}),
152
+ ...(analyticsService ? { analyticsService } : {}),
116
153
  eventHub,
117
154
  ...(kysely ? { kysely } : {}),
118
155
  content: localContent,
@@ -1,10 +1,10 @@
1
1
  export declare const pikkuSkillsList: import("#pikku/function").PikkuFunctionConfig<{
2
2
  target?: string;
3
- }, void, "rpc" | "session", import("#pikku/function").PikkuFunctionSessionless<{
3
+ }, void, "rpc" | "session", import("#pikku/function").PikkuFunction<{
4
4
  target?: string;
5
- }, void, "rpc" | "session", import("#pikku/function").WiredServices, unknown> | import("#pikku/function").PikkuFunction<{
5
+ }, void, "rpc" | "session", import("#pikku/function").WiredServices> | import("#pikku/function").PikkuFunctionSessionless<{
6
6
  target?: string;
7
- }, void, "rpc" | "session", import("#pikku/function").WiredServices>, undefined, undefined>;
7
+ }, void, "rpc" | "session", import("#pikku/function").WiredServices, unknown>, undefined, undefined>;
8
8
  export declare const pikkuSkillsInstall: import("#pikku/function").PikkuFunctionConfig<{
9
9
  agent?: string;
10
10
  only?: string;
@@ -12,18 +12,18 @@ export declare const pikkuSkillsInstall: import("#pikku/function").PikkuFunction
12
12
  fabric?: boolean;
13
13
  client?: boolean;
14
14
  update?: boolean;
15
- }, void, "rpc" | "session", import("#pikku/function").PikkuFunctionSessionless<{
15
+ }, void, "rpc" | "session", import("#pikku/function").PikkuFunction<{
16
16
  agent?: string;
17
17
  only?: string;
18
18
  core?: boolean;
19
19
  fabric?: boolean;
20
20
  client?: boolean;
21
21
  update?: boolean;
22
- }, void, "rpc" | "session", import("#pikku/function").WiredServices, unknown> | import("#pikku/function").PikkuFunction<{
22
+ }, void, "rpc" | "session", import("#pikku/function").WiredServices> | import("#pikku/function").PikkuFunctionSessionless<{
23
23
  agent?: string;
24
24
  only?: string;
25
25
  core?: boolean;
26
26
  fabric?: boolean;
27
27
  client?: boolean;
28
28
  update?: boolean;
29
- }, void, "rpc" | "session", import("#pikku/function").WiredServices>, undefined, undefined>;
29
+ }, void, "rpc" | "session", import("#pikku/function").WiredServices, unknown>, undefined, undefined>;
@@ -96,4 +96,4 @@ export declare const runUpdate: ({ rootDir, apply, updatePeers, install, tag, re
96
96
  registry: string;
97
97
  fetchPackument?: FetchPackument;
98
98
  }) => Promise<UpdateResult>;
99
- export declare const pikkuUpdate: import("#pikku/function").PikkuFunctionConfig<UpdateInput, UpdateResult, "rpc" | "session", import("#pikku/function").PikkuFunctionSessionless<UpdateInput, UpdateResult, "rpc" | "session", import("#pikku/function").WiredServices, unknown> | import("#pikku/function").PikkuFunction<UpdateInput, UpdateResult, "rpc" | "session", import("#pikku/function").WiredServices>, undefined, undefined>;
99
+ export declare const pikkuUpdate: import("#pikku/function").PikkuFunctionConfig<UpdateInput, UpdateResult, "rpc" | "session", import("#pikku/function").PikkuFunction<UpdateInput, UpdateResult, "rpc" | "session", import("#pikku/function").WiredServices> | import("#pikku/function").PikkuFunctionSessionless<UpdateInput, UpdateResult, "rpc" | "session", import("#pikku/function").WiredServices, unknown>, undefined, undefined>;
@@ -9,12 +9,12 @@ export declare const validate: import("#pikku/function").PikkuFunctionConfig<Rec
9
9
  }[];
10
10
  findings: {
11
11
  id: string;
12
- severity: "warn" | "error" | "info";
12
+ severity: "error" | "info" | "warn";
13
13
  message: string;
14
14
  path: string;
15
15
  fixHint: string;
16
16
  }[];
17
- }, "rpc" | "session", import("#pikku/function").PikkuFunctionSessionless<Record<string, never>, {
17
+ }, "rpc" | "session", import("#pikku/function").PikkuFunction<Record<string, never>, {
18
18
  ok: boolean;
19
19
  root: string;
20
20
  ran: {
@@ -24,12 +24,12 @@ export declare const validate: import("#pikku/function").PikkuFunctionConfig<Rec
24
24
  }[];
25
25
  findings: {
26
26
  id: string;
27
- severity: "warn" | "error" | "info";
27
+ severity: "error" | "info" | "warn";
28
28
  message: string;
29
29
  path: string;
30
30
  fixHint: string;
31
31
  }[];
32
- }, "rpc" | "session", import("#pikku/function").WiredServices, unknown> | import("#pikku/function").PikkuFunction<Record<string, never>, {
32
+ }, "rpc" | "session", import("#pikku/function").WiredServices> | import("#pikku/function").PikkuFunctionSessionless<Record<string, never>, {
33
33
  ok: boolean;
34
34
  root: string;
35
35
  ran: {
@@ -39,10 +39,10 @@ export declare const validate: import("#pikku/function").PikkuFunctionConfig<Rec
39
39
  }[];
40
40
  findings: {
41
41
  id: string;
42
- severity: "warn" | "error" | "info";
42
+ severity: "error" | "info" | "warn";
43
43
  message: string;
44
44
  path: string;
45
45
  fixHint: string;
46
46
  }[];
47
- }, "rpc" | "session", import("#pikku/function").WiredServices>, undefined, undefined>;
47
+ }, "rpc" | "session", import("#pikku/function").WiredServices, unknown>, undefined, undefined>;
48
48
  export { renderValidate };
@@ -1 +1 @@
1
- export declare const pikkuVersionsCheck: 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
+ export declare const pikkuVersionsCheck: import("#pikku/function").PikkuFunctionConfig<void, void, "rpc" | "session", import("#pikku/function").PikkuFunction<void, void, "rpc" | "session", import("#pikku/function").WiredServices> | import("#pikku/function").PikkuFunctionSessionless<void, void, "rpc" | "session", import("#pikku/function").WiredServices, unknown>, undefined, undefined>;
@@ -1,7 +1,7 @@
1
1
  export declare const pikkuVersionsInit: import("#pikku/function").PikkuFunctionConfig<{
2
2
  force?: boolean;
3
- }, void, "rpc" | "session", import("#pikku/function").PikkuFunctionSessionless<{
3
+ }, void, "rpc" | "session", import("#pikku/function").PikkuFunction<{
4
4
  force?: boolean;
5
- }, void, "rpc" | "session", import("#pikku/function").WiredServices, unknown> | import("#pikku/function").PikkuFunction<{
5
+ }, void, "rpc" | "session", import("#pikku/function").WiredServices> | import("#pikku/function").PikkuFunctionSessionless<{
6
6
  force?: boolean;
7
- }, void, "rpc" | "session", import("#pikku/function").WiredServices>, undefined, undefined>;
7
+ }, void, "rpc" | "session", import("#pikku/function").WiredServices, unknown>, undefined, undefined>;
@@ -1 +1 @@
1
- export declare const pikkuVersionsUpdate: 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
+ export declare const pikkuVersionsUpdate: import("#pikku/function").PikkuFunctionConfig<void, void, "rpc" | "session", import("#pikku/function").PikkuFunction<void, void, "rpc" | "session", import("#pikku/function").WiredServices> | import("#pikku/function").PikkuFunctionSessionless<void, void, "rpc" | "session", import("#pikku/function").WiredServices, unknown>, undefined, undefined>;
@@ -1,7 +1,7 @@
1
1
  export declare const watch: import("#pikku/function").PikkuFunctionConfig<{
2
2
  hmr?: boolean;
3
- }, void, "rpc" | "session", import("#pikku/function").PikkuFunctionSessionless<{
3
+ }, void, "rpc" | "session", import("#pikku/function").PikkuFunction<{
4
4
  hmr?: boolean;
5
- }, void, "rpc" | "session", import("#pikku/function").WiredServices, unknown> | import("#pikku/function").PikkuFunction<{
5
+ }, void, "rpc" | "session", import("#pikku/function").WiredServices> | import("#pikku/function").PikkuFunctionSessionless<{
6
6
  hmr?: boolean;
7
- }, void, "rpc" | "session", import("#pikku/function").WiredServices>, undefined, undefined>;
7
+ }, void, "rpc" | "session", import("#pikku/function").WiredServices, unknown>, undefined, undefined>;
@@ -7,25 +7,25 @@
7
7
  * union in `ColumnEntry`. All confirmed present in zod 4.
8
8
  */
9
9
  export declare const ZOD_FORMATS: {
10
- readonly email: "z.email()";
11
- readonly url: "z.url()";
12
- readonly emoji: "z.emoji()";
13
- readonly e164: "z.e164()";
14
- readonly jwt: "z.jwt()";
15
- readonly cuid: "z.cuid()";
16
- readonly cuid2: "z.cuid2()";
17
- readonly ulid: "z.ulid()";
18
- readonly nanoid: "z.nanoid()";
19
- readonly base64: "z.base64()";
20
- readonly base64url: "z.base64url()";
21
- readonly ipv4: "z.ipv4()";
22
- readonly ipv6: "z.ipv6()";
23
- readonly cidrv4: "z.cidrv4()";
24
- readonly cidrv6: "z.cidrv6()";
25
- readonly isoDate: "z.iso.date()";
26
- readonly isoTime: "z.iso.time()";
27
- readonly isoDatetime: "z.iso.datetime()";
28
- readonly isoDuration: "z.iso.duration()";
10
+ readonly email: 'z.email()';
11
+ readonly url: 'z.url()';
12
+ readonly emoji: 'z.emoji()';
13
+ readonly e164: 'z.e164()';
14
+ readonly jwt: 'z.jwt()';
15
+ readonly cuid: 'z.cuid()';
16
+ readonly cuid2: 'z.cuid2()';
17
+ readonly ulid: 'z.ulid()';
18
+ readonly nanoid: 'z.nanoid()';
19
+ readonly base64: 'z.base64()';
20
+ readonly base64url: 'z.base64url()';
21
+ readonly ipv4: 'z.ipv4()';
22
+ readonly ipv6: 'z.ipv6()';
23
+ readonly cidrv4: 'z.cidrv4()';
24
+ readonly cidrv6: 'z.cidrv6()';
25
+ readonly isoDate: 'z.iso.date()';
26
+ readonly isoTime: 'z.iso.time()';
27
+ readonly isoDatetime: 'z.iso.datetime()';
28
+ readonly isoDuration: 'z.iso.duration()';
29
29
  };
30
30
  export type ZodFormat = keyof typeof ZOD_FORMATS;
31
31
  export interface ZodCodegenOptions {
@@ -28,8 +28,8 @@ export declare const KnowledgeIndexOutputSchema: import("zod").ZodObject<{
28
28
  path: import("zod").ZodString;
29
29
  action: import("zod").ZodEnum<{
30
30
  created: "created";
31
- updated: "updated";
32
31
  unchanged: "unchanged";
32
+ updated: "updated";
33
33
  }>;
34
34
  }, import("zod/v4/core").$strip>>;
35
35
  }, import("zod/v4/core").$strip>;
@@ -41,8 +41,8 @@ export declare const KnowledgeValidateOutputSchema: import("zod").ZodObject<{
41
41
  id: import("zod").ZodString;
42
42
  severity: import("zod").ZodEnum<{
43
43
  error: "error";
44
- warn: "warn";
45
44
  info: "info";
45
+ warn: "warn";
46
46
  }>;
47
47
  message: import("zod").ZodString;
48
48
  path: import("zod").ZodString;
@@ -97,12 +97,12 @@ export declare const KnowledgePlanDeferOutputSchema: import("zod").ZodObject<{
97
97
  export declare const KnowledgeReconcileInputSchema: import("zod").ZodObject<{}, import("zod/v4/core").$strip>;
98
98
  export declare const KnowledgeReconcileOutputSchema: import("zod").ZodObject<{
99
99
  kind: import("zod").ZodEnum<{
100
- idle: "idle";
101
- "repair-note": "repair-note";
102
- "write-plan": "write-plan";
103
100
  "ask-user": "ask-user";
104
101
  dispatch: "dispatch";
105
102
  hold: "hold";
103
+ idle: "idle";
104
+ "repair-note": "repair-note";
105
+ "write-plan": "write-plan";
106
106
  }>;
107
107
  reason: import("zod").ZodString;
108
108
  note: import("zod").ZodOptional<import("zod").ZodString>;
@@ -1 +1 @@
1
- export declare const pikkuFetch: 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
+ export declare const pikkuFetch: import("#pikku/function").PikkuFunctionConfig<void, void, "rpc" | "session", import("#pikku/function").PikkuFunction<void, void, "rpc" | "session", import("#pikku/function").WiredServices> | import("#pikku/function").PikkuFunctionSessionless<void, void, "rpc" | "session", import("#pikku/function").WiredServices, unknown>, undefined, undefined>;
@@ -1 +1 @@
1
- export declare const pikkuNext: 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
+ export declare const pikkuNext: import("#pikku/function").PikkuFunctionConfig<void, void, "rpc" | "session", import("#pikku/function").PikkuFunction<void, void, "rpc" | "session", import("#pikku/function").WiredServices> | import("#pikku/function").PikkuFunctionSessionless<void, void, "rpc" | "session", import("#pikku/function").WiredServices, unknown>, undefined, undefined>;
@@ -1 +1 @@
1
- export declare const pikkuTanStackStart: 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
+ export declare const pikkuTanStackStart: import("#pikku/function").PikkuFunctionConfig<void, void, "rpc" | "session", import("#pikku/function").PikkuFunction<void, void, "rpc" | "session", import("#pikku/function").WiredServices> | import("#pikku/function").PikkuFunctionSessionless<void, void, "rpc" | "session", import("#pikku/function").WiredServices, unknown>, undefined, undefined>;
@@ -1 +1 @@
1
- export declare const pikkuWebSocketTyped: 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
+ export declare const pikkuWebSocketTyped: import("#pikku/function").PikkuFunctionConfig<void, void, "rpc" | "session", import("#pikku/function").PikkuFunction<void, void, "rpc" | "session", import("#pikku/function").WiredServices> | import("#pikku/function").PikkuFunctionSessionless<void, void, "rpc" | "session", import("#pikku/function").WiredServices, unknown>, undefined, undefined>;
@@ -1,6 +1,6 @@
1
1
  import { existsSync, readFileSync } from 'node:fs';
2
2
  import { dirname, join, relative, resolve, sep } from 'node:path';
3
- import { collectSurface } from './collect-surface.js';
3
+ import { collectSurface, } from '@pikku/inspector/surface';
4
4
  import { ENTRY_POINT_EDITORIAL, LEAF_EDITORIAL, } from './surface-editorial.js';
5
5
  /** The specifier an application reaches its generated leaves through. */
6
6
  export const PIKKU_IMPORTS_SUBPATH = '#pikku/*';
@@ -1,4 +1,4 @@
1
- import type { SurfaceKind, SurfaceMember } from './collect-surface.js';
1
+ import type { SurfaceKind, SurfaceMember } from '@pikku/inspector/surface';
2
2
  export type { SurfaceKind, SurfaceMember };
3
3
  /**
4
4
  * The order in which you meet these doors while building a service. It is the
@@ -34,6 +34,11 @@ export const LEAF_EDITORIAL = {
34
34
  skill: 'pikku-services',
35
35
  summary: 'Secrets a function can use without ever holding, declared here and resolved by the secrets service at runtime.',
36
36
  },
37
+ analytics: {
38
+ step: 'enhance it',
39
+ skill: null,
40
+ summary: 'The events a project can measure, declared by name so the generated ingest knows what to accept. Where they go is an AnalyticsService on singleton services; what a function records into is the analytics service on the invocation.',
41
+ },
37
42
  credentials: {
38
43
  step: 'enhance it',
39
44
  skill: null,
@@ -1,6 +1,6 @@
1
1
  import { readdir, readFile } from 'node:fs/promises';
2
2
  import { join, relative } from 'node:path';
3
- import ts from 'typescript';
3
+ import { readModuleSpecifiers } from '@pikku/inspector';
4
4
  const SKIP_DIRS = new Set([
5
5
  'node_modules',
6
6
  '.git',
@@ -24,27 +24,7 @@ const isGenerated = (path) => path.includes('.gen.') || path.endsWith('.d.ts');
24
24
  * client and resolves to exactly what it names.
25
25
  */
26
26
  const isBarrel = (specifier) => specifier === '#pikku' || /^#pikku\/pikku-types\.gen(\.js)?$/.test(specifier);
27
- /**
28
- * Parsed rather than grepped: a project's own codegen templates hold the
29
- * specifiers they emit inside template literals, and those are output text
30
- * rather than imports the file itself makes.
31
- */
32
- const barrelImports = (file, content) => {
33
- const source = ts.createSourceFile(file, content, ts.ScriptTarget.Latest, true);
34
- const found = [];
35
- for (const statement of source.statements) {
36
- if (!ts.isImportDeclaration(statement) &&
37
- !ts.isExportDeclaration(statement)) {
38
- continue;
39
- }
40
- const moduleSpecifier = statement.moduleSpecifier;
41
- if (!moduleSpecifier || !ts.isStringLiteral(moduleSpecifier))
42
- continue;
43
- if (isBarrel(moduleSpecifier.text))
44
- found.push(moduleSpecifier.text);
45
- }
46
- return found;
47
- };
27
+ const barrelImports = (file, content) => readModuleSpecifiers(file, content).filter(isBarrel);
48
28
  const collectSources = async (dir, out = []) => {
49
29
  let entries;
50
30
  try {
@@ -3,9 +3,9 @@ export { readJsonSafe, readTextSafe } from './shared-checks.js';
3
3
  export declare const FindingSchema: z.ZodObject<{
4
4
  id: z.ZodString;
5
5
  severity: z.ZodEnum<{
6
- warn: "warn";
7
6
  error: "error";
8
7
  info: "info";
8
+ warn: "warn";
9
9
  }>;
10
10
  message: z.ZodString;
11
11
  path: z.ZodString;
@@ -24,9 +24,9 @@ export declare const ValidateOutput: z.ZodObject<{
24
24
  findings: z.ZodArray<z.ZodObject<{
25
25
  id: z.ZodString;
26
26
  severity: z.ZodEnum<{
27
- warn: "warn";
28
27
  error: "error";
29
28
  info: "info";
29
+ warn: "warn";
30
30
  }>;
31
31
  message: z.ZodString;
32
32
  path: z.ZodString;
@@ -4,7 +4,7 @@ import type { ValidateFinding } from './persona-checks.js';
4
4
  * optional peers of `@pikku/cli`, because Bun serves WebSockets natively
5
5
  * through `@pikku/bun-server` and a Bun project has no use for either.
6
6
  */
7
- export declare const NODE_WEBSOCKET_PACKAGES: readonly ["@pikku/ws", "ws"];
7
+ export declare const NODE_WEBSOCKET_PACKAGES: readonly ['@pikku/ws', 'ws'];
8
8
  export type WebsocketDepsInput = {
9
9
  root: string;
10
10
  /** The runtime the CLI is running on. Bun needs neither package. */
@@ -1 +1 @@
1
- export declare const pikkuAgentTypes: 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
+ export declare const pikkuAgentTypes: import("#pikku/function").PikkuFunctionConfig<void, void, "rpc" | "session", import("#pikku/function").PikkuFunction<void, void, "rpc" | "session", import("#pikku/function").WiredServices> | import("#pikku/function").PikkuFunctionSessionless<void, void, "rpc" | "session", import("#pikku/function").WiredServices, unknown>, undefined, undefined>;
@@ -1 +1 @@
1
- export declare const pikkuAgent: 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
+ export declare const pikkuAgent: import("#pikku/function").PikkuFunctionConfig<void, boolean | undefined, "rpc" | "session", import("#pikku/function").PikkuFunction<void, boolean | undefined, "rpc" | "session", import("#pikku/function").WiredServices> | import("#pikku/function").PikkuFunctionSessionless<void, boolean | undefined, "rpc" | "session", import("#pikku/function").WiredServices, unknown>, undefined, undefined>;
@@ -1 +1 @@
1
- export declare const pikkuPublicAgent: 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
+ export declare const pikkuPublicAgent: import("#pikku/function").PikkuFunctionConfig<void, boolean, "rpc" | "session", import("#pikku/function").PikkuFunction<void, boolean, "rpc" | "session", import("#pikku/function").WiredServices> | import("#pikku/function").PikkuFunctionSessionless<void, boolean, "rpc" | "session", import("#pikku/function").WiredServices, unknown>, undefined, undefined>;
@@ -1 +1 @@
1
- export declare const pikkuAgentScorer: 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
+ export declare const pikkuAgentScorer: import("#pikku/function").PikkuFunctionConfig<void, boolean | undefined, "rpc" | "session", import("#pikku/function").PikkuFunction<void, boolean | undefined, "rpc" | "session", import("#pikku/function").WiredServices> | import("#pikku/function").PikkuFunctionSessionless<void, boolean | undefined, "rpc" | "session", import("#pikku/function").WiredServices, unknown>, undefined, undefined>;
@@ -0,0 +1,11 @@
1
+ /**
2
+ * ESM specifier from the generated ingest to one of the app's
3
+ * `defineAnalyticsEvents` declarations.
4
+ *
5
+ * Relative rather than aliased: the declaration is ordinary project source that
6
+ * a consumer may put anywhere, and a `#pikku` leaf would imply pikku generated
7
+ * it. Emitted with a `.js` extension and a leading `./` so the specifier is
8
+ * valid ESM rather than a bare module id.
9
+ */
10
+ export declare const analyticsSpecifier: (analyticsFile: string, declarationFile: string) => string;
11
+ export declare const pikkuAnalytics: import("#pikku/function").PikkuFunctionConfig<void, boolean, "rpc" | "session", import("#pikku/function").PikkuFunction<void, boolean, "rpc" | "session", import("#pikku/function").WiredServices> | import("#pikku/function").PikkuFunctionSessionless<void, boolean, "rpc" | "session", import("#pikku/function").WiredServices, unknown>, undefined, undefined>;
@@ -0,0 +1,66 @@
1
+ import { dirname, relative } from 'node:path';
2
+ import { pikkuSessionlessFunc } from '#pikku/function';
3
+ import { getLeafImportPath } from '../../../utils/leaf-import-path.js';
4
+ import { writeFileInDir } from '../../../utils/file-writer.js';
5
+ import { logCommandInfoAndTime } from '../../../middleware/log-command-info-and-time.js';
6
+ import { removeLegacyScaffoldFile } from '../../../utils/remove-legacy-scaffold-file.js';
7
+ import { buildAnalyticsEventsMeta, serializeAnalytics, } from './serialize-analytics.js';
8
+ import { analyticsSchemasFile } from '../../../utils/analytics-schemas-file.js';
9
+ import { isDeployCodegen } from '../../../utils/is-deploy-codegen.js';
10
+ /**
11
+ * ESM specifier from the generated ingest to one of the app's
12
+ * `defineAnalyticsEvents` declarations.
13
+ *
14
+ * Relative rather than aliased: the declaration is ordinary project source that
15
+ * a consumer may put anywhere, and a `#pikku` leaf would imply pikku generated
16
+ * it. Emitted with a `.js` extension and a leading `./` so the specifier is
17
+ * valid ESM rather than a bare module id.
18
+ */
19
+ export const analyticsSpecifier = (analyticsFile, declarationFile) => {
20
+ const rel = relative(dirname(analyticsFile), declarationFile)
21
+ .replace(/\.tsx?$/, '.js')
22
+ .split(/[\\/]/)
23
+ .join('/');
24
+ return rel.startsWith('.') ? rel : `./${rel}`;
25
+ };
26
+ export const pikkuAnalytics = pikkuSessionlessFunc({
27
+ func: async ({ logger, config, variables, getInspectorState }) => {
28
+ if (await isDeployCodegen(variables)) {
29
+ return false;
30
+ }
31
+ const { analytics } = await getInspectorState();
32
+ // Before the scaffold gate: a project that declares events without wiring
33
+ // the ingest still measures things, and the console still has to list them.
34
+ if (config.analyticsMetaJsonFile) {
35
+ await writeFileInDir(logger, config.analyticsMetaJsonFile, JSON.stringify(buildAnalyticsEventsMeta(analytics ?? []), null, 2));
36
+ }
37
+ if (!config.scaffold?.analytics || !config.analyticsFile) {
38
+ return false;
39
+ }
40
+ // Refuse rather than emit an ingest that imports a declaration which is not
41
+ // there: the generated wire would fail to typecheck, pointing at generated
42
+ // code instead of at the one thing the project actually has to supply.
43
+ if (!analytics || analytics.length === 0) {
44
+ logger.error(`scaffold.analytics is enabled but no defineAnalyticsEvents declaration was found. ` +
45
+ `Add one in a source directory: \`export const analyticsEvents = defineAnalyticsEvents({ page_viewed: z.object({ path: z.string() }) })\`.`);
46
+ return false;
47
+ }
48
+ const leaf = (name) => getLeafImportPath(config.analyticsFile, name, config);
49
+ const declarations = analytics.map((declaration) => ({
50
+ specifier: analyticsSpecifier(config.analyticsFile, declaration.file),
51
+ variable: declaration.variable,
52
+ events: declaration.events,
53
+ }));
54
+ const { schemas, functions } = serializeAnalytics(leaf, declarations, config.globalHTTPPrefix || '');
55
+ await writeFileInDir(logger, analyticsSchemasFile(config.analyticsFile), schemas);
56
+ await writeFileInDir(logger, config.analyticsFile, functions);
57
+ await removeLegacyScaffoldFile(config.analyticsFile);
58
+ return true;
59
+ },
60
+ middleware: [
61
+ logCommandInfoAndTime({
62
+ commandStart: 'Generating Analytics Ingest',
63
+ commandEnd: 'Generated Analytics Ingest',
64
+ }),
65
+ ],
66
+ });
@@ -0,0 +1,30 @@
1
+ import type { AnalyticsEventsMeta } from '@pikku/core/analytics';
2
+ export interface AnalyticsGenOutput {
3
+ schemas: string;
4
+ functions: string;
5
+ }
6
+ /** One `defineAnalyticsEvents` declaration, as the inspector found it. */
7
+ export interface AnalyticsDeclarationMeta {
8
+ file: string;
9
+ variable: string;
10
+ events: string[];
11
+ props?: Record<string, Record<string, string>>;
12
+ }
13
+ /**
14
+ * The declarations flattened to one entry per event, which is how every reader
15
+ * wants them: an event name belongs to exactly one declaration — the inspector
16
+ * refuses a second — so keying by name loses nothing and spares each caller the
17
+ * walk.
18
+ */
19
+ export declare const buildAnalyticsEventsMeta: (declarations: readonly AnalyticsDeclarationMeta[]) => AnalyticsEventsMeta;
20
+ export interface AnalyticsDeclaration {
21
+ specifier: string;
22
+ variable: string;
23
+ events: string[];
24
+ }
25
+ /**
26
+ * Generate the ingest wire and its schemas. No middleware is emitted: an origin
27
+ * lock is not a security boundary and rejects every native client, so which
28
+ * guard belongs here is the project's call.
29
+ */
30
+ export declare const serializeAnalytics: (leaf: (name: string) => string, declarations: AnalyticsDeclaration[], globalHTTPPrefix?: string) => AnalyticsGenOutput;