@lostgradient/weft 0.2.0
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/LICENSE +21 -0
- package/README.md +493 -0
- package/dist/alerting/alert-manager.d.ts +42 -0
- package/dist/alerting/alert-manager.js +167 -0
- package/dist/alerting/index.d.ts +2 -0
- package/dist/alerting/index.js +1 -0
- package/dist/alerting/sliding-window.d.ts +26 -0
- package/dist/alerting/sliding-window.js +97 -0
- package/dist/alerting/types.d.ts +157 -0
- package/dist/alerting/types.js +0 -0
- package/dist/cli/api-arguments.d.ts +2 -0
- package/dist/cli/api-arguments.js +48 -0
- package/dist/cli/api.d.ts +13 -0
- package/dist/cli/api.js +191 -0
- package/dist/cli/codegen-arguments.d.ts +10 -0
- package/dist/cli/codegen-arguments.js +50 -0
- package/dist/cli/codegen-emit-keywords.d.ts +28 -0
- package/dist/cli/codegen-emit-keywords.js +48 -0
- package/dist/cli/codegen-emit.d.ts +50 -0
- package/dist/cli/codegen-emit.js +280 -0
- package/dist/cli/codegen.d.ts +38 -0
- package/dist/cli/codegen.js +268 -0
- package/dist/cli/command-suggestions.d.ts +9 -0
- package/dist/cli/command-suggestions.js +27 -0
- package/dist/cli/completions.d.ts +17 -0
- package/dist/cli/completions.js +112 -0
- package/dist/cli/conformance.d.ts +9 -0
- package/dist/cli/conformance.js +226 -0
- package/dist/cli/doctor.d.ts +6 -0
- package/dist/cli/doctor.js +9 -0
- package/dist/cli/generated/operation-client.generated.d.ts +605 -0
- package/dist/cli/generated/operation-client.generated.js +60 -0
- package/dist/cli/help-text.d.ts +13 -0
- package/dist/cli/help-text.js +269 -0
- package/dist/cli/index.d.ts +23 -0
- package/dist/cli/index.js +34 -0
- package/dist/cli/json-rpc-client.d.ts +15 -0
- package/dist/cli/json-rpc-client.js +37 -0
- package/dist/cli/noun-verb-arguments.d.ts +15 -0
- package/dist/cli/noun-verb-arguments.js +190 -0
- package/dist/cli/operation-catalog-snapshot.d.ts +38 -0
- package/dist/cli/operation-catalog-snapshot.js +48 -0
- package/dist/cli/operation-client-runtime.d.ts +47 -0
- package/dist/cli/operation-client-runtime.js +33 -0
- package/dist/cli/output.d.ts +66 -0
- package/dist/cli/output.js +83 -0
- package/dist/cli/parse-arguments.d.ts +3 -0
- package/dist/cli/parse-arguments.js +214 -0
- package/dist/cli/parse-schedule-arguments.d.ts +9 -0
- package/dist/cli/parse-schedule-arguments.js +132 -0
- package/dist/cli/schedule.d.ts +3 -0
- package/dist/cli/schedule.js +128 -0
- package/dist/cli/serve-registrations.d.ts +15 -0
- package/dist/cli/serve-registrations.js +23 -0
- package/dist/cli/server-client.d.ts +45 -0
- package/dist/cli/server-client.js +33 -0
- package/dist/cli/server-commands.d.ts +19 -0
- package/dist/cli/server-commands.js +151 -0
- package/dist/cli/storage-backend-arguments.d.ts +15 -0
- package/dist/cli/storage-backend-arguments.js +16 -0
- package/dist/cli/storage-factory.d.ts +8 -0
- package/dist/cli/storage-factory.js +18 -0
- package/dist/cli/subcommand-detection.d.ts +2 -0
- package/dist/cli/subcommand-detection.js +38 -0
- package/dist/cli/tail.d.ts +50 -0
- package/dist/cli/tail.js +161 -0
- package/dist/cli/timeline.d.ts +9 -0
- package/dist/cli/timeline.js +78 -0
- package/dist/cli/types.d.ts +224 -0
- package/dist/cli/types.js +0 -0
- package/dist/cli/utilities.d.ts +9 -0
- package/dist/cli/utilities.js +120 -0
- package/dist/cli/validate.d.ts +6 -0
- package/dist/cli/validate.js +70 -0
- package/dist/cli/version-check.d.ts +7 -0
- package/dist/cli/version-check.js +16 -0
- package/dist/cli/version.d.ts +7 -0
- package/dist/cli/version.js +4 -0
- package/dist/cli/workflow-commands.d.ts +15 -0
- package/dist/cli/workflow-commands.js +195 -0
- package/dist/cli-main.d.ts +2 -0
- package/dist/cli-main.js +402 -0
- package/dist/client/event-stream-transport.d.ts +73 -0
- package/dist/client/event-stream-transport.js +59 -0
- package/dist/client/event-stream.d.ts +90 -0
- package/dist/client/event-stream.js +221 -0
- package/dist/client/event-tail.d.ts +50 -0
- package/dist/client/event-tail.js +0 -0
- package/dist/client/handle-delegation.d.ts +73 -0
- package/dist/client/handle-delegation.js +66 -0
- package/dist/client/http-client-requests.d.ts +65 -0
- package/dist/client/http-client-requests.js +178 -0
- package/dist/client/http-client.d.ts +130 -0
- package/dist/client/http-client.js +217 -0
- package/dist/client/http-handle.d.ts +27 -0
- package/dist/client/http-handle.js +43 -0
- package/dist/client/http-operations.d.ts +29 -0
- package/dist/client/http-operations.js +36 -0
- package/dist/client/http-request.d.ts +101 -0
- package/dist/client/http-request.js +73 -0
- package/dist/client/http-schedule-handle.d.ts +5 -0
- package/dist/client/http-schedule-handle.js +5 -0
- package/dist/client/in-process-operations.d.ts +30 -0
- package/dist/client/in-process-operations.js +17 -0
- package/dist/client/index.d.ts +15 -0
- package/dist/client/index.js +2 -0
- package/dist/client/interface.d.ts +333 -0
- package/dist/client/interface.js +0 -0
- package/dist/client/local-event-tail.d.ts +30 -0
- package/dist/client/local-event-tail.js +131 -0
- package/dist/client/local.d.ts +115 -0
- package/dist/client/local.js +178 -0
- package/dist/client/open-event-subscription.d.ts +33 -0
- package/dist/client/open-event-subscription.js +5 -0
- package/dist/client/schedule-list-search-params.d.ts +3 -0
- package/dist/client/schedule-list-search-params.js +18 -0
- package/dist/client/search-params.d.ts +3 -0
- package/dist/client/search-params.js +54 -0
- package/dist/client/start-body.d.ts +9 -0
- package/dist/client/start-body.js +23 -0
- package/dist/client/workflow-name-typing.d.ts +33 -0
- package/dist/client/workflow-name-typing.js +0 -0
- package/dist/connection.d.ts +121 -0
- package/dist/connection.js +161 -0
- package/dist/core/activity-registry.d.ts +135 -0
- package/dist/core/activity-registry.js +174 -0
- package/dist/core/activity.d.ts +2 -0
- package/dist/core/activity.js +1 -0
- package/dist/core/aggregate-validation.d.ts +85 -0
- package/dist/core/aggregate-validation.js +48 -0
- package/dist/core/atomic-state-events.d.ts +214 -0
- package/dist/core/atomic-state-events.js +39 -0
- package/dist/core/atomic-state.d.ts +79 -0
- package/dist/core/atomic-state.js +231 -0
- package/dist/core/bulk-workflow-filter.d.ts +23 -0
- package/dist/core/bulk-workflow-filter.js +38 -0
- package/dist/core/checkpoint/comparison.d.ts +2 -0
- package/dist/core/checkpoint/comparison.js +137 -0
- package/dist/core/checkpoint/index.d.ts +4 -0
- package/dist/core/checkpoint/index.js +3 -0
- package/dist/core/checkpoint/interfaces.d.ts +11 -0
- package/dist/core/checkpoint/interfaces.js +0 -0
- package/dist/core/checkpoint/lifecycle.d.ts +49 -0
- package/dist/core/checkpoint/lifecycle.js +36 -0
- package/dist/core/checkpoint/serialization.d.ts +31 -0
- package/dist/core/checkpoint/serialization.js +155 -0
- package/dist/core/checkpoint/validation.d.ts +4 -0
- package/dist/core/checkpoint/validation.js +26 -0
- package/dist/core/checkpoint.d.ts +1 -0
- package/dist/core/checkpoint.js +1 -0
- package/dist/core/codec/api.d.ts +32 -0
- package/dist/core/codec/api.js +9 -0
- package/dist/core/codec/extension-codec.d.ts +7 -0
- package/dist/core/codec/extension-codec.js +145 -0
- package/dist/core/codec/index.d.ts +3 -0
- package/dist/core/codec/index.js +2 -0
- package/dist/core/codec/validation.d.ts +28 -0
- package/dist/core/codec/validation.js +139 -0
- package/dist/core/codec-helpers.d.ts +8 -0
- package/dist/core/codec-helpers.js +19 -0
- package/dist/core/codec.d.ts +1 -0
- package/dist/core/codec.js +1 -0
- package/dist/core/compression.d.ts +127 -0
- package/dist/core/compression.js +88 -0
- package/dist/core/concurrency-lock-record.d.ts +122 -0
- package/dist/core/concurrency-lock-record.js +53 -0
- package/dist/core/concurrency.d.ts +221 -0
- package/dist/core/concurrency.js +93 -0
- package/dist/core/constraint.d.ts +144 -0
- package/dist/core/constraint.js +3 -0
- package/dist/core/context/attributes.d.ts +7 -0
- package/dist/core/context/attributes.js +29 -0
- package/dist/core/context/child-workflow-pipe.d.ts +18 -0
- package/dist/core/context/child-workflow-pipe.js +111 -0
- package/dist/core/context/durable-operations.d.ts +29 -0
- package/dist/core/context/durable-operations.js +166 -0
- package/dist/core/context/index.d.ts +114 -0
- package/dist/core/context/index.js +224 -0
- package/dist/core/context/internals.d.ts +30 -0
- package/dist/core/context/internals.js +36 -0
- package/dist/core/context/operation-request.d.ts +160 -0
- package/dist/core/context/operation-request.js +0 -0
- package/dist/core/context/parallel-cache-entry.d.ts +91 -0
- package/dist/core/context/parallel-cache-entry.js +92 -0
- package/dist/core/context/parallel-operations.d.ts +9 -0
- package/dist/core/context/parallel-operations.js +202 -0
- package/dist/core/context/run-operation.d.ts +21 -0
- package/dist/core/context/run-operation.js +231 -0
- package/dist/core/context/saga.d.ts +4 -0
- package/dist/core/context/saga.js +65 -0
- package/dist/core/context/session-state.d.ts +22 -0
- package/dist/core/context/session-state.js +154 -0
- package/dist/core/context/speculate-operations.d.ts +4 -0
- package/dist/core/context/speculate-operations.js +14 -0
- package/dist/core/context/speculative-child.d.ts +6 -0
- package/dist/core/context/speculative-child.js +67 -0
- package/dist/core/context/state-namespace.d.ts +27 -0
- package/dist/core/context/state-namespace.js +138 -0
- package/dist/core/context/types.d.ts +181 -0
- package/dist/core/context/types.js +0 -0
- package/dist/core/context/updates.d.ts +46 -0
- package/dist/core/context/updates.js +21 -0
- package/dist/core/context/validation.d.ts +2 -0
- package/dist/core/context/validation.js +12 -0
- package/dist/core/context.d.ts +1 -0
- package/dist/core/context.js +1 -0
- package/dist/core/debug-output.d.ts +3 -0
- package/dist/core/debug-output.js +112 -0
- package/dist/core/effect-log/index.d.ts +194 -0
- package/dist/core/effect-log/index.js +104 -0
- package/dist/core/engine/activity-reconciliation.d.ts +108 -0
- package/dist/core/engine/activity-reconciliation.js +182 -0
- package/dist/core/engine/aggregate.d.ts +47 -0
- package/dist/core/engine/aggregate.js +132 -0
- package/dist/core/engine/anonymous-signal-sequence.d.ts +4 -0
- package/dist/core/engine/anonymous-signal-sequence.js +101 -0
- package/dist/core/engine/async-activity-completion.d.ts +141 -0
- package/dist/core/engine/async-activity-completion.js +131 -0
- package/dist/core/engine/attributes-tags.d.ts +31 -0
- package/dist/core/engine/attributes-tags.js +178 -0
- package/dist/core/engine/broadcast.d.ts +8 -0
- package/dist/core/engine/broadcast.js +26 -0
- package/dist/core/engine/bulk-operations-purge.d.ts +11 -0
- package/dist/core/engine/bulk-operations-purge.js +246 -0
- package/dist/core/engine/bulk-operations-shared.d.ts +28 -0
- package/dist/core/engine/bulk-operations-shared.js +198 -0
- package/dist/core/engine/bulk-operations.d.ts +21 -0
- package/dist/core/engine/bulk-operations.js +128 -0
- package/dist/core/engine/callback-creators-bundles.d.ts +25 -0
- package/dist/core/engine/callback-creators-bundles.js +154 -0
- package/dist/core/engine/callback-creators-core.d.ts +39 -0
- package/dist/core/engine/callback-creators-core.js +136 -0
- package/dist/core/engine/callback-creators-router-registry.d.ts +4 -0
- package/dist/core/engine/callback-creators-router-registry.js +9 -0
- package/dist/core/engine/callback-creators-router.d.ts +3 -0
- package/dist/core/engine/callback-creators-router.js +68 -0
- package/dist/core/engine/callback-creators-schedule.d.ts +13 -0
- package/dist/core/engine/callback-creators-schedule.js +65 -0
- package/dist/core/engine/callback-creators.d.ts +9 -0
- package/dist/core/engine/callback-creators.js +87 -0
- package/dist/core/engine/cancel-handlers.d.ts +6 -0
- package/dist/core/engine/cancel-handlers.js +32 -0
- package/dist/core/engine/checkpoint-commit-snapshots.d.ts +4 -0
- package/dist/core/engine/checkpoint-commit-snapshots.js +16 -0
- package/dist/core/engine/checkpoint-io.d.ts +34 -0
- package/dist/core/engine/checkpoint-io.js +183 -0
- package/dist/core/engine/checkpoint-reads.d.ts +22 -0
- package/dist/core/engine/checkpoint-reads.js +98 -0
- package/dist/core/engine/child-workflow.d.ts +20 -0
- package/dist/core/engine/child-workflow.js +72 -0
- package/dist/core/engine/completed-review-storage.d.ts +14 -0
- package/dist/core/engine/completed-review-storage.js +61 -0
- package/dist/core/engine/constraints.d.ts +24 -0
- package/dist/core/engine/constraints.js +57 -0
- package/dist/core/engine/construction.d.ts +60 -0
- package/dist/core/engine/construction.js +213 -0
- package/dist/core/engine/disposal.d.ts +9 -0
- package/dist/core/engine/disposal.js +58 -0
- package/dist/core/engine/engine-create-types.d.ts +70 -0
- package/dist/core/engine/engine-create-types.js +0 -0
- package/dist/core/engine/engine-internal-types.d.ts +59 -0
- package/dist/core/engine/engine-internal-types.js +0 -0
- package/dist/core/engine/engine-leak-warnings.d.ts +26 -0
- package/dist/core/engine/engine-leak-warnings.js +42 -0
- package/dist/core/engine/engine-runtime-helpers.d.ts +8 -0
- package/dist/core/engine/engine-runtime-helpers.js +52 -0
- package/dist/core/engine/engine-state-namespace.d.ts +20 -0
- package/dist/core/engine/engine-state-namespace.js +0 -0
- package/dist/core/engine/errors.d.ts +215 -0
- package/dist/core/engine/errors.js +90 -0
- package/dist/core/engine/event-log-compaction.d.ts +102 -0
- package/dist/core/engine/event-log-compaction.js +76 -0
- package/dist/core/engine/guards.d.ts +17 -0
- package/dist/core/engine/guards.js +43 -0
- package/dist/core/engine/handle-iteration.d.ts +2 -0
- package/dist/core/engine/handle-iteration.js +59 -0
- package/dist/core/engine/handle-result.d.ts +8 -0
- package/dist/core/engine/handle-result.js +74 -0
- package/dist/core/engine/handles.d.ts +137 -0
- package/dist/core/engine/handles.js +173 -0
- package/dist/core/engine/index.d.ts +311 -0
- package/dist/core/engine/index.js +595 -0
- package/dist/core/engine/inline-launch-queue.d.ts +17 -0
- package/dist/core/engine/inline-launch-queue.js +93 -0
- package/dist/core/engine/inline-parking.d.ts +26 -0
- package/dist/core/engine/inline-parking.js +86 -0
- package/dist/core/engine/internals.d.ts +167 -0
- package/dist/core/engine/internals.js +11 -0
- package/dist/core/engine/lifecycle/fork-helpers.d.ts +9 -0
- package/dist/core/engine/lifecycle/fork-helpers.js +66 -0
- package/dist/core/engine/lifecycle/persist.d.ts +22 -0
- package/dist/core/engine/lifecycle/persist.js +80 -0
- package/dist/core/engine/lifecycle/resume.d.ts +4 -0
- package/dist/core/engine/lifecycle/resume.js +136 -0
- package/dist/core/engine/lifecycle/shared.d.ts +79 -0
- package/dist/core/engine/lifecycle/shared.js +49 -0
- package/dist/core/engine/lifecycle/start-batch.d.ts +7 -0
- package/dist/core/engine/lifecycle/start-batch.js +70 -0
- package/dist/core/engine/lifecycle/start-exec.d.ts +5 -0
- package/dist/core/engine/lifecycle/start-exec.js +39 -0
- package/dist/core/engine/lifecycle/start.d.ts +13 -0
- package/dist/core/engine/lifecycle/start.js +163 -0
- package/dist/core/engine/lifecycle/transition.d.ts +8 -0
- package/dist/core/engine/lifecycle/transition.js +183 -0
- package/dist/core/engine/lifecycle.d.ts +8 -0
- package/dist/core/engine/lifecycle.js +40 -0
- package/dist/core/engine/list-candidate-resolution.d.ts +15 -0
- package/dist/core/engine/list-candidate-resolution.js +88 -0
- package/dist/core/engine/listing.d.ts +17 -0
- package/dist/core/engine/listing.js +186 -0
- package/dist/core/engine/operations-activity.d.ts +40 -0
- package/dist/core/engine/operations-activity.js +194 -0
- package/dist/core/engine/operations-coordination.d.ts +39 -0
- package/dist/core/engine/operations-coordination.js +162 -0
- package/dist/core/engine/operations-data.d.ts +23 -0
- package/dist/core/engine/operations-data.js +38 -0
- package/dist/core/engine/operations-router.d.ts +75 -0
- package/dist/core/engine/operations-router.js +90 -0
- package/dist/core/engine/operations-speculate.d.ts +16 -0
- package/dist/core/engine/operations-speculate.js +40 -0
- package/dist/core/engine/operations-state.d.ts +16 -0
- package/dist/core/engine/operations-state.js +27 -0
- package/dist/core/engine/operations-stream.d.ts +20 -0
- package/dist/core/engine/operations-stream.js +54 -0
- package/dist/core/engine/operations-time.d.ts +28 -0
- package/dist/core/engine/operations-time.js +167 -0
- package/dist/core/engine/parallel-dispatch.d.ts +92 -0
- package/dist/core/engine/parallel-dispatch.js +45 -0
- package/dist/core/engine/pending-updates.d.ts +18 -0
- package/dist/core/engine/pending-updates.js +109 -0
- package/dist/core/engine/persisted-data-version.d.ts +24 -0
- package/dist/core/engine/persisted-data-version.js +25 -0
- package/dist/core/engine/queries.d.ts +3 -0
- package/dist/core/engine/queries.js +17 -0
- package/dist/core/engine/registration.d.ts +6 -0
- package/dist/core/engine/registration.js +107 -0
- package/dist/core/engine/retention.d.ts +15 -0
- package/dist/core/engine/retention.js +76 -0
- package/dist/core/engine/review-list-entries.d.ts +6 -0
- package/dist/core/engine/review-list-entries.js +117 -0
- package/dist/core/engine/reviews.d.ts +34 -0
- package/dist/core/engine/reviews.js +242 -0
- package/dist/core/engine/schedule-occurrence.d.ts +35 -0
- package/dist/core/engine/schedule-occurrence.js +26 -0
- package/dist/core/engine/schedule-timer.d.ts +4 -0
- package/dist/core/engine/schedule-timer.js +77 -0
- package/dist/core/engine/schedules.d.ts +34 -0
- package/dist/core/engine/schedules.js +204 -0
- package/dist/core/engine/signals.d.ts +40 -0
- package/dist/core/engine/signals.js +185 -0
- package/dist/core/engine/speculative-execution-state.d.ts +8 -0
- package/dist/core/engine/speculative-execution-state.js +26 -0
- package/dist/core/engine/state-utilities.d.ts +62 -0
- package/dist/core/engine/state-utilities.js +306 -0
- package/dist/core/engine/storage-io.d.ts +21 -0
- package/dist/core/engine/storage-io.js +82 -0
- package/dist/core/engine/strategy-helpers.d.ts +27 -0
- package/dist/core/engine/strategy-helpers.js +47 -0
- package/dist/core/engine/stream-chunk-loading.d.ts +5 -0
- package/dist/core/engine/stream-chunk-loading.js +22 -0
- package/dist/core/engine/sub-operation.d.ts +24 -0
- package/dist/core/engine/sub-operation.js +78 -0
- package/dist/core/engine/termination/cleanup.d.ts +67 -0
- package/dist/core/engine/termination/cleanup.js +167 -0
- package/dist/core/engine/termination/complete.d.ts +13 -0
- package/dist/core/engine/termination/complete.js +249 -0
- package/dist/core/engine/termination.d.ts +7 -0
- package/dist/core/engine/termination.js +23 -0
- package/dist/core/engine/updates.d.ts +56 -0
- package/dist/core/engine/updates.js +230 -0
- package/dist/core/engine/validation/schedule.d.ts +38 -0
- package/dist/core/engine/validation/schedule.js +258 -0
- package/dist/core/engine/validation.d.ts +40 -0
- package/dist/core/engine/validation.js +144 -0
- package/dist/core/engine/workflow-feed.d.ts +82 -0
- package/dist/core/engine/workflow-feed.js +96 -0
- package/dist/core/engine/workflow-indexes.d.ts +103 -0
- package/dist/core/engine/workflow-indexes.js +93 -0
- package/dist/core/engine/workflow-state-stream.d.ts +9 -0
- package/dist/core/engine/workflow-state-stream.js +126 -0
- package/dist/core/engine/workflow-visibility-queries.d.ts +40 -0
- package/dist/core/engine/workflow-visibility-queries.js +56 -0
- package/dist/core/engine-helpers.d.ts +56 -0
- package/dist/core/engine-helpers.js +52 -0
- package/dist/core/engine.d.ts +1 -0
- package/dist/core/engine.js +1 -0
- package/dist/core/event-log-shared.d.ts +65 -0
- package/dist/core/event-log-shared.js +31 -0
- package/dist/core/event-log-verify.d.ts +51 -0
- package/dist/core/event-log-verify.js +64 -0
- package/dist/core/event-log.d.ts +112 -0
- package/dist/core/event-log.js +81 -0
- package/dist/core/events/activity-events.d.ts +104 -0
- package/dist/core/events/activity-events.js +63 -0
- package/dist/core/events/attribute-events.d.ts +22 -0
- package/dist/core/events/attribute-events.js +10 -0
- package/dist/core/events/event-map.d.ts +80 -0
- package/dist/core/events/event-map.js +0 -0
- package/dist/core/events/index.d.ts +7 -0
- package/dist/core/events/index.js +7 -0
- package/dist/core/events/signal-events.d.ts +45 -0
- package/dist/core/events/signal-events.js +23 -0
- package/dist/core/events/system-events.d.ts +149 -0
- package/dist/core/events/system-events.js +92 -0
- package/dist/core/events/update-events.d.ts +53 -0
- package/dist/core/events/update-events.js +31 -0
- package/dist/core/events/workflow-events.d.ts +198 -0
- package/dist/core/events/workflow-events.js +91 -0
- package/dist/core/events.d.ts +1 -0
- package/dist/core/events.js +1 -0
- package/dist/core/execution-strategy.d.ts +107 -0
- package/dist/core/execution-strategy.js +0 -0
- package/dist/core/failure-categories.d.ts +18 -0
- package/dist/core/failure-categories.js +70 -0
- package/dist/core/fault-code.d.ts +92 -0
- package/dist/core/fault-code.js +21 -0
- package/dist/core/inline-execution-strategy.d.ts +76 -0
- package/dist/core/inline-execution-strategy.js +264 -0
- package/dist/core/interceptor/activity-composition.d.ts +20 -0
- package/dist/core/interceptor/activity-composition.js +17 -0
- package/dist/core/interceptor/index.d.ts +25 -0
- package/dist/core/interceptor/index.js +8 -0
- package/dist/core/interceptor/interception-contexts.d.ts +200 -0
- package/dist/core/interceptor/interception-contexts.js +0 -0
- package/dist/core/interceptor/interceptor-interfaces.d.ts +149 -0
- package/dist/core/interceptor/interceptor-interfaces.js +9 -0
- package/dist/core/interceptor/split.d.ts +11 -0
- package/dist/core/interceptor/split.js +14 -0
- package/dist/core/interceptor/workflow-composition.d.ts +21 -0
- package/dist/core/interceptor/workflow-composition.js +116 -0
- package/dist/core/interceptor.d.ts +1 -0
- package/dist/core/interceptor.js +1 -0
- package/dist/core/json.d.ts +56 -0
- package/dist/core/json.js +77 -0
- package/dist/core/list-filter-validation.d.ts +78 -0
- package/dist/core/list-filter-validation.js +75 -0
- package/dist/core/payload-size.d.ts +78 -0
- package/dist/core/payload-size.js +27 -0
- package/dist/core/persisted-data-incompatible-error.d.ts +48 -0
- package/dist/core/persisted-data-incompatible-error.js +12 -0
- package/dist/core/registry-snapshot.d.ts +69 -0
- package/dist/core/registry-snapshot.js +70 -0
- package/dist/core/review/events.d.ts +73 -0
- package/dist/core/review/events.js +31 -0
- package/dist/core/review/index.d.ts +265 -0
- package/dist/core/review/index.js +96 -0
- package/dist/core/runtime-workflow-engine.d.ts +16 -0
- package/dist/core/runtime-workflow-engine.js +6 -0
- package/dist/core/schedule/cron-formatter.d.ts +10 -0
- package/dist/core/schedule/cron-formatter.js +103 -0
- package/dist/core/schedule/cron-occurrence.d.ts +3 -0
- package/dist/core/schedule/cron-occurrence.js +129 -0
- package/dist/core/schedule/cron-parser.d.ts +2 -0
- package/dist/core/schedule/cron-parser.js +93 -0
- package/dist/core/schedule/cron-types.d.ts +35 -0
- package/dist/core/schedule/cron-types.js +0 -0
- package/dist/core/schedule/index.d.ts +3 -0
- package/dist/core/schedule/index.js +2 -0
- package/dist/core/schedule/interval-occurrence.d.ts +31 -0
- package/dist/core/schedule/interval-occurrence.js +26 -0
- package/dist/core/schedule.d.ts +1 -0
- package/dist/core/schedule.js +1 -0
- package/dist/core/scheduler/duration.d.ts +44 -0
- package/dist/core/scheduler/duration.js +48 -0
- package/dist/core/scheduler/index.d.ts +4 -0
- package/dist/core/scheduler/index.js +3 -0
- package/dist/core/scheduler/scheduler-class.d.ts +52 -0
- package/dist/core/scheduler/scheduler-class.js +167 -0
- package/dist/core/scheduler/timer-batch.d.ts +10 -0
- package/dist/core/scheduler/timer-batch.js +42 -0
- package/dist/core/scheduler/timer-sources.d.ts +17 -0
- package/dist/core/scheduler/timer-sources.js +61 -0
- package/dist/core/scheduler.d.ts +1 -0
- package/dist/core/scheduler.js +1 -0
- package/dist/core/search-attributes.d.ts +67 -0
- package/dist/core/search-attributes.js +196 -0
- package/dist/core/session-state.d.ts +18 -0
- package/dist/core/session-state.js +71 -0
- package/dist/core/signal-id.d.ts +2 -0
- package/dist/core/signal-id.js +10 -0
- package/dist/core/start-workflow-validation.d.ts +14 -0
- package/dist/core/start-workflow-validation.js +63 -0
- package/dist/core/step-context.d.ts +97 -0
- package/dist/core/step-context.js +113 -0
- package/dist/core/timeouts.d.ts +98 -0
- package/dist/core/timeouts.js +38 -0
- package/dist/core/types/activity.d.ts +316 -0
- package/dist/core/types/activity.js +15 -0
- package/dist/core/types/archive-adapter.d.ts +49 -0
- package/dist/core/types/archive-adapter.js +0 -0
- package/dist/core/types/bulk.d.ts +312 -0
- package/dist/core/types/bulk.js +1 -0
- package/dist/core/types/checkpoint.d.ts +237 -0
- package/dist/core/types/checkpoint.js +12 -0
- package/dist/core/types/clone-plain.d.ts +17 -0
- package/dist/core/types/clone-plain.js +25 -0
- package/dist/core/types/constants.d.ts +54 -0
- package/dist/core/types/constants.js +1 -0
- package/dist/core/types/deep-freeze.d.ts +31 -0
- package/dist/core/types/deep-freeze.js +31 -0
- package/dist/core/types/definition-schema-to-json.d.ts +41 -0
- package/dist/core/types/definition-schema-to-json.js +56 -0
- package/dist/core/types/definition-schema.d.ts +341 -0
- package/dist/core/types/definition-schema.js +45 -0
- package/dist/core/types/history-policy.d.ts +92 -0
- package/dist/core/types/history-policy.js +1 -0
- package/dist/core/types/identity.d.ts +55 -0
- package/dist/core/types/identity.js +0 -0
- package/dist/core/types/message-handles.d.ts +229 -0
- package/dist/core/types/message-handles.js +36 -0
- package/dist/core/types/name-grammar.d.ts +30 -0
- package/dist/core/types/name-grammar.js +9 -0
- package/dist/core/types/options.d.ts +360 -0
- package/dist/core/types/options.js +0 -0
- package/dist/core/types/payload-size-policy.d.ts +47 -0
- package/dist/core/types/payload-size-policy.js +0 -0
- package/dist/core/types/registry-type-helpers.d.ts +1 -0
- package/dist/core/types/registry-type-helpers.js +0 -0
- package/dist/core/types/retry-retention.d.ts +163 -0
- package/dist/core/types/retry-retention.js +6 -0
- package/dist/core/types/reviews.d.ts +170 -0
- package/dist/core/types/reviews.js +0 -0
- package/dist/core/types/schedules.d.ts +176 -0
- package/dist/core/types/schedules.js +3 -0
- package/dist/core/types/search-attributes.d.ts +127 -0
- package/dist/core/types/search-attributes.js +8 -0
- package/dist/core/types/serializer.d.ts +30 -0
- package/dist/core/types/serializer.js +0 -0
- package/dist/core/types/standard-schema-validate.d.ts +113 -0
- package/dist/core/types/standard-schema-validate.js +60 -0
- package/dist/core/types/state.d.ts +261 -0
- package/dist/core/types/state.js +0 -0
- package/dist/core/types/workflow-builder-helpers.d.ts +310 -0
- package/dist/core/types/workflow-builder-helpers.js +0 -0
- package/dist/core/types/workflow-builder-runtime.d.ts +97 -0
- package/dist/core/types/workflow-builder-runtime.js +137 -0
- package/dist/core/types/workflow-builder.d.ts +343 -0
- package/dist/core/types/workflow-builder.js +0 -0
- package/dist/core/types/workflow-context.d.ts +168 -0
- package/dist/core/types/workflow-context.js +0 -0
- package/dist/core/types/workflow-definition.d.ts +61 -0
- package/dist/core/types/workflow-definition.js +0 -0
- package/dist/core/types/workflow-function.d.ts +330 -0
- package/dist/core/types/workflow-function.js +9 -0
- package/dist/core/types/workflow-registries.d.ts +203 -0
- package/dist/core/types/workflow-registries.js +0 -0
- package/dist/core/types/workflow-registry.d.ts +31 -0
- package/dist/core/types/workflow-registry.js +0 -0
- package/dist/core/types.d.ts +26 -0
- package/dist/core/types.js +26 -0
- package/dist/core/updates.d.ts +183 -0
- package/dist/core/updates.js +141 -0
- package/dist/core/versioning.d.ts +153 -0
- package/dist/core/versioning.js +94 -0
- package/dist/core/weft-error.d.ts +82 -0
- package/dist/core/weft-error.js +43 -0
- package/dist/core/worker-checkpoint-resume-state.d.ts +11 -0
- package/dist/core/worker-checkpoint-resume-state.js +40 -0
- package/dist/core/worker-execution-dispatcher.d.ts +42 -0
- package/dist/core/worker-execution-dispatcher.js +95 -0
- package/dist/core/worker-execution-ownership.d.ts +20 -0
- package/dist/core/worker-execution-ownership.js +91 -0
- package/dist/core/worker-execution-strategy-options.d.ts +7 -0
- package/dist/core/worker-execution-strategy-options.js +0 -0
- package/dist/core/worker-execution-strategy.d.ts +29 -0
- package/dist/core/worker-execution-strategy.js +356 -0
- package/dist/core/worker-listener-registry.d.ts +11 -0
- package/dist/core/worker-listener-registry.js +35 -0
- package/dist/core/worker-message-helpers.d.ts +5 -0
- package/dist/core/worker-message-helpers.js +14 -0
- package/dist/core/worker-protocol-guard.d.ts +20 -0
- package/dist/core/worker-protocol-guard.js +69 -0
- package/dist/core/worker-protocol.d.ts +27 -0
- package/dist/core/worker-protocol.js +346 -0
- package/dist/core/worker-turn-watchdog.d.ts +14 -0
- package/dist/core/worker-turn-watchdog.js +40 -0
- package/dist/core/workflow-identifiers.d.ts +1 -0
- package/dist/core/workflow-identifiers.js +19 -0
- package/dist/core/workflow-tags.d.ts +9 -0
- package/dist/core/workflow-tags.js +37 -0
- package/dist/core/workflow-version-tuple.d.ts +67 -0
- package/dist/core/workflow-version-tuple.js +77 -0
- package/dist/diagnostics/doctor.d.ts +30 -0
- package/dist/diagnostics/doctor.js +173 -0
- package/dist/diagnostics/format.d.ts +77 -0
- package/dist/diagnostics/format.js +115 -0
- package/dist/diagnostics/index.d.ts +15 -0
- package/dist/diagnostics/index.js +10 -0
- package/dist/diagnostics/memory-profiler.d.ts +136 -0
- package/dist/diagnostics/memory-profiler.js +93 -0
- package/dist/diagnostics/recommendations.d.ts +37 -0
- package/dist/diagnostics/recommendations.js +116 -0
- package/dist/diagnostics/types.d.ts +178 -0
- package/dist/diagnostics/types.js +9 -0
- package/dist/diagnostics/validate.d.ts +79 -0
- package/dist/diagnostics/validate.js +88 -0
- package/dist/diagnostics/version-check.d.ts +34 -0
- package/dist/diagnostics/version-check.js +61 -0
- package/dist/index.d.ts +109 -0
- package/dist/index.js +182 -0
- package/dist/json-schema.d.ts +55 -0
- package/dist/json-schema.js +4 -0
- package/dist/mcp/access.d.ts +21 -0
- package/dist/mcp/access.js +22 -0
- package/dist/mcp/cli.d.ts +2 -0
- package/dist/mcp/cli.js +72 -0
- package/dist/mcp/dispatcher.d.ts +13 -0
- package/dist/mcp/dispatcher.js +198 -0
- package/dist/mcp/http.d.ts +64 -0
- package/dist/mcp/http.js +272 -0
- package/dist/mcp/index.d.ts +17 -0
- package/dist/mcp/index.js +26 -0
- package/dist/mcp/list-filter.d.ts +10 -0
- package/dist/mcp/list-filter.js +116 -0
- package/dist/mcp/protocol.d.ts +89 -0
- package/dist/mcp/protocol.js +64 -0
- package/dist/mcp/resources.d.ts +40 -0
- package/dist/mcp/resources.js +141 -0
- package/dist/mcp/session.d.ts +138 -0
- package/dist/mcp/session.js +204 -0
- package/dist/mcp/stdio.d.ts +89 -0
- package/dist/mcp/stdio.js +204 -0
- package/dist/mcp/tools.d.ts +27 -0
- package/dist/mcp/tools.js +262 -0
- package/dist/observability/activity-interceptor.d.ts +3 -0
- package/dist/observability/activity-interceptor.js +34 -0
- package/dist/observability/index.d.ts +60 -0
- package/dist/observability/index.js +4 -0
- package/dist/observability/metrics-catalog.d.ts +128 -0
- package/dist/observability/metrics-catalog.js +110 -0
- package/dist/observability/metrics-snapshot.d.ts +106 -0
- package/dist/observability/metrics-snapshot.js +0 -0
- package/dist/observability/metrics.d.ts +156 -0
- package/dist/observability/metrics.js +152 -0
- package/dist/observability/no-op-telemetry.d.ts +168 -0
- package/dist/observability/no-op-telemetry.js +96 -0
- package/dist/observability/propagation.d.ts +121 -0
- package/dist/observability/propagation.js +41 -0
- package/dist/observability/span-helpers.d.ts +50 -0
- package/dist/observability/span-helpers.js +83 -0
- package/dist/observability/types.d.ts +92 -0
- package/dist/observability/types.js +0 -0
- package/dist/observability/workflow-interceptor.d.ts +3 -0
- package/dist/observability/workflow-interceptor.js +106 -0
- package/dist/observability/workflow-lifecycle.d.ts +8 -0
- package/dist/observability/workflow-lifecycle.js +103 -0
- package/dist/runtime/portable.d.ts +119 -0
- package/dist/runtime/portable.js +90 -0
- package/dist/server/api-catalog.d.ts +85 -0
- package/dist/server/api-catalog.js +47 -0
- package/dist/server/asyncapi-channels.d.ts +40 -0
- package/dist/server/asyncapi-channels.js +264 -0
- package/dist/server/asyncapi.d.ts +25 -0
- package/dist/server/asyncapi.js +110 -0
- package/dist/server/attribute-filters.d.ts +37 -0
- package/dist/server/attribute-filters.js +39 -0
- package/dist/server/authentication/api-key.d.ts +3 -0
- package/dist/server/authentication/api-key.js +80 -0
- package/dist/server/authentication/audit.d.ts +116 -0
- package/dist/server/authentication/audit.js +25 -0
- package/dist/server/authentication/crypto.d.ts +7 -0
- package/dist/server/authentication/crypto.js +99 -0
- package/dist/server/authentication/index.d.ts +68 -0
- package/dist/server/authentication/index.js +144 -0
- package/dist/server/authentication/rate-limiter.d.ts +126 -0
- package/dist/server/authentication/rate-limiter.js +61 -0
- package/dist/server/authentication/redaction.d.ts +72 -0
- package/dist/server/authentication/redaction.js +30 -0
- package/dist/server/authentication/rotating-api-key-store.d.ts +107 -0
- package/dist/server/authentication/rotating-api-key-store.js +43 -0
- package/dist/server/authentication/types.d.ts +290 -0
- package/dist/server/authentication/types.js +13 -0
- package/dist/server/authentication.d.ts +1 -0
- package/dist/server/authentication.js +1 -0
- package/dist/server/authorization-scope.d.ts +43 -0
- package/dist/server/authorization-scope.js +53 -0
- package/dist/server/authorization.d.ts +55 -0
- package/dist/server/authorization.js +87 -0
- package/dist/server/deadline-tracker.d.ts +47 -0
- package/dist/server/deadline-tracker.js +106 -0
- package/dist/server/discovery-filter.d.ts +13 -0
- package/dist/server/discovery-filter.js +5 -0
- package/dist/server/discovery-info.d.ts +69 -0
- package/dist/server/discovery-info.js +12 -0
- package/dist/server/engine-event-feed-backend.d.ts +31 -0
- package/dist/server/engine-event-feed-backend.js +36 -0
- package/dist/server/fault-to-http.d.ts +14 -0
- package/dist/server/fault-to-http.js +29 -0
- package/dist/server/fault-to-json-rpc.d.ts +23 -0
- package/dist/server/fault-to-json-rpc.js +60 -0
- package/dist/server/handler/binding-dispatch.d.ts +11 -0
- package/dist/server/handler/binding-dispatch.js +13 -0
- package/dist/server/handler/index.d.ts +31 -0
- package/dist/server/handler/index.js +78 -0
- package/dist/server/handler/response-helpers.d.ts +5 -0
- package/dist/server/handler/response-helpers.js +28 -0
- package/dist/server/handler/route-dispatch.d.ts +144 -0
- package/dist/server/handler/route-dispatch.js +192 -0
- package/dist/server/handler/route-matching.d.ts +55 -0
- package/dist/server/handler/route-matching.js +45 -0
- package/dist/server/handler.d.ts +1 -0
- package/dist/server/handler.js +56 -0
- package/dist/server/index.d.ts +346 -0
- package/dist/server/index.js +64 -0
- package/dist/server/interactive-operations.d.ts +18 -0
- package/dist/server/interactive-operations.js +28 -0
- package/dist/server/json-rpc-dispatch.d.ts +49 -0
- package/dist/server/json-rpc-dispatch.js +92 -0
- package/dist/server/json-rpc-framing.d.ts +42 -0
- package/dist/server/json-rpc-framing.js +15 -0
- package/dist/server/json-rpc-http.d.ts +33 -0
- package/dist/server/json-rpc-http.js +112 -0
- package/dist/server/json-rpc-parse.d.ts +69 -0
- package/dist/server/json-rpc-parse.js +139 -0
- package/dist/server/json-rpc-protocol.d.ts +76 -0
- package/dist/server/json-rpc-protocol.js +27 -0
- package/dist/server/json-rpc-transport-helpers.d.ts +17 -0
- package/dist/server/json-rpc-transport-helpers.js +26 -0
- package/dist/server/json-rpc-websocket-runtime.d.ts +37 -0
- package/dist/server/json-rpc-websocket-runtime.js +51 -0
- package/dist/server/json-rpc-websocket-validation.d.ts +38 -0
- package/dist/server/json-rpc-websocket-validation.js +96 -0
- package/dist/server/json-rpc-websocket.d.ts +60 -0
- package/dist/server/json-rpc-websocket.js +268 -0
- package/dist/server/json-schema-utilities.d.ts +4 -0
- package/dist/server/json-schema-utilities.js +16 -0
- package/dist/server/mcp-discovery.d.ts +57 -0
- package/dist/server/mcp-discovery.js +50 -0
- package/dist/server/openapi-canonical-json.d.ts +10 -0
- package/dist/server/openapi-canonical-json.js +13 -0
- package/dist/server/openapi-error-responses.d.ts +15 -0
- package/dist/server/openapi-error-responses.js +36 -0
- package/dist/server/openapi-schemas.d.ts +17 -0
- package/dist/server/openapi-schemas.js +69 -0
- package/dist/server/openapi.d.ts +48 -0
- package/dist/server/openapi.js +290 -0
- package/dist/server/openrpc-document-schema.d.ts +112 -0
- package/dist/server/openrpc-document-schema.js +65 -0
- package/dist/server/openrpc-errors.d.ts +73 -0
- package/dist/server/openrpc-errors.js +57 -0
- package/dist/server/openrpc.d.ts +53 -0
- package/dist/server/openrpc.js +179 -0
- package/dist/server/operation-catalog/activity-adapter.d.ts +11 -0
- package/dist/server/operation-catalog/activity-adapter.js +9 -0
- package/dist/server/operation-catalog/dispatch-allowlist.d.ts +4 -0
- package/dist/server/operation-catalog/dispatch-allowlist.js +4 -0
- package/dist/server/operation-catalog/dispatch-preparation.d.ts +39 -0
- package/dist/server/operation-catalog/dispatch-preparation.js +52 -0
- package/dist/server/operation-catalog/index.d.ts +22 -0
- package/dist/server/operation-catalog/index.js +17 -0
- package/dist/server/operation-catalog/pipeline-helpers.d.ts +66 -0
- package/dist/server/operation-catalog/pipeline-helpers.js +179 -0
- package/dist/server/operation-catalog/pipeline-stages.d.ts +23 -0
- package/dist/server/operation-catalog/pipeline-stages.js +189 -0
- package/dist/server/operation-catalog/pipeline.d.ts +7 -0
- package/dist/server/operation-catalog/pipeline.js +32 -0
- package/dist/server/operation-catalog/raise-fault.d.ts +32 -0
- package/dist/server/operation-catalog/raise-fault.js +18 -0
- package/dist/server/operation-catalog/registry.d.ts +6 -0
- package/dist/server/operation-catalog/registry.js +93 -0
- package/dist/server/operation-catalog/stream-pipeline.d.ts +25 -0
- package/dist/server/operation-catalog/stream-pipeline.js +122 -0
- package/dist/server/operation-catalog/types.d.ts +246 -0
- package/dist/server/operation-catalog/types.js +9 -0
- package/dist/server/operation-catalog/workflow-adapter.d.ts +55 -0
- package/dist/server/operation-catalog/workflow-adapter.js +85 -0
- package/dist/server/operation-catalog.d.ts +1 -0
- package/dist/server/operation-catalog.js +1 -0
- package/dist/server/operation-fault.d.ts +153 -0
- package/dist/server/operation-fault.js +50 -0
- package/dist/server/operation-registry.d.ts +100 -0
- package/dist/server/operation-registry.js +56 -0
- package/dist/server/operations/add-workflow-tags.d.ts +15 -0
- package/dist/server/operations/add-workflow-tags.js +13 -0
- package/dist/server/operations/aggregate-workflows.d.ts +81 -0
- package/dist/server/operations/aggregate-workflows.js +110 -0
- package/dist/server/operations/async-activity.d.ts +44 -0
- package/dist/server/operations/async-activity.js +134 -0
- package/dist/server/operations/bulk-cancel-workflows.d.ts +7 -0
- package/dist/server/operations/bulk-cancel-workflows.js +64 -0
- package/dist/server/operations/bulk-delete-workflows.d.ts +7 -0
- package/dist/server/operations/bulk-delete-workflows.js +71 -0
- package/dist/server/operations/bulk-filter-helpers.d.ts +62 -0
- package/dist/server/operations/bulk-filter-helpers.js +334 -0
- package/dist/server/operations/bulk-mutate-workflow-tags.d.ts +94 -0
- package/dist/server/operations/bulk-mutate-workflow-tags.js +100 -0
- package/dist/server/operations/bulk-operation-helpers.d.ts +27 -0
- package/dist/server/operations/bulk-operation-helpers.js +29 -0
- package/dist/server/operations/bulk-signal-workflows.d.ts +87 -0
- package/dist/server/operations/bulk-signal-workflows.js +80 -0
- package/dist/server/operations/cancel-schedule.d.ts +13 -0
- package/dist/server/operations/cancel-schedule.js +43 -0
- package/dist/server/operations/cancel-workflow.d.ts +13 -0
- package/dist/server/operations/cancel-workflow.js +34 -0
- package/dist/server/operations/create-schedule.d.ts +29 -0
- package/dist/server/operations/create-schedule.js +116 -0
- package/dist/server/operations/failure-category-filter.d.ts +2 -0
- package/dist/server/operations/failure-category-filter.js +19 -0
- package/dist/server/operations/fork-workflow.d.ts +29 -0
- package/dist/server/operations/fork-workflow.js +88 -0
- package/dist/server/operations/get-checkpoint-at.d.ts +15 -0
- package/dist/server/operations/get-checkpoint-at.js +74 -0
- package/dist/server/operations/get-registry.d.ts +26 -0
- package/dist/server/operations/get-registry.js +56 -0
- package/dist/server/operations/get-retention-overview.d.ts +9 -0
- package/dist/server/operations/get-retention-overview.js +39 -0
- package/dist/server/operations/get-review.d.ts +15 -0
- package/dist/server/operations/get-review.js +57 -0
- package/dist/server/operations/get-schedule.d.ts +20 -0
- package/dist/server/operations/get-schedule.js +48 -0
- package/dist/server/operations/get-stream-chunks.d.ts +19 -0
- package/dist/server/operations/get-stream-chunks.js +71 -0
- package/dist/server/operations/get-system-metrics.d.ts +42 -0
- package/dist/server/operations/get-system-metrics.js +43 -0
- package/dist/server/operations/get-task-diagnostics.d.ts +184 -0
- package/dist/server/operations/get-task-diagnostics.js +340 -0
- package/dist/server/operations/get-update-result.d.ts +18 -0
- package/dist/server/operations/get-update-result.js +55 -0
- package/dist/server/operations/get-workflow-attributes.d.ts +13 -0
- package/dist/server/operations/get-workflow-attributes.js +51 -0
- package/dist/server/operations/get-workflow-events.d.ts +15 -0
- package/dist/server/operations/get-workflow-events.js +51 -0
- package/dist/server/operations/get-workflow-result.d.ts +14 -0
- package/dist/server/operations/get-workflow-result.js +93 -0
- package/dist/server/operations/get-workflow-timeline.d.ts +13 -0
- package/dist/server/operations/get-workflow-timeline.js +51 -0
- package/dist/server/operations/get-workflow.d.ts +36 -0
- package/dist/server/operations/get-workflow.js +49 -0
- package/dist/server/operations/list-checkpoints.d.ts +13 -0
- package/dist/server/operations/list-checkpoints.js +43 -0
- package/dist/server/operations/list-filter-query-extractor.d.ts +23 -0
- package/dist/server/operations/list-filter-query-extractor.js +87 -0
- package/dist/server/operations/list-reviews.d.ts +19 -0
- package/dist/server/operations/list-reviews.js +77 -0
- package/dist/server/operations/list-schedules.d.ts +28 -0
- package/dist/server/operations/list-schedules.js +108 -0
- package/dist/server/operations/list-task-queues.d.ts +71 -0
- package/dist/server/operations/list-task-queues.js +105 -0
- package/dist/server/operations/list-workers.d.ts +56 -0
- package/dist/server/operations/list-workers.js +92 -0
- package/dist/server/operations/list-workflows.d.ts +79 -0
- package/dist/server/operations/list-workflows.js +136 -0
- package/dist/server/operations/operation-helpers.d.ts +21 -0
- package/dist/server/operations/operation-helpers.js +22 -0
- package/dist/server/operations/pause-schedule.d.ts +13 -0
- package/dist/server/operations/pause-schedule.js +43 -0
- package/dist/server/operations/purge-workflows.d.ts +41 -0
- package/dist/server/operations/purge-workflows.js +57 -0
- package/dist/server/operations/query-workflow.d.ts +19 -0
- package/dist/server/operations/query-workflow.js +99 -0
- package/dist/server/operations/recover-all.d.ts +13 -0
- package/dist/server/operations/recover-all.js +65 -0
- package/dist/server/operations/remove-workflow-tags.d.ts +15 -0
- package/dist/server/operations/remove-workflow-tags.js +13 -0
- package/dist/server/operations/replay-workflow.d.ts +28 -0
- package/dist/server/operations/replay-workflow.js +69 -0
- package/dist/server/operations/resume-schedule.d.ts +13 -0
- package/dist/server/operations/resume-schedule.js +43 -0
- package/dist/server/operations/resume-workflow.d.ts +17 -0
- package/dist/server/operations/resume-workflow.js +40 -0
- package/dist/server/operations/schedule-faults.d.ts +14 -0
- package/dist/server/operations/schedule-faults.js +41 -0
- package/dist/server/operations/set-workflow-attributes.d.ts +19 -0
- package/dist/server/operations/set-workflow-attributes.js +67 -0
- package/dist/server/operations/signal-workflow.d.ts +23 -0
- package/dist/server/operations/signal-workflow.js +58 -0
- package/dist/server/operations/single-workflow-control-operation.d.ts +32 -0
- package/dist/server/operations/single-workflow-control-operation.js +44 -0
- package/dist/server/operations/single-workflow-tag-mutation.d.ts +27 -0
- package/dist/server/operations/single-workflow-tag-mutation.js +108 -0
- package/dist/server/operations/sse-stream.d.ts +13 -0
- package/dist/server/operations/sse-stream.js +42 -0
- package/dist/server/operations/start-workflow.d.ts +33 -0
- package/dist/server/operations/start-workflow.js +181 -0
- package/dist/server/operations/storage.d.ts +112 -0
- package/dist/server/operations/storage.js +358 -0
- package/dist/server/operations/stream-workflow-sse.d.ts +17 -0
- package/dist/server/operations/stream-workflow-sse.js +94 -0
- package/dist/server/operations/submit-review-decision.d.ts +25 -0
- package/dist/server/operations/submit-review-decision.js +113 -0
- package/dist/server/operations/timeout-workflow.d.ts +11 -0
- package/dist/server/operations/timeout-workflow.js +34 -0
- package/dist/server/operations/update-schedule.d.ts +15 -0
- package/dist/server/operations/update-schedule.js +60 -0
- package/dist/server/operations/update-workflow.d.ts +27 -0
- package/dist/server/operations/update-workflow.js +109 -0
- package/dist/server/operations/worker-drain.d.ts +69 -0
- package/dist/server/operations/worker-drain.js +214 -0
- package/dist/server/operations/workflow-events-subscription.d.ts +47 -0
- package/dist/server/operations/workflow-events-subscription.js +51 -0
- package/dist/server/principal.d.ts +176 -0
- package/dist/server/principal.js +59 -0
- package/dist/server/rest-binding.d.ts +158 -0
- package/dist/server/rest-binding.js +35 -0
- package/dist/server/rest-bindings.d.ts +76 -0
- package/dist/server/rest-bindings.js +376 -0
- package/dist/server/route-model.d.ts +268 -0
- package/dist/server/route-model.js +166 -0
- package/dist/server/runtime/authentication-bridge.d.ts +22 -0
- package/dist/server/runtime/authentication-bridge.js +194 -0
- package/dist/server/runtime/context.d.ts +73 -0
- package/dist/server/runtime/context.js +0 -0
- package/dist/server/runtime/cors.d.ts +149 -0
- package/dist/server/runtime/cors.js +123 -0
- package/dist/server/runtime/event-broadcasting.d.ts +71 -0
- package/dist/server/runtime/event-broadcasting.js +205 -0
- package/dist/server/runtime/request-gate.d.ts +54 -0
- package/dist/server/runtime/request-gate.js +71 -0
- package/dist/server/runtime/shutdown.d.ts +10 -0
- package/dist/server/runtime/shutdown.js +18 -0
- package/dist/server/runtime/stop-server.d.ts +3 -0
- package/dist/server/runtime/stop-server.js +19 -0
- package/dist/server/runtime/task-dispatch.d.ts +8 -0
- package/dist/server/runtime/task-dispatch.js +157 -0
- package/dist/server/runtime/task-metrics.d.ts +12 -0
- package/dist/server/runtime/task-metrics.js +36 -0
- package/dist/server/runtime/task-polling.d.ts +9 -0
- package/dist/server/runtime/task-polling.js +132 -0
- package/dist/server/runtime/task-reconciliation.d.ts +17 -0
- package/dist/server/runtime/task-reconciliation.js +163 -0
- package/dist/server/runtime/websocket-stream.d.ts +15 -0
- package/dist/server/runtime/websocket-stream.js +79 -0
- package/dist/server/runtime/websocket-upgrade.d.ts +8 -0
- package/dist/server/runtime/websocket-upgrade.js +76 -0
- package/dist/server/runtime/websocket-worker.d.ts +7 -0
- package/dist/server/runtime/websocket-worker.js +224 -0
- package/dist/server/runtime-helpers.d.ts +18 -0
- package/dist/server/runtime-helpers.js +23 -0
- package/dist/server/sequence-cursor.d.ts +5 -0
- package/dist/server/sequence-cursor.js +19 -0
- package/dist/server/serve-internals.d.ts +83 -0
- package/dist/server/serve-internals.js +203 -0
- package/dist/server/stdio-session.d.ts +51 -0
- package/dist/server/stdio-session.js +245 -0
- package/dist/server/task-queue-summary.d.ts +27 -0
- package/dist/server/task-queue-summary.js +34 -0
- package/dist/server/task-queue-types.d.ts +95 -0
- package/dist/server/task-queue-types.js +0 -0
- package/dist/server/task-queue.d.ts +90 -0
- package/dist/server/task-queue.js +247 -0
- package/dist/server/task-resolved-record.d.ts +12 -0
- package/dist/server/task-resolved-record.js +35 -0
- package/dist/server/task-state.d.ts +152 -0
- package/dist/server/task-state.js +178 -0
- package/dist/server/workflow-event-feed.d.ts +166 -0
- package/dist/server/workflow-event-feed.js +193 -0
- package/dist/service-worker/index.d.ts +123 -0
- package/dist/service-worker/index.js +56 -0
- package/dist/service-worker/scheduler.d.ts +37 -0
- package/dist/service-worker/scheduler.js +117 -0
- package/dist/service-worker/setup.d.ts +127 -0
- package/dist/service-worker/setup.js +129 -0
- package/dist/service-worker/shared.d.ts +94 -0
- package/dist/service-worker/shared.js +15 -0
- package/dist/storage/auto.d.ts +45 -0
- package/dist/storage/auto.js +2 -0
- package/dist/storage/bun-sql.d.ts +64 -0
- package/dist/storage/bun-sql.js +575 -0
- package/dist/storage/byte-encoding.d.ts +6 -0
- package/dist/storage/byte-encoding.js +16 -0
- package/dist/storage/capabilities.d.ts +187 -0
- package/dist/storage/capabilities.js +19 -0
- package/dist/storage/compressed-storage.d.ts +45 -0
- package/dist/storage/compressed-storage.js +2 -0
- package/dist/storage/default-scope.d.ts +17 -0
- package/dist/storage/default-scope.js +1 -0
- package/dist/storage/delete-range.d.ts +109 -0
- package/dist/storage/delete-range.js +64 -0
- package/dist/storage/derived-operations.d.ts +53 -0
- package/dist/storage/derived-operations.js +31 -0
- package/dist/storage/http.d.ts +67 -0
- package/dist/storage/http.js +2 -0
- package/dist/storage/index.d.ts +292 -0
- package/dist/storage/index.js +51 -0
- package/dist/storage/indexeddb.d.ts +49 -0
- package/dist/storage/indexeddb.js +1 -0
- package/dist/storage/interface.d.ts +340 -0
- package/dist/storage/interface.js +2 -0
- package/dist/storage/key-prefixes.d.ts +19 -0
- package/dist/storage/key-prefixes.js +35 -0
- package/dist/storage/lmdb.d.ts +40 -0
- package/dist/storage/lmdb.js +2 -0
- package/dist/storage/memory.d.ts +46 -0
- package/dist/storage/memory.js +2 -0
- package/dist/storage/node-sqlite.d.ts +85 -0
- package/dist/storage/node-sqlite.js +323 -0
- package/dist/storage/read-only-query.d.ts +2 -0
- package/dist/storage/read-only-query.js +19 -0
- package/dist/storage/resolve.d.ts +180 -0
- package/dist/storage/resolve.js +2 -0
- package/dist/storage/scoped-storage.d.ts +68 -0
- package/dist/storage/scoped-storage.js +2 -0
- package/dist/storage/sqlite-key-value-queries.d.ts +40 -0
- package/dist/storage/sqlite-key-value-queries.js +64 -0
- package/dist/storage/sqlite.d.ts +31 -0
- package/dist/storage/sqlite.js +0 -0
- package/dist/storage/text-value-import.d.ts +87 -0
- package/dist/storage/text-value-import.js +50 -0
- package/dist/storage/text-value-store.d.ts +171 -0
- package/dist/storage/text-value-store.js +55 -0
- package/dist/storage/turso.d.ts +60 -0
- package/dist/storage/turso.js +5 -0
- package/dist/storage/typed-storage.d.ts +258 -0
- package/dist/storage/typed-storage.js +2 -0
- package/dist/storage/web-extension.d.ts +55 -0
- package/dist/storage/web-extension.js +1 -0
- package/dist/testing/chaos.d.ts +157 -0
- package/dist/testing/chaos.js +69 -0
- package/dist/testing/event-loop.d.ts +4 -0
- package/dist/testing/event-loop.js +21 -0
- package/dist/testing/index.d.ts +126 -0
- package/dist/testing/index.js +61 -0
- package/dist/testing/mocks.d.ts +145 -0
- package/dist/testing/mocks.js +136 -0
- package/dist/testing/subprocess-engine.d.ts +100 -0
- package/dist/testing/subprocess-engine.js +291 -0
- package/dist/testing/test-engine.d.ts +145 -0
- package/dist/testing/test-engine.js +147 -0
- package/dist/testing/time-control.d.ts +59 -0
- package/dist/testing/time-control.js +68 -0
- package/dist/version.d.ts +12 -0
- package/dist/version.js +1 -0
- package/dist/worker/activity-table.d.ts +33 -0
- package/dist/worker/activity-table.js +20 -0
- package/dist/worker/execute-with-interceptors.d.ts +28 -0
- package/dist/worker/execute-with-interceptors.js +21 -0
- package/dist/worker/heartbeat.d.ts +34 -0
- package/dist/worker/heartbeat.js +31 -0
- package/dist/worker/index.d.ts +57 -0
- package/dist/worker/index.js +334 -0
- package/dist/worker/long-poll.d.ts +54 -0
- package/dist/worker/long-poll.js +134 -0
- package/dist/worker/options.d.ts +66 -0
- package/dist/worker/options.js +19 -0
- package/dist/worker/protocol-internals.d.ts +82 -0
- package/dist/worker/protocol-internals.js +56 -0
- package/dist/worker/protocol-messages.d.ts +264 -0
- package/dist/worker/protocol-messages.js +0 -0
- package/dist/worker/protocol-schemas.d.ts +559 -0
- package/dist/worker/protocol-schemas.js +180 -0
- package/dist/worker/protocol-version.d.ts +71 -0
- package/dist/worker/protocol-version.js +1 -0
- package/dist/worker/protocol.d.ts +72 -0
- package/dist/worker/protocol.js +2 -0
- package/dist/worker/registry/fair-share.d.ts +59 -0
- package/dist/worker/registry/fair-share.js +15 -0
- package/dist/worker/registry/routing.d.ts +17 -0
- package/dist/worker/registry/routing.js +16 -0
- package/dist/worker/registry/summary.d.ts +87 -0
- package/dist/worker/registry/summary.js +81 -0
- package/dist/worker/registry/types.d.ts +123 -0
- package/dist/worker/registry/types.js +0 -0
- package/dist/worker/registry.d.ts +94 -0
- package/dist/worker/registry.js +305 -0
- package/dist/worker/remote-activity-context.d.ts +15 -0
- package/dist/worker/remote-activity-context.js +0 -0
- package/dist/worker/task-result-outbox.d.ts +40 -0
- package/dist/worker/task-result-outbox.js +42 -0
- package/dist/worker/worker-protocol-incompatible-error.d.ts +52 -0
- package/dist/worker/worker-protocol-incompatible-error.js +15 -0
- package/dist/worker/workflow-activity-binding.d.ts +96 -0
- package/dist/worker/workflow-activity-binding.js +22 -0
- package/dist/workers/activity-runner.d.ts +87 -0
- package/dist/workers/activity-runner.js +29 -0
- package/dist/workers/activity-worker-dispatcher.d.ts +85 -0
- package/dist/workers/activity-worker-dispatcher.js +68 -0
- package/dist/workers/activity-worker-entry.d.ts +99 -0
- package/dist/workers/activity-worker-entry.js +59 -0
- package/dist/workers/pool.d.ts +83 -0
- package/dist/workers/pool.js +174 -0
- package/dist/workers/workflow-runner.d.ts +79 -0
- package/dist/workers/workflow-runner.js +245 -0
- package/dist/workers/workflow-worker-entry.d.ts +24 -0
- package/dist/workers/workflow-worker-entry.js +70 -0
- package/package.json +297 -0
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
function shouldRecurse(value) {
|
|
2
|
+
if (value === null || typeof value !== "object")
|
|
3
|
+
return !1;
|
|
4
|
+
if (Array.isArray(value))
|
|
5
|
+
return !0;
|
|
6
|
+
const prototype = Object.getPrototypeOf(value);
|
|
7
|
+
return prototype === Object.prototype || prototype === null;
|
|
8
|
+
}
|
|
9
|
+
function freezeChildren(value, seen) {
|
|
10
|
+
const entries = Array.isArray(value) ? value : Object.values(value);
|
|
11
|
+
for (const child of entries)
|
|
12
|
+
if (child !== null && typeof child === "object")
|
|
13
|
+
freezeWithSeen(child, seen);
|
|
14
|
+
}
|
|
15
|
+
function freezeWithSeen(value, seen) {
|
|
16
|
+
if (value === null || typeof value !== "object")
|
|
17
|
+
return value;
|
|
18
|
+
const objectValue = value;
|
|
19
|
+
if (seen.has(objectValue))
|
|
20
|
+
return value;
|
|
21
|
+
seen.add(objectValue);
|
|
22
|
+
if (Object.isFrozen(value))
|
|
23
|
+
return value;
|
|
24
|
+
if (shouldRecurse(value))
|
|
25
|
+
freezeChildren(objectValue, seen);
|
|
26
|
+
Object.freeze(value);
|
|
27
|
+
return value;
|
|
28
|
+
}
|
|
29
|
+
export function deepFreeze(value) {
|
|
30
|
+
return freezeWithSeen(value, new WeakSet);
|
|
31
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import type { DefinitionSchema } from './definition-schema.ts';
|
|
2
|
+
/**
|
|
3
|
+
* Direction parameter for {@link definitionSchemaToJsonSchema}. `"input"`
|
|
4
|
+
* produces the JSON Schema describing the validator's accepted input;
|
|
5
|
+
* `"output"` produces the schema describing the validated value.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```ts
|
|
9
|
+
* import type { DefinitionSchemaDirection } from '@lostgradient/weft';
|
|
10
|
+
*
|
|
11
|
+
* const direction: DefinitionSchemaDirection = 'input';
|
|
12
|
+
* void direction;
|
|
13
|
+
* ```
|
|
14
|
+
*/
|
|
15
|
+
export type DefinitionSchemaDirection = 'input' | 'output';
|
|
16
|
+
/**
|
|
17
|
+
* Convert a {@link DefinitionSchema} to a JSON Schema fragment. Dispatch
|
|
18
|
+
* order:
|
|
19
|
+
*
|
|
20
|
+
* 1. **Built-in vendor adapters first** — Zod (`vendor === 'zod'`) and Valibot
|
|
21
|
+
* (`vendor === 'valibot'`). This wins even when the schema also exposes a
|
|
22
|
+
* `~standard.jsonSchema` converter, because libraries like Zod 4 ship a
|
|
23
|
+
* structural converter that does not honor the project's
|
|
24
|
+
* `unrepresentable: 'any'` option; deferring to the vendor adapter keeps
|
|
25
|
+
* generated artifacts stable.
|
|
26
|
+
* 2. **Structural `~standard.jsonSchema.input` / `.output`** — used for
|
|
27
|
+
* custom or third-party schemas without a built-in adapter.
|
|
28
|
+
* 3. **Otherwise throws** — no built-in adapter and no structural converter.
|
|
29
|
+
*
|
|
30
|
+
* @example
|
|
31
|
+
* ```ts
|
|
32
|
+
* import { definitionSchemaToJsonSchema } from '@lostgradient/weft';
|
|
33
|
+
* import { z } from 'zod';
|
|
34
|
+
*
|
|
35
|
+
* const schema = z.object({ email: z.string() });
|
|
36
|
+
* const jsonSchema = definitionSchemaToJsonSchema(schema);
|
|
37
|
+
* void jsonSchema;
|
|
38
|
+
* ```
|
|
39
|
+
*/
|
|
40
|
+
export declare function definitionSchemaToJsonSchema(schema: DefinitionSchema, direction?: DefinitionSchemaDirection): Record<string, unknown>;
|
|
41
|
+
export declare function loadValibotConverter(requireModule?: (specifier: string) => unknown): (schema: unknown, options?: unknown) => unknown;
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { createRequire } from "node:module";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
let cachedValibotConverter;
|
|
4
|
+
export function definitionSchemaToJsonSchema(schema, direction = "input") {
|
|
5
|
+
const standard = schema["~standard"], vendor = standard.vendor;
|
|
6
|
+
if (vendor === "zod")
|
|
7
|
+
return convertZod(schema);
|
|
8
|
+
if (vendor === "valibot")
|
|
9
|
+
return convertValibot(schema);
|
|
10
|
+
const structuralConverter = standard.jsonSchema;
|
|
11
|
+
if (isStructuralConverter(structuralConverter)) {
|
|
12
|
+
const fn = structuralConverter[direction];
|
|
13
|
+
if (typeof fn === "function")
|
|
14
|
+
return stripDialect(requirePlainObject(fn({ target: defaultTarget }), `${vendor} structural converter`));
|
|
15
|
+
throw Error(`definitionSchemaToJsonSchema: schema "${vendor}" provides \`~standard.jsonSchema\` but no \`${direction}\` converter. Attach both \`input\` and \`output\` converters or convert in only one direction.`);
|
|
16
|
+
}
|
|
17
|
+
throw Error(`definitionSchemaToJsonSchema: no built-in adapter for vendor "${vendor}". Attach a \`~standard.jsonSchema\` converter to the schema, or use Zod or Valibot.`);
|
|
18
|
+
}
|
|
19
|
+
function isStructuralConverter(value) {
|
|
20
|
+
return value !== null && typeof value === "object";
|
|
21
|
+
}
|
|
22
|
+
const defaultTarget = "draft-2020-12";
|
|
23
|
+
function convertZod(schema) {
|
|
24
|
+
const result = z.toJSONSchema(schema, { unrepresentable: "any" });
|
|
25
|
+
return stripDialect(requirePlainObject(result, "zod"));
|
|
26
|
+
}
|
|
27
|
+
function convertValibot(schema) {
|
|
28
|
+
const result = loadValibotConverter()(schema);
|
|
29
|
+
return stripDialect(requirePlainObject(result, "valibot"));
|
|
30
|
+
}
|
|
31
|
+
export function loadValibotConverter(requireModule) {
|
|
32
|
+
const shouldUseCache = requireModule === void 0, resolver = requireModule ?? createRequire(import.meta.url);
|
|
33
|
+
if (shouldUseCache && cachedValibotConverter !== void 0)
|
|
34
|
+
return cachedValibotConverter;
|
|
35
|
+
let valibotModule;
|
|
36
|
+
try {
|
|
37
|
+
valibotModule = resolver("@valibot/to-json-schema");
|
|
38
|
+
} catch (error) {
|
|
39
|
+
throw Error(`definitionSchemaToJsonSchema: \`@valibot/to-json-schema\` is not installed. Install it to convert Valibot schemas to JSON Schema, or attach a \`~standard.jsonSchema\` converter to your schema. Resolver error: ${String(error)}.`, { cause: error });
|
|
40
|
+
}
|
|
41
|
+
if (typeof valibotModule.toJsonSchema !== "function")
|
|
42
|
+
throw Error("definitionSchemaToJsonSchema: the installed `@valibot/to-json-schema` does not export `toJsonSchema`.");
|
|
43
|
+
return shouldUseCache ? cachedValibotConverter = valibotModule.toJsonSchema : valibotModule.toJsonSchema;
|
|
44
|
+
}
|
|
45
|
+
function stripDialect(object) {
|
|
46
|
+
if (!("$schema" in object))
|
|
47
|
+
return object;
|
|
48
|
+
const result = { ...object };
|
|
49
|
+
delete result.$schema;
|
|
50
|
+
return result;
|
|
51
|
+
}
|
|
52
|
+
function requirePlainObject(value, vendor) {
|
|
53
|
+
if (value !== null && typeof value === "object" && !Array.isArray(value))
|
|
54
|
+
return value;
|
|
55
|
+
throw Error(`definitionSchemaToJsonSchema: ${vendor} converter returned a non-object (${typeof value}). Expected a JSON Schema object.`);
|
|
56
|
+
}
|
|
@@ -0,0 +1,341 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Metadata stored under `~standard` by Standard Schema-compatible libraries.
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* ```ts
|
|
6
|
+
* import type { StandardTypedV1Properties } from '@lostgradient/weft/json-schema';
|
|
7
|
+
*
|
|
8
|
+
* const properties: StandardTypedV1Properties = { version: 1, vendor: 'example' };
|
|
9
|
+
* void properties;
|
|
10
|
+
* ```
|
|
11
|
+
*/
|
|
12
|
+
export interface StandardTypedV1Properties<Input = unknown, Output = Input> {
|
|
13
|
+
readonly version: 1;
|
|
14
|
+
readonly vendor: string;
|
|
15
|
+
readonly types?: StandardTypedV1Types<Input, Output> | undefined;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Compile-time input and output markers used by Standard Schema.
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* ```ts
|
|
22
|
+
* import type { StandardTypedV1Types } from '@lostgradient/weft/json-schema';
|
|
23
|
+
*
|
|
24
|
+
* const types: StandardTypedV1Types<string, number> = {
|
|
25
|
+
* input: '',
|
|
26
|
+
* output: 0,
|
|
27
|
+
* };
|
|
28
|
+
* void types;
|
|
29
|
+
* ```
|
|
30
|
+
*/
|
|
31
|
+
export interface StandardTypedV1Types<Input = unknown, Output = Input> {
|
|
32
|
+
readonly input: Input;
|
|
33
|
+
readonly output: Output;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Standard Schema v1 validator metadata stored under `~standard`.
|
|
37
|
+
*
|
|
38
|
+
* @example
|
|
39
|
+
* ```ts
|
|
40
|
+
* import type { StandardSchemaV1Properties } from '@lostgradient/weft/json-schema';
|
|
41
|
+
*
|
|
42
|
+
* const properties: StandardSchemaV1Properties<unknown, string> = {
|
|
43
|
+
* version: 1,
|
|
44
|
+
* vendor: 'example',
|
|
45
|
+
* validate: (value) =>
|
|
46
|
+
* typeof value === 'string' ? { value } : { issues: [{ message: 'Expected a string.' }] },
|
|
47
|
+
* };
|
|
48
|
+
* void properties;
|
|
49
|
+
* ```
|
|
50
|
+
*/
|
|
51
|
+
export interface StandardSchemaV1Properties<Input = unknown, Output = Input> extends StandardTypedV1Properties<Input, Output> {
|
|
52
|
+
readonly validate: (value: unknown, options?: StandardSchemaV1Options) => StandardSchemaV1Result<Output> | Promise<StandardSchemaV1Result<Output>>;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Result returned by a Standard Schema v1 validator.
|
|
56
|
+
*
|
|
57
|
+
* @example
|
|
58
|
+
* ```ts
|
|
59
|
+
* import type { StandardSchemaV1Result } from '@lostgradient/weft/json-schema';
|
|
60
|
+
*
|
|
61
|
+
* const result: StandardSchemaV1Result<string> = { value: 'ok' };
|
|
62
|
+
* void result;
|
|
63
|
+
* ```
|
|
64
|
+
*/
|
|
65
|
+
export type StandardSchemaV1Result<Output> = StandardSchemaV1SuccessResult<Output> | StandardSchemaV1FailureResult;
|
|
66
|
+
/**
|
|
67
|
+
* Successful Standard Schema v1 validation result.
|
|
68
|
+
*
|
|
69
|
+
* @example
|
|
70
|
+
* ```ts
|
|
71
|
+
* import type { StandardSchemaV1SuccessResult } from '@lostgradient/weft/json-schema';
|
|
72
|
+
*
|
|
73
|
+
* const result: StandardSchemaV1SuccessResult<string> = { value: 'ok' };
|
|
74
|
+
* void result;
|
|
75
|
+
* ```
|
|
76
|
+
*/
|
|
77
|
+
export interface StandardSchemaV1SuccessResult<Output> {
|
|
78
|
+
readonly value: Output;
|
|
79
|
+
readonly issues?: undefined;
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Failed Standard Schema v1 validation result.
|
|
83
|
+
*
|
|
84
|
+
* @example
|
|
85
|
+
* ```ts
|
|
86
|
+
* import type { StandardSchemaV1FailureResult } from '@lostgradient/weft/json-schema';
|
|
87
|
+
*
|
|
88
|
+
* const result: StandardSchemaV1FailureResult = {
|
|
89
|
+
* issues: [{ message: 'Expected a string.' }],
|
|
90
|
+
* };
|
|
91
|
+
* void result;
|
|
92
|
+
* ```
|
|
93
|
+
*/
|
|
94
|
+
export interface StandardSchemaV1FailureResult {
|
|
95
|
+
readonly issues: ReadonlyArray<StandardSchemaV1Issue>;
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Single validation issue reported by a Standard Schema v1 validator.
|
|
99
|
+
*
|
|
100
|
+
* @example
|
|
101
|
+
* ```ts
|
|
102
|
+
* import type { StandardSchemaV1Issue } from '@lostgradient/weft/json-schema';
|
|
103
|
+
*
|
|
104
|
+
* const issue: StandardSchemaV1Issue = { message: 'Expected a string.' };
|
|
105
|
+
* void issue;
|
|
106
|
+
* ```
|
|
107
|
+
*/
|
|
108
|
+
export interface StandardSchemaV1Issue {
|
|
109
|
+
readonly message: string;
|
|
110
|
+
readonly path?: ReadonlyArray<PropertyKey | StandardSchemaV1PathSegment> | undefined;
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Structured path segment in a Standard Schema v1 issue path.
|
|
114
|
+
*
|
|
115
|
+
* @example
|
|
116
|
+
* ```ts
|
|
117
|
+
* import type { StandardSchemaV1PathSegment } from '@lostgradient/weft/json-schema';
|
|
118
|
+
*
|
|
119
|
+
* const segment: StandardSchemaV1PathSegment = { key: 'email' };
|
|
120
|
+
* void segment;
|
|
121
|
+
* ```
|
|
122
|
+
*/
|
|
123
|
+
export interface StandardSchemaV1PathSegment {
|
|
124
|
+
readonly key: PropertyKey;
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Options passed to a Standard Schema v1 validator.
|
|
128
|
+
*
|
|
129
|
+
* @example
|
|
130
|
+
* ```ts
|
|
131
|
+
* import type { StandardSchemaV1Options } from '@lostgradient/weft/json-schema';
|
|
132
|
+
*
|
|
133
|
+
* const options: StandardSchemaV1Options = { libraryOptions: { abortEarly: true } };
|
|
134
|
+
* void options;
|
|
135
|
+
* ```
|
|
136
|
+
*/
|
|
137
|
+
export interface StandardSchemaV1Options {
|
|
138
|
+
readonly libraryOptions?: Record<string, unknown> | undefined;
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Standard JSON Schema v1 converter metadata stored under `~standard`.
|
|
142
|
+
*
|
|
143
|
+
* @example
|
|
144
|
+
* ```ts
|
|
145
|
+
* import type { StandardJSONSchemaV1Properties } from '@lostgradient/weft/json-schema';
|
|
146
|
+
*
|
|
147
|
+
* const properties: StandardJSONSchemaV1Properties = {
|
|
148
|
+
* version: 1,
|
|
149
|
+
* vendor: 'example',
|
|
150
|
+
* jsonSchema: {
|
|
151
|
+
* input: () => ({ type: 'object' }),
|
|
152
|
+
* output: () => ({ type: 'object' }),
|
|
153
|
+
* },
|
|
154
|
+
* };
|
|
155
|
+
* void properties;
|
|
156
|
+
* ```
|
|
157
|
+
*/
|
|
158
|
+
export interface StandardJSONSchemaV1Properties<Input = unknown, Output = Input> extends StandardTypedV1Properties<Input, Output> {
|
|
159
|
+
readonly jsonSchema: StandardJSONSchemaV1Converter;
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* Input and output JSON Schema converter functions.
|
|
163
|
+
*
|
|
164
|
+
* @example
|
|
165
|
+
* ```ts
|
|
166
|
+
* import type { StandardJSONSchemaV1Converter } from '@lostgradient/weft/json-schema';
|
|
167
|
+
*
|
|
168
|
+
* const converter: StandardJSONSchemaV1Converter = {
|
|
169
|
+
* input: () => ({ type: 'object' }),
|
|
170
|
+
* output: () => ({ type: 'object' }),
|
|
171
|
+
* };
|
|
172
|
+
* void converter;
|
|
173
|
+
* ```
|
|
174
|
+
*/
|
|
175
|
+
export interface StandardJSONSchemaV1Converter {
|
|
176
|
+
readonly input: (options: StandardJSONSchemaV1Options) => Record<string, unknown>;
|
|
177
|
+
readonly output: (options: StandardJSONSchemaV1Options) => Record<string, unknown>;
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* JSON Schema target dialect requested from a Standard JSON Schema converter.
|
|
181
|
+
*
|
|
182
|
+
* @example
|
|
183
|
+
* ```ts
|
|
184
|
+
* import type { StandardJSONSchemaV1Target } from '@lostgradient/weft/json-schema';
|
|
185
|
+
*
|
|
186
|
+
* const target: StandardJSONSchemaV1Target = 'draft-2020-12';
|
|
187
|
+
* void target;
|
|
188
|
+
* ```
|
|
189
|
+
*/
|
|
190
|
+
export type StandardJSONSchemaV1Target = 'draft-2020-12' | 'draft-07' | 'openapi-3.0' | ({} & string);
|
|
191
|
+
/**
|
|
192
|
+
* Options passed to Standard JSON Schema converter functions.
|
|
193
|
+
*
|
|
194
|
+
* @example
|
|
195
|
+
* ```ts
|
|
196
|
+
* import type { StandardJSONSchemaV1Options } from '@lostgradient/weft/json-schema';
|
|
197
|
+
*
|
|
198
|
+
* const options: StandardJSONSchemaV1Options = { target: 'draft-2020-12' };
|
|
199
|
+
* void options;
|
|
200
|
+
* ```
|
|
201
|
+
*/
|
|
202
|
+
export interface StandardJSONSchemaV1Options {
|
|
203
|
+
readonly target: StandardJSONSchemaV1Target;
|
|
204
|
+
readonly libraryOptions?: Record<string, unknown> | undefined;
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* Base type metadata shared by the Standard Schema family.
|
|
208
|
+
*
|
|
209
|
+
* Weft copies the small structural interfaces it consumes instead of taking a
|
|
210
|
+
* runtime dependency on [`@standard-schema/spec`](https://www.npmjs.com/package/@standard-schema/spec).
|
|
211
|
+
* The runtime contract is the `~standard` property; libraries such as
|
|
212
|
+
* [Zod](https://zod.dev/), [Valibot](https://valibot.dev/), and
|
|
213
|
+
* [ArkType](https://arktype.io/) can satisfy it structurally.
|
|
214
|
+
*
|
|
215
|
+
* @example
|
|
216
|
+
* ```ts
|
|
217
|
+
* import type { StandardTypedV1 } from '@lostgradient/weft/json-schema';
|
|
218
|
+
*
|
|
219
|
+
* const typedMetadata = {
|
|
220
|
+
* '~standard': { version: 1, vendor: 'example' },
|
|
221
|
+
* } satisfies StandardTypedV1<unknown, unknown>;
|
|
222
|
+
*
|
|
223
|
+
* void typedMetadata;
|
|
224
|
+
* ```
|
|
225
|
+
*/
|
|
226
|
+
export interface StandardTypedV1<Input = unknown, Output = Input> {
|
|
227
|
+
readonly '~standard': StandardTypedV1Properties<Input, Output>;
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* Standard Schema v1 validation surface.
|
|
231
|
+
*
|
|
232
|
+
* @example
|
|
233
|
+
* ```ts
|
|
234
|
+
* import type { StandardSchemaV1 } from '@lostgradient/weft/json-schema';
|
|
235
|
+
*
|
|
236
|
+
* const stringSchema = {
|
|
237
|
+
* '~standard': {
|
|
238
|
+
* version: 1,
|
|
239
|
+
* vendor: 'example',
|
|
240
|
+
* validate(value: unknown) {
|
|
241
|
+
* return typeof value === 'string'
|
|
242
|
+
* ? { value }
|
|
243
|
+
* : { issues: [{ message: 'Expected a string.' }] };
|
|
244
|
+
* },
|
|
245
|
+
* },
|
|
246
|
+
* } satisfies StandardSchemaV1<unknown, string>;
|
|
247
|
+
*
|
|
248
|
+
* void stringSchema;
|
|
249
|
+
* ```
|
|
250
|
+
*/
|
|
251
|
+
export interface StandardSchemaV1<Input = unknown, Output = Input> {
|
|
252
|
+
readonly '~standard': StandardSchemaV1Properties<Input, Output>;
|
|
253
|
+
}
|
|
254
|
+
/**
|
|
255
|
+
* Standard JSON Schema v1 conversion surface.
|
|
256
|
+
*
|
|
257
|
+
* @example
|
|
258
|
+
* ```ts
|
|
259
|
+
* import type { StandardJSONSchemaV1 } from '@lostgradient/weft/json-schema';
|
|
260
|
+
*
|
|
261
|
+
* const jsonSchemaMetadata = {
|
|
262
|
+
* '~standard': {
|
|
263
|
+
* version: 1,
|
|
264
|
+
* vendor: 'example',
|
|
265
|
+
* jsonSchema: {
|
|
266
|
+
* input: () => ({ type: 'object' }),
|
|
267
|
+
* output: () => ({ type: 'object' }),
|
|
268
|
+
* },
|
|
269
|
+
* },
|
|
270
|
+
* } satisfies StandardJSONSchemaV1<Record<string, unknown>>;
|
|
271
|
+
*
|
|
272
|
+
* void jsonSchemaMetadata;
|
|
273
|
+
* ```
|
|
274
|
+
*/
|
|
275
|
+
export interface StandardJSONSchemaV1<Input = unknown, Output = Input> {
|
|
276
|
+
readonly '~standard': StandardJSONSchemaV1Properties<Input, Output>;
|
|
277
|
+
}
|
|
278
|
+
/**
|
|
279
|
+
* Schema metadata accepted by workflow and activity definitions.
|
|
280
|
+
*
|
|
281
|
+
* Validation and JSON Schema conversion are separate capabilities. A schema may
|
|
282
|
+
* provide validation only, JSON Schema conversion only, or both. Core workflow
|
|
283
|
+
* and activity registration validates this metadata shape for introspection;
|
|
284
|
+
* adapters must opt in explicitly before using it for runtime input or output
|
|
285
|
+
* validation.
|
|
286
|
+
*
|
|
287
|
+
* @example
|
|
288
|
+
* ```ts
|
|
289
|
+
* import type { DefinitionSchema } from '@lostgradient/weft/json-schema';
|
|
290
|
+
*
|
|
291
|
+
* function acceptsDefinitionSchema(schema: DefinitionSchema): DefinitionSchema {
|
|
292
|
+
* return schema;
|
|
293
|
+
* }
|
|
294
|
+
*
|
|
295
|
+
* void acceptsDefinitionSchema;
|
|
296
|
+
* ```
|
|
297
|
+
*/
|
|
298
|
+
export type DefinitionSchema<Input = unknown, Output = Input> = StandardSchemaV1<Input, Output> | StandardJSONSchemaV1<Input, Output>;
|
|
299
|
+
/**
|
|
300
|
+
* Extract the schema's *input* type — what the validator accepts before any
|
|
301
|
+
* transform runs. For a schema like `z.string().transform(s => s.length)`,
|
|
302
|
+
* `InferSchemaInput` is `string`. Helpers in the codebase use this when they
|
|
303
|
+
* want the wire-side / pre-validation type; for handler-side / post-validation
|
|
304
|
+
* payloads, see {@link InferSchemaOutput}. When a schema omits
|
|
305
|
+
* `~standard.types`, inference usually widens to `unknown`, so typed markers
|
|
306
|
+
* are required to preserve a concrete input type.
|
|
307
|
+
*
|
|
308
|
+
* @example
|
|
309
|
+
* ```ts
|
|
310
|
+
* import type { InferSchemaInput } from '@lostgradient/weft/json-schema';
|
|
311
|
+
* import { z } from 'zod';
|
|
312
|
+
*
|
|
313
|
+
* const schema = z.string().transform((s) => s.length);
|
|
314
|
+
* type Input = InferSchemaInput<typeof schema>; // string
|
|
315
|
+
* const value: Input = 'hello';
|
|
316
|
+
* void value;
|
|
317
|
+
* ```
|
|
318
|
+
*/
|
|
319
|
+
export type InferSchemaInput<TSchema> = TSchema extends StandardTypedV1<infer Input, unknown> ? Input : never;
|
|
320
|
+
/**
|
|
321
|
+
* Extract the schema's *output* type — what the validator produces after any
|
|
322
|
+
* transform runs. For a schema like `z.string().transform(s => s.length)`,
|
|
323
|
+
* `InferSchemaOutput` is `number`. The definition helpers use this for
|
|
324
|
+
* handler-side payload types: handlers see the validated, parsed value. When a
|
|
325
|
+
* schema omits `~standard.types`, inference usually widens to `unknown`, so
|
|
326
|
+
* typed markers are required to preserve a concrete output type.
|
|
327
|
+
*
|
|
328
|
+
* @example
|
|
329
|
+
* ```ts
|
|
330
|
+
* import type { InferSchemaOutput } from '@lostgradient/weft/json-schema';
|
|
331
|
+
* import { z } from 'zod';
|
|
332
|
+
*
|
|
333
|
+
* const schema = z.string().transform((s) => s.length);
|
|
334
|
+
* type Output = InferSchemaOutput<typeof schema>; // number
|
|
335
|
+
* const value: Output = 5;
|
|
336
|
+
* void value;
|
|
337
|
+
* ```
|
|
338
|
+
*/
|
|
339
|
+
export type InferSchemaOutput<TSchema> = TSchema extends StandardTypedV1<unknown, infer Output> ? Output : never;
|
|
340
|
+
export declare function isDefinitionSchema(value: unknown): value is DefinitionSchema;
|
|
341
|
+
export declare function validateDefinitionSchemaMetadata(value: unknown, fieldName: string): DefinitionSchema;
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
export function isDefinitionSchema(value) {
|
|
2
|
+
const standardRecord = getStandardMetadataRecord(value);
|
|
3
|
+
if (standardRecord === void 0)
|
|
4
|
+
return !1;
|
|
5
|
+
if (typeof standardRecord.validate === "function")
|
|
6
|
+
return !0;
|
|
7
|
+
return isStandardJsonSchemaConverter(standardRecord.jsonSchema);
|
|
8
|
+
}
|
|
9
|
+
export function validateDefinitionSchemaMetadata(value, fieldName) {
|
|
10
|
+
if (isDefinitionSchema(value))
|
|
11
|
+
return value;
|
|
12
|
+
throw TypeError(`${fieldName} must be Standard Schema-compatible definition metadata. Pass a Zod, Valibot, ArkType (or any Standard Schema v1) validator, or attach a \`~standard.jsonSchema\` converter directly. Received: ${describeReceivedValue(value)}.`);
|
|
13
|
+
}
|
|
14
|
+
function describeReceivedValue(value) {
|
|
15
|
+
if (value === null)
|
|
16
|
+
return "null";
|
|
17
|
+
if (value === void 0)
|
|
18
|
+
return "undefined";
|
|
19
|
+
if (Array.isArray(value))
|
|
20
|
+
return "array";
|
|
21
|
+
if (typeof value !== "object")
|
|
22
|
+
return typeof value;
|
|
23
|
+
const keys = Object.keys(value);
|
|
24
|
+
if (keys.length === 0)
|
|
25
|
+
return "an empty object";
|
|
26
|
+
return `an object with keys [${keys.slice(0, 5).join(", ")}${keys.length > 5 ? ", \u2026" : ""}]`;
|
|
27
|
+
}
|
|
28
|
+
function getStandardMetadataRecord(value) {
|
|
29
|
+
if (value === null || typeof value !== "object")
|
|
30
|
+
return;
|
|
31
|
+
const standard = value["~standard"];
|
|
32
|
+
if (standard === null || typeof standard !== "object")
|
|
33
|
+
return;
|
|
34
|
+
const standardRecord = standard;
|
|
35
|
+
if (standardRecord.version !== 1)
|
|
36
|
+
return;
|
|
37
|
+
if (typeof standardRecord.vendor !== "string" || standardRecord.vendor.length === 0)
|
|
38
|
+
return;
|
|
39
|
+
return standardRecord;
|
|
40
|
+
}
|
|
41
|
+
function isStandardJsonSchemaConverter(jsonSchema) {
|
|
42
|
+
if (jsonSchema === null || typeof jsonSchema !== "object")
|
|
43
|
+
return !1;
|
|
44
|
+
return typeof jsonSchema.input === "function" && typeof jsonSchema.output === "function";
|
|
45
|
+
}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Operator-configured upper bound on workflow history. Activation rehydrates a
|
|
3
|
+
* workflow by replaying its event log, so cost is O(history); an unbounded log
|
|
4
|
+
* (e.g. a runaway infinite-yield loop) can stall the shared single-process
|
|
5
|
+
* engine for every workflow. `maxEvents` is a safety backstop: once a
|
|
6
|
+
* workflow's durable event-log record count would exceed it, the engine forces
|
|
7
|
+
* the workflow to a terminal `timed-out` state. Pass via
|
|
8
|
+
* {@link EngineOptions.history}.
|
|
9
|
+
*
|
|
10
|
+
* Thresholds are operator config only — there are no baked-in defaults. Omit
|
|
11
|
+
* the policy (or `maxEvents`) to disable the circuit breaker.
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* ```ts
|
|
15
|
+
* import { Engine, type HistoryPolicy } from '@lostgradient/weft';
|
|
16
|
+
*
|
|
17
|
+
* const history: HistoryPolicy = { maxEvents: 100_000 };
|
|
18
|
+
* const engine = new Engine({ history });
|
|
19
|
+
* void engine;
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
export interface HistoryPolicy {
|
|
23
|
+
/**
|
|
24
|
+
* Maximum number of event-log records a workflow may accumulate. Exactly
|
|
25
|
+
* `maxEvents` records are allowed; the record that would push the count to
|
|
26
|
+
* `maxEvents + 1` trips the circuit breaker and the workflow is forced to
|
|
27
|
+
* `timed-out`. Must be a positive safe integer. `0`, omitted, or `undefined`
|
|
28
|
+
* disables enforcement.
|
|
29
|
+
*
|
|
30
|
+
* `maxEvents` counts the **lifetime** event-log sequence (`head.sequence + 1`),
|
|
31
|
+
* which `retentionWindow` compaction never resets — compaction reclaims storage
|
|
32
|
+
* but does not make a workflow semantically younger, so the circuit breaker
|
|
33
|
+
* still fires on total lifetime events.
|
|
34
|
+
*/
|
|
35
|
+
maxEvents?: number;
|
|
36
|
+
/**
|
|
37
|
+
* Event-log compaction window: keep **at most** the `retentionWindow` most
|
|
38
|
+
* recent event-log records (measured against the head sequence) and truncate
|
|
39
|
+
* older records behind a confirmed checkpoint to reclaim storage. The canonical
|
|
40
|
+
* checkpoint already holds the compacted state, so truncation never affects
|
|
41
|
+
* resume. `retentionWindow: 1` keeps only the head record. Must be a positive
|
|
42
|
+
* safe integer. `0`, omitted, or `undefined` disables compaction.
|
|
43
|
+
*
|
|
44
|
+
* "At most", not "exactly": the compaction watermark only ever advances forward,
|
|
45
|
+
* so raising `retentionWindow` after compaction has run does not restore
|
|
46
|
+
* already-truncated history. Distinct from {@link maxEvents}: that is a
|
|
47
|
+
* circuit-breaker backstop on lifetime count; this is storage reclamation. They
|
|
48
|
+
* share validation mechanics only.
|
|
49
|
+
*/
|
|
50
|
+
retentionWindow?: number;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* History policy after validation and normalisation. `maxEvents` is either a
|
|
54
|
+
* positive safe integer (enforcement active) or `null` (disabled). Used
|
|
55
|
+
* internally by the engine; callers configure via {@link HistoryPolicy}.
|
|
56
|
+
*/
|
|
57
|
+
export interface NormalizedHistoryPolicy {
|
|
58
|
+
maxEvents: number | null;
|
|
59
|
+
retentionWindow: number | null;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Terminal reason recorded on a workflow forced to `timed-out` by the history
|
|
63
|
+
* circuit breaker. Distinguishes circuit-breaker termination from an ordinary
|
|
64
|
+
* deadline timeout (which carries no reason). A single-member union today;
|
|
65
|
+
* widen as additional distinct termination reasons are introduced.
|
|
66
|
+
*
|
|
67
|
+
* @example
|
|
68
|
+
* ```ts
|
|
69
|
+
* import { HISTORY_CIRCUIT_BREAKER_REASON, type TerminationReason } from '@lostgradient/weft';
|
|
70
|
+
*
|
|
71
|
+
* const reason: TerminationReason = HISTORY_CIRCUIT_BREAKER_REASON;
|
|
72
|
+
* void reason;
|
|
73
|
+
* ```
|
|
74
|
+
*/
|
|
75
|
+
export type TerminationReason = typeof HISTORY_CIRCUIT_BREAKER_REASON;
|
|
76
|
+
/**
|
|
77
|
+
* Value written to `WorkflowState.terminationReason` and
|
|
78
|
+
* `WorkflowTimedOutEvent.reason` when the history circuit breaker fires. Compare
|
|
79
|
+
* against it to tell circuit-breaker termination apart from a deadline timeout.
|
|
80
|
+
*
|
|
81
|
+
* @example
|
|
82
|
+
* ```ts
|
|
83
|
+
* import { Engine, HISTORY_CIRCUIT_BREAKER_REASON } from '@lostgradient/weft';
|
|
84
|
+
*
|
|
85
|
+
* const engine = new Engine({ history: { maxEvents: 100_000 } });
|
|
86
|
+
* const state = await engine.get('some-workflow-id');
|
|
87
|
+
* if (state?.terminationReason === HISTORY_CIRCUIT_BREAKER_REASON) {
|
|
88
|
+
* console.log('terminated by the history circuit breaker');
|
|
89
|
+
* }
|
|
90
|
+
* ```
|
|
91
|
+
*/
|
|
92
|
+
export declare const HISTORY_CIRCUIT_BREAKER_REASON = "history-circuit-breaker";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export const HISTORY_CIRCUIT_BREAKER_REASON = "history-circuit-breaker";
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Opaque string identifier for a workflow instance. Generated automatically
|
|
3
|
+
* by the engine at start time, or supplied via {@link StartOptions.id}. Pass
|
|
4
|
+
* to {@link Engine.getHandle} or {@link Engine.get} to look up a running or
|
|
5
|
+
* completed workflow.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```ts
|
|
9
|
+
* import { workflow, Engine, type WorkflowId } from '@lostgradient/weft';
|
|
10
|
+
*
|
|
11
|
+
* const engine = new Engine();
|
|
12
|
+
* engine.register(workflow({ name: 'ping' }).execute(async function* () { return 'pong'; }));
|
|
13
|
+
*
|
|
14
|
+
* const handle = await engine.start('ping', null);
|
|
15
|
+
* const id: WorkflowId = handle.id;
|
|
16
|
+
* const state = await engine.get(id);
|
|
17
|
+
* console.log(state?.status); // 'completed'
|
|
18
|
+
* ```
|
|
19
|
+
*/
|
|
20
|
+
export type WorkflowId = string;
|
|
21
|
+
export type OperationId = string;
|
|
22
|
+
/**
|
|
23
|
+
* Classifies why a workflow failed. Populated automatically by the engine on
|
|
24
|
+
* failure so operators can query e.g. "all timeout failures in the last hour"
|
|
25
|
+
* via `engine.list({ attributes: [{ key: 'failureCategory', value: 'timeout' }] })`.
|
|
26
|
+
*
|
|
27
|
+
* - `'application'` — workflow or activity application code threw
|
|
28
|
+
* - `'timeout'` — execution exceeded a configured deadline
|
|
29
|
+
* - `'cancellation'` — cancellation or abort ended execution
|
|
30
|
+
* - `'resource'` — quota, memory, disk, or capacity limit was exceeded
|
|
31
|
+
* - `'system'` — engine, storage, or worker infrastructure fault
|
|
32
|
+
*
|
|
33
|
+
* @example
|
|
34
|
+
* ```ts
|
|
35
|
+
* import { Engine, type FailureCategory } from '@lostgradient/weft';
|
|
36
|
+
*
|
|
37
|
+
* const engine = new Engine();
|
|
38
|
+
* // Query all workflows that failed due to a timeout:
|
|
39
|
+
* const results = await engine.list({
|
|
40
|
+
* status: 'failed',
|
|
41
|
+
* attributes: [{ key: 'failureCategory', value: 'timeout' as FailureCategory }],
|
|
42
|
+
* });
|
|
43
|
+
* void results;
|
|
44
|
+
* ```
|
|
45
|
+
*/
|
|
46
|
+
export type FailureCategory = 'application' | 'timeout' | 'cancellation' | 'resource' | 'system';
|
|
47
|
+
/**
|
|
48
|
+
* Lifecycle states a workflow moves through, from registration to terminal
|
|
49
|
+
* state.
|
|
50
|
+
*
|
|
51
|
+
* Read this off `(await handle.state()).status` to learn whether a workflow
|
|
52
|
+
* is still running, finished cleanly, or failed. Pass it to `engine.list()`
|
|
53
|
+
* filters to scope queries by status.
|
|
54
|
+
*/
|
|
55
|
+
export type WorkflowStatus = 'pending' | 'running' | 'completed' | 'failed' | 'cancelled' | 'timed-out';
|
|
File without changes
|