@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
package/dist/types/client.d.mts
CHANGED
|
@@ -1,180 +1,137 @@
|
|
|
1
|
-
import { RunId } from "./
|
|
1
|
+
import { RunId, StreamIdOrName, WorkerId } from "./ids.mjs";
|
|
2
2
|
import { CleanupMarkerRecord, CleanupRunsOptions, CleanupRunsResult, RetentionPolicyOptions } from "./cleanup.mjs";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
3
|
+
import { HookInspection, ResumeHookOptions } from "./hook.mjs";
|
|
4
|
+
import { WorkflowPage } from "./pagination.mjs";
|
|
5
|
+
import { ListSchedulesPageOptions, ScheduleConfig, ScheduleId, ScheduleRecord, TickSchedulesOptions, TickSchedulesResult } from "./schedule.mjs";
|
|
6
|
+
import { MissingImplementationRetryConfig } from "./retry.mjs";
|
|
7
|
+
import { StartTarget, WorkflowDefinition, WorkflowImplementation } from "./definition.mjs";
|
|
8
8
|
import { AcquireLockOptions, LockRecord, ReleaseLockOptions, ReleaseStaleLockOptions } from "./lock.mjs";
|
|
9
|
-
import {
|
|
10
|
-
import { BroadcastMessageChannelOptions, BroadcastMessageInput, BroadcastMessageResult, MessageChannel,
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
import { ResultOptions } from "./result.mjs";
|
|
18
|
-
import { WorkflowAttributePatch, WorkflowRunRecord, WorkflowRunStatus } from "./run.mjs";
|
|
9
|
+
import { ListRunsOptions, ListRunsPageOptions, ListStepAttemptsPageOptions } from "./run-list.mjs";
|
|
10
|
+
import { BroadcastMessageChannelOptions, BroadcastMessageInput, BroadcastMessageResult, MessageChannel, MessageSender } from "./message.mjs";
|
|
11
|
+
import { FollowStreamOptions, ReadStreamOptions, StreamChunk, StreamInfo, StreamState, StreamUpdate, WaitStreamOptions } from "./stream.mjs";
|
|
12
|
+
import { StepDefinition } from "./step.mjs";
|
|
13
|
+
import { RecoverySummary, RunSummary } from "./summary.mjs";
|
|
14
|
+
import { ListStepAttemptsOptions, StepAttemptRecord, StepAttemptSummary } from "./step-attempts.mjs";
|
|
15
|
+
import { ObservationEventHandler, ObservationEventPattern } from "./observation.mjs";
|
|
16
|
+
import { AttributePatch, RunRecord } from "./run.mjs";
|
|
19
17
|
import { EventRecord } from "./events.mjs";
|
|
20
|
-
import {
|
|
21
|
-
import {
|
|
18
|
+
import { WakeDueRunsOptions, WorkerRunFilterOptions, WorkerRunResult, WorkflowWorker } from "./worker.mjs";
|
|
19
|
+
import { BatchStartItem, MarkRunPermanentlyFailedOptions, ReleaseStaleLeaseOptions, RerunOptions, RescheduleRunOptions, RetryFailedRunOptions, RunArguments, ScheduleNextOptions, StartOptions } from "./run-options.mjs";
|
|
20
|
+
import { COMPILED_STEP, COMPILED_WORKFLOW } from "../compiled-function.mjs";
|
|
21
|
+
import { RunHandle, RuntimeRunsApi, WorkflowRuntime } from "./runtime.mjs";
|
|
22
|
+
import { Timeline } from "./timeline.mjs";
|
|
23
|
+
import { StorageValue } from "@temelj/storage";
|
|
24
|
+
import { Unsubscribe } from "@temelj/event";
|
|
22
25
|
//#region src/types/client.d.ts
|
|
23
26
|
/** Function shape emitted by the directive compiler for workflow and step functions. */
|
|
24
|
-
type CompiledWorkflowFunction<TArgs extends readonly unknown[], TOutput> = (...args: TArgs) => Promise<TOutput> | TOutput
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
readonly workflowName: string;
|
|
31
|
-
/** Workflow version stored on the run, when one was resolved. */
|
|
32
|
-
readonly workflowVersion?: string;
|
|
33
|
-
/** Returns the latest run record. */
|
|
34
|
-
getRun(): Promise<WorkflowRunRecord>;
|
|
35
|
-
/** Returns the latest run status. */
|
|
36
|
-
status(): Promise<WorkflowRunStatus>;
|
|
27
|
+
export type CompiledWorkflowFunction<TArgs extends readonly unknown[], TOutput> = ((...args: TArgs) => Promise<TOutput> | TOutput) & {
|
|
28
|
+
readonly [COMPILED_WORKFLOW]?: WorkflowImplementation<TArgs, Awaited<TOutput>, TArgs>;
|
|
29
|
+
readonly [COMPILED_STEP]?: StepDefinition<TArgs, Awaited<TOutput>>;
|
|
30
|
+
};
|
|
31
|
+
/** A local run handle: the portable operations plus history, streams, metadata, and attributes. */
|
|
32
|
+
export interface WorkflowRunHandle<TOutput = unknown> extends RunHandle<TOutput> {
|
|
37
33
|
/** Returns all durable events recorded for the run. */
|
|
38
34
|
events(): Promise<readonly EventRecord[]>;
|
|
39
35
|
/** Returns a timeline projection of the run's event history. */
|
|
40
36
|
timeline(): Promise<Timeline>;
|
|
41
|
-
/**
|
|
42
|
-
|
|
43
|
-
/** Returns metadata for a durable stream on this run. */
|
|
44
|
-
getStreamInfo(streamIdOrName: StreamIdOrName): Promise<StreamInfo>;
|
|
45
|
-
/** Follows durable stream updates from this run. */
|
|
46
|
-
followStream<TChunk = unknown>(streamIdOrName: StreamIdOrName, options?: FollowStreamOptions): AsyncIterable<StreamUpdate<TChunk>>;
|
|
47
|
-
/** Waits until a durable stream exists on this run. */
|
|
48
|
-
waitForStream(streamIdOrName: StreamIdOrName, options?: WaitStreamOptions): Promise<StreamInfo | undefined>;
|
|
49
|
-
/** Waits for the next durable stream chunk after an index. */
|
|
50
|
-
waitForStreamChunk<TChunk = unknown>(streamIdOrName: StreamIdOrName, afterIndex: number, options?: WaitStreamOptions): Promise<StreamChunk<TChunk> | undefined>;
|
|
51
|
-
/** Waits until a durable stream is closed or failed. */
|
|
52
|
-
waitForStreamTerminal(streamIdOrName: StreamIdOrName, options?: WaitStreamOptions): Promise<StreamInfo | undefined>;
|
|
53
|
-
/** Reads all currently stored chunks for a durable stream. */
|
|
54
|
-
readStream<TChunk = unknown>(streamIdOrName: StreamIdOrName, options?: ReadStreamOptions): Promise<StreamState<TChunk>>;
|
|
55
|
-
/** Reads one page of currently stored chunks for a durable stream. */
|
|
56
|
-
readStreamPage<TChunk = unknown>(streamIdOrName: StreamIdOrName, options?: ReadStreamPageOptions): Promise<StreamPage<TChunk>>;
|
|
57
|
-
/** Moves the run back to pending at an optional new availability time. */
|
|
58
|
-
reschedule(options?: WorkflowRescheduleRunOptions): Promise<WorkflowRunRecord>;
|
|
59
|
-
/** Releases this run's worker lease when it is stale. */
|
|
60
|
-
releaseStaleLease(options?: WorkflowReleaseStaleLeaseOptions): Promise<WorkflowRunRecord>;
|
|
61
|
-
/** Retries this failed run. */
|
|
62
|
-
retryFailed(options?: WorkflowRetryFailedRunOptions): Promise<WorkflowRunRecord>;
|
|
63
|
-
/** Marks this run as permanently failed with an operator reason. */
|
|
64
|
-
markPermanentlyFailed(options: WorkflowMarkRunPermanentlyFailedOptions): Promise<WorkflowRunRecord>;
|
|
37
|
+
/** Durable stream reads for this run. */
|
|
38
|
+
readonly streams: RunStreamsApi;
|
|
65
39
|
/** Replaces this run's metadata value. */
|
|
66
|
-
setMetadata(metadata:
|
|
40
|
+
setMetadata(metadata: StorageValue): Promise<RunRecord>;
|
|
67
41
|
/** Applies an attribute patch to this run. */
|
|
68
|
-
setAttributes(attributes:
|
|
69
|
-
/** Cancels this run if it has not already reached a terminal status. */
|
|
70
|
-
cancel(): Promise<WorkflowRunRecord>;
|
|
42
|
+
setAttributes(attributes: AttributePatch): Promise<RunRecord>;
|
|
71
43
|
}
|
|
72
|
-
/**
|
|
73
|
-
interface
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
44
|
+
/** Durable stream reads for one run: the operations of `client.streams`, without the run ID. */
|
|
45
|
+
export interface RunStreamsApi {
|
|
46
|
+
getInfo(streamIdOrName: StreamIdOrName): Promise<StreamInfo>;
|
|
47
|
+
follow(streamIdOrName: StreamIdOrName, options?: FollowStreamOptions): AsyncIterable<StreamUpdate>;
|
|
48
|
+
wait(streamIdOrName: StreamIdOrName, options?: WaitStreamOptions): Promise<StreamInfo | undefined>;
|
|
49
|
+
waitForChunk(streamIdOrName: StreamIdOrName, afterIndex: number, options?: WaitStreamOptions): Promise<StreamChunk | undefined>;
|
|
50
|
+
waitForTerminal(streamIdOrName: StreamIdOrName, options?: WaitStreamOptions): Promise<StreamInfo | undefined>;
|
|
51
|
+
read(streamIdOrName: StreamIdOrName, options?: ReadStreamOptions): Promise<StreamState>;
|
|
78
52
|
}
|
|
79
|
-
|
|
80
|
-
|
|
53
|
+
export interface WorkflowClient extends WorkflowRuntime {
|
|
54
|
+
/** Subscribes to run lifecycle and operation events, such as `workflow:run-completed`. */
|
|
55
|
+
on<Pattern extends ObservationEventPattern>(pattern: Pattern, handler: ObservationEventHandler<Pattern>): Unsubscribe;
|
|
56
|
+
once<Pattern extends ObservationEventPattern>(pattern: Pattern, handler: ObservationEventHandler<Pattern>): Unsubscribe;
|
|
57
|
+
off<Pattern extends ObservationEventPattern>(pattern: Pattern, handler: ObservationEventHandler<Pattern>): void;
|
|
81
58
|
/** Grouped run inspection and history operations. */
|
|
82
|
-
readonly runs:
|
|
59
|
+
readonly runs: ClientRunsApi;
|
|
83
60
|
/** Grouped administrative run maintenance operations. */
|
|
84
|
-
readonly admin:
|
|
61
|
+
readonly admin: ClientAdminApi;
|
|
85
62
|
/** Grouped schedule management operations. */
|
|
86
|
-
readonly schedules:
|
|
87
|
-
|
|
88
|
-
readonly locks: WorkflowClientLocksApi;
|
|
63
|
+
readonly schedules: ClientSchedulesApi;
|
|
64
|
+
readonly locks: ClientLocksApi;
|
|
89
65
|
/** Grouped external resume hook operations. */
|
|
90
|
-
readonly hooks:
|
|
66
|
+
readonly hooks: ClientHooksApi;
|
|
91
67
|
/** Grouped durable stream read operations. */
|
|
92
|
-
readonly streams:
|
|
68
|
+
readonly streams: ClientStreamsApi;
|
|
93
69
|
/** Grouped message send operations. */
|
|
94
|
-
readonly messages:
|
|
70
|
+
readonly messages: ClientMessagesApi;
|
|
95
71
|
/** Grouped worker creation and wake operations. */
|
|
96
|
-
readonly workers:
|
|
97
|
-
/** Flushes resources owned by the underlying engine when it supports explicit shutdown. */
|
|
98
|
-
close(): Promise<void>;
|
|
99
|
-
/** Registers a workflow implementation in the client's registry. */
|
|
100
|
-
implementWorkflow<TInput, TOutput, TRawInput = TInput>(definition: WorkflowDefinition<TInput, TOutput, TRawInput>, handler: WorkflowHandler<TInput, TOutput>): WorkflowImplementation<TInput, TOutput, TRawInput>;
|
|
101
|
-
/** Registers an existing workflow implementation in the client's registry. */
|
|
102
|
-
register<TInput, TOutput, TRawInput = TInput>(implementation: WorkflowImplementation<TInput, TOutput, TRawInput>): void;
|
|
103
|
-
/** Registers a workflow implementation and returns a client-bound runnable. */
|
|
104
|
-
workflow<TInput, TOutput, TRawInput = TInput>(definition: WorkflowDefinition<TInput, TOutput, TRawInput>, handler: WorkflowHandler<TInput, TOutput>): WorkflowRunnable<TInput, TOutput, TRawInput>;
|
|
72
|
+
readonly workers: ClientWorkersApi;
|
|
105
73
|
}
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
74
|
+
export interface ClientRunsApi extends RuntimeRunsApi {
|
|
75
|
+
/** Starts a run of a definition. */
|
|
76
|
+
start<TInput, TOutput, TRawInput = TInput>(workflow: WorkflowDefinition<TInput, TOutput, TRawInput>, ...args: RunArguments<TRawInput, StartOptions>): Promise<WorkflowRunHandle<TOutput>>;
|
|
77
|
+
/** Registers an implementation when needed, then starts a run of it. */
|
|
78
|
+
start<TInput, TOutput, TRawInput = TInput>(workflow: WorkflowImplementation<TInput, TOutput, TRawInput>, ...args: RunArguments<TRawInput, StartOptions>): Promise<WorkflowRunHandle<TOutput>>;
|
|
79
|
+
/** Starts a compiled workflow function produced by the workflow transform. */
|
|
80
|
+
start<TArgs extends readonly unknown[], TOutput>(workflow: CompiledWorkflowFunction<TArgs, TOutput>, ...args: TArgs): Promise<WorkflowRunHandle<Awaited<TOutput>>>;
|
|
81
|
+
/** A handle for an existing run. A run ID does not establish its output type, so validate the result. */
|
|
82
|
+
getHandle(runId: RunId): Promise<WorkflowRunHandle<StorageValue | undefined>>;
|
|
83
|
+
list(options?: ListRunsPageOptions): Promise<WorkflowPage<RunRecord>>;
|
|
110
84
|
/** Starts multiple workflow runs for the same definition. */
|
|
111
|
-
startBatch<TInput, TOutput, TRawInput = TInput>(workflow:
|
|
85
|
+
startBatch<TInput, TOutput, TRawInput = TInput>(workflow: StartTarget<TInput, TOutput, TRawInput>, items: readonly BatchStartItem<TRawInput>[]): Promise<readonly WorkflowRunHandle<TOutput>[]>;
|
|
112
86
|
/** Returns a workflow run by ID, if it exists. */
|
|
113
|
-
get(runId: RunId): Promise<
|
|
87
|
+
get(runId: RunId): Promise<RunRecord | undefined>;
|
|
114
88
|
/** Returns all durable events recorded for a run. */
|
|
115
89
|
events(runId: RunId): Promise<readonly EventRecord[]>;
|
|
116
|
-
/** Lists one page of durable events recorded for a run. */
|
|
117
|
-
eventsPage(runId: RunId, options?: PageOptions): Promise<WorkflowPage<EventRecord>>;
|
|
118
|
-
/** Lists workflow runs matching optional filters. */
|
|
119
|
-
list(options?: WorkflowListRunsOptions): Promise<readonly WorkflowRunRecord[]>;
|
|
120
|
-
/** Lists one page of workflow runs matching optional filters. */
|
|
121
|
-
page(options?: WorkflowListRunsPageOptions): Promise<WorkflowPage<WorkflowRunRecord>>;
|
|
122
90
|
/** Counts workflow runs matching optional filters. */
|
|
123
|
-
count(options?:
|
|
91
|
+
count(options?: ListRunsOptions): Promise<number>;
|
|
124
92
|
/** Returns aggregate run metrics for runs matching optional filters. */
|
|
125
|
-
summary(options?:
|
|
93
|
+
summary(options?: ListRunsOptions): Promise<RunSummary>;
|
|
126
94
|
/** Returns recovery-oriented aggregate metrics for runs matching optional filters. */
|
|
127
|
-
|
|
128
|
-
/** Returns a timeline projection for one run. */
|
|
95
|
+
recoverySummary(options?: ListRunsOptions): Promise<RecoverySummary>;
|
|
129
96
|
timeline(runId: RunId): Promise<Timeline>;
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
/** Lists one page of materialized step attempts for a run. */
|
|
133
|
-
listStepAttemptsPage(runId: RunId, options?: WorkflowListStepAttemptsPageOptions): Promise<WorkflowPage<WorkflowStepAttemptRecord>>;
|
|
134
|
-
/** Counts materialized step attempts for a run. */
|
|
135
|
-
countStepAttempts(runId: RunId, options?: WorkflowListStepAttemptsOptions): Promise<number>;
|
|
97
|
+
listStepAttempts(runId: RunId, options?: ListStepAttemptsPageOptions): Promise<WorkflowPage<StepAttemptRecord>>;
|
|
98
|
+
countStepAttempts(runId: RunId, options?: ListStepAttemptsOptions): Promise<number>;
|
|
136
99
|
/** Returns aggregate step-attempt metrics for a run. */
|
|
137
|
-
stepAttemptSummary(runId: RunId, options?:
|
|
100
|
+
stepAttemptSummary(runId: RunId, options?: ListStepAttemptsOptions): Promise<StepAttemptSummary>;
|
|
138
101
|
}
|
|
139
|
-
|
|
140
|
-
interface WorkflowClientAdminApi {
|
|
102
|
+
export interface ClientAdminApi {
|
|
141
103
|
/** Deletes terminal run data according to cleanup options. */
|
|
142
104
|
cleanup(options: CleanupRunsOptions): Promise<CleanupRunsResult>;
|
|
143
|
-
/** Lists cleanup marker records. */
|
|
144
105
|
cleanupMarkers(): Promise<readonly CleanupMarkerRecord[]>;
|
|
145
106
|
/** Deletes terminal run data according to a retention policy. */
|
|
146
107
|
applyRetentionPolicy(options: RetentionPolicyOptions): Promise<CleanupRunsResult>;
|
|
147
108
|
/** Creates a new run from an existing run record and returns its handle. */
|
|
148
|
-
rerun(runId: RunId, options?:
|
|
109
|
+
rerun(runId: RunId, options?: RerunOptions): Promise<WorkflowRunHandle<unknown>>;
|
|
149
110
|
/** Moves a run back to pending at an optional new availability time. */
|
|
150
|
-
reschedule(runId: RunId, options?:
|
|
111
|
+
reschedule(runId: RunId, options?: RescheduleRunOptions): Promise<RunRecord>;
|
|
151
112
|
/** Releases a run's worker lease when it is stale. */
|
|
152
|
-
releaseStaleLease(runId: RunId, options?:
|
|
153
|
-
|
|
154
|
-
retryFailed(runId: RunId, options?: WorkflowRetryFailedRunOptions): Promise<WorkflowRunRecord>;
|
|
113
|
+
releaseStaleLease(runId: RunId, options?: ReleaseStaleLeaseOptions): Promise<RunRecord>;
|
|
114
|
+
retryFailed(runId: RunId, options?: RetryFailedRunOptions): Promise<RunRecord>;
|
|
155
115
|
/** Marks a workflow run as permanently failed with an operator reason. */
|
|
156
|
-
markPermanentlyFailed(runId: RunId, options:
|
|
116
|
+
markPermanentlyFailed(runId: RunId, options: MarkRunPermanentlyFailedOptions): Promise<RunRecord>;
|
|
157
117
|
/** Replaces a workflow run's metadata value. */
|
|
158
|
-
|
|
118
|
+
setMetadata(runId: RunId, metadata: StorageValue): Promise<RunRecord>;
|
|
159
119
|
/** Applies an attribute patch to a workflow run. */
|
|
160
|
-
setAttributes(runId: RunId, attributes:
|
|
120
|
+
setAttributes(runId: RunId, attributes: AttributePatch): Promise<RunRecord>;
|
|
161
121
|
/** Cancels a workflow run if it has not already reached a terminal status. */
|
|
162
|
-
cancel(runId: RunId): Promise<
|
|
122
|
+
cancel(runId: RunId): Promise<RunRecord>;
|
|
163
123
|
}
|
|
164
|
-
|
|
165
|
-
interface WorkflowClientSchedulesApi {
|
|
124
|
+
export interface ClientSchedulesApi {
|
|
166
125
|
/** Schedules one workflow run at the next interval boundary. */
|
|
167
|
-
next<TInput, TOutput, TRawInput = TInput>(workflow:
|
|
126
|
+
next<TInput, TOutput, TRawInput = TInput>(workflow: StartTarget<TInput, TOutput, TRawInput>, input: TRawInput, options: ScheduleNextOptions): Promise<WorkflowRunHandle<TOutput>>;
|
|
168
127
|
/** Creates a recurring workflow schedule. */
|
|
169
|
-
create<TInput, TOutput, TRawInput = TInput>(workflow:
|
|
128
|
+
create<TInput, TOutput, TRawInput = TInput>(workflow: StartTarget<TInput, TOutput, TRawInput>, options: ScheduleConfig<TInput, TRawInput>): Promise<ScheduleRecord>;
|
|
170
129
|
/** Creates or updates a recurring workflow schedule. */
|
|
171
|
-
upsert<TInput, TOutput, TRawInput = TInput>(workflow:
|
|
130
|
+
upsert<TInput, TOutput, TRawInput = TInput>(workflow: StartTarget<TInput, TOutput, TRawInput>, options: ScheduleConfig<TInput, TRawInput>): Promise<ScheduleRecord>;
|
|
172
131
|
/** Returns a schedule by ID, if it exists. */
|
|
173
132
|
get(scheduleId: ScheduleId): Promise<ScheduleRecord | undefined>;
|
|
174
133
|
/** Lists schedules matching optional filters. */
|
|
175
|
-
list(options?:
|
|
176
|
-
/** Lists one page of schedules matching optional filters. */
|
|
177
|
-
page(options?: ListSchedulesPageOptions): Promise<WorkflowPage<ScheduleRecord>>;
|
|
134
|
+
list(options?: ListSchedulesPageOptions): Promise<WorkflowPage<ScheduleRecord>>;
|
|
178
135
|
/** Pauses an active schedule. */
|
|
179
136
|
pause(scheduleId: ScheduleId): Promise<ScheduleRecord>;
|
|
180
137
|
/** Resumes a paused or archived schedule. */
|
|
@@ -186,85 +143,67 @@ interface WorkflowClientSchedulesApi {
|
|
|
186
143
|
/** Starts runs for schedules that are due. */
|
|
187
144
|
tick(options?: TickSchedulesOptions): Promise<TickSchedulesResult>;
|
|
188
145
|
}
|
|
189
|
-
|
|
190
|
-
interface WorkflowClientLocksApi {
|
|
191
|
-
/** Acquires a workflow lock. */
|
|
146
|
+
export interface ClientLocksApi {
|
|
192
147
|
acquire(key: string, options: AcquireLockOptions): Promise<LockRecord>;
|
|
193
148
|
/** Returns a workflow lock by key, if it exists. */
|
|
194
149
|
get(key: string): Promise<LockRecord | undefined>;
|
|
195
|
-
/** Lists workflow locks. */
|
|
196
150
|
list(): Promise<readonly LockRecord[]>;
|
|
197
151
|
/** Releases a workflow lock held by the supplied holder. */
|
|
198
152
|
release(key: string, options: ReleaseLockOptions): Promise<LockRecord>;
|
|
199
153
|
/** Releases a workflow lock only when its lease is stale. */
|
|
200
154
|
releaseStale(key: string, options?: ReleaseStaleLockOptions): Promise<LockRecord>;
|
|
201
155
|
}
|
|
202
|
-
|
|
203
|
-
interface WorkflowClientHooksApi {
|
|
156
|
+
export interface ClientHooksApi {
|
|
204
157
|
/** Completes a pending message-backed external resume hook. */
|
|
205
158
|
resume(token: string, options?: ResumeHookOptions): Promise<void>;
|
|
206
|
-
/** Completes a pending webhook-labeled external resume hook. */
|
|
207
|
-
resumeWebhook(token: string, options?: ResumeWebhookOptions): Promise<void>;
|
|
208
159
|
/** Disposes a pending message-backed external resume hook. */
|
|
209
160
|
dispose(token: string): Promise<HookInspection>;
|
|
210
|
-
/** Disposes a pending webhook-labeled external resume hook. */
|
|
211
|
-
disposeWebhook(token: string): Promise<HookInspection>;
|
|
212
161
|
/** Returns inspection data for an external resume hook token. */
|
|
213
162
|
getByToken(token: string): Promise<HookInspection>;
|
|
214
163
|
}
|
|
215
|
-
|
|
216
|
-
interface WorkflowClientStreamsApi {
|
|
164
|
+
export interface ClientStreamsApi {
|
|
217
165
|
/** Returns metadata for a durable stream on a run. */
|
|
218
166
|
getInfo(runId: RunId, streamIdOrName: StreamIdOrName): Promise<StreamInfo>;
|
|
219
167
|
/** Follows durable stream updates from a run. */
|
|
220
|
-
follow
|
|
168
|
+
follow(runId: RunId, streamIdOrName: StreamIdOrName, options?: FollowStreamOptions): AsyncIterable<StreamUpdate>;
|
|
221
169
|
/** Waits until a durable stream exists on a run. */
|
|
222
170
|
wait(runId: RunId, streamIdOrName: StreamIdOrName, options?: WaitStreamOptions): Promise<StreamInfo | undefined>;
|
|
223
171
|
/** Waits for the next durable stream chunk after an index. */
|
|
224
|
-
waitForChunk
|
|
172
|
+
waitForChunk(runId: RunId, streamIdOrName: StreamIdOrName, afterIndex: number, options?: WaitStreamOptions): Promise<StreamChunk | undefined>;
|
|
225
173
|
/** Waits until a durable stream is closed or failed. */
|
|
226
174
|
waitForTerminal(runId: RunId, streamIdOrName: StreamIdOrName, options?: WaitStreamOptions): Promise<StreamInfo | undefined>;
|
|
227
175
|
/** Reads all currently stored chunks for a durable stream. */
|
|
228
|
-
read
|
|
229
|
-
/** Reads one page of currently stored chunks for a durable stream. */
|
|
230
|
-
readPage<TChunk = unknown>(runId: RunId, streamIdOrName: StreamIdOrName, options?: ReadStreamPageOptions): Promise<StreamPage<TChunk>>;
|
|
176
|
+
read(runId: RunId, streamIdOrName: StreamIdOrName, options?: ReadStreamOptions): Promise<StreamState>;
|
|
231
177
|
}
|
|
232
|
-
|
|
233
|
-
interface WorkflowClientMessagesApi {
|
|
234
|
-
/** Sends a named message to a workflow run. */
|
|
235
|
-
send(runId: RunId, options: SendMessageInput): Promise<void>;
|
|
236
|
-
/** Sends a typed message channel payload to a workflow run. */
|
|
237
|
-
send<TPayload, TKey = void>(runId: RunId, channel: MessageChannel<TPayload, TKey>, options?: SendMessageChannelOptions<TPayload, TKey>): Promise<void>;
|
|
178
|
+
export interface ClientMessagesApi extends MessageSender {
|
|
238
179
|
/** Broadcasts a named message to runs matching the target options. */
|
|
239
180
|
broadcast(options: BroadcastMessageInput): Promise<BroadcastMessageResult>;
|
|
240
181
|
/** Broadcasts a typed message channel payload to runs matching the target options. */
|
|
241
|
-
broadcast<TPayload,
|
|
182
|
+
broadcast<TPayload, TRawPayload = TPayload>(channel: MessageChannel<TPayload, TRawPayload>, options?: BroadcastMessageChannelOptions<TRawPayload>): Promise<BroadcastMessageResult>;
|
|
242
183
|
}
|
|
243
|
-
|
|
244
|
-
interface WorkflowClientWorkersApi {
|
|
184
|
+
export interface ClientWorkersApi {
|
|
245
185
|
/** Creates a worker bound to this client engine and registry. */
|
|
246
|
-
create(options?:
|
|
186
|
+
create(options?: ClientWorkerOptions): WorkflowWorker;
|
|
247
187
|
/** Processes a specific run once by ID. */
|
|
248
|
-
processRun(runId: RunId, options?:
|
|
188
|
+
processRun(runId: RunId, options?: ClientProcessRunOptions): Promise<void>;
|
|
249
189
|
/** Processes currently due runs matching optional filters. */
|
|
250
|
-
wakeDueRuns(options?:
|
|
190
|
+
wakeDueRuns(options?: WakeDueRunsOptions): Promise<WorkerRunResult>;
|
|
251
191
|
}
|
|
252
192
|
/** Options for creating a worker from the grouped client worker API. */
|
|
253
|
-
interface
|
|
193
|
+
export interface ClientWorkerOptions {
|
|
254
194
|
readonly workerId?: WorkerId;
|
|
255
195
|
readonly leaseDuration?: Temporal.Duration;
|
|
256
196
|
readonly pollInterval?: Temporal.Duration;
|
|
257
197
|
readonly heartbeatInterval?: Temporal.Duration;
|
|
258
198
|
readonly stopDrainTimeout?: Temporal.Duration;
|
|
259
|
-
readonly missingImplementationRetry?:
|
|
199
|
+
readonly missingImplementationRetry?: MissingImplementationRetryConfig;
|
|
260
200
|
}
|
|
261
201
|
/** Options for processing one run through a client worker facet. */
|
|
262
|
-
interface
|
|
202
|
+
export interface ClientProcessRunOptions extends WorkerRunFilterOptions {
|
|
263
203
|
readonly workerId?: string;
|
|
264
204
|
readonly leaseDuration?: Temporal.Duration;
|
|
265
205
|
readonly heartbeatInterval?: Temporal.Duration;
|
|
266
|
-
readonly missingImplementationRetry?:
|
|
206
|
+
readonly missingImplementationRetry?: MissingImplementationRetryConfig;
|
|
267
207
|
readonly signal?: AbortSignal;
|
|
268
208
|
}
|
|
269
|
-
//#endregion
|
|
270
|
-
export { CompiledWorkflowFunction, WorkflowClient, WorkflowClientAdminApi, WorkflowClientHooksApi, WorkflowClientLocksApi, WorkflowClientMessagesApi, WorkflowClientProcessRunOptions, WorkflowClientRunsApi, WorkflowClientSchedulesApi, WorkflowClientStreamsApi, WorkflowClientWorkerOptions, WorkflowClientWorkersApi, WorkflowRunHandle, WorkflowRunnable };
|
|
209
|
+
//#endregion
|
|
@@ -1,21 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
type DirectiveKind = "workflow" | "step";
|
|
4
|
-
|
|
5
|
-
interface TransformMetadataEntry {
|
|
1
|
+
import { SourceMapCompact } from "unplugin";
|
|
2
|
+
//#region src/types/compiler.d.ts
|
|
3
|
+
export type DirectiveKind = "workflow" | "step";
|
|
4
|
+
export interface TransformMetadataEntry {
|
|
6
5
|
readonly kind: DirectiveKind;
|
|
7
6
|
readonly name: string;
|
|
8
7
|
readonly generatedName: string;
|
|
9
8
|
readonly workflowName: string;
|
|
10
9
|
readonly version?: string;
|
|
11
10
|
}
|
|
12
|
-
|
|
13
|
-
interface TransformMetadata {
|
|
11
|
+
export interface TransformMetadata {
|
|
14
12
|
readonly file: string;
|
|
15
13
|
readonly entries: readonly TransformMetadataEntry[];
|
|
16
14
|
}
|
|
17
|
-
|
|
18
|
-
interface TransformManifestFunction {
|
|
15
|
+
export interface TransformManifestFunction {
|
|
19
16
|
readonly kind: DirectiveKind;
|
|
20
17
|
readonly exportName: string;
|
|
21
18
|
readonly localName: string;
|
|
@@ -23,8 +20,7 @@ interface TransformManifestFunction {
|
|
|
23
20
|
readonly workflowName: string;
|
|
24
21
|
readonly version?: string;
|
|
25
22
|
}
|
|
26
|
-
|
|
27
|
-
interface TransformManifestImportEdge {
|
|
23
|
+
export interface TransformManifestImportEdge {
|
|
28
24
|
readonly source: string;
|
|
29
25
|
readonly importName: string;
|
|
30
26
|
readonly localName: string;
|
|
@@ -32,14 +28,12 @@ interface TransformManifestImportEdge {
|
|
|
32
28
|
readonly workflowName: string;
|
|
33
29
|
readonly version?: string;
|
|
34
30
|
}
|
|
35
|
-
|
|
36
|
-
interface TransformManifest {
|
|
31
|
+
export interface TransformManifest {
|
|
37
32
|
readonly file: string;
|
|
38
33
|
readonly functions: readonly TransformManifestFunction[];
|
|
39
34
|
readonly imports: readonly TransformManifestImportEdge[];
|
|
40
35
|
}
|
|
41
|
-
|
|
42
|
-
interface TransformOptions {
|
|
36
|
+
export interface TransformOptions {
|
|
43
37
|
readonly root?: string;
|
|
44
38
|
readonly name?: (localName: string, file: string, kind: DirectiveKind) => string;
|
|
45
39
|
readonly version?: string | ((workflowName: string, file: string) => string | undefined);
|
|
@@ -47,19 +41,18 @@ interface TransformOptions {
|
|
|
47
41
|
readonly sourcemap?: boolean;
|
|
48
42
|
readonly runtimeImport?: string;
|
|
49
43
|
}
|
|
50
|
-
/**
|
|
51
|
-
interface
|
|
44
|
+
/** Source map emitted by the workflow compiler, including the original source text. */
|
|
45
|
+
export interface SourceMap extends SourceMapCompact {
|
|
46
|
+
sourcesContent: string[];
|
|
47
|
+
}
|
|
48
|
+
export interface TransformResult {
|
|
52
49
|
readonly code: string;
|
|
53
|
-
readonly map?:
|
|
50
|
+
readonly map?: SourceMap;
|
|
54
51
|
readonly metadata: TransformMetadata;
|
|
55
52
|
readonly manifest: TransformManifest;
|
|
56
53
|
}
|
|
57
|
-
|
|
58
|
-
interface WorkflowPluginOptions extends TransformOptions {
|
|
54
|
+
export interface PluginOptions extends TransformOptions {
|
|
59
55
|
readonly include?: readonly string[];
|
|
60
56
|
readonly exclude?: readonly string[];
|
|
61
57
|
}
|
|
62
|
-
|
|
63
|
-
type VitePluginOptions = WorkflowPluginOptions;
|
|
64
|
-
//#endregion
|
|
65
|
-
export { DirectiveKind, TransformManifest, TransformManifestFunction, TransformManifestImportEdge, TransformMetadata, TransformMetadataEntry, TransformOptions, TransformResult, VitePluginOptions, WorkflowPluginOptions };
|
|
58
|
+
//#endregion
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1,92 +1,80 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { RetryConfig } from "./retry.mjs";
|
|
2
|
+
import { StepApi } from "./step.mjs";
|
|
3
3
|
import { Schema, SchemaOutput } from "@temelj/standard-schema";
|
|
4
|
-
import { Logger } from "@temelj/log";
|
|
5
4
|
//#region src/types/definition.d.ts
|
|
6
5
|
/** Configuration used to name, version, validate, and retry a workflow definition. */
|
|
7
|
-
interface
|
|
6
|
+
export interface DefinitionConfig<TSchema extends Schema | undefined = undefined> {
|
|
8
7
|
readonly name: string;
|
|
9
8
|
readonly version?: string;
|
|
10
9
|
readonly schema?: TSchema;
|
|
11
|
-
readonly retry?:
|
|
10
|
+
readonly retry?: RetryConfig;
|
|
12
11
|
}
|
|
13
12
|
/** Infers the parsed workflow input type from a schema, falling back when no schema is present. */
|
|
14
|
-
type
|
|
13
|
+
export type InputFromSchema<TSchema extends Schema | undefined, TFallback> = TSchema extends Schema ? SchemaOutput<TSchema> : TFallback;
|
|
15
14
|
/** Infers the raw workflow input accepted before schema parsing, falling back when no schema is present. */
|
|
16
|
-
type
|
|
15
|
+
export type RawInputFromSchema<TSchema extends Schema | undefined, TFallback> = TSchema extends Schema<infer TInput, unknown> ? TInput : TFallback;
|
|
17
16
|
/** Durable workflow contract identified by name, optional version, and typed input/output markers. */
|
|
18
|
-
interface WorkflowDefinition<TInput = unknown, TOutput = unknown, TRawInput = TInput> {
|
|
17
|
+
export interface WorkflowDefinition<TInput = unknown, TOutput = unknown, TRawInput = TInput> {
|
|
19
18
|
readonly kind: "definition";
|
|
20
|
-
readonly config:
|
|
19
|
+
readonly config: DefinitionConfig<Schema | undefined>;
|
|
21
20
|
readonly name: string;
|
|
22
21
|
readonly version?: string;
|
|
23
|
-
readonly types?:
|
|
22
|
+
readonly types?: DefinitionTypes<TInput, TOutput, TRawInput>;
|
|
24
23
|
}
|
|
25
24
|
/** Compile-time type markers carried by workflow definitions without affecting runtime behavior. */
|
|
26
|
-
interface
|
|
25
|
+
export interface DefinitionTypes<TInput, TOutput, TRawInput> {
|
|
27
26
|
/** Parsed input type received by the workflow handler. */
|
|
28
27
|
readonly input: TInput;
|
|
29
|
-
/** Output type returned by the workflow handler. */
|
|
30
28
|
readonly output: TOutput;
|
|
31
29
|
/** Raw input type accepted before schema validation. */
|
|
32
30
|
readonly rawInput: TRawInput;
|
|
33
31
|
}
|
|
34
32
|
/** Executable workflow implementation that binds a durable definition to a handler. */
|
|
35
|
-
interface WorkflowImplementation<TInput = unknown, TOutput = unknown, TRawInput = TInput> {
|
|
33
|
+
export interface WorkflowImplementation<TInput = unknown, TOutput = unknown, TRawInput = TInput> {
|
|
36
34
|
readonly kind: "implementation";
|
|
37
35
|
readonly definition: WorkflowDefinition<TInput, TOutput, TRawInput>;
|
|
38
|
-
readonly config:
|
|
36
|
+
readonly config: DefinitionConfig<Schema | undefined>;
|
|
39
37
|
readonly name: string;
|
|
40
38
|
readonly version?: string;
|
|
41
39
|
readonly handler: WorkflowHandler<TInput, TOutput>;
|
|
42
40
|
}
|
|
43
41
|
/** Function that runs workflow logic with a replay-safe workflow context. */
|
|
44
|
-
type WorkflowHandler<TInput, TOutput> = (context: WorkflowContext<TInput>) => Promise<TOutput> | TOutput;
|
|
42
|
+
export type WorkflowHandler<TInput, TOutput> = (context: WorkflowContext<TInput>) => Promise<TOutput> | TOutput;
|
|
45
43
|
/** Context passed to a workflow handler during execution and replay. */
|
|
46
|
-
interface WorkflowContext<TInput> {
|
|
44
|
+
export interface WorkflowContext<TInput> {
|
|
47
45
|
/** Parsed workflow input for the current run. */
|
|
48
46
|
readonly input: TInput;
|
|
49
47
|
/** Durable command API for workflow code. */
|
|
50
|
-
readonly step:
|
|
51
|
-
/** Replay-safe time, random, ID, and byte sources for workflow orchestration code. */
|
|
52
|
-
readonly deterministic: WorkflowDeterministicApi;
|
|
53
|
-
/** Scoped operational logger for workflow orchestration code. */
|
|
54
|
-
readonly log: Logger;
|
|
48
|
+
readonly step: StepApi;
|
|
55
49
|
/** Stable identity and creation metadata for the current run. */
|
|
56
|
-
readonly run:
|
|
57
|
-
/** Abort signal for workflow cancellation. */
|
|
50
|
+
readonly run: RunContext;
|
|
58
51
|
readonly signal: AbortSignal;
|
|
59
|
-
/** Workflow version stored on the current run, if any. */
|
|
60
|
-
readonly version: string | undefined;
|
|
61
52
|
}
|
|
62
53
|
/** Stable identity and creation metadata for the currently executing run. */
|
|
63
|
-
interface
|
|
54
|
+
export interface RunContext {
|
|
64
55
|
readonly id: string;
|
|
65
56
|
readonly workflowName: string;
|
|
66
57
|
readonly workflowVersion?: string;
|
|
67
58
|
readonly createdAt: Temporal.Instant;
|
|
68
59
|
}
|
|
69
60
|
/** Workflow target accepted by start and schedule APIs. */
|
|
70
|
-
type
|
|
61
|
+
export type StartTarget<TInput = unknown, TOutput = unknown, TRawInput = TInput> = WorkflowDefinition<TInput, TOutput, TRawInput> | WorkflowImplementation<TInput, TOutput, TRawInput>;
|
|
71
62
|
/** Registry surface required by clients, workers, and runtimes. */
|
|
72
|
-
interface RegistryLike {
|
|
63
|
+
export interface RegistryLike {
|
|
73
64
|
/** Creates and registers a workflow implementation. */
|
|
74
65
|
implementWorkflow<TInput, TOutput, TRawInput = TInput>(definition: WorkflowDefinition<TInput, TOutput, TRawInput>, handler: WorkflowHandler<TInput, TOutput>): WorkflowImplementation<TInput, TOutput, TRawInput>;
|
|
75
|
-
/** Registers an existing workflow implementation. */
|
|
76
66
|
register<TInput, TOutput, TRawInput = TInput>(implementation: WorkflowImplementation<TInput, TOutput, TRawInput>): void;
|
|
77
|
-
/** Returns the implementation registered for
|
|
67
|
+
/** Returns the implementation registered for this exact definition object, if present. */
|
|
78
68
|
get<TInput, TOutput, TRawInput = TInput>(definition: WorkflowDefinition<TInput, TOutput, TRawInput>): WorkflowImplementation<TInput, TOutput, TRawInput> | undefined;
|
|
79
69
|
/** Returns the implementation registered for a workflow name and optional version. */
|
|
80
70
|
getByName(name: string, version?: string): WorkflowImplementation<unknown, unknown> | undefined;
|
|
81
71
|
/** Returns the latest registered implementation for a workflow name. */
|
|
82
72
|
latest(name: string): WorkflowImplementation<unknown, unknown> | undefined;
|
|
83
73
|
}
|
|
84
|
-
|
|
85
|
-
interface Registry extends RegistryLike {
|
|
74
|
+
export interface Registry extends RegistryLike {
|
|
86
75
|
/** Returns all registered workflow implementations. */
|
|
87
76
|
entries(): readonly WorkflowImplementation<unknown, unknown>[];
|
|
88
77
|
/** Returns the latest registered implementation for a workflow name. */
|
|
89
78
|
latest(name: string): WorkflowImplementation<unknown, unknown> | undefined;
|
|
90
79
|
}
|
|
91
|
-
//#endregion
|
|
92
|
-
export { Registry, RegistryLike, WorkflowContext, WorkflowDefinition, WorkflowDefinitionConfig, WorkflowDefinitionTypes, WorkflowHandler, WorkflowImplementation, WorkflowInputFromSchema, WorkflowRawInputFromSchema, WorkflowRunContext, WorkflowStartTarget };
|
|
80
|
+
//#endregion
|