@pikku/cli 0.12.159 → 0.12.162

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 (255) hide show
  1. package/console-app/assets/{HelpPanel-C06T226y.js → HelpPanel-DR6oJReA.js} +1 -1
  2. package/console-app/assets/{abnfDiagram-VCTEODGH-BVwdT3Es.js → abnfDiagram-VCTEODGH-C6mt0F-I.js} +1 -1
  3. package/console-app/assets/architecture-7GRP2DOG-C3gcY2os.js +1 -0
  4. package/console-app/assets/{architectureDiagram-5GKGNRK7-XfzqZ3mW.js → architectureDiagram-5GKGNRK7-BPUTuzrJ.js} +1 -1
  5. package/console-app/assets/{blockDiagram-I7D4REHJ-B5omSqDK.js → blockDiagram-I7D4REHJ-IE8X3BZC.js} +1 -1
  6. package/console-app/assets/{c4Diagram-7LVT6UL2-DkPe7xCg.js → c4Diagram-7LVT6UL2--HhbjXSJ.js} +1 -1
  7. package/console-app/assets/channel-CGrTWPVh.js +1 -0
  8. package/console-app/assets/{chunk-4HAMMTFA-QfSXT_X7.js → chunk-4HAMMTFA-B2Cljp_-.js} +1 -1
  9. package/console-app/assets/{chunk-75Z2AOVW-h7UnPWNo.js → chunk-75Z2AOVW-D4684ofZ.js} +1 -1
  10. package/console-app/assets/{chunk-DU6HZSFF-VaMy-LOI.js → chunk-DU6HZSFF-BXipkMhY.js} +1 -1
  11. package/console-app/assets/{chunk-F27PBJKO-toywqOqS.js → chunk-F27PBJKO-BsSS2TqC.js} +1 -1
  12. package/console-app/assets/{chunk-GMAD6QVW-Cpa-YKLB.js → chunk-GMAD6QVW-DJqDw8yU.js} +1 -1
  13. package/console-app/assets/{chunk-GVQU2GXP-BWSHPLNL.js → chunk-GVQU2GXP-CguL9TtP.js} +1 -1
  14. package/console-app/assets/{chunk-IMKFNOWR-yhQzfQuj.js → chunk-IMKFNOWR-DoB5kv29.js} +1 -1
  15. package/console-app/assets/{chunk-L3NEJ4N5-C8pAfDlo.js → chunk-L3NEJ4N5-BspKBmrG.js} +1 -1
  16. package/console-app/assets/{chunk-OSK3NFVY-749yk2fa.js → chunk-OSK3NFVY-DzLs9ozF.js} +1 -1
  17. package/console-app/assets/{chunk-P2QGCYS3-C1Y9GyYT.js → chunk-P2QGCYS3-DAxcyv2x.js} +1 -1
  18. package/console-app/assets/{chunk-POPQ4Y6H-DzI9aRsX.js → chunk-POPQ4Y6H-DyLFn-sn.js} +1 -1
  19. package/console-app/assets/{chunk-PWAF6VOD-D3fAPSwz.js → chunk-PWAF6VOD-VPwoG6QJ.js} +1 -1
  20. package/console-app/assets/{chunk-SHT3W25Y-D9w7LzM9.js → chunk-SHT3W25Y-C0R9Ptyj.js} +1 -1
  21. package/console-app/assets/{chunk-SVP7TREG-D55MjOJw.js → chunk-SVP7TREG-cLgcNTyh.js} +1 -1
  22. package/console-app/assets/{chunk-TICWLB2K-DV8q7H-z.js → chunk-TICWLB2K-C3se3Npx.js} +1 -1
  23. package/console-app/assets/chunk-XXDRQBXY-DLdC0jYP.js +1 -0
  24. package/console-app/assets/classDiagram-ZZMXUADV-yt7BCzQS.js +1 -0
  25. package/console-app/assets/classDiagram-v2-VYDZK3BY-yt7BCzQS.js +1 -0
  26. package/console-app/assets/{cose-bilkent-JH36ORCC-CLedPW9a.js → cose-bilkent-JH36ORCC-L5Nhs9N1.js} +1 -1
  27. package/console-app/assets/{cynefin-OW5HDTMX-CS5NKw2p.js → cynefin-OW5HDTMX-jbgNKIs_.js} +1 -1
  28. package/console-app/assets/{cynefinDiagram-5FMLGOSQ-DGTHW90E.js → cynefinDiagram-5FMLGOSQ-D10NQDH4.js} +1 -1
  29. package/console-app/assets/{dagre-BNQdos_2.js → dagre-DrsKN-Kd.js} +1 -1
  30. package/console-app/assets/{dagre-GXQ25YYZ-DHZ8wtwQ.js → dagre-GXQ25YYZ-NDp4fO1z.js} +1 -1
  31. package/console-app/assets/{diagram-S7CK7UJ4-C41Begsy.js → diagram-S7CK7UJ4-B-9PMbK8.js} +1 -1
  32. package/console-app/assets/{diagram-UQ7AKVKN-CU8D-sRT.js → diagram-UQ7AKVKN-NXSn7aYB.js} +1 -1
  33. package/console-app/assets/{diagram-VSXAHHWV-DTTiXYnQ.js → diagram-VSXAHHWV-DrZgXRIZ.js} +1 -1
  34. package/console-app/assets/{diagram-VX7I27RA-BBy91pxm.js → diagram-VX7I27RA-V3OLFF3v.js} +1 -1
  35. package/console-app/assets/{diagram-Z3DM3KII-D50xTYe5.js → diagram-Z3DM3KII-CawCD3BR.js} +1 -1
  36. package/console-app/assets/{ebnfDiagram-PWID7BFC-BHjnFZgE.js → ebnfDiagram-PWID7BFC-QScQWlzV.js} +1 -1
  37. package/console-app/assets/{erDiagram-RLTQ6QDP-B4-yVo9b.js → erDiagram-RLTQ6QDP-DIhmCYb6.js} +1 -1
  38. package/console-app/assets/eventmodeling-NTZA5JFV-BbwPCOs2.js +1 -0
  39. package/console-app/assets/flowDiagram-HODETNUW-B-xUNJdv.js +1 -0
  40. package/console-app/assets/{ganttDiagram-EL5Y4UJY-D1T-2BlO.js → ganttDiagram-EL5Y4UJY-Bcg0H_3-.js} +1 -1
  41. package/console-app/assets/{gitGraph-4MIJSDKK-ClqKTUfQ.js → gitGraph-4MIJSDKK-BUYXp4LH.js} +1 -1
  42. package/console-app/assets/{gitGraphDiagram-WWUBYQGX-ruq2MAhM.js → gitGraphDiagram-WWUBYQGX-DRxwgliX.js} +1 -1
  43. package/console-app/assets/{graphlib-D-vLYPdw.js → graphlib-BXZn3TnO.js} +1 -1
  44. package/console-app/assets/{index-BIEZPuyK.js → index-D7ATEpJh.js} +27 -27
  45. package/console-app/assets/{info-A6RAGUB7-BGI-8HNB.js → info-A6RAGUB7-BAfA_BVB.js} +1 -1
  46. package/console-app/assets/{infoDiagram-27XIBGKW-BGURgKHv.js → infoDiagram-27XIBGKW-JPbCbDjB.js} +1 -1
  47. package/console-app/assets/{ishikawaDiagram-5VMMS53U-DzgAaPTR.js → ishikawaDiagram-5VMMS53U-528xNFds.js} +1 -1
  48. package/console-app/assets/{journeyDiagram-3NMN7TZE-BsyWad8z.js → journeyDiagram-3NMN7TZE-CpnC76my.js} +1 -1
  49. package/console-app/assets/{kanban-definition-UXKFOSKX-g1nO2rWF.js → kanban-definition-UXKFOSKX-7v_OexVf.js} +1 -1
  50. package/console-app/assets/{line-CeFoQ5y-.js → line-BXTtRzTv.js} +1 -1
  51. package/console-app/assets/{linear-C4Pk-YMX.js → linear-BXIxFuy8.js} +1 -1
  52. package/console-app/assets/{mermaid-parser.core-U7wquvx8.js → mermaid-parser.core-Bn81UzgU.js} +3 -3
  53. package/console-app/assets/{mermaid.core-8TRpFRm9.js → mermaid.core-CShTFU_y.js} +4 -4
  54. package/console-app/assets/{mindmap-definition-YA3MSWOX-C7lzwqBX.js → mindmap-definition-YA3MSWOX-Dozk2qNE.js} +1 -1
  55. package/console-app/assets/{packet-AYTQ26CC-DiQV_rU3.js → packet-AYTQ26CC-CQ1T9gCW.js} +1 -1
  56. package/console-app/assets/{pegDiagram-XKGWAZYB-63ajP7-W.js → pegDiagram-XKGWAZYB-CAKNYwkF.js} +1 -1
  57. package/console-app/assets/{pie-WAS4IAKB-B5q_o6dr.js → pie-WAS4IAKB-XBhMekP0.js} +1 -1
  58. package/console-app/assets/{pieDiagram-E7YTZNPT-BTbvj-by.js → pieDiagram-E7YTZNPT-CQH9g9Im.js} +1 -1
  59. package/console-app/assets/{quadrantDiagram-AXDQQJYC-CulqsAYd.js → quadrantDiagram-AXDQQJYC-BYry9NEL.js} +1 -1
  60. package/console-app/assets/{radar-RG4KPBEZ-CW_KoURS.js → radar-RG4KPBEZ-BHk3GM2h.js} +1 -1
  61. package/console-app/assets/{railroad-74A4TZTK-CUmF6uBQ.js → railroad-74A4TZTK-B-GsJq3u.js} +1 -1
  62. package/console-app/assets/railroad-abnf-HS5TGJTU-Dqco3Udm.js +1 -0
  63. package/console-app/assets/railroad-ebnf-LZEXJU2U-DZqyOzxq.js +1 -0
  64. package/console-app/assets/railroad-peg-WCYAUIDC-DtfiBwRd.js +1 -0
  65. package/console-app/assets/{railroadDiagram-O6MQD6OU-WlkBu_N3.js → railroadDiagram-O6MQD6OU-CAIv58C8.js} +1 -1
  66. package/console-app/assets/{requirementDiagram-BXWQKSXE-CJK_CbPR.js → requirementDiagram-BXWQKSXE-DJ3f5870.js} +1 -1
  67. package/console-app/assets/{sankeyDiagram-P5KCCOFB-C466WOH8.js → sankeyDiagram-P5KCCOFB-YrQnQsb7.js} +1 -1
  68. package/console-app/assets/{sequenceDiagram-WJ2MYXX4-CV0dCcj0.js → sequenceDiagram-WJ2MYXX4-B-tyzF2R.js} +1 -1
  69. package/console-app/assets/{src-P4Nw8sY0.js → src-DV6LWVlf.js} +1 -1
  70. package/console-app/assets/{stateDiagram-D77RDMKH-HaLGm8V9.js → stateDiagram-D77RDMKH-vMePRkxV.js} +1 -1
  71. package/console-app/assets/stateDiagram-v2-MP3YSRHH-Cojsq9SW.js +1 -0
  72. package/console-app/assets/{swimlanes-42K2YHIH-Bi-O5vWa.js → swimlanes-42K2YHIH-CqQsTH0R.js} +1 -1
  73. package/console-app/assets/swimlanesDiagram-VR7AAH4N-0DUuvodn.js +8 -0
  74. package/console-app/assets/{timeline-definition-24CTP7MA-B4h-gx-i.js → timeline-definition-24CTP7MA-D3OGq7c8.js} +1 -1
  75. package/console-app/assets/{treeView-Q6P3EWNA-CXJ_pHQw.js → treeView-Q6P3EWNA-DZA143I6.js} +1 -1
  76. package/console-app/assets/{treemap-WGGIJYW6-M84p2a_3.js → treemap-WGGIJYW6-N5Dr2J8o.js} +1 -1
  77. package/console-app/assets/{vennDiagram-4TSXK5OY-BesF4k_r.js → vennDiagram-4TSXK5OY-CjQrrdPE.js} +1 -1
  78. package/console-app/assets/{wardley-WFR3VGLG-n9ulickP.js → wardley-WFR3VGLG-CWrUebhA.js} +1 -1
  79. package/console-app/assets/{wardleyDiagram-VM6X3IG4-BG0nnWDf.js → wardleyDiagram-VM6X3IG4-Bd-nerY3.js} +1 -1
  80. package/console-app/assets/{xychartDiagram-S5SC5T6Z-BtOW7fpF.js → xychartDiagram-S5SC5T6Z-CK3-JaeF.js} +1 -1
  81. package/console-app/index.html +1 -1
  82. package/dist/.pikku/addon/index.d.ts +1 -1
  83. package/dist/.pikku/addon/index.js +1 -1
  84. package/dist/.pikku/addon/pikku-addon-types.gen.d.ts +1 -1
  85. package/dist/.pikku/addon/pikku-addon-types.gen.js +1 -1
  86. package/dist/.pikku/agent/index.d.ts +1 -1
  87. package/dist/.pikku/agent/index.js +1 -1
  88. package/dist/.pikku/agent/pikku-agent-types.gen.d.ts +1 -1
  89. package/dist/.pikku/agent/pikku-model-aliases.gen.js +1 -1
  90. package/dist/.pikku/analytics/index.d.ts +1 -1
  91. package/dist/.pikku/analytics/index.js +1 -1
  92. package/dist/.pikku/analytics/pikku-analytics-types.gen.d.ts +1 -1
  93. package/dist/.pikku/analytics/pikku-analytics-types.gen.js +1 -1
  94. package/dist/.pikku/auth/index.d.ts +1 -1
  95. package/dist/.pikku/auth/index.js +1 -1
  96. package/dist/.pikku/auth/pikku-auth-types.gen.d.ts +1 -1
  97. package/dist/.pikku/auth/pikku-auth-types.gen.js +1 -1
  98. package/dist/.pikku/channel/index.d.ts +1 -1
  99. package/dist/.pikku/channel/index.js +1 -1
  100. package/dist/.pikku/channel/pikku-channel-types.gen.d.ts +1 -1
  101. package/dist/.pikku/channel/pikku-channel-types.gen.js +1 -1
  102. package/dist/.pikku/cli/index.d.ts +1 -1
  103. package/dist/.pikku/cli/index.js +1 -1
  104. package/dist/.pikku/cli/pikku-cli-channel.js +6 -1
  105. package/dist/.pikku/cli/pikku-cli-client.gen.d.ts +1 -1
  106. package/dist/.pikku/cli/pikku-cli-client.gen.js +1 -1
  107. package/dist/.pikku/cli/pikku-cli-contracts-meta.gen.d.ts +1 -1
  108. package/dist/.pikku/cli/pikku-cli-contracts-meta.gen.js +1 -1
  109. package/dist/.pikku/cli/pikku-cli-types.gen.d.ts +1 -1
  110. package/dist/.pikku/cli/pikku-cli-types.gen.js +1 -1
  111. package/dist/.pikku/cli/pikku-cli-wirings-meta.gen.js +1 -1
  112. package/dist/.pikku/cli/pikku-cli-wirings-meta.gen.json +25 -0
  113. package/dist/.pikku/cli/pikku-cli-wirings.gen.d.ts +1 -1
  114. package/dist/.pikku/cli/pikku-cli-wirings.gen.js +1 -1
  115. package/dist/.pikku/cli/pikku-cli.gen.d.ts +1 -1
  116. package/dist/.pikku/cli/pikku-cli.gen.js +1 -1
  117. package/dist/.pikku/error/index.d.ts +1 -1
  118. package/dist/.pikku/error/index.js +1 -1
  119. package/dist/.pikku/error/pikku-error-types.gen.d.ts +1 -1
  120. package/dist/.pikku/error/pikku-error-types.gen.js +1 -1
  121. package/dist/.pikku/function/index.d.ts +1 -1
  122. package/dist/.pikku/function/index.js +1 -1
  123. package/dist/.pikku/function/pikku-function-types.gen.d.ts +1 -1
  124. package/dist/.pikku/function/pikku-function-types.gen.js +1 -1
  125. package/dist/.pikku/function/pikku-functions-meta.gen.js +1 -1
  126. package/dist/.pikku/function/pikku-functions-meta.gen.json +22 -5
  127. package/dist/.pikku/function/pikku-functions.gen.js +1 -1
  128. package/dist/.pikku/gateway/index.d.ts +1 -1
  129. package/dist/.pikku/gateway/index.js +1 -1
  130. package/dist/.pikku/gateway/pikku-gateway-types.gen.d.ts +1 -1
  131. package/dist/.pikku/gateway/pikku-gateway-types.gen.js +1 -1
  132. package/dist/.pikku/http/index.d.ts +1 -1
  133. package/dist/.pikku/http/index.js +1 -1
  134. package/dist/.pikku/http/pikku-http-types.gen.d.ts +1 -1
  135. package/dist/.pikku/http/pikku-http-types.gen.js +1 -1
  136. package/dist/.pikku/mcp/index.d.ts +1 -1
  137. package/dist/.pikku/mcp/index.js +1 -1
  138. package/dist/.pikku/mcp/pikku-mcp-types.gen.d.ts +1 -1
  139. package/dist/.pikku/mcp/pikku-mcp-types.gen.js +1 -1
  140. package/dist/.pikku/middleware/index.d.ts +1 -1
  141. package/dist/.pikku/middleware/index.js +1 -1
  142. package/dist/.pikku/middleware/pikku-middleware-types.gen.d.ts +1 -1
  143. package/dist/.pikku/middleware/pikku-middleware-types.gen.js +1 -1
  144. package/dist/.pikku/pikku-bootstrap-scenarios.gen.d.ts +1 -1
  145. package/dist/.pikku/pikku-bootstrap-scenarios.gen.js +1 -1
  146. package/dist/.pikku/pikku-bootstrap.gen.d.ts +1 -1
  147. package/dist/.pikku/pikku-bootstrap.gen.js +1 -1
  148. package/dist/.pikku/pikku-services.gen.d.ts +1 -1
  149. package/dist/.pikku/queue/index.d.ts +1 -1
  150. package/dist/.pikku/queue/index.js +1 -1
  151. package/dist/.pikku/queue/pikku-queue-types.gen.d.ts +1 -1
  152. package/dist/.pikku/queue/pikku-queue-types.gen.js +1 -1
  153. package/dist/.pikku/queue/pikku-queue-workers-wirings-meta.gen.js +1 -1
  154. package/dist/.pikku/queue/pikku-queue-workers-wirings.gen.d.ts +1 -1
  155. package/dist/.pikku/queue/pikku-queue-workers-wirings.gen.js +1 -1
  156. package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.js +1 -1
  157. package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.json +1 -0
  158. package/dist/.pikku/scenarios/index.d.ts +1 -1
  159. package/dist/.pikku/scenarios/index.js +1 -1
  160. package/dist/.pikku/scenarios/pikku-personas.gen.js +1 -1
  161. package/dist/.pikku/scenarios/pikku-scenario-functions-meta.gen.js +1 -1
  162. package/dist/.pikku/scenarios/pikku-scenario-functions.gen.d.ts +1 -1
  163. package/dist/.pikku/scenarios/pikku-scenario-types.gen.d.ts +7 -1
  164. package/dist/.pikku/scenarios/pikku-scenario-wirings-meta.gen.js +1 -1
  165. package/dist/.pikku/scenarios/pikku-scenario-wirings.gen.d.ts +1 -1
  166. package/dist/.pikku/scenarios/schemas/register.gen.d.ts +1 -1
  167. package/dist/.pikku/scenarios/schemas/register.gen.js +1 -1
  168. package/dist/.pikku/scheduler/index.d.ts +1 -1
  169. package/dist/.pikku/scheduler/index.js +1 -1
  170. package/dist/.pikku/scheduler/pikku-scheduler-types.gen.d.ts +1 -1
  171. package/dist/.pikku/scheduler/pikku-scheduler-types.gen.js +1 -1
  172. package/dist/.pikku/schemas/register.gen.js +3 -1
  173. package/dist/.pikku/schemas/schemas/ScenarioGuideInput.schema.json +1 -0
  174. package/dist/.pikku/scopes/index.d.ts +1 -1
  175. package/dist/.pikku/scopes/index.js +1 -1
  176. package/dist/.pikku/scopes/pikku-flags.gen.d.ts +1 -1
  177. package/dist/.pikku/scopes/pikku-personas.gen.js +1 -1
  178. package/dist/.pikku/scopes/pikku-roles.gen.d.ts +1 -1
  179. package/dist/.pikku/scopes/pikku-scope-types.gen.d.ts +1 -1
  180. package/dist/.pikku/scopes/pikku-scope-types.gen.js +1 -1
  181. package/dist/.pikku/scopes/pikku-scopes.gen.d.ts +1 -1
  182. package/dist/.pikku/secrets/index.d.ts +1 -1
  183. package/dist/.pikku/secrets/index.js +1 -1
  184. package/dist/.pikku/secrets/pikku-secret-types.gen.d.ts +1 -1
  185. package/dist/.pikku/secrets/pikku-secret-types.gen.js +1 -1
  186. package/dist/.pikku/secrets/pikku-secrets.gen.d.ts +1 -1
  187. package/dist/.pikku/secrets/pikku-secrets.gen.js +1 -1
  188. package/dist/.pikku/services/pikku-meta-service.gen.d.ts +1 -1
  189. package/dist/.pikku/services/pikku-meta-service.gen.js +1 -1
  190. package/dist/.pikku/setup/index.d.ts +1 -1
  191. package/dist/.pikku/setup/index.js +1 -1
  192. package/dist/.pikku/setup/pikku-setup-types.gen.d.ts +1 -1
  193. package/dist/.pikku/setup/pikku-setup-types.gen.js +1 -1
  194. package/dist/.pikku/trigger/index.d.ts +1 -1
  195. package/dist/.pikku/trigger/index.js +1 -1
  196. package/dist/.pikku/trigger/pikku-trigger-types.gen.d.ts +1 -1
  197. package/dist/.pikku/trigger/pikku-trigger-types.gen.js +1 -1
  198. package/dist/.pikku/variables/index.d.ts +1 -1
  199. package/dist/.pikku/variables/index.js +1 -1
  200. package/dist/.pikku/variables/pikku-variable-types.gen.d.ts +1 -1
  201. package/dist/.pikku/variables/pikku-variable-types.gen.js +1 -1
  202. package/dist/.pikku/variables/pikku-variables.gen.d.ts +1 -1
  203. package/dist/.pikku/variables/pikku-variables.gen.js +1 -1
  204. package/dist/.pikku/workflow/index.d.ts +1 -1
  205. package/dist/.pikku/workflow/index.js +1 -1
  206. package/dist/.pikku/workflow/pikku-workflow-types.gen.d.ts +1 -1
  207. package/dist/.pikku/workflow/pikku-workflow-types.gen.js +1 -1
  208. package/dist/.pikku/workflow/pikku-workflow-wirings-meta.gen.js +1 -1
  209. package/dist/.pikku/workflow/pikku-workflow-wirings.gen.js +1 -1
  210. package/dist/bin/pikku-bin.mjs +2 -2
  211. package/dist/src/cli.wiring.js +25 -1
  212. package/dist/src/deploy/analyzer/analyzer.js +7 -1
  213. package/dist/src/deploy/build-pipeline.d.ts +2 -0
  214. package/dist/src/deploy/build-pipeline.js +4 -3
  215. package/dist/src/functions/commands/deploy-apply.js +1 -0
  216. package/dist/src/functions/commands/deploy-plan.js +1 -0
  217. package/dist/src/functions/commands/scenario-guide.d.ts +184 -0
  218. package/dist/src/functions/commands/scenario-guide.js +313 -0
  219. package/dist/src/functions/commands/scenario-ladder.d.ts +3 -1
  220. package/dist/src/functions/commands/scenario-ladder.js +1 -0
  221. package/dist/src/functions/commands/scenario-plan.d.ts +17 -1
  222. package/dist/src/functions/commands/scenario-plan.js +15 -0
  223. package/dist/src/functions/commands/scenario.d.ts +30 -0
  224. package/dist/src/functions/commands/scenario.js +186 -22
  225. package/dist/src/functions/commands/serve.js +7 -2
  226. package/dist/src/functions/surface/collect-snippets.d.ts +1 -13
  227. package/dist/src/functions/surface/collect-snippets.js +1 -83
  228. package/dist/src/functions/validate/type-identity-checks.d.ts +3 -2
  229. package/dist/src/functions/validate/type-identity-checks.js +74 -5
  230. package/dist/src/functions/validate/validate-registry.js +3 -3
  231. package/dist/src/functions/wirings/auth/serialize-auth-gen.js +33 -1
  232. package/dist/src/functions/wirings/functions/serialize-addon-types.js +4 -2
  233. package/dist/src/functions/wirings/rpc/pikku-command-react-query.js +3 -2
  234. package/dist/src/functions/wirings/rpc/serialize-react-query-hooks.d.ts +1 -1
  235. package/dist/src/functions/wirings/rpc/serialize-react-query-hooks.js +54 -3
  236. package/dist/src/functions/wirings/scenarios/serialize-feature-meta.js +1 -0
  237. package/dist/src/functions/wirings/workflow/serialize-scenario-types.js +6 -0
  238. package/dist/src/services.js +3 -1
  239. package/dist/tsconfig.tsbuildinfo +1 -1
  240. package/package.json +10 -10
  241. package/snippets-meta.json +1 -0
  242. package/snippets.json +1 -0
  243. package/surface.json +7 -3
  244. package/console-app/assets/architecture-7GRP2DOG-3y7bWtag.js +0 -1
  245. package/console-app/assets/channel-CTiluQVw.js +0 -1
  246. package/console-app/assets/chunk-XXDRQBXY-DBtYQykd.js +0 -1
  247. package/console-app/assets/classDiagram-ZZMXUADV-BnWa-i9n.js +0 -1
  248. package/console-app/assets/classDiagram-v2-VYDZK3BY-BnWa-i9n.js +0 -1
  249. package/console-app/assets/eventmodeling-NTZA5JFV-C_IpFSCw.js +0 -1
  250. package/console-app/assets/flowDiagram-HODETNUW-Q90rgVpx.js +0 -1
  251. package/console-app/assets/railroad-abnf-HS5TGJTU-CcPw9q8a.js +0 -1
  252. package/console-app/assets/railroad-ebnf-LZEXJU2U-Ci_fZics.js +0 -1
  253. package/console-app/assets/railroad-peg-WCYAUIDC-DTsDykSf.js +0 -1
  254. package/console-app/assets/stateDiagram-v2-MP3YSRHH--GM14Hz5.js +0 -1
  255. package/console-app/assets/swimlanesDiagram-VR7AAH4N-_6rRi6Wt.js +0 -8
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.159
2
+ * This file was generated by @pikku/cli@0.12.162
3
3
  */
4
4
  import { LocalMetaService } from '@pikku/core/services/local-meta';
5
5
  export declare class PikkuMetaService extends LocalMetaService {
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.159
2
+ * This file was generated by @pikku/cli@0.12.162
3
3
  */
4
4
  import { LocalMetaService } from '@pikku/core/services/local-meta';
5
5
  export class PikkuMetaService extends LocalMetaService {
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.159
2
+ * This file was generated by @pikku/cli@0.12.162
3
3
  */
4
4
  /**
5
5
  * Subpath entry — `#pikku/setup` resolves here.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.159
2
+ * This file was generated by @pikku/cli@0.12.162
3
3
  */
4
4
  /**
5
5
  * Subpath entry — `#pikku/setup` resolves here.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.159
2
+ * This file was generated by @pikku/cli@0.12.162
3
3
  */
4
4
  /**
5
5
  * Config and service factory definitions, declared once per application
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.159
2
+ * This file was generated by @pikku/cli@0.12.162
3
3
  */
4
4
  /**
5
5
  * Config and service factory definitions, declared once per application
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.159
2
+ * This file was generated by @pikku/cli@0.12.162
3
3
  */
4
4
  /**
5
5
  * Subpath entry — `#pikku/trigger` resolves here.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.159
2
+ * This file was generated by @pikku/cli@0.12.162
3
3
  */
4
4
  /**
5
5
  * Subpath entry — `#pikku/trigger` resolves here.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.159
2
+ * This file was generated by @pikku/cli@0.12.162
3
3
  */
4
4
  /**
5
5
  * Trigger-specific type definitions for tree-shaking optimization
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.159
2
+ * This file was generated by @pikku/cli@0.12.162
3
3
  */
4
4
  /**
5
5
  * Trigger-specific type definitions for tree-shaking optimization
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.159
2
+ * This file was generated by @pikku/cli@0.12.162
3
3
  */
4
4
  /**
5
5
  * Subpath entry — `#pikku/variables` resolves here.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.159
2
+ * This file was generated by @pikku/cli@0.12.162
3
3
  */
4
4
  /**
5
5
  * Subpath entry — `#pikku/variables` resolves here.
@@ -1,4 +1,4 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.159
2
+ * This file was generated by @pikku/cli@0.12.162
3
3
  */
4
4
  export { defineVariable } from '@pikku/core/variable';
@@ -1,4 +1,4 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.159
2
+ * This file was generated by @pikku/cli@0.12.162
3
3
  */
4
4
  export { defineVariable } from '@pikku/core/variable';
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.159
2
+ * This file was generated by @pikku/cli@0.12.162
3
3
  */
4
4
  import { TypedVariablesService as CoreTypedVariablesService } from '@pikku/core/services';
5
5
  import type { VariablesService } from '@pikku/core/services';
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.159
2
+ * This file was generated by @pikku/cli@0.12.162
3
3
  */
4
4
  import { TypedVariablesService as CoreTypedVariablesService, } from '@pikku/core/services';
5
5
  /**
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.159
2
+ * This file was generated by @pikku/cli@0.12.162
3
3
  */
4
4
  /**
5
5
  * Subpath entry — `#pikku/workflow` resolves here.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.159
2
+ * This file was generated by @pikku/cli@0.12.162
3
3
  */
4
4
  /**
5
5
  * Subpath entry — `#pikku/workflow` resolves here.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.159
2
+ * This file was generated by @pikku/cli@0.12.162
3
3
  */
4
4
  import { WorkflowCancelledException } from '@pikku/core/workflow';
5
5
  import type { PikkuWorkflowGraphConfig, PikkuWorkflowGraphResult } from '@pikku/core/workflow';
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.159
2
+ * This file was generated by @pikku/cli@0.12.162
3
3
  */
4
4
  import { WorkflowCancelledException } from '@pikku/core/workflow';
5
5
  import { pikkuWorkflowGraph as corePikkuWorkflowGraph } from '@pikku/core/workflow';
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.159
2
+ * This file was generated by @pikku/cli@0.12.162
3
3
  */
4
4
  import { pikkuState } from '@pikku/core/state';
5
5
  import allWorkflowMeta from './meta/allWorkflow.gen.json' with { type: 'json' };
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.159
2
+ * This file was generated by @pikku/cli@0.12.162
3
3
  */
4
4
  import { addWorkflow } from '@pikku/core/workflow';
5
5
  import './pikku-workflow-wirings-meta.gen.js';
@@ -11,8 +11,8 @@ async function checkForUpdate() {
11
11
  })
12
12
  if (!res.ok) return
13
13
  const { version: latest } = await res.json()
14
- if (latest !== '0.12.159') {
15
- process.stderr.write(`\n Update available 0.12.159 → ${latest}\n brew upgrade pikku or npm install -g @pikku/cli\n\n`)
14
+ if (latest !== '0.12.162') {
15
+ process.stderr.write(`\n Update available 0.12.162 → ${latest}\n brew upgrade pikku or npm install -g @pikku/cli\n\n`)
16
16
  }
17
17
  } catch {}
18
18
  }
@@ -38,7 +38,7 @@ import { knowledgeValidate, renderKnowledgeValidate, } from './functions/command
38
38
  import { knowledgeIndex, renderKnowledgeIndex, } from './functions/commands/knowledge-index.js';
39
39
  import { knowledgeReconcile, renderKnowledgeReconcile, } from './functions/commands/knowledge-reconcile.js';
40
40
  import { knowledgePlanDefer, knowledgePlanProgress, knowledgePlanSchema, knowledgePlanSet, knowledgePlanShow, renderKnowledgePlanDefer, renderKnowledgePlanProgress, renderKnowledgePlanSchema, renderKnowledgePlanSet, renderKnowledgePlanShow, } from './functions/commands/knowledge-plan.js';
41
- import { scenarioRun, scenarioList } from './functions/commands/scenario.js';
41
+ import { scenarioRun, scenarioList, scenarioGuide, } from './functions/commands/scenario.js';
42
42
  import { personaList, personaRun, personaSecret, } from './functions/commands/persona.js';
43
43
  import { personaSync } from './functions/commands/persona-sync.js';
44
44
  import { pikkuVersionsInit } from './functions/commands/versions-init.js';
@@ -708,6 +708,30 @@ wireCLI({
708
708
  func: scenarioList,
709
709
  description: 'List scenarios with names and descriptions',
710
710
  }),
711
+ guide: pikkuCLICommand({
712
+ func: scenarioGuide,
713
+ description: "Write the user guide the suite already contains: each page's editorial prose merged with the steps and screenshots the latest run recorded. Markdown only — no HTML, no asset URLs, no model.",
714
+ options: {
715
+ docs: {
716
+ description: 'Where the editorial sources live, relative to the project. A `<!-- pikku:guide feature=<id> -->` marker pair in a `<section>/<slug>.md` is both the citation and the place the block is written',
717
+ default: 'docs',
718
+ },
719
+ output: {
720
+ description: 'Where the merged markdown is written (default: <outDir>/guide)',
721
+ short: 'o',
722
+ },
723
+ runId: {
724
+ description: 'Build from this run rather than the most recent one',
725
+ },
726
+ allowUndocumented: {
727
+ description: 'Report features no page documents instead of failing on them',
728
+ default: false,
729
+ },
730
+ artifactBase: {
731
+ description: "Prefix every figure with this instead of the path from the page to the run's artifacts — for a host that serves them at a fixed address. Route-relative (`/docs/_media/`) keeps the output portable; an origin pins it to one host",
732
+ },
733
+ },
734
+ }),
711
735
  },
712
736
  },
713
737
  persona: {
@@ -303,7 +303,13 @@ export function analyzeDeployment(state, options) {
303
303
  // ── Step 1b: Addon units ───────────────────────────────────────────
304
304
  const addonUnitByRpcName = new Map();
305
305
  for (const [namespace, addonMeta] of entries(state.addonFunctions ?? {})) {
306
- const exposed = entries(addonMeta).filter(([, meta]) => meta.expose);
306
+ // The wiring's `expose` decides when it is `false` or a list; otherwise
307
+ // the addon's own `expose: true` does — the same rule `rpc.exposed`
308
+ // applies at runtime, so the unit carries exactly what can be called.
309
+ const wiredExpose = state.rpc?.wireAddonDeclarations?.get(namespace)?.expose;
310
+ const exposed = entries(addonMeta).filter(([funcName, meta]) => Array.isArray(wiredExpose)
311
+ ? wiredExpose.includes(funcName)
312
+ : wiredExpose !== false && meta.expose);
307
313
  if (exposed.length === 0) {
308
314
  continue;
309
315
  }
@@ -111,6 +111,8 @@ export declare function runBuildPipeline(options: {
111
111
  srcDirectories?: string[];
112
112
  /** Emit sourcemaps + per-unit `metafile.json` (debug-only). Default false. */
113
113
  debugArtifacts?: boolean;
114
+ /** Overrides the provider's own choice when set. See PikkuCLIConfig. */
115
+ mangleIdentifiers?: boolean;
114
116
  logger: BuildLogger;
115
117
  /** Runtime-specific bundler (esbuild for node, Bun.build for bun). */
116
118
  bundler: Bundler;
@@ -193,7 +193,7 @@ function resolveLifecycle(unitDir, state) {
193
193
  };
194
194
  }
195
195
  export async function runBuildPipeline(options) {
196
- const { projectDir, projectId, provider, inspectorState, getEntryContext, debugArtifacts, logger, bundler, } = options;
196
+ const { projectDir, projectId, provider, inspectorState, getEntryContext, debugArtifacts, mangleIdentifiers, logger, bundler, } = options;
197
197
  const deployDir = options.deployDir ?? join(projectDir, '.deploy');
198
198
  const providerDir = join(deployDir, provider.deployDirName);
199
199
  // Step 1: Analyze
@@ -263,7 +263,7 @@ export async function runBuildPipeline(options) {
263
263
  define: provider.getDefine?.(),
264
264
  platform: provider.getPlatform?.(),
265
265
  format: provider.getFormat?.(),
266
- mangleIdentifiers: provider.getMangleIdentifiers?.(),
266
+ mangleIdentifiers: mangleIdentifiers ?? provider.getMangleIdentifiers?.(),
267
267
  noRequireShim: provider.getNoRequireShim?.(),
268
268
  sourcemap: debugArtifacts,
269
269
  emitMetafile: debugArtifacts,
@@ -417,7 +417,7 @@ export async function runBuildPipeline(options) {
417
417
  define: provider.getDefine?.(),
418
418
  platform: provider.getPlatform?.(),
419
419
  format: provider.getFormat?.(),
420
- mangleIdentifiers: provider.getMangleIdentifiers?.(),
420
+ mangleIdentifiers: mangleIdentifiers ?? provider.getMangleIdentifiers?.(),
421
421
  noRequireShim: provider.getNoRequireShim?.(),
422
422
  sourcemap: debugArtifacts,
423
423
  emitMetafile: debugArtifacts,
@@ -442,6 +442,7 @@ export async function runBuildPipeline(options) {
442
442
  define: undefined,
443
443
  platform: 'node',
444
444
  format: 'esm',
445
+ mangleIdentifiers,
445
446
  noRequireShim: false,
446
447
  sourcemap: debugArtifacts,
447
448
  emitMetafile: debugArtifacts,
@@ -365,6 +365,7 @@ export const deployApply = pikkuSessionlessFunc({
365
365
  serverlessIncompatible: config.deploy?.serverlessIncompatible,
366
366
  defaultTarget: config.deploy?.defaultTarget,
367
367
  grouping: config.deploy?.grouping,
368
+ mangleIdentifiers: config.deploy?.mangleIdentifiers,
368
369
  globalHTTPPrefix: config.globalHTTPPrefix,
369
370
  getEntryContext,
370
371
  frontend: config.frontend,
@@ -59,6 +59,7 @@ export const deployPlan = pikkuSessionlessFunc({
59
59
  serverlessIncompatible: config.deploy?.serverlessIncompatible,
60
60
  defaultTarget: config.deploy?.defaultTarget,
61
61
  grouping: config.deploy?.grouping,
62
+ mangleIdentifiers: config.deploy?.mangleIdentifiers,
62
63
  globalHTTPPrefix: config.globalHTTPPrefix,
63
64
  getEntryContext,
64
65
  frontend: config.frontend,
@@ -0,0 +1,184 @@
1
+ /** One step of a scenario, as the run recorded it. */
2
+ export interface GuideStep {
3
+ /** The gherkin keyword the sentence was recorded under: Given, When, Then, And. */
4
+ phase?: string;
5
+ /** The sentence itself, without the keyword. */
6
+ sentence: string;
7
+ }
8
+ /** One screenshot a scenario filed, ready to reference. */
9
+ export interface GuideScreenshot {
10
+ /** The artifact's stable id, when the run recorded one. */
11
+ id?: string;
12
+ /** The caption the scenario author took the shot under; the alt text. */
13
+ name?: string;
14
+ /**
15
+ * The artifact's content key, relative to the run's artifact root and always
16
+ * forward-slashed — what the record stores, not a path on this machine. A
17
+ * page turns it into a link by prefixing the base it was rendered with.
18
+ */
19
+ path: string;
20
+ }
21
+ /**
22
+ * The recording a scenario filed, when the run kept one.
23
+ *
24
+ * A browser run keeps a video per scenario and per actor, so a two-actor
25
+ * scenario files two. Same shape as a screenshot because a consumer treats it
26
+ * the same way — a key under the run's artifact root that a base is prefixed
27
+ * onto.
28
+ */
29
+ export interface GuideVideo {
30
+ id?: string;
31
+ /** Whose window it was, when the run recorded more than one. */
32
+ actor?: string;
33
+ path: string;
34
+ }
35
+ export interface GuideScenario {
36
+ /** The scenario registration this ran. */
37
+ name: string;
38
+ /** What the run labelled it — the registration name, plus its feature and data. */
39
+ title: string;
40
+ description?: string;
41
+ /**
42
+ * The recorded ladder. Never rendered — a reader wants prose, not a
43
+ * Given/When/Then list — but it is the seed the prose is written from and the
44
+ * input {@link featureEvidence} watches.
45
+ */
46
+ steps: GuideStep[];
47
+ screenshots: GuideScreenshot[];
48
+ /**
49
+ * Optional so that a record predating video, and every fixture written
50
+ * against one, still describes a scenario.
51
+ */
52
+ videos?: GuideVideo[];
53
+ }
54
+ export interface GuideFeature {
55
+ id: string;
56
+ name: string;
57
+ description?: string;
58
+ /** `document !== false` on the registered feature. */
59
+ document: boolean;
60
+ scenarios: GuideScenario[];
61
+ }
62
+ /** One checked-in editorial source, parsed. */
63
+ export interface GuidePage {
64
+ /** Path relative to the docs source root, e.g. `deployments/promoting.md`. */
65
+ path: string;
66
+ title?: string;
67
+ description?: string;
68
+ /**
69
+ * The features this page cites, in the order their markers appear. Read off
70
+ * the body rather than declared in frontmatter: see {@link parseGuidePage}.
71
+ */
72
+ features: string[];
73
+ /**
74
+ * The frontmatter as it was written, every key of it. Carried whole rather
75
+ * than picked apart because a docs site reads its own keys off it — `slug`,
76
+ * `draft`, `sidebar_position` — and a compiler that rebuilt the block from
77
+ * the fields it happens to know about would drop them on the first rebuild.
78
+ */
79
+ frontmatter: Record<string, unknown>;
80
+ /** Everything after the frontmatter, generated regions included. */
81
+ body: string;
82
+ }
83
+ /**
84
+ * Read one editorial source.
85
+ *
86
+ * A page cites a feature by leaving the marker pair where the block belongs —
87
+ * an author writing `<!-- pikku:guide feature=x -->` followed by
88
+ * `<!-- /pikku:guide -->` and nothing between them. That one line is both
89
+ * halves of the job: it says *where* the block goes, which a frontmatter list
90
+ * cannot express, and it is what the coverage gate counts to decide *whether* a
91
+ * feature is documented at all. The mapping stays many-to-many and falls out of
92
+ * the union of every marker in the tree, so a feature written about in three
93
+ * places needs no index to say so.
94
+ */
95
+ export declare const parseGuidePage: (path: string, content: string) => GuidePage;
96
+ /**
97
+ * The hash a page's prose is written against.
98
+ *
99
+ * The input is the feature's **step sentences and artifact ids**, and
100
+ * deliberately not the image bytes and not the prose: restyling a UI changes
101
+ * every screenshot and no sentence, while inserting, reordering or renaming a
102
+ * step changes the sentence list — and that is what actually invalidates a
103
+ * paragraph describing the flow. It watches something the reader never sees.
104
+ *
105
+ * Canonically, the hashed value is the JSON of
106
+ * `[[scenarioName, [sentence, …], [artifactId, …]], …]` where:
107
+ *
108
+ * - scenarios are sorted by name then title, because a run's order is a
109
+ * property of how the suite was selected that day, not of the feature;
110
+ * - sentences keep their ladder order, keyword included, because that order is
111
+ * the flow being described — the one thing a step change must move;
112
+ * - each sentence is whitespace-collapsed, so the reporter's column padding is
113
+ * not part of the promise;
114
+ * - artifact ids are sorted, because artifacts are filed as they are finalised
115
+ * rather than as they were taken.
116
+ *
117
+ * Seven hex characters, like a short commit hash: it is read by a human
118
+ * comparing two lines, not by a collision-resistant protocol.
119
+ */
120
+ export declare const featureEvidence: (feature: GuideFeature) => string;
121
+ /**
122
+ * What each documented feature's evidence was the last time the guide was
123
+ * built, keyed by feature id.
124
+ *
125
+ * This is the one piece of machine state the pipeline keeps, and it is kept out
126
+ * of both the marker and the page frontmatter so that no hash is ever typed or
127
+ * merged by hand. It is generated, and it is checked in: a build that cannot
128
+ * read the previous hashes cannot tell stale prose from fresh, so a guide tree
129
+ * whose lock is untracked reports every page as current forever.
130
+ */
131
+ export type GuideLock = Record<string, string>;
132
+ export declare const parseGuideLock: (content: string) => GuideLock;
133
+ export declare const renderGuideLock: (features: GuideFeature[], cited: Iterable<string>) => string;
134
+ /** Which features are documented, which pages cite something that is not. */
135
+ export interface GuideCoverage {
136
+ /** Registered, documented, and cited by at least one page. */
137
+ cited: string[];
138
+ /** Registered, documented, and cited by no page. */
139
+ missing: string[];
140
+ /** Cited by a page and not registered at all. */
141
+ unknown: Array<{
142
+ path: string;
143
+ featureId: string;
144
+ }>;
145
+ /** Cited by a page and registered with `document: false`. */
146
+ optedOut: Array<{
147
+ path: string;
148
+ featureId: string;
149
+ }>;
150
+ /** Cited, but the run filed no figure for it — a citation that shows nothing. */
151
+ figureless: Array<{
152
+ path: string;
153
+ featureId: string;
154
+ }>;
155
+ /** Pages whose locked evidence is not the feature's current evidence. */
156
+ stale: Array<{
157
+ path: string;
158
+ featureId: string;
159
+ locked: string;
160
+ current: string;
161
+ }>;
162
+ }
163
+ export declare const checkGuideCoverage: (features: GuideFeature[], pages: GuidePage[], lock?: GuideLock) => GuideCoverage;
164
+ /**
165
+ * Merge one editorial source with the blocks its features generate.
166
+ *
167
+ * Hand-written prose and generated blocks stay separable, so a rebuild never
168
+ * clobbers writing: the body is the author's file, and only the regions between
169
+ * the markers are replaced. A block whose feature the page has stopped citing is
170
+ * dropped, since nothing would ever rewrite it again.
171
+ *
172
+ * `artifactBase` is prefixed onto every artifact key: the relative path from
173
+ * this page to the run's artifact root, which is all this module knows about
174
+ * where anything lives.
175
+ */
176
+ export declare const renderGuidePage: (page: GuidePage, features: Map<string, GuideFeature>, artifactBase: string) => string;
177
+ /**
178
+ * A recorded step sentence, split into its gherkin keyword and the rest.
179
+ *
180
+ * The run stores the composed sentence — `Given yasser signs in`, padded to
181
+ * the reporter's keyword column — so the phase is already in it and is read
182
+ * back off the record rather than re-derived from today's source.
183
+ */
184
+ export declare const guideStep: (sentence: string) => GuideStep;