@pikku/addon-console 0.12.22 → 0.12.24
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/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/addon/pikku-package.gen.js +1 -1
- package/dist/.pikku/agent/pikku-agent-map.gen.d.ts +1 -1
- package/dist/.pikku/agent/pikku-agent-types.gen.d.ts +1 -1
- package/dist/.pikku/auth/auth.types.d.ts +1 -1
- package/dist/.pikku/auth/auth.types.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/console/pikku-node-types.gen.d.ts +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-meta.gen.json +639 -217
- package/dist/.pikku/function/pikku-functions.gen.js +7 -1
- package/dist/.pikku/function/pikku-functions.gen.js.map +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/pikku-mcp-types.gen.d.ts +1 -1
- package/dist/.pikku/mcp/pikku-mcp-types.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-meta-service.gen.d.ts +1 -1
- package/dist/.pikku/pikku-meta-service.gen.js +1 -1
- package/dist/.pikku/pikku-services.gen.d.ts +1 -1
- package/dist/.pikku/pikku-types.gen.d.ts +1 -1
- package/dist/.pikku/pikku-types.gen.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/rpc/pikku-rpc-wirings-map.gen.d.ts +8 -4
- package/dist/.pikku/rpc/pikku-rpc-wirings-map.internal.gen.d.ts +8 -4
- package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.js +1 -1
- package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.json +3 -0
- 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 +5 -1
- package/dist/.pikku/schemas/register.gen.js.map +1 -1
- package/dist/.pikku/schemas/schemas/AddonPackageInfo.schema.json +1 -1
- package/dist/.pikku/schemas/schemas/AgentCredentialCheckInput.schema.json +1 -1
- package/dist/.pikku/schemas/schemas/AllMeta.schema.json +1 -1
- package/dist/.pikku/schemas/schemas/GetAddonMetaOutput.schema.json +1 -1
- package/dist/.pikku/schemas/schemas/GetWorkflowMetaByIdOutput.schema.json +1 -1
- package/dist/.pikku/schemas/schemas/SecurityAuditReport.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/UpdateDependencyInput.schema.json +1 -0
- 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/trigger/pikku-trigger-types.gen.d.ts +1 -1
- package/dist/.pikku/trigger/pikku-trigger-types.gen.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/pikku-workflow-map.gen.d.ts +1 -1
- package/dist/.pikku/workflow/pikku-workflow-types.gen.d.ts +4 -4
- package/dist/.pikku/workflow/pikku-workflow-types.gen.js +2 -2
- package/dist/.pikku/workflow/pikku-workflow-wirings-meta.gen.js +1 -1
- package/dist/.pikku/workflow/pikku-workflow-wirings.gen.d.ts +1 -1
- package/dist/.pikku/workflow/pikku-workflow-wirings.gen.js +1 -1
- package/dist/src/functions/agent-credential-check.function.d.ts +2 -5
- package/dist/src/functions/agent-credential-check.function.d.ts.map +1 -1
- package/dist/src/functions/agent-credential-check.function.js +7 -4
- package/dist/src/functions/agent-credential-check.function.js.map +1 -1
- package/dist/src/functions/credential-delete.function.d.ts +2 -2
- package/dist/src/functions/credential-delete.function.js +2 -2
- package/dist/src/functions/credential-delete.function.js.map +1 -1
- package/dist/src/functions/credential-get.function.d.ts +2 -2
- package/dist/src/functions/credential-get.function.js +2 -2
- package/dist/src/functions/credential-get.function.js.map +1 -1
- package/dist/src/functions/credential-list-users.function.d.ts +2 -2
- package/dist/src/functions/credential-list-users.function.js +2 -2
- package/dist/src/functions/credential-list-users.function.js.map +1 -1
- package/dist/src/functions/credential-set.function.d.ts +2 -2
- package/dist/src/functions/credential-set.function.js +2 -2
- package/dist/src/functions/credential-set.function.js.map +1 -1
- package/dist/src/functions/credential-status.function.d.ts +2 -2
- package/dist/src/functions/credential-status.function.js +2 -2
- package/dist/src/functions/credential-status.function.js.map +1 -1
- package/dist/src/functions/credential-users.function.d.ts +2 -2
- package/dist/src/functions/credential-users.function.js +2 -2
- package/dist/src/functions/credential-users.function.js.map +1 -1
- package/dist/src/functions/delete-agent-thread.function.d.ts +2 -2
- package/dist/src/functions/delete-agent-thread.function.d.ts.map +1 -1
- package/dist/src/functions/delete-agent-thread.function.js +2 -3
- package/dist/src/functions/delete-agent-thread.function.js.map +1 -1
- package/dist/src/functions/delete-workflow-run.function.d.ts +2 -2
- package/dist/src/functions/delete-workflow-run.function.d.ts.map +1 -1
- package/dist/src/functions/delete-workflow-run.function.js +2 -3
- package/dist/src/functions/delete-workflow-run.function.js.map +1 -1
- package/dist/src/functions/get-addon-icon.function.d.ts +2 -2
- package/dist/src/functions/get-addon-icon.function.d.ts.map +1 -1
- package/dist/src/functions/get-addon-icon.function.js +2 -3
- package/dist/src/functions/get-addon-icon.function.js.map +1 -1
- package/dist/src/functions/get-addon-meta.function.d.ts +1 -1
- package/dist/src/functions/get-addon-meta.function.d.ts.map +1 -1
- package/dist/src/functions/get-addon-meta.function.js +2 -3
- package/dist/src/functions/get-addon-meta.function.js.map +1 -1
- package/dist/src/functions/get-addon-package.function.d.ts +2 -2
- package/dist/src/functions/get-addon-package.function.d.ts.map +1 -1
- package/dist/src/functions/get-addon-package.function.js +2 -3
- package/dist/src/functions/get-addon-package.function.js.map +1 -1
- package/dist/src/functions/get-agent-thread-messages.function.d.ts +2 -2
- package/dist/src/functions/get-agent-thread-messages.function.d.ts.map +1 -1
- package/dist/src/functions/get-agent-thread-messages.function.js +2 -3
- package/dist/src/functions/get-agent-thread-messages.function.js.map +1 -1
- package/dist/src/functions/get-agent-thread-runs.function.d.ts +2 -2
- package/dist/src/functions/get-agent-thread-runs.function.d.ts.map +1 -1
- package/dist/src/functions/get-agent-thread-runs.function.js +2 -3
- package/dist/src/functions/get-agent-thread-runs.function.js.map +1 -1
- package/dist/src/functions/get-agent-threads.function.d.ts +2 -2
- package/dist/src/functions/get-agent-threads.function.d.ts.map +1 -1
- package/dist/src/functions/get-agent-threads.function.js +2 -3
- package/dist/src/functions/get-agent-threads.function.js.map +1 -1
- package/dist/src/functions/get-ai-workflows.function.d.ts +2 -2
- package/dist/src/functions/get-ai-workflows.function.d.ts.map +1 -1
- package/dist/src/functions/get-ai-workflows.function.js +2 -3
- package/dist/src/functions/get-ai-workflows.function.js.map +1 -1
- package/dist/src/functions/get-all-meta.function.d.ts +1 -1
- package/dist/src/functions/get-all-meta.function.d.ts.map +1 -1
- package/dist/src/functions/get-all-meta.function.js +2 -3
- package/dist/src/functions/get-all-meta.function.js.map +1 -1
- package/dist/src/functions/get-auth-providers.function.d.ts +1 -1
- package/dist/src/functions/get-auth-providers.function.d.ts.map +1 -1
- package/dist/src/functions/get-auth-providers.function.js +2 -3
- package/dist/src/functions/get-auth-providers.function.js.map +1 -1
- package/dist/src/functions/get-channel-snippets.function.d.ts +2 -2
- package/dist/src/functions/get-channel-snippets.function.d.ts.map +1 -1
- package/dist/src/functions/get-channel-snippets.function.js +2 -3
- package/dist/src/functions/get-channel-snippets.function.js.map +1 -1
- package/dist/src/functions/get-db-schema.function.d.ts +1 -1
- package/dist/src/functions/get-db-schema.function.d.ts.map +1 -1
- package/dist/src/functions/get-db-schema.function.js +2 -3
- package/dist/src/functions/get-db-schema.function.js.map +1 -1
- package/dist/src/functions/get-function-coverage.function.d.ts +1 -1
- package/dist/src/functions/get-function-coverage.function.d.ts.map +1 -1
- package/dist/src/functions/get-function-coverage.function.js +2 -3
- package/dist/src/functions/get-function-coverage.function.js.map +1 -1
- package/dist/src/functions/get-functions-meta.function.d.ts +1 -1
- package/dist/src/functions/get-functions-meta.function.d.ts.map +1 -1
- package/dist/src/functions/get-functions-meta.function.js +2 -3
- package/dist/src/functions/get-functions-meta.function.js.map +1 -1
- package/dist/src/functions/get-installed-addons.function.d.ts +1 -1
- package/dist/src/functions/get-installed-addons.function.d.ts.map +1 -1
- package/dist/src/functions/get-installed-addons.function.js +2 -3
- package/dist/src/functions/get-installed-addons.function.js.map +1 -1
- package/dist/src/functions/get-installed-package.function.d.ts +2 -2
- package/dist/src/functions/get-installed-package.function.d.ts.map +1 -1
- package/dist/src/functions/get-installed-package.function.js +2 -3
- package/dist/src/functions/get-installed-package.function.js.map +1 -1
- package/dist/src/functions/get-openapi-detail.function.d.ts +2 -2
- package/dist/src/functions/get-openapi-detail.function.d.ts.map +1 -1
- package/dist/src/functions/get-openapi-detail.function.js +2 -3
- package/dist/src/functions/get-openapi-detail.function.js.map +1 -1
- package/dist/src/functions/get-openapis.function.d.ts +2 -2
- package/dist/src/functions/get-openapis.function.d.ts.map +1 -1
- package/dist/src/functions/get-openapis.function.js +2 -3
- package/dist/src/functions/get-openapis.function.js.map +1 -1
- package/dist/src/functions/get-schema.function.d.ts +2 -2
- package/dist/src/functions/get-schema.function.d.ts.map +1 -1
- package/dist/src/functions/get-schema.function.js +2 -3
- package/dist/src/functions/get-schema.function.js.map +1 -1
- package/dist/src/functions/get-security-audit.function.d.ts +3 -0
- package/dist/src/functions/get-security-audit.function.d.ts.map +1 -0
- package/dist/src/functions/get-security-audit.function.js +9 -0
- package/dist/src/functions/get-security-audit.function.js.map +1 -0
- package/dist/src/functions/get-security-audit.function.test.d.ts +2 -0
- package/dist/src/functions/get-security-audit.function.test.d.ts.map +1 -0
- package/dist/src/functions/get-security-audit.function.test.js +53 -0
- package/dist/src/functions/get-security-audit.function.test.js.map +1 -0
- package/dist/src/functions/get-state-diff.function.d.ts +2 -2
- package/dist/src/functions/get-state-diff.function.js +2 -2
- package/dist/src/functions/get-state-diff.function.js.map +1 -1
- package/dist/src/functions/get-workflow-meta-by-id.function.d.ts +5 -5
- package/dist/src/functions/get-workflow-meta-by-id.function.d.ts.map +1 -1
- package/dist/src/functions/get-workflow-meta-by-id.function.js +2 -3
- package/dist/src/functions/get-workflow-meta-by-id.function.js.map +1 -1
- package/dist/src/functions/get-workflow-run-history.function.d.ts +2 -2
- package/dist/src/functions/get-workflow-run-history.function.d.ts.map +1 -1
- package/dist/src/functions/get-workflow-run-history.function.js +3 -4
- package/dist/src/functions/get-workflow-run-history.function.js.map +1 -1
- package/dist/src/functions/get-workflow-run-names.function.d.ts +1 -1
- package/dist/src/functions/get-workflow-run-names.function.d.ts.map +1 -1
- package/dist/src/functions/get-workflow-run-names.function.js +3 -4
- package/dist/src/functions/get-workflow-run-names.function.js.map +1 -1
- package/dist/src/functions/get-workflow-run-steps.function.d.ts +2 -2
- package/dist/src/functions/get-workflow-run-steps.function.d.ts.map +1 -1
- package/dist/src/functions/get-workflow-run-steps.function.js +2 -3
- package/dist/src/functions/get-workflow-run-steps.function.js.map +1 -1
- package/dist/src/functions/get-workflow-run.function.d.ts +2 -2
- package/dist/src/functions/get-workflow-run.function.d.ts.map +1 -1
- package/dist/src/functions/get-workflow-run.function.js +2 -3
- package/dist/src/functions/get-workflow-run.function.js.map +1 -1
- package/dist/src/functions/get-workflow-runs.function.d.ts +2 -2
- package/dist/src/functions/get-workflow-runs.function.d.ts.map +1 -1
- package/dist/src/functions/get-workflow-runs.function.js +2 -3
- package/dist/src/functions/get-workflow-runs.function.js.map +1 -1
- package/dist/src/functions/get-workflow-version.function.d.ts +2 -2
- package/dist/src/functions/get-workflow-version.function.d.ts.map +1 -1
- package/dist/src/functions/get-workflow-version.function.js +2 -3
- package/dist/src/functions/get-workflow-version.function.js.map +1 -1
- package/dist/src/functions/install-addon.function.d.ts.map +1 -1
- package/dist/src/functions/install-addon.function.js +2 -1
- package/dist/src/functions/install-addon.function.js.map +1 -1
- package/dist/src/functions/install-openapi-addon.function.d.ts.map +1 -1
- package/dist/src/functions/install-openapi-addon.function.js +2 -1
- package/dist/src/functions/install-openapi-addon.function.js.map +1 -1
- package/dist/src/functions/oauth-connect.function.d.ts +2 -2
- package/dist/src/functions/oauth-connect.function.js +2 -2
- package/dist/src/functions/oauth-connect.function.js.map +1 -1
- package/dist/src/functions/oauth-disconnect.function.d.ts +2 -2
- package/dist/src/functions/oauth-disconnect.function.js +2 -2
- package/dist/src/functions/oauth-disconnect.function.js.map +1 -1
- package/dist/src/functions/oauth-exchange-tokens.function.d.ts +2 -2
- package/dist/src/functions/oauth-exchange-tokens.function.js +2 -2
- package/dist/src/functions/oauth-exchange-tokens.function.js.map +1 -1
- package/dist/src/functions/oauth-refresh-token.function.d.ts +2 -2
- package/dist/src/functions/oauth-refresh-token.function.js +2 -2
- package/dist/src/functions/oauth-refresh-token.function.js.map +1 -1
- package/dist/src/functions/oauth-status.function.d.ts +2 -2
- package/dist/src/functions/oauth-status.function.js +2 -2
- package/dist/src/functions/oauth-status.function.js.map +1 -1
- package/dist/src/functions/oauth-test-token.function.d.ts +2 -2
- package/dist/src/functions/oauth-test-token.function.js +2 -2
- package/dist/src/functions/oauth-test-token.function.js.map +1 -1
- package/dist/src/functions/ping.function.d.ts +2 -2
- package/dist/src/functions/ping.function.d.ts.map +1 -1
- package/dist/src/functions/ping.function.js +2 -3
- package/dist/src/functions/ping.function.js.map +1 -1
- package/dist/src/functions/read-agent-source.function.d.ts +2 -2
- package/dist/src/functions/read-agent-source.function.d.ts.map +1 -1
- package/dist/src/functions/read-agent-source.function.js +2 -3
- package/dist/src/functions/read-agent-source.function.js.map +1 -1
- package/dist/src/functions/read-function-body.function.d.ts +2 -2
- package/dist/src/functions/read-function-body.function.d.ts.map +1 -1
- package/dist/src/functions/read-function-body.function.js +2 -3
- package/dist/src/functions/read-function-body.function.js.map +1 -1
- package/dist/src/functions/read-function-source.function.d.ts +2 -2
- package/dist/src/functions/read-function-source.function.d.ts.map +1 -1
- package/dist/src/functions/read-function-source.function.js +2 -3
- package/dist/src/functions/read-function-source.function.js.map +1 -1
- package/dist/src/functions/render-email-preview.function.d.ts +1 -1
- package/dist/src/functions/render-email-preview.function.d.ts.map +1 -1
- package/dist/src/functions/render-email-preview.function.js +2 -3
- package/dist/src/functions/render-email-preview.function.js.map +1 -1
- package/dist/src/functions/run-function-tests.function.d.ts +1 -1
- package/dist/src/functions/run-function-tests.function.d.ts.map +1 -1
- package/dist/src/functions/run-function-tests.function.js +2 -3
- package/dist/src/functions/run-function-tests.function.js.map +1 -1
- package/dist/src/functions/run-security-audit.function.d.ts +3 -0
- package/dist/src/functions/run-security-audit.function.d.ts.map +1 -0
- package/dist/src/functions/run-security-audit.function.js +18 -0
- package/dist/src/functions/run-security-audit.function.js.map +1 -0
- package/dist/src/functions/update-agent-config.function.d.ts +2 -2
- package/dist/src/functions/update-agent-config.function.d.ts.map +1 -1
- package/dist/src/functions/update-agent-config.function.js +2 -3
- package/dist/src/functions/update-agent-config.function.js.map +1 -1
- package/dist/src/functions/update-dependency.function.d.ts +12 -0
- package/dist/src/functions/update-dependency.function.d.ts.map +1 -0
- package/dist/src/functions/update-dependency.function.js +62 -0
- package/dist/src/functions/update-dependency.function.js.map +1 -0
- package/dist/src/functions/update-email-template.function.d.ts +2 -2
- package/dist/src/functions/update-email-template.function.d.ts.map +1 -1
- package/dist/src/functions/update-email-template.function.js +2 -3
- package/dist/src/functions/update-email-template.function.js.map +1 -1
- package/dist/src/functions/update-function-body.function.d.ts +2 -2
- package/dist/src/functions/update-function-body.function.d.ts.map +1 -1
- package/dist/src/functions/update-function-body.function.js +2 -3
- package/dist/src/functions/update-function-body.function.js.map +1 -1
- package/dist/src/functions/update-function-config.function.d.ts +2 -2
- package/dist/src/functions/update-function-config.function.d.ts.map +1 -1
- package/dist/src/functions/update-function-config.function.js +2 -3
- package/dist/src/functions/update-function-config.function.js.map +1 -1
- package/dist/src/lib/audit-exec.d.ts +10 -0
- package/dist/src/lib/audit-exec.d.ts.map +1 -0
- package/dist/src/lib/audit-exec.js +75 -0
- package/dist/src/lib/audit-exec.js.map +1 -0
- package/dist/src/lib/find-project-root.d.ts +9 -0
- package/dist/src/lib/find-project-root.d.ts.map +1 -0
- package/dist/src/lib/find-project-root.js +21 -0
- package/dist/src/lib/find-project-root.js.map +1 -0
- package/dist/src/services/wiring.service.d.ts +1 -1
- package/dist/src/services/wiring.service.js +3 -3
- package/dist/src/services/wiring.service.test.js +1 -1
- package/dist/src/services.d.ts.map +1 -1
- package/dist/src/services.js +2 -2
- package/dist/src/services.js.map +1 -1
- package/package.json +4 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{ "$schema": "http://json-schema.org/draft-07/schema#", "type": "object", "additionalProperties": false, "properties": { "name": { "type": "string" }, "steps": { "type": "array", "items": { "$ref": "#/definitions/WorkflowStepMeta" } }, "context": { "$ref": "#/definitions/WorkflowContext" }, "dsl": { "type": "boolean" }, "expose": { "type": "boolean" }, "userFlow": { "type": "boolean" }, "actors": { "type": "array", "items": { "type": "string" } }, "pikkuFuncId": { "type": "string" }, "packageName": { "type": "string" }, "title": { "type": "string" }, "tags": { "type": "array", "items": { "type": "string" } }, "summary": { "type": "string" }, "description": { "type": "string" }, "errors": { "type": "array", "items": { "type": "string" } }, "middleware": { "type": "array", "items": { "$ref": "#/definitions/MiddlewareMetadata" } }, "permissions": { "type": "array", "items": { "$ref": "#/definitions/PermissionMetadata" } } }, "required": ["name", "pikkuFuncId", "steps"], "definitions": { "WorkflowStepMeta": { "anyOf": [{ "$ref": "#/definitions/RpcStepMeta" }, { "$ref": "#/definitions/BranchStepMeta" }, { "$ref": "#/definitions/ParallelGroupStepMeta" }, { "$ref": "#/definitions/FanoutStepMeta" }, { "$ref": "#/definitions/ReturnStepMeta" }, { "$ref": "#/definitions/InlineStepMeta" }, { "$ref": "#/definitions/SleepStepMeta" }, { "$ref": "#/definitions/CancelStepMeta" }, { "$ref": "#/definitions/SuspendStepMeta" }, { "$ref": "#/definitions/SwitchStepMeta" }, { "$ref": "#/definitions/FilterStepMeta" }, { "$ref": "#/definitions/ArrayPredicateStepMeta" }, { "$ref": "#/definitions/SetStepMeta" }], "description": "Workflow step metadata (extracted by inspector)" }, "RpcStepMeta": { "type": "object", "properties": { "type": { "type": "string", "const": "rpc", "description": "RPC form - generates queue worker" }, "stepName": { "type": "string", "description": "Cache key (stepName from workflow.do)" }, "rpcName": { "type": "string", "description": "RPC to invoke" }, "outputVar": { "type": "string", "description": "Output variable name (if assigned)" }, "inputs": { "anyOf": [{ "type": "object", "additionalProperties": { "$ref": "#/definitions/InputSource" } }, { "type": "string", "const": "passthrough" }], "description": "Input source mappings, or 'passthrough' when entire data is passed" }, "options": { "$ref": "#/definitions/WorkflowStepOptions", "description": "Step options" }, "actor": { "type": "string", "description": "User-flow actor name this step runs as ({ actor: actors.x })" }, "expectEventually": { "type": "boolean", "description": "True for workflow.expectEventually polling steps" } }, "required": ["type", "stepName", "rpcName"], "additionalProperties": false, "description": "RPC step metadata (base form)" }, "InputSource": { "anyOf": [{ "type": "object", "properties": { "from": { "type": "string", "const": "input" }, "path": { "type": "string" } }, "required": ["from", "path"], "additionalProperties": false }, { "type": "object", "properties": { "from": { "type": "string", "const": "outputVar" }, "name": { "type": "string" }, "path": { "type": "string" } }, "required": ["from", "name"], "additionalProperties": false }, { "type": "object", "properties": { "from": { "type": "string", "const": "item" }, "path": { "type": "string" } }, "required": ["from", "path"], "additionalProperties": false }, { "type": "object", "properties": { "from": { "type": "string", "const": "literal" }, "value": {} }, "required": ["from", "value"], "additionalProperties": false }, { "type": "object", "properties": { "from": { "type": "string", "const": "template" }, "parts": { "type": "array", "items": { "type": "string" } }, "expressions": { "type": "array", "items": { "$ref": "#/definitions/InputSource" } } }, "required": ["from", "parts", "expressions"], "additionalProperties": false }], "description": "Input source for step arguments in DSL workflows" }, "WorkflowStepOptions": { "type": "object", "properties": { "description": { "type": "string", "description": "Display name for logs/UI (optional, doesn't affect execution)" }, "retries": { "type": "number", "description": "Number of retry attempts for failed steps (only applies to local execution)" }, "retryDelay": { "type": ["string", "number"], "description": "Delay between retry attempts (e.g., '1s', '2s', '2min')" }, "actor": { "$ref": "#/definitions/UserFlowActor", "description": "Run this step as an actor (user flows). The RPC is sent through the actor's authenticated client over the REAL transport — never dispatched internally — so auth middleware and permissions are exercised end-to-end. The step is recorded durably like any RPC step." } }, "additionalProperties": false, "description": "Workflow step options" }, "UserFlowActor": { "type": "object", "properties": { "name": { "type": "string", "description": "Stable actor name (the key in pikku.config.json's actor registry)." }, "email": { "type": "string", "description": "The actor's user email — flows use it for invites/lookups." } }, "required": ["name", "email"], "additionalProperties": false, "description": "A user-flow actor: a synthetic user (a normal user row flagged `actor`) that workflow steps can run as. Passed to `workflow.do(step, rpc, data, { actor })` — the step then goes through the actor's authenticated client over the REAL transport (auth middleware, permissions, serialization all exercised), never through internal dispatch. Login is lazy: the first `invoke` signs the actor in and the session is cached for the actor's lifetime." }, "BranchStepMeta": { "type": "object", "properties": { "type": { "type": "string", "const": "branch" }, "branches": { "type": "array", "items": { "$ref": "#/definitions/BranchCase" }, "description": "Branches in order: first is \"if\", rest are \"else if\"" }, "elseSteps": { "type": "array", "items": { "$ref": "#/definitions/WorkflowStepMeta" }, "description": "Else branch steps (when no conditions match)" } }, "required": ["type", "branches"], "additionalProperties": false, "description": "Branch step metadata (if/else-if/else control flow)" }, "BranchCase": { "type": "object", "properties": { "condition": { "$ref": "#/definitions/Condition", "description": "Condition for this branch" }, "steps": { "type": "array", "items": { "$ref": "#/definitions/WorkflowStepMeta" }, "description": "Steps to execute when condition is true" } }, "required": ["condition", "steps"], "additionalProperties": false, "description": "A single branch in an if/else-if chain" }, "Condition": { "anyOf": [{ "$ref": "#/definitions/SimpleCondition" }, { "type": "object", "properties": { "type": { "type": "string", "const": "and" }, "conditions": { "type": "array", "items": { "$ref": "#/definitions/Condition" } } }, "required": ["type", "conditions"], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "const": "or" }, "conditions": { "type": "array", "items": { "$ref": "#/definitions/Condition" } } }, "required": ["type", "conditions"], "additionalProperties": false }], "description": "Nested condition structure supporting AND/OR operations" }, "SimpleCondition": { "type": "object", "properties": { "type": { "type": "string", "const": "simple" }, "expression": { "type": "string" } }, "required": ["type", "expression"], "additionalProperties": false, "description": "Simple condition expression (leaf node)" }, "ParallelGroupStepMeta": { "type": "object", "properties": { "type": { "type": "string", "const": "parallel" }, "children": { "type": "array", "items": { "$ref": "#/definitions/RpcStepMeta" }, "description": "Child steps to execute in parallel" } }, "required": ["type", "children"], "additionalProperties": false, "description": "Parallel group step metadata (Promise.all with multiple steps)" }, "FanoutStepMeta": { "type": "object", "properties": { "type": { "type": "string", "const": "fanout" }, "stepName": { "type": "string", "description": "Step name for this fanout" }, "sourceVar": { "type": "string", "description": "Source array variable name" }, "itemVar": { "type": "string", "description": "Iterator variable name" }, "mode": { "type": "string", "enum": ["parallel", "sequential"], "description": "Execution mode" }, "child": { "$ref": "#/definitions/RpcStepMeta", "description": "Child step to execute per iteration" }, "timeBetween": { "type": "string", "description": "Time between iterations (sequential mode only)" } }, "required": ["type", "stepName", "sourceVar", "itemVar", "mode", "child"], "additionalProperties": false, "description": "Fanout step metadata (parallel or sequential iteration)" }, "ReturnStepMeta": { "type": "object", "properties": { "type": { "type": "string", "const": "return" }, "outputs": { "type": "object", "additionalProperties": { "$ref": "#/definitions/OutputBinding" }, "description": "Output bindings" } }, "required": ["type", "outputs"], "additionalProperties": false, "description": "Return step metadata (workflow output)" }, "OutputBinding": { "anyOf": [{ "type": "object", "properties": { "from": { "type": "string", "const": "outputVar" }, "name": { "type": "string" }, "path": { "type": "string" } }, "required": ["from", "name"], "additionalProperties": false }, { "type": "object", "properties": { "from": { "type": "string", "const": "stateVar" }, "name": { "type": "string" }, "path": { "type": "string" } }, "required": ["from", "name"], "additionalProperties": false }, { "type": "object", "properties": { "from": { "type": "string", "const": "input" }, "path": { "type": "string" } }, "required": ["from", "path"], "additionalProperties": false }, { "type": "object", "properties": { "from": { "type": "string", "const": "literal" }, "value": {} }, "required": ["from", "value"], "additionalProperties": false }, { "type": "object", "properties": { "from": { "type": "string", "const": "expression" }, "expression": { "type": "string" } }, "required": ["from", "expression"], "additionalProperties": false }], "description": "Output binding for return statements in DSL workflows" }, "InlineStepMeta": { "type": "object", "properties": { "type": { "type": "string", "const": "inline", "description": "Inline form - local execution" }, "stepName": { "type": "string", "description": "Cache key (stepName from workflow.do)" }, "description": { "type": "string", "description": "Display name" }, "options": { "$ref": "#/definitions/WorkflowStepOptions", "description": "Step options" } }, "required": ["type", "stepName"], "additionalProperties": false, "description": "Inline step metadata (legacy support)" }, "SleepStepMeta": { "type": "object", "properties": { "type": { "type": "string", "const": "sleep", "description": "Sleep step" }, "stepName": { "type": "string", "description": "Cache key (stepName from workflow.sleep)" }, "duration": { "type": ["string", "number"], "description": "Sleep duration" } }, "required": ["type", "stepName", "duration"], "additionalProperties": false, "description": "Sleep step metadata" }, "CancelStepMeta": { "type": "object", "properties": { "type": { "type": "string", "const": "cancel", "description": "Cancel step" }, "reason": { "type": "string", "description": "Optional cancellation reason" } }, "required": ["type"], "additionalProperties": false, "description": "Cancel step metadata" }, "SuspendStepMeta": { "type": "object", "properties": { "type": { "type": "string", "const": "suspend" }, "reason": { "type": "string", "description": "Reason string passed to workflow.suspend() — becomes the durable step key" } }, "required": ["type", "reason"], "additionalProperties": false, "description": "Suspend step metadata (workflow.suspend())" }, "SwitchStepMeta": { "type": "object", "properties": { "type": { "type": "string", "const": "switch" }, "expression": { "type": "string", "description": "Expression being switched on" }, "cases": { "type": "array", "items": { "$ref": "#/definitions/SwitchCaseMeta" }, "description": "Case branches" }, "defaultSteps": { "type": "array", "items": { "$ref": "#/definitions/WorkflowStepMeta" }, "description": "Default case steps (optional)" } }, "required": ["type", "expression", "cases"], "additionalProperties": false, "description": "Switch step metadata (switch/case control flow)" }, "SwitchCaseMeta": { "type": "object", "properties": { "value": { "type": ["string", "number", "boolean", "null"], "description": "Case value (literal) or expression" }, "expression": { "type": "string", "description": "Case expression (for complex cases)" }, "steps": { "type": "array", "items": { "$ref": "#/definitions/WorkflowStepMeta" }, "description": "Steps to execute for this case" } }, "required": ["steps"], "additionalProperties": false, "description": "Switch case metadata" }, "FilterStepMeta": { "type": "object", "properties": { "type": { "type": "string", "const": "filter" }, "sourceVar": { "type": "string", "description": "Source array variable name" }, "itemVar": { "type": "string", "description": "Iterator variable name" }, "condition": { "$ref": "#/definitions/Condition", "description": "Filter condition" }, "outputVar": { "type": "string", "description": "Output variable name (if assigned)" } }, "required": ["type", "sourceVar", "itemVar", "condition"], "additionalProperties": false, "description": "Filter step metadata (array.filter)" }, "ArrayPredicateStepMeta": { "type": "object", "properties": { "type": { "type": "string", "const": "arrayPredicate" }, "mode": { "type": "string", "enum": ["some", "every"], "description": "Predicate mode" }, "sourceVar": { "type": "string", "description": "Source array variable name" }, "itemVar": { "type": "string", "description": "Iterator variable name" }, "condition": { "$ref": "#/definitions/Condition", "description": "Predicate condition" }, "outputVar": { "type": "string", "description": "Output variable name (if assigned)" } }, "required": ["type", "mode", "sourceVar", "itemVar", "condition"], "additionalProperties": false, "description": "Array predicate step metadata (array.some, array.every)" }, "SetStepMeta": { "type": "object", "properties": { "type": { "type": "string", "const": "set", "description": "Set step" }, "variable": { "type": "string", "description": "Variable name to set (must be in context)" }, "value": { "description": "Value to assign (literal or expression)" } }, "required": ["type", "variable", "value"], "additionalProperties": false, "description": "Set step metadata (context variable assignment)" }, "WorkflowContext": { "type": "object", "additionalProperties": { "$ref": "#/definitions/ContextVariable" }, "description": "Workflow context - state variables with defaults and types" }, "ContextVariable": { "type": "object", "properties": { "type": { "type": "string", "enum": ["string", "number", "boolean", "object", "array"], "description": "Variable type" }, "default": { "description": "Default value" }, "description": { "type": "string", "description": "Description for UI/docs" } }, "required": ["type"], "additionalProperties": false, "description": "Context variable definition (serialized from Zod schema or type inference)" }, "MiddlewareMetadata": { "anyOf": [{ "type": "object", "properties": { "type": { "type": "string", "const": "http" }, "route": { "type": "string" } }, "required": ["type", "route"], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "const": "tag" }, "tag": { "type": "string" } }, "required": ["type", "tag"], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "const": "wire" }, "name": { "type": "string" }, "inline": { "type": "boolean" } }, "required": ["type", "name"], "additionalProperties": false }], "description": "Metadata for middleware at any level\n- type: 'http' = HTTP route middleware group (references httpGroup in pikkuState)\n- type: 'tag' = Tag-based middleware group (references tagGroup in pikkuState)\n- type: 'wire' = Wire-level individual middleware" }, "PermissionMetadata": { "anyOf": [{ "type": "object", "properties": { "type": { "type": "string", "const": "http" }, "route": { "type": "string" } }, "required": ["type", "route"], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "const": "tag" }, "tag": { "type": "string" } }, "required": ["type", "tag"], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "const": "wire" }, "name": { "type": "string" }, "inline": { "type": "boolean" } }, "required": ["type", "name"], "additionalProperties": false }], "description": "Metadata for permissions at any level\n- type: 'http' = HTTP route permission group (references httpGroup in pikkuState)\n- type: 'tag' = Tag-based permission group (references tagGroup in pikkuState)\n- type: 'wire' = Wire-level individual permission" } } }
|
|
1
|
+
{ "$schema": "http://json-schema.org/draft-07/schema#", "type": "object", "additionalProperties": false, "properties": { "name": { "type": "string" }, "steps": { "type": "array", "items": { "$ref": "#/definitions/WorkflowStepMeta" } }, "context": { "$ref": "#/definitions/WorkflowContext" }, "dsl": { "type": "boolean" }, "expose": { "type": "boolean" }, "scenario": { "type": "boolean" }, "actors": { "type": "array", "items": { "type": "string" } }, "pikkuFuncId": { "type": "string" }, "packageName": { "type": "string" }, "title": { "type": "string" }, "tags": { "type": "array", "items": { "type": "string" } }, "summary": { "type": "string" }, "description": { "type": "string" }, "errors": { "type": "array", "items": { "type": "string" } }, "middleware": { "type": "array", "items": { "$ref": "#/definitions/MiddlewareMetadata" } }, "permissions": { "type": "array", "items": { "$ref": "#/definitions/PermissionMetadata" } } }, "required": ["name", "pikkuFuncId", "steps"], "definitions": { "WorkflowStepMeta": { "anyOf": [{ "$ref": "#/definitions/RpcStepMeta" }, { "$ref": "#/definitions/BranchStepMeta" }, { "$ref": "#/definitions/ParallelGroupStepMeta" }, { "$ref": "#/definitions/FanoutStepMeta" }, { "$ref": "#/definitions/ReturnStepMeta" }, { "$ref": "#/definitions/InlineStepMeta" }, { "$ref": "#/definitions/SleepStepMeta" }, { "$ref": "#/definitions/CancelStepMeta" }, { "$ref": "#/definitions/SuspendStepMeta" }, { "$ref": "#/definitions/SwitchStepMeta" }, { "$ref": "#/definitions/FilterStepMeta" }, { "$ref": "#/definitions/ArrayPredicateStepMeta" }, { "$ref": "#/definitions/SetStepMeta" }], "description": "Workflow step metadata (extracted by inspector)" }, "RpcStepMeta": { "type": "object", "properties": { "type": { "type": "string", "const": "rpc", "description": "RPC form - generates queue worker" }, "stepName": { "type": "string", "description": "Cache key (stepName from workflow.do)" }, "rpcName": { "type": "string", "description": "RPC to invoke" }, "outputVar": { "type": "string", "description": "Output variable name (if assigned)" }, "inputs": { "anyOf": [{ "type": "object", "additionalProperties": { "$ref": "#/definitions/InputSource" } }, { "type": "string", "const": "passthrough" }], "description": "Input source mappings, or 'passthrough' when entire data is passed" }, "options": { "$ref": "#/definitions/WorkflowStepOptions", "description": "Step options" }, "actor": { "type": "string", "description": "Scenario actor name this step runs as ({ actor: actors.x })" }, "expectEventually": { "type": "boolean", "description": "True for workflow.expectEventually polling steps" } }, "required": ["type", "stepName", "rpcName"], "additionalProperties": false, "description": "RPC step metadata (base form)" }, "InputSource": { "anyOf": [{ "type": "object", "properties": { "from": { "type": "string", "const": "input" }, "path": { "type": "string" } }, "required": ["from", "path"], "additionalProperties": false }, { "type": "object", "properties": { "from": { "type": "string", "const": "outputVar" }, "name": { "type": "string" }, "path": { "type": "string" } }, "required": ["from", "name"], "additionalProperties": false }, { "type": "object", "properties": { "from": { "type": "string", "const": "item" }, "path": { "type": "string" } }, "required": ["from", "path"], "additionalProperties": false }, { "type": "object", "properties": { "from": { "type": "string", "const": "literal" }, "value": {} }, "required": ["from", "value"], "additionalProperties": false }, { "type": "object", "properties": { "from": { "type": "string", "const": "template" }, "parts": { "type": "array", "items": { "type": "string" } }, "expressions": { "type": "array", "items": { "$ref": "#/definitions/InputSource" } } }, "required": ["from", "parts", "expressions"], "additionalProperties": false }], "description": "Input source for step arguments in DSL workflows" }, "WorkflowStepOptions": { "type": "object", "properties": { "description": { "type": "string", "description": "Display name for logs/UI (optional, doesn't affect execution)" }, "retries": { "type": "number", "description": "Number of retry attempts for failed steps (only applies to local execution)" }, "retryDelay": { "type": ["string", "number"], "description": "Delay between retry attempts (e.g., '1s', '2s', '2min')" }, "actor": { "$ref": "#/definitions/ScenarioActor", "description": "Run this step as an actor (scenarios). The RPC is sent through the actor's authenticated client over the REAL transport — never dispatched internally — so auth middleware and permissions are exercised end-to-end. The step is recorded durably like any RPC step." } }, "additionalProperties": false, "description": "Workflow step options" }, "ScenarioActor": { "type": "object", "properties": { "name": { "type": "string", "description": "Stable actor name (the key in pikku.config.json's actor registry)." }, "email": { "type": "string", "description": "The actor's user email — flows use it for invites/lookups." } }, "required": ["name", "email"], "additionalProperties": false, "description": "A scenario actor: a synthetic user (a normal user row flagged `actor`) that workflow steps can run as. Passed to `workflow.do(step, rpc, data, { actor })` — the step then goes through the actor's authenticated client over the REAL transport (auth middleware, permissions, serialization all exercised), never through internal dispatch. Login is lazy: the first `invoke` signs the actor in and the session is cached for the actor's lifetime." }, "BranchStepMeta": { "type": "object", "properties": { "type": { "type": "string", "const": "branch" }, "branches": { "type": "array", "items": { "$ref": "#/definitions/BranchCase" }, "description": "Branches in order: first is \"if\", rest are \"else if\"" }, "elseSteps": { "type": "array", "items": { "$ref": "#/definitions/WorkflowStepMeta" }, "description": "Else branch steps (when no conditions match)" } }, "required": ["type", "branches"], "additionalProperties": false, "description": "Branch step metadata (if/else-if/else control flow)" }, "BranchCase": { "type": "object", "properties": { "condition": { "$ref": "#/definitions/Condition", "description": "Condition for this branch" }, "steps": { "type": "array", "items": { "$ref": "#/definitions/WorkflowStepMeta" }, "description": "Steps to execute when condition is true" } }, "required": ["condition", "steps"], "additionalProperties": false, "description": "A single branch in an if/else-if chain" }, "Condition": { "anyOf": [{ "$ref": "#/definitions/SimpleCondition" }, { "type": "object", "properties": { "type": { "type": "string", "const": "and" }, "conditions": { "type": "array", "items": { "$ref": "#/definitions/Condition" } } }, "required": ["type", "conditions"], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "const": "or" }, "conditions": { "type": "array", "items": { "$ref": "#/definitions/Condition" } } }, "required": ["type", "conditions"], "additionalProperties": false }], "description": "Nested condition structure supporting AND/OR operations" }, "SimpleCondition": { "type": "object", "properties": { "type": { "type": "string", "const": "simple" }, "expression": { "type": "string" } }, "required": ["type", "expression"], "additionalProperties": false, "description": "Simple condition expression (leaf node)" }, "ParallelGroupStepMeta": { "type": "object", "properties": { "type": { "type": "string", "const": "parallel" }, "children": { "type": "array", "items": { "$ref": "#/definitions/RpcStepMeta" }, "description": "Child steps to execute in parallel" } }, "required": ["type", "children"], "additionalProperties": false, "description": "Parallel group step metadata (Promise.all with multiple steps)" }, "FanoutStepMeta": { "type": "object", "properties": { "type": { "type": "string", "const": "fanout" }, "stepName": { "type": "string", "description": "Step name for this fanout" }, "sourceVar": { "type": "string", "description": "Source array variable name" }, "itemVar": { "type": "string", "description": "Iterator variable name" }, "mode": { "type": "string", "enum": ["parallel", "sequential"], "description": "Execution mode" }, "child": { "$ref": "#/definitions/RpcStepMeta", "description": "Child step to execute per iteration" }, "timeBetween": { "type": "string", "description": "Time between iterations (sequential mode only)" } }, "required": ["type", "stepName", "sourceVar", "itemVar", "mode", "child"], "additionalProperties": false, "description": "Fanout step metadata (parallel or sequential iteration)" }, "ReturnStepMeta": { "type": "object", "properties": { "type": { "type": "string", "const": "return" }, "outputs": { "type": "object", "additionalProperties": { "$ref": "#/definitions/OutputBinding" }, "description": "Output bindings" } }, "required": ["type", "outputs"], "additionalProperties": false, "description": "Return step metadata (workflow output)" }, "OutputBinding": { "anyOf": [{ "type": "object", "properties": { "from": { "type": "string", "const": "outputVar" }, "name": { "type": "string" }, "path": { "type": "string" } }, "required": ["from", "name"], "additionalProperties": false }, { "type": "object", "properties": { "from": { "type": "string", "const": "stateVar" }, "name": { "type": "string" }, "path": { "type": "string" } }, "required": ["from", "name"], "additionalProperties": false }, { "type": "object", "properties": { "from": { "type": "string", "const": "input" }, "path": { "type": "string" } }, "required": ["from", "path"], "additionalProperties": false }, { "type": "object", "properties": { "from": { "type": "string", "const": "literal" }, "value": {} }, "required": ["from", "value"], "additionalProperties": false }, { "type": "object", "properties": { "from": { "type": "string", "const": "expression" }, "expression": { "type": "string" } }, "required": ["from", "expression"], "additionalProperties": false }], "description": "Output binding for return statements in DSL workflows" }, "InlineStepMeta": { "type": "object", "properties": { "type": { "type": "string", "const": "inline", "description": "Inline form - local execution" }, "stepName": { "type": "string", "description": "Cache key (stepName from workflow.do)" }, "description": { "type": "string", "description": "Display name" }, "options": { "$ref": "#/definitions/WorkflowStepOptions", "description": "Step options" } }, "required": ["type", "stepName"], "additionalProperties": false, "description": "Inline step metadata (legacy support)" }, "SleepStepMeta": { "type": "object", "properties": { "type": { "type": "string", "const": "sleep", "description": "Sleep step" }, "stepName": { "type": "string", "description": "Cache key (stepName from workflow.sleep)" }, "duration": { "type": ["string", "number"], "description": "Sleep duration" } }, "required": ["type", "stepName", "duration"], "additionalProperties": false, "description": "Sleep step metadata" }, "CancelStepMeta": { "type": "object", "properties": { "type": { "type": "string", "const": "cancel", "description": "Cancel step" }, "reason": { "type": "string", "description": "Optional cancellation reason" } }, "required": ["type"], "additionalProperties": false, "description": "Cancel step metadata" }, "SuspendStepMeta": { "type": "object", "properties": { "type": { "type": "string", "const": "suspend" }, "reason": { "type": "string", "description": "Reason string passed to workflow.suspend() — becomes the durable step key" } }, "required": ["type", "reason"], "additionalProperties": false, "description": "Suspend step metadata (workflow.suspend())" }, "SwitchStepMeta": { "type": "object", "properties": { "type": { "type": "string", "const": "switch" }, "expression": { "type": "string", "description": "Expression being switched on" }, "cases": { "type": "array", "items": { "$ref": "#/definitions/SwitchCaseMeta" }, "description": "Case branches" }, "defaultSteps": { "type": "array", "items": { "$ref": "#/definitions/WorkflowStepMeta" }, "description": "Default case steps (optional)" } }, "required": ["type", "expression", "cases"], "additionalProperties": false, "description": "Switch step metadata (switch/case control flow)" }, "SwitchCaseMeta": { "type": "object", "properties": { "value": { "type": ["string", "number", "boolean", "null"], "description": "Case value (literal) or expression" }, "expression": { "type": "string", "description": "Case expression (for complex cases)" }, "steps": { "type": "array", "items": { "$ref": "#/definitions/WorkflowStepMeta" }, "description": "Steps to execute for this case" } }, "required": ["steps"], "additionalProperties": false, "description": "Switch case metadata" }, "FilterStepMeta": { "type": "object", "properties": { "type": { "type": "string", "const": "filter" }, "sourceVar": { "type": "string", "description": "Source array variable name" }, "itemVar": { "type": "string", "description": "Iterator variable name" }, "condition": { "$ref": "#/definitions/Condition", "description": "Filter condition" }, "outputVar": { "type": "string", "description": "Output variable name (if assigned)" } }, "required": ["type", "sourceVar", "itemVar", "condition"], "additionalProperties": false, "description": "Filter step metadata (array.filter)" }, "ArrayPredicateStepMeta": { "type": "object", "properties": { "type": { "type": "string", "const": "arrayPredicate" }, "mode": { "type": "string", "enum": ["some", "every"], "description": "Predicate mode" }, "sourceVar": { "type": "string", "description": "Source array variable name" }, "itemVar": { "type": "string", "description": "Iterator variable name" }, "condition": { "$ref": "#/definitions/Condition", "description": "Predicate condition" }, "outputVar": { "type": "string", "description": "Output variable name (if assigned)" } }, "required": ["type", "mode", "sourceVar", "itemVar", "condition"], "additionalProperties": false, "description": "Array predicate step metadata (array.some, array.every)" }, "SetStepMeta": { "type": "object", "properties": { "type": { "type": "string", "const": "set", "description": "Set step" }, "variable": { "type": "string", "description": "Variable name to set (must be in context)" }, "value": { "description": "Value to assign (literal or expression)" } }, "required": ["type", "variable", "value"], "additionalProperties": false, "description": "Set step metadata (context variable assignment)" }, "WorkflowContext": { "type": "object", "additionalProperties": { "$ref": "#/definitions/ContextVariable" }, "description": "Workflow context - state variables with defaults and types" }, "ContextVariable": { "type": "object", "properties": { "type": { "type": "string", "enum": ["string", "number", "boolean", "object", "array"], "description": "Variable type" }, "default": { "description": "Default value" }, "description": { "type": "string", "description": "Description for UI/docs" } }, "required": ["type"], "additionalProperties": false, "description": "Context variable definition (serialized from Zod schema or type inference)" }, "MiddlewareMetadata": { "anyOf": [{ "type": "object", "properties": { "type": { "type": "string", "const": "http" }, "route": { "type": "string" } }, "required": ["type", "route"], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "const": "tag" }, "tag": { "type": "string" } }, "required": ["type", "tag"], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "const": "wire" }, "name": { "type": "string" }, "inline": { "type": "boolean" } }, "required": ["type", "name"], "additionalProperties": false }], "description": "Metadata for middleware at any level\n- type: 'http' = HTTP route middleware group (references httpGroup in pikkuState)\n- type: 'tag' = Tag-based middleware group (references tagGroup in pikkuState)\n- type: 'wire' = Wire-level individual middleware" }, "PermissionMetadata": { "anyOf": [{ "type": "object", "properties": { "type": { "type": "string", "const": "http" }, "route": { "type": "string" } }, "required": ["type", "route"], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "const": "tag" }, "tag": { "type": "string" } }, "required": ["type", "tag"], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "const": "wire" }, "name": { "type": "string" }, "inline": { "type": "boolean" } }, "required": ["type", "name"], "additionalProperties": false }], "description": "Metadata for permissions at any level\n- type: 'http' = HTTP route permission group (references httpGroup in pikkuState)\n- type: 'tag' = Tag-based permission group (references tagGroup in pikkuState)\n- type: 'wire' = Wire-level individual permission" } } }
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{ "$schema": "http://json-schema.org/draft-07/schema#", "type": "object", "properties": { "schemaVersion": { "type": "number" }, "tool": { "type": "string" }, "generatedAt": { "type": "string" }, "note": { "type": "string" }, "issues": { "type": "array", "items": { "$ref": "#/definitions/SecurityAuditIssue" } }, "updates": { "type": "array", "items": { "$ref": "#/definitions/SecurityAuditUpdate" } }, "summary": { "$ref": "#/definitions/SecurityAuditSummary" } }, "required": ["schemaVersion", "tool", "generatedAt", "issues", "updates", "summary"], "additionalProperties": false, "definitions": { "SecurityAuditIssue": { "type": "object", "properties": { "package": { "type": "string" }, "severity": { "$ref": "#/definitions/SecuritySeverity" }, "title": { "type": "string" }, "advisoryId": { "type": "string" }, "url": { "type": "string" }, "vulnerableVersions": { "type": "string" }, "cwe": { "type": "array", "items": { "type": "string" } }, "cvssScore": { "type": ["number", "null"] }, "recommendedVersion": { "type": ["string", "null"] } }, "required": ["package", "severity", "title", "advisoryId", "url", "vulnerableVersions", "cwe", "cvssScore", "recommendedVersion"], "additionalProperties": false }, "SecuritySeverity": { "type": "string", "enum": ["critical", "high", "moderate", "low", "info"], "description": "Dependency security audit artifact — the shape of `.pikku/audit.json` written by `pikku audit`. Canonical home for the type shared by the CLI (writer), the console addon (reader), and the console UI (renderer)." }, "SecurityAuditUpdate": { "type": "object", "properties": { "package": { "type": "string" }, "current": { "type": "string" }, "latest": { "type": "string" }, "level": { "$ref": "#/definitions/SecurityUpdateLevel" } }, "required": ["package", "current", "latest", "level"], "additionalProperties": false }, "SecurityUpdateLevel": { "type": "string", "enum": ["major", "minor", "patch", "unknown"] }, "SecurityAuditSummary": { "type": "object", "properties": { "totalIssues": { "type": "number" }, "critical": { "type": "number" }, "high": { "type": "number" }, "moderate": { "type": "number" }, "low": { "type": "number" }, "totalUpdates": { "type": "number" }, "major": { "type": "number" }, "minor": { "type": "number" }, "patch": { "type": "number" } }, "required": ["totalIssues", "critical", "high", "moderate", "low", "totalUpdates", "major", "minor", "patch"], "additionalProperties": false } } }
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{ "$schema": "http://json-schema.org/draft-07/schema#", "type": "object", "properties": { "package": { "type": "string" }, "version": { "type": "string" } }, "required": ["package", "version"], "additionalProperties": false, "definitions": {} }
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* This file was generated by @pikku/cli@0.12.
|
|
2
|
+
* This file was generated by @pikku/cli@0.12.69
|
|
3
3
|
*/
|
|
4
4
|
export { wireVariable } from '@pikku/core/variable';
|
|
5
5
|
export type { CoreVariable, VariableDefinitionMeta, VariableDefinitionsMeta } from '@pikku/core/variable';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* This file was generated by @pikku/cli@0.12.
|
|
2
|
+
* This file was generated by @pikku/cli@0.12.69
|
|
3
3
|
*/
|
|
4
4
|
import { WorkflowCancelledException } from '@pikku/core/workflow';
|
|
5
5
|
import { template } from '@pikku/core/workflow';
|
|
@@ -48,13 +48,13 @@ export declare function pikkuWorkflowFunc<In, Out = unknown>(func: PikkuFunction
|
|
|
48
48
|
export declare function pikkuWorkflowComplexFunc<InputSchema extends StandardSchemaV1 | undefined = undefined, OutputSchema extends StandardSchemaV1 | undefined = undefined>(config: PikkuWorkflowConfigWithSchema<InputSchema, OutputSchema>): PikkuFunctionConfig<InputSchema extends StandardSchemaV1 ? InferSchemaOutput<InputSchema> : unknown, OutputSchema extends StandardSchemaV1 ? InferSchemaOutput<OutputSchema> : unknown, 'workflow', PikkuFunctionWorkflow<InputSchema extends StandardSchemaV1 ? InferSchemaOutput<InputSchema> : unknown, OutputSchema extends StandardSchemaV1 ? InferSchemaOutput<OutputSchema> : unknown>, InputSchema, OutputSchema>;
|
|
49
49
|
export declare function pikkuWorkflowComplexFunc<In, Out = unknown>(func: PikkuFunctionWorkflow<In, Out> | PikkuFunctionConfig<In, Out, 'workflow', PikkuFunctionWorkflow<In, Out>>): PikkuFunctionConfig<In, Out, 'workflow'>;
|
|
50
50
|
/**
|
|
51
|
-
* A
|
|
51
|
+
* A scenario: a complex workflow that drives the app the way users do.
|
|
52
52
|
* Steps run as actors over the REAL transport — `workflow.do(step, rpc,
|
|
53
53
|
* data, { actor: actors.yasser })` — so flows double as e2e tests and
|
|
54
54
|
* staged/production health checks (no state reset; scope what you create).
|
|
55
55
|
*/
|
|
56
|
-
export declare function
|
|
57
|
-
export declare function
|
|
56
|
+
export declare function pikkuScenario<InputSchema extends StandardSchemaV1 | undefined = undefined, OutputSchema extends StandardSchemaV1 | undefined = undefined>(config: PikkuWorkflowConfigWithSchema<InputSchema, OutputSchema>): PikkuFunctionConfig<InputSchema extends StandardSchemaV1 ? InferSchemaOutput<InputSchema> : unknown, OutputSchema extends StandardSchemaV1 ? InferSchemaOutput<OutputSchema> : unknown, 'workflow', PikkuFunctionWorkflow<InputSchema extends StandardSchemaV1 ? InferSchemaOutput<InputSchema> : unknown, OutputSchema extends StandardSchemaV1 ? InferSchemaOutput<OutputSchema> : unknown>, InputSchema, OutputSchema>;
|
|
57
|
+
export declare function pikkuScenario<In, Out = unknown>(func: PikkuFunctionWorkflow<In, Out> | PikkuFunctionConfig<In, Out, 'workflow', PikkuFunctionWorkflow<In, Out>>): PikkuFunctionConfig<In, Out, 'workflow'>;
|
|
58
58
|
type TypedRef<T> = {
|
|
59
59
|
$ref: string;
|
|
60
60
|
path?: string;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* This file was generated by @pikku/cli@0.12.
|
|
2
|
+
* This file was generated by @pikku/cli@0.12.69
|
|
3
3
|
*/
|
|
4
4
|
import { WorkflowCancelledException } from '@pikku/core/workflow';
|
|
5
5
|
import { template } from '@pikku/core/workflow';
|
|
@@ -12,7 +12,7 @@ export function pikkuWorkflowFunc(func) {
|
|
|
12
12
|
export function pikkuWorkflowComplexFunc(func) {
|
|
13
13
|
return typeof func === 'function' ? { func } : func;
|
|
14
14
|
}
|
|
15
|
-
export function
|
|
15
|
+
export function pikkuScenario(func) {
|
|
16
16
|
return typeof func === 'function' ? { func } : func;
|
|
17
17
|
}
|
|
18
18
|
export function pikkuWorkflowGraph(config) {
|
|
@@ -6,19 +6,16 @@ export interface AgentCredentialRequirement {
|
|
|
6
6
|
}
|
|
7
7
|
export declare const agentCredentialCheck: import("#pikku").PikkuFunctionConfig<{
|
|
8
8
|
agentName: string;
|
|
9
|
-
userId?: string;
|
|
10
9
|
}, {
|
|
11
10
|
requirements: AgentCredentialRequirement[];
|
|
12
11
|
allConnected: boolean;
|
|
13
|
-
}, "rpc" | "session", import("#pikku").
|
|
12
|
+
}, "rpc" | "session", import("#pikku").PikkuFunction<{
|
|
14
13
|
agentName: string;
|
|
15
|
-
userId?: string;
|
|
16
14
|
}, {
|
|
17
15
|
requirements: AgentCredentialRequirement[];
|
|
18
16
|
allConnected: boolean;
|
|
19
|
-
}, "rpc" | "session", import("#pikku").Services> | import("#pikku").
|
|
17
|
+
}, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunctionSessionless<{
|
|
20
18
|
agentName: string;
|
|
21
|
-
userId?: string;
|
|
22
19
|
}, {
|
|
23
20
|
requirements: AgentCredentialRequirement[];
|
|
24
21
|
allConnected: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-credential-check.function.d.ts","sourceRoot":"","sources":["../../../src/functions/agent-credential-check.function.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,0BAA0B;IACzC,cAAc,EAAE,MAAM,CAAA;IACtB,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,EAAE,MAAM,CAAA;IACtB,SAAS,EAAE,OAAO,CAAA;CACnB;AAED,eAAO,MAAM,oBAAoB;eAClB,MAAM
|
|
1
|
+
{"version":3,"file":"agent-credential-check.function.d.ts","sourceRoot":"","sources":["../../../src/functions/agent-credential-check.function.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,0BAA0B;IACzC,cAAc,EAAE,MAAM,CAAA;IACtB,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,EAAE,MAAM,CAAA;IACtB,SAAS,EAAE,OAAO,CAAA;CACnB;AAED,eAAO,MAAM,oBAAoB;eAClB,MAAM;;kBACH,0BAA0B,EAAE;kBAAgB,OAAO;;eADtD,MAAM;;kBACH,0BAA0B,EAAE;kBAAgB,OAAO;;eADtD,MAAM;;kBACH,0BAA0B,EAAE;kBAAgB,OAAO;uEA8DnE,CAAA"}
|
|
@@ -1,10 +1,13 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { pikkuFunc } from '#pikku';
|
|
2
2
|
import { pikkuState } from '@pikku/core/internal';
|
|
3
|
-
export const agentCredentialCheck =
|
|
3
|
+
export const agentCredentialCheck = pikkuFunc({
|
|
4
4
|
title: 'Agent Credential Check',
|
|
5
|
-
description: 'Checks which OAuth credentials an agent needs and whether the user has connected them.',
|
|
5
|
+
description: 'Checks which OAuth credentials an agent needs and whether the authenticated user has connected them.',
|
|
6
6
|
expose: true,
|
|
7
|
-
func: async ({ credentialService, wiringService }, { agentName,
|
|
7
|
+
func: async ({ credentialService, wiringService }, { agentName }, { session }) => {
|
|
8
|
+
// Scope to the caller's own session — never accept an arbitrary userId from
|
|
9
|
+
// input, which would let a caller probe another user's connected credentials.
|
|
10
|
+
const userId = session?.userId;
|
|
8
11
|
const allMeta = await wiringService.readAllMeta();
|
|
9
12
|
const agentMeta = allMeta.agentsMeta?.[agentName];
|
|
10
13
|
if (!agentMeta?.tools?.length) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-credential-check.function.js","sourceRoot":"","sources":["../../../src/functions/agent-credential-check.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"agent-credential-check.function.js","sourceRoot":"","sources":["../../../src/functions/agent-credential-check.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AASjD,MAAM,CAAC,MAAM,oBAAoB,GAAG,SAAS,CAG3C;IACA,KAAK,EAAE,wBAAwB;IAC/B,WAAW,EACT,sGAAsG;IACxG,MAAM,EAAE,IAAI;IACZ,IAAI,EAAE,KAAK,EACT,EAAE,iBAAiB,EAAE,aAAa,EAAE,EACpC,EAAE,SAAS,EAAE,EACb,EAAE,OAAO,EAAE,EACX,EAAE;QACF,4EAA4E;QAC5E,8EAA8E;QAC9E,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,CAAA;QAC9B,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,WAAW,EAAE,CAAA;QACjD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,SAAS,CAAC,CAAA;QACjD,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;YAC9B,OAAO,EAAE,YAAY,EAAE,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAA;QACjD,CAAC;QAED,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAA;QACrD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;QAC9B,MAAM,YAAY,GAAiC,EAAE,CAAA;QAErD,KAAK,MAAM,QAAQ,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;YACvC,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;YACxC,IAAI,UAAU,KAAK,CAAC,CAAC;gBAAE,SAAQ;YAE/B,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,UAAU,CAAC,CAAA;YACnD,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;YACvC,IAAI,CAAC,SAAS;gBAAE,SAAQ;YAExB,MAAM,SAAS,GAAG,UAAU,CAC1B,SAAS,CAAC,OAAO,EACjB,SAAS,EACT,iBAAiB,CAClB,CAAA;YACD,IAAI,CAAC,SAAS;gBAAE,SAAQ;YAExB,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CACvC,SAAgC,CACjC,EAAE,CAAC;gBACF,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC3D,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;oBACd,MAAM,SAAS,GAAG,iBAAiB;wBACjC,CAAC,CAAC,MAAM,iBAAiB,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC;wBAC3C,CAAC,CAAC,KAAK,CAAA;oBACT,YAAY,CAAC,IAAI,CAAC;wBAChB,cAAc,EAAE,IAAI;wBACpB,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,IAAI;wBACrC,cAAc,EAAE,SAAS;wBACzB,SAAS;qBACV,CAAC,CAAA;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO;YACL,YAAY;YACZ,YAAY,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;SACrD,CAAA;IACH,CAAC;CACF,CAAC,CAAA"}
|
|
@@ -3,12 +3,12 @@ export declare const credentialDelete: import("#pikku").PikkuFunctionConfig<{
|
|
|
3
3
|
userId?: string;
|
|
4
4
|
}, {
|
|
5
5
|
success: boolean;
|
|
6
|
-
}, "rpc" | "session", import("#pikku").
|
|
6
|
+
}, "rpc" | "session", import("#pikku").PikkuFunction<{
|
|
7
7
|
name: string;
|
|
8
8
|
userId?: string;
|
|
9
9
|
}, {
|
|
10
10
|
success: boolean;
|
|
11
|
-
}, "rpc" | "session", import("#pikku").Services> | import("#pikku").
|
|
11
|
+
}, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunctionSessionless<{
|
|
12
12
|
name: string;
|
|
13
13
|
userId?: string;
|
|
14
14
|
}, {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { MissingServiceError } from '@pikku/core/errors';
|
|
2
|
-
import {
|
|
3
|
-
export const credentialDelete =
|
|
2
|
+
import { pikkuFunc } from '#pikku';
|
|
3
|
+
export const credentialDelete = pikkuFunc({
|
|
4
4
|
title: 'Delete Credential',
|
|
5
5
|
description: 'Deletes a credential, optionally scoped to a user.',
|
|
6
6
|
expose: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credential-delete.function.js","sourceRoot":"","sources":["../../../src/functions/credential-delete.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"credential-delete.function.js","sourceRoot":"","sources":["../../../src/functions/credential-delete.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAElC,MAAM,CAAC,MAAM,gBAAgB,GAAG,SAAS,CAGvC;IACA,KAAK,EAAE,mBAAmB;IAC1B,WAAW,EAAE,oDAAoD;IACjE,MAAM,EAAE,IAAI;IACZ,IAAI,EAAE,KAAK,EAAE,EAAE,iBAAiB,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;QACtD,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,MAAM,IAAI,mBAAmB,CAAC,qCAAqC,CAAC,CAAA;QACtE,CAAC;QACD,MAAM,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAC5C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;IAC1B,CAAC;CACF,CAAC,CAAA"}
|
|
@@ -3,12 +3,12 @@ export declare const credentialGet: import("#pikku").PikkuFunctionConfig<{
|
|
|
3
3
|
userId?: string;
|
|
4
4
|
}, {
|
|
5
5
|
value: unknown;
|
|
6
|
-
}, "rpc" | "session", import("#pikku").
|
|
6
|
+
}, "rpc" | "session", import("#pikku").PikkuFunction<{
|
|
7
7
|
name: string;
|
|
8
8
|
userId?: string;
|
|
9
9
|
}, {
|
|
10
10
|
value: unknown;
|
|
11
|
-
}, "rpc" | "session", import("#pikku").Services> | import("#pikku").
|
|
11
|
+
}, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunctionSessionless<{
|
|
12
12
|
name: string;
|
|
13
13
|
userId?: string;
|
|
14
14
|
}, {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { MissingServiceError } from '@pikku/core/errors';
|
|
2
|
-
import {
|
|
3
|
-
export const credentialGet =
|
|
2
|
+
import { pikkuFunc } from '#pikku';
|
|
3
|
+
export const credentialGet = pikkuFunc({
|
|
4
4
|
title: 'Get Credential',
|
|
5
5
|
description: 'Retrieves a credential value, optionally scoped to a user.',
|
|
6
6
|
expose: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credential-get.function.js","sourceRoot":"","sources":["../../../src/functions/credential-get.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"credential-get.function.js","sourceRoot":"","sources":["../../../src/functions/credential-get.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAElC,MAAM,CAAC,MAAM,aAAa,GAAG,SAAS,CAGpC;IACA,KAAK,EAAE,gBAAgB;IACvB,WAAW,EAAE,4DAA4D;IACzE,MAAM,EAAE,IAAI;IACZ,IAAI,EAAE,KAAK,EAAE,EAAE,iBAAiB,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;QACtD,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,MAAM,IAAI,mBAAmB,CAAC,qCAAqC,CAAC,CAAA;QACtE,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,iBAAiB,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QACvD,OAAO,EAAE,KAAK,EAAE,CAAA;IAClB,CAAC;CACF,CAAC,CAAA"}
|
|
@@ -4,9 +4,9 @@ export type CredentialUserEntry = {
|
|
|
4
4
|
};
|
|
5
5
|
export declare const credentialListUsers: import("#pikku").PikkuFunctionConfig<null, {
|
|
6
6
|
users: CredentialUserEntry[];
|
|
7
|
-
}, "rpc" | "session", import("#pikku").
|
|
7
|
+
}, "rpc" | "session", import("#pikku").PikkuFunction<null, {
|
|
8
8
|
users: CredentialUserEntry[];
|
|
9
|
-
}, "rpc" | "session", import("#pikku").Services> | import("#pikku").
|
|
9
|
+
}, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunctionSessionless<null, {
|
|
10
10
|
users: CredentialUserEntry[];
|
|
11
11
|
}, "rpc" | "session", import("#pikku").Services>, undefined, undefined>;
|
|
12
12
|
//# sourceMappingURL=credential-list-users.function.d.ts.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export const credentialListUsers =
|
|
1
|
+
import { pikkuFunc } from '#pikku';
|
|
2
|
+
export const credentialListUsers = pikkuFunc({
|
|
3
3
|
title: 'List Credential Users',
|
|
4
4
|
description: 'Lists all users and their credential status for each declared credential.',
|
|
5
5
|
expose: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credential-list-users.function.js","sourceRoot":"","sources":["../../../src/functions/credential-list-users.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"credential-list-users.function.js","sourceRoot":"","sources":["../../../src/functions/credential-list-users.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAOlC,MAAM,CAAC,MAAM,mBAAmB,GAAG,SAAS,CAG1C;IACA,KAAK,EAAE,uBAAuB;IAC9B,WAAW,EACT,2EAA2E;IAC7E,MAAM,EAAE,IAAI;IACZ,IAAI,EAAE,KAAK,EAAE,EAAE,iBAAiB,EAAE,WAAW,EAAE,EAAE,EAAE;QACjD,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,CAAA;QACtB,CAAC;QAED,MAAM,eAAe,GAAG,MAAM,WAAW,CAAC,kBAAkB,EAAE,CAAA;QAC9D,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;QACpD,MAAM,UAAU,GAAG,MAAM,iBAAiB,CAAC,WAAW,EAAE,CAAA;QAExD,MAAM,KAAK,GAA0B,EAAE,CAAA;QACvC,KAAK,MAAM,MAAM,IAAI,UAAU,EAAE,CAAC;YAChC,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;YACxD,MAAM,WAAW,GAA4B,EAAE,CAAA;YAC/C,KAAK,MAAM,IAAI,IAAI,eAAe,EAAE,CAAC;gBACnC,WAAW,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,SAAS,CAAA;YACvC,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAA;QACrC,CAAC;QAED,OAAO,EAAE,KAAK,EAAE,CAAA;IAClB,CAAC;CACF,CAAC,CAAA"}
|
|
@@ -4,13 +4,13 @@ export declare const credentialSet: import("#pikku").PikkuFunctionConfig<{
|
|
|
4
4
|
userId?: string;
|
|
5
5
|
}, {
|
|
6
6
|
success: boolean;
|
|
7
|
-
}, "rpc" | "session", import("#pikku").
|
|
7
|
+
}, "rpc" | "session", import("#pikku").PikkuFunction<{
|
|
8
8
|
name: string;
|
|
9
9
|
value: unknown;
|
|
10
10
|
userId?: string;
|
|
11
11
|
}, {
|
|
12
12
|
success: boolean;
|
|
13
|
-
}, "rpc" | "session", import("#pikku").Services> | import("#pikku").
|
|
13
|
+
}, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunctionSessionless<{
|
|
14
14
|
name: string;
|
|
15
15
|
value: unknown;
|
|
16
16
|
userId?: string;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { MissingServiceError } from '@pikku/core/errors';
|
|
2
|
-
import {
|
|
3
|
-
export const credentialSet =
|
|
2
|
+
import { pikkuFunc } from '#pikku';
|
|
3
|
+
export const credentialSet = pikkuFunc({
|
|
4
4
|
title: 'Set Credential',
|
|
5
5
|
description: 'Stores a credential value, optionally scoped to a user.',
|
|
6
6
|
expose: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credential-set.function.js","sourceRoot":"","sources":["../../../src/functions/credential-set.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"credential-set.function.js","sourceRoot":"","sources":["../../../src/functions/credential-set.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAElC,MAAM,CAAC,MAAM,aAAa,GAAG,SAAS,CAGpC;IACA,KAAK,EAAE,gBAAgB;IACvB,WAAW,EAAE,yDAAyD;IACtE,MAAM,EAAE,IAAI;IACZ,IAAI,EAAE,KAAK,EAAE,EAAE,iBAAiB,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE;QAC7D,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,MAAM,IAAI,mBAAmB,CAAC,qCAAqC,CAAC,CAAA;QACtE,CAAC;QACD,MAAM,iBAAiB,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAAA;QAChD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;IAC1B,CAAC;CACF,CAAC,CAAA"}
|
|
@@ -3,12 +3,12 @@ export declare const credentialStatus: import("#pikku").PikkuFunctionConfig<{
|
|
|
3
3
|
userId?: string;
|
|
4
4
|
}, {
|
|
5
5
|
statuses: Record<string, boolean>;
|
|
6
|
-
}, "rpc" | "session", import("#pikku").
|
|
6
|
+
}, "rpc" | "session", import("#pikku").PikkuFunction<{
|
|
7
7
|
names: string[];
|
|
8
8
|
userId?: string;
|
|
9
9
|
}, {
|
|
10
10
|
statuses: Record<string, boolean>;
|
|
11
|
-
}, "rpc" | "session", import("#pikku").Services> | import("#pikku").
|
|
11
|
+
}, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunctionSessionless<{
|
|
12
12
|
names: string[];
|
|
13
13
|
userId?: string;
|
|
14
14
|
}, {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { MissingServiceError } from '@pikku/core/errors';
|
|
2
|
-
import {
|
|
3
|
-
export const credentialStatus =
|
|
2
|
+
import { pikkuFunc } from '#pikku';
|
|
3
|
+
export const credentialStatus = pikkuFunc({
|
|
4
4
|
title: 'Credential Status',
|
|
5
5
|
description: 'Checks which of the given credential names are configured. Optionally scoped to a user.',
|
|
6
6
|
expose: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credential-status.function.js","sourceRoot":"","sources":["../../../src/functions/credential-status.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"credential-status.function.js","sourceRoot":"","sources":["../../../src/functions/credential-status.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAElC,MAAM,CAAC,MAAM,gBAAgB,GAAG,SAAS,CAGvC;IACA,KAAK,EAAE,mBAAmB;IAC1B,WAAW,EACT,yFAAyF;IAC3F,MAAM,EAAE,IAAI;IACZ,IAAI,EAAE,KAAK,EAAE,EAAE,iBAAiB,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE;QACvD,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,MAAM,IAAI,mBAAmB,CAAC,qCAAqC,CAAC,CAAA;QACtE,CAAC;QACD,MAAM,QAAQ,GAA4B,EAAE,CAAA;QAC5C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,iBAAiB,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAC5D,CAAC;QACD,OAAO,EAAE,QAAQ,EAAE,CAAA;IACrB,CAAC;CACF,CAAC,CAAA"}
|
|
@@ -2,11 +2,11 @@ export declare const credentialUsers: import("#pikku").PikkuFunctionConfig<{
|
|
|
2
2
|
name: string;
|
|
3
3
|
}, {
|
|
4
4
|
userIds: string[];
|
|
5
|
-
}, "rpc" | "session", import("#pikku").
|
|
5
|
+
}, "rpc" | "session", import("#pikku").PikkuFunction<{
|
|
6
6
|
name: string;
|
|
7
7
|
}, {
|
|
8
8
|
userIds: string[];
|
|
9
|
-
}, "rpc" | "session", import("#pikku").Services> | import("#pikku").
|
|
9
|
+
}, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunctionSessionless<{
|
|
10
10
|
name: string;
|
|
11
11
|
}, {
|
|
12
12
|
userIds: string[];
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { MissingServiceError } from '@pikku/core/errors';
|
|
2
|
-
import {
|
|
3
|
-
export const credentialUsers =
|
|
2
|
+
import { pikkuFunc } from '#pikku';
|
|
3
|
+
export const credentialUsers = pikkuFunc({
|
|
4
4
|
title: 'Credential Users',
|
|
5
5
|
description: 'Lists all user IDs that have a specific credential configured.',
|
|
6
6
|
expose: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credential-users.function.js","sourceRoot":"","sources":["../../../src/functions/credential-users.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"credential-users.function.js","sourceRoot":"","sources":["../../../src/functions/credential-users.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAElC,MAAM,CAAC,MAAM,eAAe,GAAG,SAAS,CAGtC;IACA,KAAK,EAAE,kBAAkB;IACzB,WAAW,EAAE,gEAAgE;IAC7E,MAAM,EAAE,IAAI;IACZ,IAAI,EAAE,KAAK,EAAE,EAAE,iBAAiB,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;QAC9C,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,MAAM,IAAI,mBAAmB,CAAC,qCAAqC,CAAC,CAAA;QACtE,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAA;QACpE,OAAO,EAAE,OAAO,EAAE,CAAA;IACpB,CAAC;CACF,CAAC,CAAA"}
|
|
@@ -2,11 +2,11 @@ export declare const deleteAgentThread: import("#pikku").PikkuFunctionConfig<{
|
|
|
2
2
|
threadId: string;
|
|
3
3
|
}, {
|
|
4
4
|
deleted: boolean;
|
|
5
|
-
}, "rpc" | "session", import("#pikku").
|
|
5
|
+
}, "rpc" | "session", import("#pikku").PikkuFunction<{
|
|
6
6
|
threadId: string;
|
|
7
7
|
}, {
|
|
8
8
|
deleted: boolean;
|
|
9
|
-
}, "rpc" | "session", import("#pikku").Services> | import("#pikku").
|
|
9
|
+
}, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunctionSessionless<{
|
|
10
10
|
threadId: string;
|
|
11
11
|
}, {
|
|
12
12
|
deleted: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete-agent-thread.function.d.ts","sourceRoot":"","sources":["../../../src/functions/delete-agent-thread.function.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,iBAAiB;cAChB,MAAM;;aACP,OAAO;;cADN,MAAM;;aACP,OAAO;;cADN,MAAM;;aACP,OAAO;
|
|
1
|
+
{"version":3,"file":"delete-agent-thread.function.d.ts","sourceRoot":"","sources":["../../../src/functions/delete-agent-thread.function.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,iBAAiB;cAChB,MAAM;;aACP,OAAO;;cADN,MAAM;;aACP,OAAO;;cADN,MAAM;;aACP,OAAO;uEAYlB,CAAA"}
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import { MissingServiceError } from '@pikku/core/errors';
|
|
2
|
-
import {
|
|
3
|
-
export const deleteAgentThread =
|
|
2
|
+
import { pikkuFunc } from '#pikku';
|
|
3
|
+
export const deleteAgentThread = pikkuFunc({
|
|
4
4
|
title: 'Delete Agent Thread',
|
|
5
5
|
description: 'Deletes an AI agent thread and all its associated messages and runs via cascade.',
|
|
6
6
|
expose: true,
|
|
7
|
-
auth: false,
|
|
8
7
|
func: async ({ agentRunService }, input) => {
|
|
9
8
|
if (!agentRunService)
|
|
10
9
|
throw new MissingServiceError('agentRunService is not available');
|