@temelj/workflow 0.0.0-alpha.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/LICENSE +21 -0
- package/README.md +38 -0
- package/dist/attributes.d.mts +15 -0
- package/dist/attributes.mjs +30 -0
- package/dist/client/create.d.mts +31 -0
- package/dist/client/create.mjs +67 -0
- package/dist/client/facades.d.mts +21 -0
- package/dist/client/facades.mjs +142 -0
- package/dist/client/mod.d.mts +2 -0
- package/dist/client/mod.mjs +2 -0
- package/dist/client/run-handle.d.mts +66 -0
- package/dist/client/run-handle.mjs +156 -0
- package/dist/client/worker-options.d.mts +17 -0
- package/dist/client/worker-options.mjs +25 -0
- package/dist/collection.d.mts +15 -0
- package/dist/collection.mjs +33 -0
- package/dist/compiled-function.d.mts +27 -0
- package/dist/compiled-function.mjs +54 -0
- package/dist/definition.d.mts +37 -0
- package/dist/definition.mjs +83 -0
- package/dist/engine/child-workflow.d.mts +10 -0
- package/dist/engine/child-workflow.mjs +333 -0
- package/dist/engine/command-identity.d.mts +9 -0
- package/dist/engine/command-identity.mjs +14 -0
- package/dist/engine/create.d.mts +106 -0
- package/dist/engine/create.mjs +402 -0
- package/dist/engine/deterministic.d.mts +12 -0
- package/dist/engine/deterministic.mjs +102 -0
- package/dist/engine/durable-command.d.mts +10 -0
- package/dist/engine/durable-command.mjs +17 -0
- package/dist/engine/execution-api.d.mts +29 -0
- package/dist/engine/execution-api.mjs +33 -0
- package/dist/engine/execution-service.d.mts +41 -0
- package/dist/engine/execution-service.mjs +288 -0
- package/dist/engine/hooks.d.mts +56 -0
- package/dist/engine/hooks.mjs +237 -0
- package/dist/engine/inspection-api.d.mts +34 -0
- package/dist/engine/inspection-api.mjs +77 -0
- package/dist/engine/inspection.d.mts +18 -0
- package/dist/engine/inspection.mjs +149 -0
- package/dist/engine/lifecycle.d.mts +18 -0
- package/dist/engine/lifecycle.mjs +38 -0
- package/dist/engine/lock-replay.d.mts +30 -0
- package/dist/engine/lock-replay.mjs +38 -0
- package/dist/engine/lock.d.mts +21 -0
- package/dist/engine/lock.mjs +197 -0
- package/dist/engine/message.d.mts +47 -0
- package/dist/engine/message.mjs +357 -0
- package/dist/engine/mod.d.mts +4 -0
- package/dist/engine/mod.mjs +2 -0
- package/dist/engine/observation.d.mts +35 -0
- package/dist/engine/observation.mjs +201 -0
- package/dist/engine/recovery.d.mts +26 -0
- package/dist/engine/recovery.mjs +92 -0
- package/dist/engine/replay.d.mts +41 -0
- package/dist/engine/replay.mjs +122 -0
- package/dist/engine/retry-policy.d.mts +4 -0
- package/dist/engine/retry-policy.mjs +4 -0
- package/dist/engine/retry.d.mts +23 -0
- package/dist/engine/retry.mjs +75 -0
- package/dist/engine/run-data.d.mts +9 -0
- package/dist/engine/run-data.mjs +74 -0
- package/dist/engine/run-service.d.mts +38 -0
- package/dist/engine/run-service.mjs +133 -0
- package/dist/engine/run-utils.d.mts +16 -0
- package/dist/engine/run-utils.mjs +83 -0
- package/dist/engine/schedule.d.mts +25 -0
- package/dist/engine/schedule.mjs +207 -0
- package/dist/engine/serialization.d.mts +9 -0
- package/dist/engine/serialization.mjs +85 -0
- package/dist/engine/start-api.d.mts +30 -0
- package/dist/engine/start-api.mjs +98 -0
- package/dist/engine/state.d.mts +77 -0
- package/dist/engine/state.mjs +464 -0
- package/dist/engine/step-api.d.mts +9 -0
- package/dist/engine/step-api.mjs +25 -0
- package/dist/engine/stream.d.mts +55 -0
- package/dist/engine/stream.mjs +333 -0
- package/dist/engine/summary/active-events.d.mts +34 -0
- package/dist/engine/summary/active-events.mjs +69 -0
- package/dist/engine/summary/child-workflow-runs.d.mts +24 -0
- package/dist/engine/summary/child-workflow-runs.mjs +138 -0
- package/dist/engine/summary/child-workflow-waits.d.mts +21 -0
- package/dist/engine/summary/child-workflow-waits.mjs +67 -0
- package/dist/engine/summary/recovery-child-workflow-waits.d.mts +11 -0
- package/dist/engine/summary/recovery-child-workflow-waits.mjs +89 -0
- package/dist/engine/summary/recovery-due-runs.d.mts +16 -0
- package/dist/engine/summary/recovery-due-runs.mjs +52 -0
- package/dist/engine/summary/recovery-failed-runs.d.mts +14 -0
- package/dist/engine/summary/recovery-failed-runs.mjs +33 -0
- package/dist/engine/summary/recovery-lease-runs.d.mts +16 -0
- package/dist/engine/summary/recovery-lease-runs.mjs +69 -0
- package/dist/engine/summary/recovery-locks.d.mts +18 -0
- package/dist/engine/summary/recovery-locks.mjs +100 -0
- package/dist/engine/summary/recovery-message-waits.d.mts +11 -0
- package/dist/engine/summary/recovery-message-waits.mjs +74 -0
- package/dist/engine/summary/recovery-retry-runs.d.mts +17 -0
- package/dist/engine/summary/recovery-retry-runs.mjs +65 -0
- package/dist/engine/summary/recovery-run-timestamps.d.mts +13 -0
- package/dist/engine/summary/recovery-run-timestamps.mjs +18 -0
- package/dist/engine/summary/recovery-runs.d.mts +23 -0
- package/dist/engine/summary/recovery-runs.mjs +54 -0
- package/dist/engine/summary/recovery-schedules.d.mts +10 -0
- package/dist/engine/summary/recovery-schedules.mjs +46 -0
- package/dist/engine/summary/recovery-sleep-waits.d.mts +10 -0
- package/dist/engine/summary/recovery-sleep-waits.mjs +53 -0
- package/dist/engine/summary/recovery-waits.d.mts +21 -0
- package/dist/engine/summary/recovery-waits.mjs +29 -0
- package/dist/engine/summary/run-availability.d.mts +13 -0
- package/dist/engine/summary/run-availability.mjs +37 -0
- package/dist/engine/summary/run-cleanup.d.mts +14 -0
- package/dist/engine/summary/run-cleanup.mjs +44 -0
- package/dist/engine/summary/run-failure.d.mts +14 -0
- package/dist/engine/summary/run-failure.mjs +62 -0
- package/dist/engine/summary/run-hooks.d.mts +14 -0
- package/dist/engine/summary/run-hooks.mjs +63 -0
- package/dist/engine/summary/run-lease.d.mts +11 -0
- package/dist/engine/summary/run-lease.mjs +64 -0
- package/dist/engine/summary/run-message-waits.d.mts +15 -0
- package/dist/engine/summary/run-message-waits.mjs +62 -0
- package/dist/engine/summary/run-metrics.d.mts +31 -0
- package/dist/engine/summary/run-metrics.mjs +93 -0
- package/dist/engine/summary/run-retry.d.mts +9 -0
- package/dist/engine/summary/run-retry.mjs +69 -0
- package/dist/engine/summary/run-sleeps.d.mts +15 -0
- package/dist/engine/summary/run-sleeps.mjs +61 -0
- package/dist/engine/summary/run-state.d.mts +26 -0
- package/dist/engine/summary/run-state.mjs +48 -0
- package/dist/engine/summary/run-status.d.mts +16 -0
- package/dist/engine/summary/run-status.mjs +35 -0
- package/dist/engine/summary/run-streams.d.mts +14 -0
- package/dist/engine/summary/run-streams.mjs +46 -0
- package/dist/engine/summary/run-transition.d.mts +9 -0
- package/dist/engine/summary/run-transition.mjs +39 -0
- package/dist/engine/summary/run-workflow.d.mts +9 -0
- package/dist/engine/summary/run-workflow.mjs +47 -0
- package/dist/engine/summary/step-attempt-active-child-workflows.d.mts +13 -0
- package/dist/engine/summary/step-attempt-active-child-workflows.mjs +55 -0
- package/dist/engine/summary/step-attempt-active-fields.d.mts +23 -0
- package/dist/engine/summary/step-attempt-active-fields.mjs +14 -0
- package/dist/engine/summary/step-attempt-active-message-waits.d.mts +12 -0
- package/dist/engine/summary/step-attempt-active-message-waits.mjs +47 -0
- package/dist/engine/summary/step-attempt-active-sleeps.d.mts +19 -0
- package/dist/engine/summary/step-attempt-active-sleeps.mjs +44 -0
- package/dist/engine/summary/step-attempt-buckets.d.mts +22 -0
- package/dist/engine/summary/step-attempt-buckets.mjs +152 -0
- package/dist/engine/summary/step-attempt-failure.d.mts +12 -0
- package/dist/engine/summary/step-attempt-failure.mjs +61 -0
- package/dist/engine/summary/step-attempt-lifecycle.d.mts +13 -0
- package/dist/engine/summary/step-attempt-lifecycle.mjs +19 -0
- package/dist/engine/summary/step-attempts.d.mts +11 -0
- package/dist/engine/summary/step-attempts.mjs +43 -0
- package/dist/engine/summary.d.mts +32 -0
- package/dist/engine/summary.mjs +37 -0
- package/dist/engine/task.d.mts +6 -0
- package/dist/engine/task.mjs +207 -0
- package/dist/errors/base.d.mts +99 -0
- package/dist/errors/base.mjs +426 -0
- package/dist/errors/capability.d.mts +11 -0
- package/dist/errors/capability.mjs +23 -0
- package/dist/errors/definition.d.mts +21 -0
- package/dist/errors/definition.mjs +51 -0
- package/dist/errors/details.d.mts +13 -0
- package/dist/errors/details.mjs +65 -0
- package/dist/errors/failures.d.mts +81 -0
- package/dist/errors/failures.mjs +168 -0
- package/dist/errors/hook.d.mts +14 -0
- package/dist/errors/hook.mjs +30 -0
- package/dist/errors/implementation.d.mts +11 -0
- package/dist/errors/implementation.mjs +25 -0
- package/dist/errors/lock.d.mts +28 -0
- package/dist/errors/lock.mjs +70 -0
- package/dist/errors/message.d.mts +106 -0
- package/dist/errors/message.mjs +122 -0
- package/dist/errors/mod.d.mts +17 -0
- package/dist/errors/mod.mjs +17 -0
- package/dist/errors/record-view.d.mts +11 -0
- package/dist/errors/record-view.mjs +24 -0
- package/dist/errors/records.d.mts +7 -0
- package/dist/errors/records.mjs +280 -0
- package/dist/errors/run.d.mts +116 -0
- package/dist/errors/run.mjs +232 -0
- package/dist/errors/runtime.d.mts +12 -0
- package/dist/errors/runtime.mjs +24 -0
- package/dist/errors/schedule.d.mts +27 -0
- package/dist/errors/schedule.mjs +65 -0
- package/dist/errors/step.d.mts +76 -0
- package/dist/errors/step.mjs +113 -0
- package/dist/errors/stream.d.mts +24 -0
- package/dist/errors/stream.mjs +64 -0
- package/dist/esbuild.d.mts +7 -0
- package/dist/esbuild.mjs +6 -0
- package/dist/events/descriptors.d.mts +245 -0
- package/dist/events/descriptors.mjs +405 -0
- package/dist/events/mod.d.mts +3 -0
- package/dist/events/mod.mjs +2 -0
- package/dist/history/attempt-key.d.mts +6 -0
- package/dist/history/attempt-key.mjs +7 -0
- package/dist/history/mod.d.mts +71 -0
- package/dist/history/mod.mjs +195 -0
- package/dist/history/projection.d.mts +8 -0
- package/dist/history/projection.mjs +259 -0
- package/dist/history/replay-projection.d.mts +88 -0
- package/dist/history/replay-projection.mjs +369 -0
- package/dist/history/sequencer.d.mts +16 -0
- package/dist/history/sequencer.mjs +78 -0
- package/dist/history/step-attempts.d.mts +9 -0
- package/dist/history/step-attempts.mjs +50 -0
- package/dist/history/timeline.d.mts +16 -0
- package/dist/history/timeline.mjs +272 -0
- package/dist/history/validator.d.mts +9 -0
- package/dist/history/validator.mjs +110 -0
- package/dist/inspection/mod.d.mts +5 -0
- package/dist/inspection/mod.mjs +3 -0
- package/dist/message-options.d.mts +8 -0
- package/dist/message-options.mjs +25 -0
- package/dist/mod.d.mts +52 -0
- package/dist/mod.mjs +26 -0
- package/dist/otel/support.d.mts +18 -0
- package/dist/otel/support.mjs +102 -0
- package/dist/otel.d.mts +30 -0
- package/dist/otel.mjs +588 -0
- package/dist/pagination.d.mts +25 -0
- package/dist/pagination.mjs +73 -0
- package/dist/registry.d.mts +20 -0
- package/dist/registry.mjs +48 -0
- package/dist/rolldown.d.mts +7 -0
- package/dist/rolldown.mjs +6 -0
- package/dist/rollup.d.mts +7 -0
- package/dist/rollup.mjs +6 -0
- package/dist/rspack.d.mts +7 -0
- package/dist/rspack.mjs +6 -0
- package/dist/runtime.d.mts +34 -0
- package/dist/runtime.mjs +194 -0
- package/dist/step-definition.d.mts +10 -0
- package/dist/step-definition.mjs +15 -0
- package/dist/store/append-projection.d.mts +15 -0
- package/dist/store/append-projection.mjs +26 -0
- package/dist/store/capabilities.d.mts +14 -0
- package/dist/store/capabilities.mjs +42 -0
- package/dist/store/cleanup.d.mts +18 -0
- package/dist/store/cleanup.mjs +338 -0
- package/dist/store/compaction.d.mts +5 -0
- package/dist/store/compaction.mjs +8 -0
- package/dist/store/create.d.mts +52 -0
- package/dist/store/create.mjs +159 -0
- package/dist/store/event-append-project.d.mts +15 -0
- package/dist/store/event-append-project.mjs +77 -0
- package/dist/store/event-append.d.mts +37 -0
- package/dist/store/event-append.mjs +80 -0
- package/dist/store/event-history.d.mts +22 -0
- package/dist/store/event-history.mjs +75 -0
- package/dist/store/event.d.mts +10 -0
- package/dist/store/event.mjs +28 -0
- package/dist/store/idempotency.d.mts +10 -0
- package/dist/store/idempotency.mjs +167 -0
- package/dist/store/instrumentation.d.mts +7 -0
- package/dist/store/instrumentation.mjs +123 -0
- package/dist/store/lock.d.mts +8 -0
- package/dist/store/lock.mjs +28 -0
- package/dist/store/materialization.d.mts +30 -0
- package/dist/store/materialization.mjs +127 -0
- package/dist/store/message-index.d.mts +21 -0
- package/dist/store/message-index.mjs +121 -0
- package/dist/store/mod.d.mts +5 -0
- package/dist/store/mod.mjs +4 -0
- package/dist/store/query.d.mts +24 -0
- package/dist/store/query.mjs +82 -0
- package/dist/store/revision.d.mts +4 -0
- package/dist/store/revision.mjs +7 -0
- package/dist/store/run.d.mts +49 -0
- package/dist/store/run.mjs +236 -0
- package/dist/store/schedule.d.mts +12 -0
- package/dist/store/schedule.mjs +41 -0
- package/dist/store/schema.d.mts +14 -0
- package/dist/store/schema.mjs +17 -0
- package/dist/store/step-attempt.d.mts +14 -0
- package/dist/store/step-attempt.mjs +23 -0
- package/dist/store/storage-value.d.mts +5 -0
- package/dist/store/storage-value.mjs +6 -0
- package/dist/store/validation.d.mts +35 -0
- package/dist/store/validation.mjs +77 -0
- package/dist/store-keys.d.mts +49 -0
- package/dist/store-keys.mjs +63 -0
- package/dist/telemetry.d.mts +132 -0
- package/dist/telemetry.mjs +172 -0
- package/dist/temporal.d.mts +23 -0
- package/dist/temporal.mjs +59 -0
- package/dist/timer.d.mts +12 -0
- package/dist/timer.mjs +28 -0
- package/dist/types/cleanup.d.mts +112 -0
- package/dist/types/cleanup.mjs +22 -0
- package/dist/types/client.d.mts +270 -0
- package/dist/types/client.mjs +1 -0
- package/dist/types/common.d.mts +19 -0
- package/dist/types/common.mjs +15 -0
- package/dist/types/definition.d.mts +92 -0
- package/dist/types/definition.mjs +1 -0
- package/dist/types/engine-options.d.mts +76 -0
- package/dist/types/engine-options.mjs +1 -0
- package/dist/types/engine.d.mts +309 -0
- package/dist/types/engine.mjs +1 -0
- package/dist/types/error-code.d.mts +256 -0
- package/dist/types/error-code.mjs +131 -0
- package/dist/types/error.d.mts +236 -0
- package/dist/types/error.mjs +48 -0
- package/dist/types/events.d.mts +2869 -0
- package/dist/types/events.mjs +283 -0
- package/dist/types/hook.d.mts +149 -0
- package/dist/types/hook.mjs +66 -0
- package/dist/types/lock.d.mts +63 -0
- package/dist/types/lock.mjs +18 -0
- package/dist/types/message-id.d.mts +7 -0
- package/dist/types/message-id.mjs +5 -0
- package/dist/types/message.d.mts +87 -0
- package/dist/types/message.mjs +1 -0
- package/dist/types/observation.d.mts +146 -0
- package/dist/types/observation.mjs +1 -0
- package/dist/types/pagination.d.mts +32 -0
- package/dist/types/pagination.mjs +13 -0
- package/dist/types/result.d.mts +62 -0
- package/dist/types/result.mjs +1 -0
- package/dist/types/retry.d.mts +48 -0
- package/dist/types/retry.mjs +1 -0
- package/dist/types/run-id.d.mts +7 -0
- package/dist/types/run-id.mjs +5 -0
- package/dist/types/run-list.d.mts +43 -0
- package/dist/types/run-list.mjs +1 -0
- package/dist/types/run-options.d.mts +86 -0
- package/dist/types/run-options.mjs +1 -0
- package/dist/types/run.d.mts +355 -0
- package/dist/types/run.mjs +207 -0
- package/dist/types/runtime.d.mts +143 -0
- package/dist/types/runtime.mjs +21 -0
- package/dist/types/schedule.d.mts +127 -0
- package/dist/types/schedule.mjs +48 -0
- package/dist/types/step-attempts.d.mts +326 -0
- package/dist/types/step-attempts.mjs +43 -0
- package/dist/types/step-id.d.mts +7 -0
- package/dist/types/step-id.mjs +5 -0
- package/dist/types/step.d.mts +183 -0
- package/dist/types/step.mjs +5 -0
- package/dist/types/store.d.mts +254 -0
- package/dist/types/store.mjs +1 -0
- package/dist/types/stream-id.d.mts +7 -0
- package/dist/types/stream-id.mjs +5 -0
- package/dist/types/stream.d.mts +126 -0
- package/dist/types/stream.mjs +1 -0
- package/dist/types/summary.d.mts +318 -0
- package/dist/types/summary.mjs +1 -0
- package/dist/types/telemetry.d.mts +74 -0
- package/dist/types/telemetry.mjs +9 -0
- package/dist/types/timeline.d.mts +237 -0
- package/dist/types/timeline.mjs +1 -0
- package/dist/types/vite.d.mts +65 -0
- package/dist/types/vite.mjs +1 -0
- package/dist/types/worker-id.d.mts +7 -0
- package/dist/types/worker-id.mjs +5 -0
- package/dist/types/worker.d.mts +94 -0
- package/dist/types/worker.mjs +1 -0
- package/dist/utility.d.mts +49 -0
- package/dist/utility.mjs +122 -0
- package/dist/vite/ast.d.mts +23 -0
- package/dist/vite/ast.mjs +73 -0
- package/dist/vite/error.d.mts +19 -0
- package/dist/vite/error.mjs +47 -0
- package/dist/vite/generated-name.d.mts +7 -0
- package/dist/vite/generated-name.mjs +9 -0
- package/dist/vite/manifest.d.mts +7 -0
- package/dist/vite/manifest.mjs +106 -0
- package/dist/vite/plugin.d.mts +7 -0
- package/dist/vite/plugin.mjs +190 -0
- package/dist/vite/safety.d.mts +12 -0
- package/dist/vite/safety.mjs +96 -0
- package/dist/vite/source-edit.d.mts +12 -0
- package/dist/vite/source-edit.mjs +44 -0
- package/dist/vite/source-map.d.mts +11 -0
- package/dist/vite/source-map.mjs +53 -0
- package/dist/vite/source.d.mts +7 -0
- package/dist/vite/source.mjs +14 -0
- package/dist/vite/transform.d.mts +7 -0
- package/dist/vite/transform.mjs +405 -0
- package/dist/vite.d.mts +6 -0
- package/dist/vite.mjs +5 -0
- package/dist/webhook.d.mts +16 -0
- package/dist/webhook.mjs +17 -0
- package/dist/webpack.d.mts +7 -0
- package/dist/webpack.mjs +6 -0
- package/dist/worker/error.d.mts +11 -0
- package/dist/worker/error.mjs +40 -0
- package/dist/worker.d.mts +18 -0
- package/dist/worker.mjs +427 -0
- package/package.json +144 -0
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { WorkflowErrorCode, workflowErrorCodeSchema } from "../types/error-code.mjs";
|
|
2
|
+
import { WorkflowErrorOptions, WorkflowErrorRecord, WorkflowNonRetryableErrorOptions, WorkflowRetryableErrorOptions, workflowErrorRecordSchema } from "../types/error.mjs";
|
|
3
|
+
import { WorkflowError, WorkflowMessageError, WorkflowOptionsError, WorkflowRunError, WorkflowStateError, WorkflowStepError } from "./base.mjs";
|
|
4
|
+
import { WorkflowCapabilityError } from "./capability.mjs";
|
|
5
|
+
import { WorkflowDefinitionError } from "./definition.mjs";
|
|
6
|
+
import { WorkflowDurationError, WorkflowNonRetryableError, WorkflowPermanentFailureError, WorkflowReplayDivergenceError, WorkflowRetryableError, WorkflowSerializationError } from "./failures.mjs";
|
|
7
|
+
import { WorkflowHookError } from "./hook.mjs";
|
|
8
|
+
import { WorkflowImplementationNotFoundError } from "./implementation.mjs";
|
|
9
|
+
import { WorkflowLockError, WorkflowLockStateError } from "./lock.mjs";
|
|
10
|
+
import { WorkflowHookDisposedError, WorkflowMessageDeliveryError, WorkflowMessageIdempotencyConflictError, WorkflowMessageWaitTimeoutError } from "./message.mjs";
|
|
11
|
+
import { WorkflowChildWorkflowTimeoutError, WorkflowResultTimeoutError, WorkflowRunCanceledError, WorkflowRunCancellationError, WorkflowRunDeadlineExceededError, WorkflowRunInvalidError, WorkflowRunMismatchError, WorkflowRunNotFoundError, WorkflowRunParentError, WorkflowRunTransitionError } from "./run.mjs";
|
|
12
|
+
import { WorkflowRuntimeError } from "./runtime.mjs";
|
|
13
|
+
import { WorkflowScheduleAlreadyExistsError, WorkflowScheduleError } from "./schedule.mjs";
|
|
14
|
+
import { WorkflowStepAttemptLimitError, WorkflowStepExecutionError, WorkflowStepRetryLimitError, WorkflowStepTimeoutError } from "./step.mjs";
|
|
15
|
+
import { WorkflowStreamError, WorkflowStreamNotFoundError } from "./stream.mjs";
|
|
16
|
+
import { workflowErrorRecordView } from "./record-view.mjs";
|
|
17
|
+
export { WorkflowCapabilityError, WorkflowChildWorkflowTimeoutError, WorkflowDefinitionError, WorkflowDurationError, WorkflowError, WorkflowErrorCode, type WorkflowErrorCode as WorkflowErrorCodeType, type WorkflowErrorOptions, type WorkflowErrorRecord, WorkflowHookDisposedError, WorkflowHookError, WorkflowImplementationNotFoundError, WorkflowLockError, WorkflowLockStateError, WorkflowMessageDeliveryError, WorkflowMessageError, WorkflowMessageIdempotencyConflictError, WorkflowMessageWaitTimeoutError, WorkflowNonRetryableError, type WorkflowNonRetryableErrorOptions, WorkflowOptionsError, WorkflowPermanentFailureError, WorkflowReplayDivergenceError, WorkflowResultTimeoutError, WorkflowRetryableError, type WorkflowRetryableErrorOptions, WorkflowRunCanceledError, WorkflowRunCancellationError, WorkflowRunDeadlineExceededError, WorkflowRunError, WorkflowRunInvalidError, WorkflowRunMismatchError, WorkflowRunNotFoundError, WorkflowRunParentError, WorkflowRunTransitionError, WorkflowRuntimeError, WorkflowScheduleAlreadyExistsError, WorkflowScheduleError, WorkflowSerializationError, WorkflowStateError, WorkflowStepAttemptLimitError, WorkflowStepError, WorkflowStepExecutionError, WorkflowStepRetryLimitError, WorkflowStepTimeoutError, WorkflowStreamError, WorkflowStreamNotFoundError, workflowErrorCodeSchema, workflowErrorRecordSchema, workflowErrorRecordView };
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { WorkflowErrorCode, workflowErrorCodeSchema } from "../types/error-code.mjs";
|
|
2
|
+
import { WorkflowError, WorkflowMessageError, WorkflowOptionsError, WorkflowRunError, WorkflowStateError, WorkflowStepError } from "./base.mjs";
|
|
3
|
+
import { workflowErrorRecordView } from "./record-view.mjs";
|
|
4
|
+
import { WorkflowDurationError, WorkflowNonRetryableError, WorkflowPermanentFailureError, WorkflowReplayDivergenceError, WorkflowRetryableError, WorkflowSerializationError } from "./failures.mjs";
|
|
5
|
+
import { WorkflowChildWorkflowTimeoutError, WorkflowResultTimeoutError, WorkflowRunCanceledError, WorkflowRunCancellationError, WorkflowRunDeadlineExceededError, WorkflowRunInvalidError, WorkflowRunMismatchError, WorkflowRunNotFoundError, WorkflowRunParentError, WorkflowRunTransitionError } from "./run.mjs";
|
|
6
|
+
import { workflowErrorRecordSchema } from "../types/error.mjs";
|
|
7
|
+
import { WorkflowCapabilityError } from "./capability.mjs";
|
|
8
|
+
import { WorkflowDefinitionError } from "./definition.mjs";
|
|
9
|
+
import { WorkflowHookError } from "./hook.mjs";
|
|
10
|
+
import { WorkflowImplementationNotFoundError } from "./implementation.mjs";
|
|
11
|
+
import { WorkflowLockError, WorkflowLockStateError } from "./lock.mjs";
|
|
12
|
+
import { WorkflowHookDisposedError, WorkflowMessageDeliveryError, WorkflowMessageIdempotencyConflictError, WorkflowMessageWaitTimeoutError } from "./message.mjs";
|
|
13
|
+
import { WorkflowRuntimeError } from "./runtime.mjs";
|
|
14
|
+
import { WorkflowScheduleAlreadyExistsError, WorkflowScheduleError } from "./schedule.mjs";
|
|
15
|
+
import { WorkflowStepAttemptLimitError, WorkflowStepExecutionError, WorkflowStepRetryLimitError, WorkflowStepTimeoutError } from "./step.mjs";
|
|
16
|
+
import { WorkflowStreamError, WorkflowStreamNotFoundError } from "./stream.mjs";
|
|
17
|
+
export { WorkflowCapabilityError, WorkflowChildWorkflowTimeoutError, WorkflowDefinitionError, WorkflowDurationError, WorkflowError, WorkflowErrorCode, WorkflowHookDisposedError, WorkflowHookError, WorkflowImplementationNotFoundError, WorkflowLockError, WorkflowLockStateError, WorkflowMessageDeliveryError, WorkflowMessageError, WorkflowMessageIdempotencyConflictError, WorkflowMessageWaitTimeoutError, WorkflowNonRetryableError, WorkflowOptionsError, WorkflowPermanentFailureError, WorkflowReplayDivergenceError, WorkflowResultTimeoutError, WorkflowRetryableError, WorkflowRunCanceledError, WorkflowRunCancellationError, WorkflowRunDeadlineExceededError, WorkflowRunError, WorkflowRunInvalidError, WorkflowRunMismatchError, WorkflowRunNotFoundError, WorkflowRunParentError, WorkflowRunTransitionError, WorkflowRuntimeError, WorkflowScheduleAlreadyExistsError, WorkflowScheduleError, WorkflowSerializationError, WorkflowStateError, WorkflowStepAttemptLimitError, WorkflowStepError, WorkflowStepExecutionError, WorkflowStepRetryLimitError, WorkflowStepTimeoutError, WorkflowStreamError, WorkflowStreamNotFoundError, workflowErrorCodeSchema, workflowErrorRecordSchema, workflowErrorRecordView };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { WorkflowErrorCode } from "../types/error-code.mjs";
|
|
2
|
+
import { WorkflowErrorDetails } from "../types/error.mjs";
|
|
3
|
+
//#region src/errors/record-view.d.ts
|
|
4
|
+
interface WorkflowErrorRecordView {
|
|
5
|
+
readonly code: WorkflowErrorCode;
|
|
6
|
+
readonly details?: WorkflowErrorDetails;
|
|
7
|
+
}
|
|
8
|
+
/** Safely exposes fields shared by live workflow errors and persisted workflow error records. */
|
|
9
|
+
declare function workflowErrorRecordView(error: unknown): WorkflowErrorRecordView | undefined;
|
|
10
|
+
//#endregion
|
|
11
|
+
export { WorkflowErrorRecordView, workflowErrorRecordView };
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { workflowErrorCodeSchema } from "../types/error-code.mjs";
|
|
2
|
+
//#region src/errors/record-view.ts
|
|
3
|
+
/** Safely exposes fields shared by live workflow errors and persisted workflow error records. */
|
|
4
|
+
function workflowErrorRecordView(error) {
|
|
5
|
+
if (typeof error !== "object" || error === null) return;
|
|
6
|
+
const code = "code" in error ? workflowErrorCodeSchema.safeParse(error.code) : void 0;
|
|
7
|
+
if (code === void 0 || !code.success) return;
|
|
8
|
+
if (!("details" in error) || error.details === void 0) return { code: code.data };
|
|
9
|
+
const details = workflowErrorDetailsView(error.details);
|
|
10
|
+
return details === void 0 ? void 0 : {
|
|
11
|
+
code: code.data,
|
|
12
|
+
details
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
function workflowErrorDetailsView(details) {
|
|
16
|
+
if (typeof details !== "object" || details === null || Array.isArray(details)) return;
|
|
17
|
+
const prototype = Object.getPrototypeOf(details);
|
|
18
|
+
if (prototype !== Object.prototype && prototype !== null) return;
|
|
19
|
+
const entries = Object.entries(details);
|
|
20
|
+
if (entries.some(([key, value]) => key.trim() === "" || !(typeof value === "string" || typeof value === "number" || typeof value === "boolean" || value === null))) return;
|
|
21
|
+
return Object.fromEntries(entries);
|
|
22
|
+
}
|
|
23
|
+
//#endregion
|
|
24
|
+
export { workflowErrorRecordView };
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { WorkflowErrorRecord } from "../types/error.mjs";
|
|
2
|
+
import { WorkflowError } from "./base.mjs";
|
|
3
|
+
//#region src/errors/records.d.ts
|
|
4
|
+
/** Reconstructs a workflow error instance from a persisted error record. */
|
|
5
|
+
declare function workflowErrorFromRecord(record: WorkflowErrorRecord): WorkflowError;
|
|
6
|
+
//#endregion
|
|
7
|
+
export { workflowErrorFromRecord };
|
|
@@ -0,0 +1,280 @@
|
|
|
1
|
+
import { workflowErrorCodeSchema } from "../types/error-code.mjs";
|
|
2
|
+
import { WorkflowError, WorkflowMessageError, WorkflowOptionsError, WorkflowRunError, WorkflowStateError, WorkflowStepError } from "./base.mjs";
|
|
3
|
+
import { WorkflowDurationError, WorkflowNonRetryableError, WorkflowPermanentFailureError, WorkflowReplayDivergenceError, WorkflowRetryableError, WorkflowSerializationError } from "./failures.mjs";
|
|
4
|
+
import { WorkflowChildWorkflowTimeoutError, WorkflowResultTimeoutError, WorkflowRunCanceledError, WorkflowRunCancellationError, WorkflowRunDeadlineExceededError, WorkflowRunMismatchError, WorkflowRunNotFoundError, WorkflowRunParentError, WorkflowRunTransitionError } from "./run.mjs";
|
|
5
|
+
import { sanitizedWorkflowErrorDetails } from "../types/error.mjs";
|
|
6
|
+
import { WorkflowCapabilityError } from "./capability.mjs";
|
|
7
|
+
import { WorkflowDefinitionError } from "./definition.mjs";
|
|
8
|
+
import { WorkflowHookError } from "./hook.mjs";
|
|
9
|
+
import { WorkflowImplementationNotFoundError } from "./implementation.mjs";
|
|
10
|
+
import { WorkflowLockError, WorkflowLockStateError } from "./lock.mjs";
|
|
11
|
+
import { WorkflowHookDisposedError, WorkflowMessageDeliveryError, WorkflowMessageIdempotencyConflictError, WorkflowMessageWaitTimeoutError } from "./message.mjs";
|
|
12
|
+
import { WorkflowRuntimeError } from "./runtime.mjs";
|
|
13
|
+
import { WorkflowScheduleAlreadyExistsError, WorkflowScheduleError } from "./schedule.mjs";
|
|
14
|
+
import { WorkflowStepAttemptLimitError, WorkflowStepExecutionError, WorkflowStepRetryLimitError, WorkflowStepTimeoutError } from "./step.mjs";
|
|
15
|
+
import { WorkflowStreamError, WorkflowStreamNotFoundError } from "./stream.mjs";
|
|
16
|
+
import { hasWorkflowErrorCauseDetails, unprefixWorkflowErrorCauseDetails, workflowErrorDetailDuration, workflowErrorDetailPositiveSafeInteger, workflowErrorDetailString, workflowErrorDetailTimestamp, workflowErrorRunStatusOrUndefined, workflowTerminalErrorRunStatusOrUndefined } from "./details.mjs";
|
|
17
|
+
//#region src/errors/records.ts
|
|
18
|
+
/** Reconstructs a workflow error instance from a persisted error record. */
|
|
19
|
+
function workflowErrorFromRecord(record) {
|
|
20
|
+
const normalizedRecord = typeof record === "object" && record !== null && !Array.isArray(record) && (Object.getPrototypeOf(record) === Object.prototype || Object.getPrototypeOf(record) === null) ? record : {};
|
|
21
|
+
const recordName = typeof normalizedRecord.name === "string" && normalizedRecord.name.trim() !== "" ? normalizedRecord.name : "WorkflowError";
|
|
22
|
+
const recordMessage = typeof normalizedRecord.message === "string" && normalizedRecord.message.trim() !== "" ? normalizedRecord.message : recordName;
|
|
23
|
+
const error = typedWorkflowErrorFromRecord(normalizedRecord, recordMessage) ?? WorkflowError.fromMessage(recordMessage, { details: sanitizedWorkflowErrorDetails(normalizedRecord.details) });
|
|
24
|
+
error.name = recordName;
|
|
25
|
+
error.message = recordMessage;
|
|
26
|
+
const recordCode = workflowErrorCodeSchema.safeParse(normalizedRecord.code);
|
|
27
|
+
if (recordCode.success) Object.defineProperty(error, "code", { value: recordCode.data });
|
|
28
|
+
const recordStack = typeof normalizedRecord.stack === "string" && normalizedRecord.stack.trim() !== "" ? normalizedRecord.stack : void 0;
|
|
29
|
+
if (recordStack !== void 0) error.stack = recordStack;
|
|
30
|
+
return error;
|
|
31
|
+
}
|
|
32
|
+
function typedWorkflowErrorFromRecord(record, recordMessage) {
|
|
33
|
+
return (record.name === void 0 ? void 0 : workflowErrorRecordFactories[record.name])?.(record, recordMessage);
|
|
34
|
+
}
|
|
35
|
+
const workflowErrorRecordFactories = {
|
|
36
|
+
WorkflowHookError: domainWorkflowErrorFactory(WorkflowHookError),
|
|
37
|
+
WorkflowLockError: domainWorkflowErrorFactory(WorkflowLockError),
|
|
38
|
+
WorkflowLockStateError: domainWorkflowErrorFactory(WorkflowLockStateError),
|
|
39
|
+
WorkflowScheduleError: domainWorkflowErrorFactory(WorkflowScheduleError),
|
|
40
|
+
WorkflowStreamError: domainWorkflowErrorFactory(WorkflowStreamError),
|
|
41
|
+
WorkflowScheduleAlreadyExistsError(record) {
|
|
42
|
+
const scheduleId = workflowErrorDetailString(record.details, "scheduleId");
|
|
43
|
+
return scheduleId === void 0 ? void 0 : WorkflowScheduleAlreadyExistsError.create(scheduleId);
|
|
44
|
+
},
|
|
45
|
+
WorkflowStreamNotFoundError(record) {
|
|
46
|
+
const streamIdOrName = workflowErrorDetailString(record.details, "streamIdOrName");
|
|
47
|
+
return streamIdOrName === void 0 ? void 0 : WorkflowStreamNotFoundError.create(streamIdOrName);
|
|
48
|
+
},
|
|
49
|
+
WorkflowImplementationNotFoundError(record) {
|
|
50
|
+
const details = record.details;
|
|
51
|
+
const workflowName = workflowErrorDetailString(details, "workflowName");
|
|
52
|
+
if (workflowName === void 0) return;
|
|
53
|
+
return WorkflowImplementationNotFoundError.create(workflowName, workflowErrorDetailString(details, "workflowVersion"));
|
|
54
|
+
},
|
|
55
|
+
WorkflowDefinitionError: (_record, recordMessage) => WorkflowDefinitionError.create(recordMessage),
|
|
56
|
+
WorkflowOptionsError: (_record, recordMessage) => WorkflowOptionsError.create(recordMessage),
|
|
57
|
+
WorkflowStateError: (_record, recordMessage) => WorkflowStateError.create(recordMessage),
|
|
58
|
+
WorkflowRuntimeError: (_record, recordMessage) => WorkflowRuntimeError.create(recordMessage),
|
|
59
|
+
WorkflowRunError(record, recordMessage) {
|
|
60
|
+
return WorkflowRunError.fromMessage(recordMessage, { details: sanitizedWorkflowErrorDetails(record.details) });
|
|
61
|
+
},
|
|
62
|
+
WorkflowStepError(record, recordMessage) {
|
|
63
|
+
return WorkflowStepError.fromMessage(recordMessage, { details: sanitizedWorkflowErrorDetails(record.details) });
|
|
64
|
+
},
|
|
65
|
+
WorkflowMessageError(record, recordMessage) {
|
|
66
|
+
return WorkflowMessageError.fromMessage(recordMessage, { details: sanitizedWorkflowErrorDetails(record.details) });
|
|
67
|
+
},
|
|
68
|
+
WorkflowCapabilityError(record) {
|
|
69
|
+
const details = record.details;
|
|
70
|
+
const capability = workflowErrorDetailString(details, "capability");
|
|
71
|
+
return capability === void 0 ? void 0 : WorkflowCapabilityError.create(capability);
|
|
72
|
+
},
|
|
73
|
+
WorkflowDurationError: (_record, recordMessage) => WorkflowDurationError.create(recordMessage),
|
|
74
|
+
WorkflowSerializationError(record) {
|
|
75
|
+
const details = record.details;
|
|
76
|
+
const path = workflowErrorDetailString(details, "path");
|
|
77
|
+
const reason = workflowErrorDetailString(details, "reason");
|
|
78
|
+
return path === void 0 || reason === void 0 ? void 0 : WorkflowSerializationError.create(path, reason);
|
|
79
|
+
},
|
|
80
|
+
WorkflowNonRetryableError(record, recordMessage) {
|
|
81
|
+
return WorkflowNonRetryableError.create(recordMessage, { details: sanitizedWorkflowErrorDetails(record.details) });
|
|
82
|
+
},
|
|
83
|
+
WorkflowPermanentFailureError(record) {
|
|
84
|
+
const details = record.details;
|
|
85
|
+
const runId = workflowErrorDetailString(details, "runId");
|
|
86
|
+
const reason = workflowErrorDetailString(details, "reason");
|
|
87
|
+
return runId === void 0 || reason === void 0 ? void 0 : WorkflowPermanentFailureError.create({
|
|
88
|
+
runId,
|
|
89
|
+
reason
|
|
90
|
+
});
|
|
91
|
+
},
|
|
92
|
+
WorkflowRetryableError(record, recordMessage) {
|
|
93
|
+
const details = record.details;
|
|
94
|
+
const retryAt = workflowErrorDetailTimestamp(details, "retryAt");
|
|
95
|
+
const retryDelay = workflowErrorDetailDuration(details, "retryDelay");
|
|
96
|
+
return WorkflowRetryableError.create(recordMessage, {
|
|
97
|
+
...retryAt === void 0 ? {} : { retryAt },
|
|
98
|
+
...retryDelay === void 0 ? {} : { retryDelay },
|
|
99
|
+
details: sanitizedWorkflowErrorDetails(details)
|
|
100
|
+
});
|
|
101
|
+
},
|
|
102
|
+
WorkflowStepTimeoutError(record) {
|
|
103
|
+
const details = record.details;
|
|
104
|
+
const runId = workflowErrorDetailString(details, "runId");
|
|
105
|
+
const stepId = workflowErrorDetailString(details, "stepId");
|
|
106
|
+
const stepName = workflowErrorDetailString(details, "stepName");
|
|
107
|
+
const attempt = workflowErrorDetailPositiveSafeInteger(details, "attempt");
|
|
108
|
+
const timeoutAt = workflowErrorDetailTimestamp(details, "timeoutAt");
|
|
109
|
+
return runId === void 0 || stepId === void 0 || stepName === void 0 || attempt === void 0 || timeoutAt === void 0 ? void 0 : WorkflowStepTimeoutError.create({
|
|
110
|
+
runId,
|
|
111
|
+
stepId,
|
|
112
|
+
stepName,
|
|
113
|
+
attempt,
|
|
114
|
+
timeoutAt
|
|
115
|
+
});
|
|
116
|
+
},
|
|
117
|
+
WorkflowResultTimeoutError(record) {
|
|
118
|
+
const details = record.details;
|
|
119
|
+
const runId = workflowErrorDetailString(details, "runId");
|
|
120
|
+
const timeout = workflowErrorDetailDuration(details, "timeout");
|
|
121
|
+
return runId === void 0 || timeout === void 0 ? void 0 : WorkflowResultTimeoutError.create(runId, timeout);
|
|
122
|
+
},
|
|
123
|
+
WorkflowRunNotFoundError(record) {
|
|
124
|
+
const details = record.details;
|
|
125
|
+
const runId = workflowErrorDetailString(details, "runId");
|
|
126
|
+
return runId === void 0 ? void 0 : WorkflowRunNotFoundError.create(runId);
|
|
127
|
+
},
|
|
128
|
+
WorkflowRunCanceledError(record) {
|
|
129
|
+
const details = record.details;
|
|
130
|
+
const runId = workflowErrorDetailString(details, "runId");
|
|
131
|
+
return runId === void 0 ? void 0 : WorkflowRunCanceledError.create(runId);
|
|
132
|
+
},
|
|
133
|
+
WorkflowRunCancellationError(record) {
|
|
134
|
+
const details = record.details;
|
|
135
|
+
const runId = workflowErrorDetailString(details, "runId");
|
|
136
|
+
const status = workflowTerminalErrorRunStatusOrUndefined(workflowErrorDetailString(details, "status"));
|
|
137
|
+
return runId === void 0 || status === void 0 ? void 0 : WorkflowRunCancellationError.create(runId, status);
|
|
138
|
+
},
|
|
139
|
+
WorkflowRunDeadlineExceededError(record) {
|
|
140
|
+
const details = record.details;
|
|
141
|
+
const runId = workflowErrorDetailString(details, "runId");
|
|
142
|
+
const deadlineAt = workflowErrorDetailTimestamp(details, "deadlineAt");
|
|
143
|
+
return runId === void 0 || deadlineAt === void 0 ? void 0 : WorkflowRunDeadlineExceededError.create(runId, deadlineAt);
|
|
144
|
+
},
|
|
145
|
+
WorkflowRunParentError(record) {
|
|
146
|
+
const details = record.details;
|
|
147
|
+
const runId = workflowErrorDetailString(details, "runId");
|
|
148
|
+
const reason = workflowErrorDetailString(details, "reason");
|
|
149
|
+
return runId === void 0 || reason === void 0 ? void 0 : WorkflowRunParentError.create(runId, reason);
|
|
150
|
+
},
|
|
151
|
+
WorkflowRunTransitionError(record) {
|
|
152
|
+
const details = record.details;
|
|
153
|
+
const runId = workflowErrorDetailString(details, "runId");
|
|
154
|
+
const valueFrom = workflowErrorDetailString(details, "from");
|
|
155
|
+
const from = valueFrom === void 0 ? void 0 : workflowErrorRunStatusOrUndefined(valueFrom);
|
|
156
|
+
const valueTo = workflowErrorDetailString(details, "to");
|
|
157
|
+
const to = valueTo === void 0 ? void 0 : workflowErrorRunStatusOrUndefined(valueTo);
|
|
158
|
+
return runId === void 0 || from === void 0 || to === void 0 ? void 0 : WorkflowRunTransitionError.create(runId, from, to);
|
|
159
|
+
},
|
|
160
|
+
WorkflowMessageDeliveryError(record) {
|
|
161
|
+
const details = record.details;
|
|
162
|
+
const runId = workflowErrorDetailString(details, "runId");
|
|
163
|
+
const status = workflowTerminalErrorRunStatusOrUndefined(workflowErrorDetailString(details, "status"));
|
|
164
|
+
const messageId = workflowErrorDetailString(details, "messageId");
|
|
165
|
+
return runId === void 0 || status === void 0 || messageId === void 0 ? void 0 : WorkflowMessageDeliveryError.create({
|
|
166
|
+
runId,
|
|
167
|
+
status,
|
|
168
|
+
messageId
|
|
169
|
+
});
|
|
170
|
+
},
|
|
171
|
+
WorkflowMessageIdempotencyConflictError(record) {
|
|
172
|
+
const details = record.details;
|
|
173
|
+
const runId = workflowErrorDetailString(details, "runId");
|
|
174
|
+
const messageId = workflowErrorDetailString(details, "messageId");
|
|
175
|
+
const idempotencyKey = workflowErrorDetailString(details, "idempotencyKey");
|
|
176
|
+
return runId === void 0 || messageId === void 0 || idempotencyKey === void 0 ? void 0 : WorkflowMessageIdempotencyConflictError.create({
|
|
177
|
+
runId,
|
|
178
|
+
messageId,
|
|
179
|
+
idempotencyKey
|
|
180
|
+
});
|
|
181
|
+
},
|
|
182
|
+
WorkflowRunMismatchError(record) {
|
|
183
|
+
const details = record.details;
|
|
184
|
+
const runId = workflowErrorDetailString(details, "runId");
|
|
185
|
+
const expectedWorkflowName = workflowErrorDetailString(details, "expectedWorkflowName");
|
|
186
|
+
const actualWorkflowName = workflowErrorDetailString(details, "actualWorkflowName");
|
|
187
|
+
return runId === void 0 || expectedWorkflowName === void 0 || actualWorkflowName === void 0 ? void 0 : WorkflowRunMismatchError.create({
|
|
188
|
+
runId,
|
|
189
|
+
expectedWorkflowName,
|
|
190
|
+
actualWorkflowName
|
|
191
|
+
});
|
|
192
|
+
},
|
|
193
|
+
WorkflowChildWorkflowTimeoutError(record) {
|
|
194
|
+
const details = record.details;
|
|
195
|
+
const runId = workflowErrorDetailString(details, "runId");
|
|
196
|
+
const childRunId = workflowErrorDetailString(details, "childRunId");
|
|
197
|
+
const stepId = workflowErrorDetailString(details, "stepId");
|
|
198
|
+
const timeoutAt = workflowErrorDetailTimestamp(details, "timeoutAt");
|
|
199
|
+
return runId === void 0 || childRunId === void 0 || stepId === void 0 || timeoutAt === void 0 ? void 0 : WorkflowChildWorkflowTimeoutError.create({
|
|
200
|
+
runId,
|
|
201
|
+
childRunId,
|
|
202
|
+
stepId,
|
|
203
|
+
timeoutAt
|
|
204
|
+
});
|
|
205
|
+
},
|
|
206
|
+
WorkflowMessageWaitTimeoutError(record) {
|
|
207
|
+
const details = record.details;
|
|
208
|
+
const runId = workflowErrorDetailString(details, "runId");
|
|
209
|
+
const stepId = workflowErrorDetailString(details, "stepId");
|
|
210
|
+
const stepName = workflowErrorDetailString(details, "stepName");
|
|
211
|
+
const messageId = workflowErrorDetailString(details, "messageId");
|
|
212
|
+
const timeoutAt = workflowErrorDetailTimestamp(details, "timeoutAt");
|
|
213
|
+
return runId === void 0 || stepId === void 0 || stepName === void 0 || messageId === void 0 || timeoutAt === void 0 ? void 0 : WorkflowMessageWaitTimeoutError.create({
|
|
214
|
+
runId,
|
|
215
|
+
stepId,
|
|
216
|
+
stepName,
|
|
217
|
+
messageId,
|
|
218
|
+
timeoutAt
|
|
219
|
+
});
|
|
220
|
+
},
|
|
221
|
+
WorkflowHookDisposedError(record) {
|
|
222
|
+
const details = record.details;
|
|
223
|
+
const runId = workflowErrorDetailString(details, "runId");
|
|
224
|
+
const stepId = workflowErrorDetailString(details, "stepId");
|
|
225
|
+
const stepName = workflowErrorDetailString(details, "stepName");
|
|
226
|
+
const messageId = workflowErrorDetailString(details, "messageId");
|
|
227
|
+
return runId === void 0 || stepId === void 0 || stepName === void 0 || messageId === void 0 ? void 0 : WorkflowHookDisposedError.create({
|
|
228
|
+
runId,
|
|
229
|
+
stepId,
|
|
230
|
+
stepName,
|
|
231
|
+
messageId
|
|
232
|
+
});
|
|
233
|
+
},
|
|
234
|
+
WorkflowStepExecutionError(record, recordMessage) {
|
|
235
|
+
const details = record.details;
|
|
236
|
+
const stepId = workflowErrorDetailString(details, "stepId");
|
|
237
|
+
const stepName = workflowErrorDetailString(details, "stepName");
|
|
238
|
+
const attempt = workflowErrorDetailPositiveSafeInteger(details, "attempt");
|
|
239
|
+
const cause = details !== void 0 && hasWorkflowErrorCauseDetails(details) ? workflowErrorFromRecord(unprefixWorkflowErrorCauseDetails(details)) : WorkflowError.fromMessage(recordMessage);
|
|
240
|
+
return stepId === void 0 || stepName === void 0 || attempt === void 0 ? void 0 : WorkflowStepExecutionError.create({
|
|
241
|
+
stepId,
|
|
242
|
+
stepName,
|
|
243
|
+
attempt,
|
|
244
|
+
cause
|
|
245
|
+
});
|
|
246
|
+
},
|
|
247
|
+
WorkflowStepRetryLimitError(record) {
|
|
248
|
+
const details = record.details;
|
|
249
|
+
const stepId = workflowErrorDetailString(details, "stepId");
|
|
250
|
+
const stepName = workflowErrorDetailString(details, "stepName");
|
|
251
|
+
const attempt = workflowErrorDetailPositiveSafeInteger(details, "attempt");
|
|
252
|
+
return stepId === void 0 || stepName === void 0 || attempt === void 0 ? void 0 : WorkflowStepRetryLimitError.create({
|
|
253
|
+
stepId,
|
|
254
|
+
stepName,
|
|
255
|
+
attempt
|
|
256
|
+
});
|
|
257
|
+
},
|
|
258
|
+
WorkflowStepAttemptLimitError(record) {
|
|
259
|
+
const details = record.details;
|
|
260
|
+
const runId = workflowErrorDetailString(details, "runId");
|
|
261
|
+
const maximumAttempts = workflowErrorDetailPositiveSafeInteger(details, "maximumAttempts");
|
|
262
|
+
return runId === void 0 || maximumAttempts === void 0 ? void 0 : WorkflowStepAttemptLimitError.create(runId, maximumAttempts);
|
|
263
|
+
},
|
|
264
|
+
WorkflowReplayDivergenceError(record) {
|
|
265
|
+
const details = record.details;
|
|
266
|
+
if (typeof record.message !== "string" || record.message.trim() === "") return;
|
|
267
|
+
return WorkflowReplayDivergenceError.create(record.message.replace(/^Workflow replay diverged: /, ""), {
|
|
268
|
+
expectedStepId: workflowErrorDetailString(details, "expectedStepId"),
|
|
269
|
+
actualStepId: workflowErrorDetailString(details, "actualStepId")
|
|
270
|
+
});
|
|
271
|
+
}
|
|
272
|
+
};
|
|
273
|
+
function domainWorkflowErrorFactory(ErrorConstructor) {
|
|
274
|
+
return (record, recordMessage) => {
|
|
275
|
+
const code = workflowErrorCodeSchema.safeParse(record.code);
|
|
276
|
+
return code.success ? new ErrorConstructor(recordMessage, code.data, sanitizedWorkflowErrorDetails(record.details)) : void 0;
|
|
277
|
+
};
|
|
278
|
+
}
|
|
279
|
+
//#endregion
|
|
280
|
+
export { workflowErrorFromRecord };
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
import { RunId } from "../types/run-id.mjs";
|
|
2
|
+
import { StepId } from "../types/step-id.mjs";
|
|
3
|
+
import "../types/step.mjs";
|
|
4
|
+
import { WorkflowRunStatus, WorkflowTerminalRunStatus } from "../types/run.mjs";
|
|
5
|
+
import { WorkflowRunError } from "./base.mjs";
|
|
6
|
+
//#region src/errors/run.d.ts
|
|
7
|
+
/** Error thrown for run not found failures. */
|
|
8
|
+
declare class WorkflowRunNotFoundError extends WorkflowRunError {
|
|
9
|
+
readonly runId: RunId;
|
|
10
|
+
constructor(runId: RunId, context?: Function);
|
|
11
|
+
static notFound(this: void, runId: RunId): never;
|
|
12
|
+
static create(this: void, runId: RunId): WorkflowRunNotFoundError;
|
|
13
|
+
}
|
|
14
|
+
/** Error thrown for run not found failures. */
|
|
15
|
+
declare class WorkflowRunInvalidError extends WorkflowRunError {
|
|
16
|
+
readonly runId: RunId;
|
|
17
|
+
constructor(runId: RunId, message: string, context?: Function);
|
|
18
|
+
static invalid(this: void, runId: RunId, message: string): never;
|
|
19
|
+
static create(this: void, runId: RunId, message: string): WorkflowRunInvalidError;
|
|
20
|
+
}
|
|
21
|
+
/** Error thrown for run mismatch failures. */
|
|
22
|
+
declare class WorkflowRunMismatchError extends WorkflowRunError {
|
|
23
|
+
readonly runId: RunId;
|
|
24
|
+
readonly expectedWorkflowName: string;
|
|
25
|
+
readonly actualWorkflowName: string;
|
|
26
|
+
constructor(options: {
|
|
27
|
+
readonly runId: RunId;
|
|
28
|
+
readonly expectedWorkflowName: string;
|
|
29
|
+
readonly actualWorkflowName: string;
|
|
30
|
+
}, context?: Function);
|
|
31
|
+
static mismatch(this: void, options: {
|
|
32
|
+
readonly runId: RunId;
|
|
33
|
+
readonly expectedWorkflowName: string;
|
|
34
|
+
readonly actualWorkflowName: string;
|
|
35
|
+
}): never;
|
|
36
|
+
static create(this: void, options: {
|
|
37
|
+
readonly runId: RunId;
|
|
38
|
+
readonly expectedWorkflowName: string;
|
|
39
|
+
readonly actualWorkflowName: string;
|
|
40
|
+
}): WorkflowRunMismatchError;
|
|
41
|
+
}
|
|
42
|
+
/** Error thrown for result timeout failures. */
|
|
43
|
+
declare class WorkflowResultTimeoutError extends WorkflowRunError {
|
|
44
|
+
readonly runId: RunId;
|
|
45
|
+
readonly timeout: Temporal.Duration;
|
|
46
|
+
constructor(runId: RunId, timeout: Temporal.Duration, context?: Function);
|
|
47
|
+
static timedOut(this: void, runId: RunId, timeout: Temporal.Duration): never;
|
|
48
|
+
static create(this: void, runId: RunId, timeout: Temporal.Duration): WorkflowResultTimeoutError;
|
|
49
|
+
}
|
|
50
|
+
/** Error thrown for run canceled failures. */
|
|
51
|
+
declare class WorkflowRunCanceledError extends WorkflowRunError {
|
|
52
|
+
readonly runId: RunId;
|
|
53
|
+
constructor(runId: RunId, context?: Function);
|
|
54
|
+
static canceled(this: void, runId: RunId): never;
|
|
55
|
+
static create(this: void, runId: RunId): WorkflowRunCanceledError;
|
|
56
|
+
}
|
|
57
|
+
/** Error thrown for run cancellation failures. */
|
|
58
|
+
declare class WorkflowRunCancellationError extends WorkflowRunError {
|
|
59
|
+
readonly runId: RunId;
|
|
60
|
+
readonly status: WorkflowTerminalRunStatus;
|
|
61
|
+
constructor(runId: RunId, status: WorkflowTerminalRunStatus, context?: Function);
|
|
62
|
+
static cannotCancel(this: void, runId: RunId, status: WorkflowTerminalRunStatus): never;
|
|
63
|
+
static create(this: void, runId: RunId, status: WorkflowTerminalRunStatus): WorkflowRunCancellationError;
|
|
64
|
+
}
|
|
65
|
+
/** Error thrown for run transition failures. */
|
|
66
|
+
declare class WorkflowRunTransitionError extends WorkflowRunError {
|
|
67
|
+
readonly runId: RunId;
|
|
68
|
+
readonly from: WorkflowRunStatus;
|
|
69
|
+
readonly to: WorkflowRunStatus;
|
|
70
|
+
constructor(runId: RunId, from: WorkflowRunStatus, to: WorkflowRunStatus, context?: Function);
|
|
71
|
+
static invalidTransition(this: void, runId: RunId, from: WorkflowRunStatus, to: WorkflowRunStatus): never;
|
|
72
|
+
static create(this: void, runId: RunId, from: WorkflowRunStatus, to: WorkflowRunStatus): WorkflowRunTransitionError;
|
|
73
|
+
}
|
|
74
|
+
/** Error thrown for run parent failures. */
|
|
75
|
+
declare class WorkflowRunParentError extends WorkflowRunError {
|
|
76
|
+
readonly runId: RunId;
|
|
77
|
+
readonly reason: string;
|
|
78
|
+
constructor(runId: RunId, message: string, context?: Function);
|
|
79
|
+
static invalidParent(this: void, runId: RunId, message: string): never;
|
|
80
|
+
static create(this: void, runId: RunId, message: string): WorkflowRunParentError;
|
|
81
|
+
}
|
|
82
|
+
/** Error thrown for run deadline exceeded failures. */
|
|
83
|
+
declare class WorkflowRunDeadlineExceededError extends WorkflowRunError {
|
|
84
|
+
readonly runId: RunId;
|
|
85
|
+
readonly deadlineAt: Temporal.Instant;
|
|
86
|
+
constructor(runId: RunId, deadlineAt: Temporal.Instant, context?: Function);
|
|
87
|
+
static deadlineExceeded(this: void, runId: RunId, deadlineAt: Temporal.Instant): never;
|
|
88
|
+
static create(this: void, runId: RunId, deadlineAt: Temporal.Instant): WorkflowRunDeadlineExceededError;
|
|
89
|
+
}
|
|
90
|
+
/** Error thrown for child workflow timeout failures. */
|
|
91
|
+
declare class WorkflowChildWorkflowTimeoutError extends WorkflowRunError {
|
|
92
|
+
readonly runId: RunId;
|
|
93
|
+
readonly childRunId: RunId;
|
|
94
|
+
readonly stepId: StepId;
|
|
95
|
+
readonly timeoutAt: Temporal.Instant;
|
|
96
|
+
constructor(options: {
|
|
97
|
+
readonly runId: RunId;
|
|
98
|
+
readonly childRunId: RunId;
|
|
99
|
+
readonly stepId: StepId;
|
|
100
|
+
readonly timeoutAt: Temporal.Instant;
|
|
101
|
+
}, context?: Function);
|
|
102
|
+
static timedOut(this: void, options: {
|
|
103
|
+
readonly runId: RunId;
|
|
104
|
+
readonly childRunId: RunId;
|
|
105
|
+
readonly stepId: StepId;
|
|
106
|
+
readonly timeoutAt: Temporal.Instant;
|
|
107
|
+
}): never;
|
|
108
|
+
static create(this: void, options: {
|
|
109
|
+
readonly runId: RunId;
|
|
110
|
+
readonly childRunId: RunId;
|
|
111
|
+
readonly stepId: StepId;
|
|
112
|
+
readonly timeoutAt: Temporal.Instant;
|
|
113
|
+
}): WorkflowChildWorkflowTimeoutError;
|
|
114
|
+
}
|
|
115
|
+
//#endregion
|
|
116
|
+
export { WorkflowChildWorkflowTimeoutError, WorkflowResultTimeoutError, WorkflowRunCanceledError, WorkflowRunCancellationError, WorkflowRunDeadlineExceededError, WorkflowRunInvalidError, WorkflowRunMismatchError, WorkflowRunNotFoundError, WorkflowRunParentError, WorkflowRunTransitionError };
|