@pikku/cli 0.12.125 → 0.12.127

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 (301) hide show
  1. package/CHANGELOG.md +231 -0
  2. package/console-app/assets/{abnfDiagram-N423BO3Z-B2suyn6i.js → abnfDiagram-N423BO3Z-BY2LM8wi.js} +1 -1
  3. package/console-app/assets/architecture-TIHT7OUA-CWwmvxZF.js +1 -0
  4. package/console-app/assets/{architectureDiagram-T3A2C74G-BQ5Dfvpo.js → architectureDiagram-T3A2C74G-CeqjY3Kw.js} +1 -1
  5. package/console-app/assets/{blockDiagram-VBNYF7ZC-D4pVRDiF.js → blockDiagram-VBNYF7ZC-BW5174xj.js} +1 -1
  6. package/console-app/assets/{c4Diagram-5PPSVZJV-Da04jGpq.js → c4Diagram-5PPSVZJV-B7zXAFL0.js} +1 -1
  7. package/console-app/assets/channel-pOkwZ_Ot.js +1 -0
  8. package/console-app/assets/{chunk-2GRJ4B5K-CwODIPP4.js → chunk-2GRJ4B5K-BfRYzQ4t.js} +1 -1
  9. package/console-app/assets/{chunk-4I5QYGJK-Bep4akjR.js → chunk-4I5QYGJK-DBA7-Nu4.js} +1 -1
  10. package/console-app/assets/{chunk-5RXB4S5H-CGyCRU9L.js → chunk-5RXB4S5H-D03lNzwi.js} +1 -1
  11. package/console-app/assets/{chunk-6Q2QTUOP-D0IK0SMT.js → chunk-6Q2QTUOP-DloGRHJZ.js} +1 -1
  12. package/console-app/assets/{chunk-7Z6QIM7H-D12vS1jX.js → chunk-7Z6QIM7H-DH3uHtl2.js} +1 -1
  13. package/console-app/assets/{chunk-GF5L2VYU-kOLwTzIA.js → chunk-GF5L2VYU-Cu252lza.js} +1 -1
  14. package/console-app/assets/{chunk-I66GZJ75-Cb2nDoa3.js → chunk-I66GZJ75-DH54FcuO.js} +1 -1
  15. package/console-app/assets/{chunk-JQJVKLGR-B3a_ctfQ.js → chunk-JQJVKLGR-CeFuTL-V.js} +1 -1
  16. package/console-app/assets/{chunk-KBJHAD2P-DeP2Lqwp.js → chunk-KBJHAD2P-B-prFo0-.js} +1 -1
  17. package/console-app/assets/{chunk-NSK5VX7P-BO8vlGrO.js → chunk-NSK5VX7P-C10iA4GS.js} +1 -1
  18. package/console-app/assets/{chunk-QR6OTTB3-sX5V0Lok.js → chunk-QR6OTTB3-Cd8apAsA.js} +1 -1
  19. package/console-app/assets/{chunk-RYQCIY6F-DoCObEhk.js → chunk-RYQCIY6F-rfPUp2Fj.js} +1 -1
  20. package/console-app/assets/{chunk-UBXNYLIW-BndMXU5r.js → chunk-UBXNYLIW-D25wqJBc.js} +1 -1
  21. package/console-app/assets/{chunk-W5SLKNZC--VrZN8EC.js → chunk-W5SLKNZC-CJvxkxuK.js} +1 -1
  22. package/console-app/assets/{chunk-WRU74C26-DdS0mzXO.js → chunk-WRU74C26-B9Wju92P.js} +1 -1
  23. package/console-app/assets/chunk-XXDRQBXY-BU_UP6f5.js +1 -0
  24. package/console-app/assets/classDiagram-JCYQIIEL-CLBKUuxj.js +1 -0
  25. package/console-app/assets/classDiagram-v2-OCEON4UE-CLBKUuxj.js +1 -0
  26. package/console-app/assets/{cose-bilkent-JH36ORCC-C5EnHkFn.js → cose-bilkent-JH36ORCC-CwA1VCP5.js} +1 -1
  27. package/console-app/assets/{cynefin-VYW2F7L2-9irdkTt4.js → cynefin-VYW2F7L2-C_qsD7eR.js} +1 -1
  28. package/console-app/assets/{cynefinDiagram-MW4NZA55-DY19660c.js → cynefinDiagram-MW4NZA55-CkSLreFW.js} +1 -1
  29. package/console-app/assets/{dagre-VZM6K2ZE-BYFZSaSb.js → dagre-VZM6K2ZE-0ssqLoHs.js} +1 -1
  30. package/console-app/assets/{dagre-nXgDYqvf.js → dagre-WqgBlKb7.js} +1 -1
  31. package/console-app/assets/{diagram-7IWD3JNH-oDftiTp1.js → diagram-7IWD3JNH-DmRL3lmL.js} +1 -1
  32. package/console-app/assets/{diagram-B4RE2ZJO-Cbj-pPbH.js → diagram-B4RE2ZJO-Bsr9wG4I.js} +1 -1
  33. package/console-app/assets/{diagram-LBJQPF4R-Ch53oSKw.js → diagram-LBJQPF4R-DdMw1FSY.js} +1 -1
  34. package/console-app/assets/{diagram-Q27KOJAE-DA7K814v.js → diagram-Q27KOJAE-TPx5TB2B.js} +1 -1
  35. package/console-app/assets/{diagram-UB23O5K3-B-_C-ctS.js → diagram-UB23O5K3-e_1zSlZR.js} +1 -1
  36. package/console-app/assets/{ebnfDiagram-BXEA7PRR-DsOdsKXy.js → ebnfDiagram-BXEA7PRR-BACajh2b.js} +1 -1
  37. package/console-app/assets/{erDiagram-JOGREHBK-XB1mP5_A.js → erDiagram-JOGREHBK-CojomKqL.js} +1 -1
  38. package/console-app/assets/eventmodeling-45OFAUF4-DkN2KCrT.js +1 -0
  39. package/console-app/assets/flowDiagram-UKHOOZJN-DL0M9lBc.js +1 -0
  40. package/console-app/assets/{ganttDiagram-PKOTCBZU-knk0XSHi.js → ganttDiagram-PKOTCBZU-yoOX4Xj2.js} +1 -1
  41. package/console-app/assets/{gitGraph-TEB2WS4Q-COJnK2tM.js → gitGraph-TEB2WS4Q-BcUY5hIc.js} +1 -1
  42. package/console-app/assets/{gitGraphDiagram-DS77QQ5N-sF0v605q.js → gitGraphDiagram-DS77QQ5N-BtuIPjuB.js} +1 -1
  43. package/console-app/assets/{index-DMnbsgzs.js → index-CzWW052c.js} +151 -151
  44. package/console-app/assets/{info-DKCQHKI2-Cbatr0w6.js → info-DKCQHKI2-B-iR9PUz.js} +1 -1
  45. package/console-app/assets/{infoDiagram-6WML65LV-93TFPCu2.js → infoDiagram-6WML65LV-CuXKIFH2.js} +1 -1
  46. package/console-app/assets/{ishikawaDiagram-WSZJBQD7-BBR8_Qms.js → ishikawaDiagram-WSZJBQD7-CSueMFD6.js} +1 -1
  47. package/console-app/assets/{journeyDiagram-NVQOT4AX-zG55yDoc.js → journeyDiagram-NVQOT4AX-kvnKStZp.js} +1 -1
  48. package/console-app/assets/{kanban-definition-27J2QSJJ-DonGcEAY.js → kanban-definition-27J2QSJJ-CGGDEz30.js} +1 -1
  49. package/console-app/assets/{line-D1WdVm1S.js → line-mtMM5-xO.js} +1 -1
  50. package/console-app/assets/{linear-D2GQL4Cm.js → linear-CLSje0O_.js} +1 -1
  51. package/console-app/assets/{mermaid-parser.core-b4yKyO56.js → mermaid-parser.core-Cx6yvn3j.js} +3 -3
  52. package/console-app/assets/{mermaid.core-Cwfec1gr.js → mermaid.core-BebGyklS.js} +4 -4
  53. package/console-app/assets/{mindmap-definition-FAOFIHXS-D0G4yKgw.js → mindmap-definition-FAOFIHXS-C2_WUUJ9.js} +1 -1
  54. package/console-app/assets/{packet-7NZHBO7P-DDa4HL2T.js → packet-7NZHBO7P-Dh5yNCA8.js} +1 -1
  55. package/console-app/assets/{pegDiagram-VL7TDLO6-fPdN5VZs.js → pegDiagram-VL7TDLO6-XgUxesi8.js} +1 -1
  56. package/console-app/assets/{pie-RZYD4A2V-DRHURUqo.js → pie-RZYD4A2V-D2x2RAXI.js} +1 -1
  57. package/console-app/assets/{pieDiagram-7S7Q4E2Y-DMYn8ga_.js → pieDiagram-7S7Q4E2Y-Bbor0KbG.js} +1 -1
  58. package/console-app/assets/{quadrantDiagram-CIZ2JOQS-C190OamC.js → quadrantDiagram-CIZ2JOQS-DZmnMHpM.js} +1 -1
  59. package/console-app/assets/{radar-I7S5WNFK-Djvqzz9A.js → radar-I7S5WNFK-CPeriDtN.js} +1 -1
  60. package/console-app/assets/{railroad-3IZDKUUU-C9YvFeFq.js → railroad-3IZDKUUU-2iKAyaie.js} +1 -1
  61. package/console-app/assets/railroad-abnf-AHOZXSZD-D26xz4MM.js +1 -0
  62. package/console-app/assets/railroad-ebnf-EBAXGLYW-CCAiMPWc.js +1 -0
  63. package/console-app/assets/railroad-peg-LSFZ7HO6-BA1zcisq.js +1 -0
  64. package/console-app/assets/{railroadDiagram-AXF67PYL-IRFg1VrU.js → railroadDiagram-AXF67PYL-DVEqCXoo.js} +1 -1
  65. package/console-app/assets/{requirementDiagram-LRYGKXZP-L-7ubbcT.js → requirementDiagram-LRYGKXZP-CSgSNL8p.js} +1 -1
  66. package/console-app/assets/{sankeyDiagram-W5VNT64P-DBttV6Gt.js → sankeyDiagram-W5VNT64P-CFk11odN.js} +1 -1
  67. package/console-app/assets/{sequenceDiagram-SI44F4Z6-Bg15oKAB.js → sequenceDiagram-SI44F4Z6-Cb5u6FsJ.js} +1 -1
  68. package/console-app/assets/{src-DUC7tLWb.js → src-LceHEY_Q.js} +1 -1
  69. package/console-app/assets/{stateDiagram-OKZ733FA-PWl0XGs5.js → stateDiagram-OKZ733FA-DM1jWlkU.js} +1 -1
  70. package/console-app/assets/stateDiagram-v2-UEYNNEHI-COVnPYic.js +1 -0
  71. package/console-app/assets/{swimlanes-SLNWSIFB-CyXEtGBV.js → swimlanes-SLNWSIFB-DD6MchlE.js} +1 -1
  72. package/console-app/assets/swimlanesDiagram-ULZ7WXOC-B5q8iRCQ.js +8 -0
  73. package/console-app/assets/{timeline-definition-Z64GVDOM-BLA-DhBt.js → timeline-definition-Z64GVDOM-zu5cNnVv.js} +1 -1
  74. package/console-app/assets/{treeView-QDETBFTQ-Bfnmn2UY.js → treeView-QDETBFTQ-D_4IbvCG.js} +1 -1
  75. package/console-app/assets/{treemap-6X3UGDF4-DTA0wveO.js → treemap-6X3UGDF4-DNc6bjUc.js} +1 -1
  76. package/console-app/assets/{vennDiagram-T6HMQDX7-CLXYZln0.js → vennDiagram-T6HMQDX7-DfqoG28f.js} +1 -1
  77. package/console-app/assets/{wardley-OPB4EBWU-zwxqisG0.js → wardley-OPB4EBWU-BqpI2Lx-.js} +1 -1
  78. package/console-app/assets/{wardleyDiagram-T6FBY63Y-hKtKvNlv.js → wardleyDiagram-T6FBY63Y-CLIZSvNi.js} +1 -1
  79. package/console-app/assets/{xychartDiagram-ELKLHX3M-BGf8p4bo.js → xychartDiagram-ELKLHX3M-Cni-XXa6.js} +1 -1
  80. package/console-app/index.html +1 -1
  81. package/dist/.pikku/addon/index.d.ts +1 -1
  82. package/dist/.pikku/addon/index.js +1 -1
  83. package/dist/.pikku/addon/pikku-addon-types.gen.d.ts +1 -1
  84. package/dist/.pikku/addon/pikku-addon-types.gen.js +1 -1
  85. package/dist/.pikku/agent/index.d.ts +1 -1
  86. package/dist/.pikku/agent/index.js +1 -1
  87. package/dist/.pikku/agent/pikku-agent-types.gen.d.ts +1 -1
  88. package/dist/.pikku/agent/pikku-model-aliases.gen.js +1 -1
  89. package/dist/.pikku/auth/index.d.ts +1 -1
  90. package/dist/.pikku/auth/index.js +1 -1
  91. package/dist/.pikku/auth/pikku-auth-types.gen.d.ts +1 -1
  92. package/dist/.pikku/auth/pikku-auth-types.gen.js +1 -1
  93. package/dist/.pikku/channel/index.d.ts +1 -1
  94. package/dist/.pikku/channel/index.js +1 -1
  95. package/dist/.pikku/channel/pikku-channel-types.gen.d.ts +1 -1
  96. package/dist/.pikku/channel/pikku-channel-types.gen.js +1 -1
  97. package/dist/.pikku/cli/index.d.ts +1 -1
  98. package/dist/.pikku/cli/index.js +1 -1
  99. package/dist/.pikku/cli/pikku-cli-channel.js +26 -1
  100. package/dist/.pikku/cli/pikku-cli-client.gen.d.ts +1 -1
  101. package/dist/.pikku/cli/pikku-cli-client.gen.js +1 -1
  102. package/dist/.pikku/cli/pikku-cli-contracts-meta.gen.d.ts +1 -1
  103. package/dist/.pikku/cli/pikku-cli-contracts-meta.gen.js +1 -1
  104. package/dist/.pikku/cli/pikku-cli-contracts-meta.gen.json +103 -0
  105. package/dist/.pikku/cli/pikku-cli-types.gen.d.ts +1 -1
  106. package/dist/.pikku/cli/pikku-cli-types.gen.js +1 -1
  107. package/dist/.pikku/cli/pikku-cli-wirings-meta.gen.js +1 -1
  108. package/dist/.pikku/cli/pikku-cli-wirings-meta.gen.json +116 -0
  109. package/dist/.pikku/cli/pikku-cli-wirings.gen.d.ts +1 -1
  110. package/dist/.pikku/cli/pikku-cli-wirings.gen.js +1 -1
  111. package/dist/.pikku/cli/pikku-cli.gen.d.ts +1 -1
  112. package/dist/.pikku/cli/pikku-cli.gen.js +1 -1
  113. package/dist/.pikku/error/index.d.ts +1 -1
  114. package/dist/.pikku/error/index.js +1 -1
  115. package/dist/.pikku/error/pikku-error-types.gen.d.ts +1 -1
  116. package/dist/.pikku/error/pikku-error-types.gen.js +1 -1
  117. package/dist/.pikku/function/index.d.ts +1 -1
  118. package/dist/.pikku/function/index.js +1 -1
  119. package/dist/.pikku/function/pikku-function-types.gen.d.ts +1 -1
  120. package/dist/.pikku/function/pikku-function-types.gen.js +1 -1
  121. package/dist/.pikku/function/pikku-functions-meta.gen.js +1 -1
  122. package/dist/.pikku/function/pikku-functions-meta.gen.json +114 -21
  123. package/dist/.pikku/function/pikku-functions.gen.js +1 -1
  124. package/dist/.pikku/gateway/index.d.ts +1 -1
  125. package/dist/.pikku/gateway/index.js +1 -1
  126. package/dist/.pikku/gateway/pikku-gateway-types.gen.d.ts +1 -1
  127. package/dist/.pikku/gateway/pikku-gateway-types.gen.js +1 -1
  128. package/dist/.pikku/http/index.d.ts +1 -1
  129. package/dist/.pikku/http/index.js +1 -1
  130. package/dist/.pikku/http/pikku-http-types.gen.d.ts +1 -1
  131. package/dist/.pikku/http/pikku-http-types.gen.js +1 -1
  132. package/dist/.pikku/mcp/index.d.ts +1 -1
  133. package/dist/.pikku/mcp/index.js +1 -1
  134. package/dist/.pikku/mcp/pikku-mcp-types.gen.d.ts +1 -1
  135. package/dist/.pikku/mcp/pikku-mcp-types.gen.js +1 -1
  136. package/dist/.pikku/middleware/index.d.ts +1 -1
  137. package/dist/.pikku/middleware/index.js +1 -1
  138. package/dist/.pikku/middleware/pikku-middleware-types.gen.d.ts +1 -1
  139. package/dist/.pikku/middleware/pikku-middleware-types.gen.js +1 -1
  140. package/dist/.pikku/pikku-bootstrap-scenarios.gen.d.ts +1 -1
  141. package/dist/.pikku/pikku-bootstrap-scenarios.gen.js +1 -1
  142. package/dist/.pikku/pikku-bootstrap.gen.d.ts +1 -1
  143. package/dist/.pikku/pikku-bootstrap.gen.js +1 -1
  144. package/dist/.pikku/pikku-services.gen.d.ts +1 -1
  145. package/dist/.pikku/queue/index.d.ts +1 -1
  146. package/dist/.pikku/queue/index.js +1 -1
  147. package/dist/.pikku/queue/pikku-queue-types.gen.d.ts +1 -1
  148. package/dist/.pikku/queue/pikku-queue-types.gen.js +1 -1
  149. package/dist/.pikku/queue/pikku-queue-workers-wirings-meta.gen.js +1 -1
  150. package/dist/.pikku/queue/pikku-queue-workers-wirings.gen.d.ts +1 -1
  151. package/dist/.pikku/queue/pikku-queue-workers-wirings.gen.js +1 -1
  152. package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.js +1 -1
  153. package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.json +5 -0
  154. package/dist/.pikku/scenarios/index.d.ts +1 -1
  155. package/dist/.pikku/scenarios/index.js +1 -1
  156. package/dist/.pikku/scenarios/pikku-personas.gen.js +1 -1
  157. package/dist/.pikku/scenarios/pikku-scenario-functions-meta.gen.js +1 -1
  158. package/dist/.pikku/scenarios/pikku-scenario-functions.gen.d.ts +1 -1
  159. package/dist/.pikku/scenarios/pikku-scenario-types.gen.d.ts +1 -1
  160. package/dist/.pikku/scenarios/pikku-scenario-wirings-meta.gen.js +1 -1
  161. package/dist/.pikku/scenarios/pikku-scenario-wirings.gen.d.ts +1 -1
  162. package/dist/.pikku/scenarios/schemas/register.gen.d.ts +1 -1
  163. package/dist/.pikku/scenarios/schemas/register.gen.js +1 -1
  164. package/dist/.pikku/scheduler/index.d.ts +1 -1
  165. package/dist/.pikku/scheduler/index.js +1 -1
  166. package/dist/.pikku/scheduler/pikku-scheduler-types.gen.d.ts +1 -1
  167. package/dist/.pikku/scheduler/pikku-scheduler-types.gen.js +1 -1
  168. package/dist/.pikku/schemas/register.gen.js +19 -1
  169. package/dist/.pikku/schemas/schemas/FabricFindingsClearInput.schema.json +1 -0
  170. package/dist/.pikku/schemas/schemas/FabricFindingsClearOutput.schema.json +1 -0
  171. package/dist/.pikku/schemas/schemas/FabricFindingsFlushInput.schema.json +1 -0
  172. package/dist/.pikku/schemas/schemas/FabricFindingsFlushOutput.schema.json +1 -0
  173. package/dist/.pikku/schemas/schemas/FabricFindingsListInput.schema.json +1 -0
  174. package/dist/.pikku/schemas/schemas/FabricFindingsListOutput.schema.json +1 -0
  175. package/dist/.pikku/schemas/schemas/FabricReportInput.schema.json +1 -0
  176. package/dist/.pikku/schemas/schemas/FabricReportOutput.schema.json +1 -0
  177. package/dist/.pikku/schemas/schemas/FabricSecretsListInput.schema.json +1 -1
  178. package/dist/.pikku/schemas/schemas/FabricSecretsRotateInput.schema.json +1 -1
  179. package/dist/.pikku/schemas/schemas/FabricSecretsSetInput.schema.json +1 -1
  180. package/dist/.pikku/schemas/schemas/FabricVariablesGetInput.schema.json +1 -1
  181. package/dist/.pikku/schemas/schemas/FabricVariablesSetInput.schema.json +1 -1
  182. package/dist/.pikku/schemas/schemas/PersonaSecretInput.schema.json +1 -0
  183. package/dist/.pikku/scopes/index.d.ts +1 -1
  184. package/dist/.pikku/scopes/index.js +1 -1
  185. package/dist/.pikku/scopes/pikku-personas.gen.js +1 -1
  186. package/dist/.pikku/scopes/pikku-roles.gen.d.ts +1 -1
  187. package/dist/.pikku/scopes/pikku-scope-types.gen.d.ts +1 -1
  188. package/dist/.pikku/scopes/pikku-scope-types.gen.js +1 -1
  189. package/dist/.pikku/scopes/pikku-scopes.gen.d.ts +1 -1
  190. package/dist/.pikku/secrets/index.d.ts +1 -1
  191. package/dist/.pikku/secrets/index.js +1 -1
  192. package/dist/.pikku/secrets/pikku-secret-types.gen.d.ts +1 -1
  193. package/dist/.pikku/secrets/pikku-secret-types.gen.js +1 -1
  194. package/dist/.pikku/secrets/pikku-secrets.gen.d.ts +1 -1
  195. package/dist/.pikku/secrets/pikku-secrets.gen.js +1 -1
  196. package/dist/.pikku/services/pikku-meta-service.gen.d.ts +1 -1
  197. package/dist/.pikku/services/pikku-meta-service.gen.js +1 -1
  198. package/dist/.pikku/setup/index.d.ts +1 -1
  199. package/dist/.pikku/setup/index.js +1 -1
  200. package/dist/.pikku/setup/pikku-setup-types.gen.d.ts +1 -1
  201. package/dist/.pikku/setup/pikku-setup-types.gen.js +1 -1
  202. package/dist/.pikku/trigger/index.d.ts +1 -1
  203. package/dist/.pikku/trigger/index.js +1 -1
  204. package/dist/.pikku/trigger/pikku-trigger-types.gen.d.ts +1 -1
  205. package/dist/.pikku/trigger/pikku-trigger-types.gen.js +1 -1
  206. package/dist/.pikku/variables/index.d.ts +1 -1
  207. package/dist/.pikku/variables/index.js +1 -1
  208. package/dist/.pikku/variables/pikku-variable-types.gen.d.ts +1 -1
  209. package/dist/.pikku/variables/pikku-variable-types.gen.js +1 -1
  210. package/dist/.pikku/variables/pikku-variables.gen.d.ts +1 -1
  211. package/dist/.pikku/variables/pikku-variables.gen.js +1 -1
  212. package/dist/.pikku/workflow/index.d.ts +1 -1
  213. package/dist/.pikku/workflow/index.js +1 -1
  214. package/dist/.pikku/workflow/pikku-workflow-types.gen.d.ts +1 -1
  215. package/dist/.pikku/workflow/pikku-workflow-types.gen.js +1 -1
  216. package/dist/.pikku/workflow/pikku-workflow-wirings-meta.gen.js +1 -1
  217. package/dist/.pikku/workflow/pikku-workflow-wirings.gen.js +1 -1
  218. package/dist/bin/pikku-bin.mjs +2 -2
  219. package/dist/src/cli.wiring.js +6 -1
  220. package/dist/src/deploy/bundler/bun-bundler.js +12 -5
  221. package/dist/src/fabric/fabric-commands.d.ts +153 -15
  222. package/dist/src/fabric/fabric-commands.js +65 -0
  223. package/dist/src/fabric/functions/deploy.function.js +12 -2
  224. package/dist/src/fabric/functions/findings-clear.function.d.ts +12 -0
  225. package/dist/src/fabric/functions/findings-clear.function.js +17 -0
  226. package/dist/src/fabric/functions/findings-flush.function.d.ts +33 -0
  227. package/dist/src/fabric/functions/findings-flush.function.js +36 -0
  228. package/dist/src/fabric/functions/findings-list.function.d.ts +55 -0
  229. package/dist/src/fabric/functions/findings-list.function.js +52 -0
  230. package/dist/src/fabric/functions/report.function.d.ts +121 -0
  231. package/dist/src/fabric/functions/report.function.js +84 -0
  232. package/dist/src/fabric/functions/secrets-list.function.d.ts +4 -4
  233. package/dist/src/fabric/functions/secrets-list.function.js +4 -4
  234. package/dist/src/fabric/functions/secrets-rotate.function.d.ts +4 -4
  235. package/dist/src/fabric/functions/secrets-rotate.function.js +8 -5
  236. package/dist/src/fabric/functions/secrets-set.function.d.ts +4 -4
  237. package/dist/src/fabric/functions/secrets-set.function.js +4 -4
  238. package/dist/src/fabric/functions/validate.function.js +49 -24
  239. package/dist/src/fabric/functions/variables-get.function.d.ts +4 -4
  240. package/dist/src/fabric/functions/variables-get.function.js +4 -4
  241. package/dist/src/fabric/functions/variables-set.function.d.ts +4 -4
  242. package/dist/src/fabric/functions/variables-set.function.js +4 -4
  243. package/dist/src/fabric/lib/blank-comments.d.ts +21 -0
  244. package/dist/src/fabric/lib/blank-comments.js +71 -0
  245. package/dist/src/fabric/lib/blank-scenario-meta.d.ts +1 -0
  246. package/dist/src/fabric/lib/blank-scenario-meta.js +110 -0
  247. package/dist/src/fabric/lib/deployment.d.ts +26 -0
  248. package/dist/src/fabric/lib/deployment.js +35 -0
  249. package/dist/src/fabric/lib/finding-spool.d.ts +56 -0
  250. package/dist/src/fabric/lib/finding-spool.js +105 -0
  251. package/dist/src/fabric/lib/finding.d.ts +92 -0
  252. package/dist/src/fabric/lib/finding.js +156 -0
  253. package/dist/src/fabric/lib/report-environment.d.ts +53 -0
  254. package/dist/src/fabric/lib/report-environment.js +119 -0
  255. package/dist/src/fabric/lib/stage.d.ts +19 -3
  256. package/dist/src/fabric/lib/stage.js +29 -6
  257. package/dist/src/functions/commands/db-reset.js +6 -2
  258. package/dist/src/functions/commands/dev.js +5 -1
  259. package/dist/src/functions/commands/environment.d.ts +5 -0
  260. package/dist/src/functions/commands/persona.d.ts +18 -0
  261. package/dist/src/functions/commands/persona.js +42 -2
  262. package/dist/src/functions/commands/scenario-browser.d.ts +13 -5
  263. package/dist/src/functions/commands/scenario.js +1 -0
  264. package/dist/src/functions/db/check-enums.d.ts +38 -0
  265. package/dist/src/functions/db/check-enums.js +103 -0
  266. package/dist/src/functions/db/db-codegen.js +15 -0
  267. package/dist/src/functions/db/postgres/postgres-introspector.d.ts +14 -0
  268. package/dist/src/functions/db/postgres/postgres-introspector.js +48 -0
  269. package/dist/src/functions/db/sqlite/sqlite-introspector.d.ts +3 -4
  270. package/dist/src/functions/db/sqlite/sqlite-introspector.js +5 -17
  271. package/dist/src/functions/validate/auth-plugin-checks.d.ts +1 -1
  272. package/dist/src/functions/validate/auth-plugin-checks.js +8 -5
  273. package/dist/src/functions/validate/persona-checks.js +8 -6
  274. package/dist/src/functions/wirings/user-admin/pikku-command-user-admin-functions.js +10 -5
  275. package/dist/src/functions/wirings/user-admin/serialize-user-admin-functions.d.ts +1 -1
  276. package/dist/src/functions/wirings/user-admin/serialize-user-admin-functions.js +3 -3
  277. package/dist/src/functions/wirings/virtual-user/serialize-virtual-user-functions.d.ts +9 -6
  278. package/dist/src/functions/wirings/virtual-user/serialize-virtual-user-functions.js +51 -27
  279. package/dist/src/server/actor-sign-in.d.ts +24 -1
  280. package/dist/src/server/actor-sign-in.js +45 -2
  281. package/dist/src/services.js +9 -0
  282. package/dist/src/utils/persona-credentials.d.ts +23 -2
  283. package/dist/src/utils/persona-credentials.js +55 -2
  284. package/dist/src/utils/pikku-cli-config.d.ts +4 -4
  285. package/dist/src/utils/pikku-cli-config.js +30 -10
  286. package/dist/tsconfig.tsbuildinfo +1 -1
  287. package/package.json +8 -8
  288. package/snippets.json +1 -1
  289. package/surface.json +102 -52
  290. package/console-app/assets/architecture-TIHT7OUA-DmG0bXDT.js +0 -1
  291. package/console-app/assets/channel-BgCT5gon.js +0 -1
  292. package/console-app/assets/chunk-XXDRQBXY-EP2C9tTO.js +0 -1
  293. package/console-app/assets/classDiagram-JCYQIIEL-D9wGqB4J.js +0 -1
  294. package/console-app/assets/classDiagram-v2-OCEON4UE-D9wGqB4J.js +0 -1
  295. package/console-app/assets/eventmodeling-45OFAUF4-NKFCZ8Fj.js +0 -1
  296. package/console-app/assets/flowDiagram-UKHOOZJN-BpdPkmum.js +0 -1
  297. package/console-app/assets/railroad-abnf-AHOZXSZD-B3CYVW4p.js +0 -1
  298. package/console-app/assets/railroad-ebnf-EBAXGLYW-DrZ2yF62.js +0 -1
  299. package/console-app/assets/railroad-peg-LSFZ7HO6-CWAmMyxd.js +0 -1
  300. package/console-app/assets/stateDiagram-v2-UEYNNEHI-Celbgz4u.js +0 -1
  301. package/console-app/assets/swimlanesDiagram-ULZ7WXOC-zxpNaB4U.js +0 -8
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pikku/cli",
3
- "version": "0.12.125",
3
+ "version": "0.12.127",
4
4
  "description": "Pikku CLI — code generation, dev server, migrations and deployment",
5
5
  "author": "yasser.fadl@gmail.com",
6
6
  "license": "BUSL-1.1",
@@ -31,20 +31,20 @@
31
31
  "@jridgewell/trace-mapping": "^0.3.31",
32
32
  "@openapi-contrib/json-schema-to-openapi-schema": "^4.3.4",
33
33
  "@pikku/ai-vercel": "^0.12.13",
34
- "@pikku/better-auth": "^0.12.32",
34
+ "@pikku/better-auth": "^0.12.34",
35
35
  "@pikku/bun-server": "^0.12.10",
36
36
  "@pikku/code-edit": "^0.12.1",
37
37
  "@pikku/deploy": "^0.12.2",
38
38
  "@pikku/deploy-cloudflare": "^0.12.13",
39
39
  "@pikku/fetch": "^0.12.10",
40
- "@pikku/inspector": "^0.12.67",
40
+ "@pikku/inspector": "^0.12.69",
41
41
  "@pikku/knowledge": "^0.12.7",
42
42
  "@pikku/kysely": "^0.13.23",
43
43
  "@pikku/n8n-import": "^0.0.7",
44
44
  "@pikku/node-http-server": "^0.12.12",
45
45
  "@pikku/openapi-parser": "^0.12.20",
46
46
  "@pikku/schedule": "^0.12.7",
47
- "@pikku/skills": "^0.12.19",
47
+ "@pikku/skills": "^0.12.21",
48
48
  "@types/cookie": "^1.0.0",
49
49
  "@types/json-schema": "^7.0.15",
50
50
  "ai": "^7.0.66",
@@ -67,15 +67,15 @@
67
67
  "zod-to-ts": "^2.1.0"
68
68
  },
69
69
  "peerDependencies": {
70
- "@pikku/core": "^0.12.98",
71
- "@pikku/playwright": "^0.12.79",
70
+ "@pikku/core": "^0.12.100",
71
+ "@pikku/playwright": "^0.12.81",
72
72
  "@pikku/ws": "^0.12.9",
73
73
  "better-auth": "^1.6.0",
74
74
  "ws": "^8.21.3"
75
75
  },
76
76
  "devDependencies": {
77
- "@pikku/core": "^0.12.98",
78
- "@pikku/playwright": "^0.12.79",
77
+ "@pikku/core": "^0.12.100",
78
+ "@pikku/playwright": "^0.12.81",
79
79
  "@pikku/ws": "^0.12.9",
80
80
  "@playwright/test": "^1.50.0",
81
81
  "@types/istanbul-lib-instrument": "^1.7.8",
package/snippets.json CHANGED
@@ -14,7 +14,7 @@
14
14
  "aiAgentStream": "// Streaming endpoint — sends text-delta, tool-call, and usage events as they arrive.\nwireHTTP({\n method: 'post',\n route: '/agents/shop/stream',\n func: agentStream('shopAssistant'),\n auth: true,\n})",
15
15
  "aiAgentStreamClient": "export async function agentStreamExamples() {\n pikkuRPC.setServerUrl('http://localhost:4000')\n pikkuRPC.setAuthorizationJWT('user-jwt-token')\n\n const stream = await pikkuRPC.agent.stream('shopAssistant', {\n message: 'Add the cheapest USB hub to my basket',\n threadId: 'thread-123',\n resourceId: 'user-456',\n })\n return stream\n}",
16
16
  "auditDispatch": "await audit?.audit({\n type: 'order.created',\n source: 'explicit',\n occurredAt: new Date().toISOString(),\n metadata: { orderId, userId },\n})",
17
- "betterAuthConfig": "export const auth = pikkuBetterAuth(\n async ({ kysely, secrets, variables, emailService }) => {\n // `.reveal()` at the sink, not earlier: getSecret hands back a nominal\n // SecretValue that no concretely-typed parameter accepts, so every disclosure\n // is one greppable call. Better Auth wants the raw string, and this is where\n // it stops being a secret in the type system.\n const BETTER_AUTH_SECRET = (\n await secrets.getSecret('BETTER_AUTH_SECRET')\n ).reveal()\n // Genuinely optional: unset simply disables /api/auth/sign-in/actor (scenarios\n // off for this deployment) — the actor plugin refuses all sign-ins\n // without it.\n const SCENARIO_ACTOR_SECRET = await secrets\n .getSecret('SCENARIO_ACTOR_SECRET')\n .then((value) => value?.reveal())\n .catch(() => undefined)\n // Fabric operator admin: the RSA public key the control plane's token is\n // verified against. The Fabric deployer pushes FABRIC_AUTH_PUBLIC_KEY onto\n // every stage; locally it's simply absent, which disables /sign-in/fabric.\n // Asymmetric — the app verifies, it can never forge an operator login.\n const FABRIC_AUTH_PUBLIC_KEY = await variables.get('FABRIC_AUTH_PUBLIC_KEY')\n\n return betterAuth({\n secret: BETTER_AUTH_SECRET,\n database: { db: kysely, type: 'sqlite' },\n emailAndPassword: {\n enabled: true,\n // Without this, `requestPasswordReset` succeeds on the client and silently\n // sends nothing — the \"Forgot password?\" flow looks wired and dead-ends.\n // Better Auth builds `url` from its baseURL + the client's redirectTo, so\n // the app only supplies the message. Errors are logged, never swallowed:\n // a reset the user never receives must be visible in the logs.\n sendResetPassword: async ({ user, url }) => {\n await emailService.send({\n to: user.email,\n template: {\n name: 'reset-password',\n data: { email: user.email, resetUrl: url },\n },\n })\n },\n },\n // Stateless session: CLI splits out betterAuthStatelessSession so non-auth\n // units verify the signed cookie instead of bundling better-auth. pikku #737.\n session: { cookieCache: { enabled: true } },\n advanced: { database: { generateId: 'uuid' } },\n // Scenario actors: synthetic users (user.actor = true, see\n // db/sqlite/0002-user-actor.sql) signed in by pikkuScenario via\n // POST /api/auth/sign-in/actor { email, secret }. Never signs in real users.\n //\n // ban(): adds the banned/banExpires/banReason columns (see\n // db/sqlite/0003-admin.sql) and the session hook that refuses a banned\n // user a session. better-auth's own admin() is refused by the inspector:\n // it authorizes on a `user.role` column while pikku authorizes on scopes,\n // and everything else it offered — list, create, ban, remove, revoke\n // sessions, set password — is scoped RPCs in @pikku/addon-admin.\n //\n // fabric(): exposes /api/auth/sign-in/fabric — the Fabric control plane\n // mints a short-lived RS256 token and signs in as a synthetic `fabric: true`\n // admin operator (db/sqlite/0004-fabric.sql), so the console Users tab can\n // list/impersonate real users without the operator being one of them. It\n // verifies against FABRIC_AUTH_PUBLIC_KEY; a missing key disables the\n // endpoint.\n plugins: [\n actor({ secret: SCENARIO_ACTOR_SECRET }),\n ban(),\n fabric({ publicKey: FABRIC_AUTH_PUBLIC_KEY }),\n ],\n })\n }\n)",
17
+ "betterAuthConfig": "export const auth = pikkuBetterAuth(\n async ({ kysely, secrets, variables, emailService }) => {\n // `.reveal()` at the sink, not earlier: getSecret hands back a nominal\n // SecretValue that no concretely-typed parameter accepts, so every disclosure\n // is one greppable call. Better Auth wants the raw string, and this is where\n // it stops being a secret in the type system.\n const BETTER_AUTH_SECRET = (\n await secrets.getSecret('BETTER_AUTH_SECRET')\n ).reveal()\n // Genuinely optional: unset simply disables /api/auth/sign-in/actor (scenarios\n // off for this deployment) — the actor plugin refuses all sign-ins\n // without it.\n const SCENARIO_ACTOR_SECRET = await secrets\n .getSecret('SCENARIO_ACTOR_SECRET')\n .then((value) => value?.reveal())\n .catch(() => undefined)\n // Fabric operator admin: the RSA public key the control plane's token is\n // verified against. The Fabric deployer pushes FABRIC_AUTH_PUBLIC_KEY onto\n // every stage; locally it's simply absent, which disables /sign-in/fabric.\n // Asymmetric — the app verifies, it can never forge an operator login.\n const FABRIC_AUTH_PUBLIC_KEY = await variables.get('FABRIC_AUTH_PUBLIC_KEY')\n\n return betterAuth({\n secret: BETTER_AUTH_SECRET,\n database: { db: kysely, type: 'sqlite' },\n emailAndPassword: {\n enabled: true,\n // Without this, `requestPasswordReset` succeeds on the client and silently\n // sends nothing — the \"Forgot password?\" flow looks wired and dead-ends.\n // Better Auth builds `url` from its baseURL + the client's redirectTo, so\n // the app only supplies the message. Errors are logged, never swallowed:\n // a reset the user never receives must be visible in the logs.\n sendResetPassword: async ({ user, url }) => {\n await emailService.send({\n to: user.email,\n template: {\n name: 'reset-password',\n data: { email: user.email, resetUrl: url },\n },\n })\n },\n },\n // Stateless session: CLI splits out betterAuthStatelessSession so non-auth\n // units verify the signed cookie instead of bundling better-auth. pikku #737.\n session: { cookieCache: { enabled: true } },\n advanced: { database: { generateId: 'uuid' } },\n // Scenario actors: synthetic users (user.actor = true, see\n // db/sqlite/0002-user-actor.sql) signed in by pikkuScenario via\n // POST /api/auth/sign-in/actor { email, secret }. Never signs in real users.\n //\n // pikkuBan(): adds the banned/banExpires/banReason columns (see\n // db/sqlite/0003-admin.sql) and the session hook that refuses a banned\n // user a session. better-auth's own admin() is refused by the inspector:\n // it authorizes on a `user.role` column while pikku authorizes on scopes,\n // and everything else it offered — list, create, ban, remove, revoke\n // sessions, set password — is scoped RPCs in @pikku/addon-admin.\n //\n // pikkuFabric(): exposes /api/auth/sign-in/fabric — the Fabric control plane\n // mints a short-lived RS256 token and signs in as a synthetic `fabric: true`\n // admin operator (db/sqlite/0004-fabric.sql), so the console Users tab can\n // list/impersonate real users without the operator being one of them. It\n // verifies against FABRIC_AUTH_PUBLIC_KEY; a missing key disables the\n // endpoint.\n plugins: [\n pikkuActor({ secret: SCENARIO_ACTOR_SECRET }),\n pikkuBan(),\n pikkuFabric({ publicKey: FABRIC_AUTH_PUBLIC_KEY }),\n ],\n })\n }\n)",
18
18
  "cancelOrder": "export const cancelOrder = pikkuFunc({\n expose: true,\n description: 'Cancel a pending order and restore stock.',\n input: CancelOrderInput,\n // Authorization is declared, not written. `scopes` is what the role\n // entitles the caller to and is AND-ed; `permissions` is what is true of\n // this particular row and is OR-ed across keys. Both run before the body,\n // so the function below only ever sees a caller who is allowed to be there.\n //\n // The `support` role holds `orders:cancel` without owning the order, so it\n // passes on the scope; a customer passes on ownership. Neither case needs a\n // branch in the body.\n scopes: ['orders:cancel'],\n permissions: {\n owner: isOrderOwner,\n },\n // `node` describes this function as a step someone can drop into a visual\n // flow: what to call it, where it files, and whether it starts a flow\n // ('trigger'), continues one ('action') or ends it ('end'). Without it the\n // function still works everywhere else — it just does not appear as a node.\n node: {\n displayName: 'Cancel Order',\n category: 'Orders',\n type: 'action',\n },\n func: async ({ kysely, queueService }, { orderId }, { session }) => {\n const order = await kysely\n .selectFrom('order')\n .select(['orderId', 'userId', 'status'])\n .where('orderId', '=', orderId)\n .executeTakeFirst()\n\n if (!order) throw new Error('Order not found')\n if (!['pending', 'paid'].includes(order.status)) {\n throw new Error(`Cannot cancel order in status: ${order.status}`)\n }\n\n // Restore stock\n const items = await kysely\n .selectFrom('orderItem')\n .select(['itemId', 'quantity'])\n .where('orderId', '=', orderId)\n .execute()\n\n const now = new Date().toISOString()\n for (const item of items) {\n await kysely\n .updateTable('item')\n .set((eb) => ({\n stock: eb('stock', '+', item.quantity),\n updatedAt: now,\n }))\n .where('itemId', '=', item.itemId)\n .execute()\n }\n\n await kysely\n .updateTable('order')\n .set({ status: 'cancelled', updatedAt: now })\n .where('orderId', '=', orderId)\n .execute()\n\n await queueService.add('audit-event', {\n entityType: 'order',\n entityId: orderId,\n action: 'cancelled',\n actorId: session.userId,\n })\n },\n})",
19
19
  "channelLifecycle": "export const onConnect = pikkuChannelConnectionFunc(\n async ({ logger }, _, { channel }) => {\n logger.info({ event: 'ws_connected', channelId: channel.channelId })\n }\n)\n\nexport const onDisconnect = pikkuChannelDisconnectionFunc(\n async ({ logger }, _, { channel }) => {\n logger.info({ event: 'ws_disconnected', channelId: channel.channelId })\n }\n)",
20
20
  "channelMiddleware": "export const traceAgentStream = pikkuChannelMiddleware<any, AgentStreamEvent>(\n async ({ logger }, event, next) => {\n logger.debug({ event: 'agent_stream', type: event.type })\n await next(event)\n }\n)",
package/surface.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.12.125",
2
+ "version": "0.12.127",
3
3
  "entryPoints": [
4
4
  {
5
5
  "id": "app",
@@ -2132,17 +2132,20 @@
2132
2132
  "doc": "Hosts this secret may be sent to, e.g. `['api.notion.com']` or `'*.notion.com'`. Omitted means unrestricted unless `config.secrets.requireAllowedHosts` is set."
2133
2133
  },
2134
2134
  {
2135
- "line": "description?: string"
2135
+ "line": "description?: string",
2136
+ "doc": "What this secret is for, shown beside the field someone has to fill in."
2136
2137
  },
2137
2138
  {
2138
- "line": "displayName: string"
2139
+ "line": "displayName: string",
2140
+ "doc": "How the secret is labelled wherever a person is asked to supply it."
2139
2141
  },
2140
2142
  {
2141
2143
  "line": "docsUrl?: string",
2142
2144
  "doc": "Where a user goes to obtain this value, surfaced beside a missing one."
2143
2145
  },
2144
2146
  {
2145
- "line": "name: string"
2147
+ "line": "name: string",
2148
+ "doc": "The key code reads it by: `secrets.getSecret('NAME')`. SCREAMING_SNAKE_CASE."
2146
2149
  },
2147
2150
  {
2148
2151
  "line": "optional?: boolean",
@@ -2153,10 +2156,12 @@
2153
2156
  "doc": "Rotation cadence as a duration string, e.g. `'1d'`, `'30day'`, `'1w'`."
2154
2157
  },
2155
2158
  {
2156
- "line": "schema: T"
2159
+ "line": "schema: T",
2160
+ "doc": "The shape of the value, as a schema. This is what types `getSecret`'s result — pass the schema itself, not an instance of it."
2157
2161
  },
2158
2162
  {
2159
- "line": "secretId: string"
2163
+ "line": "secretId: string",
2164
+ "doc": "The id under the backing store, which is where the value actually lives."
2160
2165
  }
2161
2166
  ],
2162
2167
  "examples": [
@@ -2614,21 +2619,24 @@
2614
2619
  "docs": "What a gateway integration implements: parse an incoming event into a\nmessage, send one back, and open and close the connection.",
2615
2620
  "members": [
2616
2621
  {
2617
- "line": "close: () => Promise<void>"
2622
+ "line": "close: () => Promise<void>",
2623
+ "doc": "Called by GatewayService.stop(); release the connection init() opened."
2618
2624
  },
2619
2625
  {
2620
2626
  "line": "init: (onMessage: (data: unknown) => Promise<void>) => Promise<void>",
2621
2627
  "doc": "Called by GatewayService.start(); must call onMessage per incoming event."
2622
2628
  },
2623
2629
  {
2624
- "line": "name: string"
2630
+ "line": "name: string",
2631
+ "doc": "Identifies the gateway in wirings and logs, e.g. `'slack'`."
2625
2632
  },
2626
2633
  {
2627
2634
  "line": "parse: (data: unknown) => GatewayInboundMessage | null",
2628
2635
  "doc": "Return null to ignore the event, e.g. a delivery receipt."
2629
2636
  },
2630
2637
  {
2631
- "line": "send: (senderId: string, message: GatewayOutboundMessage) => Promise<void>"
2638
+ "line": "send: (senderId: string, message: GatewayOutboundMessage) => Promise<void>",
2639
+ "doc": "Deliver a reply back to the sender the message came from."
2632
2640
  },
2633
2641
  {
2634
2642
  "line": "verifyWebhook?: ((data: unknown, request?: PikkuHTTPRequest) => WebhookVerificationResult | Promise<WebhookVerificationResult>)",
@@ -2647,20 +2655,24 @@
2647
2655
  "docs": "One message arriving from a gateway, normalised: who sent it, in which\nconversation, and what they said.",
2648
2656
  "members": [
2649
2657
  {
2650
- "line": "attachments?: GatewayAttachment[]"
2658
+ "line": "attachments?: GatewayAttachment[]",
2659
+ "doc": "Files and media that came with the message."
2651
2660
  },
2652
2661
  {
2653
- "line": "metadata?: Record<string, unknown>"
2662
+ "line": "metadata?: Record<string, unknown>",
2663
+ "doc": "Anything else the adapter wants to carry through to the wiring."
2654
2664
  },
2655
2665
  {
2656
- "line": "raw: unknown"
2666
+ "line": "raw: unknown",
2667
+ "doc": "The provider's own event, untouched, for anything this shape drops."
2657
2668
  },
2658
2669
  {
2659
2670
  "line": "senderId: string",
2660
2671
  "doc": "Platform-specific: a phone number, a Slack user id, and so on."
2661
2672
  },
2662
2673
  {
2663
- "line": "text: string"
2674
+ "line": "text: string",
2675
+ "doc": "What they said, as plain text, with the provider's markup stripped."
2664
2676
  }
2665
2677
  ]
2666
2678
  },
@@ -2675,13 +2687,16 @@
2675
2687
  "docs": "One message to send back through a gateway — plain text, or the provider's\nown rich content.",
2676
2688
  "members": [
2677
2689
  {
2678
- "line": "attachments?: GatewayAttachment[]"
2690
+ "line": "attachments?: GatewayAttachment[]",
2691
+ "doc": "Files and media to send alongside."
2679
2692
  },
2680
2693
  {
2681
- "line": "richContent?: Record<string, unknown>"
2694
+ "line": "richContent?: Record<string, unknown>",
2695
+ "doc": "The provider's own rich payload, e.g. Slack blocks. Passed through as-is."
2682
2696
  },
2683
2697
  {
2684
- "line": "text?: string"
2698
+ "line": "text?: string",
2699
+ "doc": "The reply as plain text. Every provider can render this."
2685
2700
  }
2686
2701
  ]
2687
2702
  },
@@ -2778,7 +2793,8 @@
2778
2793
  "docs": "What a gateway's `verifyWebhook` returns — verified, with the response the\nprovider expects back, or not.",
2779
2794
  "members": [
2780
2795
  {
2781
- "line": "verified: boolean"
2796
+ "line": "verified: boolean",
2797
+ "doc": "True when the request really came from the provider. False when the signature or challenge did not check out."
2782
2798
  }
2783
2799
  ]
2784
2800
  },
@@ -3343,7 +3359,7 @@
3343
3359
  "docs": "Builds this project's Better Auth instance. The factory is handed the\nsingleton services, with typed `secrets` and `variables`, and is called\nlazily so config and secrets are resolved before auth is constructed.",
3344
3360
  "signature": "<I extends BetterAuthInstance>(factory: (services: AuthSingletonServices) => I | Promise<I>) => PikkuBetterAuthFactory<I>",
3345
3361
  "examples": [
3346
- "export const auth = pikkuBetterAuth(\n async ({ kysely, secrets, variables, emailService }) => {\n // `.reveal()` at the sink, not earlier: getSecret hands back a nominal\n // SecretValue that no concretely-typed parameter accepts, so every disclosure\n // is one greppable call. Better Auth wants the raw string, and this is where\n // it stops being a secret in the type system.\n const BETTER_AUTH_SECRET = (\n await secrets.getSecret('BETTER_AUTH_SECRET')\n ).reveal()\n // Genuinely optional: unset simply disables /api/auth/sign-in/actor (scenarios\n // off for this deployment) — the actor plugin refuses all sign-ins\n // without it.\n const SCENARIO_ACTOR_SECRET = await secrets\n .getSecret('SCENARIO_ACTOR_SECRET')\n .then((value) => value?.reveal())\n .catch(() => undefined)\n // Fabric operator admin: the RSA public key the control plane's token is\n // verified against. The Fabric deployer pushes FABRIC_AUTH_PUBLIC_KEY onto\n // every stage; locally it's simply absent, which disables /sign-in/fabric.\n // Asymmetric — the app verifies, it can never forge an operator login.\n const FABRIC_AUTH_PUBLIC_KEY = await variables.get('FABRIC_AUTH_PUBLIC_KEY')\n\n return betterAuth({\n secret: BETTER_AUTH_SECRET,\n database: { db: kysely, type: 'sqlite' },\n emailAndPassword: {\n enabled: true,\n // Without this, `requestPasswordReset` succeeds on the client and silently\n // sends nothing — the \"Forgot password?\" flow looks wired and dead-ends.\n // Better Auth builds `url` from its baseURL + the client's redirectTo, so\n // the app only supplies the message. Errors are logged, never swallowed:\n // a reset the user never receives must be visible in the logs.\n sendResetPassword: async ({ user, url }) => {\n await emailService.send({\n to: user.email,\n template: {\n name: 'reset-password',\n data: { email: user.email, resetUrl: url },\n },\n })\n },\n },\n // Stateless session: CLI splits out betterAuthStatelessSession so non-auth\n // units verify the signed cookie instead of bundling better-auth. pikku #737.\n session: { cookieCache: { enabled: true } },\n advanced: { database: { generateId: 'uuid' } },\n // Scenario actors: synthetic users (user.actor = true, see\n // db/sqlite/0002-user-actor.sql) signed in by pikkuScenario via\n // POST /api/auth/sign-in/actor { email, secret }. Never signs in real users.\n //\n // ban(): adds the banned/banExpires/banReason columns (see\n // db/sqlite/0003-admin.sql) and the session hook that refuses a banned\n // user a session. better-auth's own admin() is refused by the inspector:\n // it authorizes on a `user.role` column while pikku authorizes on scopes,\n // and everything else it offered — list, create, ban, remove, revoke\n // sessions, set password — is scoped RPCs in @pikku/addon-admin.\n //\n // fabric(): exposes /api/auth/sign-in/fabric — the Fabric control plane\n // mints a short-lived RS256 token and signs in as a synthetic `fabric: true`\n // admin operator (db/sqlite/0004-fabric.sql), so the console Users tab can\n // list/impersonate real users without the operator being one of them. It\n // verifies against FABRIC_AUTH_PUBLIC_KEY; a missing key disables the\n // endpoint.\n plugins: [\n actor({ secret: SCENARIO_ACTOR_SECRET }),\n ban(),\n fabric({ publicKey: FABRIC_AUTH_PUBLIC_KEY }),\n ],\n })\n }\n)"
3362
+ "export const auth = pikkuBetterAuth(\n async ({ kysely, secrets, variables, emailService }) => {\n // `.reveal()` at the sink, not earlier: getSecret hands back a nominal\n // SecretValue that no concretely-typed parameter accepts, so every disclosure\n // is one greppable call. Better Auth wants the raw string, and this is where\n // it stops being a secret in the type system.\n const BETTER_AUTH_SECRET = (\n await secrets.getSecret('BETTER_AUTH_SECRET')\n ).reveal()\n // Genuinely optional: unset simply disables /api/auth/sign-in/actor (scenarios\n // off for this deployment) — the actor plugin refuses all sign-ins\n // without it.\n const SCENARIO_ACTOR_SECRET = await secrets\n .getSecret('SCENARIO_ACTOR_SECRET')\n .then((value) => value?.reveal())\n .catch(() => undefined)\n // Fabric operator admin: the RSA public key the control plane's token is\n // verified against. The Fabric deployer pushes FABRIC_AUTH_PUBLIC_KEY onto\n // every stage; locally it's simply absent, which disables /sign-in/fabric.\n // Asymmetric — the app verifies, it can never forge an operator login.\n const FABRIC_AUTH_PUBLIC_KEY = await variables.get('FABRIC_AUTH_PUBLIC_KEY')\n\n return betterAuth({\n secret: BETTER_AUTH_SECRET,\n database: { db: kysely, type: 'sqlite' },\n emailAndPassword: {\n enabled: true,\n // Without this, `requestPasswordReset` succeeds on the client and silently\n // sends nothing — the \"Forgot password?\" flow looks wired and dead-ends.\n // Better Auth builds `url` from its baseURL + the client's redirectTo, so\n // the app only supplies the message. Errors are logged, never swallowed:\n // a reset the user never receives must be visible in the logs.\n sendResetPassword: async ({ user, url }) => {\n await emailService.send({\n to: user.email,\n template: {\n name: 'reset-password',\n data: { email: user.email, resetUrl: url },\n },\n })\n },\n },\n // Stateless session: CLI splits out betterAuthStatelessSession so non-auth\n // units verify the signed cookie instead of bundling better-auth. pikku #737.\n session: { cookieCache: { enabled: true } },\n advanced: { database: { generateId: 'uuid' } },\n // Scenario actors: synthetic users (user.actor = true, see\n // db/sqlite/0002-user-actor.sql) signed in by pikkuScenario via\n // POST /api/auth/sign-in/actor { email, secret }. Never signs in real users.\n //\n // pikkuBan(): adds the banned/banExpires/banReason columns (see\n // db/sqlite/0003-admin.sql) and the session hook that refuses a banned\n // user a session. better-auth's own admin() is refused by the inspector:\n // it authorizes on a `user.role` column while pikku authorizes on scopes,\n // and everything else it offered — list, create, ban, remove, revoke\n // sessions, set password — is scoped RPCs in @pikku/addon-admin.\n //\n // pikkuFabric(): exposes /api/auth/sign-in/fabric — the Fabric control plane\n // mints a short-lived RS256 token and signs in as a synthetic `fabric: true`\n // admin operator (db/sqlite/0004-fabric.sql), so the console Users tab can\n // list/impersonate real users without the operator being one of them. It\n // verifies against FABRIC_AUTH_PUBLIC_KEY; a missing key disables the\n // endpoint.\n plugins: [\n pikkuActor({ secret: SCENARIO_ACTOR_SECRET }),\n pikkuBan(),\n pikkuFabric({ publicKey: FABRIC_AUTH_PUBLIC_KEY }),\n ],\n })\n }\n)"
3347
3363
  ]
3348
3364
  },
3349
3365
  {
@@ -3598,19 +3614,24 @@
3598
3614
  "signature": "(config: Parameters<typeof corePikkuAgentJudge<Services>>[0]) => PikkuAgentScorer<Services>",
3599
3615
  "members": [
3600
3616
  {
3601
- "line": "description: string"
3617
+ "line": "description: string",
3618
+ "doc": "What this judge grades, in one line, for whoever reads the score later."
3602
3619
  },
3603
3620
  {
3604
- "line": "goal: string"
3621
+ "line": "goal: string",
3622
+ "doc": "The rubric: what a good answer looks like, phrased as the goal it should meet."
3605
3623
  },
3606
3624
  {
3607
- "line": "model: string"
3625
+ "line": "model: string",
3626
+ "doc": "The model that grades, e.g. `'claude-sonnet-4-5'`. Not the model under test."
3608
3627
  },
3609
3628
  {
3610
- "line": "name: string"
3629
+ "line": "name: string",
3630
+ "doc": "Identifies the judge in results and in the Console. Unique per project."
3611
3631
  },
3612
3632
  {
3613
- "line": "prompt?: ((input: ScorerInput) => string)"
3633
+ "line": "prompt?: ((input: ScorerInput) => string)",
3634
+ "doc": "Replaces the generated rubric prompt outright, for framing `goal` cannot express. The `{ score, reason }` response is still forced."
3614
3635
  },
3615
3636
  {
3616
3637
  "line": "requiresReference?: boolean",
@@ -3640,10 +3661,12 @@
3640
3661
  "signature": "(config: Parameters<typeof corePikkuAgentScorer<Services>>[0]) => PikkuAgentScorer<Services>",
3641
3662
  "members": [
3642
3663
  {
3643
- "line": "description: string"
3664
+ "line": "description: string",
3665
+ "doc": "What this scorer grades, in one line, for whoever reads the score later."
3644
3666
  },
3645
3667
  {
3646
- "line": "name: string"
3668
+ "line": "name: string",
3669
+ "doc": "Identifies the scorer in results and in the Console. Unique per project."
3647
3670
  },
3648
3671
  {
3649
3672
  "line": "requiresReference?: boolean",
@@ -3654,7 +3677,8 @@
3654
3677
  "doc": "0..1 fraction of live runs to grade. Defaults to all of them."
3655
3678
  },
3656
3679
  {
3657
- "line": "score: (input: ScorerInput, services: Services) => ScorerOutput | Promise<ScorerOutput>"
3680
+ "line": "score: (input: ScorerInput, services: Services) => ScorerOutput | Promise<ScorerOutput>",
3681
+ "doc": "The grade itself: read the finished run and return `{ score, reason }`. Runs in-process, so it may use your own services."
3658
3682
  }
3659
3683
  ],
3660
3684
  "examples": [
@@ -8578,17 +8602,20 @@
8578
8602
  "doc": "Hosts this secret may be sent to, e.g. `['api.notion.com']` or `'*.notion.com'`. Omitted means unrestricted unless `config.secrets.requireAllowedHosts` is set."
8579
8603
  },
8580
8604
  {
8581
- "line": "description?: string"
8605
+ "line": "description?: string",
8606
+ "doc": "What this secret is for, shown beside the field someone has to fill in."
8582
8607
  },
8583
8608
  {
8584
- "line": "displayName: string"
8609
+ "line": "displayName: string",
8610
+ "doc": "How the secret is labelled wherever a person is asked to supply it."
8585
8611
  },
8586
8612
  {
8587
8613
  "line": "docsUrl?: string",
8588
8614
  "doc": "Where a user goes to obtain this value, surfaced beside a missing one."
8589
8615
  },
8590
8616
  {
8591
- "line": "name: string"
8617
+ "line": "name: string",
8618
+ "doc": "The key code reads it by: `secrets.getSecret('NAME')`. SCREAMING_SNAKE_CASE."
8592
8619
  },
8593
8620
  {
8594
8621
  "line": "optional?: boolean",
@@ -8599,10 +8626,12 @@
8599
8626
  "doc": "Rotation cadence as a duration string, e.g. `'1d'`, `'30day'`, `'1w'`."
8600
8627
  },
8601
8628
  {
8602
- "line": "schema: T"
8629
+ "line": "schema: T",
8630
+ "doc": "The shape of the value, as a schema. This is what types `getSecret`'s result — pass the schema itself, not an instance of it."
8603
8631
  },
8604
8632
  {
8605
- "line": "secretId: string"
8633
+ "line": "secretId: string",
8634
+ "doc": "The id under the backing store, which is where the value actually lives."
8606
8635
  }
8607
8636
  ],
8608
8637
  "examples": [
@@ -8689,17 +8718,20 @@
8689
8718
  "doc": "Hosts this secret may be sent to, e.g. `['api.notion.com']` or `'*.notion.com'`. Omitted means unrestricted unless `config.secrets.requireAllowedHosts` is set."
8690
8719
  },
8691
8720
  {
8692
- "line": "description?: string"
8721
+ "line": "description?: string",
8722
+ "doc": "What this secret is for, shown beside the field someone has to fill in."
8693
8723
  },
8694
8724
  {
8695
- "line": "displayName: string"
8725
+ "line": "displayName: string",
8726
+ "doc": "How the secret is labelled wherever a person is asked to supply it."
8696
8727
  },
8697
8728
  {
8698
8729
  "line": "docsUrl?: string",
8699
8730
  "doc": "Where a user goes to obtain this value, surfaced beside a missing one."
8700
8731
  },
8701
8732
  {
8702
- "line": "name: string"
8733
+ "line": "name: string",
8734
+ "doc": "The key code reads it by: `secrets.getSecret('NAME')`. SCREAMING_SNAKE_CASE."
8703
8735
  },
8704
8736
  {
8705
8737
  "line": "optional?: boolean",
@@ -8710,10 +8742,12 @@
8710
8742
  "doc": "Rotation cadence as a duration string, e.g. `'1d'`, `'30day'`, `'1w'`."
8711
8743
  },
8712
8744
  {
8713
- "line": "schema: T"
8745
+ "line": "schema: T",
8746
+ "doc": "The shape of the value, as a schema. This is what types `getSecret`'s result — pass the schema itself, not an instance of it."
8714
8747
  },
8715
8748
  {
8716
- "line": "secretId: string"
8749
+ "line": "secretId: string",
8750
+ "doc": "The id under the backing store, which is where the value actually lives."
8717
8751
  }
8718
8752
  ],
8719
8753
  "examples": [
@@ -9805,19 +9839,24 @@
9805
9839
  "signature": "(config: Parameters<typeof corePikkuAgentJudge<Services>>[0]) => PikkuAgentScorer<Services>",
9806
9840
  "members": [
9807
9841
  {
9808
- "line": "description: string"
9842
+ "line": "description: string",
9843
+ "doc": "What this judge grades, in one line, for whoever reads the score later."
9809
9844
  },
9810
9845
  {
9811
- "line": "goal: string"
9846
+ "line": "goal: string",
9847
+ "doc": "The rubric: what a good answer looks like, phrased as the goal it should meet."
9812
9848
  },
9813
9849
  {
9814
- "line": "model: string"
9850
+ "line": "model: string",
9851
+ "doc": "The model that grades, e.g. `'claude-sonnet-4-5'`. Not the model under test."
9815
9852
  },
9816
9853
  {
9817
- "line": "name: string"
9854
+ "line": "name: string",
9855
+ "doc": "Identifies the judge in results and in the Console. Unique per project."
9818
9856
  },
9819
9857
  {
9820
- "line": "prompt?: ((input: ScorerInput) => string)"
9858
+ "line": "prompt?: ((input: ScorerInput) => string)",
9859
+ "doc": "Replaces the generated rubric prompt outright, for framing `goal` cannot express. The `{ score, reason }` response is still forced."
9821
9860
  },
9822
9861
  {
9823
9862
  "line": "requiresReference?: boolean",
@@ -9847,10 +9886,12 @@
9847
9886
  "signature": "(config: Parameters<typeof corePikkuAgentScorer<Services>>[0]) => PikkuAgentScorer<Services>",
9848
9887
  "members": [
9849
9888
  {
9850
- "line": "description: string"
9889
+ "line": "description: string",
9890
+ "doc": "What this scorer grades, in one line, for whoever reads the score later."
9851
9891
  },
9852
9892
  {
9853
- "line": "name: string"
9893
+ "line": "name: string",
9894
+ "doc": "Identifies the scorer in results and in the Console. Unique per project."
9854
9895
  },
9855
9896
  {
9856
9897
  "line": "requiresReference?: boolean",
@@ -9861,7 +9902,8 @@
9861
9902
  "doc": "0..1 fraction of live runs to grade. Defaults to all of them."
9862
9903
  },
9863
9904
  {
9864
- "line": "score: (input: ScorerInput, services: Services) => ScorerOutput | Promise<ScorerOutput>"
9905
+ "line": "score: (input: ScorerInput, services: Services) => ScorerOutput | Promise<ScorerOutput>",
9906
+ "doc": "The grade itself: read the finished run and return `{ score, reason }`. Runs in-process, so it may use your own services."
9865
9907
  }
9866
9908
  ],
9867
9909
  "examples": [
@@ -10053,19 +10095,24 @@
10053
10095
  "signature": "(config: Parameters<typeof corePikkuAgentJudge<Services>>[0]) => PikkuAgentScorer<Services>",
10054
10096
  "members": [
10055
10097
  {
10056
- "line": "description: string"
10098
+ "line": "description: string",
10099
+ "doc": "What this judge grades, in one line, for whoever reads the score later."
10057
10100
  },
10058
10101
  {
10059
- "line": "goal: string"
10102
+ "line": "goal: string",
10103
+ "doc": "The rubric: what a good answer looks like, phrased as the goal it should meet."
10060
10104
  },
10061
10105
  {
10062
- "line": "model: string"
10106
+ "line": "model: string",
10107
+ "doc": "The model that grades, e.g. `'claude-sonnet-4-5'`. Not the model under test."
10063
10108
  },
10064
10109
  {
10065
- "line": "name: string"
10110
+ "line": "name: string",
10111
+ "doc": "Identifies the judge in results and in the Console. Unique per project."
10066
10112
  },
10067
10113
  {
10068
- "line": "prompt?: ((input: ScorerInput) => string)"
10114
+ "line": "prompt?: ((input: ScorerInput) => string)",
10115
+ "doc": "Replaces the generated rubric prompt outright, for framing `goal` cannot express. The `{ score, reason }` response is still forced."
10069
10116
  },
10070
10117
  {
10071
10118
  "line": "requiresReference?: boolean",
@@ -10096,10 +10143,12 @@
10096
10143
  "signature": "(config: Parameters<typeof corePikkuAgentScorer<Services>>[0]) => PikkuAgentScorer<Services>",
10097
10144
  "members": [
10098
10145
  {
10099
- "line": "description: string"
10146
+ "line": "description: string",
10147
+ "doc": "What this scorer grades, in one line, for whoever reads the score later."
10100
10148
  },
10101
10149
  {
10102
- "line": "name: string"
10150
+ "line": "name: string",
10151
+ "doc": "Identifies the scorer in results and in the Console. Unique per project."
10103
10152
  },
10104
10153
  {
10105
10154
  "line": "requiresReference?: boolean",
@@ -10110,7 +10159,8 @@
10110
10159
  "doc": "0..1 fraction of live runs to grade. Defaults to all of them."
10111
10160
  },
10112
10161
  {
10113
- "line": "score: (input: ScorerInput, services: Services) => ScorerOutput | Promise<ScorerOutput>"
10162
+ "line": "score: (input: ScorerInput, services: Services) => ScorerOutput | Promise<ScorerOutput>",
10163
+ "doc": "The grade itself: read the finished run and return `{ score, reason }`. Runs in-process, so it may use your own services."
10114
10164
  }
10115
10165
  ],
10116
10166
  "examples": [
@@ -1 +0,0 @@
1
- import"./chunk-KEIR6QF5-BICK3FdT.js";import{M as e}from"./mermaid-parser.core-b4yKyO56.js";export{e as createArchitectureServices};
@@ -1 +0,0 @@
1
- import{at as e,ot as t}from"./chunk-I66GZJ75-Cb2nDoa3.js";var n=(n,r)=>t.lang.round(e.parse(n)[r]);export{n as t};
@@ -1 +0,0 @@
1
- import{p as e}from"./index-DMnbsgzs.js";import{n as t}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import"./src-DUC7tLWb.js";var n=t((t,n)=>{let r;return n===`sandbox`&&(r=e(`#i`+t)),e(n===`sandbox`?r.nodes()[0].contentDocument.body:`body`).select(`[id="${t}"]`)},`getDiagramElement`);export{n as t};
@@ -1 +0,0 @@
1
- import{n as e}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import"./src-DUC7tLWb.js";import"./chunk-I66GZJ75-Cb2nDoa3.js";import"./chunk-NSK5VX7P-BO8vlGrO.js";import"./chunk-4I5QYGJK-Bep4akjR.js";import"./chunk-WRU74C26-DdS0mzXO.js";import"./chunk-7BUUIJ7U-Bb538aSH.js";import"./chunk-UBXNYLIW-BndMXU5r.js";import"./chunk-2GRJ4B5K-CwODIPP4.js";import"./chunk-XXDRQBXY-EP2C9tTO.js";import"./chunk-KBJHAD2P-DeP2Lqwp.js";import"./chunk-W5SLKNZC--VrZN8EC.js";import"./chunk-QR6OTTB3-sX5V0Lok.js";import"./chunk-7Z6QIM7H-D12vS1jX.js";import{i as t,n,r,t as i}from"./chunk-GF5L2VYU-kOLwTzIA.js";import"./mermaid.core-Cwfec1gr.js";var a={parser:n,get db(){return new i},renderer:r,styles:t,init:e(e=>{e.class||={},e.class.arrowMarkerAbsolute=e.arrowMarkerAbsolute},`init`)};export{a as diagram};
@@ -1 +0,0 @@
1
- import{n as e}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import"./src-DUC7tLWb.js";import"./chunk-I66GZJ75-Cb2nDoa3.js";import"./chunk-NSK5VX7P-BO8vlGrO.js";import"./chunk-4I5QYGJK-Bep4akjR.js";import"./chunk-WRU74C26-DdS0mzXO.js";import"./chunk-7BUUIJ7U-Bb538aSH.js";import"./chunk-UBXNYLIW-BndMXU5r.js";import"./chunk-2GRJ4B5K-CwODIPP4.js";import"./chunk-XXDRQBXY-EP2C9tTO.js";import"./chunk-KBJHAD2P-DeP2Lqwp.js";import"./chunk-W5SLKNZC--VrZN8EC.js";import"./chunk-QR6OTTB3-sX5V0Lok.js";import"./chunk-7Z6QIM7H-D12vS1jX.js";import{i as t,n,r,t as i}from"./chunk-GF5L2VYU-kOLwTzIA.js";import"./mermaid.core-Cwfec1gr.js";var a={parser:n,get db(){return new i},renderer:r,styles:t,init:e(e=>{e.class||={},e.class.arrowMarkerAbsolute=e.arrowMarkerAbsolute},`init`)};export{a as diagram};
@@ -1 +0,0 @@
1
- import"./chunk-KEIR6QF5-BICK3FdT.js";import{O as e}from"./mermaid-parser.core-b4yKyO56.js";export{e as createEventModelingServices};
@@ -1 +0,0 @@
1
- import"./src-DUC7tLWb.js";import"./chunk-I66GZJ75-Cb2nDoa3.js";import"./chunk-NSK5VX7P-BO8vlGrO.js";import"./chunk-4I5QYGJK-Bep4akjR.js";import"./chunk-WRU74C26-DdS0mzXO.js";import"./chunk-7BUUIJ7U-Bb538aSH.js";import"./chunk-UBXNYLIW-BndMXU5r.js";import"./chunk-2GRJ4B5K-CwODIPP4.js";import"./chunk-XXDRQBXY-EP2C9tTO.js";import"./chunk-KBJHAD2P-DeP2Lqwp.js";import"./chunk-W5SLKNZC--VrZN8EC.js";import"./chunk-QR6OTTB3-sX5V0Lok.js";import"./chunk-7Z6QIM7H-D12vS1jX.js";import{n as e}from"./chunk-JQJVKLGR-B3a_ctfQ.js";import"./mermaid.core-Cwfec1gr.js";export{e as diagram};
@@ -1 +0,0 @@
1
- import"./chunk-KEIR6QF5-BICK3FdT.js";import{m as e}from"./mermaid-parser.core-b4yKyO56.js";export{e as createRailroadAbnfServices};
@@ -1 +0,0 @@
1
- import"./chunk-KEIR6QF5-BICK3FdT.js";import{f as e}from"./mermaid-parser.core-b4yKyO56.js";export{e as createRailroadEbnfServices};
@@ -1 +0,0 @@
1
- import"./chunk-KEIR6QF5-BICK3FdT.js";import{u as e}from"./mermaid-parser.core-b4yKyO56.js";export{e as createRailroadPegServices};
@@ -1 +0,0 @@
1
- import{n as e}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import"./src-DUC7tLWb.js";import"./chunk-I66GZJ75-Cb2nDoa3.js";import"./chunk-NSK5VX7P-BO8vlGrO.js";import"./chunk-4I5QYGJK-Bep4akjR.js";import"./chunk-WRU74C26-DdS0mzXO.js";import"./chunk-7BUUIJ7U-Bb538aSH.js";import"./chunk-UBXNYLIW-BndMXU5r.js";import"./chunk-2GRJ4B5K-CwODIPP4.js";import"./chunk-XXDRQBXY-EP2C9tTO.js";import"./chunk-KBJHAD2P-DeP2Lqwp.js";import"./chunk-W5SLKNZC--VrZN8EC.js";import"./chunk-QR6OTTB3-sX5V0Lok.js";import"./chunk-7Z6QIM7H-D12vS1jX.js";import{i as t,n,r,t as i}from"./chunk-5RXB4S5H-CGyCRU9L.js";import"./mermaid.core-Cwfec1gr.js";var a={parser:n,get db(){return new i(2)},renderer:r,styles:t,init:e(e=>{e.state||={},e.state.arrowMarkerAbsolute=e.arrowMarkerAbsolute},`init`)};export{a as diagram};
@@ -1,8 +0,0 @@
1
- import{n as e}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import"./src-DUC7tLWb.js";import"./chunk-I66GZJ75-Cb2nDoa3.js";import"./chunk-NSK5VX7P-BO8vlGrO.js";import"./chunk-4I5QYGJK-Bep4akjR.js";import"./chunk-WRU74C26-DdS0mzXO.js";import"./chunk-7BUUIJ7U-Bb538aSH.js";import"./chunk-UBXNYLIW-BndMXU5r.js";import"./chunk-2GRJ4B5K-CwODIPP4.js";import"./chunk-XXDRQBXY-EP2C9tTO.js";import"./chunk-KBJHAD2P-DeP2Lqwp.js";import"./chunk-W5SLKNZC--VrZN8EC.js";import"./chunk-QR6OTTB3-sX5V0Lok.js";import"./chunk-7Z6QIM7H-D12vS1jX.js";import{r as t,t as n}from"./chunk-JQJVKLGR-B3a_ctfQ.js";import"./mermaid.core-Cwfec1gr.js";var r=n({defaultLayout:`swimlane`,styles:e(e=>`${t(e)}
2
- .swimlane.cluster rect {
3
- stroke: ${e.clusterBorder} !important;
4
- }
5
- [data-look="neo"].cluster rect {
6
- filter: none;
7
- }
8
- `,`getStyles`)});export{r as diagram};