@cosmicdrift/kumiko-framework 0.389.0 → 0.390.1
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/AGENTS.md +9 -4
- package/README.md +1 -1
- package/agents/examples/apex-surface-auth.md +2 -3
- package/agents/examples/api-worker-split.md +9 -2
- package/agents/examples/auth-claims.md +1 -1
- package/agents/examples/cross-feature-events.md +12 -12
- package/agents/examples/crypto-shredding-hr.md +2 -2
- package/agents/examples/encrypted-tenant-config.md +1 -1
- package/agents/examples/error-contract.md +12 -7
- package/agents/examples/event-sourcing.md +29 -29
- package/agents/examples/files-post-processing.md +10 -8
- package/agents/examples/inbound-mail-triage.md +1 -0
- package/agents/examples/lane-routing.md +2 -1
- package/agents/examples/legal-pages.md +2 -2
- package/agents/examples/lifecycle-hooks.md +3 -3
- package/agents/examples/managed-config.md +4 -4
- package/agents/examples/managed-pages.md +1 -1
- package/agents/examples/relations.md +19 -4
- package/agents/examples/search.md +4 -4
- package/agents/examples/secrets-demo.md +9 -6
- package/agents/examples/state-machine.md +2 -2
- package/agents/examples/tenant-settings.md +1 -1
- package/agents/examples/user-data-rights.md +3 -6
- package/agents/examples/workflow-engine.md +53 -47
- package/agents/examples.md +4 -4
- package/agents/features.md +1 -1
- package/dist/api/auth-middleware.js +1 -1
- package/dist/api/auth-routes-invite.js +2 -1
- package/dist/api/entity-read-access.d.ts +3 -1
- package/dist/api/export/export-columns.d.ts +3 -1
- package/dist/api/export/export-route.js +3 -2
- package/dist/api/export/export-screen.d.ts +2 -1
- package/dist/api/extra-route.d.ts +3 -1
- package/dist/api/index.d.ts +23 -27
- package/dist/api/index.js +13 -15
- package/dist/api/jwt.js +1 -1
- package/dist/api/observability-middleware.d.ts +1 -1
- package/dist/api/observability-middleware.js +2 -1
- package/dist/api/request-context-internals.d.ts +31 -0
- package/dist/api/request-context-internals.js +11 -0
- package/dist/api/request-context-scopes.d.ts +14 -0
- package/dist/api/request-context-scopes.js +69 -0
- package/dist/api/request-context.d.ts +1 -40
- package/dist/api/request-context.js +22 -51
- package/dist/api/request-id-middleware.d.ts +1 -1
- package/dist/api/route-registrars.d.ts +2 -1
- package/dist/api/route-registrars.js +1 -1
- package/dist/api/routes.js +7 -3
- package/dist/api/server-boot-checks.d.ts +1 -1
- package/dist/api/server-boot-checks.js +2 -2
- package/dist/api/server-event-dispatcher.d.ts +6 -1
- package/dist/api/server-event-dispatcher.js +3 -4
- package/dist/api/server-extra-routes.d.ts +1 -1
- package/dist/api/server-extra-routes.js +2 -1
- package/dist/api/server-middleware.js +3 -1
- package/dist/api/server-routes.d.ts +2 -1
- package/dist/api/server-wiring.js +6 -4
- package/dist/api/server.d.ts +2 -1
- package/dist/api/sse-route.d.ts +2 -1
- package/dist/api/tenant-scoped-secrets.d.ts +2 -0
- package/dist/api/tenant-scoped-secrets.js +13 -0
- package/dist/api/websocket-route.d.ts +1 -1
- package/dist/auth/index.d.ts +0 -1
- package/dist/auth/roles.d.ts +0 -5
- package/dist/compliance/duration-spec.d.ts +0 -1
- package/dist/compliance/duration-spec.js +0 -5
- package/dist/compliance/index.d.ts +4 -4
- package/dist/compliance/index.js +2 -2
- package/dist/compliance/profiles.d.ts +0 -15
- package/dist/compliance/profiles.js +0 -23
- package/dist/config/index.d.ts +10 -10
- package/dist/config/index.js +13 -1
- package/dist/config/internals.d.ts +9 -0
- package/dist/config/internals.js +1 -0
- package/dist/consumer-cli-internals.d.ts +4 -0
- package/dist/consumer-cli-internals.js +1 -0
- package/dist/consumer-cli.d.ts +1 -4
- package/dist/consumer-cli.js +5 -1
- package/dist/crypto/event-pii.js +1 -1
- package/dist/crypto/index.d.ts +8 -9
- package/dist/crypto/index.js +7 -8
- package/dist/crypto/pg-kms-adapter.js +6 -1
- package/dist/db/apply-entity-event.d.ts +1 -1
- package/dist/db/apply-entity-event.js +15 -47
- package/dist/db/blind-index-cleanup.js +91 -77
- package/dist/db/collect-table-metas.js +1 -1
- package/dist/db/compound-types.d.ts +1 -1
- package/dist/db/compound-types.js +0 -7
- package/dist/db/config-seed.d.ts +2 -1
- package/dist/db/config-seed.js +6 -1
- package/dist/db/connection.d.ts +3 -1
- package/dist/db/connection.js +15 -5
- package/dist/db/cross-tenant-reads.d.ts +1 -1
- package/dist/db/cross-tenant-reads.js +1 -1
- package/dist/db/dialect.d.ts +0 -5
- package/dist/db/dialect.js +0 -3
- package/dist/db/driver-value-preparation.js +23 -2
- package/dist/db/eagerload.d.ts +2 -1
- package/dist/db/entity-field-encryption.d.ts +1 -1
- package/dist/db/entity-table-meta.d.ts +1 -1
- package/dist/db/event-store-executor-context.d.ts +3 -1
- package/dist/db/event-store-executor-context.js +4 -3
- package/dist/db/event-store-executor-read-filter.d.ts +1 -1
- package/dist/db/event-store-executor-read-rows.d.ts +2 -1
- package/dist/db/event-store-executor-read-search.d.ts +2 -1
- package/dist/db/event-store-executor-read-sort.d.ts +2 -1
- package/dist/db/event-store-executor-read.js +2 -2
- package/dist/db/event-store-executor-write-atomic.js +8 -7
- package/dist/db/event-store-executor-write-steps.d.ts +3 -2
- package/dist/db/event-store-executor-write.js +7 -4
- package/dist/db/event-store-executor.d.ts +1 -1
- package/dist/db/executor-managed-tables.d.ts +7 -1
- package/dist/db/executor-managed-tables.js +11 -2
- package/dist/db/index.d.ts +29 -28
- package/dist/db/index.js +22 -20
- package/dist/db/known-table-names.d.ts +6 -0
- package/dist/db/known-table-names.js +21 -0
- package/dist/db/list-aggregate-labels.d.ts +1 -1
- package/dist/db/located-timestamp.d.ts +1 -1
- package/dist/db/located-timestamp.js +0 -5
- package/dist/db/migrate-generator.d.ts +17 -1
- package/dist/db/migrate-generator.js +50 -20
- package/dist/db/migrate-primary-key.d.ts +12 -0
- package/dist/db/migrate-primary-key.js +45 -0
- package/dist/db/migrate-rls-diff.d.ts +20 -0
- package/dist/db/migrate-rls-diff.js +61 -0
- package/dist/db/migrate-runner.js +4 -0
- package/dist/db/money.d.ts +1 -1
- package/dist/db/money.js +1 -1
- package/dist/db/parent-ref-clause.d.ts +2 -1
- package/dist/db/pg-error.d.ts +2 -0
- package/dist/db/pg-error.js +11 -0
- package/dist/db/queries/ddl.d.ts +3 -0
- package/dist/db/queries/ddl.js +34 -1
- package/dist/db/queries/event-store.js +4 -2
- package/dist/db/queries/event-tenants.d.ts +2 -0
- package/dist/db/queries/event-tenants.js +17 -0
- package/dist/db/queries/rebuild-rls-guard.d.ts +2 -0
- package/dist/db/queries/rebuild-rls-guard.js +29 -0
- package/dist/db/queries/rls-boot-catalog.d.ts +16 -0
- package/dist/db/queries/rls-boot-catalog.js +39 -0
- package/dist/db/queries/rls-catalog.d.ts +6 -0
- package/dist/db/queries/rls-catalog.js +82 -0
- package/dist/db/queries/rls-scope.d.ts +3 -0
- package/dist/db/queries/rls-scope.js +17 -0
- package/dist/db/queries/rls-shape.d.ts +10 -0
- package/dist/db/queries/rls-shape.js +42 -0
- package/dist/db/queries/session-advisory-lock.d.ts +2 -0
- package/dist/db/queries/session-advisory-lock.js +23 -0
- package/dist/db/queries/shadow-swap.d.ts +1 -2
- package/dist/db/queries/shadow-swap.js +9 -25
- package/dist/db/queries/test-stack.d.ts +4 -1
- package/dist/db/queries/test-stack.js +84 -2
- package/dist/db/query.js +11 -7
- package/dist/db/reference-data.d.ts +1 -1
- package/dist/db/reference-data.js +6 -1
- package/dist/db/render-ddl.d.ts +6 -2
- package/dist/db/render-ddl.js +7 -7
- package/dist/db/render-rls-ddl.d.ts +35 -0
- package/dist/db/render-rls-ddl.js +127 -0
- package/dist/db/replay-migration-sql.d.ts +3 -1
- package/dist/db/replay-migration-sql.js +22 -5
- package/dist/db/replay-rls.d.ts +25 -0
- package/dist/db/replay-rls.js +156 -0
- package/dist/db/row-level-security-boot-check.d.ts +6 -0
- package/dist/db/row-level-security-boot-check.js +86 -0
- package/dist/db/row-level-security-connection.d.ts +3 -0
- package/dist/db/row-level-security-connection.js +213 -0
- package/dist/db/row-level-security-scope.d.ts +33 -0
- package/dist/db/row-level-security-scope.js +127 -0
- package/dist/db/scope-tenant-db-to-tenant.d.ts +3 -0
- package/dist/db/scope-tenant-db-to-tenant.js +14 -0
- package/dist/db/sql-identifier.d.ts +1 -0
- package/dist/db/sql-identifier.js +3 -0
- package/dist/db/table-builder.d.ts +2 -1
- package/dist/db/table-builder.js +1 -1
- package/dist/db/table-info.js +1 -1
- package/dist/db/table-push.d.ts +11 -2
- package/dist/db/table-push.js +15 -2
- package/dist/db/tenant-db-runner.d.ts +3 -1
- package/dist/db/tenant-db-runner.js +4 -3
- package/dist/db/tenant-db-scoped-rebind.d.ts +10 -0
- package/dist/db/tenant-db-scoped-rebind.js +33 -0
- package/dist/db/tenant-db-statement-runner.d.ts +13 -0
- package/dist/db/tenant-db-statement-runner.js +48 -0
- package/dist/db/tenant-db.d.ts +17 -12
- package/dist/db/tenant-db.js +49 -120
- package/dist/db/tenant-id-filter.d.ts +3 -0
- package/dist/db/tenant-id-filter.js +30 -0
- package/dist/db/transaction-serialization.d.ts +6 -0
- package/dist/db/transaction-serialization.js +60 -0
- package/dist/derivatives/delete-stored-file.js +1 -1
- package/dist/derivatives/index.d.ts +2 -5
- package/dist/derivatives/index.js +2 -3
- package/dist/engine/access.d.ts +2 -1
- package/dist/engine/access.js +1 -1
- package/dist/engine/boot-validator/entity-handler.d.ts +2 -1
- package/dist/engine/boot-validator/entity-handler.js +1 -1
- package/dist/engine/boot-validator/entity-list-aggregate-options.d.ts +1 -1
- package/dist/engine/boot-validator/list-table-aggregate-options.d.ts +1 -1
- package/dist/engine/boot-validator/list-table-aggregate-query.d.ts +2 -1
- package/dist/engine/boot-validator/nav.d.ts +3 -1
- package/dist/engine/boot-validator/nav.js +1 -1
- package/dist/engine/boot-validator/ownership.d.ts +2 -1
- package/dist/engine/boot-validator/parent-ref.d.ts +2 -1
- package/dist/engine/boot-validator/projection-list-screens.d.ts +2 -1
- package/dist/engine/boot-validator/query-refs.d.ts +2 -1
- package/dist/engine/boot-validator/screens-forms.d.ts +2 -1
- package/dist/engine/boot-validator/screens-kind-shared.d.ts +3 -1
- package/dist/engine/boot-validator/screens.d.ts +2 -1
- package/dist/engine/boot-validator/workspaces.d.ts +3 -1
- package/dist/engine/bridge-stub.d.ts +5 -2
- package/dist/engine/bridge-stub.js +39 -24
- package/dist/engine/config-helpers.d.ts +2 -2
- package/dist/engine/config-helpers.js +0 -9
- package/dist/engine/constants.d.ts +0 -10
- package/dist/engine/constants.js +0 -8
- package/dist/engine/create-app.js +1 -1
- package/dist/engine/define-feature.d.ts +2 -1
- package/dist/engine/define-feature.js +1 -2
- package/dist/engine/define-handler.d.ts +1 -1
- package/dist/engine/define-step.d.ts +0 -1
- package/dist/engine/define-step.js +0 -3
- package/dist/engine/embedded-derived.d.ts +1 -1
- package/dist/engine/entity-handlers.d.ts +2 -1
- package/dist/engine/entity-handlers.js +7 -7
- package/dist/engine/entity-list-runtime-options.js +3 -1
- package/dist/engine/entity-list-searchability.d.ts +2 -1
- package/dist/engine/event-def.d.ts +2 -1
- package/dist/engine/event-helpers.d.ts +3 -1
- package/dist/engine/event-helpers.js +3 -3
- package/dist/engine/extension-names.d.ts +2 -8
- package/dist/engine/extension-names.js +2 -2
- package/dist/engine/extension-selector-plugins.d.ts +1 -1
- package/dist/engine/extensions/storage-provider.d.ts +1 -2
- package/dist/engine/extensions/user-data.d.ts +0 -8
- package/dist/engine/factories.d.ts +2 -1
- package/dist/engine/feature-builder-state.d.ts +8 -1
- package/dist/engine/feature-changelog.d.ts +1 -1
- package/dist/engine/feature-config-events-jobs.d.ts +4 -1
- package/dist/engine/feature-entity-handlers.d.ts +5 -1
- package/dist/engine/feature-manifest.js +1 -1
- package/dist/engine/feature-ui-extensions.d.ts +7 -1
- package/dist/engine/feature-ui-extensions.js +6 -4
- package/dist/engine/field-access.d.ts +2 -1
- package/dist/engine/handler-field-references.d.ts +0 -4
- package/dist/engine/index.d.ts +57 -54
- package/dist/engine/index.js +22 -27
- package/dist/engine/instruction-fields.d.ts +1 -1
- package/dist/engine/personal-data-fields.d.ts +1 -1
- package/dist/engine/qualified-name.d.ts +0 -1
- package/dist/engine/read-claim.d.ts +2 -1
- package/dist/engine/registry-facade.js +0 -3
- package/dist/engine/registry-ingest.d.ts +2 -1
- package/dist/engine/registry-ingest.js +1 -2
- package/dist/engine/registry-state.d.ts +12 -2
- package/dist/engine/registry-state.js +2 -3
- package/dist/engine/registry-validate.d.ts +3 -1
- package/dist/engine/registry-validate.js +7 -7
- package/dist/engine/run-in.d.ts +1 -1
- package/dist/engine/run-in.js +0 -1
- package/dist/engine/schema-builder.d.ts +1 -1
- package/dist/engine/schema-builder.js +1 -1
- package/dist/engine/screen-filter-ops.d.ts +2 -1
- package/dist/engine/screen-filter-ops.js +0 -5
- package/dist/engine/soft-delete-cleanup.d.ts +1 -1
- package/dist/engine/soft-delete-cleanup.js +4 -4
- package/dist/engine/state-machine.js +2 -1
- package/dist/engine/steps/_read-source.js +1 -1
- package/dist/engine/steps/aggregate-append-event.js +2 -2
- package/dist/engine/steps/call-feature.js +2 -2
- package/dist/engine/steps/mail-send.js +1 -1
- package/dist/engine/steps/retry.js +1 -1
- package/dist/engine/steps/wait-for-event.js +1 -1
- package/dist/engine/steps/wait.js +1 -1
- package/dist/engine/steps/webhook-send.js +1 -1
- package/dist/engine/template-variables.d.ts +2 -1
- package/dist/engine/transfer-adjacency.d.ts +1 -1
- package/dist/engine/types/index.d.ts +8 -31
- package/dist/engine/types/index.js +2 -10
- package/dist/engine/validation.d.ts +2 -1
- package/dist/entrypoint/index.d.ts +7 -35
- package/dist/entrypoint/index.js +7 -1
- package/dist/entrypoint/internals.d.ts +40 -0
- package/dist/entrypoint/internals.js +1 -0
- package/dist/entrypoint/row-level-security-mode-check.d.ts +3 -0
- package/dist/entrypoint/row-level-security-mode-check.js +19 -0
- package/dist/env/dry-run-internals.d.ts +10 -0
- package/dist/env/dry-run-internals.js +1 -0
- package/dist/env/dry-run.d.ts +1 -10
- package/dist/env/dry-run.js +2 -1
- package/dist/env/index.d.ts +1 -85
- package/dist/env/index.js +6 -50
- package/dist/env/internals.d.ts +87 -0
- package/dist/env/internals.js +53 -0
- package/dist/errors/classes.js +2 -2
- package/dist/errors/index.d.ts +5 -14
- package/dist/errors/index.js +4 -9
- package/dist/errors/member-resolution.js +1 -1
- package/dist/errors/reasons.d.ts +0 -1
- package/dist/errors/reasons.js +7 -7
- package/dist/errors/serialize.d.ts +0 -18
- package/dist/errors/serialize.js +0 -27
- package/dist/es-ops/index.d.ts +4 -4
- package/dist/es-ops/index.js +2 -2
- package/dist/es-ops/operations-schema.d.ts +1 -1
- package/dist/es-ops/types.d.ts +4 -5
- package/dist/event-store/admin-api-internals.d.ts +14 -0
- package/dist/event-store/admin-api-internals.js +1 -0
- package/dist/event-store/admin-api.d.ts +1 -14
- package/dist/event-store/admin-api.js +11 -6
- package/dist/event-store/archive.js +4 -2
- package/dist/event-store/errors.js +2 -2
- package/dist/event-store/event-store.js +41 -34
- package/dist/event-store/events-schema.js +4 -1
- package/dist/event-store/index.d.ts +11 -13
- package/dist/event-store/index.js +7 -9
- package/dist/event-store/rebuild-dead-letter.js +4 -2
- package/dist/event-store/snapshot.js +4 -3
- package/dist/event-store/stream-scope.d.ts +2 -0
- package/dist/event-store/stream-scope.js +6 -0
- package/dist/event-store/upcaster-dead-letter.js +4 -2
- package/dist/event-store/upcaster.d.ts +2 -1
- package/dist/files/action-form-upload.d.ts +2 -1
- package/dist/files/action-form-upload.js +1 -1
- package/dist/files/assert-file-refs-belong-to-tenant.d.ts +2 -1
- package/dist/files/assert-file-refs-belong-to-tenant.js +1 -1
- package/dist/files/bind-pending-file-refs.d.ts +2 -1
- package/dist/files/bind-pending-file-refs.js +2 -1
- package/dist/files/bind-referenced-files.write.js +1 -1
- package/dist/files/create-file-ref-from-bytes.d.ts +6 -3
- package/dist/files/create-file-ref-from-bytes.js +3 -3
- package/dist/files/create-file-ref.d.ts +3 -2
- package/dist/files/create-file-ref.js +2 -2
- package/dist/files/dispose-removed-file-refs.d.ts +2 -1
- package/dist/files/dispose-removed-file-refs.js +1 -1
- package/dist/files/feature.js +2 -2
- package/dist/files/file-handle.js +1 -1
- package/dist/files/file-routes.d.ts +1 -1
- package/dist/files/file-routes.js +12 -2
- package/dist/files/index.d.ts +11 -13
- package/dist/files/index.js +5 -7
- package/dist/files/load-save-file-refs.d.ts +2 -1
- package/dist/files/load-save-file-refs.js +1 -1
- package/dist/files/provider-resolver.d.ts +5 -4
- package/dist/files/provider-resolver.js +4 -4
- package/dist/files/storage-tracking.js +4 -2
- package/dist/files/sweep-orphaned-uploads.d.ts +1 -1
- package/dist/files/sweep-orphaned-uploads.js +1 -1
- package/dist/i18n/index.d.ts +2 -8
- package/dist/i18n/index.js +1 -1
- package/dist/i18n/internals.d.ts +7 -0
- package/dist/i18n/internals.js +1 -0
- package/dist/i18n/required-surface-keys.d.ts +4 -1
- package/dist/internal/row-level-security.d.ts +3 -0
- package/dist/internal/row-level-security.js +3 -0
- package/dist/internal/stack-support.d.ts +1 -1
- package/dist/internal/stack-support.js +1 -1
- package/dist/internal/testing.d.ts +1 -0
- package/dist/internal/testing.js +9 -5
- package/dist/jobs/index.d.ts +1 -1
- package/dist/jobs/job-append-event.d.ts +12 -0
- package/dist/jobs/job-append-event.js +30 -0
- package/dist/jobs/job-runner-context.d.ts +2 -2
- package/dist/jobs/job-runner-context.js +46 -16
- package/dist/jobs/job-runner-execution.d.ts +1 -1
- package/dist/jobs/job-runner-execution.js +6 -4
- package/dist/jobs/job-runner-gates.d.ts +1 -1
- package/dist/jobs/job-runner-gates.js +0 -1
- package/dist/jobs/job-runner-helpers.d.ts +11 -4
- package/dist/jobs/job-runner-helpers.js +10 -1
- package/dist/jobs/job-runner-scope.d.ts +5 -2
- package/dist/jobs/job-runner-types.d.ts +2 -1
- package/dist/jobs/job-runner.js +19 -6
- package/dist/jobs/max-per-tenant.d.ts +1 -1
- package/dist/logging/index.d.ts +1 -2
- package/dist/logging/index.js +1 -1
- package/dist/logging/pino-logger.js +1 -1
- package/dist/logging/utils.d.ts +1 -0
- package/dist/logging/utils.js +6 -0
- package/dist/migrations/index.d.ts +3 -3
- package/dist/migrations/index.js +3 -3
- package/dist/migrations/pending-rebuilds.d.ts +1 -1
- package/dist/migrations/pending-rebuilds.js +1 -1
- package/dist/migrations/pii-event-backfill.js +4 -1
- package/dist/observability/escape-hatch-report.d.ts +2 -1
- package/dist/observability/index.d.ts +7 -15
- package/dist/observability/index.js +4 -12
- package/dist/observability/metric-validator.js +1 -1
- package/dist/observability/metrics-handle.d.ts +0 -1
- package/dist/observability/metrics-handle.js +2 -15
- package/dist/observability/recording-tracer.d.ts +1 -2
- package/dist/observability/recording-tracer.js +0 -6
- package/dist/observability/sensitive-filter.d.ts +0 -2
- package/dist/observability/sensitive-filter.js +0 -29
- package/dist/pipeline/active-membership.d.ts +2 -1
- package/dist/pipeline/active-membership.js +6 -2
- package/dist/pipeline/append-event-core.d.ts +2 -1
- package/dist/pipeline/append-event-core.js +2 -2
- package/dist/pipeline/attach-outside-transaction.d.ts +3 -0
- package/dist/pipeline/attach-outside-transaction.js +13 -0
- package/dist/pipeline/auth-claims-resolver.d.ts +2 -1
- package/dist/pipeline/cascade-handler.d.ts +2 -1
- package/dist/pipeline/cascade-handler.js +3 -2
- package/dist/pipeline/config-accessor-factory.d.ts +1 -1
- package/dist/pipeline/config-accessor-factory.js +1 -1
- package/dist/pipeline/context-services.d.ts +56 -0
- package/dist/pipeline/context-services.js +73 -0
- package/dist/pipeline/dispatch-batch.d.ts +2 -1
- package/dist/pipeline/dispatch-batch.js +31 -18
- package/dist/pipeline/dispatch-query.js +5 -4
- package/dist/pipeline/dispatch-scope.d.ts +6 -0
- package/dist/pipeline/dispatch-scope.js +27 -0
- package/dist/pipeline/dispatch-shared.d.ts +13 -9
- package/dist/pipeline/dispatch-shared.js +75 -198
- package/dist/pipeline/dispatch-stream.js +8 -4
- package/dist/pipeline/dispatch-write.d.ts +2 -1
- package/dist/pipeline/dispatch-write.js +10 -8
- package/dist/pipeline/dispatcher-utils.d.ts +3 -1
- package/dist/pipeline/dispatcher-utils.js +8 -2
- package/dist/pipeline/dispatcher.d.ts +3 -2
- package/dist/pipeline/dispatcher.js +4 -3
- package/dist/pipeline/event-consumer-state.d.ts +0 -1
- package/dist/pipeline/event-dispatcher-delivery.d.ts +1 -1
- package/dist/pipeline/event-dispatcher-delivery.js +4 -2
- package/dist/pipeline/event-dispatcher.d.ts +2 -2
- package/dist/pipeline/event-dispatcher.js +7 -3
- package/dist/pipeline/event-retention.js +59 -56
- package/dist/pipeline/handler-access-error.js +2 -1
- package/dist/pipeline/handler-context-auth.d.ts +5 -6
- package/dist/pipeline/handler-context-auth.js +7 -4
- package/dist/pipeline/handler-context-config.d.ts +2 -5
- package/dist/pipeline/handler-context-config.js +2 -2
- package/dist/pipeline/handler-context-db.d.ts +32 -7
- package/dist/pipeline/handler-context-db.js +26 -17
- package/dist/pipeline/handler-context-dispatch.d.ts +13 -7
- package/dist/pipeline/handler-context-dispatch.js +9 -8
- package/dist/pipeline/handler-context-events.d.ts +22 -36
- package/dist/pipeline/handler-context-events.js +36 -31
- package/dist/pipeline/handler-context-member-resolution.d.ts +2 -0
- package/dist/pipeline/handler-context-member-resolution.js +110 -0
- package/dist/pipeline/handler-context-notify.d.ts +3 -2
- package/dist/pipeline/handler-context-notify.js +1 -1
- package/dist/pipeline/handler-context-observability.d.ts +2 -4
- package/dist/pipeline/handler-context-observability.js +7 -5
- package/dist/pipeline/handler-context-phase-denials.d.ts +11 -0
- package/dist/pipeline/handler-context-phase-denials.js +98 -0
- package/dist/pipeline/handler-context-scope.d.ts +7 -10
- package/dist/pipeline/handler-context-scope.js +18 -20
- package/dist/pipeline/index.d.ts +9 -21
- package/dist/pipeline/index.js +5 -7
- package/dist/pipeline/irreversible-operation-gate.d.ts +1 -1
- package/dist/pipeline/irreversible-operation-gate.js +2 -2
- package/dist/pipeline/lifecycle-pipeline.d.ts +8 -7
- package/dist/pipeline/lifecycle-pipeline.js +9 -15
- package/dist/pipeline/member-read-only-transaction.js +11 -3
- package/dist/pipeline/member-reader.d.ts +1 -1
- package/dist/pipeline/member-reader.js +2 -2
- package/dist/pipeline/msp-rebuild.js +5 -3
- package/dist/pipeline/multi-stream-apply-context.js +3 -2
- package/dist/pipeline/notify-scope.d.ts +2 -1
- package/dist/pipeline/pre-handler-gates.d.ts +2 -1
- package/dist/pipeline/pre-transaction-reservations.d.ts +3 -3
- package/dist/pipeline/pre-transaction-reservations.js +9 -7
- package/dist/pipeline/projection-rebuild.js +12 -5
- package/dist/pipeline/projection-state.d.ts +0 -6
- package/dist/pipeline/projection-state.js +0 -5
- package/dist/pipeline/projections-runner.d.ts +2 -1
- package/dist/pipeline/projections-runner.js +10 -6
- package/dist/pipeline/system-hooks.d.ts +3 -1
- package/dist/pipeline/system-hooks.js +6 -4
- package/dist/pipeline/system-identity-switch.d.ts +4 -2
- package/dist/pipeline/system-identity-switch.js +51 -36
- package/dist/pipeline/typed-append-event.d.ts +2 -0
- package/dist/pipeline/typed-append-event.js +4 -0
- package/dist/pipeline/write-origin.js +2 -2
- package/dist/pipeline/write-result-masking.d.ts +1 -1
- package/dist/random/index.d.ts +1 -2
- package/dist/random/index.js +1 -2
- package/dist/rate-limit/bucket.d.ts +2 -1
- package/dist/rate-limit/middleware.js +2 -1
- package/dist/redis/index.d.ts +3 -4
- package/dist/redis/index.js +2 -2
- package/dist/schema-cli/apply-command.js +5 -2
- package/dist/schema-cli/baseline-command.js +7 -2
- package/dist/schema-cli/generate-command.js +7 -9
- package/dist/schema-cli/shared.d.ts +12 -2
- package/dist/schema-cli/shared.js +24 -2
- package/dist/schema-cli/status-command.js +8 -2
- package/dist/schema-cli/validate-command.js +48 -4
- package/dist/schema-cli.d.ts +0 -1
- package/dist/search/configure-tenant-index.d.ts +1 -3
- package/dist/search/configure-tenant-index.js +0 -4
- package/dist/search/index.d.ts +1 -4
- package/dist/search/index.js +0 -2
- package/dist/search/meilisearch-adapter-internals.d.ts +8 -0
- package/dist/search/meilisearch-adapter-internals.js +9 -0
- package/dist/search/meilisearch-adapter.d.ts +1 -8
- package/dist/search/meilisearch-adapter.js +6 -7
- package/dist/search/meilisearch-peer.d.ts +2 -0
- package/dist/search/meilisearch-peer.js +5 -0
- package/dist/search/reindex-entity.js +93 -87
- package/dist/secrets/index.d.ts +3 -4
- package/dist/secrets/index.js +2 -3
- package/dist/seeding/index.d.ts +2 -2
- package/dist/seeding/index.js +1 -2
- package/dist/time/index.d.ts +2 -2
- package/dist/time/index.js +1 -1
- package/dist/time/tz-context.d.ts +0 -5
- package/dist/time/tz-context.js +0 -9
- package/dist/ui-types/index.d.ts +8 -11
- package/dist/ui-types/index.js +3 -3
- package/dist/upgrade-changelog.d.ts +3 -2
- package/dist/upgrade-changelog.js +12 -8
- package/dist/upgrade-cli-internals.d.ts +8 -0
- package/dist/upgrade-cli-internals.js +63 -0
- package/dist/upgrade-cli.d.ts +2 -9
- package/dist/upgrade-cli.js +28 -70
- package/dist/utils/import-optional-peer.d.ts +6 -0
- package/dist/utils/import-optional-peer.js +19 -0
- package/dist/utils/index.d.ts +1 -4
- package/dist/utils/index.js +1 -4
- package/package.json +23 -19
- package/src/changes.json +236 -0
- package/dist/crypto/request-kms-cache.d.ts +0 -8
- package/dist/crypto/request-kms-cache.js +0 -21
- package/dist/engine/codemod/index.d.ts +0 -2
- package/dist/engine/codemod/index.js +0 -1
- package/dist/engine/codemod/pipeline-codemod.d.ts +0 -50
- package/dist/engine/codemod/pipeline-codemod.js +0 -536
- package/dist/engine/feature-ast/entity-field-types.d.ts +0 -13
- package/dist/engine/feature-ast/entity-field-types.js +0 -35
- package/dist/engine/feature-ast/extractors/ai-steps.d.ts +0 -6
- package/dist/engine/feature-ast/extractors/ai-steps.js +0 -254
- package/dist/engine/feature-ast/extractors/events.d.ts +0 -5
- package/dist/engine/feature-ast/extractors/events.js +0 -275
- package/dist/engine/feature-ast/extractors/handlers.d.ts +0 -24
- package/dist/engine/feature-ast/extractors/handlers.js +0 -358
- package/dist/engine/feature-ast/extractors/hooks.d.ts +0 -24
- package/dist/engine/feature-ast/extractors/hooks.js +0 -248
- package/dist/engine/feature-ast/extractors/index.d.ts +0 -14
- package/dist/engine/feature-ast/extractors/index.js +0 -13
- package/dist/engine/feature-ast/extractors/jobs-routes.d.ts +0 -7
- package/dist/engine/feature-ast/extractors/jobs-routes.js +0 -145
- package/dist/engine/feature-ast/extractors/projections-screens.d.ts +0 -10
- package/dist/engine/feature-ast/extractors/projections-screens.js +0 -195
- package/dist/engine/feature-ast/extractors/resolve-import.d.ts +0 -21
- package/dist/engine/feature-ast/extractors/resolve-import.js +0 -180
- package/dist/engine/feature-ast/extractors/round1.d.ts +0 -11
- package/dist/engine/feature-ast/extractors/round1.js +0 -87
- package/dist/engine/feature-ast/extractors/round2.d.ts +0 -7
- package/dist/engine/feature-ast/extractors/round2.js +0 -191
- package/dist/engine/feature-ast/extractors/round3.d.ts +0 -23
- package/dist/engine/feature-ast/extractors/round3.js +0 -292
- package/dist/engine/feature-ast/extractors/round5.d.ts +0 -9
- package/dist/engine/feature-ast/extractors/round5.js +0 -68
- package/dist/engine/feature-ast/extractors/round6.d.ts +0 -4
- package/dist/engine/feature-ast/extractors/round6.js +0 -17
- package/dist/engine/feature-ast/extractors/shared.d.ts +0 -94
- package/dist/engine/feature-ast/extractors/shared.js +0 -343
- package/dist/engine/feature-ast/index.d.ts +0 -16
- package/dist/engine/feature-ast/index.js +0 -10
- package/dist/engine/feature-ast/parse.d.ts +0 -31
- package/dist/engine/feature-ast/parse.js +0 -485
- package/dist/engine/feature-ast/patch.d.ts +0 -212
- package/dist/engine/feature-ast/patch.js +0 -611
- package/dist/engine/feature-ast/patcher.d.ts +0 -217
- package/dist/engine/feature-ast/patcher.js +0 -281
- package/dist/engine/feature-ast/pattern-change-schema.d.ts +0 -1238
- package/dist/engine/feature-ast/pattern-change-schema.js +0 -1072
- package/dist/engine/feature-ast/pattern-id-matchers.d.ts +0 -7
- package/dist/engine/feature-ast/pattern-id-matchers.js +0 -211
- package/dist/engine/feature-ast/pattern-id-schema.d.ts +0 -251
- package/dist/engine/feature-ast/pattern-id-schema.js +0 -166
- package/dist/engine/feature-ast/patterns.d.ts +0 -322
- package/dist/engine/feature-ast/patterns.js +0 -107
- package/dist/engine/feature-ast/render.d.ts +0 -47
- package/dist/engine/feature-ast/render.js +0 -666
- package/dist/engine/feature-ast/source-location.d.ts +0 -17
- package/dist/engine/feature-ast/source-location.js +0 -27
- package/dist/engine/pattern-library/index.d.ts +0 -2
- package/dist/engine/pattern-library/index.js +0 -3
- package/dist/engine/pattern-library/library.d.ts +0 -14
- package/dist/engine/pattern-library/library.js +0 -94
- package/dist/engine/pattern-library/mixed-schemas.d.ts +0 -16
- package/dist/engine/pattern-library/mixed-schemas.js +0 -559
- package/dist/engine/pattern-library/opaque-schemas.d.ts +0 -7
- package/dist/engine/pattern-library/opaque-schemas.js +0 -115
- package/dist/engine/pattern-library/shared-fields.d.ts +0 -122
- package/dist/engine/pattern-library/shared-fields.js +0 -88
- package/dist/engine/pattern-library/static-schemas.d.ts +0 -21
- package/dist/engine/pattern-library/static-schemas.js +0 -487
- package/dist/engine/pattern-library/types.d.ts +0 -158
- package/dist/engine/pattern-library/types.js +0 -36
- package/dist/engine/resolve-config-or-param.d.ts +0 -18
- package/dist/engine/resolve-config-or-param.js +0 -76
- package/src/scripts/codemod/README.md +0 -187
- package/src/scripts/codemod/codemod-support.ts +0 -334
- package/src/scripts/codemod/collect-source-files.ts +0 -48
- package/src/scripts/codemod/crypto-shredding-testing-move.ts +0 -119
- package/src/scripts/codemod/db-factory.ts +0 -810
- package/src/scripts/codemod/feature-factory.ts +0 -429
- package/src/scripts/codemod/feature-layout.ts +0 -424
- package/src/scripts/codemod/import-extensions.ts +0 -118
- package/src/scripts/codemod/migrate-cross-tenant.ts +0 -328
- package/src/scripts/codemod/migrate-db-raw.ts +0 -401
- package/src/scripts/codemod/migrate-open-to-all.ts +0 -235
- package/src/scripts/codemod/object-form.ts +0 -746
- package/src/scripts/codemod/package-merge.ts +0 -299
- package/src/scripts/codemod/pii-personal-migration.ts +0 -816
- package/src/scripts/codemod/remove-engine-payload-casts.ts +0 -318
- package/src/scripts/codemod/s3-imports.ts +0 -236
- package/src/scripts/codemod/tenant-db-options.ts +0 -454
- package/src/scripts/codemod/testing-injection.ts +0 -215
- package/src/scripts/codemod/testing-move-targets.ts +0 -161
- package/src/scripts/codemod/testing-move.ts +0 -542
- package/src/scripts/codemod/unprocessable-error-details-reason.ts +0 -411
|
@@ -1,322 +0,0 @@
|
|
|
1
|
-
import type { LifecycleHookType } from "../constants.ts";
|
|
2
|
-
import type { ConfigKeyDefinition, ConfigKeyType, JobDefinition, ReferenceDataDef, RunIn, TranslationKeys } from "../types/config.ts";
|
|
3
|
-
import type { MetricOptions, SecretNamespaceOptions, SecretOptions } from "../types/feature.ts";
|
|
4
|
-
import type { EntityDefinition } from "../types/fields.ts";
|
|
5
|
-
import type { AccessRule, AgentHandlerHints, ClaimKeyType, EscapeHatchDeclaration, PayloadRateLimitOption, RateLimitDeclaration } from "../types/handlers.ts";
|
|
6
|
-
import type { HookPhase } from "../types/hooks.ts";
|
|
7
|
-
import type { HttpRouteMethod } from "../types/http-route.ts";
|
|
8
|
-
import type { NavDefinition } from "../types/nav.ts";
|
|
9
|
-
import type { MspErrorMode } from "../types/projection.ts";
|
|
10
|
-
import type { RelationDefinition } from "../types/relations.ts";
|
|
11
|
-
import type { ScreenDefinition } from "../types/screen.ts";
|
|
12
|
-
import type { TreeActionDef } from "../types/tree-node.ts";
|
|
13
|
-
import type { WorkspaceDefinition } from "../types/workspace.ts";
|
|
14
|
-
import type { RawRefSentinel } from "./extractors/shared.ts";
|
|
15
|
-
import type { SourceLocation } from "./source-location.ts";
|
|
16
|
-
export type EntityPattern = {
|
|
17
|
-
readonly kind: "entity";
|
|
18
|
-
readonly source: SourceLocation;
|
|
19
|
-
readonly entityName: string;
|
|
20
|
-
readonly definition: EntityDefinition;
|
|
21
|
-
readonly backingTable?: RawRefSentinel;
|
|
22
|
-
};
|
|
23
|
-
export type RelationPattern = {
|
|
24
|
-
readonly kind: "relation";
|
|
25
|
-
readonly source: SourceLocation;
|
|
26
|
-
readonly entityName: string;
|
|
27
|
-
readonly relationName: string;
|
|
28
|
-
readonly definition: RelationDefinition;
|
|
29
|
-
};
|
|
30
|
-
export type NavPattern = {
|
|
31
|
-
readonly kind: "nav";
|
|
32
|
-
readonly source: SourceLocation;
|
|
33
|
-
readonly definition: NavDefinition;
|
|
34
|
-
};
|
|
35
|
-
export type WorkspacePattern = {
|
|
36
|
-
readonly kind: "workspace";
|
|
37
|
-
readonly source: SourceLocation;
|
|
38
|
-
readonly definition: WorkspaceDefinition;
|
|
39
|
-
};
|
|
40
|
-
export type ConfigPattern = {
|
|
41
|
-
readonly kind: "config";
|
|
42
|
-
readonly source: SourceLocation;
|
|
43
|
-
readonly keys: Readonly<Record<string, ConfigKeyDefinition<ConfigKeyType>>>;
|
|
44
|
-
};
|
|
45
|
-
export type TranslationsPattern = {
|
|
46
|
-
readonly kind: "translations";
|
|
47
|
-
readonly source: SourceLocation;
|
|
48
|
-
readonly keys: TranslationKeys;
|
|
49
|
-
};
|
|
50
|
-
export type RequiresPattern = {
|
|
51
|
-
readonly kind: "requires";
|
|
52
|
-
readonly source: SourceLocation;
|
|
53
|
-
readonly featureNames: readonly string[];
|
|
54
|
-
};
|
|
55
|
-
export type OptionalRequiresPattern = {
|
|
56
|
-
readonly kind: "optionalRequires";
|
|
57
|
-
readonly source: SourceLocation;
|
|
58
|
-
readonly featureNames: readonly string[];
|
|
59
|
-
};
|
|
60
|
-
export type SystemScopePattern = {
|
|
61
|
-
readonly kind: "systemScope";
|
|
62
|
-
readonly source: SourceLocation;
|
|
63
|
-
};
|
|
64
|
-
export type AdoptsBundledListsPattern = {
|
|
65
|
-
readonly kind: "adoptsBundledLists";
|
|
66
|
-
readonly source: SourceLocation;
|
|
67
|
-
};
|
|
68
|
-
export type ToggleablePattern = {
|
|
69
|
-
readonly kind: "toggleable";
|
|
70
|
-
readonly source: SourceLocation;
|
|
71
|
-
readonly default: boolean;
|
|
72
|
-
};
|
|
73
|
-
export type DescribePattern = {
|
|
74
|
-
readonly kind: "describe";
|
|
75
|
-
readonly source: SourceLocation;
|
|
76
|
-
readonly text: string;
|
|
77
|
-
};
|
|
78
|
-
export type UiHintsPattern = {
|
|
79
|
-
readonly kind: "uiHints";
|
|
80
|
-
readonly source: SourceLocation;
|
|
81
|
-
};
|
|
82
|
-
export type MetricPattern = {
|
|
83
|
-
readonly kind: "metric";
|
|
84
|
-
readonly source: SourceLocation;
|
|
85
|
-
readonly shortName: string;
|
|
86
|
-
readonly options: MetricOptions;
|
|
87
|
-
};
|
|
88
|
-
export type SecretPattern = {
|
|
89
|
-
readonly kind: "secret";
|
|
90
|
-
readonly source: SourceLocation;
|
|
91
|
-
readonly shortName: string;
|
|
92
|
-
readonly options: SecretOptions;
|
|
93
|
-
};
|
|
94
|
-
export type SecretNamespacePattern = {
|
|
95
|
-
readonly kind: "secretNamespace";
|
|
96
|
-
readonly source: SourceLocation;
|
|
97
|
-
readonly shortName: string;
|
|
98
|
-
readonly options: SecretNamespaceOptions;
|
|
99
|
-
};
|
|
100
|
-
export type ClaimKeyPattern = {
|
|
101
|
-
readonly kind: "claimKey";
|
|
102
|
-
readonly source: SourceLocation;
|
|
103
|
-
readonly shortName: string;
|
|
104
|
-
readonly claimType: ClaimKeyType;
|
|
105
|
-
};
|
|
106
|
-
export type ReferenceDataPattern = {
|
|
107
|
-
readonly kind: "referenceData";
|
|
108
|
-
readonly source: SourceLocation;
|
|
109
|
-
readonly entityName: string;
|
|
110
|
-
readonly data: ReferenceDataDef["data"];
|
|
111
|
-
readonly upsertKey?: string;
|
|
112
|
-
};
|
|
113
|
-
export type ReadsConfigPattern = {
|
|
114
|
-
readonly kind: "readsConfig";
|
|
115
|
-
readonly source: SourceLocation;
|
|
116
|
-
readonly qualifiedKeys: readonly string[];
|
|
117
|
-
};
|
|
118
|
-
export type UseExtensionPattern = {
|
|
119
|
-
readonly kind: "useExtension";
|
|
120
|
-
readonly source: SourceLocation;
|
|
121
|
-
readonly extensionName: string;
|
|
122
|
-
readonly extensionNameRaw?: string;
|
|
123
|
-
readonly entityName: string;
|
|
124
|
-
readonly options?: Readonly<Record<string, unknown>>;
|
|
125
|
-
};
|
|
126
|
-
export type TreeActionsPattern = {
|
|
127
|
-
readonly kind: "treeActions";
|
|
128
|
-
readonly source: SourceLocation;
|
|
129
|
-
readonly definitions: Readonly<Record<string, TreeActionDef>>;
|
|
130
|
-
};
|
|
131
|
-
export type OpaquePropMap = Readonly<Record<string, SourceLocation>>;
|
|
132
|
-
export declare const SCREEN_OPAQUE_MARKER: "$opaque";
|
|
133
|
-
export type ScreenOpaqueMarker = typeof SCREEN_OPAQUE_MARKER;
|
|
134
|
-
export type ScreenPattern = {
|
|
135
|
-
readonly kind: "screen";
|
|
136
|
-
readonly source: SourceLocation;
|
|
137
|
-
readonly definition: ScreenDefinition;
|
|
138
|
-
readonly opaqueProps: OpaquePropMap;
|
|
139
|
-
};
|
|
140
|
-
export type WriteHandlerPattern = {
|
|
141
|
-
readonly kind: "writeHandler";
|
|
142
|
-
readonly source: SourceLocation;
|
|
143
|
-
readonly handlerName?: string;
|
|
144
|
-
readonly schemaSource?: SourceLocation;
|
|
145
|
-
readonly handlerBody?: SourceLocation;
|
|
146
|
-
readonly access?: AccessRule | RawRefSentinel;
|
|
147
|
-
readonly description?: string;
|
|
148
|
-
readonly agent?: AgentHandlerHints | RawRefSentinel;
|
|
149
|
-
readonly rateLimit?: RateLimitDeclaration | RawRefSentinel;
|
|
150
|
-
readonly additionalRateLimits?: readonly PayloadRateLimitOption[] | RawRefSentinel;
|
|
151
|
-
readonly unsafeSkipTransitionGuard?: boolean;
|
|
152
|
-
readonly escapeHatch?: EscapeHatchDeclaration | RawRefSentinel;
|
|
153
|
-
};
|
|
154
|
-
export type QueryHandlerPattern = {
|
|
155
|
-
readonly kind: "queryHandler";
|
|
156
|
-
readonly source: SourceLocation;
|
|
157
|
-
readonly handlerName?: string;
|
|
158
|
-
readonly schemaSource?: SourceLocation;
|
|
159
|
-
readonly handlerBody?: SourceLocation;
|
|
160
|
-
readonly access?: AccessRule | RawRefSentinel;
|
|
161
|
-
readonly description?: string;
|
|
162
|
-
readonly agent?: AgentHandlerHints | RawRefSentinel;
|
|
163
|
-
readonly rateLimit?: RateLimitDeclaration | RawRefSentinel;
|
|
164
|
-
readonly escapeHatch?: EscapeHatchDeclaration | RawRefSentinel;
|
|
165
|
-
};
|
|
166
|
-
export type StreamHandlerPattern = {
|
|
167
|
-
readonly kind: "streamHandler";
|
|
168
|
-
readonly source: SourceLocation;
|
|
169
|
-
readonly handlerName?: string;
|
|
170
|
-
readonly schemaSource?: SourceLocation;
|
|
171
|
-
readonly handlerBody?: SourceLocation;
|
|
172
|
-
readonly access?: AccessRule | RawRefSentinel;
|
|
173
|
-
readonly rateLimit?: RateLimitDeclaration | RawRefSentinel;
|
|
174
|
-
readonly escapeHatch?: EscapeHatchDeclaration | RawRefSentinel;
|
|
175
|
-
};
|
|
176
|
-
export type HookPattern = {
|
|
177
|
-
readonly kind: "hook";
|
|
178
|
-
readonly source: SourceLocation;
|
|
179
|
-
readonly hookType: LifecycleHookType | "validation";
|
|
180
|
-
readonly target: string | readonly string[] | {
|
|
181
|
-
readonly allOf: string;
|
|
182
|
-
};
|
|
183
|
-
readonly fnBody: SourceLocation;
|
|
184
|
-
readonly phase?: HookPhase;
|
|
185
|
-
readonly escapeHatch?: EscapeHatchDeclaration | RawRefSentinel;
|
|
186
|
-
};
|
|
187
|
-
export type JobPattern = {
|
|
188
|
-
readonly kind: "job";
|
|
189
|
-
readonly source: SourceLocation;
|
|
190
|
-
readonly jobName: string;
|
|
191
|
-
readonly options: Omit<JobDefinition, "name" | "handler">;
|
|
192
|
-
readonly handlerBody: SourceLocation;
|
|
193
|
-
};
|
|
194
|
-
export type NotificationPattern = {
|
|
195
|
-
readonly kind: "notification";
|
|
196
|
-
readonly source: SourceLocation;
|
|
197
|
-
readonly notificationName: string;
|
|
198
|
-
readonly trigger?: {
|
|
199
|
-
readonly on: string;
|
|
200
|
-
};
|
|
201
|
-
readonly recipientBody?: SourceLocation;
|
|
202
|
-
readonly dataBody?: SourceLocation;
|
|
203
|
-
readonly templates?: Readonly<Record<string, SourceLocation>>;
|
|
204
|
-
};
|
|
205
|
-
export type AuthClaimsPattern = {
|
|
206
|
-
readonly kind: "authClaims";
|
|
207
|
-
readonly source: SourceLocation;
|
|
208
|
-
readonly fnBody: SourceLocation;
|
|
209
|
-
};
|
|
210
|
-
export type HttpRoutePattern = {
|
|
211
|
-
readonly kind: "httpRoute";
|
|
212
|
-
readonly source: SourceLocation;
|
|
213
|
-
readonly method: HttpRouteMethod;
|
|
214
|
-
readonly path: string;
|
|
215
|
-
readonly anonymous: boolean;
|
|
216
|
-
readonly handlerBody: SourceLocation;
|
|
217
|
-
};
|
|
218
|
-
export type ProjectionPattern = {
|
|
219
|
-
readonly kind: "projection";
|
|
220
|
-
readonly source: SourceLocation;
|
|
221
|
-
readonly name: string;
|
|
222
|
-
readonly sourceEntity: string | readonly string[];
|
|
223
|
-
readonly applyBodies: Readonly<Record<string, SourceLocation>>;
|
|
224
|
-
};
|
|
225
|
-
export type MultiStreamProjectionPattern = {
|
|
226
|
-
readonly kind: "multiStreamProjection";
|
|
227
|
-
readonly source: SourceLocation;
|
|
228
|
-
readonly name: string;
|
|
229
|
-
readonly applyBodies: Readonly<Record<string, SourceLocation>>;
|
|
230
|
-
readonly errorMode?: MspErrorMode;
|
|
231
|
-
readonly runIn?: RunIn;
|
|
232
|
-
readonly delivery?: "shared" | "per-instance";
|
|
233
|
-
};
|
|
234
|
-
export type DefineEventPattern = {
|
|
235
|
-
readonly kind: "defineEvent";
|
|
236
|
-
readonly source: SourceLocation;
|
|
237
|
-
readonly eventName: string;
|
|
238
|
-
readonly eventNameRaw?: string;
|
|
239
|
-
readonly schemaSource: SourceLocation;
|
|
240
|
-
readonly version?: number;
|
|
241
|
-
readonly piiFields: SourceLocation;
|
|
242
|
-
readonly migrations?: Readonly<Record<string, SourceLocation>>;
|
|
243
|
-
};
|
|
244
|
-
export type ExtendsRegistrarPattern = {
|
|
245
|
-
readonly kind: "extendsRegistrar";
|
|
246
|
-
readonly source: SourceLocation;
|
|
247
|
-
readonly extensionName: string;
|
|
248
|
-
readonly extensionNameRaw?: string;
|
|
249
|
-
readonly defBody: SourceLocation;
|
|
250
|
-
};
|
|
251
|
-
export type UsesApiPattern = {
|
|
252
|
-
readonly kind: "usesApi";
|
|
253
|
-
readonly source: SourceLocation;
|
|
254
|
-
readonly apiName: string;
|
|
255
|
-
};
|
|
256
|
-
export type ExposesApiPattern = {
|
|
257
|
-
readonly kind: "exposesApi";
|
|
258
|
-
readonly source: SourceLocation;
|
|
259
|
-
readonly apiName: string;
|
|
260
|
-
};
|
|
261
|
-
export type EnvSchemaPattern = {
|
|
262
|
-
readonly kind: "envSchema";
|
|
263
|
-
readonly source: SourceLocation;
|
|
264
|
-
readonly schemaBody: SourceLocation;
|
|
265
|
-
};
|
|
266
|
-
/** Live-editable policy defaults for an AI pipeline step instance. */
|
|
267
|
-
export type AiStepPolicy = {
|
|
268
|
-
readonly enabled: boolean;
|
|
269
|
-
readonly providerId?: string;
|
|
270
|
-
readonly model?: string;
|
|
271
|
-
readonly params: Record<string, unknown>;
|
|
272
|
-
};
|
|
273
|
-
/** Preserves an unresolvable argument reference across parse → render. */
|
|
274
|
-
export type AiStepOpaqueArgs = {
|
|
275
|
-
readonly __raw: string;
|
|
276
|
-
};
|
|
277
|
-
type AiStepCommonPatternFields = {
|
|
278
|
-
readonly source: SourceLocation;
|
|
279
|
-
/** Whole-args reference when the spec is not an inline/same-file object. */
|
|
280
|
-
readonly argsSource?: AiStepOpaqueArgs;
|
|
281
|
-
readonly stepKey?: string | AiStepOpaqueArgs;
|
|
282
|
-
readonly promptKey?: string | AiStepOpaqueArgs;
|
|
283
|
-
readonly promptFallback?: string | AiStepOpaqueArgs;
|
|
284
|
-
readonly defaults?: AiStepPolicy | AiStepOpaqueArgs;
|
|
285
|
-
readonly paramsSchemaSource?: SourceLocation;
|
|
286
|
-
};
|
|
287
|
-
export type AiGeneratePattern = AiStepCommonPatternFields & {
|
|
288
|
-
readonly kind: "ai.generate";
|
|
289
|
-
readonly inputBody?: SourceLocation;
|
|
290
|
-
};
|
|
291
|
-
export type AiExtractPattern = AiStepCommonPatternFields & {
|
|
292
|
-
readonly kind: "ai.extract";
|
|
293
|
-
readonly outputSchemaSource?: SourceLocation;
|
|
294
|
-
readonly instructionsBody?: SourceLocation;
|
|
295
|
-
readonly documentBody?: SourceLocation;
|
|
296
|
-
};
|
|
297
|
-
export type AiClassifyPattern = AiStepCommonPatternFields & {
|
|
298
|
-
readonly kind: "ai.classify";
|
|
299
|
-
readonly actions?: readonly {
|
|
300
|
-
readonly type: string;
|
|
301
|
-
readonly description: string;
|
|
302
|
-
}[];
|
|
303
|
-
readonly inputBody?: SourceLocation;
|
|
304
|
-
};
|
|
305
|
-
export type UnknownPattern = {
|
|
306
|
-
readonly kind: "unknown";
|
|
307
|
-
readonly source: SourceLocation;
|
|
308
|
-
readonly methodName: string;
|
|
309
|
-
};
|
|
310
|
-
export type FeaturePattern = EntityPattern | RelationPattern | NavPattern | WorkspacePattern | ConfigPattern | TranslationsPattern | RequiresPattern | OptionalRequiresPattern | SystemScopePattern | AdoptsBundledListsPattern | ToggleablePattern | DescribePattern | UiHintsPattern | MetricPattern | SecretPattern | SecretNamespacePattern | ClaimKeyPattern | ReferenceDataPattern | ReadsConfigPattern | UseExtensionPattern | UsesApiPattern | ExposesApiPattern | TreeActionsPattern | ScreenPattern | WriteHandlerPattern | QueryHandlerPattern | StreamHandlerPattern | HookPattern | JobPattern | NotificationPattern | AuthClaimsPattern | HttpRoutePattern | ProjectionPattern | MultiStreamProjectionPattern | DefineEventPattern | ExtendsRegistrarPattern | EnvSchemaPattern | AiGeneratePattern | AiExtractPattern | AiClassifyPattern | UnknownPattern;
|
|
311
|
-
export type FeaturePatternKind = FeaturePattern["kind"];
|
|
312
|
-
export type MembersByKind<U extends {
|
|
313
|
-
readonly kind: string;
|
|
314
|
-
}> = {
|
|
315
|
-
readonly [K in U["kind"]]: Extract<U, {
|
|
316
|
-
readonly kind: K;
|
|
317
|
-
}>;
|
|
318
|
-
};
|
|
319
|
-
export type FeaturePatternOfKind = MembersByKind<FeaturePattern>;
|
|
320
|
-
export type Editability = "static" | "mixed" | "opaque";
|
|
321
|
-
export declare function getEditability(pattern: FeaturePattern): Editability;
|
|
322
|
-
export {};
|
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
// FeaturePattern — typed representation of an `r.*` call inside a
|
|
2
|
-
// feature file. The AST visitor (parse.ts) walks the
|
|
3
|
-
// `defineFeature(name, (r) => { ... })` setup callback and yields one
|
|
4
|
-
// FeaturePattern per recognised call.
|
|
5
|
-
//
|
|
6
|
-
// **Doc single-source:** THIS file is the canonical pattern reference
|
|
7
|
-
// (mirrored into docs/corpus). The FeatureRegistrar JSDoc in
|
|
8
|
-
// types/feature.ts stays a short pointer — duplicating semantics there
|
|
9
|
-
// has already drifted once; verify any "checks at boot" claim against
|
|
10
|
-
// engine/boot-validator/* before writing it down.
|
|
11
|
-
//
|
|
12
|
-
// **Design principle:**
|
|
13
|
-
//
|
|
14
|
-
// - Whatever the Designer/AI can edit declaratively → typed static
|
|
15
|
-
// fields, reusing the existing engine/types definitions so the
|
|
16
|
-
// pattern shape never drifts from the runtime contract.
|
|
17
|
-
// - Whatever carries closures/code → SourceLocation pointing at the
|
|
18
|
-
// opaque region. The Designer renders that as a read-only code
|
|
19
|
-
// block; the AI patcher overwrites the span verbatim.
|
|
20
|
-
//
|
|
21
|
-
// **Coverage = 100%.** Calls we don't recognise become UnknownPattern
|
|
22
|
-
// (the Designer shows "custom call", AI leaves them alone). Custom
|
|
23
|
-
// TypeScript code BETWEEN `r.*` calls (helpers, local consts, imports)
|
|
24
|
-
// is not extracted — it stays in the file buffer and survives every
|
|
25
|
-
// patch unchanged.
|
|
26
|
-
//
|
|
27
|
-
// **Extension point.** Adding a new r.* API → new pattern type here +
|
|
28
|
-
// new extractor in parse.ts. The discriminated union forces every
|
|
29
|
-
// consumer (Designer, AI patcher, MCP server) to handle the new kind
|
|
30
|
-
// at compile time.
|
|
31
|
-
//
|
|
32
|
-
// **Naming convention.** Pattern `kind` matches the r.* method name
|
|
33
|
-
// 1:1 (e.g. `r.writeHandler` → `kind: "writeHandler"`). No kebab/camel
|
|
34
|
-
// translation layer.
|
|
35
|
-
//
|
|
36
|
-
// **Adding a new FeaturePattern kind — full consumer cascade.** The
|
|
37
|
-
// extension-point is wider than just this file + the parser. Update
|
|
38
|
-
// ALL of these when introducing a new r.* API, otherwise tests/checks
|
|
39
|
-
// catch the drift but the call-site jumps across files:
|
|
40
|
-
// 1. patterns.ts (this file): Pattern type + add to FeaturePattern
|
|
41
|
-
// union + getEditability switch
|
|
42
|
-
// 2. feature-ast/extractors.ts: extract<Kind> function + import in
|
|
43
|
-
// patterns-import-block
|
|
44
|
-
// 3. feature-ast/parse.ts: dispatcher case + import
|
|
45
|
-
// 4. feature-ast/render.ts: render<Kind> function + import + switch
|
|
46
|
-
// case
|
|
47
|
-
// 5. feature-ast/patch.ts: PatternId variant; if singleton-per-feature
|
|
48
|
-
// add to SINGLETON_KINDS; callMatchesId case
|
|
49
|
-
// 6. pattern-library/library.ts: <kind>Schema + entry in
|
|
50
|
-
// PATTERN_LIBRARY map
|
|
51
|
-
// 7. pattern-library/__tests__/library.test.ts: ALL_KINDS array +
|
|
52
|
-
// makePlaceholderPattern case
|
|
53
|
-
// TS-exhaustiveness catches most omissions automatically (1, 3, 4, 5,
|
|
54
|
-
// 7-via-makePlaceholderPattern), but the runtime-checked maps in 6 +
|
|
55
|
-
// the ALL_KINDS array in 7 are silent if forgotten — pin them with the
|
|
56
|
-
// library.test.ts coverage tests.
|
|
57
|
-
// Marker emitted in `ScreenPattern.definition` wherever a closure or
|
|
58
|
-
// unresolvable identifier sat in the source. Designer renderers compare
|
|
59
|
-
// against this constant to decide "form vs read-only span" — the actual
|
|
60
|
-
// SourceLocation lives at the matching path in `opaqueProps`.
|
|
61
|
-
export const SCREEN_OPAQUE_MARKER = "$opaque";
|
|
62
|
-
const EDITABILITY_BY_KIND = {
|
|
63
|
-
entity: "static",
|
|
64
|
-
relation: "static",
|
|
65
|
-
nav: "static",
|
|
66
|
-
workspace: "static",
|
|
67
|
-
config: "static",
|
|
68
|
-
translations: "static",
|
|
69
|
-
requires: "static",
|
|
70
|
-
optionalRequires: "static",
|
|
71
|
-
systemScope: "static",
|
|
72
|
-
toggleable: "static",
|
|
73
|
-
describe: "static",
|
|
74
|
-
metric: "static",
|
|
75
|
-
secret: "static",
|
|
76
|
-
secretNamespace: "static",
|
|
77
|
-
claimKey: "static",
|
|
78
|
-
referenceData: "static",
|
|
79
|
-
readsConfig: "static",
|
|
80
|
-
useExtension: "static",
|
|
81
|
-
usesApi: "static",
|
|
82
|
-
exposesApi: "static",
|
|
83
|
-
treeActions: "static",
|
|
84
|
-
screen: "mixed",
|
|
85
|
-
writeHandler: "mixed",
|
|
86
|
-
queryHandler: "mixed",
|
|
87
|
-
streamHandler: "mixed",
|
|
88
|
-
hook: "mixed",
|
|
89
|
-
job: "mixed",
|
|
90
|
-
notification: "mixed",
|
|
91
|
-
httpRoute: "mixed",
|
|
92
|
-
projection: "mixed",
|
|
93
|
-
multiStreamProjection: "mixed",
|
|
94
|
-
defineEvent: "mixed",
|
|
95
|
-
"ai.generate": "mixed",
|
|
96
|
-
"ai.extract": "mixed",
|
|
97
|
-
"ai.classify": "mixed",
|
|
98
|
-
authClaims: "opaque",
|
|
99
|
-
extendsRegistrar: "opaque",
|
|
100
|
-
envSchema: "opaque",
|
|
101
|
-
uiHints: "opaque",
|
|
102
|
-
adoptsBundledLists: "opaque",
|
|
103
|
-
unknown: "opaque",
|
|
104
|
-
};
|
|
105
|
-
export function getEditability(pattern) {
|
|
106
|
-
return EDITABILITY_BY_KIND[pattern.kind];
|
|
107
|
-
}
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import type { FeaturePattern } from "./patterns.ts";
|
|
2
|
-
export declare const FEATURE_FILE_VERSION: 1;
|
|
3
|
-
export declare const VERSION_HEADER: string;
|
|
4
|
-
/**
|
|
5
|
-
* Render a single FeaturePattern back to TypeScript source — a `r.<kind>(...)`
|
|
6
|
-
* call in canonical Object-Form. The result is a single statement WITHOUT a
|
|
7
|
-
* trailing newline; callers compose statements with their own joiner.
|
|
8
|
-
*/
|
|
9
|
-
export declare function renderPattern(pattern: FeaturePattern): string;
|
|
10
|
-
/**
|
|
11
|
-
* Render a JSON-compatible value as TypeScript source. Matches what
|
|
12
|
-
* `readDataLiteralNode` accepts on the parser side: strings, numbers,
|
|
13
|
-
* booleans, null, arrays, plain objects. Unsupported values (functions,
|
|
14
|
-
* undefined) throw — they should never reach here for a static pattern.
|
|
15
|
-
*
|
|
16
|
-
* Keys are quoted only when they are not valid JS identifiers. The
|
|
17
|
-
* renderer prefers single-line output for short arrays/objects (≤80
|
|
18
|
-
* chars including indent and no nested newlines) and falls back to
|
|
19
|
-
* multi-line otherwise — biome-stable in both branches.
|
|
20
|
-
*/
|
|
21
|
-
export declare function renderValue(value: unknown, indent?: number): string;
|
|
22
|
-
export type RenderFeatureFileInput = {
|
|
23
|
-
readonly featureName: string;
|
|
24
|
-
readonly patterns: readonly FeaturePattern[];
|
|
25
|
-
/** Extra import lines emitted between the version header and defineFeature.
|
|
26
|
-
* Defaults to the minimum: defineFeature + zod. */
|
|
27
|
-
readonly imports?: readonly string[];
|
|
28
|
-
};
|
|
29
|
-
/**
|
|
30
|
-
* Render a complete feature-file: schema-version header, imports, the
|
|
31
|
-
* defineFeature call wrapping every pattern in source order. The output
|
|
32
|
-
* is biome-format-stable so callers can persist it directly.
|
|
33
|
-
*/
|
|
34
|
-
export declare function renderFeatureFile(input: RenderFeatureFileInput): string;
|
|
35
|
-
/**
|
|
36
|
-
* Prefix every non-empty line of `text` with `prefix`. Re-used from the
|
|
37
|
-
* patcher (patch.ts imports this) so indent helpers stay in one place
|
|
38
|
-
* — when canonical-form indentation conventions ever change, only this
|
|
39
|
-
* function needs to follow.
|
|
40
|
-
*/
|
|
41
|
-
export declare function indent(text: string, prefix: string): string;
|
|
42
|
-
/**
|
|
43
|
-
* Indentation prefix used inside `defineFeature((r) => { ... })` for
|
|
44
|
-
* every top-level r.* statement. Two-space convention matches biome's
|
|
45
|
-
* default and the parse-happy-path test fixture.
|
|
46
|
-
*/
|
|
47
|
-
export declare const PATTERN_INDENT = " ";
|