@voltro/workflow 0.84.0 → 0.85.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
- import { A as e, B as t, C as n, D as r, E as i, F as a, G as o, H as s, I as c, J as l, K as u, M as d, O as f, P as p, R as m, S as h, T as g, U as _, V as v, W as y, X as b, Y as x, Z as S, _ as C, a as w, b as T, c as E, d as D, f as O, g as k, h as A, i as j, j as M, k as N, l as P, m as F, n as I, o as L, p as R, q as z, r as B, s as V, t as H, u as U, v as W, w as G, x as K, y as q, z as J } from "./primitives-Btjhjm8P.js";
2
- import { D as Y, E as X, S as Z, _ as Q, c as $, g as ee, h as te, l as ne, m as re, n as ie, o as ae, r as oe, v as se } from "./journalEncryption--n5VDdYO.js";
3
- import { $ as ce, A as le, B as ue, C as de, Ct as fe, D as pe, Dt as me, E as he, Et as ge, F as _e, G as ve, H as ye, I as be, J as xe, K as Se, L as Ce, M as we, N as Te, O as Ee, Ot as De, P as Oe, Q as ke, R as Ae, S as je, St as Me, T as Ne, Tt as Pe, U as Fe, V as Ie, W as Le, X as Re, Y as ze, Z as Be, _ as Ve, _t as He, a as Ue, at as We, b as Ge, bt as Ke, c as qe, ct as Je, d as Ye, dt as Xe, et as Ze, f as Qe, ft as $e, g as et, gt as tt, h as nt, ht as rt, i as it, it as at, j as ot, k as st, l as ct, lt, m as ut, mt as dt, n as ft, nt as pt, o as mt, ot as ht, p as gt, pt as _t, q as vt, r as yt, rt as bt, s as xt, st as St, t as Ct, tt as wt, u as Tt, ut as Et, v as Dt, vt as Ot, w as kt, wt as At, x as jt, xt as Mt, y as Nt, yt as Pt, z as Ft } from "./src-DP-lKqaG.js";
4
- import { $ as It, A as Lt, B as Rt, Bt as zt, D as Bt, Dt as Vt, F as Ht, Ft as Ut, G as Wt, Gt, H as Kt, Ht as qt, J as Jt, K as Yt, Kt as Xt, L as Zt, Lt as Qt, M as $t, Mt as en, N as tn, Ot as nn, P as rn, Q as an, R as on, Rt as sn, St as cn, Tt as ln, U as un, Ut as dn, Vt as fn, W as pn, Wt as mn, X as hn, Y as gn, Z as _n, _t as vn, at as yn, b as bn, bt as xn, c as Sn, ct as Cn, d as wn, dt as Tn, et as En, f as Dn, ht as On, j as kn, kt as An, lt as jn, mt as Mn, n as Nn, nt as Pn, o as Fn, ot as In, q as Ln, qt as Rn, r as zn, t as Bn, u as Vn, ut as Hn, wt as Un, x as Wn, xt as Gn, y as Kn, z as qn, zt as Jn } from "./clusterDiagnostics-CGUtnJkX.js";
5
- export { Lt as ADMISSIONS_TABLE, Mn as ADMISSION_SUBMISSION_ID_PREFIX, Qe as BUDGET_HOLDS_TABLE, gt as BudgetHoldExpired, vt as CANCEL_ON_WATERMARK, Bn as CLUSTER_REREAD_WINDOW_MS, Nn as ClusterDiagnostics, d as CurrentWorkflowExecutionId, p as CurrentWorkflowPatches, G as CurrentWorkflowReplayShape, a as CurrentWorkflowRunId, c as CurrentWorkflowStep, ut as DEFAULT_BUDGET_HOLD_TIMEOUT_MS, xe as DEFAULT_COLD_LOOKBACK_MS, Ft as DEFAULT_DRAIN_BATCH, ze as DEFAULT_EVENT_BATCH, kn as DEFAULT_LEASE_MS, Ct as DEFAULT_MAX_RUN_RECLAIMS, ft as DEFAULT_REPLAY_SHAPE_LIMIT, Fe as DEFAULT_STALL_AFTER_MS, Le as DEFAULT_STALL_EVENT_LOOKBACK, ve as DEFAULT_STALL_RUN_PAGE, Oe as DEFAULT_SUSPEND_HINT_MS, f as DEFAULT_WORKFLOW_SCHEDULE_MAX_RUNTIME_MS, _ as DEFERRING_CONTROLS, Re as EVENTS_TABLE, Jn as FlowControlKeyError, $t as PAUSES_TABLE, tn as PENDING_TABLE, ie as STEP_JOURNAL_BINDING, le as SuspensionUnavailable, Be as WATERMARKS_TABLE, oe as WORKFLOW_JOURNAL_BINDING, ot as WorkflowCannotPark, H as WorkflowFlowControlProperty, I as WorkflowMessagesProperty, m as WorkflowRunRecorder, N as WorkflowScheduleProperty, yn as WorkflowStartRequestConflictError, J as WorkflowStepInterceptorTag, B as WorkflowVersionTypeId, j as WorkflowWorkerLayerTypeId, nt as _voltroBudgetHoldsTable, rt as _voltroWorkflowAdmissionLocksTable, tt as _voltroWorkflowAdmissionsTable, He as _voltroWorkflowControlRequestsTable, Ot as _voltroWorkflowFailureReportsTable, Pt as _voltroWorkflowParentClosuresTable, Ke as _voltroWorkflowPausesTable, Mt as _voltroWorkflowPendingTable, Pe as _voltroWorkflowRunEventsTable, ge as _voltroWorkflowRunStepsTable, me as _voltroWorkflowRunsTable, At as _voltroWorkflowStartContextsTable, Me as _voltroWorkflowStartReceiptsTable, fe as _voltroWorkflowSubmissionsTable, bt as _voltroWorkflowWatermarksTable, ue as acceptAdmissionSubmission, Kn as acceptWorkflowControlInTransaction, On as acknowledgeAdmissionSubmission, at as admitStart, rn as allIntents, y as assertConsistentPools, x as attachPreparedWorkflowExecution, we as awaitEvent, Te as awaitSignal, de as awaitSignalSuspending, Ye as awaitUpdate, vn as beginAdmissionSubmissionDispatchInTransaction, bn as beginWorkflowControlDispatchInTransaction, Wn as bindWorkflowResumeJournalInTransaction, In as bindWorkflowStartReceipts, et as budgetHoldGeneration, Ve as budgetHoldKey, Dt as budgetHoldSignalName, Je as cancelQueuedWorkflowStartInTransaction, Xe as cancelSuspendedWorkflowRunInTransaction, zt as comparePendingOrder, kt as completeSuspendingSignal, $e as completeWorkflowRunGenerationInTransaction, t as currentWorkflowStep, Ht as deadLetterIntent, fn as decideAdmission, o as deferringControlsOf, Zt as deleteIntent, zn as describeStalledRun, on as discardIntent, qn as discardIntentInTransaction, Ie as drainTick, Rt as dueIntents, w as durableClock, L as durableQueue, V as durableQueueModule, E as durableRateLimiterModule, _t as enterWorkflowRunGenerationInTransaction, Kt as evaluateAdmission, b as executePreparedWorkflow, v as getCurrentWorkflowExecutionId, s as getCurrentWorkflowRunId, P as getWorkflowFlowControl, ae as getWorkflowJournalCipher, e as getWorkflowSchedule, U as getWorkflowVersionMetadata, en as handoffWorkflowFailureInTransaction, u as hasCancelOn, z as hasFlowControl, S as hasPreparedWorkflowExecution, Nt as heldBudgets, De as inMemoryWorkflowEngineLayer, Tt as inspectWorkflow, qt as isFinishExpired, $ as isSealedJournalValue, dn as isStartExpired, ye as isUnacknowledgedSubmission, ne as isWorkflowEncrypted, D as isWorkflowWorkerLayer, We as linkExecution, ct as makeInMemoryRecorder, g as makeReplayShapeTracker, yt as makeWorkflowRunRecorder, he as makeWorkflowUpdateId, _e as maybeHintSuspendingSignal, xn as newAdmissionSubmissionId, wt as newestEventAt, mn as nextSlotAt, i as nondeterminismEventPayload, it as normaliseWorkflowPatches, Gn as noteAdmissionSubmissionFailure, un as noteIntentAttempt, re as openErrorText, te as openEventPayload, ee as openJournalValue, Q as openPayloadFields, se as openWorkflowRow, pn as parkDelayedStart, O as patch, Wt as pauseWorkflow, cn as pendingAdmissionSubmissions, Ge as pendingBudgetHolds, Yt as pendingSlotId, Ln as pendingWindow, Jt as persistDefer, pt as planCancellations, Gt as pooledConcurrencyKey, Un as prepareAdmissionSubmissionExecutionInTransaction, R as processQueue, gn as pruneAdmissions, F as queueWorker, Et as queuedCancellationRequestsTable, A as rateLimit, hn as readAdmissionState, ln as readAdmissionSubmission, _n as readPausedWorkflows, lt as readQueuedWorkflowCancellationInTransaction, ke as readWatermark, Bt as readWorkflowControlInTransaction, Qt as readWorkflowFailureRecord, Fn as readWorkflowRestartObservationInTransaction, Cn as readWorkflowStartReceipt, jn as readWorkflowStartRequest, Ut as reconcileWorkflowFailureInTransaction, an as recordAdmission, sn as recordWorkflowFailureInTransaction, Hn as recordWorkflowStartReceipt, Vt as rejectAdmissionSubmissionInTransaction, jt as releaseBudgetHolds, It as releaseLease, r as reportNondeterminism, nn as reserveAdmissionSubmission, An as reserveAdmissionSubmissionInTransaction, Sn as reserveWorkflowRestartInTransaction, be as resetSuspendHintsForTest, Xt as resolveAdmissionKeys, Ue as resolveRunGuardTuning, Ce as resolveSuspendHintMs, pe as resolveWorkflowMessageRun, Tn as resolveWorkflowStartReceipt, En as resumeWorkflow, Pn as retryDeadLetterIntent, Z as sealJournalValue, Ee as sendWorkflowSignal, st as sendWorkflowUpdate, mt as serialiseWorkflowRowForWire, Ae as setSuspendSignalHintMs, X as setWorkflowJournalCipher, k as sleep, C as sleepUntil, dt as stageWorkflowParentClosureInTransaction, W as step, q as stepIdempotencyKey, T as stepModule, je as suspendForBudget, Ne as suspendingSignalDeferredName, ce as sweepCancelOn, Se as sweepStalledRuns, ht as takeAdmittedSubmissionInTransaction, St as takePendingAdmissionSubmission, xt as truncateWorkflowValue, Y as tryOpenJournalValue, l as validateFlowControl, M as validateWorkflowSchedule, Rn as withAdmissionTransaction, K as withCompensation, Vn as withdrawWorkflowRestartInTransaction, h as workflow, n as workflowModule, wn as workflowRestartRequestsTable, Dn as workflowRestartWithdrawalsTable, qe as wrapWorkflowExecuteWithRunRecording, Ze as writeWatermark };
1
+ import { D as e, E as t, O as n, S as r, _ as i, c as a, g as o, h as s, l as c, m as l, n as u, o as d, r as f, v as p } from "./journalEncryption-DTyhUzaS.js";
2
+ import { A as m, B as h, C as g, D as _, E as v, F as y, G as b, H as x, I as S, J as C, K as w, M as T, O as E, P as D, R as O, S as k, T as A, U as j, V as M, W as N, X as P, Y as F, Z as I, _ as L, a as R, b as z, c as B, d as V, f as H, g as U, h as W, i as G, j as K, k as q, l as J, m as Y, n as X, o as Z, p as Q, q as $, r as ee, s as te, t as ne, u as re, v as ie, w as ae, x as oe, y as se, z as ce } from "./primitives-DX04WTWh.js";
3
+ import { $ as le, A as ue, B as de, C as fe, Ct as pe, D as me, Dt as he, E as ge, Et as _e, F as ve, G as ye, H as be, I as xe, J as Se, K as Ce, L as we, M as Te, N as Ee, O as De, Ot as Oe, P as ke, Q as Ae, R as je, S as Me, St as Ne, T as Pe, Tt as Fe, U as Ie, V as Le, W as Re, X as ze, Y as Be, Z as Ve, _ as He, _t as Ue, a as We, at as Ge, b as Ke, bt as qe, c as Je, ct as Ye, d as Xe, dt as Ze, et as Qe, f as $e, ft as et, g as tt, gt as nt, h as rt, ht as it, i as at, it as ot, j as st, k as ct, l as lt, lt as ut, m as dt, mt as ft, n as pt, nt as mt, o as ht, ot as gt, p as _t, pt as vt, q as yt, r as bt, rt as xt, s as St, st as Ct, t as wt, tt as Tt, u as Et, ut as Dt, v as Ot, vt as kt, w as At, wt as jt, x as Mt, xt as Nt, y as Pt, yt as Ft, z as It } from "./src-C2NEyUM8.js";
4
+ import { $ as Lt, At as Rt, B as zt, Bt, C as Vt, Ct as Ht, Dt as Ut, Et as Wt, F as Gt, G as Kt, Gt as qt, H as Jt, Ht as Yt, I as Xt, J as Zt, Jt as Qt, K as $t, Kt as en, L as tn, Lt as nn, M as rn, N as an, P as on, Pt as sn, Q as cn, S as ln, St as un, Ut as dn, V as fn, Vt as pn, W as mn, Wt as hn, X as gn, Y as _n, Yt as vn, Z as yn, _t as bn, a as xn, c as Sn, ct as Cn, dt as wn, et as Tn, f as En, ft as Dn, gt as On, i as kn, it as An, jt as jn, k as Mn, kt as Nn, m as Pn, nt as Fn, p as In, pt as Ln, q as Rn, qt as zn, r as Bn, st as Vn, tt as Hn, u as Un, ut as Wn, wt as Gn, x as Kn, yt as qn, z as Jn, zt as Yn } from "./workflowReadSelections-CZAUjP7f.js";
5
+ export { rn as ADMISSIONS_TABLE, On as ADMISSION_SUBMISSION_ID_PREFIX, $e as BUDGET_HOLDS_TABLE, _t as BudgetHoldExpired, yt as CANCEL_ON_WATERMARK, Bn as CLUSTER_REREAD_WINDOW_MS, kn as ClusterDiagnostics, T as CurrentWorkflowExecutionId, D as CurrentWorkflowPatches, ae as CurrentWorkflowReplayShape, y as CurrentWorkflowRunId, S as CurrentWorkflowStep, dt as DEFAULT_BUDGET_HOLD_TIMEOUT_MS, Se as DEFAULT_COLD_LOOKBACK_MS, It as DEFAULT_DRAIN_BATCH, Be as DEFAULT_EVENT_BATCH, an as DEFAULT_LEASE_MS, wt as DEFAULT_MAX_RUN_RECLAIMS, pt as DEFAULT_REPLAY_SHAPE_LIMIT, Ie as DEFAULT_STALL_AFTER_MS, Re as DEFAULT_STALL_EVENT_LOOKBACK, ye as DEFAULT_STALL_RUN_PAGE, ke as DEFAULT_SUSPEND_HINT_MS, E as DEFAULT_WORKFLOW_SCHEDULE_MAX_RUNTIME_MS, j as DEFERRING_CONTROLS, ze as EVENTS_TABLE, pn as FlowControlKeyError, on as PAUSES_TABLE, Gt as PENDING_TABLE, u as STEP_JOURNAL_BINDING, ue as SuspensionUnavailable, Ve as WATERMARKS_TABLE, f as WORKFLOW_JOURNAL_BINDING, st as WorkflowCannotPark, ne as WorkflowFlowControlProperty, X as WorkflowMessagesProperty, O as WorkflowRunRecorder, q as WorkflowScheduleProperty, Vn as WorkflowStartRequestConflictError, ce as WorkflowStepInterceptorTag, ee as WorkflowVersionTypeId, G as WorkflowWorkerLayerTypeId, rt as _voltroBudgetHoldsTable, it as _voltroWorkflowAdmissionLocksTable, nt as _voltroWorkflowAdmissionsTable, Ue as _voltroWorkflowControlRequestsTable, kt as _voltroWorkflowFailureReportsTable, Ft as _voltroWorkflowParentClosuresTable, qe as _voltroWorkflowPausesTable, Nt as _voltroWorkflowPendingTable, Fe as _voltroWorkflowRunEventsTable, _e as _voltroWorkflowRunStepsTable, he as _voltroWorkflowRunsTable, jt as _voltroWorkflowStartContextsTable, Ne as _voltroWorkflowStartReceiptsTable, pe as _voltroWorkflowSubmissionsTable, xt as _voltroWorkflowWatermarksTable, de as acceptAdmissionSubmission, Kn as acceptWorkflowControlInTransaction, bn as acknowledgeAdmissionSubmission, ot as admitStart, Xt as allIntents, N as assertConsistentPools, F as attachPreparedWorkflowExecution, Te as awaitEvent, Ee as awaitSignal, fe as awaitSignalSuspending, Xe as awaitUpdate, qn as beginAdmissionSubmissionDispatchInTransaction, ln as beginWorkflowControlDispatchInTransaction, Vt as bindWorkflowResumeJournalInTransaction, Cn as bindWorkflowStartReceipts, tt as budgetHoldGeneration, He as budgetHoldKey, Ot as budgetHoldSignalName, Ye as cancelQueuedWorkflowStartInTransaction, Ze as cancelSuspendedWorkflowRunInTransaction, Yt as comparePendingOrder, At as completeSuspendingSignal, et as completeWorkflowRunGenerationInTransaction, h as currentWorkflowStep, tn as deadLetterIntent, dn as decideAdmission, b as deferringControlsOf, Jn as deleteIntent, xn as describeStalledRun, zt as discardIntent, fn as discardIntentInTransaction, Le as drainTick, Jt as dueIntents, R as durableClock, Z as durableQueue, te as durableQueueModule, vt as enterWorkflowRunGenerationInTransaction, mn as evaluateAdmission, P as executePreparedWorkflow, n as failureMessage, M as getCurrentWorkflowExecutionId, x as getCurrentWorkflowRunId, B as getWorkflowFlowControl, d as getWorkflowJournalCipher, m as getWorkflowSchedule, J as getWorkflowVersionMetadata, sn as handoffWorkflowFailureInTransaction, w as hasCancelOn, $ as hasFlowControl, I as hasPreparedWorkflowExecution, Pt as heldBudgets, Oe as inMemoryWorkflowEngineLayer, Et as inspectWorkflow, re as isCarrier, hn as isFinishExpired, a as isSealedJournalValue, qt as isStartExpired, be as isUnacknowledgedSubmission, c as isWorkflowEncrypted, V as isWorkflowWorkerLayer, Ge as linkExecution, lt as makeInMemoryRecorder, A as makeReplayShapeTracker, bt as makeWorkflowRunRecorder, ge as makeWorkflowUpdateId, ve as maybeHintSuspendingSignal, un as newAdmissionSubmissionId, Tt as newestEventAt, en as nextSlotAt, v as nondeterminismEventPayload, at as normaliseWorkflowPatches, Ht as noteAdmissionSubmissionFailure, Kt as noteIntentAttempt, l as openErrorText, s as openEventPayload, o as openJournalValue, i as openPayloadFields, p as openWorkflowRow, $t as parkDelayedStart, H as patch, Rn as pauseWorkflow, Gn as pendingAdmissionSubmissions, Ke as pendingBudgetHolds, Zt as pendingSlotId, _n as pendingWindow, gn as persistDefer, mt as planCancellations, zn as pooledConcurrencyKey, Wt as prepareAdmissionSubmissionExecutionInTransaction, Q as processQueue, yn as pruneAdmissions, Y as queueWorker, Dt as queuedCancellationRequestsTable, W as rateLimit, cn as readAdmissionState, Ut as readAdmissionSubmission, Lt as readPausedWorkflows, ut as readQueuedWorkflowCancellationInTransaction, Ae as readWatermark, Mn as readWorkflowControlInTransaction, Yn as readWorkflowFailureRecord, Sn as readWorkflowRestartObservationInTransaction, Wn as readWorkflowStartReceipt, wn as readWorkflowStartRequest, nn as reconcileWorkflowFailureInTransaction, Tn as recordAdmission, Bt as recordWorkflowFailureInTransaction, Dn as recordWorkflowStartReceipt, Nn as rejectAdmissionSubmissionInTransaction, Mt as releaseBudgetHolds, Hn as releaseLease, _ as reportNondeterminism, Rt as reserveAdmissionSubmission, jn as reserveAdmissionSubmissionInTransaction, Un as reserveWorkflowRestartInTransaction, xe as resetSuspendHintsForTest, Qt as resolveAdmissionKeys, We as resolveRunGuardTuning, we as resolveSuspendHintMs, me as resolveWorkflowMessageRun, Ln as resolveWorkflowStartReceipt, Fn as resumeWorkflow, An as retryDeadLetterIntent, r as sealJournalValue, De as sendWorkflowSignal, ct as sendWorkflowUpdate, ht as serialiseWorkflowRowForWire, je as setSuspendSignalHintMs, t as setWorkflowJournalCipher, U as sleep, L as sleepUntil, ft as stageWorkflowParentClosureInTransaction, ie as step, se as stepIdempotencyKey, z as stepModule, Me as suspendForBudget, Pe as suspendingSignalDeferredName, le as sweepCancelOn, Ce as sweepStalledRuns, gt as takeAdmittedSubmissionInTransaction, Ct as takePendingAdmissionSubmission, St as truncateWorkflowValue, e as tryOpenJournalValue, C as validateFlowControl, K as validateWorkflowSchedule, vn as withAdmissionTransaction, oe as withCompensation, En as withdrawWorkflowRestartInTransaction, k as workflow, g as workflowModule, In as workflowRestartRequestsTable, Pn as workflowRestartWithdrawalsTable, Je as wrapWorkflowExecuteWithRunRecording, Qe as writeWatermark };
@@ -0,0 +1,154 @@
1
+ import { Activity as e } from "effect/workflow";
2
+ import { Cause as t, Context as n, Effect as r, Effectable as i, Schema as a, SchemaAST as o, SchemaGetter as s, SchemaIssue as c } from "effect";
3
+ //#region src/failureMessage.ts
4
+ var l = (e) => {
5
+ let t = e?.message;
6
+ if (typeof t == "string" && t.length > 0) return t;
7
+ if (typeof e == "object" && e && typeof e.toJSON == "function") {
8
+ let { _tag: t, ...n } = e.toJSON(), r = typeof t == "string" ? t : String(e);
9
+ return Object.keys(n).length === 0 ? r : `${r}: ${JSON.stringify(n)}`;
10
+ }
11
+ return String(e);
12
+ }, u = () => void 0, d = (e) => {
13
+ u = typeof e == "function" ? e : () => e;
14
+ }, f = () => u(), p = n.Reference("@voltro/workflow/CurrentWorkflowEncrypted", { defaultValue: () => !1 }), m = { column: "workflow-journal" }, h = /* @__PURE__ */ new Set(), g = (e) => {
15
+ h.add(e);
16
+ }, _ = /* @__PURE__ */ new Set(), v = (e) => {
17
+ _.add(e);
18
+ }, y = (e) => _.has(e), b = (e) => h.has(e), x = (e) => typeof e == "string" && (e.startsWith("enc:v1:") || e.startsWith("enc:v2:")), S = (e) => /* @__PURE__ */ Error(`${e}: the workflow is declared encrypted, but no field-encryption key is registered — set VOLTRO_FIELD_ENCRYPTION_KEY (\`voltro secret generate field-encryption\`). Nothing was written in plaintext instead.`), C = (e, t, n = m) => {
19
+ if (e == null) return e;
20
+ let r = u();
21
+ if (r === void 0) throw S(t);
22
+ return r.encrypt(JSON.stringify(e), n);
23
+ }, w = (e, t, n = m) => {
24
+ if (!x(e)) return e;
25
+ let r = u();
26
+ if (r === void 0) throw S(t);
27
+ return JSON.parse(r.decrypt(e, n));
28
+ }, T = (e) => o.isVoid(e) || o.isNever(e) || o.isUndefined(e), E = (e, t) => {
29
+ if (T(e.ast)) return e;
30
+ let n = (e, t) => {
31
+ try {
32
+ return r.succeed(t());
33
+ } catch (t) {
34
+ return r.fail(new c.InvalidValue({ message: t.message }, e));
35
+ }
36
+ };
37
+ return (e.ast.context?.isOptional === !0 ? a.optionalKey(a.Unknown) : a.Unknown).pipe(a.decodeTo(e, {
38
+ decode: s.transformEffect((e) => n(e, () => Array.isArray(e) ? e.map((e) => w(e, t)) : w(e, t))),
39
+ encode: s.transformEffect((e) => n(e, () => e === void 0 ? void 0 : C(e, t)))
40
+ }));
41
+ }, D = (e, t) => {
42
+ let n = a.isSchema(t) ? t.fields : t, r = `workflow '${e}' payload`, i = {};
43
+ for (let [e, t] of Object.entries(n)) i[e] = E(t, `${r}.${e}`);
44
+ return i;
45
+ }, O = (e) => typeof e == "object" && !!e && !Array.isArray(e), k = (e, t) => {
46
+ if (!O(e)) return w(e, t);
47
+ let n = {};
48
+ for (let [r, i] of Object.entries(e)) n[r] = w(i, `${t}.${r}`);
49
+ return n;
50
+ }, A = (e, t) => {
51
+ let n = {};
52
+ for (let [r, i] of Object.entries(e)) n[r] = C(i, `${t}.${r}`);
53
+ return n;
54
+ }, j = "VoltroSealedDefect", M = (e, t) => {
55
+ if (e instanceof Error && e.name === "VoltroSealedDefect") return e;
56
+ let n = e instanceof Error ? {
57
+ name: e.name,
58
+ message: e.message,
59
+ ...e.stack === void 0 ? {} : { stack: e.stack }
60
+ } : {
61
+ name: "Defect",
62
+ message: typeof e == "string" ? e : P(e)
63
+ }, r = Error(String(C(n, t)));
64
+ return r.name = j, r.stack = `${j}: ${r.message}`, r;
65
+ }, N = (e, t) => {
66
+ let n = e?.name, r = e?.message;
67
+ if (n !== "VoltroSealedDefect" || typeof r != "string" || !x(r)) return e;
68
+ try {
69
+ let e = w(r, t), n = Error(e.message ?? "");
70
+ return n.name = e.name ?? "Error", e.stack !== void 0 && (n.stack = e.stack), n;
71
+ } catch {
72
+ return e;
73
+ }
74
+ }, P = (e) => {
75
+ try {
76
+ return JSON.stringify(e) ?? String(e);
77
+ } catch {
78
+ return String(e);
79
+ }
80
+ }, F = () => h.size > 0, I = (e, t) => t == null ? null : b(e) ? String(C(t, `workflow '${e}' error message`)) : t, L = (e, t) => {
81
+ try {
82
+ return w(e, t);
83
+ } catch {
84
+ return e;
85
+ }
86
+ }, R = (e) => {
87
+ if (e == null) return null;
88
+ let t = L(e, "workflow error message");
89
+ return typeof t == "string" ? t : e;
90
+ }, z = [
91
+ "value",
92
+ "result",
93
+ "errorMessage"
94
+ ], B = (e, t) => {
95
+ if (t == null) return null;
96
+ if (!b(e)) return t;
97
+ let n = { ...t };
98
+ for (let t of z) t in n && n[t] !== void 0 && n[t] !== null && !x(n[t]) && (n[t] = C(n[t], `workflow '${e}' event ${t}`));
99
+ return n;
100
+ }, V = (e) => {
101
+ if (!O(e)) return e;
102
+ let t = { ...e };
103
+ for (let e of z) x(t[e]) && (t[e] = L(t[e], `workflow event ${e}`));
104
+ return t;
105
+ }, H = (t) => {
106
+ let n = e.make({
107
+ ...t,
108
+ error: a.Defect()
109
+ }), o, s = `wait '${t.name}'`, c = () => o ??= e.make({
110
+ ...t,
111
+ success: E(t.success, `${s} value`),
112
+ error: a.Defect(),
113
+ execute: t.execute.pipe(r.catchDefect((e) => r.die(M(e, `${s} defect`))))
114
+ }), l = n;
115
+ return {
116
+ ...n,
117
+ ...i.Prototype({
118
+ label: "Activity",
119
+ evaluate: () => r.flatMap(p, (e) => e ? c().pipe(r.catchDefect((e) => r.die(N(e, `${s} defect`)))) : l)
120
+ })
121
+ };
122
+ }, U = { column: "_voltro_workflow_run_steps:payload" }, W = (e) => {
123
+ if (!x(e)) return e;
124
+ try {
125
+ return w(e, "workflow step value", U);
126
+ } catch {
127
+ return e;
128
+ }
129
+ }, G = (e) => {
130
+ if (!O(e)) return e;
131
+ let t = { ...e };
132
+ if ("eventType" in t) return "payload" in t && (t.payload = V(t.payload)), t;
133
+ if ("stepName" in t && ("input" in t || "errorCause" in t)) {
134
+ for (let e of [
135
+ "input",
136
+ "output",
137
+ "errorCause",
138
+ "errorMessage"
139
+ ]) e in t && (t[e] = W(t[e]));
140
+ return t;
141
+ }
142
+ if ("payload" in t) try {
143
+ t.payload = k(t.payload, "workflow run payload");
144
+ } catch {}
145
+ return "output" in t && (t.output = L(t.output, "workflow run result")), typeof t.errorMessage == "string" && (t.errorMessage = R(t.errorMessage)), t;
146
+ }, K = (e, n) => {
147
+ if (e === void 0 || !b(e)) {
148
+ let e = t.isCause(n) ? t.squash(n) : n;
149
+ return e instanceof Error && e.message.length > 0 ? `${e.name}: ${e.message}` : l(e);
150
+ }
151
+ return `${n instanceof Error ? n.name : typeof n}: [withheld — workflow '${e}' is declared encrypted; the full cause is recorded sealed on its row]`;
152
+ };
153
+ //#endregion
154
+ export { A as C, L as D, d as E, l as O, C as S, E as T, k as _, H as a, I as b, x as c, v as d, g as f, w as g, V as h, F as i, b as l, R as m, U as n, f as o, N as p, m as r, y as s, p as t, K as u, G as v, D as w, B as x, M as y };