@pikku/cli 0.12.126 → 0.12.128

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 (270) hide show
  1. package/CHANGELOG.md +157 -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 +31 -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 +124 -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 +140 -1
  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 +120 -8
  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 +6 -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 +23 -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/FabricSecretsDeleteInput.schema.json +1 -0
  178. package/dist/.pikku/schemas/schemas/FabricSecretsDeleteOutput.schema.json +1 -0
  179. package/dist/.pikku/schemas/schemas/PikkuDistInput.schema.json +1 -0
  180. package/dist/.pikku/schemas/schemas/PikkuNewAddonInput.schema.json +1 -1
  181. package/dist/.pikku/scopes/index.d.ts +1 -1
  182. package/dist/.pikku/scopes/index.js +1 -1
  183. package/dist/.pikku/scopes/pikku-personas.gen.js +1 -1
  184. package/dist/.pikku/scopes/pikku-roles.gen.d.ts +1 -1
  185. package/dist/.pikku/scopes/pikku-scope-types.gen.d.ts +1 -1
  186. package/dist/.pikku/scopes/pikku-scope-types.gen.js +1 -1
  187. package/dist/.pikku/scopes/pikku-scopes.gen.d.ts +1 -1
  188. package/dist/.pikku/secrets/index.d.ts +1 -1
  189. package/dist/.pikku/secrets/index.js +1 -1
  190. package/dist/.pikku/secrets/pikku-secret-types.gen.d.ts +1 -1
  191. package/dist/.pikku/secrets/pikku-secret-types.gen.js +1 -1
  192. package/dist/.pikku/secrets/pikku-secrets.gen.d.ts +1 -1
  193. package/dist/.pikku/secrets/pikku-secrets.gen.js +1 -1
  194. package/dist/.pikku/services/pikku-meta-service.gen.d.ts +1 -1
  195. package/dist/.pikku/services/pikku-meta-service.gen.js +1 -1
  196. package/dist/.pikku/setup/index.d.ts +1 -1
  197. package/dist/.pikku/setup/index.js +1 -1
  198. package/dist/.pikku/setup/pikku-setup-types.gen.d.ts +1 -1
  199. package/dist/.pikku/setup/pikku-setup-types.gen.js +1 -1
  200. package/dist/.pikku/trigger/index.d.ts +1 -1
  201. package/dist/.pikku/trigger/index.js +1 -1
  202. package/dist/.pikku/trigger/pikku-trigger-types.gen.d.ts +1 -1
  203. package/dist/.pikku/trigger/pikku-trigger-types.gen.js +1 -1
  204. package/dist/.pikku/variables/index.d.ts +1 -1
  205. package/dist/.pikku/variables/index.js +1 -1
  206. package/dist/.pikku/variables/pikku-variable-types.gen.d.ts +1 -1
  207. package/dist/.pikku/variables/pikku-variable-types.gen.js +1 -1
  208. package/dist/.pikku/variables/pikku-variables.gen.d.ts +1 -1
  209. package/dist/.pikku/variables/pikku-variables.gen.js +1 -1
  210. package/dist/.pikku/workflow/index.d.ts +1 -1
  211. package/dist/.pikku/workflow/index.js +1 -1
  212. package/dist/.pikku/workflow/pikku-workflow-types.gen.d.ts +1 -1
  213. package/dist/.pikku/workflow/pikku-workflow-types.gen.js +1 -1
  214. package/dist/.pikku/workflow/pikku-workflow-wirings-meta.gen.js +1 -1
  215. package/dist/.pikku/workflow/pikku-workflow-wirings.gen.js +1 -1
  216. package/dist/bin/pikku-bin.mjs +2 -2
  217. package/dist/src/cli.wiring.js +16 -1
  218. package/dist/src/fabric/fabric-commands.d.ts +163 -0
  219. package/dist/src/fabric/fabric-commands.js +78 -0
  220. package/dist/src/fabric/functions/findings-clear.function.d.ts +12 -0
  221. package/dist/src/fabric/functions/findings-clear.function.js +17 -0
  222. package/dist/src/fabric/functions/findings-flush.function.d.ts +33 -0
  223. package/dist/src/fabric/functions/findings-flush.function.js +36 -0
  224. package/dist/src/fabric/functions/findings-list.function.d.ts +55 -0
  225. package/dist/src/fabric/functions/findings-list.function.js +52 -0
  226. package/dist/src/fabric/functions/report.function.d.ts +121 -0
  227. package/dist/src/fabric/functions/report.function.js +84 -0
  228. package/dist/src/fabric/functions/secrets-delete.function.d.ts +36 -0
  229. package/dist/src/fabric/functions/secrets-delete.function.js +51 -0
  230. package/dist/src/fabric/lib/finding-spool.d.ts +56 -0
  231. package/dist/src/fabric/lib/finding-spool.js +105 -0
  232. package/dist/src/fabric/lib/finding.d.ts +92 -0
  233. package/dist/src/fabric/lib/finding.js +156 -0
  234. package/dist/src/fabric/lib/report-environment.d.ts +53 -0
  235. package/dist/src/fabric/lib/report-environment.js +119 -0
  236. package/dist/src/functions/commands/dev.js +2 -1
  237. package/dist/src/functions/commands/dist.d.ts +28 -0
  238. package/dist/src/functions/commands/dist.js +58 -0
  239. package/dist/src/functions/commands/environment.d.ts +5 -0
  240. package/dist/src/functions/commands/new-addon.d.ts +30 -0
  241. package/dist/src/functions/commands/new-addon.js +81 -3
  242. package/dist/src/functions/commands/persona-sync.d.ts +5 -4
  243. package/dist/src/functions/commands/persona-sync.js +6 -5
  244. package/dist/src/functions/commands/persona.js +7 -2
  245. package/dist/src/functions/commands/scenario.js +1 -0
  246. package/dist/src/functions/validate/auth-plugin-checks.d.ts +1 -1
  247. package/dist/src/functions/validate/auth-plugin-checks.js +9 -5
  248. package/dist/src/functions/validate/persona-checks.js +9 -6
  249. package/dist/src/functions/wirings/user-admin/pikku-command-user-admin-functions.js +10 -5
  250. package/dist/src/functions/wirings/user-admin/serialize-user-admin-functions.d.ts +1 -1
  251. package/dist/src/functions/wirings/user-admin/serialize-user-admin-functions.js +3 -3
  252. package/dist/src/services.js +9 -0
  253. package/dist/src/utils/persona-credentials.d.ts +0 -2
  254. package/dist/src/utils/persona-credentials.js +1 -8
  255. package/dist/tsconfig.tsbuildinfo +1 -1
  256. package/package.json +8 -8
  257. package/snippets.json +1 -1
  258. package/surface.json +1292 -4907
  259. package/console-app/assets/architecture-TIHT7OUA-DmG0bXDT.js +0 -1
  260. package/console-app/assets/channel-BgCT5gon.js +0 -1
  261. package/console-app/assets/chunk-XXDRQBXY-EP2C9tTO.js +0 -1
  262. package/console-app/assets/classDiagram-JCYQIIEL-D9wGqB4J.js +0 -1
  263. package/console-app/assets/classDiagram-v2-OCEON4UE-D9wGqB4J.js +0 -1
  264. package/console-app/assets/eventmodeling-45OFAUF4-NKFCZ8Fj.js +0 -1
  265. package/console-app/assets/flowDiagram-UKHOOZJN-BpdPkmum.js +0 -1
  266. package/console-app/assets/railroad-abnf-AHOZXSZD-B3CYVW4p.js +0 -1
  267. package/console-app/assets/railroad-ebnf-EBAXGLYW-DrZ2yF62.js +0 -1
  268. package/console-app/assets/railroad-peg-LSFZ7HO6-CWAmMyxd.js +0 -1
  269. package/console-app/assets/stateDiagram-v2-UEYNNEHI-Celbgz4u.js +0 -1
  270. package/console-app/assets/swimlanesDiagram-ULZ7WXOC-zxpNaB4U.js +0 -8
@@ -1,5 +1,5 @@
1
1
  /**
2
- * This file was generated by @pikku/cli@0.12.126
2
+ * This file was generated by @pikku/cli@0.12.128
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.126
2
+ * This file was generated by @pikku/cli@0.12.128
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.126
2
+ * This file was generated by @pikku/cli@0.12.128
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.126
2
+ * This file was generated by @pikku/cli@0.12.128
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.126
2
+ * This file was generated by @pikku/cli@0.12.128
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.126
2
+ * This file was generated by @pikku/cli@0.12.128
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.126
2
+ * This file was generated by @pikku/cli@0.12.128
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.126
2
+ * This file was generated by @pikku/cli@0.12.128
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.126
2
+ * This file was generated by @pikku/cli@0.12.128
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.126
2
+ * This file was generated by @pikku/cli@0.12.128
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.126
2
+ * This file was generated by @pikku/cli@0.12.128
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.126
2
+ * This file was generated by @pikku/cli@0.12.128
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.126
2
+ * This file was generated by @pikku/cli@0.12.128
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.126
2
+ * This file was generated by @pikku/cli@0.12.128
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.126
2
+ * This file was generated by @pikku/cli@0.12.128
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.126
2
+ * This file was generated by @pikku/cli@0.12.128
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.126
2
+ * This file was generated by @pikku/cli@0.12.128
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.126') {
15
- process.stderr.write(`\n Update available 0.12.126 → ${latest}\n brew upgrade pikku or npm install -g @pikku/cli\n\n`)
14
+ if (latest !== '0.12.128') {
15
+ process.stderr.write(`\n Update available 0.12.128 → ${latest}\n brew upgrade pikku or npm install -g @pikku/cli\n\n`)
16
16
  }
17
17
  } catch {}
18
18
  }
@@ -12,6 +12,7 @@ import { pikkuCLICommand, wireCLI } from '../.pikku/cli/pikku-cli-types.gen.js';
12
12
  import { fabricCommands } from './fabric/fabric-commands.js';
13
13
  import { all } from './functions/commands/all.js';
14
14
  import { bootstrap } from './functions/commands/bootstrap.js';
15
+ import { pikkuDist } from './functions/commands/dist.js';
15
16
  import { watch } from './functions/commands/watch.js';
16
17
  import { login, logout, whoami } from './functions/commands/login.js';
17
18
  import { dev } from './functions/commands/dev.js';
@@ -231,6 +232,16 @@ wireCLI({
231
232
  func: bootstrap,
232
233
  description: 'Generate only type files (setup phase only)',
233
234
  }),
235
+ dist: pikkuCLICommand({
236
+ func: pikkuDist,
237
+ description: "Copy the generated files tsc cannot emit — the .gen.json meta, and hand-authored .d.ts — into the build output. Run it after tsc, as a package's build script",
238
+ options: {
239
+ distDir: {
240
+ description: "Where to copy to. Defaults to the tsconfig's compilerOptions.outDir",
241
+ type: 'string',
242
+ },
243
+ },
244
+ }),
234
245
  audit: pikkuCLICommand({
235
246
  func: pikkuAudit,
236
247
  description: 'Audit dependencies for security advisories (always) and available updates (--outdated); writes .pikku/audit.json',
@@ -635,7 +646,7 @@ wireCLI({
635
646
  }),
636
647
  sync: pikkuCLICommand({
637
648
  func: personaSync,
638
- description: "Report which personas an environment will provision, with which roles, and why any of them were skipped. The provisioning itself happens in the deployment — call provisionPersonas from '@pikku/better-auth' in your server lifecycle — because the CLI has no connection to a deployed environment's database.",
649
+ description: "Report which personas an environment will provision, with which roles, and why any of them were skipped. The provisioning itself happens in the deployment — pass the generated personas to pikkuFabric from '@pikku/better-auth' — because the CLI has no connection to a deployed environment's database.",
639
650
  parameters: '<environment>',
640
651
  }),
641
652
  list: pikkuCLICommand({
@@ -829,6 +840,10 @@ wireCLI({
829
840
  description: 'Convert snake_case property names to camelCase in generated Zod schemas',
830
841
  default: false,
831
842
  },
843
+ build: {
844
+ description: 'Install and build the generated addon (an unbuilt addon exports a dist/ that does not exist yet, so every ref() into it is dead at runtime)',
845
+ default: true,
846
+ },
832
847
  },
833
848
  }),
834
849
  },
@@ -611,6 +611,31 @@ export declare const fabricCommands: {
611
611
  updatedAt: string;
612
612
  }[];
613
613
  }, "rpc" | "session", import("../../.pikku/function/pikku-function-types.gen.js").WiredServices>, undefined, undefined>, import("../../.pikku/middleware/pikku-middleware-types.gen.js").PikkuMiddleware, (services: import("../../types/application-types.js").SingletonServices, data: any, session?: import("../../types/application-types.js").UserSession | undefined) => void | Promise<void>, string>;
614
+ delete: import("@pikku/core/cli").CoreCLICommandConfig<import("../../.pikku/function/pikku-function-types.gen.js").PikkuFunctionConfig<{
615
+ name: string;
616
+ branch?: string | undefined;
617
+ force?: boolean | undefined;
618
+ }, {
619
+ name: string;
620
+ runId: string | null;
621
+ deploymentId: string | null;
622
+ }, "rpc" | "session", import("../../.pikku/function/pikku-function-types.gen.js").PikkuFunctionSessionless<{
623
+ name: string;
624
+ branch?: string | undefined;
625
+ force?: boolean | undefined;
626
+ }, {
627
+ name: string;
628
+ runId: string | null;
629
+ deploymentId: string | null;
630
+ }, "rpc" | "session", import("../../.pikku/function/pikku-function-types.gen.js").WiredServices, unknown> | import("../../.pikku/function/pikku-function-types.gen.js").PikkuFunction<{
631
+ name: string;
632
+ branch?: string | undefined;
633
+ force?: boolean | undefined;
634
+ }, {
635
+ name: string;
636
+ runId: string | null;
637
+ deploymentId: string | null;
638
+ }, "rpc" | "session", import("../../.pikku/function/pikku-function-types.gen.js").WiredServices>, undefined, undefined>, import("../../.pikku/middleware/pikku-middleware-types.gen.js").PikkuMiddleware, (services: import("../../types/application-types.js").SingletonServices, data: any, session?: import("../../types/application-types.js").UserSession | undefined) => void | Promise<void>, string>;
614
639
  rotate: import("@pikku/core/cli").CoreCLICommandConfig<import("../../.pikku/function/pikku-function-types.gen.js").PikkuFunctionConfig<{
615
640
  branch?: string | undefined;
616
641
  force?: boolean | undefined;
@@ -709,6 +734,144 @@ export declare const fabricCommands: {
709
734
  }, {
710
735
  count: number;
711
736
  }, "rpc" | "session", import("../../.pikku/function/pikku-function-types.gen.js").WiredServices>, undefined, undefined>, import("../../.pikku/middleware/pikku-middleware-types.gen.js").PikkuMiddleware, (services: import("../../types/application-types.js").SingletonServices, data: any, session?: import("../../types/application-types.js").UserSession | undefined) => void | Promise<void>, string>;
737
+ report: import("@pikku/core/cli").CoreCLICommandConfig<import("../../.pikku/function/pikku-function-types.gen.js").PikkuFunctionConfig<{
738
+ title?: string | undefined;
739
+ kind?: "product" | "harness" | undefined;
740
+ model?: string | undefined;
741
+ expected?: string | undefined;
742
+ actual?: string | undefined;
743
+ skill?: string | undefined;
744
+ passage?: string | undefined;
745
+ command?: string | undefined;
746
+ error?: string | undefined;
747
+ repro?: string | undefined;
748
+ workaround?: string | undefined;
749
+ proposal?: string | undefined;
750
+ tried?: string | undefined;
751
+ unresolved?: boolean | undefined;
752
+ area?: string | undefined;
753
+ surface?: "local" | "deployed" | "both" | undefined;
754
+ cost?: string | undefined;
755
+ run?: string | undefined;
756
+ deployTarget?: string | undefined;
757
+ stdin?: boolean | undefined;
758
+ }, {
759
+ sent: boolean;
760
+ spooled: boolean;
761
+ queued: number;
762
+ reason?: string | undefined;
763
+ }, "rpc" | "session", import("../../.pikku/function/pikku-function-types.gen.js").PikkuFunctionSessionless<{
764
+ title?: string | undefined;
765
+ kind?: "product" | "harness" | undefined;
766
+ model?: string | undefined;
767
+ expected?: string | undefined;
768
+ actual?: string | undefined;
769
+ skill?: string | undefined;
770
+ passage?: string | undefined;
771
+ command?: string | undefined;
772
+ error?: string | undefined;
773
+ repro?: string | undefined;
774
+ workaround?: string | undefined;
775
+ proposal?: string | undefined;
776
+ tried?: string | undefined;
777
+ unresolved?: boolean | undefined;
778
+ area?: string | undefined;
779
+ surface?: "local" | "deployed" | "both" | undefined;
780
+ cost?: string | undefined;
781
+ run?: string | undefined;
782
+ deployTarget?: string | undefined;
783
+ stdin?: boolean | undefined;
784
+ }, {
785
+ sent: boolean;
786
+ spooled: boolean;
787
+ queued: number;
788
+ reason?: string | undefined;
789
+ }, "rpc" | "session", import("../../.pikku/function/pikku-function-types.gen.js").WiredServices, unknown> | import("../../.pikku/function/pikku-function-types.gen.js").PikkuFunction<{
790
+ title?: string | undefined;
791
+ kind?: "product" | "harness" | undefined;
792
+ model?: string | undefined;
793
+ expected?: string | undefined;
794
+ actual?: string | undefined;
795
+ skill?: string | undefined;
796
+ passage?: string | undefined;
797
+ command?: string | undefined;
798
+ error?: string | undefined;
799
+ repro?: string | undefined;
800
+ workaround?: string | undefined;
801
+ proposal?: string | undefined;
802
+ tried?: string | undefined;
803
+ unresolved?: boolean | undefined;
804
+ area?: string | undefined;
805
+ surface?: "local" | "deployed" | "both" | undefined;
806
+ cost?: string | undefined;
807
+ run?: string | undefined;
808
+ deployTarget?: string | undefined;
809
+ stdin?: boolean | undefined;
810
+ }, {
811
+ sent: boolean;
812
+ spooled: boolean;
813
+ queued: number;
814
+ reason?: string | undefined;
815
+ }, "rpc" | "session", import("../../.pikku/function/pikku-function-types.gen.js").WiredServices>, undefined, undefined>, import("../../.pikku/middleware/pikku-middleware-types.gen.js").PikkuMiddleware, (services: import("../../types/application-types.js").SingletonServices, data: any, session?: import("../../types/application-types.js").UserSession | undefined) => void | Promise<void>, string>;
816
+ findings: {
817
+ description: string;
818
+ subcommands: {
819
+ list: import("@pikku/core/cli").CoreCLICommandConfig<import("../../.pikku/function/pikku-function-types.gen.js").PikkuFunctionConfig<Record<string, never>, {
820
+ findings: {
821
+ title: string;
822
+ kind: string;
823
+ reason: string;
824
+ reportedAt: string;
825
+ projectId: string | null;
826
+ file: string;
827
+ }[];
828
+ }, "rpc" | "session", import("../../.pikku/function/pikku-function-types.gen.js").PikkuFunctionSessionless<Record<string, never>, {
829
+ findings: {
830
+ title: string;
831
+ kind: string;
832
+ reason: string;
833
+ reportedAt: string;
834
+ projectId: string | null;
835
+ file: string;
836
+ }[];
837
+ }, "rpc" | "session", import("../../.pikku/function/pikku-function-types.gen.js").WiredServices, unknown> | import("../../.pikku/function/pikku-function-types.gen.js").PikkuFunction<Record<string, never>, {
838
+ findings: {
839
+ title: string;
840
+ kind: string;
841
+ reason: string;
842
+ reportedAt: string;
843
+ projectId: string | null;
844
+ file: string;
845
+ }[];
846
+ }, "rpc" | "session", import("../../.pikku/function/pikku-function-types.gen.js").WiredServices>, undefined, undefined>, import("../../.pikku/middleware/pikku-middleware-types.gen.js").PikkuMiddleware, (services: import("../../types/application-types.js").SingletonServices, data: any, session?: import("../../types/application-types.js").UserSession | undefined) => void | Promise<void>, string>;
847
+ flush: import("@pikku/core/cli").CoreCLICommandConfig<import("../../.pikku/function/pikku-function-types.gen.js").PikkuFunctionConfig<{
848
+ apiUrl?: string | undefined;
849
+ }, {
850
+ sent: number;
851
+ remaining: number;
852
+ reason?: string | undefined;
853
+ }, "rpc" | "session", import("../../.pikku/function/pikku-function-types.gen.js").PikkuFunctionSessionless<{
854
+ apiUrl?: string | undefined;
855
+ }, {
856
+ sent: number;
857
+ remaining: number;
858
+ reason?: string | undefined;
859
+ }, "rpc" | "session", import("../../.pikku/function/pikku-function-types.gen.js").WiredServices, unknown> | import("../../.pikku/function/pikku-function-types.gen.js").PikkuFunction<{
860
+ apiUrl?: string | undefined;
861
+ }, {
862
+ sent: number;
863
+ remaining: number;
864
+ reason?: string | undefined;
865
+ }, "rpc" | "session", import("../../.pikku/function/pikku-function-types.gen.js").WiredServices>, undefined, undefined>, import("../../.pikku/middleware/pikku-middleware-types.gen.js").PikkuMiddleware, (services: import("../../types/application-types.js").SingletonServices, data: any, session?: import("../../types/application-types.js").UserSession | undefined) => void | Promise<void>, string>;
866
+ clear: import("@pikku/core/cli").CoreCLICommandConfig<import("../../.pikku/function/pikku-function-types.gen.js").PikkuFunctionConfig<Record<string, never>, {
867
+ dropped: number;
868
+ }, "rpc" | "session", import("../../.pikku/function/pikku-function-types.gen.js").PikkuFunctionSessionless<Record<string, never>, {
869
+ dropped: number;
870
+ }, "rpc" | "session", import("../../.pikku/function/pikku-function-types.gen.js").WiredServices, unknown> | import("../../.pikku/function/pikku-function-types.gen.js").PikkuFunction<Record<string, never>, {
871
+ dropped: number;
872
+ }, "rpc" | "session", import("../../.pikku/function/pikku-function-types.gen.js").WiredServices>, undefined, undefined>, import("../../.pikku/middleware/pikku-middleware-types.gen.js").PikkuMiddleware, (services: import("../../types/application-types.js").SingletonServices, data: any, session?: import("../../types/application-types.js").UserSession | undefined) => void | Promise<void>, string>;
873
+ };
874
+ };
712
875
  metrics: import("@pikku/core/cli").CoreCLICommandConfig<import("../../.pikku/function/pikku-function-types.gen.js").PikkuFunctionConfig<{
713
876
  branch: string;
714
877
  hours?: number | undefined;
@@ -32,6 +32,7 @@ import { FabricDbSchema, renderDbSchema, } from './functions/db-schema.function.
32
32
  import { FabricRollback } from './functions/rollback.function.js';
33
33
  import { FabricSecretsSet } from './functions/secrets-set.function.js';
34
34
  import { FabricSecretsList } from './functions/secrets-list.function.js';
35
+ import { FabricSecretsDelete } from './functions/secrets-delete.function.js';
35
36
  import { FabricSecretsRotate } from './functions/secrets-rotate.function.js';
36
37
  import { FabricVariablesSet } from './functions/variables-set.function.js';
37
38
  import { FabricVariablesGet } from './functions/variables-get.function.js';
@@ -46,6 +47,10 @@ import { FabricValidate, renderValidate, } from './functions/validate.function.j
46
47
  import { FabricSmoke, renderSmoke } from './functions/smoke.function.js';
47
48
  import { FabricPublish } from './functions/publish.function.js';
48
49
  import { FabricAdd } from './functions/add.function.js';
50
+ import { FabricReport } from './functions/report.function.js';
51
+ import { FabricFindingsList, renderFindingsList, } from './functions/findings-list.function.js';
52
+ import { FabricFindingsFlush } from './functions/findings-flush.function.js';
53
+ import { FabricFindingsClear } from './functions/findings-clear.function.js';
49
54
  import { FabricAddonVerify, renderAddonVerify, } from './functions/addon-verify.function.js';
50
55
  export const fabricCommands = defineCLICommands({
51
56
  validate: pikkuCLICommand({
@@ -250,6 +255,18 @@ export const fabricCommands = defineCLICommands({
250
255
  json: { description: 'Machine-readable output', default: false },
251
256
  },
252
257
  }),
258
+ delete: pikkuCLICommand({
259
+ parameters: '<name>',
260
+ func: FabricSecretsDelete,
261
+ description: 'Delete a single stage-scoped secret',
262
+ options: {
263
+ branch: { description: 'Target branch', short: 'b' },
264
+ force: {
265
+ description: 'Delete without confirmation',
266
+ default: false,
267
+ },
268
+ },
269
+ }),
253
270
  rotate: pikkuCLICommand({
254
271
  func: FabricSecretsRotate,
255
272
  description: "Retire a stage's sealing key (secrets must be set again)",
@@ -302,6 +319,67 @@ export const fabricCommands = defineCLICommands({
302
319
  json: { description: 'Machine-readable output', default: false },
303
320
  },
304
321
  }),
322
+ report: pikkuCLICommand({
323
+ parameters: '[title]',
324
+ func: FabricReport,
325
+ description: 'Report a finding — something about pikku that cost time — to fabric',
326
+ options: {
327
+ stdin: {
328
+ description: 'Read the whole finding as JSON on stdin instead of from flags (prose survives the shell intact)',
329
+ default: false,
330
+ },
331
+ kind: {
332
+ description: 'product (fix pikku) or harness (fix the skill that misled you)',
333
+ },
334
+ model: { description: 'The model that hit this' },
335
+ expected: { description: 'What you expected pikku to do' },
336
+ actual: { description: 'What it did instead' },
337
+ skill: {
338
+ description: 'For a harness finding, the skill that misled you',
339
+ },
340
+ passage: { description: 'The passage in that skill it contradicts' },
341
+ command: { description: 'The command you ran' },
342
+ error: { description: "The error's message line, verbatim" },
343
+ repro: { description: 'The shortest way to reach it again' },
344
+ workaround: { description: 'What you did instead, inside the app' },
345
+ proposal: {
346
+ description: 'What pikku should do — named file and function, mechanism, suggested change',
347
+ },
348
+ tried: {
349
+ description: 'For an unresolved finding, what you tried and how each attempt failed',
350
+ },
351
+ unresolved: {
352
+ description: 'No workaround was found — a blocker, not a tax',
353
+ default: false,
354
+ },
355
+ area: { description: 'The part of pikku this is about' },
356
+ surface: { description: 'Where it showed up: local, deployed or both' },
357
+ cost: { description: 'What it cost, measured or estimated' },
358
+ run: { description: 'Run id, to group findings from one build' },
359
+ deployTarget: { description: 'The deploy target in use' },
360
+ },
361
+ }),
362
+ findings: {
363
+ description: 'Inspect the findings held locally because they could not be sent',
364
+ subcommands: {
365
+ list: pikkuCLICommand({
366
+ func: FabricFindingsList,
367
+ render: renderFindingsList,
368
+ description: 'List the findings queued locally, waiting to be sent',
369
+ }),
370
+ flush: pikkuCLICommand({
371
+ func: FabricFindingsFlush,
372
+ description: 'Send every finding queued locally',
373
+ options: {
374
+ apiUrl: { description: 'Override the fabric-api URL for this call' },
375
+ },
376
+ }),
377
+ clear: pikkuCLICommand({
378
+ func: FabricFindingsClear,
379
+ description: 'Discard every queued finding without sending it',
380
+ }),
381
+ },
382
+ },
305
383
  metrics: pikkuCLICommand({
306
384
  func: FabricMetrics,
307
385
  description: 'Show request rate / error rate / latency for a stage',
@@ -0,0 +1,12 @@
1
+ import { z } from 'zod';
2
+ export declare const FabricFindingsClearInput: z.ZodObject<{}, z.core.$strip>;
3
+ export declare const FabricFindingsClearOutput: z.ZodObject<{
4
+ dropped: z.ZodNumber;
5
+ }, z.core.$strip>;
6
+ export declare const FabricFindingsClear: import("../../../.pikku/function/pikku-function-types.gen.js").PikkuFunctionConfig<Record<string, never>, {
7
+ dropped: number;
8
+ }, "rpc" | "session", import("../../../.pikku/function/pikku-function-types.gen.js").PikkuFunctionSessionless<Record<string, never>, {
9
+ dropped: number;
10
+ }, "rpc" | "session", import("../../../.pikku/function/pikku-function-types.gen.js").WiredServices, unknown> | import("../../../.pikku/function/pikku-function-types.gen.js").PikkuFunction<Record<string, never>, {
11
+ dropped: number;
12
+ }, "rpc" | "session", import("../../../.pikku/function/pikku-function-types.gen.js").WiredServices>, undefined, undefined>;
@@ -0,0 +1,17 @@
1
+ import { z } from 'zod';
2
+ import { pikkuSessionlessFunc } from '../../../.pikku/function/index.js';
3
+ import { clearSpool } from '../lib/finding-spool.js';
4
+ export const FabricFindingsClearInput = z.object({});
5
+ export const FabricFindingsClearOutput = z.object({
6
+ dropped: z.number(),
7
+ });
8
+ export const FabricFindingsClear = pikkuSessionlessFunc({
9
+ description: 'Discard every finding queued locally without sending it.',
10
+ input: FabricFindingsClearInput,
11
+ output: FabricFindingsClearOutput,
12
+ func: async () => {
13
+ const dropped = await clearSpool();
14
+ console.log(`[fabric] dropped ${dropped} queued finding(s)`);
15
+ return { dropped };
16
+ },
17
+ });
@@ -0,0 +1,33 @@
1
+ import { z } from 'zod';
2
+ export declare const FabricFindingsFlushInput: z.ZodObject<{
3
+ apiUrl: z.ZodOptional<z.ZodString>;
4
+ }, z.core.$strip>;
5
+ export declare const FabricFindingsFlushOutput: z.ZodObject<{
6
+ sent: z.ZodNumber;
7
+ remaining: z.ZodNumber;
8
+ reason: z.ZodOptional<z.ZodString>;
9
+ }, z.core.$strip>;
10
+ /**
11
+ * Explicitly asked for, so unlike `report` this one says plainly that it
12
+ * cannot run: someone who typed `flush` wants to know the login is missing,
13
+ * not to have the queue quietly stay put.
14
+ */
15
+ export declare const FabricFindingsFlush: import("../../../.pikku/function/pikku-function-types.gen.js").PikkuFunctionConfig<{
16
+ apiUrl?: string | undefined;
17
+ }, {
18
+ sent: number;
19
+ remaining: number;
20
+ reason?: string | undefined;
21
+ }, "rpc" | "session", import("../../../.pikku/function/pikku-function-types.gen.js").PikkuFunctionSessionless<{
22
+ apiUrl?: string | undefined;
23
+ }, {
24
+ sent: number;
25
+ remaining: number;
26
+ reason?: string | undefined;
27
+ }, "rpc" | "session", import("../../../.pikku/function/pikku-function-types.gen.js").WiredServices, unknown> | import("../../../.pikku/function/pikku-function-types.gen.js").PikkuFunction<{
28
+ apiUrl?: string | undefined;
29
+ }, {
30
+ sent: number;
31
+ remaining: number;
32
+ reason?: string | undefined;
33
+ }, "rpc" | "session", import("../../../.pikku/function/pikku-function-types.gen.js").WiredServices>, undefined, undefined>;
@@ -0,0 +1,36 @@
1
+ import { z } from 'zod';
2
+ import { pikkuSessionlessFunc } from '../../../.pikku/function/index.js';
3
+ import { resolveApiContext } from '../lib/config.js';
4
+ import { flushSpool } from '../lib/finding-spool.js';
5
+ export const FabricFindingsFlushInput = z.object({
6
+ apiUrl: z.string().optional(),
7
+ });
8
+ export const FabricFindingsFlushOutput = z.object({
9
+ sent: z.number(),
10
+ remaining: z.number(),
11
+ reason: z.string().optional(),
12
+ });
13
+ /**
14
+ * Explicitly asked for, so unlike `report` this one says plainly that it
15
+ * cannot run: someone who typed `flush` wants to know the login is missing,
16
+ * not to have the queue quietly stay put.
17
+ */
18
+ export const FabricFindingsFlush = pikkuSessionlessFunc({
19
+ description: 'Send every finding queued locally.',
20
+ input: FabricFindingsFlushInput,
21
+ output: FabricFindingsFlushOutput,
22
+ func: async (_services, { apiUrl: apiUrlOverride }) => {
23
+ const ctx = await resolveApiContext({ apiUrlOverride });
24
+ if (!ctx.token)
25
+ throw new Error('Not logged in. Run `pikku fabric login` first.');
26
+ const result = await flushSpool({
27
+ apiUrl: ctx.apiUrl,
28
+ token: ctx.token,
29
+ projectId: ctx.projectId,
30
+ });
31
+ console.log(result.remaining === 0
32
+ ? `[fabric] sent ${result.sent} finding(s)`
33
+ : `[fabric] sent ${result.sent}, ${result.remaining} still queued (${result.reason})`);
34
+ return result;
35
+ },
36
+ });
@@ -0,0 +1,55 @@
1
+ import { z } from 'zod';
2
+ export declare const FabricFindingsListInput: z.ZodObject<{}, z.core.$strip>;
3
+ export declare const FabricFindingsListOutput: z.ZodObject<{
4
+ findings: z.ZodArray<z.ZodObject<{
5
+ title: z.ZodString;
6
+ kind: z.ZodString;
7
+ reason: z.ZodString;
8
+ reportedAt: z.ZodString;
9
+ projectId: z.ZodNullable<z.ZodString>;
10
+ file: z.ZodString;
11
+ }, z.core.$strip>>;
12
+ }, z.core.$strip>;
13
+ /**
14
+ * What is waiting to be sent. Without this the spool is invisible, and an
15
+ * agent has no way to tell a finding that reached fabric from one still
16
+ * sitting on the machine.
17
+ */
18
+ export declare const FabricFindingsList: import("../../../.pikku/function/pikku-function-types.gen.js").PikkuFunctionConfig<Record<string, never>, {
19
+ findings: {
20
+ title: string;
21
+ kind: string;
22
+ reason: string;
23
+ reportedAt: string;
24
+ projectId: string | null;
25
+ file: string;
26
+ }[];
27
+ }, "rpc" | "session", import("../../../.pikku/function/pikku-function-types.gen.js").PikkuFunctionSessionless<Record<string, never>, {
28
+ findings: {
29
+ title: string;
30
+ kind: string;
31
+ reason: string;
32
+ reportedAt: string;
33
+ projectId: string | null;
34
+ file: string;
35
+ }[];
36
+ }, "rpc" | "session", import("../../../.pikku/function/pikku-function-types.gen.js").WiredServices, unknown> | import("../../../.pikku/function/pikku-function-types.gen.js").PikkuFunction<Record<string, never>, {
37
+ findings: {
38
+ title: string;
39
+ kind: string;
40
+ reason: string;
41
+ reportedAt: string;
42
+ projectId: string | null;
43
+ file: string;
44
+ }[];
45
+ }, "rpc" | "session", import("../../../.pikku/function/pikku-function-types.gen.js").WiredServices>, undefined, undefined>;
46
+ type QueuedFinding = {
47
+ title: string;
48
+ kind: string;
49
+ reason: string;
50
+ reportedAt: string;
51
+ };
52
+ export declare const renderFindingsList: (_s: unknown, { findings }: {
53
+ findings: QueuedFinding[];
54
+ }) => void;
55
+ export {};