@pikku/cli 0.12.119 → 0.12.120
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.
- package/CHANGELOG.md +33 -0
- package/console-app/assets/{abnfDiagram-N423BO3Z-CiK5F2ml.js → abnfDiagram-N423BO3Z-Df3BCQUl.js} +1 -1
- package/console-app/assets/architecture-TIHT7OUA-i2kvkWiG.js +1 -0
- package/console-app/assets/{architectureDiagram-T3A2C74G-g4Elcs_0.js → architectureDiagram-T3A2C74G-BlV2VA0B.js} +1 -1
- package/console-app/assets/{blockDiagram-VBNYF7ZC-CI6muc3M.js → blockDiagram-VBNYF7ZC-BZ7GFw7a.js} +1 -1
- package/console-app/assets/{c4Diagram-5PPSVZJV-CjzL9yGp.js → c4Diagram-5PPSVZJV-uXLYnA16.js} +1 -1
- package/console-app/assets/channel-BjjIBjrV.js +1 -0
- package/console-app/assets/{chunk-2GRJ4B5K-C68TKOLb.js → chunk-2GRJ4B5K-CU6Szqvt.js} +1 -1
- package/console-app/assets/{chunk-4I5QYGJK-D_DINIPO.js → chunk-4I5QYGJK-Bf8ARw9p.js} +1 -1
- package/console-app/assets/{chunk-5RXB4S5H-D8mEuiea.js → chunk-5RXB4S5H-CuRjyaQR.js} +1 -1
- package/console-app/assets/{chunk-6Q2QTUOP-CVNqLnb8.js → chunk-6Q2QTUOP-DMFott3W.js} +1 -1
- package/console-app/assets/{chunk-7Z6QIM7H-Bnih6HyS.js → chunk-7Z6QIM7H-YJMK1J3W.js} +1 -1
- package/console-app/assets/{chunk-GF5L2VYU-C5efrbFt.js → chunk-GF5L2VYU-Co4slpk_.js} +1 -1
- package/console-app/assets/{chunk-I66GZJ75-dckv50K3.js → chunk-I66GZJ75-CE6Jk-ML.js} +1 -1
- package/console-app/assets/{chunk-JQJVKLGR-HirBo6LQ.js → chunk-JQJVKLGR-BjkITZJq.js} +1 -1
- package/console-app/assets/{chunk-KBJHAD2P-lknhmPj0.js → chunk-KBJHAD2P-DdHZUbE2.js} +1 -1
- package/console-app/assets/{chunk-NSK5VX7P-tGAl7zxF.js → chunk-NSK5VX7P-BB0gp55h.js} +1 -1
- package/console-app/assets/{chunk-QR6OTTB3-BlSKCrEq.js → chunk-QR6OTTB3-BhAzJcX6.js} +1 -1
- package/console-app/assets/{chunk-RYQCIY6F-CwQmwEV-.js → chunk-RYQCIY6F-BaRFYCcu.js} +1 -1
- package/console-app/assets/{chunk-UBXNYLIW-D1Dn6ZK0.js → chunk-UBXNYLIW-DN_ayb-W.js} +1 -1
- package/console-app/assets/{chunk-W5SLKNZC-DOkZHhST.js → chunk-W5SLKNZC-DQ0C1K0m.js} +1 -1
- package/console-app/assets/{chunk-WRU74C26-CB4orIKm.js → chunk-WRU74C26-Dej4aDDK.js} +1 -1
- package/console-app/assets/chunk-XXDRQBXY-COHoQA_g.js +1 -0
- package/console-app/assets/classDiagram-JCYQIIEL-BkQzFYJq.js +1 -0
- package/console-app/assets/classDiagram-v2-OCEON4UE-BkQzFYJq.js +1 -0
- package/console-app/assets/{cose-bilkent-JH36ORCC-stBhaqpU.js → cose-bilkent-JH36ORCC-CaCBDIGn.js} +1 -1
- package/console-app/assets/{cynefin-VYW2F7L2-Bb1nmKWZ.js → cynefin-VYW2F7L2-DvNj3Ktd.js} +1 -1
- package/console-app/assets/{cynefinDiagram-MW4NZA55-Bp8fMJi-.js → cynefinDiagram-MW4NZA55-2M1I4KVc.js} +1 -1
- package/console-app/assets/{dagre-DshmzimC.js → dagre-BX6AcUT6.js} +1 -1
- package/console-app/assets/{dagre-VZM6K2ZE-DIl1klf5.js → dagre-VZM6K2ZE-CeiMExQ0.js} +1 -1
- package/console-app/assets/{diagram-7IWD3JNH-DdkSOxKT.js → diagram-7IWD3JNH-DFb1QCit.js} +1 -1
- package/console-app/assets/{diagram-B4RE2ZJO-9Dj9O4L8.js → diagram-B4RE2ZJO-CcmxcWm0.js} +1 -1
- package/console-app/assets/{diagram-LBJQPF4R-CxBb73tU.js → diagram-LBJQPF4R-DpxWXRoq.js} +1 -1
- package/console-app/assets/{diagram-Q27KOJAE-CPpUmnvb.js → diagram-Q27KOJAE-Cu_MNubg.js} +1 -1
- package/console-app/assets/{diagram-UB23O5K3-7wV_Db6W.js → diagram-UB23O5K3-B-R4JZVn.js} +1 -1
- package/console-app/assets/{ebnfDiagram-BXEA7PRR-Cxzbf8pk.js → ebnfDiagram-BXEA7PRR-C26G-5vz.js} +1 -1
- package/console-app/assets/{erDiagram-JOGREHBK-BBPLq83P.js → erDiagram-JOGREHBK-DJaz9wds.js} +1 -1
- package/console-app/assets/eventmodeling-45OFAUF4-Cge15uFd.js +1 -0
- package/console-app/assets/flowDiagram-UKHOOZJN-DN8OJeAP.js +1 -0
- package/console-app/assets/{ganttDiagram-PKOTCBZU-Erh7WK4H.js → ganttDiagram-PKOTCBZU-BmHvLxmw.js} +1 -1
- package/console-app/assets/{gitGraph-TEB2WS4Q-o5FLRF57.js → gitGraph-TEB2WS4Q-gjOfZX1j.js} +1 -1
- package/console-app/assets/{gitGraphDiagram-DS77QQ5N-BFbsaenX.js → gitGraphDiagram-DS77QQ5N-Cn2aQfgw.js} +1 -1
- package/console-app/assets/{index-w2ZoJr8X.js → index-Cx39I_BR.js} +184 -184
- package/console-app/assets/{info-DKCQHKI2-Dkcrdr1w.js → info-DKCQHKI2-Dxvvr3Du.js} +1 -1
- package/console-app/assets/{infoDiagram-6WML65LV-iZVC5Wzy.js → infoDiagram-6WML65LV-CU2DYprj.js} +1 -1
- package/console-app/assets/{ishikawaDiagram-WSZJBQD7-BjV8LLeA.js → ishikawaDiagram-WSZJBQD7-CEIhGAXe.js} +1 -1
- package/console-app/assets/{journeyDiagram-NVQOT4AX-D3rpLjYi.js → journeyDiagram-NVQOT4AX-vDLEtm6u.js} +1 -1
- package/console-app/assets/{kanban-definition-27J2QSJJ-Dds5TFyv.js → kanban-definition-27J2QSJJ-rfZdVBY0.js} +1 -1
- package/console-app/assets/{line-D1rUAT18.js → line-CK7XHoXo.js} +1 -1
- package/console-app/assets/{linear-fQ_6Sc79.js → linear-DeA9Np_F.js} +1 -1
- package/console-app/assets/{mermaid-parser.core-B9Q-4IXF.js → mermaid-parser.core-Bkwm3osM.js} +3 -3
- package/console-app/assets/{mermaid.core-bPhADShw.js → mermaid.core-DvVwOMEV.js} +4 -4
- package/console-app/assets/{mindmap-definition-FAOFIHXS-CULlU6Fy.js → mindmap-definition-FAOFIHXS-DYMAQz7X.js} +1 -1
- package/console-app/assets/{packet-7NZHBO7P-DpwzoQpc.js → packet-7NZHBO7P-CtoDJZ2L.js} +1 -1
- package/console-app/assets/{pegDiagram-VL7TDLO6-B9fKKc4F.js → pegDiagram-VL7TDLO6-BRxy7Znf.js} +1 -1
- package/console-app/assets/{pie-RZYD4A2V-DkXpqWAI.js → pie-RZYD4A2V-NEqmtqwU.js} +1 -1
- package/console-app/assets/{pieDiagram-7S7Q4E2Y-Bcpn2rUM.js → pieDiagram-7S7Q4E2Y-eekm9APm.js} +1 -1
- package/console-app/assets/{quadrantDiagram-CIZ2JOQS-Bd5wWFj_.js → quadrantDiagram-CIZ2JOQS-BSew_APH.js} +1 -1
- package/console-app/assets/{radar-I7S5WNFK-ylw-u3HI.js → radar-I7S5WNFK-BgvnQqhv.js} +1 -1
- package/console-app/assets/{railroad-3IZDKUUU-D4LMucL-.js → railroad-3IZDKUUU-DqG1o6ll.js} +1 -1
- package/console-app/assets/railroad-abnf-AHOZXSZD-DQHwBMhW.js +1 -0
- package/console-app/assets/railroad-ebnf-EBAXGLYW-cu_kDg2r.js +1 -0
- package/console-app/assets/railroad-peg-LSFZ7HO6-CJh8d3dM.js +1 -0
- package/console-app/assets/{railroadDiagram-AXF67PYL-CZukQql9.js → railroadDiagram-AXF67PYL-Rb5V_7ZT.js} +1 -1
- package/console-app/assets/{requirementDiagram-LRYGKXZP-Ou4nRENK.js → requirementDiagram-LRYGKXZP-BONrWtQh.js} +1 -1
- package/console-app/assets/{sankeyDiagram-W5VNT64P-BKdG-c_o.js → sankeyDiagram-W5VNT64P-CUPWhFm-.js} +1 -1
- package/console-app/assets/{sequenceDiagram-SI44F4Z6-Dc7d5obe.js → sequenceDiagram-SI44F4Z6-DXwluQXT.js} +1 -1
- package/console-app/assets/{src-BFb2oeKx.js → src-CyNQB37R.js} +1 -1
- package/console-app/assets/{stateDiagram-OKZ733FA-BA9fuN7b.js → stateDiagram-OKZ733FA-DXopCa6U.js} +1 -1
- package/console-app/assets/stateDiagram-v2-UEYNNEHI-BCi_SQzZ.js +1 -0
- package/console-app/assets/{swimlanes-SLNWSIFB-l-ETgM83.js → swimlanes-SLNWSIFB-C_oImvSp.js} +1 -1
- package/console-app/assets/swimlanesDiagram-ULZ7WXOC-C01TBFdM.js +8 -0
- package/console-app/assets/{timeline-definition-Z64GVDOM-Uj_ByeVr.js → timeline-definition-Z64GVDOM-BEx4FmJK.js} +1 -1
- package/console-app/assets/{treeView-QDETBFTQ-BvFRkVGY.js → treeView-QDETBFTQ-DIQFLe_6.js} +1 -1
- package/console-app/assets/{treemap-6X3UGDF4-BV5T7Dw9.js → treemap-6X3UGDF4-Dz8_vGjV.js} +1 -1
- package/console-app/assets/{vennDiagram-T6HMQDX7-DAFU8gAo.js → vennDiagram-T6HMQDX7-_sMSuxYe.js} +1 -1
- package/console-app/assets/{wardley-OPB4EBWU-MLNuhuiA.js → wardley-OPB4EBWU-BkFD9f0r.js} +1 -1
- package/console-app/assets/{wardleyDiagram-T6FBY63Y-B1lCTfi1.js → wardleyDiagram-T6FBY63Y-DhqBDV2O.js} +1 -1
- package/console-app/assets/{xychartDiagram-ELKLHX3M-Bw3zhuWc.js → xychartDiagram-ELKLHX3M-D8Jav5f0.js} +1 -1
- package/console-app/index.html +1 -1
- package/dist/.pikku/addon/index.d.ts +1 -1
- package/dist/.pikku/addon/index.js +1 -1
- package/dist/.pikku/addon/pikku-addon-types.gen.d.ts +1 -1
- package/dist/.pikku/addon/pikku-addon-types.gen.js +1 -1
- package/dist/.pikku/agent/index.d.ts +1 -1
- package/dist/.pikku/agent/index.js +1 -1
- package/dist/.pikku/agent/pikku-agent-types.gen.d.ts +1 -1
- package/dist/.pikku/agent/pikku-model-aliases.gen.js +1 -1
- package/dist/.pikku/auth/index.d.ts +1 -1
- package/dist/.pikku/auth/index.js +1 -1
- package/dist/.pikku/auth/pikku-auth-types.gen.d.ts +1 -1
- package/dist/.pikku/auth/pikku-auth-types.gen.js +1 -1
- package/dist/.pikku/channel/index.d.ts +1 -1
- package/dist/.pikku/channel/index.js +1 -1
- package/dist/.pikku/channel/pikku-channel-types.gen.d.ts +1 -1
- package/dist/.pikku/channel/pikku-channel-types.gen.js +1 -1
- package/dist/.pikku/cli/index.d.ts +1 -1
- package/dist/.pikku/cli/index.js +1 -1
- package/dist/.pikku/cli/pikku-cli-channel.js +1 -1
- package/dist/.pikku/cli/pikku-cli-client.gen.d.ts +1 -1
- package/dist/.pikku/cli/pikku-cli-client.gen.js +1 -1
- package/dist/.pikku/cli/pikku-cli-contracts-meta.gen.d.ts +1 -1
- package/dist/.pikku/cli/pikku-cli-contracts-meta.gen.js +1 -1
- package/dist/.pikku/cli/pikku-cli-types.gen.d.ts +1 -1
- package/dist/.pikku/cli/pikku-cli-types.gen.js +1 -1
- package/dist/.pikku/cli/pikku-cli-wirings-meta.gen.js +1 -1
- package/dist/.pikku/cli/pikku-cli-wirings.gen.d.ts +1 -1
- package/dist/.pikku/cli/pikku-cli-wirings.gen.js +1 -1
- package/dist/.pikku/cli/pikku-cli.gen.d.ts +1 -1
- package/dist/.pikku/cli/pikku-cli.gen.js +1 -1
- package/dist/.pikku/error/index.d.ts +1 -1
- package/dist/.pikku/error/index.js +1 -1
- package/dist/.pikku/error/pikku-error-types.gen.d.ts +1 -1
- package/dist/.pikku/error/pikku-error-types.gen.js +1 -1
- package/dist/.pikku/function/index.d.ts +1 -1
- package/dist/.pikku/function/index.js +1 -1
- package/dist/.pikku/function/pikku-function-types.gen.d.ts +1 -1
- package/dist/.pikku/function/pikku-function-types.gen.js +1 -1
- package/dist/.pikku/function/pikku-functions-meta.gen.js +1 -1
- package/dist/.pikku/function/pikku-functions.gen.js +1 -1
- package/dist/.pikku/gateway/index.d.ts +1 -1
- package/dist/.pikku/gateway/index.js +1 -1
- package/dist/.pikku/gateway/pikku-gateway-types.gen.d.ts +1 -1
- package/dist/.pikku/gateway/pikku-gateway-types.gen.js +1 -1
- package/dist/.pikku/http/index.d.ts +1 -1
- package/dist/.pikku/http/index.js +1 -1
- package/dist/.pikku/http/pikku-http-types.gen.d.ts +1 -1
- package/dist/.pikku/http/pikku-http-types.gen.js +1 -1
- package/dist/.pikku/mcp/index.d.ts +1 -1
- package/dist/.pikku/mcp/index.js +1 -1
- package/dist/.pikku/mcp/pikku-mcp-types.gen.d.ts +1 -1
- package/dist/.pikku/mcp/pikku-mcp-types.gen.js +1 -1
- package/dist/.pikku/middleware/index.d.ts +1 -1
- package/dist/.pikku/middleware/index.js +1 -1
- package/dist/.pikku/middleware/pikku-middleware-types.gen.d.ts +1 -1
- package/dist/.pikku/middleware/pikku-middleware-types.gen.js +1 -1
- package/dist/.pikku/pikku-bootstrap-scenarios.gen.d.ts +1 -1
- package/dist/.pikku/pikku-bootstrap-scenarios.gen.js +1 -1
- package/dist/.pikku/pikku-bootstrap.gen.d.ts +1 -1
- package/dist/.pikku/pikku-bootstrap.gen.js +1 -1
- package/dist/.pikku/pikku-services.gen.d.ts +1 -1
- package/dist/.pikku/queue/index.d.ts +1 -1
- package/dist/.pikku/queue/index.js +1 -1
- package/dist/.pikku/queue/pikku-queue-types.gen.d.ts +1 -1
- package/dist/.pikku/queue/pikku-queue-types.gen.js +1 -1
- package/dist/.pikku/queue/pikku-queue-workers-wirings-meta.gen.js +1 -1
- package/dist/.pikku/queue/pikku-queue-workers-wirings.gen.d.ts +1 -1
- package/dist/.pikku/queue/pikku-queue-workers-wirings.gen.js +1 -1
- package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.js +1 -1
- package/dist/.pikku/scenarios/index.d.ts +1 -1
- package/dist/.pikku/scenarios/index.js +1 -1
- package/dist/.pikku/scenarios/pikku-personas.gen.js +1 -1
- package/dist/.pikku/scenarios/pikku-scenario-functions-meta.gen.js +1 -1
- package/dist/.pikku/scenarios/pikku-scenario-functions.gen.d.ts +1 -1
- package/dist/.pikku/scenarios/pikku-scenario-types.gen.d.ts +1 -1
- package/dist/.pikku/scenarios/pikku-scenario-wirings-meta.gen.js +1 -1
- package/dist/.pikku/scenarios/pikku-scenario-wirings.gen.d.ts +1 -1
- package/dist/.pikku/scenarios/schemas/register.gen.d.ts +1 -1
- package/dist/.pikku/scenarios/schemas/register.gen.js +1 -1
- package/dist/.pikku/scheduler/index.d.ts +1 -1
- package/dist/.pikku/scheduler/index.js +1 -1
- package/dist/.pikku/scheduler/pikku-scheduler-types.gen.d.ts +1 -1
- package/dist/.pikku/scheduler/pikku-scheduler-types.gen.js +1 -1
- package/dist/.pikku/schemas/register.gen.js +1 -1
- package/dist/.pikku/scopes/index.d.ts +1 -1
- package/dist/.pikku/scopes/index.js +1 -1
- package/dist/.pikku/scopes/pikku-personas.gen.js +1 -1
- package/dist/.pikku/scopes/pikku-roles.gen.d.ts +1 -1
- package/dist/.pikku/scopes/pikku-scope-types.gen.d.ts +1 -1
- package/dist/.pikku/scopes/pikku-scope-types.gen.js +1 -1
- package/dist/.pikku/scopes/pikku-scopes.gen.d.ts +1 -1
- package/dist/.pikku/secrets/index.d.ts +1 -1
- package/dist/.pikku/secrets/index.js +1 -1
- package/dist/.pikku/secrets/pikku-secret-types.gen.d.ts +1 -1
- package/dist/.pikku/secrets/pikku-secret-types.gen.js +1 -1
- package/dist/.pikku/secrets/pikku-secrets.gen.d.ts +1 -1
- package/dist/.pikku/secrets/pikku-secrets.gen.js +1 -1
- package/dist/.pikku/services/pikku-meta-service.gen.d.ts +1 -1
- package/dist/.pikku/services/pikku-meta-service.gen.js +1 -1
- package/dist/.pikku/setup/index.d.ts +1 -1
- package/dist/.pikku/setup/index.js +1 -1
- package/dist/.pikku/setup/pikku-setup-types.gen.d.ts +1 -1
- package/dist/.pikku/setup/pikku-setup-types.gen.js +1 -1
- package/dist/.pikku/trigger/index.d.ts +1 -1
- package/dist/.pikku/trigger/index.js +1 -1
- package/dist/.pikku/trigger/pikku-trigger-types.gen.d.ts +1 -1
- package/dist/.pikku/trigger/pikku-trigger-types.gen.js +1 -1
- package/dist/.pikku/variables/index.d.ts +1 -1
- package/dist/.pikku/variables/index.js +1 -1
- package/dist/.pikku/variables/pikku-variable-types.gen.d.ts +1 -1
- package/dist/.pikku/variables/pikku-variable-types.gen.js +1 -1
- package/dist/.pikku/variables/pikku-variables.gen.d.ts +1 -1
- package/dist/.pikku/variables/pikku-variables.gen.js +1 -1
- package/dist/.pikku/workflow/index.d.ts +1 -1
- package/dist/.pikku/workflow/index.js +1 -1
- package/dist/.pikku/workflow/pikku-workflow-types.gen.d.ts +1 -1
- package/dist/.pikku/workflow/pikku-workflow-types.gen.js +1 -1
- package/dist/.pikku/workflow/pikku-workflow-wirings-meta.gen.js +1 -1
- package/dist/.pikku/workflow/pikku-workflow-wirings.gen.js +1 -1
- package/dist/bin/pikku-bin.mjs +2 -2
- package/dist/src/functions/wirings/virtual-user/serialize-virtual-user-functions.js +72 -26
- package/package.json +1 -1
- package/surface.json +2 -2
- package/console-app/assets/architecture-TIHT7OUA-FMO1RByN.js +0 -1
- package/console-app/assets/channel-Dp8A5NJg.js +0 -1
- package/console-app/assets/chunk-XXDRQBXY-BMybY6E-.js +0 -1
- package/console-app/assets/classDiagram-JCYQIIEL-C-K-UAUR.js +0 -1
- package/console-app/assets/classDiagram-v2-OCEON4UE-C-K-UAUR.js +0 -1
- package/console-app/assets/eventmodeling-45OFAUF4-CLUnygIv.js +0 -1
- package/console-app/assets/flowDiagram-UKHOOZJN-D3mDcWWx.js +0 -1
- package/console-app/assets/railroad-abnf-AHOZXSZD-CRTVzK1g.js +0 -1
- package/console-app/assets/railroad-ebnf-EBAXGLYW-CB13ugAF.js +0 -1
- package/console-app/assets/railroad-peg-LSFZ7HO6-AN8zyQYp.js +0 -1
- package/console-app/assets/stateDiagram-v2-UEYNNEHI-D13a6mUd.js +0 -1
- package/console-app/assets/swimlanesDiagram-ULZ7WXOC-BsC-B2Z9.js +0 -8
package/dist/bin/pikku-bin.mjs
CHANGED
|
@@ -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.
|
|
15
|
-
process.stderr.write(`\n Update available 0.12.
|
|
14
|
+
if (latest !== '0.12.120') {
|
|
15
|
+
process.stderr.write(`\n Update available 0.12.120 → ${latest}\n brew upgrade pikku or npm install -g @pikku/cli\n\n`)
|
|
16
16
|
}
|
|
17
17
|
} catch {}
|
|
18
18
|
}
|
|
@@ -206,6 +206,19 @@ const virtualUserScheduleFields = {
|
|
|
206
206
|
nextRunAt: z.string(),
|
|
207
207
|
lastRunId: z.string().nullable(),
|
|
208
208
|
lastRunAt: z.string().nullable(),
|
|
209
|
+
/**
|
|
210
|
+
* What \`definePersonas()\` says about this persona now, alongside what the
|
|
211
|
+
* row is actually running.
|
|
212
|
+
*
|
|
213
|
+
* A schedule is turned on once and then outlives the declaration it was
|
|
214
|
+
* written from: someone edits \`personas.ts\`, redeploys, and the row keeps
|
|
215
|
+
* running last month's goals with nothing anywhere to say so. Both sides
|
|
216
|
+
* cross the wire so that difference is readable rather than inferred.
|
|
217
|
+
*/
|
|
218
|
+
declared: z.object({
|
|
219
|
+
disposition: Disposition,
|
|
220
|
+
goals: z.array(z.string()),
|
|
221
|
+
}),
|
|
209
222
|
}
|
|
210
223
|
|
|
211
224
|
export const SetVirtualUserScheduleOutput = z.object(virtualUserScheduleFields)
|
|
@@ -291,6 +304,16 @@ const API_URL_VARIABLE = 'VIRTUAL_USER_API_URL'
|
|
|
291
304
|
const SECRET_VARIABLE = 'SCENARIO_ACTOR_SECRET'
|
|
292
305
|
const MODEL_VARIABLE = 'VIRTUAL_USER_MODEL'
|
|
293
306
|
|
|
307
|
+
/**
|
|
308
|
+
* The same two variables a scenario run reads, because a virtual user signs in
|
|
309
|
+
* and calls through exactly the doors a scenario does. An app that mounts auth
|
|
310
|
+
* somewhere other than the root — \`/api/auth\` is the common one — has no other
|
|
311
|
+
* way to say so, and without them the run signs in against a 404 and spends its
|
|
312
|
+
* whole budget thinking about why nothing works.
|
|
313
|
+
*/
|
|
314
|
+
const SIGN_IN_PATH_VARIABLE = 'SCENARIO_SIGN_IN_PATH'
|
|
315
|
+
const RPC_PATH_VARIABLE = 'SCENARIO_RPC_PATH'
|
|
316
|
+
|
|
294
317
|
/**
|
|
295
318
|
* One run on the wire. Findings and intents are free-form by design — the
|
|
296
319
|
* engine records what it noticed, not a fixed row shape — so they cross as the
|
|
@@ -340,9 +363,16 @@ const serializeRun = (run: VirtualUserRunRecord) => ({
|
|
|
340
363
|
const startVirtualUserRun = async (
|
|
341
364
|
services: {
|
|
342
365
|
virtualUserRunStore?: VirtualUserRunStore
|
|
343
|
-
|
|
366
|
+
// \`unknown\` because an application's Config is its own interface and need
|
|
367
|
+
// not declare nodeEnv at all. A structural \`{ nodeEnv?: string }\` shares no
|
|
368
|
+
// property with such a config and TypeScript rejects the whole call.
|
|
369
|
+
config: unknown
|
|
370
|
+
},
|
|
371
|
+
// Named literally rather than as \`string\`: a project's generated rpc.invoke
|
|
372
|
+
// is generic over its own map's keys, and \`string\` is not one of them.
|
|
373
|
+
rpc: {
|
|
374
|
+
invoke: (name: 'executeVirtualUserRun', data: any) => Promise<unknown>
|
|
344
375
|
},
|
|
345
|
-
rpc: { invoke: (name: string, data: any) => Promise<unknown> },
|
|
346
376
|
input: {
|
|
347
377
|
persona: string
|
|
348
378
|
disposition?: string
|
|
@@ -384,7 +414,7 @@ const startVirtualUserRun = async (
|
|
|
384
414
|
// does wrong, which is not a thing to do to real customers' data. Checked
|
|
385
415
|
// against the effective disposition, so the override cannot smuggle one in.
|
|
386
416
|
if (
|
|
387
|
-
config
|
|
417
|
+
(config as { nodeEnv?: string } | undefined)?.nodeEnv === 'production' &&
|
|
388
418
|
disposition !== PRODUCTION_DISPOSITION
|
|
389
419
|
) {
|
|
390
420
|
throw new Error(
|
|
@@ -525,27 +555,38 @@ export const getVirtualUserRunSteps = pikkuFunc({
|
|
|
525
555
|
* what every other call here takes; the engine's own duration also accepts
|
|
526
556
|
* \`'30m'\`, which nothing on this side ever writes.
|
|
527
557
|
*/
|
|
528
|
-
const serializeSchedule = (schedule: VirtualUserScheduleRecord) =>
|
|
529
|
-
persona
|
|
530
|
-
|
|
531
|
-
disposition
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
:
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
558
|
+
const serializeSchedule = (schedule: VirtualUserScheduleRecord) => {
|
|
559
|
+
const persona = personaConfigs[
|
|
560
|
+
schedule.persona as keyof typeof personaConfigs
|
|
561
|
+
] as { goals?: string[]; disposition?: string } | undefined
|
|
562
|
+
const declared = {
|
|
563
|
+
disposition: (persona?.disposition ??
|
|
564
|
+
'realistic') as VirtualUserDisposition,
|
|
565
|
+
goals: persona?.goals ?? [],
|
|
566
|
+
}
|
|
567
|
+
return {
|
|
568
|
+
persona: schedule.persona,
|
|
569
|
+
enabled: schedule.enabled,
|
|
570
|
+
disposition: schedule.disposition,
|
|
571
|
+
goals: schedule.goals,
|
|
572
|
+
budget: schedule.budget
|
|
573
|
+
? {
|
|
574
|
+
steps: schedule.budget.steps,
|
|
575
|
+
mutations: schedule.budget.mutations,
|
|
576
|
+
durationMs:
|
|
577
|
+
typeof schedule.budget.duration === 'number'
|
|
578
|
+
? schedule.budget.duration
|
|
579
|
+
: undefined,
|
|
580
|
+
}
|
|
581
|
+
: null,
|
|
582
|
+
minIntervalMs: schedule.minIntervalMs,
|
|
583
|
+
maxIntervalMs: schedule.maxIntervalMs,
|
|
584
|
+
nextRunAt: schedule.nextRunAt.toISOString(),
|
|
585
|
+
lastRunId: schedule.lastRunId,
|
|
586
|
+
lastRunAt: schedule.lastRunAt ? schedule.lastRunAt.toISOString() : null,
|
|
587
|
+
declared,
|
|
588
|
+
}
|
|
589
|
+
}
|
|
549
590
|
|
|
550
591
|
export const setVirtualUserSchedule = pikkuFunc({
|
|
551
592
|
tags: ['pikku'],
|
|
@@ -612,7 +653,6 @@ export const listVirtualUserSchedules = pikkuFunc({
|
|
|
612
653
|
'Which personas are on a clock, how often they run, and when each is next due.',
|
|
613
654
|
expose: true,
|
|
614
655
|
scopes: ['virtualUser:read'],
|
|
615
|
-
input: null,
|
|
616
656
|
output: ListVirtualUserSchedulesOutput,
|
|
617
657
|
func: async ({ virtualUserScheduleStore }) => {
|
|
618
658
|
if (!virtualUserScheduleStore) {
|
|
@@ -759,7 +799,13 @@ export const executeVirtualUserRun = pikkuSessionlessFunc({
|
|
|
759
799
|
agentsMeta: await metaService.getAgentsMeta(),
|
|
760
800
|
})
|
|
761
801
|
|
|
762
|
-
const signedIn = createPersonas({
|
|
802
|
+
const signedIn = createPersonas({
|
|
803
|
+
apiUrl,
|
|
804
|
+
secret,
|
|
805
|
+
model,
|
|
806
|
+
signInPath: (await variables.get(SIGN_IN_PATH_VARIABLE)) ?? undefined,
|
|
807
|
+
rpcPath: (await variables.get(RPC_PATH_VARIABLE)) ?? undefined,
|
|
808
|
+
})
|
|
763
809
|
const target = signedIn[personaId as keyof typeof signedIn]
|
|
764
810
|
if (!target) {
|
|
765
811
|
throw new Error(\`Persona "\${personaId}" cannot sign in\`)
|
package/package.json
CHANGED
package/surface.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "0.12.
|
|
2
|
+
"version": "0.12.120",
|
|
3
3
|
"entryPoints": [
|
|
4
4
|
{
|
|
5
5
|
"id": "app",
|
|
@@ -3706,7 +3706,7 @@
|
|
|
3706
3706
|
"doc": "Unique across the project. It is how the graph is started and how its runs are grouped."
|
|
3707
3707
|
},
|
|
3708
3708
|
{
|
|
3709
|
-
"line": "nodes: Record<string,
|
|
3709
|
+
"line": "nodes: Record<string, 108 names (pikku meta)>",
|
|
3710
3710
|
"doc": "The graph's steps, keyed by node id, each naming a function. `pikku meta` lists the names available here."
|
|
3711
3711
|
},
|
|
3712
3712
|
{
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./chunk-KEIR6QF5-BICK3FdT.js";import{M as e}from"./mermaid-parser.core-B9Q-4IXF.js";export{e as createArchitectureServices};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{at as e,ot as t}from"./chunk-I66GZJ75-dckv50K3.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-w2ZoJr8X.js";import{n as t}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import"./src-BFb2oeKx.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-BFb2oeKx.js";import"./chunk-I66GZJ75-dckv50K3.js";import"./chunk-NSK5VX7P-tGAl7zxF.js";import"./chunk-4I5QYGJK-D_DINIPO.js";import"./chunk-WRU74C26-CB4orIKm.js";import"./chunk-7BUUIJ7U-Bb538aSH.js";import"./chunk-UBXNYLIW-D1Dn6ZK0.js";import"./chunk-2GRJ4B5K-C68TKOLb.js";import"./chunk-XXDRQBXY-BMybY6E-.js";import"./chunk-KBJHAD2P-lknhmPj0.js";import"./chunk-W5SLKNZC-DOkZHhST.js";import"./chunk-QR6OTTB3-BlSKCrEq.js";import"./chunk-7Z6QIM7H-Bnih6HyS.js";import{i as t,n,r,t as i}from"./chunk-GF5L2VYU-C5efrbFt.js";import"./mermaid.core-bPhADShw.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-BFb2oeKx.js";import"./chunk-I66GZJ75-dckv50K3.js";import"./chunk-NSK5VX7P-tGAl7zxF.js";import"./chunk-4I5QYGJK-D_DINIPO.js";import"./chunk-WRU74C26-CB4orIKm.js";import"./chunk-7BUUIJ7U-Bb538aSH.js";import"./chunk-UBXNYLIW-D1Dn6ZK0.js";import"./chunk-2GRJ4B5K-C68TKOLb.js";import"./chunk-XXDRQBXY-BMybY6E-.js";import"./chunk-KBJHAD2P-lknhmPj0.js";import"./chunk-W5SLKNZC-DOkZHhST.js";import"./chunk-QR6OTTB3-BlSKCrEq.js";import"./chunk-7Z6QIM7H-Bnih6HyS.js";import{i as t,n,r,t as i}from"./chunk-GF5L2VYU-C5efrbFt.js";import"./mermaid.core-bPhADShw.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-B9Q-4IXF.js";export{e as createEventModelingServices};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./src-BFb2oeKx.js";import"./chunk-I66GZJ75-dckv50K3.js";import"./chunk-NSK5VX7P-tGAl7zxF.js";import"./chunk-4I5QYGJK-D_DINIPO.js";import"./chunk-WRU74C26-CB4orIKm.js";import"./chunk-7BUUIJ7U-Bb538aSH.js";import"./chunk-UBXNYLIW-D1Dn6ZK0.js";import"./chunk-2GRJ4B5K-C68TKOLb.js";import"./chunk-XXDRQBXY-BMybY6E-.js";import"./chunk-KBJHAD2P-lknhmPj0.js";import"./chunk-W5SLKNZC-DOkZHhST.js";import"./chunk-QR6OTTB3-BlSKCrEq.js";import"./chunk-7Z6QIM7H-Bnih6HyS.js";import{n as e}from"./chunk-JQJVKLGR-HirBo6LQ.js";import"./mermaid.core-bPhADShw.js";export{e as diagram};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./chunk-KEIR6QF5-BICK3FdT.js";import{m as e}from"./mermaid-parser.core-B9Q-4IXF.js";export{e as createRailroadAbnfServices};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./chunk-KEIR6QF5-BICK3FdT.js";import{f as e}from"./mermaid-parser.core-B9Q-4IXF.js";export{e as createRailroadEbnfServices};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./chunk-KEIR6QF5-BICK3FdT.js";import{u as e}from"./mermaid-parser.core-B9Q-4IXF.js";export{e as createRailroadPegServices};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{n as e}from"./chunk-Y2CYZVJY-DsF7k-Jl.js";import"./src-BFb2oeKx.js";import"./chunk-I66GZJ75-dckv50K3.js";import"./chunk-NSK5VX7P-tGAl7zxF.js";import"./chunk-4I5QYGJK-D_DINIPO.js";import"./chunk-WRU74C26-CB4orIKm.js";import"./chunk-7BUUIJ7U-Bb538aSH.js";import"./chunk-UBXNYLIW-D1Dn6ZK0.js";import"./chunk-2GRJ4B5K-C68TKOLb.js";import"./chunk-XXDRQBXY-BMybY6E-.js";import"./chunk-KBJHAD2P-lknhmPj0.js";import"./chunk-W5SLKNZC-DOkZHhST.js";import"./chunk-QR6OTTB3-BlSKCrEq.js";import"./chunk-7Z6QIM7H-Bnih6HyS.js";import{i as t,n,r,t as i}from"./chunk-5RXB4S5H-D8mEuiea.js";import"./mermaid.core-bPhADShw.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-BFb2oeKx.js";import"./chunk-I66GZJ75-dckv50K3.js";import"./chunk-NSK5VX7P-tGAl7zxF.js";import"./chunk-4I5QYGJK-D_DINIPO.js";import"./chunk-WRU74C26-CB4orIKm.js";import"./chunk-7BUUIJ7U-Bb538aSH.js";import"./chunk-UBXNYLIW-D1Dn6ZK0.js";import"./chunk-2GRJ4B5K-C68TKOLb.js";import"./chunk-XXDRQBXY-BMybY6E-.js";import"./chunk-KBJHAD2P-lknhmPj0.js";import"./chunk-W5SLKNZC-DOkZHhST.js";import"./chunk-QR6OTTB3-BlSKCrEq.js";import"./chunk-7Z6QIM7H-Bnih6HyS.js";import{r as t,t as n}from"./chunk-JQJVKLGR-HirBo6LQ.js";import"./mermaid.core-bPhADShw.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};
|