@pikku/core 0.12.107 → 0.12.111
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 +344 -0
- package/dist/analytics/analytics.d.ts +6 -0
- package/dist/analytics/analytics.js +58 -0
- package/dist/analytics/analytics.types.d.ts +156 -0
- package/dist/analytics/analytics.types.js +1 -0
- package/dist/analytics/anonymous-analytics-identity.d.ts +23 -0
- package/dist/analytics/anonymous-analytics-identity.js +27 -0
- package/dist/analytics/compose-analytics-identity.d.ts +14 -0
- package/dist/analytics/compose-analytics-identity.js +33 -0
- package/dist/analytics/cookie-analytics-identity.d.ts +24 -0
- package/dist/analytics/cookie-analytics-identity.js +37 -0
- package/dist/analytics/define-analytics-events.d.ts +22 -0
- package/dist/analytics/define-analytics-events.js +9 -0
- package/dist/analytics/fan-out-analytics.d.ts +15 -0
- package/dist/analytics/fan-out-analytics.js +36 -0
- package/dist/analytics/index.d.ts +13 -0
- package/dist/analytics/index.js +8 -0
- package/dist/analytics/logger-analytics-service.d.ts +14 -0
- package/dist/analytics/logger-analytics-service.js +23 -0
- package/dist/analytics/mint-cookie.d.ts +44 -0
- package/dist/analytics/mint-cookie.js +55 -0
- package/dist/errors/errors.d.ts +7 -0
- package/dist/errors/errors.js +17 -0
- package/dist/function/function-meta.types.d.ts +2 -0
- package/dist/function/function-runner.js +29 -0
- package/dist/function/functions.types.d.ts +22 -3
- package/dist/middleware/auth-apikey.d.ts +1 -1
- package/dist/pikku-state.d.ts +1 -1
- package/dist/scopes.d.ts +11 -0
- package/dist/scopes.js +17 -0
- package/dist/services/credential-wire-service.d.ts +1 -1
- package/dist/services/feature-flag-service.d.ts +100 -0
- package/dist/services/feature-flag-service.js +1 -0
- package/dist/services/index.d.ts +1 -0
- package/dist/services/meta-service.d.ts +16 -0
- package/dist/services/meta-service.js +19 -0
- package/dist/services/webhook-service.d.ts +7 -2
- package/dist/services/webhook-service.js +11 -6
- package/dist/testing/service-tests/agent-run-service-tests.d.ts +2 -2
- package/dist/testing/service-tests/agent-storage-service-tests.d.ts +1 -1
- package/dist/testing/service-tests/channel-store-tests.d.ts +1 -1
- package/dist/testing/service-tests/credential-service-tests.d.ts +1 -1
- package/dist/testing/service-tests/deployment-service-tests.d.ts +1 -1
- package/dist/testing/service-tests/event-hub-store-tests.d.ts +1 -1
- package/dist/testing/service-tests/secret-service-tests.d.ts +1 -1
- package/dist/testing/service-tests/session-store-tests.d.ts +1 -1
- package/dist/testing/service-tests/workflow-run-service-tests.d.ts +1 -1
- package/dist/testing/service-tests/workflow-service-tests.d.ts +1 -1
- package/dist/types/core.types.d.ts +23 -0
- package/dist/wirings/agent/agent-rpc.d.ts +1 -1
- package/dist/wirings/agent/agent-turn.d.ts +1 -1
- package/dist/wirings/agent-scorer/agent-scorer-live.d.ts +1 -1
- package/dist/wirings/channel/channel-common.d.ts +1 -1
- package/dist/wirings/channel/channel-rpc-validators.d.ts +2 -2
- package/dist/wirings/channel/channel-runner.d.ts +1 -1
- package/dist/wirings/channel/local/local-channel-runner.d.ts +1 -1
- package/dist/wirings/channel/serverless/serverless-channel-runner.d.ts +1 -1
- package/dist/wirings/cli/channel/cli-approval.d.ts +2 -2
- package/dist/wirings/flag/assert-feature-available.d.ts +15 -0
- package/dist/wirings/flag/assert-feature-available.js +23 -0
- package/dist/wirings/flag/cached-flag-source.d.ts +73 -0
- package/dist/wirings/flag/cached-flag-source.js +96 -0
- package/dist/wirings/flag/define-feature-flags.d.ts +33 -0
- package/dist/wirings/flag/define-feature-flags.js +32 -0
- package/dist/wirings/flag/flag.types.d.ts +97 -0
- package/dist/wirings/flag/flag.types.js +1 -0
- package/dist/wirings/flag/index.d.ts +7 -0
- package/dist/wirings/flag/index.js +5 -0
- package/dist/wirings/flag/resolve-flag.d.ts +52 -0
- package/dist/wirings/flag/resolve-flag.js +90 -0
- package/dist/wirings/flag/validate-flag-definitions.d.ts +26 -0
- package/dist/wirings/flag/validate-flag-definitions.js +103 -0
- package/dist/wirings/virtual-user/virtual-user-scaffold.d.ts +8 -8
- package/dist/wirings/virtual-user/virtual-user-schedule.d.ts +1 -1
- package/dist/wirings/workflow/workflow-queue-routing.d.ts +1 -1
- package/package.json +11 -5
- package/run-tests.sh +17 -9
- package/src/public-surface.json +26 -0
- package/src/agent-naming.test.ts +0 -68
- package/src/api-report.test.ts +0 -138
- package/src/app-alias-surface.test.ts +0 -179
- package/src/app-leaf-surface.test.ts +0 -222
- package/src/bootstrap-compat/root.ts +0 -20
- package/src/classification/column-form.test.ts +0 -97
- package/src/classification/column-form.ts +0 -55
- package/src/classification/data-classification.ts +0 -73
- package/src/classification/index.ts +0 -40
- package/src/classification/key-ids.ts +0 -2
- package/src/classification/secret-value.test.ts +0 -204
- package/src/classification/secret-value.ts +0 -106
- package/src/crypto-utils.test.ts +0 -668
- package/src/crypto-utils.ts +0 -460
- package/src/dev/hot-reload.test.ts +0 -587
- package/src/dev/hot-reload.ts +0 -225
- package/src/dev/module-runner.test.ts +0 -235
- package/src/dev/module-runner.ts +0 -138
- package/src/dev/reload-meta.test.ts +0 -183
- package/src/dev/reload-meta.ts +0 -144
- package/src/ecosystem-tier-removed.test.ts +0 -72
- package/src/env.ts +0 -1
- package/src/errors/error-handler.ts +0 -77
- package/src/errors/error.test.ts +0 -229
- package/src/errors/errors.ts +0 -393
- package/src/errors/index.ts +0 -11
- package/src/errors/serialized-error.ts +0 -12
- package/src/factory-functions.test.ts +0 -111
- package/src/function/abort-scope.test.ts +0 -97
- package/src/function/abort-scope.ts +0 -80
- package/src/function/function-meta.types.ts +0 -151
- package/src/function/function-runner.test.ts +0 -1619
- package/src/function/function-runner.ts +0 -499
- package/src/function/functions.types.ts +0 -319
- package/src/function/index.ts +0 -40
- package/src/function/list.types.test.ts +0 -100
- package/src/function/list.types.ts +0 -69
- package/src/function/pikku-request.test.ts +0 -35
- package/src/function/pikku-request.ts +0 -17
- package/src/gopass-secrets-removed.test.ts +0 -51
- package/src/handle-error.test.ts +0 -532
- package/src/handle-error.ts +0 -64
- package/src/middleware/auth-apikey.test.ts +0 -362
- package/src/middleware/auth-apikey.ts +0 -39
- package/src/middleware/auth-bearer.test.ts +0 -566
- package/src/middleware/auth-bearer.ts +0 -83
- package/src/middleware/auth-cookie.test.ts +0 -572
- package/src/middleware/auth-cookie.ts +0 -107
- package/src/middleware/cors.test.ts +0 -579
- package/src/middleware/cors.ts +0 -103
- package/src/middleware/index.ts +0 -30
- package/src/middleware/middleware-factories.ts +0 -76
- package/src/middleware/middleware.types.ts +0 -61
- package/src/middleware/remote-auth.test.ts +0 -547
- package/src/middleware/remote-auth.ts +0 -95
- package/src/middleware/remote-jobs-secret.ts +0 -35
- package/src/middleware/require-origin.test.ts +0 -115
- package/src/middleware/require-origin.ts +0 -79
- package/src/middleware/telemetry.ts +0 -83
- package/src/middleware-runner.test.ts +0 -578
- package/src/middleware-runner.ts +0 -232
- package/src/no-any-casts.test.ts +0 -57
- package/src/no-root-barrel.test.ts +0 -122
- package/src/permissions.test.ts +0 -256
- package/src/permissions.ts +0 -217
- package/src/pikku-state.test.ts +0 -198
- package/src/pikku-state.ts +0 -206
- package/src/production-barrels-stay-lean.test.ts +0 -110
- package/src/public-surface.test.ts +0 -133
- package/src/remote.test.ts +0 -173
- package/src/remote.ts +0 -56
- package/src/removed-legacy-exports.test.ts +0 -66
- package/src/run-tests-script.test.ts +0 -67
- package/src/schema.test.ts +0 -430
- package/src/schema.ts +0 -204
- package/src/scopes.test.ts +0 -203
- package/src/scopes.ts +0 -67
- package/src/services/agent-run-state-service.ts +0 -37
- package/src/services/agent-runner-service.ts +0 -238
- package/src/services/agent-storage-service.ts +0 -39
- package/src/services/ai-embedding-service.ts +0 -9
- package/src/services/audit-service.test.ts +0 -44
- package/src/services/audit-service.ts +0 -280
- package/src/services/content-service.ts +0 -65
- package/src/services/credential-service.ts +0 -20
- package/src/services/credential-wire-service.test.ts +0 -235
- package/src/services/credential-wire-service.ts +0 -120
- package/src/services/deployment-service.ts +0 -32
- package/src/services/email-service.test.ts +0 -100
- package/src/services/email-service.ts +0 -60
- package/src/services/email-template.test.ts +0 -311
- package/src/services/email-template.ts +0 -254
- package/src/services/file-scenario-run-store.test.ts +0 -349
- package/src/services/file-scenario-run-store.ts +0 -282
- package/src/services/gateway-service.ts +0 -5
- package/src/services/http-personas-converse.test.ts +0 -274
- package/src/services/http-personas.test.ts +0 -379
- package/src/services/http-personas.ts +0 -508
- package/src/services/in-memory-agent-run-state-service.ts +0 -87
- package/src/services/in-memory-queue-service.test.ts +0 -162
- package/src/services/in-memory-queue-service.ts +0 -78
- package/src/services/in-memory-session-store.test.ts +0 -58
- package/src/services/in-memory-session-store.ts +0 -20
- package/src/services/in-memory-trigger-service.ts +0 -47
- package/src/services/in-memory-workflow-service.test.ts +0 -430
- package/src/services/in-memory-workflow-service.ts +0 -595
- package/src/services/index.ts +0 -192
- package/src/services/istanbul-coverage-service.test.ts +0 -66
- package/src/services/istanbul-coverage-service.ts +0 -59
- package/src/services/jwt-service.ts +0 -15
- package/src/services/local-content-request-handler.test.ts +0 -240
- package/src/services/local-content-request-handler.ts +0 -295
- package/src/services/local-content.test.ts +0 -186
- package/src/services/local-content.ts +0 -242
- package/src/services/local-credential-service.ts +0 -63
- package/src/services/local-email-service.test.ts +0 -182
- package/src/services/local-email-service.ts +0 -43
- package/src/services/local-gateway-service.ts +0 -51
- package/src/services/local-secrets.test.ts +0 -95
- package/src/services/local-secrets.ts +0 -71
- package/src/services/local-variables.test.ts +0 -61
- package/src/services/local-variables.ts +0 -45
- package/src/services/logger-console.test.ts +0 -117
- package/src/services/logger-console.ts +0 -174
- package/src/services/logger.ts +0 -48
- package/src/services/meta-service.test.ts +0 -75
- package/src/services/meta-service.ts +0 -767
- package/src/services/persona-actor-secret.test.ts +0 -68
- package/src/services/persona-actor-secret.ts +0 -70
- package/src/services/persona-sign-in.test.ts +0 -219
- package/src/services/persona-sign-in.ts +0 -238
- package/src/services/personas-service.ts +0 -191
- package/src/services/pikku-user-id.test.ts +0 -62
- package/src/services/pikku-user-id.ts +0 -13
- package/src/services/queue-webhook-service.test.ts +0 -409
- package/src/services/queue-webhook-service.ts +0 -150
- package/src/services/remote-jobs.test.ts +0 -106
- package/src/services/remote-jobs.ts +0 -92
- package/src/services/scheduler-service.ts +0 -37
- package/src/services/schema-service.ts +0 -10
- package/src/services/scope-service.ts +0 -91
- package/src/services/scoped-credential-service.test.ts +0 -86
- package/src/services/scoped-credential-service.ts +0 -63
- package/src/services/scoped-secret-service.test.ts +0 -93
- package/src/services/scoped-secret-service.ts +0 -40
- package/src/services/secret-host-binding.test.ts +0 -138
- package/src/services/secret-host-binding.ts +0 -51
- package/src/services/secret-service.ts +0 -25
- package/src/services/secretless.test.ts +0 -54
- package/src/services/secretless.ts +0 -29
- package/src/services/session-store.ts +0 -9
- package/src/services/stub-tracker.test.ts +0 -104
- package/src/services/stub-tracker.ts +0 -175
- package/src/services/system-role-guard.test.ts +0 -96
- package/src/services/system-role-guard.ts +0 -71
- package/src/services/temporary-file-service.ts +0 -76
- package/src/services/trigger-service.ts +0 -5
- package/src/services/typed-credential-service.ts +0 -83
- package/src/services/typed-secret-service.test.ts +0 -204
- package/src/services/typed-secret-service.ts +0 -132
- package/src/services/typed-variables-service.test.ts +0 -166
- package/src/services/typed-variables-service.ts +0 -166
- package/src/services/user-session-service.test.ts +0 -147
- package/src/services/user-session-service.ts +0 -85
- package/src/services/v8-coverage-service.test.ts +0 -69
- package/src/services/v8-coverage-service.ts +0 -163
- package/src/services/variables-service.ts +0 -13
- package/src/services/webhook-service.ts +0 -147
- package/src/services/workflow-service.ts +0 -120
- package/src/side-effects-are-declared.test.ts +0 -84
- package/src/source-files-stay-composable.test.ts +0 -41
- package/src/template-alias-surface.test.ts +0 -240
- package/src/test-utils.ts +0 -38
- package/src/testing/index.ts +0 -3
- package/src/testing/service-tests/agent-run-service-tests.ts +0 -98
- package/src/testing/service-tests/agent-storage-service-tests.ts +0 -379
- package/src/testing/service-tests/channel-store-tests.ts +0 -98
- package/src/testing/service-tests/credential-service-tests.ts +0 -143
- package/src/testing/service-tests/deployment-service-tests.ts +0 -33
- package/src/testing/service-tests/event-hub-store-tests.ts +0 -48
- package/src/testing/service-tests/secret-service-tests.ts +0 -105
- package/src/testing/service-tests/session-store-tests.ts +0 -62
- package/src/testing/service-tests/workflow-run-service-tests.ts +0 -59
- package/src/testing/service-tests/workflow-service-tests.ts +0 -308
- package/src/testing/service-tests.ts +0 -95
- package/src/time-utils.test.ts +0 -56
- package/src/time-utils.ts +0 -89
- package/src/types/core.types.ts +0 -446
- package/src/types/index.ts +0 -25
- package/src/types/state.types.ts +0 -226
- package/src/types/typed-credentials.test.ts +0 -72
- package/src/utils/hash.test.ts +0 -68
- package/src/utils/hash.ts +0 -26
- package/src/utils/hmac.ts +0 -21
- package/src/utils/node-host-resolver.ts +0 -20
- package/src/utils/safe-fetch.test.ts +0 -515
- package/src/utils/safe-fetch.ts +0 -347
- package/src/utils.test.ts +0 -359
- package/src/utils.ts +0 -165
- package/src/version.test.ts +0 -80
- package/src/version.ts +0 -25
- package/src/wirings/actor-flow/actor-flow.types.ts +0 -40
- package/src/wirings/actor-flow/index.ts +0 -10
- package/src/wirings/actor-flow/run-conversation.test.ts +0 -187
- package/src/wirings/actor-flow/run-conversation.ts +0 -280
- package/src/wirings/addon/addon-auth-tags.test.ts +0 -219
- package/src/wirings/addon/addon-runner.ts +0 -236
- package/src/wirings/addon/addon-scopes.test.ts +0 -225
- package/src/wirings/addon/addon-secrets.test.ts +0 -391
- package/src/wirings/addon/index.ts +0 -12
- package/src/wirings/addon/remote-addon-auth.ts +0 -65
- package/src/wirings/addon/wire-addon.test.ts +0 -102
- package/src/wirings/addon/wire-addon.ts +0 -202
- package/src/wirings/addon/wire-remote-addon.ts +0 -41
- package/src/wirings/agent/agent-agui.test.ts +0 -1213
- package/src/wirings/agent/agent-agui.ts +0 -405
- package/src/wirings/agent/agent-authorization.test.ts +0 -208
- package/src/wirings/agent/agent-finalize.test.ts +0 -187
- package/src/wirings/agent/agent-finalize.ts +0 -197
- package/src/wirings/agent/agent-helpers.test.ts +0 -215
- package/src/wirings/agent/agent-helpers.ts +0 -96
- package/src/wirings/agent/agent-interrupt.test.ts +0 -833
- package/src/wirings/agent/agent-interrupt.ts +0 -400
- package/src/wirings/agent/agent-memory.test.ts +0 -397
- package/src/wirings/agent/agent-memory.ts +0 -496
- package/src/wirings/agent/agent-middleware.types.test.ts +0 -41
- package/src/wirings/agent/agent-model-config.test.ts +0 -103
- package/src/wirings/agent/agent-model-config.ts +0 -59
- package/src/wirings/agent/agent-prepare.test.ts +0 -977
- package/src/wirings/agent/agent-prepare.ts +0 -1083
- package/src/wirings/agent/agent-registry.test.ts +0 -455
- package/src/wirings/agent/agent-registry.ts +0 -99
- package/src/wirings/agent/agent-resume-authorization.test.ts +0 -206
- package/src/wirings/agent/agent-rpc.ts +0 -116
- package/src/wirings/agent/agent-runner.test.ts +0 -1229
- package/src/wirings/agent/agent-runner.ts +0 -858
- package/src/wirings/agent/agent-stream-delegate.test.ts +0 -381
- package/src/wirings/agent/agent-stream-output-hooks.test.ts +0 -353
- package/src/wirings/agent/agent-stream.test.ts +0 -1800
- package/src/wirings/agent/agent-stream.ts +0 -1639
- package/src/wirings/agent/agent-thread-ownership.test.ts +0 -297
- package/src/wirings/agent/agent-turn.test.ts +0 -65
- package/src/wirings/agent/agent-turn.ts +0 -122
- package/src/wirings/agent/agent-utils.ts +0 -20
- package/src/wirings/agent/agent.types.ts +0 -676
- package/src/wirings/agent/index.ts +0 -58
- package/src/wirings/agent/voice-input.test.ts +0 -220
- package/src/wirings/agent/voice-input.ts +0 -180
- package/src/wirings/agent/voice-output.test.ts +0 -510
- package/src/wirings/agent/voice-output.ts +0 -311
- package/src/wirings/agent-scorer/agent-scorer-grade.test.ts +0 -106
- package/src/wirings/agent-scorer/agent-scorer-grade.ts +0 -55
- package/src/wirings/agent-scorer/agent-scorer-judge.test.ts +0 -285
- package/src/wirings/agent-scorer/agent-scorer-judge.ts +0 -180
- package/src/wirings/agent-scorer/agent-scorer-live.test.ts +0 -174
- package/src/wirings/agent-scorer/agent-scorer-live.ts +0 -56
- package/src/wirings/agent-scorer/agent-scorer-registry.ts +0 -66
- package/src/wirings/agent-scorer/agent-scorer-sampling.test.ts +0 -34
- package/src/wirings/agent-scorer/agent-scorer-sampling.ts +0 -36
- package/src/wirings/agent-scorer/agent-scorer-snapshots.test.ts +0 -49
- package/src/wirings/agent-scorer/agent-scorer-snapshots.ts +0 -46
- package/src/wirings/agent-scorer/agent-scorer-worker.test.ts +0 -122
- package/src/wirings/agent-scorer/agent-scorer-worker.ts +0 -71
- package/src/wirings/agent-scorer/agent-scorer.ts +0 -102
- package/src/wirings/agent-scorer/agent-scorer.types.ts +0 -128
- package/src/wirings/agent-scorer/index.ts +0 -23
- package/src/wirings/channel/channel-common.ts +0 -102
- package/src/wirings/channel/channel-handler-shapes.test.ts +0 -72
- package/src/wirings/channel/channel-handler.test.ts +0 -322
- package/src/wirings/channel/channel-handler.ts +0 -259
- package/src/wirings/channel/channel-host-rpc.test.ts +0 -150
- package/src/wirings/channel/channel-host-rpc.ts +0 -69
- package/src/wirings/channel/channel-middleware-runner.test.ts +0 -188
- package/src/wirings/channel/channel-middleware-runner.ts +0 -126
- package/src/wirings/channel/channel-rpc-registry.ts +0 -116
- package/src/wirings/channel/channel-rpc-responder.ts +0 -117
- package/src/wirings/channel/channel-rpc-service.ts +0 -132
- package/src/wirings/channel/channel-rpc-validators.ts +0 -65
- package/src/wirings/channel/channel-rpc.test.ts +0 -841
- package/src/wirings/channel/channel-rpc.ts +0 -5
- package/src/wirings/channel/channel-rpc.types.ts +0 -160
- package/src/wirings/channel/channel-runner.ts +0 -164
- package/src/wirings/channel/channel-store.ts +0 -35
- package/src/wirings/channel/channel.types.ts +0 -193
- package/src/wirings/channel/define-channel-routes.ts +0 -5
- package/src/wirings/channel/eventhub-service.ts +0 -16
- package/src/wirings/channel/eventhub-store.ts +0 -13
- package/src/wirings/channel/index.ts +0 -40
- package/src/wirings/channel/local/index.ts +0 -3
- package/src/wirings/channel/local/local-channel-handler.ts +0 -98
- package/src/wirings/channel/local/local-channel-runner.test.ts +0 -339
- package/src/wirings/channel/local/local-channel-runner.ts +0 -271
- package/src/wirings/channel/local/local-eventhub-service.test.ts +0 -77
- package/src/wirings/channel/local/local-eventhub-service.ts +0 -69
- package/src/wirings/channel/log-channels.ts +0 -16
- package/src/wirings/channel/pikku-abstract-channel-handler.test.ts +0 -135
- package/src/wirings/channel/pikku-abstract-channel-handler.ts +0 -60
- package/src/wirings/channel/serverless/index.ts +0 -6
- package/src/wirings/channel/serverless/serverless-channel-runner.ts +0 -328
- package/src/wirings/cli/channel/cli-approval.test.ts +0 -177
- package/src/wirings/cli/channel/cli-approval.ts +0 -135
- package/src/wirings/cli/channel/cli-channel-runner.ts +0 -118
- package/src/wirings/cli/channel/cli-raw-channel-runner.test.ts +0 -192
- package/src/wirings/cli/channel/cli-raw-channel-runner.ts +0 -148
- package/src/wirings/cli/channel/cli-raw-client-runner.test.ts +0 -480
- package/src/wirings/cli/channel/cli-raw-client-runner.ts +0 -188
- package/src/wirings/cli/channel/index.ts +0 -6
- package/src/wirings/cli/cli-runner.test.ts +0 -969
- package/src/wirings/cli/cli-runner.ts +0 -538
- package/src/wirings/cli/cli.types.ts +0 -388
- package/src/wirings/cli/command-parser.test.ts +0 -1120
- package/src/wirings/cli/command-parser.ts +0 -713
- package/src/wirings/cli/define-cli-commands.ts +0 -13
- package/src/wirings/cli/format-cli-error.test.ts +0 -91
- package/src/wirings/cli/format-cli-error.ts +0 -96
- package/src/wirings/cli/index.ts +0 -19
- package/src/wirings/credential/credential.types.ts +0 -37
- package/src/wirings/credential/define-credential.ts +0 -49
- package/src/wirings/credential/index.ts +0 -7
- package/src/wirings/credential/validate-credential-definitions.ts +0 -63
- package/src/wirings/gateway/gateway-authorization.test.ts +0 -575
- package/src/wirings/gateway/gateway-channel-meta.test.ts +0 -44
- package/src/wirings/gateway/gateway-runner.test.ts +0 -581
- package/src/wirings/gateway/gateway-runner.ts +0 -411
- package/src/wirings/gateway/gateway.types.ts +0 -137
- package/src/wirings/gateway/index.ts +0 -15
- package/src/wirings/http/http-routes.test.ts +0 -318
- package/src/wirings/http/http-routes.ts +0 -111
- package/src/wirings/http/http-runner-addon-ref.test.ts +0 -238
- package/src/wirings/http/http-runner.test.ts +0 -503
- package/src/wirings/http/http-runner.ts +0 -462
- package/src/wirings/http/http.types.ts +0 -307
- package/src/wirings/http/index.ts +0 -27
- package/src/wirings/http/log-http-routes.ts +0 -18
- package/src/wirings/http/pikku-fetch-http-request.test.ts +0 -318
- package/src/wirings/http/pikku-fetch-http-request.ts +0 -260
- package/src/wirings/http/pikku-fetch-http-response.test.ts +0 -123
- package/src/wirings/http/pikku-fetch-http-response.ts +0 -149
- package/src/wirings/http/routers/http-router.ts +0 -13
- package/src/wirings/http/routers/path-to-regex.test.ts +0 -306
- package/src/wirings/http/routers/path-to-regex.ts +0 -115
- package/src/wirings/http/web-request.test.ts +0 -382
- package/src/wirings/http/web-request.ts +0 -162
- package/src/wirings/mcp/index.ts +0 -26
- package/src/wirings/mcp/mcp-endpoint-registry.test.ts +0 -388
- package/src/wirings/mcp/mcp-endpoint-registry.ts +0 -159
- package/src/wirings/mcp/mcp-runner.test.ts +0 -588
- package/src/wirings/mcp/mcp-runner.ts +0 -330
- package/src/wirings/mcp/mcp.types.ts +0 -199
- package/src/wirings/node/index.ts +0 -2
- package/src/wirings/node/node.types.ts +0 -23
- package/src/wirings/oauth2/index.ts +0 -1
- package/src/wirings/oauth2/oauth2.types.ts +0 -12
- package/src/wirings/persona/define-personas.ts +0 -33
- package/src/wirings/persona/index.ts +0 -75
- package/src/wirings/persona/persona-app-scopes.test.ts +0 -47
- package/src/wirings/persona/persona-app-scopes.ts +0 -74
- package/src/wirings/persona/persona-email.ts +0 -87
- package/src/wirings/persona/persona-environments.test.ts +0 -194
- package/src/wirings/persona/persona-environments.ts +0 -138
- package/src/wirings/persona/persona-mailbox.ts +0 -156
- package/src/wirings/persona/persona.test.ts +0 -230
- package/src/wirings/persona/persona.types.ts +0 -156
- package/src/wirings/persona/validate-personas.ts +0 -137
- package/src/wirings/queue/index.ts +0 -29
- package/src/wirings/queue/queue-identity.test.ts +0 -454
- package/src/wirings/queue/queue-identity.ts +0 -176
- package/src/wirings/queue/queue-runner.test.ts +0 -705
- package/src/wirings/queue/queue-runner.ts +0 -181
- package/src/wirings/queue/queue.types.ts +0 -161
- package/src/wirings/queue/register-queue-helper.ts +0 -46
- package/src/wirings/queue/signed-queue-service.ts +0 -60
- package/src/wirings/queue/validate-worker-config.test.ts +0 -108
- package/src/wirings/queue/validate-worker-config.ts +0 -90
- package/src/wirings/role/define-system-role.ts +0 -33
- package/src/wirings/role/index.ts +0 -13
- package/src/wirings/role/role.test.ts +0 -104
- package/src/wirings/role/role.types.ts +0 -47
- package/src/wirings/role/validate-role-definitions.ts +0 -93
- package/src/wirings/rpc/index.ts +0 -8
- package/src/wirings/rpc/rpc-runner.test.ts +0 -1130
- package/src/wirings/rpc/rpc-runner.ts +0 -569
- package/src/wirings/rpc/rpc-types.ts +0 -87
- package/src/wirings/scheduler/index.ts +0 -11
- package/src/wirings/scheduler/log-schedulers.ts +0 -16
- package/src/wirings/scheduler/scheduler-runner.test.ts +0 -835
- package/src/wirings/scheduler/scheduler-runner.ts +0 -138
- package/src/wirings/scheduler/scheduler.types.ts +0 -42
- package/src/wirings/scope/define-scope.ts +0 -33
- package/src/wirings/scope/index.ts +0 -15
- package/src/wirings/scope/scope.test.ts +0 -159
- package/src/wirings/scope/scope.types.ts +0 -42
- package/src/wirings/scope/validate-scope-definitions.ts +0 -107
- package/src/wirings/secret/index.ts +0 -9
- package/src/wirings/secret/secret.types.ts +0 -70
- package/src/wirings/secret/validate-secret-definitions.test.ts +0 -232
- package/src/wirings/secret/validate-secret-definitions.ts +0 -88
- package/src/wirings/trigger/index.ts +0 -9
- package/src/wirings/trigger/pikku-trigger-service.ts +0 -107
- package/src/wirings/trigger/trigger-runner.test.ts +0 -78
- package/src/wirings/trigger/trigger-runner.ts +0 -113
- package/src/wirings/trigger/trigger.types.ts +0 -100
- package/src/wirings/variable/index.ts +0 -8
- package/src/wirings/variable/validate-variable-definitions.test.ts +0 -115
- package/src/wirings/variable/validate-variable-definitions.ts +0 -71
- package/src/wirings/variable/variable.types.ts +0 -40
- package/src/wirings/virtual-user/index.ts +0 -107
- package/src/wirings/virtual-user/prepare-virtual-user-run.test.ts +0 -115
- package/src/wirings/virtual-user/prepare-virtual-user-run.ts +0 -95
- package/src/wirings/virtual-user/run-virtual-user.test.ts +0 -774
- package/src/wirings/virtual-user/run-virtual-user.ts +0 -684
- package/src/wirings/virtual-user/virtual-user-agents.test.ts +0 -72
- package/src/wirings/virtual-user/virtual-user-agents.ts +0 -62
- package/src/wirings/virtual-user/virtual-user-catalogue.test.ts +0 -215
- package/src/wirings/virtual-user/virtual-user-catalogue.ts +0 -184
- package/src/wirings/virtual-user/virtual-user-derive.test.ts +0 -426
- package/src/wirings/virtual-user/virtual-user-derive.ts +0 -161
- package/src/wirings/virtual-user/virtual-user-dispositions.test.ts +0 -68
- package/src/wirings/virtual-user/virtual-user-dispositions.ts +0 -210
- package/src/wirings/virtual-user/virtual-user-intents.test.ts +0 -218
- package/src/wirings/virtual-user/virtual-user-intents.ts +0 -185
- package/src/wirings/virtual-user/virtual-user-rng.test.ts +0 -72
- package/src/wirings/virtual-user/virtual-user-rng.ts +0 -50
- package/src/wirings/virtual-user/virtual-user-run-store.ts +0 -131
- package/src/wirings/virtual-user/virtual-user-scaffold.test.ts +0 -854
- package/src/wirings/virtual-user/virtual-user-scaffold.ts +0 -664
- package/src/wirings/virtual-user/virtual-user-schedule-store.ts +0 -93
- package/src/wirings/virtual-user/virtual-user-schedule.test.ts +0 -280
- package/src/wirings/virtual-user/virtual-user-schedule.ts +0 -156
- package/src/wirings/virtual-user/virtual-user-target.ts +0 -47
- package/src/wirings/virtual-user/virtual-user.types.ts +0 -215
- package/src/wirings/workflow/dsl/workflow-dsl.types.ts +0 -709
- package/src/wirings/workflow/dsl/workflow-runner.ts +0 -25
- package/src/wirings/workflow/feature.test.ts +0 -131
- package/src/wirings/workflow/feature.ts +0 -59
- package/src/wirings/workflow/graph/graph-foreach-queued.test.ts +0 -569
- package/src/wirings/workflow/graph/graph-foreach.test.ts +0 -626
- package/src/wirings/workflow/graph/graph-node.ts +0 -115
- package/src/wirings/workflow/graph/graph-runner.test.ts +0 -1049
- package/src/wirings/workflow/graph/graph-runner.ts +0 -1376
- package/src/wirings/workflow/graph/graph-validation.test.ts +0 -27
- package/src/wirings/workflow/graph/graph-validation.ts +0 -41
- package/src/wirings/workflow/graph/template.test.ts +0 -49
- package/src/wirings/workflow/graph/template.ts +0 -42
- package/src/wirings/workflow/graph/wire-workflow-graph.ts +0 -39
- package/src/wirings/workflow/graph/workflow-graph.types.ts +0 -75
- package/src/wirings/workflow/index.ts +0 -107
- package/src/wirings/workflow/pikku-scenario-service.ts +0 -1013
- package/src/wirings/workflow/pikku-workflow-service.test.ts +0 -963
- package/src/wirings/workflow/pikku-workflow-service.ts +0 -1993
- package/src/wirings/workflow/run-timeline.test.ts +0 -199
- package/src/wirings/workflow/run-timeline.ts +0 -185
- package/src/wirings/workflow/scenario-cookie-jar.test.ts +0 -107
- package/src/wirings/workflow/scenario-cookie-jar.ts +0 -57
- package/src/wirings/workflow/scenario-expectations.test.ts +0 -238
- package/src/wirings/workflow/scenario-hooks.test.ts +0 -259
- package/src/wirings/workflow/scenario-poll.test.ts +0 -64
- package/src/wirings/workflow/scenario-poll.ts +0 -27
- package/src/wirings/workflow/scenario-prose.test.ts +0 -275
- package/src/wirings/workflow/scenario-prose.ts +0 -86
- package/src/wirings/workflow/scenario-run.types.ts +0 -193
- package/src/wirings/workflow/scenario-service.test.ts +0 -147
- package/src/wirings/workflow/scenario-step-guards.ts +0 -23
- package/src/wirings/workflow/scenario-step.test.ts +0 -800
- package/src/wirings/workflow/scenario-step.types.ts +0 -262
- package/src/wirings/workflow/scenario-surface.test.ts +0 -146
- package/src/wirings/workflow/scenario-surface.ts +0 -71
- package/src/wirings/workflow/scenario.types.ts +0 -63
- package/src/wirings/workflow/workflow-approval-audit.ts +0 -47
- package/src/wirings/workflow/workflow-approval-policy.test.ts +0 -594
- package/src/wirings/workflow/workflow-approval-policy.ts +0 -68
- package/src/wirings/workflow/workflow-approval.ts +0 -290
- package/src/wirings/workflow/workflow-child-run-session.test.ts +0 -168
- package/src/wirings/workflow/workflow-constants.ts +0 -66
- package/src/wirings/workflow/workflow-dispatch-durability.test.ts +0 -116
- package/src/wirings/workflow/workflow-dispatch-payload.test.ts +0 -55
- package/src/wirings/workflow/workflow-dispatch-relay.test.ts +0 -128
- package/src/wirings/workflow/workflow-errors.ts +0 -132
- package/src/wirings/workflow/workflow-inline-authority.test.ts +0 -175
- package/src/wirings/workflow/workflow-invocation-id.test.ts +0 -51
- package/src/wirings/workflow/workflow-invocation-id.ts +0 -28
- package/src/wirings/workflow/workflow-meta-resolver.ts +0 -45
- package/src/wirings/workflow/workflow-mirror.test.ts +0 -171
- package/src/wirings/workflow/workflow-missing-meta.test.ts +0 -92
- package/src/wirings/workflow/workflow-on-error.test.ts +0 -145
- package/src/wirings/workflow/workflow-queue-routing.ts +0 -129
- package/src/wirings/workflow/workflow-queue-wiring.ts +0 -149
- package/src/wirings/workflow/workflow-queue-workers.test.ts +0 -131
- package/src/wirings/workflow/workflow-queue-workers.ts +0 -66
- package/src/wirings/workflow/workflow-recovery.ts +0 -192
- package/src/wirings/workflow/workflow-replay-snapshot.test.ts +0 -140
- package/src/wirings/workflow/workflow-retry-policy.test.ts +0 -113
- package/src/wirings/workflow/workflow-run-authority.test.ts +0 -212
- package/src/wirings/workflow/workflow-run-context.test.ts +0 -172
- package/src/wirings/workflow/workflow-run-engine.types.ts +0 -92
- package/src/wirings/workflow/workflow-run-ownership.ts +0 -37
- package/src/wirings/workflow/workflow-run-polling.test.ts +0 -127
- package/src/wirings/workflow/workflow-stalled-recovery.test.ts +0 -152
- package/src/wirings/workflow/workflow-status-stream.test.ts +0 -354
- package/src/wirings/workflow/workflow-status-stream.ts +0 -144
- package/src/wirings/workflow/workflow-step-claim.ts +0 -46
- package/src/wirings/workflow/workflow-step-ordinal.test.ts +0 -94
- package/src/wirings/workflow/workflow-step-session.test.ts +0 -87
- package/src/wirings/workflow/workflow-suspend.ts +0 -61
- package/src/wirings/workflow/workflow-terminal-run-guard.test.ts +0 -105
- package/src/wirings/workflow/workflow.types.ts +0 -268
- package/src/wirings-stay-decoupled.test.ts +0 -130
- package/tsconfig.json +0 -14
- package/tsconfig.tsbuildinfo +0 -1
- package/tsconfig.type-tests.json +0 -15
package/src/time-utils.ts
DELETED
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
type TimeUnit = 'second' | 'minute' | 'hour' | 'day' | 'week' | 'year'
|
|
2
|
-
|
|
3
|
-
export interface RelativeTimeInput {
|
|
4
|
-
value: number // negative = in the past
|
|
5
|
-
unit: TimeUnit
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
const multipliers: Record<TimeUnit, number> = {
|
|
9
|
-
second: 1,
|
|
10
|
-
minute: 60,
|
|
11
|
-
hour: 60 * 60,
|
|
12
|
-
day: 60 * 60 * 24,
|
|
13
|
-
week: 60 * 60 * 24 * 7,
|
|
14
|
-
year: Math.round(365.25 * 60 * 60 * 24),
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
export const getRelativeTimeOffset = ({
|
|
18
|
-
value,
|
|
19
|
-
unit,
|
|
20
|
-
}: RelativeTimeInput): number => {
|
|
21
|
-
return Math.round(value * multipliers[unit]) * 1000
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
export const getRelativeTimeOffsetFromNow = (
|
|
25
|
-
relativeTime: RelativeTimeInput
|
|
26
|
-
): Date => {
|
|
27
|
-
return new Date(Date.now() + getRelativeTimeOffset(relativeTime))
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
export const getDurationInMilliseconds = (
|
|
31
|
-
duration: string | number
|
|
32
|
-
): number => {
|
|
33
|
-
if (typeof duration === 'number') {
|
|
34
|
-
return duration
|
|
35
|
-
}
|
|
36
|
-
return parseDurationString(duration)
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
export const parseDurationString = (duration: string): number => {
|
|
40
|
-
const match = duration.match(
|
|
41
|
-
/^(\d+)(ms|milliseconds?|s|sec|seconds?|m|min|minutes?|h|hour|hours?|d|day|days?|w|week|weeks?|y|year|years?)$/
|
|
42
|
-
)
|
|
43
|
-
|
|
44
|
-
if (!match) {
|
|
45
|
-
throw new Error(
|
|
46
|
-
`Invalid duration format: ${duration}. Use formats like '2s', '5s', '5min', '1hour', '2days', '1week'`
|
|
47
|
-
)
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
const value = parseInt(match[1], 10)
|
|
51
|
-
const unitStr = match[2]
|
|
52
|
-
|
|
53
|
-
if (
|
|
54
|
-
unitStr === 'ms' ||
|
|
55
|
-
unitStr === 'millisecond' ||
|
|
56
|
-
unitStr === 'milliseconds'
|
|
57
|
-
) {
|
|
58
|
-
return value
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
let unit: TimeUnit
|
|
62
|
-
if (
|
|
63
|
-
unitStr === 's' ||
|
|
64
|
-
unitStr === 'sec' ||
|
|
65
|
-
unitStr === 'second' ||
|
|
66
|
-
unitStr === 'seconds'
|
|
67
|
-
) {
|
|
68
|
-
unit = 'second'
|
|
69
|
-
} else if (
|
|
70
|
-
unitStr === 'm' ||
|
|
71
|
-
unitStr === 'min' ||
|
|
72
|
-
unitStr === 'minute' ||
|
|
73
|
-
unitStr === 'minutes'
|
|
74
|
-
) {
|
|
75
|
-
unit = 'minute'
|
|
76
|
-
} else if (unitStr === 'h' || unitStr === 'hour' || unitStr === 'hours') {
|
|
77
|
-
unit = 'hour'
|
|
78
|
-
} else if (unitStr === 'd' || unitStr === 'day' || unitStr === 'days') {
|
|
79
|
-
unit = 'day'
|
|
80
|
-
} else if (unitStr === 'w' || unitStr === 'week' || unitStr === 'weeks') {
|
|
81
|
-
unit = 'week'
|
|
82
|
-
} else if (unitStr === 'y' || unitStr === 'year' || unitStr === 'years') {
|
|
83
|
-
unit = 'year'
|
|
84
|
-
} else {
|
|
85
|
-
throw new Error(`Unknown time unit: ${unitStr}`)
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
return getRelativeTimeOffset({ value, unit })
|
|
89
|
-
}
|
package/src/types/core.types.ts
DELETED
|
@@ -1,446 +0,0 @@
|
|
|
1
|
-
import type { Logger, LogLevel } from '../services/logger.js'
|
|
2
|
-
import type { VariablesService } from '../services/variables-service.js'
|
|
3
|
-
import type { SecretService } from '../services/secret-service.js'
|
|
4
|
-
import type { SchemaService } from '../services/schema-service.js'
|
|
5
|
-
import type { JWTService } from '../services/jwt-service.js'
|
|
6
|
-
import type { PikkuHTTP } from '../wirings/http/http.types.js'
|
|
7
|
-
import type { PikkuChannel } from '../wirings/channel/channel.types.js'
|
|
8
|
-
import type { EventHubService } from '../wirings/channel/eventhub-service.js'
|
|
9
|
-
import type { PikkuRPC } from '../wirings/rpc/rpc-types.js'
|
|
10
|
-
import type { PikkuMCP } from '../wirings/mcp/mcp.types.js'
|
|
11
|
-
import type { PikkuScheduledTask } from '../wirings/scheduler/scheduler.types.js'
|
|
12
|
-
import type { PikkuQueue, QueueService } from '../wirings/queue/queue.types.js'
|
|
13
|
-
import type { PikkuCLI } from '../wirings/cli/cli.types.js'
|
|
14
|
-
import type {
|
|
15
|
-
PikkuWorkflowWire,
|
|
16
|
-
WorkflowService,
|
|
17
|
-
WorkflowServiceConfig,
|
|
18
|
-
WorkflowStepWire,
|
|
19
|
-
} from '../wirings/workflow/workflow.types.js'
|
|
20
|
-
import type { PikkuScenarioWire } from '../wirings/workflow/scenario.types.js'
|
|
21
|
-
import type {
|
|
22
|
-
PikkuBrowserWire,
|
|
23
|
-
PikkuScenarioStepWire,
|
|
24
|
-
} from '../wirings/workflow/scenario-step.types.js'
|
|
25
|
-
import type { PikkuGraphWire } from '../wirings/workflow/graph/workflow-graph.types.js'
|
|
26
|
-
import type { PikkuTrigger } from '../wirings/trigger/trigger.types.js'
|
|
27
|
-
import type { PikkuGateway } from '../wirings/gateway/gateway.types.js'
|
|
28
|
-
import type { SchedulerService } from '../services/scheduler-service.js'
|
|
29
|
-
import type { DeploymentService } from '../services/deployment-service.js'
|
|
30
|
-
import type { AgentStorageService } from '../services/agent-storage-service.js'
|
|
31
|
-
|
|
32
|
-
import type { ContentService } from '../services/content-service.js'
|
|
33
|
-
import type {
|
|
34
|
-
ScenarioPersonaOf,
|
|
35
|
-
ScenarioPersonas,
|
|
36
|
-
} from '../services/personas-service.js'
|
|
37
|
-
import type { AgentRunnerService } from '../services/agent-runner-service.js'
|
|
38
|
-
import type { AIEmbeddingService } from '../services/ai-embedding-service.js'
|
|
39
|
-
import type { AgentRunStateService } from '../services/agent-run-state-service.js'
|
|
40
|
-
import type { AgentRunService } from '../wirings/agent/agent.types.js'
|
|
41
|
-
import type { MiddlewareMetadata } from '../middleware/middleware.types.js'
|
|
42
|
-
import type { PermissionMetadata } from '../function/function-meta.types.js'
|
|
43
|
-
import type { VirtualUserRunStore } from '../wirings/virtual-user/virtual-user-run-store.js'
|
|
44
|
-
import type { VirtualUserScheduleStore } from '../wirings/virtual-user/virtual-user-schedule-store.js'
|
|
45
|
-
import type { WorkflowRunService } from '../wirings/workflow/workflow.types.js'
|
|
46
|
-
import type { CredentialService } from '../services/credential-service.js'
|
|
47
|
-
import type { EmailService } from '../services/email-service.js'
|
|
48
|
-
import type {
|
|
49
|
-
WebhookService,
|
|
50
|
-
WebhookServiceConfig,
|
|
51
|
-
} from '../services/webhook-service.js'
|
|
52
|
-
import type { MetaService } from '../services/meta-service.js'
|
|
53
|
-
import type { CoverageService } from '../services/v8-coverage-service.js'
|
|
54
|
-
import type { SessionStore } from '../services/session-store.js'
|
|
55
|
-
import type { ScopeService } from '../services/scope-service.js'
|
|
56
|
-
import type {
|
|
57
|
-
AuditDurability,
|
|
58
|
-
AuditLog,
|
|
59
|
-
AuditService,
|
|
60
|
-
} from '../services/audit-service.js'
|
|
61
|
-
|
|
62
|
-
export type PikkuWiringTypes =
|
|
63
|
-
| 'http'
|
|
64
|
-
| 'scheduler'
|
|
65
|
-
| 'trigger'
|
|
66
|
-
| 'channel'
|
|
67
|
-
| 'rpc'
|
|
68
|
-
| 'queue'
|
|
69
|
-
| 'mcp'
|
|
70
|
-
| 'cli'
|
|
71
|
-
| 'workflow'
|
|
72
|
-
| 'agent'
|
|
73
|
-
| 'gateway'
|
|
74
|
-
|
|
75
|
-
/**
|
|
76
|
-
* Runtime pool tuning for the Postgres adapter. The connection string stays
|
|
77
|
-
* the flat `postgresUrl` config field — the contract the CLI's db commands read.
|
|
78
|
-
*/
|
|
79
|
-
export interface PostgresConfig {
|
|
80
|
-
/** Max connections in the postgres.js pool. Defaults to postgres.js's 10. */
|
|
81
|
-
maxPool?: number
|
|
82
|
-
/** Seconds to wait establishing a new connection before failing. */
|
|
83
|
-
connectTimeout?: number
|
|
84
|
-
/** Close a pooled connection after it has been idle this many seconds. */
|
|
85
|
-
idleTimeout?: number
|
|
86
|
-
/**
|
|
87
|
-
* Recycle a connection after this many seconds. Guards against stale TCP
|
|
88
|
-
* connections silently dropped by load balancers / proxies.
|
|
89
|
-
*/
|
|
90
|
-
maxLifetime?: number
|
|
91
|
-
/**
|
|
92
|
-
* Server-side `statement_timeout` in milliseconds. A query running longer is
|
|
93
|
-
* cancelled, freeing its connection — defense against a runaway query pinning
|
|
94
|
-
* a pooled connection and exhausting the pool.
|
|
95
|
-
*/
|
|
96
|
-
statementTimeout?: number
|
|
97
|
-
/**
|
|
98
|
-
* Set `false` behind a transaction-mode connection pooler (pgBouncer,
|
|
99
|
-
* Supabase pooler) that cannot use prepared statements.
|
|
100
|
-
*/
|
|
101
|
-
prepare?: boolean
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
export type CoreConfig<Config extends Record<string, unknown> = {}> = {
|
|
105
|
-
logLevel?: LogLevel
|
|
106
|
-
secrets?: {
|
|
107
|
-
/** Refuse a secret that declares no `allowedHosts` rather than treating it as unrestricted. */
|
|
108
|
-
requireAllowedHosts?: boolean
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
workflow?: WorkflowServiceConfig
|
|
112
|
-
webhook?: WebhookServiceConfig
|
|
113
|
-
postgres?: PostgresConfig
|
|
114
|
-
} & Config
|
|
115
|
-
|
|
116
|
-
export interface CoreUserSession {
|
|
117
|
-
userId?: string
|
|
118
|
-
orgId?: string
|
|
119
|
-
/** True when the session belongs to a synthetic scenario actor — lets audits/analytics address synthetic traffic */
|
|
120
|
-
actor?: boolean
|
|
121
|
-
/**
|
|
122
|
-
* Scopes granted to this session, checked against a function's `scopes`.
|
|
123
|
-
* Populated by whoever builds the session — core reads them, never fetches.
|
|
124
|
-
*/
|
|
125
|
-
scopes?: string[]
|
|
126
|
-
/**
|
|
127
|
-
* Restricts the session to functions declared `readonly`. The function runner
|
|
128
|
-
* throws `ReadonlySessionError` for anything else.
|
|
129
|
-
*/
|
|
130
|
-
readonly?: boolean
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
/**
|
|
134
|
-
* Kept structural so core stays independent of any one auth package —
|
|
135
|
-
* `@pikku/better-auth`'s `BetterAuthInstance` satisfies it.
|
|
136
|
-
*/
|
|
137
|
-
export interface AuthInstance {
|
|
138
|
-
handler: (request: Request) => Promise<Response>
|
|
139
|
-
api: Record<string, any>
|
|
140
|
-
$context?: Promise<any>
|
|
141
|
-
}
|
|
142
|
-
|
|
143
|
-
export interface CoreSingletonServices<Config extends CoreConfig = CoreConfig> {
|
|
144
|
-
schema?: SchemaService
|
|
145
|
-
jwt?: JWTService
|
|
146
|
-
config: Config
|
|
147
|
-
logger: Logger
|
|
148
|
-
variables: VariablesService
|
|
149
|
-
secrets: SecretService
|
|
150
|
-
workflowService?: WorkflowService
|
|
151
|
-
queueService?: QueueService
|
|
152
|
-
eventHub?: EventHubService<Record<string, any>>
|
|
153
|
-
schedulerService?: SchedulerService
|
|
154
|
-
deploymentService?: DeploymentService
|
|
155
|
-
agentStorage?: AgentStorageService
|
|
156
|
-
|
|
157
|
-
content?: ContentService
|
|
158
|
-
agentRunner?: AgentRunnerService
|
|
159
|
-
aiEmbedding?: AIEmbeddingService
|
|
160
|
-
agentRunState?: AgentRunStateService
|
|
161
|
-
agentRunService?: AgentRunService
|
|
162
|
-
workflowRunService?: WorkflowRunService
|
|
163
|
-
credentialService?: CredentialService
|
|
164
|
-
emailService?: EmailService
|
|
165
|
-
/**
|
|
166
|
-
* Queue-backed outgoing webhook delivery. The queue-only default throws on
|
|
167
|
-
* the delivery-read methods; a store-backed implementation records history.
|
|
168
|
-
*/
|
|
169
|
-
webhookService?: WebhookService
|
|
170
|
-
metaService?: MetaService
|
|
171
|
-
/**
|
|
172
|
-
* Where virtual-user runs are recorded. A run is dispatched and answered for
|
|
173
|
-
* later, so this store is the only trace it leaves — see
|
|
174
|
-
* {@link VirtualUserRunStore}.
|
|
175
|
-
*/
|
|
176
|
-
virtualUserRunStore?: VirtualUserRunStore
|
|
177
|
-
/**
|
|
178
|
-
* Each persona's cadence, for apps that want their virtual users to keep
|
|
179
|
-
* going without being asked. Separate from the run store on purpose: wiring
|
|
180
|
-
* nothing is how an app says it only wants the runs it starts itself.
|
|
181
|
-
*/
|
|
182
|
-
virtualUserScheduleStore?: VirtualUserScheduleStore
|
|
183
|
-
/** V8 precise-coverage collector (`pikku dev --coverage` only) */
|
|
184
|
-
coverageService?: CoverageService
|
|
185
|
-
audit?: AuditService
|
|
186
|
-
/**
|
|
187
|
-
* Request-scoped audit buffer that writes into `audit` (the durable sink).
|
|
188
|
-
* Returned as a wire service so the runner flushes it via `close()` when the
|
|
189
|
-
* invocation ends.
|
|
190
|
-
*/
|
|
191
|
-
auditLog?: AuditLog
|
|
192
|
-
/** Session store for persisting user sessions keyed by pikkuUserId */
|
|
193
|
-
sessionStore?: SessionStore
|
|
194
|
-
/**
|
|
195
|
-
* Resolves and administers user scopes. Called when building a session,
|
|
196
|
-
* never by the function runner.
|
|
197
|
-
*/
|
|
198
|
-
scopeService?: ScopeService
|
|
199
|
-
/**
|
|
200
|
-
* Built once by the factory an auth package registers and injected by the
|
|
201
|
-
* generated `pikkuServices` wrapper — service factories must not return it
|
|
202
|
-
* themselves. Absent when the project wires no auth.
|
|
203
|
-
*/
|
|
204
|
-
auth?: () => Promise<AuthInstance>
|
|
205
|
-
}
|
|
206
|
-
|
|
207
|
-
/**
|
|
208
|
-
* Reads a single credential. The first signature resolves the value type from
|
|
209
|
-
* the project's generated `CredentialsMap`; the second keeps a name the map
|
|
210
|
-
* does not know callable with an explicit type.
|
|
211
|
-
*
|
|
212
|
-
* `TCredentials` is unconstrained because the generated map is an interface,
|
|
213
|
-
* which has no implicit index signature and so cannot satisfy
|
|
214
|
-
* `Record<string, unknown>`.
|
|
215
|
-
*/
|
|
216
|
-
export type GetCredential<TCredentials = Record<string, unknown>> = {
|
|
217
|
-
<K extends keyof TCredentials & string>(
|
|
218
|
-
name: K
|
|
219
|
-
): TCredentials[K] | null | Promise<TCredentials[K] | null>
|
|
220
|
-
<T = unknown>(name: string): T | null | Promise<T | null>
|
|
221
|
-
}
|
|
222
|
-
|
|
223
|
-
export type PikkuWire<
|
|
224
|
-
In = unknown,
|
|
225
|
-
Out = unknown,
|
|
226
|
-
HasInitialSession extends boolean = false,
|
|
227
|
-
UserSession extends CoreUserSession = CoreUserSession,
|
|
228
|
-
TypedRPC extends PikkuRPC = PikkuRPC,
|
|
229
|
-
IsChannel extends true | null = null,
|
|
230
|
-
MCPTools extends string | never = never,
|
|
231
|
-
TypedWorkflow extends PikkuWorkflowWire | never = PikkuWorkflowWire,
|
|
232
|
-
TriggerOutput = unknown,
|
|
233
|
-
// `any`, not `Out`: the emitted `TypedScenario<Out>` supplies the real
|
|
234
|
-
// context, and this default is what other generics constrain against. See
|
|
235
|
-
// `ScenarioContext`.
|
|
236
|
-
TypedScenario extends PikkuScenarioWire<any> | never = PikkuScenarioWire<any>,
|
|
237
|
-
TypedActors extends ScenarioPersonas = ScenarioPersonas,
|
|
238
|
-
TypedCredentials = Record<string, unknown>,
|
|
239
|
-
> = {
|
|
240
|
-
/** Always present — lazily initialised on first access for every function invocation */
|
|
241
|
-
rpc: TypedRPC
|
|
242
|
-
} & Partial<{
|
|
243
|
-
wireType: PikkuWiringTypes
|
|
244
|
-
wireId: string
|
|
245
|
-
/**
|
|
246
|
-
* A logger scoped to this invocation, when a host attaches one. Core never
|
|
247
|
-
* sets it; services that log fall back to the singleton logger.
|
|
248
|
-
*/
|
|
249
|
-
logger: Logger
|
|
250
|
-
/** Trace ID for distributed tracing — propagated across remote RPC calls via the x-request-id header */
|
|
251
|
-
traceId: string
|
|
252
|
-
functionId: string
|
|
253
|
-
addonNamespace: string
|
|
254
|
-
http: PikkuHTTP<In>
|
|
255
|
-
mcp: PikkuMCP<MCPTools>
|
|
256
|
-
// `channel.remote` is typed off the same generated map as `rpc.remote`, so
|
|
257
|
-
// calling back into the connected peer is checked against the app's own
|
|
258
|
-
// function contracts rather than being a string and an `any`.
|
|
259
|
-
channel: [IsChannel] extends [null]
|
|
260
|
-
? PikkuChannel<unknown, Out, TypedRPC['remote']>
|
|
261
|
-
: PikkuChannel<unknown, Out, TypedRPC['remote']> | undefined
|
|
262
|
-
scheduledTask: PikkuScheduledTask
|
|
263
|
-
queue: PikkuQueue
|
|
264
|
-
cli: PikkuCLI<TypedRPC['remote']>
|
|
265
|
-
workflow: TypedWorkflow
|
|
266
|
-
scenario: TypedScenario
|
|
267
|
-
actors: TypedActors
|
|
268
|
-
/**
|
|
269
|
-
* The persona this step runs as, injected by the runner.
|
|
270
|
-
*
|
|
271
|
-
* Required on a `browser` binding, which cannot be provisioned without one,
|
|
272
|
-
* and on any binding whose step declares `actor: true`. A step that declares
|
|
273
|
-
* neither has no `actor` on its wire at all rather than an optional one —
|
|
274
|
-
* a pure assertion has nobody to be, and `attemptsSignIn` deliberately posts
|
|
275
|
-
* credentials instead of reusing an actor's session.
|
|
276
|
-
*/
|
|
277
|
-
actor: ScenarioPersonaOf<TypedActors>
|
|
278
|
-
/** Present on every scenario step invocation */
|
|
279
|
-
scenarioStep: PikkuScenarioStepWire
|
|
280
|
-
/** Present only when the runner provisioned a browser for this step */
|
|
281
|
-
browser: PikkuBrowserWire
|
|
282
|
-
workflowStep: WorkflowStepWire
|
|
283
|
-
graph: PikkuGraphWire
|
|
284
|
-
trigger: PikkuTrigger<TriggerOutput>
|
|
285
|
-
gateway: PikkuGateway
|
|
286
|
-
session: HasInitialSession extends true
|
|
287
|
-
? UserSession
|
|
288
|
-
: UserSession | undefined
|
|
289
|
-
setSession: (session: UserSession) => Promise<void> | void
|
|
290
|
-
clearSession: () => Promise<void> | void
|
|
291
|
-
/** Fetch the latest session (may read from backing store) */
|
|
292
|
-
getSession: () => Promise<UserSession> | UserSession | undefined
|
|
293
|
-
hasSessionChanged: () => boolean
|
|
294
|
-
pikkuUserId: string
|
|
295
|
-
/** Set a credential value (available in middleware) */
|
|
296
|
-
setCredential: (name: string, value: unknown) => void
|
|
297
|
-
/** Get a single credential by name — lazy-loads from CredentialService on first call, sync thereafter */
|
|
298
|
-
getCredential: GetCredential<TypedCredentials>
|
|
299
|
-
/** Get all resolved credentials — lazy-loads from CredentialService on first call, sync thereafter */
|
|
300
|
-
getCredentials: () =>
|
|
301
|
-
Record<string, unknown> | Promise<Record<string, unknown>>
|
|
302
|
-
audit: {
|
|
303
|
-
durability: AuditDurability
|
|
304
|
-
}
|
|
305
|
-
/**
|
|
306
|
-
* Declare that everything after this line changes something.
|
|
307
|
-
*
|
|
308
|
-
* Present only on functions that are not `readonly` — a read has nothing to
|
|
309
|
-
* declare. Throws `AbandonedError` if whatever asked for this work has
|
|
310
|
-
* already gone away (an interrupted agent run, a disconnected client), so the
|
|
311
|
-
* mutation never runs and the abort is clean. Otherwise it marks the call as
|
|
312
|
-
* mutating, so an interrupt landing after this point is reported rather than
|
|
313
|
-
* silently discarded.
|
|
314
|
-
*
|
|
315
|
-
* Cooperative: a function that never calls it is assumed to have changed
|
|
316
|
-
* something, which is the safe default.
|
|
317
|
-
*/
|
|
318
|
-
beginChanges: () => Promise<void>
|
|
319
|
-
}>
|
|
320
|
-
|
|
321
|
-
/** Wire as constructed by runners, before the function runner lazily adds `rpc`. */
|
|
322
|
-
export type PikkuRawWire = Omit<PikkuWire, 'rpc'>
|
|
323
|
-
|
|
324
|
-
export type CoreServices<SingletonServices = CoreSingletonServices> =
|
|
325
|
-
SingletonServices
|
|
326
|
-
|
|
327
|
-
/** Strips `secrets` from a services type. */
|
|
328
|
-
export type SecretlessServices<Services> = Omit<Services, 'secrets'>
|
|
329
|
-
|
|
330
|
-
/** The constraint every function-, permission- and auth-facing type is bounded by. */
|
|
331
|
-
export type CoreSecretlessSingletonServices<
|
|
332
|
-
Config extends CoreConfig = CoreConfig,
|
|
333
|
-
> = SecretlessServices<CoreSingletonServices<Config>>
|
|
334
|
-
|
|
335
|
-
export type WireServices<
|
|
336
|
-
SingletonServices extends CoreSingletonServices = CoreSingletonServices,
|
|
337
|
-
Services = CoreServices<SingletonServices>,
|
|
338
|
-
> = Omit<Services, keyof SingletonServices | 'session'>
|
|
339
|
-
|
|
340
|
-
export type CreateSingletonServices<
|
|
341
|
-
Config extends CoreConfig,
|
|
342
|
-
SingletonServices extends CoreSingletonServices,
|
|
343
|
-
> = (
|
|
344
|
-
config: Config,
|
|
345
|
-
existingServices?: Partial<SingletonServices>
|
|
346
|
-
) => Promise<SingletonServices>
|
|
347
|
-
|
|
348
|
-
export type CreateWireServices<
|
|
349
|
-
SingletonServices extends CoreSingletonServices = CoreSingletonServices,
|
|
350
|
-
Services extends CoreServices<SingletonServices> =
|
|
351
|
-
CoreServices<SingletonServices>,
|
|
352
|
-
UserSession extends CoreUserSession = CoreUserSession,
|
|
353
|
-
> = (
|
|
354
|
-
services: SingletonServices,
|
|
355
|
-
wire: PikkuRawWire
|
|
356
|
-
) => Promise<WireServices<Services, SingletonServices>>
|
|
357
|
-
|
|
358
|
-
export type CreateConfig<
|
|
359
|
-
Config extends CoreConfig,
|
|
360
|
-
RemainingArgs extends any[] = unknown[],
|
|
361
|
-
> = (variables?: VariablesService, ...args: RemainingArgs) => Promise<Config>
|
|
362
|
-
|
|
363
|
-
export type ServerLifecycle<
|
|
364
|
-
SingletonServices extends CoreSingletonServices = CoreSingletonServices,
|
|
365
|
-
> = {
|
|
366
|
-
beforeStart?: (services: SingletonServices) => void | Promise<void>
|
|
367
|
-
afterStart?: (services: SingletonServices) => void | Promise<void>
|
|
368
|
-
beforeStop?: (services: SingletonServices) => void | Promise<void>
|
|
369
|
-
afterStop?: (services: SingletonServices) => void | Promise<void>
|
|
370
|
-
}
|
|
371
|
-
|
|
372
|
-
export type CommonWireMeta = {
|
|
373
|
-
pikkuFuncId: string
|
|
374
|
-
packageName?: string
|
|
375
|
-
|
|
376
|
-
/** A human name for this wiring, shown wherever it is listed rather than called. */
|
|
377
|
-
title?: string
|
|
378
|
-
/** Filters this wiring in and out of a build — see the `tags` option on `pikku all`. It has no effect at runtime. */
|
|
379
|
-
tags?: string[]
|
|
380
|
-
/** A one-line description for listings, where the full `description` is too long. */
|
|
381
|
-
summary?: string
|
|
382
|
-
/** What this does, for whoever is reading the wiring rather than writing it. */
|
|
383
|
-
description?: string
|
|
384
|
-
/** Names of error classes this may throw, so each one's registered status is used instead of a 500. */
|
|
385
|
-
errors?: string[]
|
|
386
|
-
|
|
387
|
-
middleware?: MiddlewareMetadata[]
|
|
388
|
-
permissions?: PermissionMetadata[]
|
|
389
|
-
}
|
|
390
|
-
|
|
391
|
-
/**
|
|
392
|
-
* The shape of `.pikku/audit.json`. Shared by the CLI (writer), the console
|
|
393
|
-
* addon (reader) and the console UI (renderer).
|
|
394
|
-
*/
|
|
395
|
-
export type SecuritySeverity = 'critical' | 'high' | 'moderate' | 'low' | 'info'
|
|
396
|
-
export type SecurityUpdateLevel = 'major' | 'minor' | 'patch' | 'unknown'
|
|
397
|
-
|
|
398
|
-
export interface SecurityAuditIssue {
|
|
399
|
-
package: string
|
|
400
|
-
severity: SecuritySeverity
|
|
401
|
-
title: string
|
|
402
|
-
advisoryId: string
|
|
403
|
-
url: string
|
|
404
|
-
vulnerableVersions: string
|
|
405
|
-
cwe: string[]
|
|
406
|
-
cvssScore: number | null
|
|
407
|
-
recommendedVersion: string | null
|
|
408
|
-
}
|
|
409
|
-
|
|
410
|
-
export interface SecurityAuditUpdate {
|
|
411
|
-
package: string
|
|
412
|
-
current: string
|
|
413
|
-
latest: string
|
|
414
|
-
level: SecurityUpdateLevel
|
|
415
|
-
}
|
|
416
|
-
|
|
417
|
-
export interface SecurityAuditSummary {
|
|
418
|
-
totalIssues: number
|
|
419
|
-
critical: number
|
|
420
|
-
high: number
|
|
421
|
-
moderate: number
|
|
422
|
-
low: number
|
|
423
|
-
totalUpdates: number
|
|
424
|
-
major: number
|
|
425
|
-
minor: number
|
|
426
|
-
patch: number
|
|
427
|
-
}
|
|
428
|
-
|
|
429
|
-
export interface SecurityAuditReport {
|
|
430
|
-
schemaVersion: number
|
|
431
|
-
tool: string
|
|
432
|
-
generatedAt: string
|
|
433
|
-
note?: string
|
|
434
|
-
issues: SecurityAuditIssue[]
|
|
435
|
-
updates: SecurityAuditUpdate[]
|
|
436
|
-
summary: SecurityAuditSummary
|
|
437
|
-
}
|
|
438
|
-
|
|
439
|
-
/**
|
|
440
|
-
* A generated schema's declaration site, used by the credential/secret/variable
|
|
441
|
-
* definition validators to point conflicting definitions at their source.
|
|
442
|
-
*/
|
|
443
|
-
export interface SchemaRefLike {
|
|
444
|
-
variableName: string
|
|
445
|
-
sourceFile: string
|
|
446
|
-
}
|
package/src/types/index.ts
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
export type {
|
|
2
|
-
AuthInstance,
|
|
3
|
-
CommonWireMeta,
|
|
4
|
-
CoreConfig,
|
|
5
|
-
CoreServices,
|
|
6
|
-
CoreSingletonServices,
|
|
7
|
-
CoreUserSession,
|
|
8
|
-
CreateConfig,
|
|
9
|
-
CreateSingletonServices,
|
|
10
|
-
CreateWireServices,
|
|
11
|
-
GetCredential,
|
|
12
|
-
PikkuWire,
|
|
13
|
-
PikkuWiringTypes,
|
|
14
|
-
PostgresConfig,
|
|
15
|
-
SecretlessServices,
|
|
16
|
-
SecurityAuditIssue,
|
|
17
|
-
SecurityAuditReport,
|
|
18
|
-
SecurityAuditSummary,
|
|
19
|
-
SecurityAuditUpdate,
|
|
20
|
-
SecuritySeverity,
|
|
21
|
-
SecurityUpdateLevel,
|
|
22
|
-
ServerLifecycle,
|
|
23
|
-
WireServices,
|
|
24
|
-
} from './core.types.js'
|
|
25
|
-
export type * from './state.types.js'
|