@temelj/workflow 0.0.0-alpha.3 → 0.0.0-alpha.4
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/README.md +394 -2
- package/dist/attributes.d.mts +11 -9
- package/dist/attributes.mjs +23 -5
- package/dist/bundle.d.mts +5 -23
- package/dist/bundle.mjs +2 -18
- package/dist/client/create.d.mts +26 -23
- package/dist/client/create.mjs +26 -32
- package/dist/client/facades.d.mts +12 -18
- package/dist/client/facades.mjs +102 -93
- package/dist/client/mod.mjs +1 -2
- package/dist/client/run-handle.d.mts +17 -54
- package/dist/client/run-handle.mjs +35 -105
- package/dist/client/worker-options.d.mts +8 -8
- package/dist/client/worker-options.mjs +11 -11
- package/dist/cloudflare/cloudflare.d.mts +4 -5
- package/dist/cloudflare/codec.d.mts +28 -13
- package/dist/cloudflare/codec.mjs +40 -17
- package/dist/cloudflare/entrypoint.d.mts +3 -4
- package/dist/cloudflare/entrypoint.mjs +4 -3
- package/dist/cloudflare/execution.d.mts +3 -4
- package/dist/cloudflare/execution.mjs +20 -13
- package/dist/cloudflare/host.d.mts +6 -7
- package/dist/cloudflare/host.mjs +7 -6
- package/dist/cloudflare/mod.d.mts +4 -4
- package/dist/cloudflare/mod.mjs +2 -2
- package/dist/cloudflare/name.d.mts +3 -4
- package/dist/cloudflare/name.mjs +3 -3
- package/dist/cloudflare/registry.d.mts +3 -23
- package/dist/cloudflare/registry.mjs +2 -20
- package/dist/cloudflare/runtime.d.mts +11 -18
- package/dist/cloudflare/runtime.mjs +52 -73
- package/dist/cloudflare/step.d.mts +6 -6
- package/dist/cloudflare/step.mjs +69 -57
- package/dist/cloudflare/types.d.mts +17 -36
- package/dist/collection.d.mts +8 -11
- package/dist/collection.mjs +10 -14
- package/dist/compiled-function.d.mts +14 -19
- package/dist/compiled-function.mjs +12 -24
- package/dist/compiled.d.mts +4 -0
- package/dist/compiled.mjs +4 -0
- package/dist/compiler/ast.d.mts +26 -0
- package/dist/{vite → compiler}/ast.mjs +24 -16
- package/dist/{vite → compiler}/error.d.mts +4 -6
- package/dist/{vite → compiler}/error.mjs +14 -16
- package/dist/compiler/manifest.d.mts +6 -0
- package/dist/{vite → compiler}/manifest.mjs +9 -7
- package/dist/compiler/plugin.d.mts +7 -0
- package/dist/{vite → compiler}/plugin.mjs +45 -46
- package/dist/compiler/safety.d.mts +12 -0
- package/dist/{vite → compiler}/safety.mjs +5 -11
- package/dist/{vite → compiler}/source-edit.d.mts +3 -4
- package/dist/{vite → compiler}/source-edit.mjs +1 -1
- package/dist/{vite → compiler}/source-map.d.mts +4 -3
- package/dist/{vite → compiler}/source-map.mjs +3 -3
- package/dist/compiler/source.d.mts +7 -0
- package/dist/{vite → compiler}/source.mjs +1 -1
- package/dist/compiler/transform.d.mts +12 -0
- package/dist/{vite → compiler}/transform.mjs +37 -38
- package/dist/definition.d.mts +17 -25
- package/dist/definition.mjs +19 -35
- package/dist/engine/child-workflow.d.mts +5 -9
- package/dist/engine/child-workflow.mjs +46 -67
- package/dist/engine/command-identity.d.mts +5 -6
- package/dist/engine/command-identity.mjs +9 -5
- package/dist/engine/context.d.mts +17 -0
- package/dist/engine/create.d.mts +36 -94
- package/dist/engine/create.mjs +55 -260
- package/dist/engine/deterministic.d.mts +6 -11
- package/dist/engine/deterministic.mjs +47 -68
- package/dist/engine/durable-command.d.mts +5 -5
- package/dist/engine/durable-command.mjs +2 -2
- package/dist/engine/execution-service.d.mts +20 -24
- package/dist/engine/execution-service.mjs +54 -52
- package/dist/engine/hooks.d.mts +17 -39
- package/dist/engine/hooks.mjs +73 -94
- package/dist/engine/inspection.d.mts +23 -15
- package/dist/engine/inspection.mjs +55 -29
- package/dist/engine/lifecycle.d.mts +6 -12
- package/dist/engine/lifecycle.mjs +5 -5
- package/dist/engine/lock-replay.d.mts +8 -15
- package/dist/engine/lock-replay.mjs +12 -25
- package/dist/engine/lock.d.mts +10 -15
- package/dist/engine/lock.mjs +65 -51
- package/dist/engine/message.d.mts +14 -34
- package/dist/engine/message.mjs +94 -127
- package/dist/engine/observation.d.mts +9 -11
- package/dist/engine/observation.mjs +18 -27
- package/dist/engine/replay.d.mts +18 -19
- package/dist/engine/replay.mjs +32 -56
- package/dist/engine/resume.d.mts +16 -0
- package/dist/engine/resume.mjs +24 -0
- package/dist/engine/retry.d.mts +15 -19
- package/dist/engine/retry.mjs +17 -17
- package/dist/engine/run-data.d.mts +4 -8
- package/dist/engine/run-data.mjs +24 -22
- package/dist/engine/run-service.d.mts +24 -33
- package/dist/engine/run-service.mjs +125 -93
- package/dist/engine/run-utils.d.mts +11 -13
- package/dist/engine/run-utils.mjs +23 -46
- package/dist/engine/schedule.d.mts +8 -22
- package/dist/engine/schedule.mjs +37 -34
- package/dist/engine/serialization.d.mts +9 -6
- package/dist/engine/serialization.mjs +30 -21
- package/dist/engine/signals.d.mts +23 -0
- package/dist/engine/signals.mjs +41 -0
- package/dist/engine/start.d.mts +18 -0
- package/dist/engine/start.mjs +88 -0
- package/dist/engine/state.d.mts +37 -67
- package/dist/engine/state.mjs +119 -280
- package/dist/engine/step-api.d.mts +5 -8
- package/dist/engine/step-api.mjs +16 -16
- package/dist/engine/stream-reader.d.mts +12 -0
- package/dist/engine/stream-reader.mjs +154 -0
- package/dist/engine/stream.d.mts +9 -54
- package/dist/engine/stream.mjs +54 -196
- package/dist/engine/summary/recovery.d.mts +35 -0
- package/dist/engine/summary/recovery.mjs +363 -0
- package/dist/engine/summary/runs.d.mts +43 -0
- package/dist/engine/summary/runs.mjs +294 -0
- package/dist/engine/summary/step-attempts.d.mts +5 -10
- package/dist/engine/summary/step-attempts.mjs +157 -36
- package/dist/engine/summary/tally.d.mts +44 -0
- package/dist/engine/summary/tally.mjs +142 -0
- package/dist/engine/task.d.mts +4 -5
- package/dist/engine/task.mjs +40 -48
- package/dist/errors/base.d.mts +17 -77
- package/dist/errors/base.mjs +26 -327
- package/dist/errors/capability.d.mts +3 -6
- package/dist/errors/capability.mjs +4 -8
- package/dist/errors/codes.d.mts +116 -0
- package/dist/{types/error-code.mjs → errors/codes.mjs} +2 -17
- package/dist/errors/definition.d.mts +3 -17
- package/dist/errors/definition.mjs +5 -42
- package/dist/errors/failures.d.mts +17 -51
- package/dist/errors/failures.mjs +35 -102
- package/dist/errors/hook.d.mts +5 -9
- package/dist/errors/hook.mjs +4 -16
- package/dist/errors/implementation.d.mts +3 -6
- package/dist/errors/implementation.mjs +7 -12
- package/dist/errors/lock.d.mts +7 -20
- package/dist/errors/lock.mjs +8 -44
- package/dist/errors/message.d.mts +14 -59
- package/dist/errors/message.mjs +13 -39
- package/dist/errors/mod.d.mts +4 -5
- package/dist/errors/mod.mjs +5 -7
- package/dist/errors/records.d.mts +10 -4
- package/dist/errors/records.mjs +256 -256
- package/dist/errors/run.d.mts +27 -68
- package/dist/errors/run.mjs +31 -85
- package/dist/errors/schedule.d.mts +7 -18
- package/dist/errors/schedule.mjs +7 -39
- package/dist/errors/step.d.mts +12 -45
- package/dist/errors/step.mjs +13 -34
- package/dist/errors/stream.d.mts +8 -16
- package/dist/errors/stream.mjs +7 -41
- package/dist/esbuild.d.mts +6 -4
- package/dist/esbuild.mjs +2 -1
- package/dist/events/descriptors.d.mts +12 -241
- package/dist/events/descriptors.mjs +12 -5
- package/dist/history/projection.d.mts +4 -6
- package/dist/history/projection.mjs +22 -26
- package/dist/history/replay-projection.d.mts +44 -48
- package/dist/history/replay-projection.mjs +41 -50
- package/dist/history/{mod.d.mts → replay.d.mts} +16 -21
- package/dist/history/{mod.mjs → replay.mjs} +21 -25
- package/dist/history/sequencer.d.mts +10 -11
- package/dist/history/sequencer.mjs +11 -7
- package/dist/history/step-attempts.d.mts +4 -7
- package/dist/history/step-attempts.mjs +8 -9
- package/dist/history/timeline.d.mts +4 -13
- package/dist/history/timeline.mjs +46 -265
- package/dist/history/validator.d.mts +5 -7
- package/dist/history/validator.mjs +9 -24
- package/dist/hook-token.d.mts +7 -0
- package/dist/hook-token.mjs +32 -0
- package/dist/ids.d.mts +8 -0
- package/dist/ids.mjs +21 -0
- package/dist/message-options.d.mts +11 -5
- package/dist/message-options.mjs +9 -7
- package/dist/mod.d.mts +32 -36
- package/dist/mod.mjs +9 -13
- package/dist/otel/metrics.d.mts +31 -0
- package/dist/otel/metrics.mjs +60 -0
- package/dist/otel/mod.d.mts +3 -0
- package/dist/otel/mod.mjs +3 -0
- package/dist/otel/spans.d.mts +24 -0
- package/dist/otel/spans.mjs +218 -0
- package/dist/otel/support.d.mts +15 -8
- package/dist/otel/support.mjs +18 -40
- package/dist/{otel.d.mts → otel/telemetry.d.mts} +5 -6
- package/dist/otel/telemetry.mjs +305 -0
- package/dist/pagination.d.mts +6 -12
- package/dist/pagination.mjs +10 -14
- package/dist/registry.d.mts +8 -5
- package/dist/registry.mjs +19 -10
- package/dist/rolldown.d.mts +6 -4
- package/dist/rolldown.mjs +2 -1
- package/dist/rollup.d.mts +6 -4
- package/dist/rollup.mjs +2 -1
- package/dist/rspack.d.mts +6 -4
- package/dist/rspack.mjs +2 -1
- package/dist/run-status.d.mts +29 -0
- package/dist/run-status.mjs +42 -0
- package/dist/schema/common.d.mts +22 -0
- package/dist/schema/common.mjs +54 -0
- package/dist/schema/error.d.mts +17 -0
- package/dist/schema/error.mjs +39 -0
- package/dist/schema/events.d.mts +446 -0
- package/dist/schema/events.mjs +235 -0
- package/dist/schema/pagination.d.mts +5 -0
- package/dist/schema/pagination.mjs +11 -0
- package/dist/schema/persisted-value.d.mts +8 -0
- package/dist/schema/persisted-value.mjs +94 -0
- package/dist/schema/run.d.mts +51 -0
- package/dist/schema/run.mjs +88 -0
- package/dist/schema/store.d.mts +94 -0
- package/dist/schema/store.mjs +116 -0
- package/dist/step-definition.d.mts +4 -9
- package/dist/step-definition.mjs +2 -2
- package/dist/store/capabilities.d.mts +8 -9
- package/dist/store/capabilities.mjs +7 -7
- package/dist/store/cleanup.d.mts +9 -14
- package/dist/store/cleanup.mjs +86 -85
- package/dist/store/create.d.mts +28 -29
- package/dist/store/create.mjs +10 -11
- package/dist/store/events.d.mts +48 -0
- package/dist/store/events.mjs +263 -0
- package/dist/store/indexes.d.mts +25 -0
- package/dist/store/indexes.mjs +282 -0
- package/dist/store/instrumentation.d.mts +2 -3
- package/dist/store/instrumentation.mjs +30 -30
- package/dist/store/lock.d.mts +4 -5
- package/dist/store/lock.mjs +5 -7
- package/dist/store/materialization.d.mts +10 -17
- package/dist/store/materialization.mjs +39 -33
- package/dist/store/mod.d.mts +3 -3
- package/dist/store/mod.mjs +2 -2
- package/dist/store/query.d.mts +13 -17
- package/dist/store/query.mjs +13 -13
- package/dist/store/run.d.mts +25 -34
- package/dist/store/run.mjs +67 -108
- package/dist/store/schedule.d.mts +6 -8
- package/dist/store/schedule.mjs +11 -11
- package/dist/store/step-attempt.d.mts +9 -12
- package/dist/store/step-attempt.mjs +9 -9
- package/dist/store/storage-value.d.mts +3 -3
- package/dist/store/storage-value.mjs +17 -1
- package/dist/store/validation.d.mts +17 -20
- package/dist/store/validation.mjs +30 -33
- package/dist/store-keys.d.mts +35 -47
- package/dist/store-keys.mjs +9 -17
- package/dist/telemetry.d.mts +16 -16
- package/dist/telemetry.mjs +3 -3
- package/dist/temporal.d.mts +11 -16
- package/dist/temporal.mjs +8 -9
- package/dist/timer.d.mts +12 -10
- package/dist/timer.mjs +11 -3
- package/dist/types/cleanup.d.mts +13 -50
- package/dist/types/cleanup.mjs +1 -22
- package/dist/types/client.d.mts +101 -162
- package/dist/types/{vite.d.mts → compiler.d.mts} +17 -24
- package/dist/types/compiler.mjs +1 -0
- package/dist/types/definition.d.mts +22 -34
- package/dist/types/engine-options.d.mts +10 -17
- package/dist/types/engine.d.mts +15 -274
- package/dist/types/error.d.mts +15 -217
- package/dist/types/error.mjs +1 -48
- package/dist/types/events.d.mts +59 -2730
- package/dist/types/events.mjs +1 -283
- package/dist/types/hook.d.mts +27 -85
- package/dist/types/hook.mjs +1 -66
- package/dist/types/ids.d.mts +9 -0
- package/dist/types/ids.mjs +1 -0
- package/dist/types/lock.d.mts +8 -26
- package/dist/types/lock.mjs +1 -18
- package/dist/types/message.d.mts +29 -43
- package/dist/types/observation.d.mts +43 -58
- package/dist/types/pagination.d.mts +6 -22
- package/dist/types/pagination.mjs +1 -13
- package/dist/types/result.d.mts +11 -43
- package/dist/types/retry.d.mts +7 -14
- package/dist/types/run-list.d.mts +9 -11
- package/dist/types/run-options.d.mts +25 -32
- package/dist/types/run.d.mts +35 -315
- package/dist/types/run.mjs +1 -207
- package/dist/types/runtime.d.mts +33 -145
- package/dist/types/runtime.mjs +1 -21
- package/dist/types/schedule.d.mts +13 -72
- package/dist/types/schedule.mjs +1 -48
- package/dist/types/step-attempts.d.mts +65 -261
- package/dist/types/step-attempts.mjs +1 -43
- package/dist/types/step.d.mts +66 -77
- package/dist/types/step.mjs +1 -5
- package/dist/types/store.d.mts +50 -182
- package/dist/types/stream.d.mts +19 -40
- package/dist/types/summary.d.mts +174 -278
- package/dist/types/telemetry.d.mts +23 -28
- package/dist/types/telemetry.mjs +1 -9
- package/dist/types/timeline.d.mts +46 -233
- package/dist/types/worker.d.mts +22 -29
- package/dist/values.d.mts +15 -0
- package/dist/values.mjs +57 -0
- package/dist/vite.d.mts +5 -6
- package/dist/vite.mjs +3 -4
- package/dist/webpack.d.mts +6 -4
- package/dist/webpack.mjs +2 -1
- package/dist/worker/error.d.mts +2 -9
- package/dist/worker/error.mjs +20 -32
- package/dist/worker/missing-implementation.d.mts +19 -0
- package/dist/worker/missing-implementation.mjs +62 -0
- package/dist/worker/worker.d.mts +18 -0
- package/dist/{worker.mjs → worker/worker.mjs} +64 -118
- package/package.json +28 -47
- package/dist/engine/execution-api.d.mts +0 -29
- package/dist/engine/execution-api.mjs +0 -33
- package/dist/engine/inspection-api.d.mts +0 -34
- package/dist/engine/inspection-api.mjs +0 -78
- package/dist/engine/mod.d.mts +0 -4
- package/dist/engine/mod.mjs +0 -2
- package/dist/engine/recovery.d.mts +0 -26
- package/dist/engine/recovery.mjs +0 -92
- package/dist/engine/retry-policy.d.mts +0 -4
- package/dist/engine/retry-policy.mjs +0 -4
- package/dist/engine/start-api.d.mts +0 -30
- package/dist/engine/start-api.mjs +0 -99
- package/dist/engine/summary/active-events.d.mts +0 -34
- package/dist/engine/summary/active-events.mjs +0 -69
- package/dist/engine/summary/child-workflow-runs.d.mts +0 -24
- package/dist/engine/summary/child-workflow-runs.mjs +0 -138
- package/dist/engine/summary/child-workflow-waits.d.mts +0 -21
- package/dist/engine/summary/child-workflow-waits.mjs +0 -67
- package/dist/engine/summary/recovery-child-workflow-waits.d.mts +0 -11
- package/dist/engine/summary/recovery-child-workflow-waits.mjs +0 -89
- package/dist/engine/summary/recovery-due-runs.d.mts +0 -16
- package/dist/engine/summary/recovery-due-runs.mjs +0 -52
- package/dist/engine/summary/recovery-failed-runs.d.mts +0 -14
- package/dist/engine/summary/recovery-failed-runs.mjs +0 -33
- package/dist/engine/summary/recovery-lease-runs.d.mts +0 -16
- package/dist/engine/summary/recovery-lease-runs.mjs +0 -69
- package/dist/engine/summary/recovery-locks.d.mts +0 -18
- package/dist/engine/summary/recovery-locks.mjs +0 -100
- package/dist/engine/summary/recovery-message-waits.d.mts +0 -11
- package/dist/engine/summary/recovery-message-waits.mjs +0 -74
- package/dist/engine/summary/recovery-retry-runs.d.mts +0 -17
- package/dist/engine/summary/recovery-retry-runs.mjs +0 -65
- package/dist/engine/summary/recovery-run-timestamps.d.mts +0 -13
- package/dist/engine/summary/recovery-run-timestamps.mjs +0 -18
- package/dist/engine/summary/recovery-runs.d.mts +0 -23
- package/dist/engine/summary/recovery-runs.mjs +0 -54
- package/dist/engine/summary/recovery-schedules.d.mts +0 -10
- package/dist/engine/summary/recovery-schedules.mjs +0 -46
- package/dist/engine/summary/recovery-sleep-waits.d.mts +0 -10
- package/dist/engine/summary/recovery-sleep-waits.mjs +0 -53
- package/dist/engine/summary/recovery-waits.d.mts +0 -21
- package/dist/engine/summary/recovery-waits.mjs +0 -29
- package/dist/engine/summary/run-availability.d.mts +0 -13
- package/dist/engine/summary/run-availability.mjs +0 -37
- package/dist/engine/summary/run-cleanup.d.mts +0 -14
- package/dist/engine/summary/run-cleanup.mjs +0 -44
- package/dist/engine/summary/run-failure.d.mts +0 -14
- package/dist/engine/summary/run-failure.mjs +0 -62
- package/dist/engine/summary/run-hooks.d.mts +0 -14
- package/dist/engine/summary/run-hooks.mjs +0 -63
- package/dist/engine/summary/run-lease.d.mts +0 -11
- package/dist/engine/summary/run-lease.mjs +0 -64
- package/dist/engine/summary/run-message-waits.d.mts +0 -15
- package/dist/engine/summary/run-message-waits.mjs +0 -62
- package/dist/engine/summary/run-metrics.d.mts +0 -31
- package/dist/engine/summary/run-metrics.mjs +0 -93
- package/dist/engine/summary/run-retry.d.mts +0 -9
- package/dist/engine/summary/run-retry.mjs +0 -69
- package/dist/engine/summary/run-sleeps.d.mts +0 -15
- package/dist/engine/summary/run-sleeps.mjs +0 -61
- package/dist/engine/summary/run-state.d.mts +0 -26
- package/dist/engine/summary/run-state.mjs +0 -48
- package/dist/engine/summary/run-status.d.mts +0 -16
- package/dist/engine/summary/run-status.mjs +0 -35
- package/dist/engine/summary/run-streams.d.mts +0 -14
- package/dist/engine/summary/run-streams.mjs +0 -46
- package/dist/engine/summary/run-transition.d.mts +0 -9
- package/dist/engine/summary/run-transition.mjs +0 -39
- package/dist/engine/summary/run-workflow.d.mts +0 -9
- package/dist/engine/summary/run-workflow.mjs +0 -47
- package/dist/engine/summary/step-attempt-active-child-workflows.d.mts +0 -13
- package/dist/engine/summary/step-attempt-active-child-workflows.mjs +0 -55
- package/dist/engine/summary/step-attempt-active-fields.d.mts +0 -23
- package/dist/engine/summary/step-attempt-active-fields.mjs +0 -14
- package/dist/engine/summary/step-attempt-active-message-waits.d.mts +0 -12
- package/dist/engine/summary/step-attempt-active-message-waits.mjs +0 -47
- package/dist/engine/summary/step-attempt-active-sleeps.d.mts +0 -19
- package/dist/engine/summary/step-attempt-active-sleeps.mjs +0 -44
- package/dist/engine/summary/step-attempt-buckets.d.mts +0 -22
- package/dist/engine/summary/step-attempt-buckets.mjs +0 -152
- package/dist/engine/summary/step-attempt-failure.d.mts +0 -12
- package/dist/engine/summary/step-attempt-failure.mjs +0 -61
- package/dist/engine/summary/step-attempt-lifecycle.d.mts +0 -13
- package/dist/engine/summary/step-attempt-lifecycle.mjs +0 -19
- package/dist/engine/summary.d.mts +0 -32
- package/dist/engine/summary.mjs +0 -37
- package/dist/errors/details.d.mts +0 -13
- package/dist/errors/details.mjs +0 -66
- package/dist/errors/record-view.d.mts +0 -11
- package/dist/errors/record-view.mjs +0 -24
- package/dist/errors/runtime.d.mts +0 -12
- package/dist/errors/runtime.mjs +0 -24
- package/dist/events/mod.d.mts +0 -3
- package/dist/events/mod.mjs +0 -2
- package/dist/history/attempt-key.d.mts +0 -6
- package/dist/history/attempt-key.mjs +0 -7
- package/dist/inspection/mod.d.mts +0 -5
- package/dist/inspection/mod.mjs +0 -3
- package/dist/otel.mjs +0 -590
- package/dist/runtime.d.mts +0 -35
- package/dist/runtime.mjs +0 -198
- package/dist/store/append-projection.d.mts +0 -15
- package/dist/store/append-projection.mjs +0 -26
- package/dist/store/compaction.d.mts +0 -5
- package/dist/store/compaction.mjs +0 -8
- package/dist/store/event-append-project.d.mts +0 -15
- package/dist/store/event-append-project.mjs +0 -77
- package/dist/store/event-append.d.mts +0 -37
- package/dist/store/event-append.mjs +0 -80
- package/dist/store/event-history.d.mts +0 -22
- package/dist/store/event-history.mjs +0 -75
- package/dist/store/event.d.mts +0 -10
- package/dist/store/event.mjs +0 -28
- package/dist/store/idempotency.d.mts +0 -10
- package/dist/store/idempotency.mjs +0 -167
- package/dist/store/message-index.d.mts +0 -21
- package/dist/store/message-index.mjs +0 -122
- package/dist/store/revision.d.mts +0 -4
- package/dist/store/revision.mjs +0 -7
- package/dist/store/schema.d.mts +0 -14
- package/dist/store/schema.mjs +0 -17
- package/dist/types/common.d.mts +0 -20
- package/dist/types/common.mjs +0 -16
- package/dist/types/error-code.d.mts +0 -256
- package/dist/types/message-id.d.mts +0 -7
- package/dist/types/message-id.mjs +0 -5
- package/dist/types/run-id.d.mts +0 -7
- package/dist/types/run-id.mjs +0 -5
- package/dist/types/step-id.d.mts +0 -7
- package/dist/types/step-id.mjs +0 -5
- package/dist/types/stream-id.d.mts +0 -7
- package/dist/types/stream-id.mjs +0 -5
- package/dist/types/worker-id.d.mts +0 -7
- package/dist/types/worker-id.mjs +0 -5
- package/dist/utility.d.mts +0 -49
- package/dist/utility.mjs +0 -122
- package/dist/vite/ast.d.mts +0 -23
- package/dist/vite/generated-name.d.mts +0 -7
- package/dist/vite/generated-name.mjs +0 -9
- package/dist/vite/manifest.d.mts +0 -7
- package/dist/vite/plugin.d.mts +0 -7
- package/dist/vite/safety.d.mts +0 -12
- package/dist/vite/source.d.mts +0 -7
- package/dist/vite/transform.d.mts +0 -7
- package/dist/webhook.d.mts +0 -16
- package/dist/webhook.mjs +0 -17
- package/dist/worker.d.mts +0 -19
- /package/dist/{types/vite.mjs → engine/context.mjs} +0 -0
|
@@ -0,0 +1,235 @@
|
|
|
1
|
+
import { discriminated, idSchema, nonBlankStringListSchema, nonBlankStringSchema, nonNegativeSafeIntegerSchema, positiveSafeIntegerSchema, telemetryContextSchema, temporalInstantSchema, temporalNonNegativeDurationSchema } from "./common.mjs";
|
|
2
|
+
import { attributeValueSchema } from "../attributes.mjs";
|
|
3
|
+
import { errorRecordSchema } from "./error.mjs";
|
|
4
|
+
import { persistedValueSchema } from "./persisted-value.mjs";
|
|
5
|
+
import { childWorkflowCancellationPolicySchema } from "./run.mjs";
|
|
6
|
+
import { ss } from "@temelj/standard-schema";
|
|
7
|
+
//#region src/schema/events.ts
|
|
8
|
+
const messageWaitSourceSchema = ss.picklist(["hook", "webhook"]);
|
|
9
|
+
const eventAttributesSchema = ss.record(attributeValueSchema);
|
|
10
|
+
const eventBaseFields = { timestamp: temporalInstantSchema };
|
|
11
|
+
const stepIdentityFields = {
|
|
12
|
+
stepId: idSchema,
|
|
13
|
+
stepName: nonBlankStringSchema
|
|
14
|
+
};
|
|
15
|
+
const countFields = { count: positiveSafeIntegerSchema };
|
|
16
|
+
const attemptFields = { attempt: positiveSafeIntegerSchema };
|
|
17
|
+
const messageWaiterStepIdsSchema = ss.refine(nonBlankStringListSchema, (items) => new Set(items).size === items.length, "Expected unique step ids");
|
|
18
|
+
const startedEventSchema = ss.object({
|
|
19
|
+
...eventBaseFields,
|
|
20
|
+
kind: ss.literal("workflow_started")
|
|
21
|
+
});
|
|
22
|
+
const completedEventSchema = ss.object({
|
|
23
|
+
...eventBaseFields,
|
|
24
|
+
kind: ss.literal("workflow_completed")
|
|
25
|
+
});
|
|
26
|
+
const failedEventSchema = ss.object({
|
|
27
|
+
...eventBaseFields,
|
|
28
|
+
kind: ss.literal("workflow_failed")
|
|
29
|
+
});
|
|
30
|
+
const stepStartedEventSchema = ss.object({
|
|
31
|
+
...eventBaseFields,
|
|
32
|
+
...stepIdentityFields,
|
|
33
|
+
...countFields,
|
|
34
|
+
...attemptFields,
|
|
35
|
+
kind: ss.literal("step_started"),
|
|
36
|
+
timeoutAt: ss.optional(temporalInstantSchema)
|
|
37
|
+
});
|
|
38
|
+
const stepCompletedEventSchema = ss.object({
|
|
39
|
+
...eventBaseFields,
|
|
40
|
+
...stepIdentityFields,
|
|
41
|
+
...attemptFields,
|
|
42
|
+
kind: ss.literal("step_completed"),
|
|
43
|
+
result: ss.optional(persistedValueSchema)
|
|
44
|
+
});
|
|
45
|
+
const stepFailedEventSchema = ss.object({
|
|
46
|
+
...eventBaseFields,
|
|
47
|
+
...stepIdentityFields,
|
|
48
|
+
...attemptFields,
|
|
49
|
+
kind: ss.literal("step_failed"),
|
|
50
|
+
error: errorRecordSchema
|
|
51
|
+
});
|
|
52
|
+
const sleepStartedEventSchema = ss.object({
|
|
53
|
+
...eventBaseFields,
|
|
54
|
+
...stepIdentityFields,
|
|
55
|
+
...countFields,
|
|
56
|
+
kind: ss.literal("sleep_started"),
|
|
57
|
+
until: temporalInstantSchema,
|
|
58
|
+
duration: ss.optional(temporalNonNegativeDurationSchema)
|
|
59
|
+
});
|
|
60
|
+
const sleepCompletedEventSchema = ss.object({
|
|
61
|
+
...eventBaseFields,
|
|
62
|
+
...stepIdentityFields,
|
|
63
|
+
kind: ss.literal("sleep_completed")
|
|
64
|
+
});
|
|
65
|
+
const childWorkflowStartedEventSchema = ss.object({
|
|
66
|
+
...eventBaseFields,
|
|
67
|
+
...stepIdentityFields,
|
|
68
|
+
...countFields,
|
|
69
|
+
...attemptFields,
|
|
70
|
+
kind: ss.literal("child_workflow_started"),
|
|
71
|
+
childRunId: idSchema,
|
|
72
|
+
workflowName: nonBlankStringSchema,
|
|
73
|
+
workflowVersion: ss.optional(nonBlankStringSchema),
|
|
74
|
+
cancellation: ss.optional(childWorkflowCancellationPolicySchema),
|
|
75
|
+
input: ss.optional(persistedValueSchema),
|
|
76
|
+
idempotencyKey: ss.optional(nonBlankStringSchema),
|
|
77
|
+
timeoutAt: ss.optional(temporalInstantSchema)
|
|
78
|
+
});
|
|
79
|
+
const childWorkflowCompletedEventSchema = ss.object({
|
|
80
|
+
...eventBaseFields,
|
|
81
|
+
...stepIdentityFields,
|
|
82
|
+
...attemptFields,
|
|
83
|
+
kind: ss.literal("child_workflow_completed"),
|
|
84
|
+
childRunId: idSchema,
|
|
85
|
+
result: ss.optional(persistedValueSchema)
|
|
86
|
+
});
|
|
87
|
+
const childWorkflowFailedEventSchema = ss.object({
|
|
88
|
+
...eventBaseFields,
|
|
89
|
+
...stepIdentityFields,
|
|
90
|
+
...attemptFields,
|
|
91
|
+
kind: ss.literal("child_workflow_failed"),
|
|
92
|
+
childRunId: idSchema,
|
|
93
|
+
error: errorRecordSchema
|
|
94
|
+
});
|
|
95
|
+
const messageSentEventSchema = ss.object({
|
|
96
|
+
...eventBaseFields,
|
|
97
|
+
kind: ss.literal("message_sent"),
|
|
98
|
+
messageId: idSchema,
|
|
99
|
+
payload: ss.optional(persistedValueSchema),
|
|
100
|
+
waiterStepIds: ss.optional(messageWaiterStepIdsSchema),
|
|
101
|
+
idempotencyKey: ss.optional(nonBlankStringSchema),
|
|
102
|
+
telemetryContext: ss.optional(telemetryContextSchema)
|
|
103
|
+
});
|
|
104
|
+
const messageSendStartedEventSchema = ss.object({
|
|
105
|
+
...eventBaseFields,
|
|
106
|
+
...stepIdentityFields,
|
|
107
|
+
...countFields,
|
|
108
|
+
kind: ss.literal("message_send_started"),
|
|
109
|
+
targetRunId: idSchema,
|
|
110
|
+
messageId: idSchema,
|
|
111
|
+
payload: ss.optional(persistedValueSchema),
|
|
112
|
+
idempotencyKey: ss.optional(nonBlankStringSchema)
|
|
113
|
+
});
|
|
114
|
+
const messageSendCompletedEventSchema = ss.object({
|
|
115
|
+
...eventBaseFields,
|
|
116
|
+
...stepIdentityFields,
|
|
117
|
+
kind: ss.literal("message_send_completed"),
|
|
118
|
+
targetRunId: idSchema,
|
|
119
|
+
messageId: idSchema
|
|
120
|
+
});
|
|
121
|
+
const messageSendFailedEventSchema = ss.object({
|
|
122
|
+
...eventBaseFields,
|
|
123
|
+
...stepIdentityFields,
|
|
124
|
+
kind: ss.literal("message_send_failed"),
|
|
125
|
+
targetRunId: idSchema,
|
|
126
|
+
messageId: idSchema,
|
|
127
|
+
error: errorRecordSchema
|
|
128
|
+
});
|
|
129
|
+
const messageWaitStartedEventSchema = ss.object({
|
|
130
|
+
...eventBaseFields,
|
|
131
|
+
...stepIdentityFields,
|
|
132
|
+
...countFields,
|
|
133
|
+
kind: ss.literal("message_wait_started"),
|
|
134
|
+
messageId: idSchema,
|
|
135
|
+
source: ss.optional(messageWaitSourceSchema),
|
|
136
|
+
timeoutAt: ss.optional(temporalInstantSchema)
|
|
137
|
+
});
|
|
138
|
+
const messageWaitCompletedEventSchema = ss.object({
|
|
139
|
+
...eventBaseFields,
|
|
140
|
+
...stepIdentityFields,
|
|
141
|
+
kind: ss.literal("message_wait_completed"),
|
|
142
|
+
messageId: idSchema,
|
|
143
|
+
payload: ss.optional(persistedValueSchema),
|
|
144
|
+
messageTimestamp: temporalInstantSchema,
|
|
145
|
+
telemetryContext: ss.optional(telemetryContextSchema)
|
|
146
|
+
});
|
|
147
|
+
const messageWaitFailedEventSchema = ss.object({
|
|
148
|
+
...eventBaseFields,
|
|
149
|
+
...stepIdentityFields,
|
|
150
|
+
kind: ss.literal("message_wait_failed"),
|
|
151
|
+
messageId: idSchema,
|
|
152
|
+
error: errorRecordSchema
|
|
153
|
+
});
|
|
154
|
+
const metadataSetEventSchema = ss.object({
|
|
155
|
+
...eventBaseFields,
|
|
156
|
+
...stepIdentityFields,
|
|
157
|
+
...countFields,
|
|
158
|
+
kind: ss.literal("metadata_set"),
|
|
159
|
+
metadata: persistedValueSchema
|
|
160
|
+
});
|
|
161
|
+
const attributesSetEventSchema = ss.object({
|
|
162
|
+
...eventBaseFields,
|
|
163
|
+
...stepIdentityFields,
|
|
164
|
+
...countFields,
|
|
165
|
+
kind: ss.literal("attributes_set"),
|
|
166
|
+
attributes: ss.optional(eventAttributesSchema),
|
|
167
|
+
removeAttributes: ss.optional(ss.array(nonBlankStringSchema))
|
|
168
|
+
});
|
|
169
|
+
const streamStartedEventSchema = ss.object({
|
|
170
|
+
...eventBaseFields,
|
|
171
|
+
...stepIdentityFields,
|
|
172
|
+
...countFields,
|
|
173
|
+
kind: ss.literal("stream_started"),
|
|
174
|
+
streamId: idSchema,
|
|
175
|
+
contentType: ss.optional(nonBlankStringSchema),
|
|
176
|
+
metadata: ss.optional(persistedValueSchema)
|
|
177
|
+
});
|
|
178
|
+
const streamChunkEventSchema = ss.object({
|
|
179
|
+
...eventBaseFields,
|
|
180
|
+
...stepIdentityFields,
|
|
181
|
+
kind: ss.literal("stream_chunk"),
|
|
182
|
+
streamId: idSchema,
|
|
183
|
+
index: nonNegativeSafeIntegerSchema,
|
|
184
|
+
chunk: ss.optional(persistedValueSchema)
|
|
185
|
+
});
|
|
186
|
+
const streamClosedEventSchema = ss.object({
|
|
187
|
+
...eventBaseFields,
|
|
188
|
+
...stepIdentityFields,
|
|
189
|
+
kind: ss.literal("stream_closed"),
|
|
190
|
+
streamId: idSchema
|
|
191
|
+
});
|
|
192
|
+
const streamFailedEventSchema = ss.object({
|
|
193
|
+
...eventBaseFields,
|
|
194
|
+
...stepIdentityFields,
|
|
195
|
+
kind: ss.literal("stream_failed"),
|
|
196
|
+
streamId: idSchema,
|
|
197
|
+
error: errorRecordSchema
|
|
198
|
+
});
|
|
199
|
+
const deterministicValueRecordedEventSchema = ss.object({
|
|
200
|
+
...eventBaseFields,
|
|
201
|
+
...stepIdentityFields,
|
|
202
|
+
...countFields,
|
|
203
|
+
kind: ss.literal("deterministic_value_recorded"),
|
|
204
|
+
value: persistedValueSchema
|
|
205
|
+
});
|
|
206
|
+
const eventRecordSchema = discriminated("kind", {
|
|
207
|
+
workflow_started: startedEventSchema,
|
|
208
|
+
workflow_completed: completedEventSchema,
|
|
209
|
+
workflow_failed: failedEventSchema,
|
|
210
|
+
step_started: stepStartedEventSchema,
|
|
211
|
+
step_completed: stepCompletedEventSchema,
|
|
212
|
+
step_failed: stepFailedEventSchema,
|
|
213
|
+
sleep_started: sleepStartedEventSchema,
|
|
214
|
+
sleep_completed: sleepCompletedEventSchema,
|
|
215
|
+
child_workflow_started: childWorkflowStartedEventSchema,
|
|
216
|
+
child_workflow_completed: childWorkflowCompletedEventSchema,
|
|
217
|
+
child_workflow_failed: childWorkflowFailedEventSchema,
|
|
218
|
+
message_sent: messageSentEventSchema,
|
|
219
|
+
message_send_started: messageSendStartedEventSchema,
|
|
220
|
+
message_send_completed: messageSendCompletedEventSchema,
|
|
221
|
+
message_send_failed: messageSendFailedEventSchema,
|
|
222
|
+
message_wait_started: messageWaitStartedEventSchema,
|
|
223
|
+
message_wait_completed: messageWaitCompletedEventSchema,
|
|
224
|
+
message_wait_failed: messageWaitFailedEventSchema,
|
|
225
|
+
metadata_set: metadataSetEventSchema,
|
|
226
|
+
attributes_set: attributesSetEventSchema,
|
|
227
|
+
stream_started: streamStartedEventSchema,
|
|
228
|
+
stream_chunk: streamChunkEventSchema,
|
|
229
|
+
stream_closed: streamClosedEventSchema,
|
|
230
|
+
stream_failed: streamFailedEventSchema,
|
|
231
|
+
deterministic_value_recorded: deterministicValueRecordedEventSchema
|
|
232
|
+
}, "Unsupported workflow event kind");
|
|
233
|
+
const eventRecordListSchema = ss.array(eventRecordSchema);
|
|
234
|
+
//#endregion
|
|
235
|
+
export { eventRecordListSchema, eventRecordSchema };
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
//#region src/schema/pagination.d.ts
|
|
2
|
+
export declare const cursorPayloadSchema: import("@temelj/standard-schema").Schema<unknown, import("@temelj/standard-schema").ObjectOutput<{
|
|
3
|
+
key: import("@temelj/standard-schema").Schema<unknown, (string | number | boolean | null)[]>;
|
|
4
|
+
}>>;
|
|
5
|
+
//#endregion
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ss } from "@temelj/standard-schema";
|
|
2
|
+
//#region src/schema/pagination.ts
|
|
3
|
+
const cursorKeyPartSchema = ss.union([
|
|
4
|
+
ss.string(),
|
|
5
|
+
ss.number(),
|
|
6
|
+
ss.boolean(),
|
|
7
|
+
ss.literal(null)
|
|
8
|
+
]);
|
|
9
|
+
const cursorPayloadSchema = ss.object({ key: ss.refine(ss.array(cursorKeyPartSchema), (key) => key.length > 0, "Expected a cursor key") });
|
|
10
|
+
//#endregion
|
|
11
|
+
export { cursorPayloadSchema };
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ValueIssue } from "../types/run.mjs";
|
|
2
|
+
import { Schema } from "@temelj/standard-schema";
|
|
3
|
+
import { StorageValue } from "@temelj/storage";
|
|
4
|
+
//#region src/schema/persisted-value.d.ts
|
|
5
|
+
export declare const persistedValueSchema: Schema<unknown, StorageValue>;
|
|
6
|
+
/** Returns the first persistence validation issue for a workflow value, if one exists. */
|
|
7
|
+
export declare function persistedValueIssue(value: unknown, path: string, seen: WeakSet<object>, allowUndefined: boolean): ValueIssue | undefined;
|
|
8
|
+
//#endregion
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { ss } from "@temelj/standard-schema";
|
|
2
|
+
import { isBigInt, isBoolean, isFunction, isNumber, isObject, isPlainObject, isString, isSymbol } from "@temelj/value";
|
|
3
|
+
import { isTemporalStorageValue } from "@temelj/storage";
|
|
4
|
+
//#region src/schema/persisted-value.ts
|
|
5
|
+
const persistedValueSchema = ss.schema((value) => {
|
|
6
|
+
const issue = persistedValueIssue(value, "value", /* @__PURE__ */ new WeakSet(), false);
|
|
7
|
+
return issue === void 0 ? ss.success(value) : ss.failure(issue.message);
|
|
8
|
+
});
|
|
9
|
+
/** Returns the first persistence validation issue for a workflow value, if one exists. */
|
|
10
|
+
function persistedValueIssue(value, path, seen, allowUndefined) {
|
|
11
|
+
if (value === void 0) return allowUndefined ? void 0 : unsupportedUndefinedIssue(path);
|
|
12
|
+
if (value === null || isBoolean(value) || isString(value)) return;
|
|
13
|
+
if (isNumber(value)) return Number.isFinite(value) ? void 0 : {
|
|
14
|
+
path,
|
|
15
|
+
message: "number must be finite"
|
|
16
|
+
};
|
|
17
|
+
if (isBigInt(value)) return;
|
|
18
|
+
if (isFunction(value)) return {
|
|
19
|
+
path,
|
|
20
|
+
message: "function values are not supported"
|
|
21
|
+
};
|
|
22
|
+
if (isSymbol(value)) return {
|
|
23
|
+
path,
|
|
24
|
+
message: "symbol values are not supported"
|
|
25
|
+
};
|
|
26
|
+
if (!isObject(value)) return {
|
|
27
|
+
path,
|
|
28
|
+
message: "value type is not supported"
|
|
29
|
+
};
|
|
30
|
+
if (seen.has(value)) return {
|
|
31
|
+
path,
|
|
32
|
+
message: "circular references are not supported"
|
|
33
|
+
};
|
|
34
|
+
if (value instanceof Date) return Number.isFinite(value.getTime()) ? void 0 : {
|
|
35
|
+
path,
|
|
36
|
+
message: "Date must be valid"
|
|
37
|
+
};
|
|
38
|
+
if (isTemporalStorageValue(value) || value instanceof RegExp || value instanceof Uint8Array) return;
|
|
39
|
+
seen.add(value);
|
|
40
|
+
try {
|
|
41
|
+
if (value instanceof Map) return persistedMapIssue(value, path, seen);
|
|
42
|
+
if (value instanceof Set) return persistedSetIssue(value, path, seen);
|
|
43
|
+
if (Array.isArray(value)) return persistedArrayIssue(value, path, seen);
|
|
44
|
+
if (isPlainObject(value)) {
|
|
45
|
+
if (Object.getOwnPropertySymbols(value).some((key) => Object.prototype.propertyIsEnumerable.call(value, key))) return {
|
|
46
|
+
path,
|
|
47
|
+
message: "symbol keys are not supported"
|
|
48
|
+
};
|
|
49
|
+
for (const [key, item] of Object.entries(value)) {
|
|
50
|
+
const issue = persistedValueIssue(item, `${path}.${key}`, seen, false);
|
|
51
|
+
if (issue !== void 0) return issue;
|
|
52
|
+
}
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
return {
|
|
56
|
+
path,
|
|
57
|
+
message: "object type is not supported"
|
|
58
|
+
};
|
|
59
|
+
} finally {
|
|
60
|
+
seen.delete(value);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
function persistedArrayIssue(value, path, seen) {
|
|
64
|
+
for (const [index, item] of value.entries()) {
|
|
65
|
+
const issue = persistedValueIssue(item, `${path}[${index}]`, seen, false);
|
|
66
|
+
if (issue !== void 0) return issue;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
function persistedMapIssue(value, path, seen) {
|
|
70
|
+
let index = 0;
|
|
71
|
+
for (const [key, item] of value) {
|
|
72
|
+
const keyIssue = persistedValueIssue(key, `${path}.<key:${index}>`, seen, false);
|
|
73
|
+
if (keyIssue !== void 0) return keyIssue;
|
|
74
|
+
const itemIssue = persistedValueIssue(item, `${path}.<value:${index}>`, seen, false);
|
|
75
|
+
if (itemIssue !== void 0) return itemIssue;
|
|
76
|
+
index++;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
function persistedSetIssue(value, path, seen) {
|
|
80
|
+
let index = 0;
|
|
81
|
+
for (const item of value) {
|
|
82
|
+
const issue = persistedValueIssue(item, `${path}.<value:${index}>`, seen, false);
|
|
83
|
+
if (issue !== void 0) return issue;
|
|
84
|
+
index++;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
function unsupportedUndefinedIssue(path) {
|
|
88
|
+
return {
|
|
89
|
+
path,
|
|
90
|
+
message: "undefined is not supported here"
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
//#endregion
|
|
94
|
+
export { persistedValueIssue, persistedValueSchema };
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { WorkflowErrorCode } from "../errors/codes.mjs";
|
|
2
|
+
import "../mod.mjs";
|
|
3
|
+
//#region src/schema/run.d.ts
|
|
4
|
+
export declare const terminalRunStatusSchema: import("@temelj/standard-schema").Schema<unknown, "canceled" | "completed" | "failed">;
|
|
5
|
+
export declare const materializedStepTypeSchema: import("@temelj/standard-schema").Schema<unknown, "deterministic" | "message-send" | "message-wait" | "run" | "sleep" | "stream" | "workflow">;
|
|
6
|
+
export declare const runRecordSchema: import("@temelj/standard-schema").Schema<unknown, import("@temelj/standard-schema").ObjectOutput<{
|
|
7
|
+
id: import("@temelj/standard-schema").Schema<unknown, string>;
|
|
8
|
+
namespace: import("@temelj/standard-schema").Schema<unknown, string>;
|
|
9
|
+
workflowName: import("@temelj/standard-schema").Schema<unknown, string>;
|
|
10
|
+
workflowVersion: import("@temelj/standard-schema").Schema<unknown, string | undefined>;
|
|
11
|
+
status: import("@temelj/standard-schema").Schema<unknown, "canceled" | "completed" | "failed" | "pending" | "running" | "waiting">;
|
|
12
|
+
input: import("@temelj/standard-schema").Schema<unknown, import("@temelj/storage").StorageValue | undefined>;
|
|
13
|
+
context: import("@temelj/standard-schema").Schema<unknown, import("@temelj/storage").StorageValue | undefined>;
|
|
14
|
+
telemetryContext: import("@temelj/standard-schema").Schema<unknown, import("@temelj/standard-schema").ObjectOutput<{
|
|
15
|
+
traceparent: import("@temelj/standard-schema").Schema<unknown, string | undefined>;
|
|
16
|
+
tracestate: import("@temelj/standard-schema").Schema<unknown, string | undefined>;
|
|
17
|
+
}> | undefined>;
|
|
18
|
+
metadata: import("@temelj/standard-schema").Schema<unknown, import("@temelj/storage").StorageValue | undefined>;
|
|
19
|
+
attributes: import("@temelj/standard-schema").Schema<unknown, Record<string, string | number | boolean | null> | undefined>;
|
|
20
|
+
output: import("@temelj/standard-schema").Schema<unknown, import("@temelj/storage").StorageValue | undefined>;
|
|
21
|
+
error: import("@temelj/standard-schema").Schema<unknown, import("@temelj/standard-schema").ObjectOutput<{
|
|
22
|
+
code: import("@temelj/standard-schema").Schema<unknown, WorkflowErrorCode | undefined>;
|
|
23
|
+
name: import("@temelj/standard-schema").Schema<unknown, string>;
|
|
24
|
+
message: import("@temelj/standard-schema").Schema<unknown, string>;
|
|
25
|
+
stack: import("@temelj/standard-schema").Schema<unknown, string | undefined>;
|
|
26
|
+
details: import("@temelj/standard-schema").Schema<unknown, Record<string, string | number | boolean | null | undefined> | undefined>;
|
|
27
|
+
}> | undefined>;
|
|
28
|
+
attempts: import("@temelj/standard-schema").Schema<unknown, number | undefined>;
|
|
29
|
+
idempotencyKey: import("@temelj/standard-schema").Schema<unknown, string | undefined>;
|
|
30
|
+
parentRunId: import("@temelj/standard-schema").Schema<unknown, string | undefined>;
|
|
31
|
+
parentStepId: import("@temelj/standard-schema").Schema<unknown, string | undefined>;
|
|
32
|
+
parentStepName: import("@temelj/standard-schema").Schema<unknown, string | undefined>;
|
|
33
|
+
parentStepAttempt: import("@temelj/standard-schema").Schema<unknown, number | undefined>;
|
|
34
|
+
workerId: import("@temelj/standard-schema").Schema<unknown, string | undefined>;
|
|
35
|
+
createdAt: import("@temelj/standard-schema").Schema<unknown, Temporal.Instant>;
|
|
36
|
+
updatedAt: import("@temelj/standard-schema").Schema<unknown, Temporal.Instant>;
|
|
37
|
+
lastTransitionAt: import("@temelj/standard-schema").Schema<unknown, Temporal.Instant>;
|
|
38
|
+
lastTransitionReason: import("@temelj/standard-schema").Schema<unknown, "canceled" | "claimed" | "completed" | "created" | "deadline" | "failed" | "lease_released" | "manual_retry" | "missing_implementation" | "permanent_failure" | "reclaimed" | "rescheduled" | "retry" | "started" | "waiting">;
|
|
39
|
+
availableAt: import("@temelj/standard-schema").Schema<unknown, Temporal.Instant | undefined>;
|
|
40
|
+
retryAt: import("@temelj/standard-schema").Schema<unknown, Temporal.Instant | undefined>;
|
|
41
|
+
retryReason: import("@temelj/standard-schema").Schema<unknown, "missing_implementation" | "step" | "workflow" | undefined>;
|
|
42
|
+
retryAttempt: import("@temelj/standard-schema").Schema<unknown, number | undefined>;
|
|
43
|
+
retryStepId: import("@temelj/standard-schema").Schema<unknown, string | undefined>;
|
|
44
|
+
retryStepName: import("@temelj/standard-schema").Schema<unknown, string | undefined>;
|
|
45
|
+
deadlineAt: import("@temelj/standard-schema").Schema<unknown, Temporal.Instant | undefined>;
|
|
46
|
+
leaseExpiresAt: import("@temelj/standard-schema").Schema<unknown, Temporal.Instant | undefined>;
|
|
47
|
+
startedAt: import("@temelj/standard-schema").Schema<unknown, Temporal.Instant | undefined>;
|
|
48
|
+
finishedAt: import("@temelj/standard-schema").Schema<unknown, Temporal.Instant | undefined>;
|
|
49
|
+
}>>;
|
|
50
|
+
export declare const childWorkflowCancellationPolicySchema: import("@temelj/standard-schema").Schema<unknown, "cascade" | "detach">;
|
|
51
|
+
//#endregion
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { idSchema, nonBlankStringSchema, nonNegativeSafeIntegerSchema, positiveSafeIntegerSchema, telemetryContextSchema, temporalInstantSchema } from "./common.mjs";
|
|
2
|
+
import { runAttributesSchema } from "../attributes.mjs";
|
|
3
|
+
import { errorRecordSchema } from "./error.mjs";
|
|
4
|
+
import { persistedValueSchema } from "./persisted-value.mjs";
|
|
5
|
+
import { ss } from "@temelj/standard-schema";
|
|
6
|
+
//#region src/schema/run.ts
|
|
7
|
+
const runStatusSchema = ss.picklist([
|
|
8
|
+
"pending",
|
|
9
|
+
"running",
|
|
10
|
+
"waiting",
|
|
11
|
+
"completed",
|
|
12
|
+
"failed",
|
|
13
|
+
"canceled"
|
|
14
|
+
]);
|
|
15
|
+
const terminalRunStatusSchema = ss.picklist([
|
|
16
|
+
"completed",
|
|
17
|
+
"failed",
|
|
18
|
+
"canceled"
|
|
19
|
+
]);
|
|
20
|
+
const runRetryReasonSchema = ss.picklist([
|
|
21
|
+
"workflow",
|
|
22
|
+
"step",
|
|
23
|
+
"missing_implementation"
|
|
24
|
+
]);
|
|
25
|
+
const runTransitionReasonSchema = ss.picklist([
|
|
26
|
+
"created",
|
|
27
|
+
"claimed",
|
|
28
|
+
"reclaimed",
|
|
29
|
+
"started",
|
|
30
|
+
"waiting",
|
|
31
|
+
"rescheduled",
|
|
32
|
+
"lease_released",
|
|
33
|
+
"manual_retry",
|
|
34
|
+
"permanent_failure",
|
|
35
|
+
"retry",
|
|
36
|
+
"missing_implementation",
|
|
37
|
+
"completed",
|
|
38
|
+
"failed",
|
|
39
|
+
"deadline",
|
|
40
|
+
"canceled"
|
|
41
|
+
]);
|
|
42
|
+
const materializedStepTypeSchema = ss.picklist([
|
|
43
|
+
"run",
|
|
44
|
+
"sleep",
|
|
45
|
+
"workflow",
|
|
46
|
+
"message-send",
|
|
47
|
+
"message-wait",
|
|
48
|
+
"stream",
|
|
49
|
+
"deterministic"
|
|
50
|
+
]);
|
|
51
|
+
const runRecordSchema = ss.object({
|
|
52
|
+
id: idSchema,
|
|
53
|
+
namespace: nonBlankStringSchema,
|
|
54
|
+
workflowName: nonBlankStringSchema,
|
|
55
|
+
workflowVersion: ss.optional(nonBlankStringSchema),
|
|
56
|
+
status: runStatusSchema,
|
|
57
|
+
input: ss.optional(persistedValueSchema),
|
|
58
|
+
context: ss.optional(persistedValueSchema),
|
|
59
|
+
telemetryContext: ss.optional(telemetryContextSchema),
|
|
60
|
+
metadata: ss.optional(persistedValueSchema),
|
|
61
|
+
attributes: ss.optional(runAttributesSchema),
|
|
62
|
+
output: ss.optional(persistedValueSchema),
|
|
63
|
+
error: ss.optional(errorRecordSchema),
|
|
64
|
+
attempts: ss.optional(nonNegativeSafeIntegerSchema),
|
|
65
|
+
idempotencyKey: ss.optional(nonBlankStringSchema),
|
|
66
|
+
parentRunId: ss.optional(idSchema),
|
|
67
|
+
parentStepId: ss.optional(idSchema),
|
|
68
|
+
parentStepName: ss.optional(nonBlankStringSchema),
|
|
69
|
+
parentStepAttempt: ss.optional(positiveSafeIntegerSchema),
|
|
70
|
+
workerId: ss.optional(idSchema),
|
|
71
|
+
createdAt: temporalInstantSchema,
|
|
72
|
+
updatedAt: temporalInstantSchema,
|
|
73
|
+
lastTransitionAt: temporalInstantSchema,
|
|
74
|
+
lastTransitionReason: runTransitionReasonSchema,
|
|
75
|
+
availableAt: ss.optional(temporalInstantSchema),
|
|
76
|
+
retryAt: ss.optional(temporalInstantSchema),
|
|
77
|
+
retryReason: ss.optional(runRetryReasonSchema),
|
|
78
|
+
retryAttempt: ss.optional(positiveSafeIntegerSchema),
|
|
79
|
+
retryStepId: ss.optional(idSchema),
|
|
80
|
+
retryStepName: ss.optional(nonBlankStringSchema),
|
|
81
|
+
deadlineAt: ss.optional(temporalInstantSchema),
|
|
82
|
+
leaseExpiresAt: ss.optional(temporalInstantSchema),
|
|
83
|
+
startedAt: ss.optional(temporalInstantSchema),
|
|
84
|
+
finishedAt: ss.optional(temporalInstantSchema)
|
|
85
|
+
});
|
|
86
|
+
const childWorkflowCancellationPolicySchema = ss.picklist(["cascade", "detach"]);
|
|
87
|
+
//#endregion
|
|
88
|
+
export { childWorkflowCancellationPolicySchema, materializedStepTypeSchema, runRecordSchema, terminalRunStatusSchema };
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { WorkflowErrorCode } from "../errors/codes.mjs";
|
|
2
|
+
import "../mod.mjs";
|
|
3
|
+
//#region src/schema/store.d.ts
|
|
4
|
+
export declare const lockRecordSchema: import("@temelj/standard-schema").Schema<unknown, import("@temelj/standard-schema").ObjectOutput<{
|
|
5
|
+
key: import("@temelj/standard-schema").Schema<unknown, string>;
|
|
6
|
+
namespace: import("@temelj/standard-schema").Schema<unknown, string>;
|
|
7
|
+
holderId: import("@temelj/standard-schema").Schema<unknown, string>;
|
|
8
|
+
holderRunId: import("@temelj/standard-schema").Schema<unknown, string | undefined>;
|
|
9
|
+
holderStepId: import("@temelj/standard-schema").Schema<unknown, string | undefined>;
|
|
10
|
+
fencingToken: import("@temelj/standard-schema").Schema<unknown, number>;
|
|
11
|
+
acquiredAt: import("@temelj/standard-schema").Schema<unknown, Temporal.Instant>;
|
|
12
|
+
leaseExpiresAt: import("@temelj/standard-schema").Schema<unknown, Temporal.Instant>;
|
|
13
|
+
releasedAt: import("@temelj/standard-schema").Schema<unknown, Temporal.Instant | undefined>;
|
|
14
|
+
}>>;
|
|
15
|
+
export declare const cleanupModeSchema: import("@temelj/standard-schema").Schema<unknown, "best_effort">;
|
|
16
|
+
export declare const cleanupMarkerRecordSchema: import("@temelj/standard-schema").Schema<unknown, import("@temelj/standard-schema").ObjectOutput<{
|
|
17
|
+
mode: import("@temelj/standard-schema").Schema<unknown, "best_effort">;
|
|
18
|
+
runId: import("@temelj/standard-schema").Schema<unknown, string>;
|
|
19
|
+
workflowName: import("@temelj/standard-schema").Schema<unknown, string>;
|
|
20
|
+
workflowVersion: import("@temelj/standard-schema").Schema<unknown, string | undefined>;
|
|
21
|
+
status: import("@temelj/standard-schema").Schema<unknown, "canceled" | "completed" | "failed">;
|
|
22
|
+
createdAt: import("@temelj/standard-schema").Schema<unknown, Temporal.Instant>;
|
|
23
|
+
finishedAt: import("@temelj/standard-schema").Schema<unknown, Temporal.Instant>;
|
|
24
|
+
cleanupStartedAt: import("@temelj/standard-schema").Schema<unknown, Temporal.Instant>;
|
|
25
|
+
events: import("@temelj/standard-schema").Schema<unknown, number>;
|
|
26
|
+
stepAttempts: import("@temelj/standard-schema").Schema<unknown, number>;
|
|
27
|
+
idempotencyKeys: import("@temelj/standard-schema").Schema<unknown, number>;
|
|
28
|
+
messageIdempotencyKeys: import("@temelj/standard-schema").Schema<unknown, number>;
|
|
29
|
+
}>>;
|
|
30
|
+
export declare const scheduleRecordSchema: import("@temelj/standard-schema").Schema<unknown, import("@temelj/standard-schema").ObjectOutput<{
|
|
31
|
+
id: import("@temelj/standard-schema").Schema<unknown, string>;
|
|
32
|
+
namespace: import("@temelj/standard-schema").Schema<unknown, string>;
|
|
33
|
+
workflowName: import("@temelj/standard-schema").Schema<unknown, string>;
|
|
34
|
+
workflowVersion: import("@temelj/standard-schema").Schema<unknown, string | undefined>;
|
|
35
|
+
input: import("@temelj/standard-schema").Schema<unknown, import("@temelj/storage").StorageValue | undefined>;
|
|
36
|
+
context: import("@temelj/standard-schema").Schema<unknown, import("@temelj/storage").StorageValue | undefined>;
|
|
37
|
+
status: import("@temelj/standard-schema").Schema<unknown, "active" | "archived" | "deleted" | "paused">;
|
|
38
|
+
every: import("@temelj/standard-schema").Schema<unknown, Temporal.Duration>;
|
|
39
|
+
catchUp: import("@temelj/standard-schema").Schema<unknown, "all" | "one" | "skip">;
|
|
40
|
+
maxCatchUpRuns: import("@temelj/standard-schema").Schema<unknown, number | undefined>;
|
|
41
|
+
maxLateness: import("@temelj/standard-schema").Schema<unknown, Temporal.Duration | undefined>;
|
|
42
|
+
overlap: import("@temelj/standard-schema").Schema<unknown, "allow" | "buffer" | "cancel" | "skip">;
|
|
43
|
+
createdAt: import("@temelj/standard-schema").Schema<unknown, Temporal.Instant>;
|
|
44
|
+
updatedAt: import("@temelj/standard-schema").Schema<unknown, Temporal.Instant>;
|
|
45
|
+
nextFireAt: import("@temelj/standard-schema").Schema<unknown, Temporal.Instant>;
|
|
46
|
+
endAt: import("@temelj/standard-schema").Schema<unknown, Temporal.Instant | undefined>;
|
|
47
|
+
bufferedFireAt: import("@temelj/standard-schema").Schema<unknown, Temporal.Instant | undefined>;
|
|
48
|
+
lastFireAt: import("@temelj/standard-schema").Schema<unknown, Temporal.Instant | undefined>;
|
|
49
|
+
lastRunId: import("@temelj/standard-schema").Schema<unknown, string | undefined>;
|
|
50
|
+
tickCount: import("@temelj/standard-schema").Schema<unknown, number>;
|
|
51
|
+
}>>;
|
|
52
|
+
export declare const stepAttemptStatusSchema: import("@temelj/standard-schema").Schema<unknown, "abandoned" | "completed" | "failed" | "running">;
|
|
53
|
+
export declare const stepAttemptRecordSchema: import("@temelj/standard-schema").Schema<unknown, import("@temelj/standard-schema").ObjectOutput<{
|
|
54
|
+
runId: import("@temelj/standard-schema").Schema<unknown, string>;
|
|
55
|
+
stepId: import("@temelj/standard-schema").Schema<unknown, string>;
|
|
56
|
+
stepName: import("@temelj/standard-schema").Schema<unknown, string>;
|
|
57
|
+
kind: import("@temelj/standard-schema").Schema<unknown, "deterministic" | "message-send" | "message-wait" | "run" | "sleep" | "stream" | "workflow">;
|
|
58
|
+
status: import("@temelj/standard-schema").Schema<unknown, "abandoned" | "completed" | "failed" | "running">;
|
|
59
|
+
attempt: import("@temelj/standard-schema").Schema<unknown, number>;
|
|
60
|
+
count: import("@temelj/standard-schema").Schema<unknown, number | undefined>;
|
|
61
|
+
output: import("@temelj/standard-schema").Schema<unknown, import("@temelj/storage").StorageValue | undefined>;
|
|
62
|
+
error: import("@temelj/standard-schema").Schema<unknown, import("@temelj/standard-schema").ObjectOutput<{
|
|
63
|
+
code: import("@temelj/standard-schema").Schema<unknown, WorkflowErrorCode | undefined>;
|
|
64
|
+
name: import("@temelj/standard-schema").Schema<unknown, string>;
|
|
65
|
+
message: import("@temelj/standard-schema").Schema<unknown, string>;
|
|
66
|
+
stack: import("@temelj/standard-schema").Schema<unknown, string | undefined>;
|
|
67
|
+
details: import("@temelj/standard-schema").Schema<unknown, Record<string, string | number | boolean | null | undefined> | undefined>;
|
|
68
|
+
}> | undefined>;
|
|
69
|
+
until: import("@temelj/standard-schema").Schema<unknown, Temporal.Instant | undefined>;
|
|
70
|
+
duration: import("@temelj/standard-schema").Schema<unknown, Temporal.Duration | undefined>;
|
|
71
|
+
childRunId: import("@temelj/standard-schema").Schema<unknown, string | undefined>;
|
|
72
|
+
workflowName: import("@temelj/standard-schema").Schema<unknown, string | undefined>;
|
|
73
|
+
workflowVersion: import("@temelj/standard-schema").Schema<unknown, string | undefined>;
|
|
74
|
+
cancellation: import("@temelj/standard-schema").Schema<unknown, "cascade" | "detach" | undefined>;
|
|
75
|
+
input: import("@temelj/standard-schema").Schema<unknown, import("@temelj/storage").StorageValue | undefined>;
|
|
76
|
+
timeoutAt: import("@temelj/standard-schema").Schema<unknown, Temporal.Instant | undefined>;
|
|
77
|
+
messageId: import("@temelj/standard-schema").Schema<unknown, string | undefined>;
|
|
78
|
+
targetRunId: import("@temelj/standard-schema").Schema<unknown, string | undefined>;
|
|
79
|
+
payload: import("@temelj/standard-schema").Schema<unknown, import("@temelj/storage").StorageValue | undefined>;
|
|
80
|
+
messageTimestamp: import("@temelj/standard-schema").Schema<unknown, Temporal.Instant | undefined>;
|
|
81
|
+
createdAt: import("@temelj/standard-schema").Schema<unknown, Temporal.Instant>;
|
|
82
|
+
startedAt: import("@temelj/standard-schema").Schema<unknown, Temporal.Instant>;
|
|
83
|
+
finishedAt: import("@temelj/standard-schema").Schema<unknown, Temporal.Instant | undefined>;
|
|
84
|
+
}>>;
|
|
85
|
+
export declare const cleanupIndexKeySchema: import("@temelj/standard-schema").Schema<unknown, import("@temelj/standard-schema").ObjectOutput<{
|
|
86
|
+
key: import("@temelj/standard-schema").Schema<unknown, string>;
|
|
87
|
+
value: import("@temelj/standard-schema").Schema<unknown, import("@temelj/storage").StorageValue>;
|
|
88
|
+
}>>;
|
|
89
|
+
export declare const messageIdempotencyIndexSchema: import("@temelj/standard-schema").Schema<unknown, import("@temelj/standard-schema").ObjectOutput<{
|
|
90
|
+
runId: import("@temelj/standard-schema").Schema<unknown, string>;
|
|
91
|
+
messageId: import("@temelj/standard-schema").Schema<unknown, string>;
|
|
92
|
+
timestamp: import("@temelj/standard-schema").Schema<unknown, Temporal.Instant>;
|
|
93
|
+
}>>;
|
|
94
|
+
//#endregion
|