@pikku/cli 0.12.118 → 0.12.119

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 (247) hide show
  1. package/CHANGELOG.md +172 -0
  2. package/console-app/assets/{abnfDiagram-N423BO3Z-WNIAg_Oa.js → abnfDiagram-N423BO3Z-CiK5F2ml.js} +1 -1
  3. package/console-app/assets/architecture-TIHT7OUA-FMO1RByN.js +1 -0
  4. package/console-app/assets/{architectureDiagram-T3A2C74G-DM698mgf.js → architectureDiagram-T3A2C74G-g4Elcs_0.js} +1 -1
  5. package/console-app/assets/{blockDiagram-VBNYF7ZC-DPfy9K5S.js → blockDiagram-VBNYF7ZC-CI6muc3M.js} +1 -1
  6. package/console-app/assets/{c4Diagram-5PPSVZJV-DhLbbBbX.js → c4Diagram-5PPSVZJV-CjzL9yGp.js} +1 -1
  7. package/console-app/assets/channel-Dp8A5NJg.js +1 -0
  8. package/console-app/assets/{chunk-2GRJ4B5K-C1RQ1gvs.js → chunk-2GRJ4B5K-C68TKOLb.js} +1 -1
  9. package/console-app/assets/{chunk-4I5QYGJK-BkzSdNc_.js → chunk-4I5QYGJK-D_DINIPO.js} +1 -1
  10. package/console-app/assets/{chunk-5RXB4S5H-DZpBpdcU.js → chunk-5RXB4S5H-D8mEuiea.js} +1 -1
  11. package/console-app/assets/{chunk-6Q2QTUOP-mZObxdld.js → chunk-6Q2QTUOP-CVNqLnb8.js} +1 -1
  12. package/console-app/assets/{chunk-7Z6QIM7H-C0HbxZEa.js → chunk-7Z6QIM7H-Bnih6HyS.js} +1 -1
  13. package/console-app/assets/{chunk-GF5L2VYU-DXPVwWqW.js → chunk-GF5L2VYU-C5efrbFt.js} +1 -1
  14. package/console-app/assets/{chunk-I66GZJ75-pVpq9ckD.js → chunk-I66GZJ75-dckv50K3.js} +1 -1
  15. package/console-app/assets/{chunk-JQJVKLGR-DJQ8K4wK.js → chunk-JQJVKLGR-HirBo6LQ.js} +1 -1
  16. package/console-app/assets/{chunk-KBJHAD2P-B8XuxRCO.js → chunk-KBJHAD2P-lknhmPj0.js} +1 -1
  17. package/console-app/assets/{chunk-NSK5VX7P-cYzQU4bD.js → chunk-NSK5VX7P-tGAl7zxF.js} +1 -1
  18. package/console-app/assets/{chunk-QR6OTTB3-CNoTFsqn.js → chunk-QR6OTTB3-BlSKCrEq.js} +1 -1
  19. package/console-app/assets/{chunk-RYQCIY6F-DoKRUO_N.js → chunk-RYQCIY6F-CwQmwEV-.js} +1 -1
  20. package/console-app/assets/{chunk-UBXNYLIW-BqcIoUpU.js → chunk-UBXNYLIW-D1Dn6ZK0.js} +1 -1
  21. package/console-app/assets/{chunk-W5SLKNZC-p0Qalbjj.js → chunk-W5SLKNZC-DOkZHhST.js} +1 -1
  22. package/console-app/assets/{chunk-WRU74C26-DUMn96Dr.js → chunk-WRU74C26-CB4orIKm.js} +1 -1
  23. package/console-app/assets/chunk-XXDRQBXY-BMybY6E-.js +1 -0
  24. package/console-app/assets/classDiagram-JCYQIIEL-C-K-UAUR.js +1 -0
  25. package/console-app/assets/classDiagram-v2-OCEON4UE-C-K-UAUR.js +1 -0
  26. package/console-app/assets/{cose-bilkent-JH36ORCC-BCh3BlPI.js → cose-bilkent-JH36ORCC-stBhaqpU.js} +1 -1
  27. package/console-app/assets/{cynefin-VYW2F7L2-ZfghUZsD.js → cynefin-VYW2F7L2-Bb1nmKWZ.js} +1 -1
  28. package/console-app/assets/{cynefinDiagram-MW4NZA55-DcV3QXCe.js → cynefinDiagram-MW4NZA55-Bp8fMJi-.js} +1 -1
  29. package/console-app/assets/{dagre-BPFWXLBN.js → dagre-DshmzimC.js} +1 -1
  30. package/console-app/assets/{dagre-VZM6K2ZE-DETshBO-.js → dagre-VZM6K2ZE-DIl1klf5.js} +1 -1
  31. package/console-app/assets/{diagram-7IWD3JNH-CsLX3P2o.js → diagram-7IWD3JNH-DdkSOxKT.js} +1 -1
  32. package/console-app/assets/{diagram-B4RE2ZJO-o2zcxm5S.js → diagram-B4RE2ZJO-9Dj9O4L8.js} +1 -1
  33. package/console-app/assets/{diagram-LBJQPF4R-BD2zKU21.js → diagram-LBJQPF4R-CxBb73tU.js} +1 -1
  34. package/console-app/assets/{diagram-Q27KOJAE-DHaacyna.js → diagram-Q27KOJAE-CPpUmnvb.js} +1 -1
  35. package/console-app/assets/{diagram-UB23O5K3-pSLCMUyV.js → diagram-UB23O5K3-7wV_Db6W.js} +1 -1
  36. package/console-app/assets/{ebnfDiagram-BXEA7PRR-BDzawX3O.js → ebnfDiagram-BXEA7PRR-Cxzbf8pk.js} +1 -1
  37. package/console-app/assets/{erDiagram-JOGREHBK-CyYnPmbN.js → erDiagram-JOGREHBK-BBPLq83P.js} +1 -1
  38. package/console-app/assets/eventmodeling-45OFAUF4-CLUnygIv.js +1 -0
  39. package/console-app/assets/flowDiagram-UKHOOZJN-D3mDcWWx.js +1 -0
  40. package/console-app/assets/{ganttDiagram-PKOTCBZU-3fhCBbPA.js → ganttDiagram-PKOTCBZU-Erh7WK4H.js} +1 -1
  41. package/console-app/assets/{gitGraph-TEB2WS4Q-CdLRkVux.js → gitGraph-TEB2WS4Q-o5FLRF57.js} +1 -1
  42. package/console-app/assets/{gitGraphDiagram-DS77QQ5N-CC1epdKw.js → gitGraphDiagram-DS77QQ5N-BFbsaenX.js} +1 -1
  43. package/console-app/assets/{index-GruDnAhJ.css → index-Mq-YbqNO.css} +1 -1
  44. package/console-app/assets/{index-BRmokG9t.js → index-w2ZoJr8X.js} +178 -178
  45. package/console-app/assets/{info-DKCQHKI2-BJs8WkzC.js → info-DKCQHKI2-Dkcrdr1w.js} +1 -1
  46. package/console-app/assets/{infoDiagram-6WML65LV-uoOwoIeI.js → infoDiagram-6WML65LV-iZVC5Wzy.js} +1 -1
  47. package/console-app/assets/{ishikawaDiagram-WSZJBQD7-vCUJhwTi.js → ishikawaDiagram-WSZJBQD7-BjV8LLeA.js} +1 -1
  48. package/console-app/assets/{journeyDiagram-NVQOT4AX-D2QcIlLG.js → journeyDiagram-NVQOT4AX-D3rpLjYi.js} +1 -1
  49. package/console-app/assets/{kanban-definition-27J2QSJJ-JwwKowmR.js → kanban-definition-27J2QSJJ-Dds5TFyv.js} +1 -1
  50. package/console-app/assets/{line-h2oRreYF.js → line-D1rUAT18.js} +1 -1
  51. package/console-app/assets/{linear-Dz002X_a.js → linear-fQ_6Sc79.js} +1 -1
  52. package/console-app/assets/{mermaid-parser.core-DTgmT0AA.js → mermaid-parser.core-B9Q-4IXF.js} +3 -3
  53. package/console-app/assets/{mermaid.core-1jSEDr-j.js → mermaid.core-bPhADShw.js} +4 -4
  54. package/console-app/assets/{mindmap-definition-FAOFIHXS-C3Txxhj4.js → mindmap-definition-FAOFIHXS-CULlU6Fy.js} +1 -1
  55. package/console-app/assets/{packet-7NZHBO7P-BGG7zIK2.js → packet-7NZHBO7P-DpwzoQpc.js} +1 -1
  56. package/console-app/assets/{pegDiagram-VL7TDLO6--g1r_rov.js → pegDiagram-VL7TDLO6-B9fKKc4F.js} +1 -1
  57. package/console-app/assets/{pie-RZYD4A2V-C5OepMH7.js → pie-RZYD4A2V-DkXpqWAI.js} +1 -1
  58. package/console-app/assets/{pieDiagram-7S7Q4E2Y-DGD_LzGm.js → pieDiagram-7S7Q4E2Y-Bcpn2rUM.js} +1 -1
  59. package/console-app/assets/{quadrantDiagram-CIZ2JOQS-CyBQQlD2.js → quadrantDiagram-CIZ2JOQS-Bd5wWFj_.js} +1 -1
  60. package/console-app/assets/{radar-I7S5WNFK-CaBOAO95.js → radar-I7S5WNFK-ylw-u3HI.js} +1 -1
  61. package/console-app/assets/{railroad-3IZDKUUU-2aTWN4Pw.js → railroad-3IZDKUUU-D4LMucL-.js} +1 -1
  62. package/console-app/assets/railroad-abnf-AHOZXSZD-CRTVzK1g.js +1 -0
  63. package/console-app/assets/railroad-ebnf-EBAXGLYW-CB13ugAF.js +1 -0
  64. package/console-app/assets/railroad-peg-LSFZ7HO6-AN8zyQYp.js +1 -0
  65. package/console-app/assets/{railroadDiagram-AXF67PYL-3Nr0rlTp.js → railroadDiagram-AXF67PYL-CZukQql9.js} +1 -1
  66. package/console-app/assets/{requirementDiagram-LRYGKXZP-BN7sEwSa.js → requirementDiagram-LRYGKXZP-Ou4nRENK.js} +1 -1
  67. package/console-app/assets/{sankeyDiagram-W5VNT64P-CXZR46wO.js → sankeyDiagram-W5VNT64P-BKdG-c_o.js} +1 -1
  68. package/console-app/assets/{sequenceDiagram-SI44F4Z6-DNtmdJ4U.js → sequenceDiagram-SI44F4Z6-Dc7d5obe.js} +1 -1
  69. package/console-app/assets/{src-x1E3pJJ-.js → src-BFb2oeKx.js} +1 -1
  70. package/console-app/assets/{stateDiagram-OKZ733FA-B_GyYdl_.js → stateDiagram-OKZ733FA-BA9fuN7b.js} +1 -1
  71. package/console-app/assets/stateDiagram-v2-UEYNNEHI-D13a6mUd.js +1 -0
  72. package/console-app/assets/{swimlanes-SLNWSIFB-D4N7VdF7.js → swimlanes-SLNWSIFB-l-ETgM83.js} +1 -1
  73. package/console-app/assets/swimlanesDiagram-ULZ7WXOC-BsC-B2Z9.js +8 -0
  74. package/console-app/assets/{timeline-definition-Z64GVDOM-DU5rsOWQ.js → timeline-definition-Z64GVDOM-Uj_ByeVr.js} +1 -1
  75. package/console-app/assets/{treeView-QDETBFTQ-DaKM_9sB.js → treeView-QDETBFTQ-BvFRkVGY.js} +1 -1
  76. package/console-app/assets/{treemap-6X3UGDF4-BabsKtZY.js → treemap-6X3UGDF4-BV5T7Dw9.js} +1 -1
  77. package/console-app/assets/{vennDiagram-T6HMQDX7-Dniftpq0.js → vennDiagram-T6HMQDX7-DAFU8gAo.js} +1 -1
  78. package/console-app/assets/{wardley-OPB4EBWU-BWffQNys.js → wardley-OPB4EBWU-MLNuhuiA.js} +1 -1
  79. package/console-app/assets/{wardleyDiagram-T6FBY63Y-CQ74fVdn.js → wardleyDiagram-T6FBY63Y-B1lCTfi1.js} +1 -1
  80. package/console-app/assets/{xychartDiagram-ELKLHX3M-D-XxbGIL.js → xychartDiagram-ELKLHX3M-Bw3zhuWc.js} +1 -1
  81. package/console-app/index.html +2 -2
  82. package/dist/.pikku/addon/index.d.ts +1 -1
  83. package/dist/.pikku/addon/index.js +1 -1
  84. package/dist/.pikku/addon/pikku-addon-types.gen.d.ts +1 -1
  85. package/dist/.pikku/addon/pikku-addon-types.gen.js +1 -1
  86. package/dist/.pikku/agent/index.d.ts +1 -1
  87. package/dist/.pikku/agent/index.js +1 -1
  88. package/dist/.pikku/agent/pikku-agent-types.gen.d.ts +1 -1
  89. package/dist/.pikku/agent/pikku-model-aliases.gen.js +1 -1
  90. package/dist/.pikku/auth/index.d.ts +1 -1
  91. package/dist/.pikku/auth/index.js +1 -1
  92. package/dist/.pikku/auth/pikku-auth-types.gen.d.ts +1 -1
  93. package/dist/.pikku/auth/pikku-auth-types.gen.js +1 -1
  94. package/dist/.pikku/channel/index.d.ts +1 -1
  95. package/dist/.pikku/channel/index.js +1 -1
  96. package/dist/.pikku/channel/pikku-channel-types.gen.d.ts +1 -1
  97. package/dist/.pikku/channel/pikku-channel-types.gen.js +1 -1
  98. package/dist/.pikku/cli/index.d.ts +1 -1
  99. package/dist/.pikku/cli/index.js +1 -1
  100. package/dist/.pikku/cli/pikku-cli-channel.js +1 -1
  101. package/dist/.pikku/cli/pikku-cli-client.gen.d.ts +1 -1
  102. package/dist/.pikku/cli/pikku-cli-client.gen.js +1 -1
  103. package/dist/.pikku/cli/pikku-cli-contracts-meta.gen.d.ts +1 -1
  104. package/dist/.pikku/cli/pikku-cli-contracts-meta.gen.js +1 -1
  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 +2 -9
  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 +8 -6
  123. package/dist/.pikku/function/pikku-functions.gen.js +1 -3
  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/scenarios/index.d.ts +1 -1
  154. package/dist/.pikku/scenarios/index.js +1 -1
  155. package/dist/.pikku/scenarios/pikku-personas.gen.d.ts +11 -0
  156. package/dist/.pikku/scenarios/pikku-personas.gen.js +12 -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 +1 -1
  169. package/dist/.pikku/schemas/schemas/PersonaSyncInput.schema.json +1 -1
  170. package/dist/.pikku/scopes/index.d.ts +1 -1
  171. package/dist/.pikku/scopes/index.js +1 -1
  172. package/dist/.pikku/scopes/pikku-personas.gen.js +1 -1
  173. package/dist/.pikku/scopes/pikku-roles.gen.d.ts +1 -1
  174. package/dist/.pikku/scopes/pikku-scope-types.gen.d.ts +1 -1
  175. package/dist/.pikku/scopes/pikku-scope-types.gen.js +1 -1
  176. package/dist/.pikku/scopes/pikku-scopes.gen.d.ts +1 -1
  177. package/dist/.pikku/secrets/index.d.ts +1 -1
  178. package/dist/.pikku/secrets/index.js +1 -1
  179. package/dist/.pikku/secrets/pikku-secret-types.gen.d.ts +1 -1
  180. package/dist/.pikku/secrets/pikku-secret-types.gen.js +1 -1
  181. package/dist/.pikku/secrets/pikku-secrets.gen.d.ts +1 -1
  182. package/dist/.pikku/secrets/pikku-secrets.gen.js +1 -1
  183. package/dist/.pikku/services/pikku-meta-service.gen.d.ts +1 -1
  184. package/dist/.pikku/services/pikku-meta-service.gen.js +1 -1
  185. package/dist/.pikku/setup/index.d.ts +1 -1
  186. package/dist/.pikku/setup/index.js +1 -1
  187. package/dist/.pikku/setup/pikku-setup-types.gen.d.ts +1 -1
  188. package/dist/.pikku/setup/pikku-setup-types.gen.js +1 -1
  189. package/dist/.pikku/trigger/index.d.ts +1 -1
  190. package/dist/.pikku/trigger/index.js +1 -1
  191. package/dist/.pikku/trigger/pikku-trigger-types.gen.d.ts +1 -1
  192. package/dist/.pikku/trigger/pikku-trigger-types.gen.js +1 -1
  193. package/dist/.pikku/variables/index.d.ts +1 -1
  194. package/dist/.pikku/variables/index.js +1 -1
  195. package/dist/.pikku/variables/pikku-variable-types.gen.d.ts +1 -1
  196. package/dist/.pikku/variables/pikku-variable-types.gen.js +1 -1
  197. package/dist/.pikku/variables/pikku-variables.gen.d.ts +1 -1
  198. package/dist/.pikku/variables/pikku-variables.gen.js +1 -1
  199. package/dist/.pikku/workflow/index.d.ts +1 -1
  200. package/dist/.pikku/workflow/index.js +1 -1
  201. package/dist/.pikku/workflow/pikku-workflow-types.gen.d.ts +1 -1
  202. package/dist/.pikku/workflow/pikku-workflow-types.gen.js +1 -1
  203. package/dist/.pikku/workflow/pikku-workflow-wirings-meta.gen.js +1 -1
  204. package/dist/.pikku/workflow/pikku-workflow-wirings.gen.js +1 -1
  205. package/dist/bin/pikku-bin.mjs +2 -2
  206. package/dist/src/cli.wiring.js +1 -9
  207. package/dist/src/fabric/lib/git.js +31 -1
  208. package/dist/src/functions/commands/dev.js +2 -0
  209. package/dist/src/functions/commands/persona-sync.d.ts +14 -22
  210. package/dist/src/functions/commands/persona-sync.js +29 -107
  211. package/dist/src/functions/commands/serve.js +2 -0
  212. package/dist/src/functions/validate/auth-plugin-checks.d.ts +16 -0
  213. package/dist/src/functions/validate/auth-plugin-checks.js +165 -0
  214. package/dist/src/functions/validate/persona-checks.js +1 -1
  215. package/dist/src/functions/validate/shared-checks.js +12 -0
  216. package/dist/src/functions/validate/websocket-deps-checks.d.ts +30 -0
  217. package/dist/src/functions/validate/websocket-deps-checks.js +42 -0
  218. package/dist/src/functions/wirings/personas/serialize-personas-secrets.d.ts +1 -1
  219. package/dist/src/functions/wirings/personas/serialize-personas-secrets.js +1 -1
  220. package/dist/src/functions/wirings/scopes/pikku-command-scopes.d.ts +10 -0
  221. package/dist/src/functions/wirings/scopes/pikku-command-scopes.js +20 -3
  222. package/dist/src/functions/wirings/workflow/pikku-command-workflow.js +1 -1
  223. package/dist/src/functions/wirings/workflow/serialize-personas.d.ts +2 -1
  224. package/dist/src/functions/wirings/workflow/serialize-personas.js +20 -1
  225. package/dist/src/server/actor-sign-in.d.ts +5 -0
  226. package/dist/src/server/actor-sign-in.js +27 -0
  227. package/dist/src/server/node-server-runner.d.ts +11 -0
  228. package/dist/src/server/node-server-runner.js +33 -8
  229. package/dist/src/services.js +3 -1
  230. package/dist/src/utils/resolve-from-project.d.ts +29 -0
  231. package/dist/src/utils/resolve-from-project.js +45 -0
  232. package/dist/tsconfig.tsbuildinfo +1 -1
  233. package/package.json +18 -10
  234. package/snippets.json +1 -1
  235. package/surface.json +2 -2
  236. package/console-app/assets/architecture-TIHT7OUA-CIT-Nug2.js +0 -1
  237. package/console-app/assets/channel-DQC6cL1c.js +0 -1
  238. package/console-app/assets/chunk-XXDRQBXY-Dgz5VbWO.js +0 -1
  239. package/console-app/assets/classDiagram-JCYQIIEL-1ASFocNV.js +0 -1
  240. package/console-app/assets/classDiagram-v2-OCEON4UE-1ASFocNV.js +0 -1
  241. package/console-app/assets/eventmodeling-45OFAUF4-BYJ0A5k-.js +0 -1
  242. package/console-app/assets/flowDiagram-UKHOOZJN-CVn87uiP.js +0 -1
  243. package/console-app/assets/railroad-abnf-AHOZXSZD-TU7k5gB_.js +0 -1
  244. package/console-app/assets/railroad-ebnf-EBAXGLYW-DbArPBkM.js +0 -1
  245. package/console-app/assets/railroad-peg-LSFZ7HO6-TzB93z4K.js +0 -1
  246. package/console-app/assets/stateDiagram-v2-UEYNNEHI-D7V_HITc.js +0 -1
  247. package/console-app/assets/swimlanesDiagram-ULZ7WXOC-C4XcIHKT.js +0 -8
package/CHANGELOG.md CHANGED
@@ -1,3 +1,175 @@
1
+ ## 0.12.119
2
+
3
+ ### Patch Changes
4
+
5
+ - c7b9e8e: Make `@pikku/ws` and `ws` optional peer dependencies instead of dependencies, and resolve them from the project rather than from the CLI.
6
+
7
+ `@pikku/ws` peers on a `@pikku/core` range, so a copy sitting in the CLI's own tree gets paired with the CLI's core rather than the project's — the skew surfaced as `Cannot find module '@pikku/core/ecosystem'` from a package the project never imported. As an optional peer resolved against the project's `package.json`, there is one core in play, and a Bun project (which serves WebSockets natively through `@pikku/bun-server`) no longer installs a Node WebSocket stack it cannot use.
8
+
9
+ `pikku dev` and `pikku serve` under Node now start over plain HTTP when the packages are absent, logging why, and `pikku validate` reports `websocket-deps-missing` as an error for a project that wires channels without them.
10
+
11
+ - 0b1bf53: `pikku dev` turns actor quick login on and mints its secret; `pikku serve` never
12
+ does
13
+
14
+ Which command is running is the thing that knows whether "sign in as <persona>"
15
+ should work, so the two server commands now say so rather than leaving it to
16
+ whatever the environment happens to contain.
17
+
18
+ `pikku dev` sets `PIKKU_DEV_ACTOR_SIGN_IN` before it loads the project and, if no
19
+ actor secret is set, mints a cryptographically random one for the run under both
20
+ `SCENARIO_ACTOR_SECRET` and the `VITE_`-prefixed copy the dev frontend can
21
+ actually read — only prefixed variables reach `import.meta.env`, and the switcher
22
+ runs in the browser. Requiring every contributor to hand-manage a secret for a
23
+ server that is trusted with the database anyway bought nothing and cost setup
24
+ friction on every machine. An explicitly-set secret always wins: a project
25
+ pointing its scenario runs and its dev server at one value has to keep that
26
+ value. The minted one lives only in this process's environment, so it is gone
27
+ when the server stops and yesterday's cannot sign anything in today. Both cases
28
+ are logged, naming where the secret came from — the previous silence is what made
29
+ a missing control unanswerable from outside the container. Where the two names
30
+ disagree the command says so instead of picking one quietly, because that
31
+ disagreement presents as "the switcher signs in nowhere".
32
+
33
+ `pikku serve` is the production server command and does the opposite: it clears
34
+ the marker outright, so an inherited environment cannot switch passwordless
35
+ sign-in on behind the operator, and it warns when it had something to clear. What
36
+ it deliberately leaves alone is `PIKKU_ALLOW_ACTOR_SIGN_IN` — scenario suites have
37
+ to be able to run against a deployed stage, and that opt-in is the supported way
38
+ to say so.
39
+
40
+ `pikku validate`'s fix hint for a project with personas but no actor sign-in no
41
+ longer tells people to control the endpoint by withholding the secret, which is
42
+ no longer how it is controlled, and the `pikku-better-auth` skill documents the
43
+ gate, the two escape hatches, and the two distinct refusals.
44
+
45
+ - 0b1bf53: Stop the fabric git probes answering about the wrong repository. `git push` from a worktree exports `GIT_DIR` to every hook, and a hook's children inherit it — `GIT_DIR` outranks the process's directory, so `isGitRepo`/`isTracked` and the deploy safety checks reported the hook's repository no matter which `cwd` they were given. `fabric validate` run from a pre-push hook then failed `fabric-config-untracked` against files it never looked at. Each probe picks its repository by `cwd`, so the inherited pointer is dropped along with the other repository-location variables.
46
+ - 0b1bf53: Provision the app a persona signs into as a grant, not just a declaration.
47
+
48
+ `CorePersona.app` decided where a browser run navigated and nothing else, so
49
+ "which frontend may this person reach" was a fact only the test runner held and
50
+ the deployment could not enforce. It is now a scope: the CLI derives an `app`
51
+ tree from the apps the personas name, and `provisionPersonas` grants
52
+ `app:<name>` alongside the roles.
53
+
54
+ Carried as a scope rather than a per-app column so it resolves at the session
55
+ boundary like every other grant — revocable at runtime from the console, not
56
+ inherited by a restricted API key, and one query for which apps a user may
57
+ reach instead of a migration per frontend. A single-frontend product declares
58
+ nothing and is unaffected.
59
+
60
+ `app` is reserved as a scope root: a `defineScope` call that also declares it
61
+ now fails the build rather than shadowing the derived tree.
62
+
63
+ - 0b1bf53: Personas are provisioned by the deployment, not by the CLI
64
+
65
+ Signing a persona in was what created their account: the actor endpoint upserted
66
+ an `actor: true` row on first sign-in and nothing else did. That is now the wrong
67
+ way round — creating an actor row is a power the endpoint only has under
68
+ `pikku dev`, so a stage whose sign-in is shut could not be provisioned at all,
69
+ and one whose sign-in is open would have had to accept identity minting as the
70
+ price of running scenarios.
71
+
72
+ The obvious fix was to have `pikku persona sync <environment>` write the rows
73
+ itself, and that fix is wrong in a way worth naming: the CLI has no connection to
74
+ a deployed environment's database. It resolves one from the local project config,
75
+ so `pikku persona sync staging` would read staging's API and write whatever
76
+ database the checkout happens to point at — right for a developer's own stage,
77
+ silently wrong everywhere else.
78
+
79
+ So provisioning happens where the database already is. `@pikku/better-auth`
80
+ exports `provisionPersonas`, which an app calls from its server lifecycle:
81
+
82
+ ```ts
83
+ import { provisionPersonas } from '@pikku/better-auth'
84
+ import {
85
+ personaConfigs,
86
+ personaEnvironments,
87
+ } from '#pikku/pikku-personas.gen.js'
88
+
89
+ await provisionPersonas(singletonServices, {
90
+ personas: personaConfigs,
91
+ environments: personaEnvironments,
92
+ })
93
+ ```
94
+
95
+ It creates each missing account through better-auth's own adapter, applies the
96
+ roles the persona declares, and is additive — it never revokes. A deploy carries
97
+ its personas with it, and no credential has to travel to reach a database.
98
+
99
+ Two properties carry over, and one is new:
100
+
101
+ - **A real user's address is refused**, rather than being granted the persona's
102
+ roles. If a row exists for that address without `actor`, provisioning stops and
103
+ names the persona, because the alternative is silently handing somebody else's
104
+ account an `admin` grant.
105
+ - **The environment rule still decides who is provisioned.** The same
106
+ `personaEnvironmentRefusal` that decides who may _run_ against an environment
107
+ decides who gets an account in it — two rules would drift, and the one that
108
+ drifted would leave an account standing in production for a persona the engine
109
+ then refuses to sign in. The generated personas file now carries
110
+ `personaEnvironments` so the rule can be applied inside the bundle; only the
111
+ `production` flag is projected into it, because an environment's `apiUrl` and
112
+ paths belong to the machine running `pikku scenario`.
113
+ - **A persona you delete leaves an account behind, and now you hear about it.**
114
+ Additive provisioning has a hole: the account keeps every role it was granted,
115
+ and the actor endpoint authenticates on the `actor` column alone without
116
+ consulting the declaration, so an `admin` persona nobody declares any more is
117
+ still a live way in wherever that endpoint is open. Provisioning warns about
118
+ every actor account no declared persona claims; `orphans: 'ban'` shuts them
119
+ through the same `banned` column the console's ban RPC writes, revoking their
120
+ sessions and leaving the row, its grants and its history intact — and lifting
121
+ the ban again by itself if the persona comes back. `report` stays the default
122
+ because a rolling deploy provisions from the new declaration while the old
123
+ replica is still serving the previous one.
124
+ - **`pikku persona sync <environment>` now reports rather than writes.** It
125
+ prints who the environment will provision, with which roles, and why anyone was
126
+ skipped — which is what tells you _before_ a deploy whether the accounts you
127
+ expect will appear. It needs no `SCENARIO_ACTOR_SECRET` and no database.
128
+
129
+ - 0b1bf53: Refuse better-auth's `admin()` plugin, and point at `ban()`.
130
+
131
+ `admin()` authorizes its endpoints against a `user.role` column while pikku
132
+ authorizes on scopes, so wiring it means running two authorization models and
133
+ projecting one onto the other — coarsely, since any single `admin:users:*` scope
134
+ has to project to `role='admin'` and thereby unlocks every one of its endpoints
135
+ underneath. Pikku dropped that projection when user management moved to
136
+ `@pikku/addon-admin`'s scoped RPCs, so nothing reads the column any more.
137
+
138
+ The inspector now throws when `admin()` appears in a `betterAuth({ plugins })`
139
+ array, naming the replacement:
140
+
141
+ ```ts
142
+ import { ban } from '@pikku/better-auth'
143
+ betterAuth({ plugins: [ban()] })
144
+ ```
145
+
146
+ `ban()` keeps the one capability `admin()` had that pikku cannot supply from
147
+ outside better-auth: the `banned`/`banReason`/`banExpires` columns and the
148
+ session hook that refuses a banned user a session.
149
+
150
+ `pikku validate` reports the same thing without a prebuild, and additionally
151
+ warns about the quieter half of the migration — an app that dropped `admin()`
152
+ and never wired `ban()`, which keeps its ban columns and its ban UI while
153
+ silently enforcing nothing.
154
+
155
+ Both resolve the plugin's provenance before applying the policy: the entry has
156
+ to be better-auth's `admin`, imported from `better-auth/plugins` — by name, by
157
+ alias or through a namespace — and actually present in the `plugins` array. A
158
+ project's own helper called `admin` passes, and an import left behind after the
159
+ call was removed configures nothing.
160
+
161
+ - Updated dependencies [0b1bf53]
162
+ - Updated dependencies [0b1bf53]
163
+ - Updated dependencies [0b1bf53]
164
+ - Updated dependencies [8519a73]
165
+ - Updated dependencies [0b1bf53]
166
+ - Updated dependencies [0b1bf53]
167
+ - Updated dependencies [0b1bf53]
168
+ - @pikku/better-auth@0.12.30
169
+ - @pikku/skills@0.12.16
170
+ - @pikku/core@0.12.94
171
+ - @pikku/inspector@0.12.64
172
+
1
173
  ## 0.12.118
2
174
 
3
175
  ### Patch Changes
@@ -1 +1 @@
1
- import{m as e,t}from"./mermaid-parser.core-DTgmT0AA.js";import{n}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{t as r}from"./src-x1E3pJJ-.js";import"./chunk-I66GZJ75-pVpq9ckD.js";import{n as i,r as a,t as o}from"./chunk-6Q2QTUOP-mZObxdld.js";import{t as s}from"./chunk-JWPE2WC7-DVXcaiue.js";import"./mermaid.core-1jSEDr-j.js";var c=e().RailroadAbnf.parser.LangiumParser,l=n(e=>{let t=e.alternatives.map(u);return t.length===1?t[0]:{type:`choice`,alternatives:t}},`transformAlternation`),u=n(e=>{let t=e.elements.map(f);return t.length===1?t[0]:{type:`sequence`,elements:t}},`transformConcatenation`),d=n(e=>{if(e.includes(`*`)){let[t,n]=e.split(`*`);return{min:t?parseInt(t,10):0,max:n?parseInt(n,10):1/0}}let t=parseInt(e,10);return{min:t,max:t}},`parseRepeat`),f=n(e=>{let t=p(e.primary);if(!e.repeat)return t;let{min:n,max:r}=d(e.repeat);return n===0&&r===1?{type:`optional`,element:t}:{type:`repetition`,element:t,min:n,max:r}},`transformElement`),p=n(e=>{switch(e.$type){case`AbnfStringLiteral`:return{type:`terminal`,value:e.value};case`AbnfNumVal`:return{type:`terminal`,value:e.value};case`AbnfRuleName`:return{type:`nonterminal`,name:e.name};case`AbnfGroup`:return l(e.element);case`AbnfOptionalGroup`:return{type:`optional`,element:l(e.element)};default:throw Error(`Unsupported ABNF primary node: ${e.$type}`)}},`transformPrimary`),m=n(e=>({name:e.name,definition:l(e.definition)}),`transformRule`),h=n(e=>{s(e,o),e.title&&o.setTitle(e.title),e.rules.map(e=>o.addRule(m(e)))},`populateDb`),g={parser:{parse:n(e=>{o.clear(),r.debug(`[ABNF Parser] Starting Langium parse`);let n=c.parse(e);if(n.lexerErrors.length>0||n.parserErrors.length>0)throw new t(n);let i=n.value;r.debug(`[ABNF Parser] Parsed rules:`,i.rules.length),h(i),r.debug(`[ABNF Parser] Parse complete`)},`parse`),parser:{yy:o}},db:o,renderer:a,styles:i};export{g as diagram};
1
+ import{m as e,t}from"./mermaid-parser.core-B9Q-4IXF.js";import{n}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import{t as r}from"./src-BFb2oeKx.js";import"./chunk-I66GZJ75-dckv50K3.js";import{n as i,r as a,t as o}from"./chunk-6Q2QTUOP-CVNqLnb8.js";import{t as s}from"./chunk-JWPE2WC7-DVXcaiue.js";import"./mermaid.core-bPhADShw.js";var c=e().RailroadAbnf.parser.LangiumParser,l=n(e=>{let t=e.alternatives.map(u);return t.length===1?t[0]:{type:`choice`,alternatives:t}},`transformAlternation`),u=n(e=>{let t=e.elements.map(f);return t.length===1?t[0]:{type:`sequence`,elements:t}},`transformConcatenation`),d=n(e=>{if(e.includes(`*`)){let[t,n]=e.split(`*`);return{min:t?parseInt(t,10):0,max:n?parseInt(n,10):1/0}}let t=parseInt(e,10);return{min:t,max:t}},`parseRepeat`),f=n(e=>{let t=p(e.primary);if(!e.repeat)return t;let{min:n,max:r}=d(e.repeat);return n===0&&r===1?{type:`optional`,element:t}:{type:`repetition`,element:t,min:n,max:r}},`transformElement`),p=n(e=>{switch(e.$type){case`AbnfStringLiteral`:return{type:`terminal`,value:e.value};case`AbnfNumVal`:return{type:`terminal`,value:e.value};case`AbnfRuleName`:return{type:`nonterminal`,name:e.name};case`AbnfGroup`:return l(e.element);case`AbnfOptionalGroup`:return{type:`optional`,element:l(e.element)};default:throw Error(`Unsupported ABNF primary node: ${e.$type}`)}},`transformPrimary`),m=n(e=>({name:e.name,definition:l(e.definition)}),`transformRule`),h=n(e=>{s(e,o),e.title&&o.setTitle(e.title),e.rules.map(e=>o.addRule(m(e)))},`populateDb`),g={parser:{parse:n(e=>{o.clear(),r.debug(`[ABNF Parser] Starting Langium parse`);let n=c.parse(e);if(n.lexerErrors.length>0||n.parserErrors.length>0)throw new t(n);let i=n.value;r.debug(`[ABNF Parser] Parsed rules:`,i.rules.length),h(i),r.debug(`[ABNF Parser] Parse complete`)},`parse`),parser:{yy:o}},db:o,renderer:a,styles:i};export{g as diagram};
@@ -0,0 +1 @@
1
+ import"./chunk-KEIR6QF5-BICK3FdT.js";import{M as e}from"./mermaid-parser.core-B9Q-4IXF.js";export{e as createArchitectureServices};