@memberjunction/actions-base 5.28.0 → 5.30.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.
@@ -219,6 +219,20 @@ export declare class RunActionParams<TContext = any> {
219
219
  * as context may be passed through multiple execution layers.
220
220
  */
221
221
  Context?: TContext;
222
+ /**
223
+ * Optional AbortSignal that is aborted when the action exceeds its wall-clock
224
+ * time budget (set via `Action.MaxExecutionTimeMS` or the engine default). Set
225
+ * automatically by `ActionEngine.RunAction()` — callers should not populate it
226
+ * directly. Long-running action implementations should poll this signal
227
+ * (e.g. between batches, between retries, inside tight loops) and return
228
+ * early with `ResultCode = 'TIMEOUT'` when it fires, so the enforcement is
229
+ * cooperative rather than ending the Node process.
230
+ *
231
+ * The engine also records the timeout on `AbortSignal.reason` as a string
232
+ * describing which side (action vs engine default) supplied the budget,
233
+ * which makes timeout-origin debugging straightforward.
234
+ */
235
+ AbortSignal?: AbortSignal;
222
236
  }
223
237
  /**
224
238
  * Base class for Action metadata.
@@ -1 +1 @@
1
- {"version":3,"file":"ActionEngine-Base.d.ts","sourceRoot":"","sources":["../src/ActionEngine-Base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ActionEngine-Base.d.ts","sourceRoot":"","sources":["../src/ActionEngine-Base.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ActionEngine-Base.js","sourceRoot":"","sources":["../src/ActionEngine-Base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ActionEngine-Base.js","sourceRoot":"","sources":["../src/ActionEngine-Base.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,66 @@
1
+ import { UserInfo } from '@memberjunction/core';
2
+ import { BaseSingleton } from '@memberjunction/global';
3
+ import { BridgeHandlerMap } from '@memberjunction/code-execution';
4
+ import { MJActionEntity, MJActionEntity_IRuntimeActionConfiguration } from '@memberjunction/core-entities';
5
+ /**
6
+ * Shared context passed to `RuntimeActionBridgeBuilder.BuildHandlers` at
7
+ * the point ActionEngine decides to run a `Type='Runtime'` action. Everything
8
+ * the builder needs to produce a per-execution handler map lives here.
9
+ *
10
+ * `config` has already been Zod-validated by ActionEngine before the builder
11
+ * is asked to build handlers — implementations can trust the shape.
12
+ */
13
+ export interface BridgeContext {
14
+ /** The MJ Action record being executed. */
15
+ action: MJActionEntity;
16
+ /** Validated runtime configuration parsed from `Action.RuntimeActionConfiguration`. */
17
+ config: MJActionEntity_IRuntimeActionConfiguration;
18
+ /** The invoking user context — used for permission checks inside handlers. */
19
+ contextUser: UserInfo;
20
+ /** Optional cancellation signal propagated from the caller. */
21
+ abortSignal?: AbortSignal;
22
+ }
23
+ /**
24
+ * Abstract contract for building the bridge handler map that
25
+ * `CodeExecutionService` exposes to sandboxed Runtime-action code, plus the
26
+ * JavaScript preamble injected at the top of the user code to define the
27
+ * `utilities.*` namespace.
28
+ *
29
+ * ## Why this is abstract
30
+ *
31
+ * The concrete bridge needs to call into `@memberjunction/ai-agents`,
32
+ * `@memberjunction/ai-prompts`, and `@memberjunction/aiengine` — packages
33
+ * that already depend on `@memberjunction/actions`. Putting the concrete
34
+ * implementation directly inside `@memberjunction/actions` creates a cycle.
35
+ *
36
+ * Instead, the actions package takes a runtime dependency on this abstract
37
+ * via `ClassFactory.CreateInstance`, and a top-of-stack package
38
+ * (`@memberjunction/action-runtime-host`) registers a concrete subclass via
39
+ * `@RegisterClass`. External consumers can register their own subclass with
40
+ * higher auto-priority to override the default bridge — for example, to add
41
+ * custom namespaces, restrict the surface area, or swap in a mock for tests.
42
+ *
43
+ * If no subclass is registered, ActionEngine falls through to pure-compute
44
+ * mode (no bridge available, user code sees only `input`/`output`) — a
45
+ * graceful degradation, not an error.
46
+ */
47
+ export declare abstract class RuntimeActionBridgeBuilder extends BaseSingleton<RuntimeActionBridgeBuilder> {
48
+ protected constructor();
49
+ /**
50
+ * Build the per-execution handler map exposed to sandboxed user code via
51
+ * `__bridgeCall(name, args)`. Each handler runs in the host process and
52
+ * is responsible for its own authorization checks against `ctx.config`
53
+ * (the permission allowlists in `RuntimeActionConfiguration.permissions`).
54
+ */
55
+ abstract BuildHandlers(ctx: BridgeContext): BridgeHandlerMap;
56
+ /**
57
+ * Returns the JavaScript preamble that `ActionEngine` prepends to the
58
+ * user's Runtime action code. The preamble defines the `utilities.*`
59
+ * namespace object whose methods proxy through `__bridgeCall` to the
60
+ * handlers returned by `BuildHandlers`. Preamble and handler map MUST
61
+ * stay in sync — a `utilities.foo.bar(x)` call requires a
62
+ * `'foo.bar'` handler to be registered.
63
+ */
64
+ abstract GetPreamble(): string;
65
+ }
66
+ //# sourceMappingURL=RuntimeActionBridgeBuilder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RuntimeActionBridgeBuilder.d.ts","sourceRoot":"","sources":["../src/RuntimeActionBridgeBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,0CAA0C,EAAE,MAAM,+BAA+B,CAAC;AAE3G;;;;;;;GAOG;AACH,MAAM,WAAW,aAAa;IAC1B,2CAA2C;IAC3C,MAAM,EAAE,cAAc,CAAC;IACvB,uFAAuF;IACvF,MAAM,EAAE,0CAA0C,CAAC;IACnD,8EAA8E;IAC9E,WAAW,EAAE,QAAQ,CAAC;IACtB,+DAA+D;IAC/D,WAAW,CAAC,EAAE,WAAW,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,8BAAsB,0BAA2B,SAAQ,aAAa,CAAC,0BAA0B,CAAC;IAC9F,SAAS;IAWT;;;;;OAKG;aACa,aAAa,CAAC,GAAG,EAAE,aAAa,GAAG,gBAAgB;IAEnE;;;;;;;OAOG;aACa,WAAW,IAAI,MAAM;CACxC"}
@@ -0,0 +1,31 @@
1
+ import { BaseSingleton } from '@memberjunction/global';
2
+ /**
3
+ * Abstract contract for building the bridge handler map that
4
+ * `CodeExecutionService` exposes to sandboxed Runtime-action code, plus the
5
+ * JavaScript preamble injected at the top of the user code to define the
6
+ * `utilities.*` namespace.
7
+ *
8
+ * ## Why this is abstract
9
+ *
10
+ * The concrete bridge needs to call into `@memberjunction/ai-agents`,
11
+ * `@memberjunction/ai-prompts`, and `@memberjunction/aiengine` — packages
12
+ * that already depend on `@memberjunction/actions`. Putting the concrete
13
+ * implementation directly inside `@memberjunction/actions` creates a cycle.
14
+ *
15
+ * Instead, the actions package takes a runtime dependency on this abstract
16
+ * via `ClassFactory.CreateInstance`, and a top-of-stack package
17
+ * (`@memberjunction/action-runtime-host`) registers a concrete subclass via
18
+ * `@RegisterClass`. External consumers can register their own subclass with
19
+ * higher auto-priority to override the default bridge — for example, to add
20
+ * custom namespaces, restrict the surface area, or swap in a mock for tests.
21
+ *
22
+ * If no subclass is registered, ActionEngine falls through to pure-compute
23
+ * mode (no bridge available, user code sees only `input`/`output`) — a
24
+ * graceful degradation, not an error.
25
+ */
26
+ export class RuntimeActionBridgeBuilder extends BaseSingleton {
27
+ constructor() {
28
+ super();
29
+ }
30
+ }
31
+ //# sourceMappingURL=RuntimeActionBridgeBuilder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RuntimeActionBridgeBuilder.js","sourceRoot":"","sources":["../src/RuntimeActionBridgeBuilder.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAuBvD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,OAAgB,0BAA2B,SAAQ,aAAyC;IAC9F;QACI,KAAK,EAAE,CAAC;IACZ,CAAC;CA0BJ"}
@@ -0,0 +1,221 @@
1
+ /**
2
+ * Runtime validation for Action.RuntimeActionConfiguration (Action.Type='Runtime').
3
+ *
4
+ * The canonical TypeScript shape is declared via the JSONType metadata system
5
+ * and lives at `metadata/entities/JSONType-interfaces/IRuntimeActionConfiguration.ts`.
6
+ * CodeGen inlines it into `@memberjunction/core-entities` as
7
+ * `MJActionEntity_IRuntimeActionConfiguration`. This file adds runtime Zod
8
+ * validation because JSONType itself does not enforce shape at Save() time,
9
+ * and the Runtime Action config drives sandbox security scopes — a malformed
10
+ * blob is a security concern, not just a DX one.
11
+ *
12
+ * The schemas use `.strict()` so unknown top-level or nested keys are rejected
13
+ * at parse time — this prevents silent drift when the config is authored by
14
+ * hand or by an older client that doesn't know about a new required field.
15
+ *
16
+ * ## Drift detection
17
+ *
18
+ * This repo currently builds without `strictNullChecks`, which collapses the
19
+ * required/optional distinction in Zod's inferred types enough that a pure
20
+ * compile-time type-equivalence assertion against
21
+ * `MJActionEntity_IRuntimeActionConfiguration` is unreliable (false
22
+ * positives that don't reflect real semantic mismatch).
23
+ *
24
+ * Drift is therefore caught by the Vitest suite in
25
+ * `__tests__/RuntimeActionConfigurationSchema.test.ts`, which:
26
+ * 1. Parses a canonical fully-populated instance typed as
27
+ * `MJActionEntity_IRuntimeActionConfiguration` — this asserts that every
28
+ * interface field is accepted by the Zod schema.
29
+ * 2. Rejects known bad shapes (missing required fields, unknown keys,
30
+ * wrong types) — this asserts that the strictness is preserved.
31
+ * 3. Treats the Zod-inferred type and the JSONType interface as mutual
32
+ * assignment targets in a dedicated pair of `satisfies` clauses, so any
33
+ * structural drift is surfaced as a test-level TS error.
34
+ *
35
+ * When adding or removing fields here, mirror the change in the JSONType
36
+ * source file and update the canonical test fixture — the tests will tell
37
+ * you if you miss a spot.
38
+ */
39
+ import { z } from 'zod';
40
+ import type { MJActionEntity_IRuntimeActionConfiguration } from '@memberjunction/core-entities';
41
+ /**
42
+ * Strict validator for the full RuntimeActionConfiguration blob. Use
43
+ * `safeParse()` at Runtime-action authoring time (inside ActionSmith) and
44
+ * again in `ActionEngine.runRuntimeAction()` before sandbox dispatch.
45
+ */
46
+ export declare const RuntimeActionConfigurationSchema: z.ZodObject<{
47
+ permissions: z.ZodObject<{
48
+ allowedActions: z.ZodArray<z.ZodObject<{
49
+ id: z.ZodString;
50
+ name: z.ZodString;
51
+ }, "strict", z.ZodTypeAny, {
52
+ id?: string;
53
+ name?: string;
54
+ }, {
55
+ id?: string;
56
+ name?: string;
57
+ }>, "many">;
58
+ allowedAgents: z.ZodArray<z.ZodObject<{
59
+ id: z.ZodString;
60
+ name: z.ZodString;
61
+ }, "strict", z.ZodTypeAny, {
62
+ id?: string;
63
+ name?: string;
64
+ }, {
65
+ id?: string;
66
+ name?: string;
67
+ }>, "many">;
68
+ allowedEntities: z.ZodArray<z.ZodObject<{
69
+ id: z.ZodString;
70
+ name: z.ZodString;
71
+ }, "strict", z.ZodTypeAny, {
72
+ id?: string;
73
+ name?: string;
74
+ }, {
75
+ id?: string;
76
+ name?: string;
77
+ }>, "many">;
78
+ allowAnyEntity: z.ZodOptional<z.ZodBoolean>;
79
+ allowAnyAction: z.ZodOptional<z.ZodBoolean>;
80
+ allowAnyAgent: z.ZodOptional<z.ZodBoolean>;
81
+ }, "strict", z.ZodTypeAny, {
82
+ allowedActions?: {
83
+ id?: string;
84
+ name?: string;
85
+ }[];
86
+ allowedAgents?: {
87
+ id?: string;
88
+ name?: string;
89
+ }[];
90
+ allowedEntities?: {
91
+ id?: string;
92
+ name?: string;
93
+ }[];
94
+ allowAnyEntity?: boolean;
95
+ allowAnyAction?: boolean;
96
+ allowAnyAgent?: boolean;
97
+ }, {
98
+ allowedActions?: {
99
+ id?: string;
100
+ name?: string;
101
+ }[];
102
+ allowedAgents?: {
103
+ id?: string;
104
+ name?: string;
105
+ }[];
106
+ allowedEntities?: {
107
+ id?: string;
108
+ name?: string;
109
+ }[];
110
+ allowAnyEntity?: boolean;
111
+ allowAnyAction?: boolean;
112
+ allowAnyAgent?: boolean;
113
+ }>;
114
+ limits: z.ZodOptional<z.ZodObject<{
115
+ maxMemoryMB: z.ZodOptional<z.ZodNumber>;
116
+ maxBridgeCalls: z.ZodOptional<z.ZodNumber>;
117
+ }, "strict", z.ZodTypeAny, {
118
+ maxMemoryMB?: number;
119
+ maxBridgeCalls?: number;
120
+ }, {
121
+ maxMemoryMB?: number;
122
+ maxBridgeCalls?: number;
123
+ }>>;
124
+ sandbox: z.ZodOptional<z.ZodObject<{
125
+ additionalLibraries: z.ZodOptional<z.ZodArray<z.ZodObject<{
126
+ name: z.ZodString;
127
+ version: z.ZodOptional<z.ZodString>;
128
+ }, "strict", z.ZodTypeAny, {
129
+ name?: string;
130
+ version?: string;
131
+ }, {
132
+ name?: string;
133
+ version?: string;
134
+ }>, "many">>;
135
+ debugMode: z.ZodOptional<z.ZodBoolean>;
136
+ }, "strict", z.ZodTypeAny, {
137
+ additionalLibraries?: {
138
+ name?: string;
139
+ version?: string;
140
+ }[];
141
+ debugMode?: boolean;
142
+ }, {
143
+ additionalLibraries?: {
144
+ name?: string;
145
+ version?: string;
146
+ }[];
147
+ debugMode?: boolean;
148
+ }>>;
149
+ version: z.ZodOptional<z.ZodString>;
150
+ previousVersionId: z.ZodOptional<z.ZodString>;
151
+ }, "strict", z.ZodTypeAny, {
152
+ version?: string;
153
+ permissions?: {
154
+ allowedActions?: {
155
+ id?: string;
156
+ name?: string;
157
+ }[];
158
+ allowedAgents?: {
159
+ id?: string;
160
+ name?: string;
161
+ }[];
162
+ allowedEntities?: {
163
+ id?: string;
164
+ name?: string;
165
+ }[];
166
+ allowAnyEntity?: boolean;
167
+ allowAnyAction?: boolean;
168
+ allowAnyAgent?: boolean;
169
+ };
170
+ limits?: {
171
+ maxMemoryMB?: number;
172
+ maxBridgeCalls?: number;
173
+ };
174
+ sandbox?: {
175
+ additionalLibraries?: {
176
+ name?: string;
177
+ version?: string;
178
+ }[];
179
+ debugMode?: boolean;
180
+ };
181
+ previousVersionId?: string;
182
+ }, {
183
+ version?: string;
184
+ permissions?: {
185
+ allowedActions?: {
186
+ id?: string;
187
+ name?: string;
188
+ }[];
189
+ allowedAgents?: {
190
+ id?: string;
191
+ name?: string;
192
+ }[];
193
+ allowedEntities?: {
194
+ id?: string;
195
+ name?: string;
196
+ }[];
197
+ allowAnyEntity?: boolean;
198
+ allowAnyAction?: boolean;
199
+ allowAnyAgent?: boolean;
200
+ };
201
+ limits?: {
202
+ maxMemoryMB?: number;
203
+ maxBridgeCalls?: number;
204
+ };
205
+ sandbox?: {
206
+ additionalLibraries?: {
207
+ name?: string;
208
+ version?: string;
209
+ }[];
210
+ debugMode?: boolean;
211
+ };
212
+ previousVersionId?: string;
213
+ }>;
214
+ /**
215
+ * The canonical RuntimeActionConfiguration type. Sourced from the JSONType
216
+ * interface in `@memberjunction/core-entities` so there is exactly one
217
+ * source of truth for the shape. Re-exported here so consumers can pull
218
+ * both the validator and the type from a single import.
219
+ */
220
+ export type RuntimeActionConfiguration = MJActionEntity_IRuntimeActionConfiguration;
221
+ //# sourceMappingURL=RuntimeActionConfigurationSchema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RuntimeActionConfigurationSchema.d.ts","sourceRoot":"","sources":["../src/RuntimeActionConfigurationSchema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,0CAA0C,EAAE,MAAM,+BAA+B,CAAC;AAiDhG;;;;GAIG;AACH,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQhC,CAAC;AAEd;;;;;GAKG;AACH,MAAM,MAAM,0BAA0B,GAAG,0CAA0C,CAAC"}
@@ -0,0 +1,96 @@
1
+ /**
2
+ * Runtime validation for Action.RuntimeActionConfiguration (Action.Type='Runtime').
3
+ *
4
+ * The canonical TypeScript shape is declared via the JSONType metadata system
5
+ * and lives at `metadata/entities/JSONType-interfaces/IRuntimeActionConfiguration.ts`.
6
+ * CodeGen inlines it into `@memberjunction/core-entities` as
7
+ * `MJActionEntity_IRuntimeActionConfiguration`. This file adds runtime Zod
8
+ * validation because JSONType itself does not enforce shape at Save() time,
9
+ * and the Runtime Action config drives sandbox security scopes — a malformed
10
+ * blob is a security concern, not just a DX one.
11
+ *
12
+ * The schemas use `.strict()` so unknown top-level or nested keys are rejected
13
+ * at parse time — this prevents silent drift when the config is authored by
14
+ * hand or by an older client that doesn't know about a new required field.
15
+ *
16
+ * ## Drift detection
17
+ *
18
+ * This repo currently builds without `strictNullChecks`, which collapses the
19
+ * required/optional distinction in Zod's inferred types enough that a pure
20
+ * compile-time type-equivalence assertion against
21
+ * `MJActionEntity_IRuntimeActionConfiguration` is unreliable (false
22
+ * positives that don't reflect real semantic mismatch).
23
+ *
24
+ * Drift is therefore caught by the Vitest suite in
25
+ * `__tests__/RuntimeActionConfigurationSchema.test.ts`, which:
26
+ * 1. Parses a canonical fully-populated instance typed as
27
+ * `MJActionEntity_IRuntimeActionConfiguration` — this asserts that every
28
+ * interface field is accepted by the Zod schema.
29
+ * 2. Rejects known bad shapes (missing required fields, unknown keys,
30
+ * wrong types) — this asserts that the strictness is preserved.
31
+ * 3. Treats the Zod-inferred type and the JSONType interface as mutual
32
+ * assignment targets in a dedicated pair of `satisfies` clauses, so any
33
+ * structural drift is surfaced as a test-level TS error.
34
+ *
35
+ * When adding or removing fields here, mirror the change in the JSONType
36
+ * source file and update the canonical test fixture — the tests will tell
37
+ * you if you miss a spot.
38
+ */
39
+ import { z } from 'zod';
40
+ /** id + human-readable name pair for permission scope entries. */
41
+ const RuntimeActionReferenceSchema = z
42
+ .object({
43
+ id: z.string().uuid(),
44
+ name: z.string().min(1)
45
+ })
46
+ .strict();
47
+ /** Reference to an approved sandbox library. */
48
+ const RuntimeLibraryReferenceSchema = z
49
+ .object({
50
+ name: z.string().min(1),
51
+ version: z.string().optional()
52
+ })
53
+ .strict();
54
+ const RuntimeActionPermissionsSchema = z
55
+ .object({
56
+ allowedActions: z.array(RuntimeActionReferenceSchema),
57
+ allowedAgents: z.array(RuntimeActionReferenceSchema),
58
+ allowedEntities: z.array(RuntimeActionReferenceSchema),
59
+ // Escape hatches for framework-authored utility actions. See the
60
+ // JSONType interface file for full docs + warnings. Approval UI
61
+ // flags any of these when set.
62
+ allowAnyEntity: z.boolean().optional(),
63
+ allowAnyAction: z.boolean().optional(),
64
+ allowAnyAgent: z.boolean().optional()
65
+ })
66
+ .strict();
67
+ const RuntimeActionLimitsSchema = z
68
+ .object({
69
+ // maxMemoryMB must be positive — zero memory means nothing can execute.
70
+ maxMemoryMB: z.number().int().positive().optional(),
71
+ // maxBridgeCalls=0 is legitimate ("pure compute, no bridge access
72
+ // allowed") so we use .nonnegative() rather than .positive().
73
+ maxBridgeCalls: z.number().int().nonnegative().optional()
74
+ })
75
+ .strict();
76
+ const RuntimeActionSandboxOptionsSchema = z
77
+ .object({
78
+ additionalLibraries: z.array(RuntimeLibraryReferenceSchema).optional(),
79
+ debugMode: z.boolean().optional()
80
+ })
81
+ .strict();
82
+ /**
83
+ * Strict validator for the full RuntimeActionConfiguration blob. Use
84
+ * `safeParse()` at Runtime-action authoring time (inside ActionSmith) and
85
+ * again in `ActionEngine.runRuntimeAction()` before sandbox dispatch.
86
+ */
87
+ export const RuntimeActionConfigurationSchema = z
88
+ .object({
89
+ permissions: RuntimeActionPermissionsSchema,
90
+ limits: RuntimeActionLimitsSchema.optional(),
91
+ sandbox: RuntimeActionSandboxOptionsSchema.optional(),
92
+ version: z.string().optional(),
93
+ previousVersionId: z.string().uuid().optional()
94
+ })
95
+ .strict();
96
+ //# sourceMappingURL=RuntimeActionConfigurationSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RuntimeActionConfigurationSchema.js","sourceRoot":"","sources":["../src/RuntimeActionConfigurationSchema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,kEAAkE;AAClE,MAAM,4BAA4B,GAAG,CAAC;KACjC,MAAM,CAAC;IACJ,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;IACrB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAC1B,CAAC;KACD,MAAM,EAAE,CAAC;AAEd,gDAAgD;AAChD,MAAM,6BAA6B,GAAG,CAAC;KAClC,MAAM,CAAC;IACJ,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACjC,CAAC;KACD,MAAM,EAAE,CAAC;AAEd,MAAM,8BAA8B,GAAG,CAAC;KACnC,MAAM,CAAC;IACJ,cAAc,EAAE,CAAC,CAAC,KAAK,CAAC,4BAA4B,CAAC;IACrD,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,4BAA4B,CAAC;IACpD,eAAe,EAAE,CAAC,CAAC,KAAK,CAAC,4BAA4B,CAAC;IACtD,iEAAiE;IACjE,gEAAgE;IAChE,+BAA+B;IAC/B,cAAc,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACtC,cAAc,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACtC,aAAa,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CACxC,CAAC;KACD,MAAM,EAAE,CAAC;AAEd,MAAM,yBAAyB,GAAG,CAAC;KAC9B,MAAM,CAAC;IACJ,wEAAwE;IACxE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACnD,kEAAkE;IAClE,8DAA8D;IAC9D,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;CAC5D,CAAC;KACD,MAAM,EAAE,CAAC;AAEd,MAAM,iCAAiC,GAAG,CAAC;KACtC,MAAM,CAAC;IACJ,mBAAmB,EAAE,CAAC,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC,QAAQ,EAAE;IACtE,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CACpC,CAAC;KACD,MAAM,EAAE,CAAC;AAEd;;;;GAIG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC;KAC5C,MAAM,CAAC;IACJ,WAAW,EAAE,8BAA8B;IAC3C,MAAM,EAAE,yBAAyB,CAAC,QAAQ,EAAE;IAC5C,OAAO,EAAE,iCAAiC,CAAC,QAAQ,EAAE;IACrD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;CAClD,CAAC;KACD,MAAM,EAAE,CAAC"}
@@ -87,9 +87,37 @@ vi.mock('@memberjunction/core-entities', () => ({
87
87
  }
88
88
  }
89
89
  }));
90
- vi.mock('@memberjunction/global', () => ({
91
- RegisterClass: () => (target) => target
92
- }));
90
+ vi.mock('@memberjunction/global', () => {
91
+ // Minimal BaseSingleton stub. `RuntimeActionBridgeBuilder` (reached from
92
+ // `src/index.ts`) extends BaseSingleton; without it in the mock, the test
93
+ // suite fails to load at import time with "No BaseSingleton export".
94
+ class BaseSingleton {
95
+ static getInstance() {
96
+ const key = '__mjTestBaseSingleton_' + this.name;
97
+ const g = globalThis;
98
+ if (!g[key])
99
+ g[key] = new this();
100
+ return g[key];
101
+ }
102
+ }
103
+ return {
104
+ BaseSingleton,
105
+ RegisterClass: () => (target) => target,
106
+ // Basic case-insensitive UUID equality — sufficient for tests that
107
+ // pass matching UUIDs. EntityActionEngineBase.GetActionsByEntityID
108
+ // uses this to compare the requested entity ID against cached rows.
109
+ UUIDsEqual: (a, b) => typeof a === 'string' && typeof b === 'string' && a.toLowerCase() === b.toLowerCase(),
110
+ NormalizeUUID: (value) => typeof value === 'string' ? value.toLowerCase() : String(value),
111
+ MJGlobal: {
112
+ Instance: {
113
+ ClassFactory: {
114
+ CreateInstance: () => undefined,
115
+ Register: () => undefined
116
+ }
117
+ }
118
+ }
119
+ };
120
+ });
93
121
  import { ActionEngineBase, ActionResult, ActionResultSimple, ActionParam, ActionLibrary, GeneratedCode, RunActionParams, EntityActionEngineBase, EntityActionInvocationParams, EntityActionResult } from '../index.js';
94
122
  describe('ActionParam', () => {
95
123
  it('should create an ActionParam with correct properties', () => {
@@ -1 +1 @@
1
- {"version":3,"file":"ActionEngine-Base.test.js","sourceRoot":"","sources":["../../src/__tests__/ActionEngine-Base.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ActionEngine-Base.test.js","sourceRoot":"","sources":["../../src/__tests__/ActionEngine-Base.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=RuntimeActionConfigurationSchema.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RuntimeActionConfigurationSchema.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/RuntimeActionConfigurationSchema.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,242 @@
1
+ import { describe, it, expect } from 'vitest';
2
+ import { RuntimeActionConfigurationSchema } from '../RuntimeActionConfigurationSchema.js';
3
+ /**
4
+ * Drift detection + validation tests for RuntimeActionConfigurationSchema.
5
+ *
6
+ * The canonical shape lives in the JSONType interface generated into
7
+ * `@memberjunction/core-entities` as `MJActionEntity_IRuntimeActionConfiguration`.
8
+ * The Zod schema in the package must stay structurally aligned with that
9
+ * interface. Because the project builds without `strictNullChecks`, a pure
10
+ * compile-time type-equivalence assertion is unreliable — instead we use
11
+ * runtime round-trips against canonical fixtures plus a pair of `satisfies`
12
+ * clauses below to catch drift.
13
+ *
14
+ * When adding / removing / changing fields in the JSONType interface,
15
+ * update the `fullInstance` fixture here. If the types drift structurally,
16
+ * the `satisfies` clauses will fail to compile.
17
+ */
18
+ describe('RuntimeActionConfigurationSchema', () => {
19
+ // Canonical fully-populated instance typed against the JSONType interface.
20
+ // The `satisfies` clause below also checks it against the Zod-inferred
21
+ // type — any drift between the two surfaces here at compile time.
22
+ const fullInstance = {
23
+ permissions: {
24
+ allowedActions: [
25
+ { id: '11111111-1111-1111-1111-111111111111', name: 'Send Email' }
26
+ ],
27
+ allowedAgents: [
28
+ { id: '22222222-2222-2222-2222-222222222222', name: 'Risk Assessment Agent' }
29
+ ],
30
+ allowedEntities: [
31
+ { id: '33333333-3333-3333-3333-333333333333', name: 'Customers' }
32
+ ],
33
+ // Wildcard escape hatches — exercising the "framework-authored
34
+ // utility action" path so the drift check covers these too.
35
+ allowAnyEntity: true,
36
+ allowAnyAction: false,
37
+ allowAnyAgent: false
38
+ },
39
+ limits: {
40
+ maxMemoryMB: 256,
41
+ maxBridgeCalls: 50
42
+ },
43
+ sandbox: {
44
+ additionalLibraries: [{ name: 'papaparse' }, { name: 'cheerio', version: '^1.0.0' }],
45
+ debugMode: false
46
+ },
47
+ version: '1.0.0',
48
+ previousVersionId: '44444444-4444-4444-4444-444444444444'
49
+ };
50
+ // Drift check: fullInstance must also be a valid Zod-inferred value.
51
+ // If this line fails to compile, the JSONType interface has a field
52
+ // that the Zod schema is missing (or has a field with an incompatible type).
53
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
54
+ const _driftCheckA = fullInstance;
55
+ // Drift check reverse direction: a Zod-inferred-shape literal must also
56
+ // satisfy the JSONType interface. If this fails to compile, the Zod
57
+ // schema has a required field that the JSONType interface is missing.
58
+ const zodShape = {
59
+ permissions: {
60
+ allowedActions: [],
61
+ allowedAgents: [],
62
+ allowedEntities: []
63
+ }
64
+ };
65
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
66
+ const _driftCheckB = zodShape;
67
+ // Minimal valid instance — only the required `permissions` branch.
68
+ const minimalInstance = {
69
+ permissions: {
70
+ allowedActions: [],
71
+ allowedAgents: [],
72
+ allowedEntities: []
73
+ }
74
+ };
75
+ describe('valid inputs', () => {
76
+ it('accepts a fully-populated configuration', () => {
77
+ const result = RuntimeActionConfigurationSchema.safeParse(fullInstance);
78
+ expect(result.success).toBe(true);
79
+ });
80
+ it('accepts the minimal configuration (only permissions)', () => {
81
+ const result = RuntimeActionConfigurationSchema.safeParse(minimalInstance);
82
+ expect(result.success).toBe(true);
83
+ });
84
+ it('accepts permissions with empty arrays', () => {
85
+ const result = RuntimeActionConfigurationSchema.safeParse({
86
+ permissions: { allowedActions: [], allowedAgents: [], allowedEntities: [] }
87
+ });
88
+ expect(result.success).toBe(true);
89
+ });
90
+ it('accepts limits without memory (only bridge calls)', () => {
91
+ const result = RuntimeActionConfigurationSchema.safeParse({
92
+ ...minimalInstance,
93
+ limits: { maxBridgeCalls: 25 }
94
+ });
95
+ expect(result.success).toBe(true);
96
+ });
97
+ it('accepts sandbox with a library reference lacking a version', () => {
98
+ const result = RuntimeActionConfigurationSchema.safeParse({
99
+ ...minimalInstance,
100
+ sandbox: { additionalLibraries: [{ name: 'uuid' }] }
101
+ });
102
+ expect(result.success).toBe(true);
103
+ });
104
+ it('accepts wildcard permission flags (framework-authored escape hatch)', () => {
105
+ const result = RuntimeActionConfigurationSchema.safeParse({
106
+ permissions: {
107
+ allowedActions: [],
108
+ allowedAgents: [],
109
+ allowedEntities: [],
110
+ allowAnyEntity: true,
111
+ allowAnyAction: true,
112
+ allowAnyAgent: true
113
+ }
114
+ });
115
+ expect(result.success).toBe(true);
116
+ });
117
+ it('round-trips with only some wildcards set', () => {
118
+ const result = RuntimeActionConfigurationSchema.safeParse({
119
+ permissions: {
120
+ allowedActions: [],
121
+ allowedAgents: [],
122
+ allowedEntities: [],
123
+ allowAnyEntity: true
124
+ }
125
+ });
126
+ expect(result.success).toBe(true);
127
+ if (result.success) {
128
+ expect(result.data.permissions.allowAnyEntity).toBe(true);
129
+ expect(result.data.permissions.allowAnyAction).toBeUndefined();
130
+ }
131
+ });
132
+ });
133
+ describe('invalid inputs', () => {
134
+ it('rejects a configuration missing the top-level permissions key', () => {
135
+ const result = RuntimeActionConfigurationSchema.safeParse({ limits: { maxMemoryMB: 128 } });
136
+ expect(result.success).toBe(false);
137
+ });
138
+ it('rejects permissions missing allowedActions', () => {
139
+ const result = RuntimeActionConfigurationSchema.safeParse({
140
+ permissions: { allowedAgents: [], allowedEntities: [] }
141
+ });
142
+ expect(result.success).toBe(false);
143
+ });
144
+ it('rejects a reference without an id', () => {
145
+ const result = RuntimeActionConfigurationSchema.safeParse({
146
+ permissions: {
147
+ allowedActions: [{ name: 'Send Email' }],
148
+ allowedAgents: [],
149
+ allowedEntities: []
150
+ }
151
+ });
152
+ expect(result.success).toBe(false);
153
+ });
154
+ it('rejects a reference with a non-UUID id', () => {
155
+ const result = RuntimeActionConfigurationSchema.safeParse({
156
+ permissions: {
157
+ allowedActions: [{ id: 'not-a-uuid', name: 'X' }],
158
+ allowedAgents: [],
159
+ allowedEntities: []
160
+ }
161
+ });
162
+ expect(result.success).toBe(false);
163
+ });
164
+ it('rejects a reference with an empty name', () => {
165
+ const result = RuntimeActionConfigurationSchema.safeParse({
166
+ permissions: {
167
+ allowedActions: [{ id: '11111111-1111-1111-1111-111111111111', name: '' }],
168
+ allowedAgents: [],
169
+ allowedEntities: []
170
+ }
171
+ });
172
+ expect(result.success).toBe(false);
173
+ });
174
+ it('rejects unknown top-level keys (strict mode)', () => {
175
+ const result = RuntimeActionConfigurationSchema.safeParse({
176
+ ...minimalInstance,
177
+ somethingMade: 'up'
178
+ });
179
+ expect(result.success).toBe(false);
180
+ });
181
+ it('rejects unknown keys nested inside permissions (strict mode)', () => {
182
+ const result = RuntimeActionConfigurationSchema.safeParse({
183
+ permissions: {
184
+ allowedActions: [],
185
+ allowedAgents: [],
186
+ allowedEntities: [],
187
+ rogueKey: true
188
+ }
189
+ });
190
+ expect(result.success).toBe(false);
191
+ });
192
+ it('rejects negative or zero memory limits', () => {
193
+ const zeroResult = RuntimeActionConfigurationSchema.safeParse({
194
+ ...minimalInstance,
195
+ limits: { maxMemoryMB: 0 }
196
+ });
197
+ const negativeResult = RuntimeActionConfigurationSchema.safeParse({
198
+ ...minimalInstance,
199
+ limits: { maxMemoryMB: -1 }
200
+ });
201
+ expect(zeroResult.success).toBe(false);
202
+ expect(negativeResult.success).toBe(false);
203
+ });
204
+ it('accepts maxBridgeCalls=0 (pure-compute action)', () => {
205
+ // 0 means "no bridge calls allowed". Pure-compute Runtime actions
206
+ // (e.g. data transforms, numeric utilities) legitimately set this.
207
+ const result = RuntimeActionConfigurationSchema.safeParse({
208
+ ...minimalInstance,
209
+ limits: { maxBridgeCalls: 0 }
210
+ });
211
+ expect(result.success).toBe(true);
212
+ });
213
+ it('rejects negative maxBridgeCalls', () => {
214
+ const result = RuntimeActionConfigurationSchema.safeParse({
215
+ ...minimalInstance,
216
+ limits: { maxBridgeCalls: -1 }
217
+ });
218
+ expect(result.success).toBe(false);
219
+ });
220
+ it('rejects non-integer memory limits', () => {
221
+ const result = RuntimeActionConfigurationSchema.safeParse({
222
+ ...minimalInstance,
223
+ limits: { maxMemoryMB: 128.5 }
224
+ });
225
+ expect(result.success).toBe(false);
226
+ });
227
+ it('rejects a non-UUID previousVersionId', () => {
228
+ const result = RuntimeActionConfigurationSchema.safeParse({
229
+ ...minimalInstance,
230
+ previousVersionId: 'nope'
231
+ });
232
+ expect(result.success).toBe(false);
233
+ });
234
+ });
235
+ describe('round-trip', () => {
236
+ it('parses the full instance into a structurally identical object', () => {
237
+ const parsed = RuntimeActionConfigurationSchema.parse(fullInstance);
238
+ expect(parsed).toEqual(fullInstance);
239
+ });
240
+ });
241
+ });
242
+ //# sourceMappingURL=RuntimeActionConfigurationSchema.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RuntimeActionConfigurationSchema.test.js","sourceRoot":"","sources":["../../src/__tests__/RuntimeActionConfigurationSchema.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAE9C,OAAO,EACH,gCAAgC,EAEnC,MAAM,qCAAqC,CAAC;AAE7C;;;;;;;;;;;;;;GAcG;AAEH,QAAQ,CAAC,kCAAkC,EAAE,GAAG,EAAE;IAC9C,2EAA2E;IAC3E,uEAAuE;IACvE,kEAAkE;IAClE,MAAM,YAAY,GAA+C;QAC7D,WAAW,EAAE;YACT,cAAc,EAAE;gBACZ,EAAE,EAAE,EAAE,sCAAsC,EAAE,IAAI,EAAE,YAAY,EAAE;aACrE;YACD,aAAa,EAAE;gBACX,EAAE,EAAE,EAAE,sCAAsC,EAAE,IAAI,EAAE,uBAAuB,EAAE;aAChF;YACD,eAAe,EAAE;gBACb,EAAE,EAAE,EAAE,sCAAsC,EAAE,IAAI,EAAE,WAAW,EAAE;aACpE;YACD,+DAA+D;YAC/D,4DAA4D;YAC5D,cAAc,EAAE,IAAI;YACpB,cAAc,EAAE,KAAK;YACrB,aAAa,EAAE,KAAK;SACvB;QACD,MAAM,EAAE;YACJ,WAAW,EAAE,GAAG;YAChB,cAAc,EAAE,EAAE;SACrB;QACD,OAAO,EAAE;YACL,mBAAmB,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;YACpF,SAAS,EAAE,KAAK;SACnB;QACD,OAAO,EAAE,OAAO;QAChB,iBAAiB,EAAE,sCAAsC;KAC5D,CAAC;IAEF,qEAAqE;IACrE,oEAAoE;IACpE,6EAA6E;IAC7E,6DAA6D;IAC7D,MAAM,YAAY,GAAG,YAAiD,CAAC;IAEvE,wEAAwE;IACxE,oEAAoE;IACpE,sEAAsE;IACtE,MAAM,QAAQ,GAA+B;QACzC,WAAW,EAAE;YACT,cAAc,EAAE,EAAE;YAClB,aAAa,EAAE,EAAE;YACjB,eAAe,EAAE,EAAE;SACtB;KACJ,CAAC;IACF,6DAA6D;IAC7D,MAAM,YAAY,GAAG,QAA6D,CAAC;IAEnF,mEAAmE;IACnE,MAAM,eAAe,GAA+C;QAChE,WAAW,EAAE;YACT,cAAc,EAAE,EAAE;YAClB,aAAa,EAAE,EAAE;YACjB,eAAe,EAAE,EAAE;SACtB;KACJ,CAAC;IAEF,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;QAC1B,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;YAC/C,MAAM,MAAM,GAAG,gCAAgC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;YACxE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;YAC5D,MAAM,MAAM,GAAG,gCAAgC,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;YAC3E,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;YAC7C,MAAM,MAAM,GAAG,gCAAgC,CAAC,SAAS,CAAC;gBACtD,WAAW,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE;aAC9E,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;YACzD,MAAM,MAAM,GAAG,gCAAgC,CAAC,SAAS,CAAC;gBACtD,GAAG,eAAe;gBAClB,MAAM,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE;aACjC,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;YAClE,MAAM,MAAM,GAAG,gCAAgC,CAAC,SAAS,CAAC;gBACtD,GAAG,eAAe;gBAClB,OAAO,EAAE,EAAE,mBAAmB,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE;aACvD,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qEAAqE,EAAE,GAAG,EAAE;YAC3E,MAAM,MAAM,GAAG,gCAAgC,CAAC,SAAS,CAAC;gBACtD,WAAW,EAAE;oBACT,cAAc,EAAE,EAAE;oBAClB,aAAa,EAAE,EAAE;oBACjB,eAAe,EAAE,EAAE;oBACnB,cAAc,EAAE,IAAI;oBACpB,cAAc,EAAE,IAAI;oBACpB,aAAa,EAAE,IAAI;iBACtB;aACJ,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;YAChD,MAAM,MAAM,GAAG,gCAAgC,CAAC,SAAS,CAAC;gBACtD,WAAW,EAAE;oBACT,cAAc,EAAE,EAAE;oBAClB,aAAa,EAAE,EAAE;oBACjB,eAAe,EAAE,EAAE;oBACnB,cAAc,EAAE,IAAI;iBACvB;aACJ,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACjB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC1D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC,aAAa,EAAE,CAAC;YACnE,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC5B,EAAE,CAAC,+DAA+D,EAAE,GAAG,EAAE;YACrE,MAAM,MAAM,GAAG,gCAAgC,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;YAC5F,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;YAClD,MAAM,MAAM,GAAG,gCAAgC,CAAC,SAAS,CAAC;gBACtD,WAAW,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE;aAC1D,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;YACzC,MAAM,MAAM,GAAG,gCAAgC,CAAC,SAAS,CAAC;gBACtD,WAAW,EAAE;oBACT,cAAc,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;oBACxC,aAAa,EAAE,EAAE;oBACjB,eAAe,EAAE,EAAE;iBACtB;aACJ,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;YAC9C,MAAM,MAAM,GAAG,gCAAgC,CAAC,SAAS,CAAC;gBACtD,WAAW,EAAE;oBACT,cAAc,EAAE,CAAC,EAAE,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;oBACjD,aAAa,EAAE,EAAE;oBACjB,eAAe,EAAE,EAAE;iBACtB;aACJ,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;YAC9C,MAAM,MAAM,GAAG,gCAAgC,CAAC,SAAS,CAAC;gBACtD,WAAW,EAAE;oBACT,cAAc,EAAE,CAAC,EAAE,EAAE,EAAE,sCAAsC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;oBAC1E,aAAa,EAAE,EAAE;oBACjB,eAAe,EAAE,EAAE;iBACtB;aACJ,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;YACpD,MAAM,MAAM,GAAG,gCAAgC,CAAC,SAAS,CAAC;gBACtD,GAAG,eAAe;gBAClB,aAAa,EAAE,IAAI;aACtB,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8DAA8D,EAAE,GAAG,EAAE;YACpE,MAAM,MAAM,GAAG,gCAAgC,CAAC,SAAS,CAAC;gBACtD,WAAW,EAAE;oBACT,cAAc,EAAE,EAAE;oBAClB,aAAa,EAAE,EAAE;oBACjB,eAAe,EAAE,EAAE;oBACnB,QAAQ,EAAE,IAAI;iBACjB;aACJ,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;YAC9C,MAAM,UAAU,GAAG,gCAAgC,CAAC,SAAS,CAAC;gBAC1D,GAAG,eAAe;gBAClB,MAAM,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE;aAC7B,CAAC,CAAC;YACH,MAAM,cAAc,GAAG,gCAAgC,CAAC,SAAS,CAAC;gBAC9D,GAAG,eAAe;gBAClB,MAAM,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC,EAAE;aAC9B,CAAC,CAAC;YACH,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACvC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;YACtD,kEAAkE;YAClE,mEAAmE;YACnE,MAAM,MAAM,GAAG,gCAAgC,CAAC,SAAS,CAAC;gBACtD,GAAG,eAAe;gBAClB,MAAM,EAAE,EAAE,cAAc,EAAE,CAAC,EAAE;aAChC,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;YACvC,MAAM,MAAM,GAAG,gCAAgC,CAAC,SAAS,CAAC;gBACtD,GAAG,eAAe;gBAClB,MAAM,EAAE,EAAE,cAAc,EAAE,CAAC,CAAC,EAAE;aACjC,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;YACzC,MAAM,MAAM,GAAG,gCAAgC,CAAC,SAAS,CAAC;gBACtD,GAAG,eAAe;gBAClB,MAAM,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE;aACjC,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;YAC5C,MAAM,MAAM,GAAG,gCAAgC,CAAC,SAAS,CAAC;gBACtD,GAAG,eAAe;gBAClB,iBAAiB,EAAE,MAAM;aAC5B,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;QACxB,EAAE,CAAC,+DAA+D,EAAE,GAAG,EAAE;YACrE,MAAM,MAAM,GAAG,gCAAgC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YACpE,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
package/dist/index.d.ts CHANGED
@@ -2,4 +2,6 @@ export * from './ActionEngine-Base.js';
2
2
  export * from './MJActionEntityExtended.js';
3
3
  export * from './EntityActionEngine-Base.js';
4
4
  export * from './MJEntityActionEntityExtended.js';
5
+ export * from './RuntimeActionConfigurationSchema.js';
6
+ export * from './RuntimeActionBridgeBuilder.js';
5
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AAEzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,gCAAgC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AAEzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,gCAAgC,CAAC;AAG/C,cAAc,oCAAoC,CAAC;AACnD,cAAc,8BAA8B,CAAC"}
package/dist/index.js CHANGED
@@ -2,4 +2,6 @@ export * from './ActionEngine-Base.js';
2
2
  export * from './MJActionEntityExtended.js';
3
3
  export * from './EntityActionEngine-Base.js';
4
4
  export * from './MJEntityActionEntityExtended.js';
5
+ export * from './RuntimeActionConfigurationSchema.js';
6
+ export * from './RuntimeActionBridgeBuilder.js';
5
7
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AAEzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,gCAAgC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AAEzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,gCAAgC,CAAC;AAG/C,cAAc,oCAAoC,CAAC;AACnD,cAAc,8BAA8B,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@memberjunction/actions-base",
3
3
  "type": "module",
4
- "version": "5.28.0",
4
+ "version": "5.30.0",
5
5
  "description": "Base Classes for MemberJunction Actions. This library is used on both server and network nodes.",
6
6
  "main": "dist/index.js",
7
7
  "types": "dist/index.d.ts",
@@ -11,7 +11,8 @@
11
11
  "scripts": {
12
12
  "start": "ts-node-dev src/index.ts",
13
13
  "build": "tsc && tsc-alias -f",
14
- "test": "echo \"No tests configured yet\""
14
+ "test": "vitest run",
15
+ "test:watch": "vitest"
15
16
  },
16
17
  "author": "MemberJunction.com",
17
18
  "license": "ISC",
@@ -20,9 +21,11 @@
20
21
  "typescript": "^5.9.3"
21
22
  },
22
23
  "dependencies": {
23
- "@memberjunction/global": "5.28.0",
24
- "@memberjunction/core": "5.28.0",
25
- "@memberjunction/core-entities": "5.28.0"
24
+ "@memberjunction/code-execution": "5.30.0",
25
+ "@memberjunction/core": "5.30.0",
26
+ "@memberjunction/core-entities": "5.30.0",
27
+ "@memberjunction/global": "5.30.0",
28
+ "zod": "~3.24.4"
26
29
  },
27
30
  "repository": {
28
31
  "type": "git",