@process.co/element-types 0.0.11 → 0.0.12

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.d.ts CHANGED
@@ -98,23 +98,48 @@ export type SignalEventShape = {
98
98
  };
99
99
  /**
100
100
  * Persisted subset of `$.interface.schema` (HTTP triggers, etc.) used at execution.
101
- * Design-time: `exportSchema` / `exportSchemaZodex` support hints and portable TS-shaped metadata.
102
- * Runtime Zod enforcement uses `compiledValidatorKey` + host `$.enforceSchema`.
101
+ * Design-time fields (`exportSchema`, `exportSchemaZodex`, etc.) are hints for editors and tooling.
102
+ * When {@link HttpInterfaceSchemaWire.validation} is true, the runtime does **not** validate against
103
+ * those JSON blobs alone: it loads the ESM at {@link HttpInterfaceSchemaWire.compiledValidatorKey}
104
+ * (default export = Zod schema) and runs full `safeParse` on the payload via the runner-bound
105
+ * {@link SignalHostServices.enforceSchema} RPC (see {@link setSignalEmitValidationHost}).
103
106
  */
104
107
  export type HttpInterfaceSchemaWire = {
108
+ /**
109
+ * When true, `enforceSchema` runs the **compiled** default-export Zod schema for this interface
110
+ * (full parse/transform/refine), not a lightweight check of `exportSchema` alone.
111
+ */
105
112
  validation?: boolean;
106
113
  exportSchema?: Record<string, JSONValue>;
107
114
  exportSchemaZodex?: Record<string, JSONValue>;
108
115
  exportSchemaSource?: string;
109
116
  exportSchemaKey?: string | null;
110
- /** S3 object key (element-registry bucket) for compiled ESM validator `.mjs`. */
117
+ /** S3 object key (element-registry bucket) for compiled ESM whose default export is the Zod schema used at runtime. */
111
118
  compiledValidatorKey?: string | null;
112
119
  };
113
120
  /** Host-backed RPC surface passed as `params.$` to signal `run` (parallel to action `ActionRunOptions.$`). */
114
121
  export type SignalHostServices = {
115
- export?: (category: string, message: string) => void | Promise<void>;
116
- $transitionToSlot?: (slots: Array<SlotTransitionDefinition>) => void | Promise<void>;
117
- enforceSchema?: <T = unknown>(inputSchema: HttpInterfaceSchemaWire | undefined, value: unknown) => Promise<T>;
122
+ export: (category: string, message: string) => void | Promise<void>;
123
+ $transitionToSlot: (slots: Array<SlotTransitionDefinition>) => void | Promise<void>;
124
+ /**
125
+ * When `inputSchema.validation` is set, runs the published **full Zod** validator for that
126
+ * interface (`compiledValidatorKey`); otherwise may no-op. Implemented by the Process API
127
+ * (validator worker + `safeParse`), not by element code.
128
+ */
129
+ enforceSchema: <T>(inputSchema: HttpInterfaceSchemaWire | undefined, value: unknown) => Promise<EnforceSchemaResult<T>>;
130
+ /**
131
+ * Wire for the primary `$.interface.schema` property (same persisted object the publish
132
+ * pipeline attaches `compiledValidatorKey` to). Use with {@link SignalHostServices.enforceSchema},
133
+ * e.g. `await $.enforceSchema($.interfaceEmitSchema, toEmit)`.
134
+ */
135
+ interfaceEmitSchema?: HttpInterfaceSchemaWire;
136
+ };
137
+ export type EnforceSchemaResult<T extends unknown = unknown> = {
138
+ ok: true;
139
+ value: T;
140
+ } | {
141
+ ok: false;
142
+ message: string;
118
143
  };
119
144
  export type SignalRunOptions = {
120
145
  $: SignalHostServices;
@@ -128,10 +153,26 @@ export type ValidateEmitPayloadResult<T> = {
128
153
  message: string;
129
154
  };
130
155
  /**
131
- * When `inputSchema.validation` is true, awaits `host.enforceSchema(inputSchema, value)`.
132
- * Otherwise returns `value` unchanged.
156
+ * Host shape accepted from the runner RPC bridge (`$.enforceSchema` may be typed as
157
+ * returning `Promise<unknown>` while {@link SignalHostServices} uses a generic `T`).
158
+ */
159
+ export type SignalEmitValidationHostBinding = Pick<SignalHostServices, 'enforceSchema'> | {
160
+ enforceSchema?: (inputSchema: HttpInterfaceSchemaWire | undefined, value: unknown) => Promise<unknown>;
161
+ };
162
+ /**
163
+ * Binds the trusted signal host used by {@link validateEmitPayload} for the current
164
+ * invocation. The runner sets this from the RPC/proxy host **outside** element code and
165
+ * clears it when the invocation completes. Uses `globalThis` so a bundled copy of
166
+ * `validateEmitPayload` inside an element module still sees the same binding as the runner.
167
+ */
168
+ export declare function setSignalEmitValidationHost(host: SignalEmitValidationHostBinding | undefined): void;
169
+ /**
170
+ * When validation is required (explicit `validation: true`, or a non-empty `compiledValidatorKey`
171
+ * with `validation` not `false`), awaits the bound host's `enforceSchema` so the API runs the
172
+ * **compiled Zod** validator. Otherwise returns `value` unchanged.
173
+ * (see {@link setSignalEmitValidationHost}).
133
174
  */
134
- export declare function validateEmitPayload<T>(host: Pick<SignalHostServices, 'enforceSchema'>, inputSchema: HttpInterfaceSchemaWire | undefined, value: unknown): Promise<ValidateEmitPayloadResult<T>>;
175
+ export declare function validateEmitPayload<T>(inputSchema: HttpInterfaceSchemaWire | undefined, value: unknown): Promise<ValidateEmitPayloadResult<T>>;
135
176
  export interface FileMetadata {
136
177
  size: number;
137
178
  contentType?: string;
@@ -323,7 +364,7 @@ type PropTypeFromTypeValue<U, T = unknown> = U extends z.ZodObject<any, any> ? I
323
364
  headers?: Record<string, string>;
324
365
  [key: string]: any;
325
366
  }>;
326
- } : U extends "string" ? [PropOptionsValue<T>] extends [never] ? string : PropOptionsValue<T> : U extends "string(html)" ? string : U extends "string(markdown)" ? string : U extends "string(json)" ? string : U extends "string(xml)" ? string : U extends "string(yaml)" ? string : U extends "string(base64)" ? string : U extends "string(csv)" ? string : U extends "string(tsv)" ? string : U extends "string(css)" ? string : U extends "string(sql)" ? string : U extends "string(email)" ? string : U extends "string(emailList)" ? string[] : U extends "string(urlList)" ? string[] : U extends "string(url)" ? string : U extends `$infer<${string}>` ? InferType<U> : U extends "$infer" ? any : U extends "object" ? Record<string, unknown> : U extends `object(${PropObjectDefinitionTypes})` ? any : U extends `file(${PropFileDefinitionTypes})` ? IFile : U extends "number" ? number : U extends "boolean" ? boolean : U extends "integer" ? number : U extends "$.interface.http" ? {
367
+ } : U extends "string" ? [PropOptionsValue<T>] extends [never] ? string : PropOptionsValue<T> : U extends "string(html)" ? string : U extends "string(markdown)" ? string : U extends "string(json)" ? string : U extends "string(xml)" ? string : U extends "string(yaml)" ? string : U extends "string(base64)" ? string : U extends "string(csv)" ? string : U extends "string(tsv)" ? string : U extends "string(css)" ? string : U extends "string(sql)" ? string : U extends "string(email)" ? string : U extends "string(emailList)" ? string[] : U extends "string(urlList)" ? string[] : U extends "string(url)" ? string : U extends `$infer<${string}>` ? InferType<U> : U extends "$infer" ? any : U extends "object" ? Record<string, unknown> : U extends `object(${PropObjectDefinitionTypes})` ? any : U extends `file(${PropFileDefinitionTypes})` ? IFile : U extends "number" ? number : U extends "boolean" ? boolean : U extends "integer" ? number : U extends "$.interface.schema" ? HttpInterfaceSchemaWire : U extends "$.interface.http" ? {
327
368
  respond: (response: HTTPResponse) => Promise<any> | void;
328
369
  authenticate: (authType: HTTPAuthenticationType, options?: {
329
370
  token?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.zodObjectToContainerExportJsonSchema = exports.ZOD_CONTAINER_EXPORT_TO_JSON_SCHEMA_PARAMS = exports.isPlatformBoundLoaderType = exports.PLATFORM_BOUND_LOADER_TYPE_PREFIXES = exports.ELEMENT_AUTHORING_CONTRACT_VERSION = exports.builtinActionSlotsRegistry = void 0;
4
+ exports.setSignalEmitValidationHost = setSignalEmitValidationHost;
4
5
  exports.validateEmitPayload = validateEmitPayload;
5
6
  exports.defineApp = defineApp;
6
7
  exports.defineAction = defineAction;
@@ -13,23 +14,59 @@ Object.defineProperty(exports, "ELEMENT_AUTHORING_CONTRACT_VERSION", { enumerabl
13
14
  var platform_loader_type_1 = require("./platform-loader-type");
14
15
  Object.defineProperty(exports, "PLATFORM_BOUND_LOADER_TYPE_PREFIXES", { enumerable: true, get: function () { return platform_loader_type_1.PLATFORM_BOUND_LOADER_TYPE_PREFIXES; } });
15
16
  Object.defineProperty(exports, "isPlatformBoundLoaderType", { enumerable: true, get: function () { return platform_loader_type_1.isPlatformBoundLoaderType; } });
17
+ /** Shared across bundled copies of this package in the same JS realm (worker isolate). */
18
+ const SIGNAL_EMIT_VALIDATION_HOST = Symbol.for('process.co.signalEmitValidationHost');
19
+ function getSignalEmitValidationHostBinding() {
20
+ return globalThis[SIGNAL_EMIT_VALIDATION_HOST];
21
+ }
22
+ /**
23
+ * Binds the trusted signal host used by {@link validateEmitPayload} for the current
24
+ * invocation. The runner sets this from the RPC/proxy host **outside** element code and
25
+ * clears it when the invocation completes. Uses `globalThis` so a bundled copy of
26
+ * `validateEmitPayload` inside an element module still sees the same binding as the runner.
27
+ */
28
+ function setSignalEmitValidationHost(host) {
29
+ const g = globalThis;
30
+ if (host === undefined) {
31
+ delete g[SIGNAL_EMIT_VALIDATION_HOST];
32
+ }
33
+ else {
34
+ g[SIGNAL_EMIT_VALIDATION_HOST] = host;
35
+ }
36
+ }
16
37
  /**
17
- * When `inputSchema.validation` is true, awaits `host.enforceSchema(inputSchema, value)`.
18
- * Otherwise returns `value` unchanged.
38
+ * When validation is required (explicit `validation: true`, or a non-empty `compiledValidatorKey`
39
+ * with `validation` not `false`), awaits the bound host's `enforceSchema` so the API runs the
40
+ * **compiled Zod** validator. Otherwise returns `value` unchanged.
41
+ * (see {@link setSignalEmitValidationHost}).
19
42
  */
20
- async function validateEmitPayload(host, inputSchema, value) {
21
- if (!inputSchema?.validation) {
43
+ async function validateEmitPayload(inputSchema, value) {
44
+ const hasCompiled = inputSchema &&
45
+ typeof inputSchema.compiledValidatorKey === 'string' &&
46
+ inputSchema.compiledValidatorKey.length > 0;
47
+ if (inputSchema?.validation === false) {
48
+ return { ok: true, value: value };
49
+ }
50
+ if (!hasCompiled && inputSchema?.validation !== true) {
22
51
  return { ok: true, value: value };
23
52
  }
24
- const enforce = host.enforceSchema;
53
+ const bound = getSignalEmitValidationHostBinding();
54
+ const enforce = bound?.enforceSchema;
25
55
  if (typeof enforce !== 'function') {
26
56
  return {
27
57
  ok: false,
28
- message: 'Input validation is enabled but the runtime did not provide enforceSchema.',
58
+ message: 'Input validation is enabled for this HTTP trigger, but the runtime did not provide enforceSchema. Use `run`/`this.$` from the Process worker (RPC host), and pass the wire from `$.interfaceEmitSchema` as the first argument to `$.enforceSchema`.',
29
59
  };
30
60
  }
31
61
  try {
32
62
  const out = await enforce(inputSchema, value);
63
+ if (out && typeof out === 'object' && 'ok' in out) {
64
+ const r = out;
65
+ if (r.ok) {
66
+ return { ok: true, value: r.value };
67
+ }
68
+ return { ok: false, message: r.message };
69
+ }
33
70
  return { ok: true, value: out };
34
71
  }
35
72
  catch (e) {
@@ -51,4 +88,4 @@ function defineSignal(signal) {
51
88
  var zod_container_export_json_schema_1 = require("./zod-container-export-json-schema");
52
89
  Object.defineProperty(exports, "ZOD_CONTAINER_EXPORT_TO_JSON_SCHEMA_PARAMS", { enumerable: true, get: function () { return zod_container_export_json_schema_1.ZOD_CONTAINER_EXPORT_TO_JSON_SCHEMA_PARAMS; } });
53
90
  Object.defineProperty(exports, "zodObjectToContainerExportJsonSchema", { enumerable: true, get: function () { return zod_container_export_json_schema_1.zodObjectToContainerExportJsonSchema; } });
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBZ0pBLGtEQXVCQztBQWdmRCw4QkFFQztBQUdELG9DQVlDO0FBRUQsb0NBRUM7QUFscEJELGlGQUt5QztBQUpyQywySUFBQSwwQkFBMEIsT0FBQTtBQWM5QixnSUFBZ0k7QUFDaEksdUVBQWdGO0FBQXZFLDhJQUFBLGtDQUFrQyxPQUFBO0FBZTNDLCtEQUdnQztBQUY5QiwySUFBQSxtQ0FBbUMsT0FBQTtBQUNuQyxpSUFBQSx5QkFBeUIsT0FBQTtBQWlGM0I7OztHQUdHO0FBQ0ksS0FBSyxVQUFVLG1CQUFtQixDQUNyQyxJQUErQyxFQUMvQyxXQUFnRCxFQUNoRCxLQUFjO0lBRWQsSUFBSSxDQUFDLFdBQVcsRUFBRSxVQUFVLEVBQUUsQ0FBQztRQUMzQixPQUFPLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsS0FBVSxFQUFFLENBQUM7SUFDM0MsQ0FBQztJQUNELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDbkMsSUFBSSxPQUFPLE9BQU8sS0FBSyxVQUFVLEVBQUUsQ0FBQztRQUNoQyxPQUFPO1lBQ0gsRUFBRSxFQUFFLEtBQUs7WUFDVCxPQUFPLEVBQ0gsNEVBQTRFO1NBQ25GLENBQUM7SUFDTixDQUFDO0lBQ0QsSUFBSSxDQUFDO1FBQ0QsTUFBTSxHQUFHLEdBQUcsTUFBTSxPQUFPLENBQUksV0FBVyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ2pELE9BQU8sRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztRQUNULE1BQU0sT0FBTyxHQUFHLENBQUMsWUFBWSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMzRCxPQUFPLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0FBQ0wsQ0FBQztBQStlRCx5REFBeUQ7QUFDekQsU0FBZ0IsU0FBUyxDQUF5QixHQUF1QztJQUNyRixPQUFPLEdBQUcsQ0FBQztBQUNmLENBQUM7QUFFRCw0REFBNEQ7QUFDNUQsU0FBZ0IsWUFBWSxDQVVILE1BQTZDO0lBQ2xFLE9BQU8sTUFBTSxDQUFDO0FBQ2xCLENBQUM7QUFFRCxTQUFnQixZQUFZLENBQTBFLE1BQTZDO0lBQy9JLE9BQU8sTUFBTSxDQUFDO0FBQ2xCLENBQUM7QUFJRCx1RkFHNEM7QUFGeEMsOEpBQUEsMENBQTBDLE9BQUE7QUFDMUMsd0pBQUEsb0NBQW9DLE9BQUEifQ==
91
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBb01BLGtFQVNDO0FBUUQsa0RBcUNDO0FBaWZELDhCQUVDO0FBR0Qsb0NBWUM7QUFFRCxvQ0FFQztBQXR1QkQsaUZBS3lDO0FBSnJDLDJJQUFBLDBCQUEwQixPQUFBO0FBYzlCLGdJQUFnSTtBQUNoSSx1RUFBZ0Y7QUFBdkUsOElBQUEsa0NBQWtDLE9BQUE7QUFlM0MsK0RBR2dDO0FBRjVCLDJJQUFBLG1DQUFtQyxPQUFBO0FBQ25DLGlJQUFBLHlCQUF5QixPQUFBO0FBNkc3QiwwRkFBMEY7QUFDMUYsTUFBTSwyQkFBMkIsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLHFDQUFxQyxDQUFDLENBQUM7QUFldEYsU0FBUyxrQ0FBa0M7SUFDdkMsT0FBUSxVQUFvRixDQUN4RiwyQkFBMkIsQ0FDOUIsQ0FBQztBQUNOLENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILFNBQWdCLDJCQUEyQixDQUN2QyxJQUFpRDtJQUVqRCxNQUFNLENBQUMsR0FBRyxVQUFtRixDQUFDO0lBQzlGLElBQUksSUFBSSxLQUFLLFNBQVMsRUFBRSxDQUFDO1FBQ3JCLE9BQU8sQ0FBQyxDQUFDLDJCQUEyQixDQUFDLENBQUM7SUFDMUMsQ0FBQztTQUFNLENBQUM7UUFDSixDQUFDLENBQUMsMkJBQTJCLENBQUMsR0FBRyxJQUFpRCxDQUFDO0lBQ3ZGLENBQUM7QUFDTCxDQUFDO0FBRUQ7Ozs7O0dBS0c7QUFDSSxLQUFLLFVBQVUsbUJBQW1CLENBQ3JDLFdBQWdELEVBQ2hELEtBQWM7SUFFZCxNQUFNLFdBQVcsR0FDYixXQUFXO1FBQ1gsT0FBTyxXQUFXLENBQUMsb0JBQW9CLEtBQUssUUFBUTtRQUNwRCxXQUFXLENBQUMsb0JBQW9CLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztJQUNoRCxJQUFJLFdBQVcsRUFBRSxVQUFVLEtBQUssS0FBSyxFQUFFLENBQUM7UUFDcEMsT0FBTyxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEtBQVUsRUFBRSxDQUFDO0lBQzNDLENBQUM7SUFDRCxJQUFJLENBQUMsV0FBVyxJQUFJLFdBQVcsRUFBRSxVQUFVLEtBQUssSUFBSSxFQUFFLENBQUM7UUFDbkQsT0FBTyxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEtBQVUsRUFBRSxDQUFDO0lBQzNDLENBQUM7SUFDRCxNQUFNLEtBQUssR0FBRyxrQ0FBa0MsRUFBRSxDQUFDO0lBQ25ELE1BQU0sT0FBTyxHQUFHLEtBQUssRUFBRSxhQUFhLENBQUM7SUFDckMsSUFBSSxPQUFPLE9BQU8sS0FBSyxVQUFVLEVBQUUsQ0FBQztRQUNoQyxPQUFPO1lBQ0gsRUFBRSxFQUFFLEtBQUs7WUFDVCxPQUFPLEVBQ0gscVBBQXFQO1NBQzVQLENBQUM7SUFDTixDQUFDO0lBQ0QsSUFBSSxDQUFDO1FBQ0QsTUFBTSxHQUFHLEdBQUcsTUFBTSxPQUFPLENBQUksV0FBVyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ2pELElBQUksR0FBRyxJQUFJLE9BQU8sR0FBRyxLQUFLLFFBQVEsSUFBSSxJQUFJLElBQUksR0FBRyxFQUFFLENBQUM7WUFDaEQsTUFBTSxDQUFDLEdBQUcsR0FBNkIsQ0FBQztZQUN4QyxJQUFJLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQztnQkFDUCxPQUFPLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ3hDLENBQUM7WUFDRCxPQUFPLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQzdDLENBQUM7UUFDRCxPQUFPLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsR0FBUSxFQUFFLENBQUM7SUFDekMsQ0FBQztJQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7UUFDVCxNQUFNLE9BQU8sR0FBRyxDQUFDLFlBQVksS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDM0QsT0FBTyxFQUFFLEVBQUUsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUM7SUFDbEMsQ0FBQztBQUNMLENBQUM7QUFnZkQseURBQXlEO0FBQ3pELFNBQWdCLFNBQVMsQ0FBeUIsR0FBdUM7SUFDckYsT0FBTyxHQUFHLENBQUM7QUFDZixDQUFDO0FBRUQsNERBQTREO0FBQzVELFNBQWdCLFlBQVksQ0FVSCxNQUE2QztJQUNsRSxPQUFPLE1BQU0sQ0FBQztBQUNsQixDQUFDO0FBRUQsU0FBZ0IsWUFBWSxDQUEwRSxNQUE2QztJQUMvSSxPQUFPLE1BQU0sQ0FBQztBQUNsQixDQUFDO0FBSUQsdUZBRzRDO0FBRnhDLDhKQUFBLDBDQUEwQyxPQUFBO0FBQzFDLHdKQUFBLG9DQUFvQyxPQUFBIn0=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@process.co/element-types",
3
- "version": "0.0.11",
3
+ "version": "0.0.12",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "scripts": {
package/src/index.ts CHANGED
@@ -56,8 +56,8 @@ export type {
56
56
  } from './authoring-contract-types';
57
57
 
58
58
  export {
59
- PLATFORM_BOUND_LOADER_TYPE_PREFIXES,
60
- isPlatformBoundLoaderType,
59
+ PLATFORM_BOUND_LOADER_TYPE_PREFIXES,
60
+ isPlatformBoundLoaderType,
61
61
  } from './platform-loader-type';
62
62
 
63
63
  // Base types for module definitions
@@ -106,30 +106,58 @@ export type SignalEventShape = {
106
106
 
107
107
  /**
108
108
  * Persisted subset of `$.interface.schema` (HTTP triggers, etc.) used at execution.
109
- * Design-time: `exportSchema` / `exportSchemaZodex` support hints and portable TS-shaped metadata.
110
- * Runtime Zod enforcement uses `compiledValidatorKey` + host `$.enforceSchema`.
109
+ * Design-time fields (`exportSchema`, `exportSchemaZodex`, etc.) are hints for editors and tooling.
110
+ * When {@link HttpInterfaceSchemaWire.validation} is true, the runtime does **not** validate against
111
+ * those JSON blobs alone: it loads the ESM at {@link HttpInterfaceSchemaWire.compiledValidatorKey}
112
+ * (default export = Zod schema) and runs full `safeParse` on the payload via the runner-bound
113
+ * {@link SignalHostServices.enforceSchema} RPC (see {@link setSignalEmitValidationHost}).
111
114
  */
112
115
  export type HttpInterfaceSchemaWire = {
116
+ /**
117
+ * When true, `enforceSchema` runs the **compiled** default-export Zod schema for this interface
118
+ * (full parse/transform/refine), not a lightweight check of `exportSchema` alone.
119
+ */
113
120
  validation?: boolean;
114
121
  exportSchema?: Record<string, JSONValue>;
115
122
  exportSchemaZodex?: Record<string, JSONValue>;
116
123
  exportSchemaSource?: string;
117
124
  exportSchemaKey?: string | null;
118
- /** S3 object key (element-registry bucket) for compiled ESM validator `.mjs`. */
125
+ /** S3 object key (element-registry bucket) for compiled ESM whose default export is the Zod schema used at runtime. */
119
126
  compiledValidatorKey?: string | null;
120
127
  };
121
128
 
122
129
  /** Host-backed RPC surface passed as `params.$` to signal `run` (parallel to action `ActionRunOptions.$`). */
123
130
  export type SignalHostServices = {
124
- export?: (category: string, message: string) => void | Promise<void>;
125
- $transitionToSlot?: (slots: Array<SlotTransitionDefinition>) => void | Promise<void>;
126
- enforceSchema?: <T = unknown>(
131
+ export: (category: string, message: string) => void | Promise<void>;
132
+ $transitionToSlot: (slots: Array<SlotTransitionDefinition>) => void | Promise<void>;
133
+
134
+ /**
135
+ * When `inputSchema.validation` is set, runs the published **full Zod** validator for that
136
+ * interface (`compiledValidatorKey`); otherwise may no-op. Implemented by the Process API
137
+ * (validator worker + `safeParse`), not by element code.
138
+ */
139
+ enforceSchema: <T>(
127
140
  inputSchema: HttpInterfaceSchemaWire | undefined,
128
141
  value: unknown,
129
- ) => Promise<T>;
142
+ ) => Promise<EnforceSchemaResult<T>>;
143
+
144
+ /**
145
+ * Wire for the primary `$.interface.schema` property (same persisted object the publish
146
+ * pipeline attaches `compiledValidatorKey` to). Use with {@link SignalHostServices.enforceSchema},
147
+ * e.g. `await $.enforceSchema($.interfaceEmitSchema, toEmit)`.
148
+ */
149
+ interfaceEmitSchema?: HttpInterfaceSchemaWire;
150
+ };
151
+
152
+ export type EnforceSchemaResult<T extends unknown = unknown> = {
153
+ ok: true;
154
+ value: T;
155
+ } | {
156
+ ok: false;
157
+ message: string;
130
158
  };
131
159
 
132
- export type SignalRunOptions = {
160
+ export type SignalRunOptions = {
133
161
  $: SignalHostServices;
134
162
  event: SignalEventShape;
135
163
  };
@@ -138,29 +166,84 @@ export type ValidateEmitPayloadResult<T> =
138
166
  | { ok: true; value: T }
139
167
  | { ok: false; message: string };
140
168
 
169
+ /** Shared across bundled copies of this package in the same JS realm (worker isolate). */
170
+ const SIGNAL_EMIT_VALIDATION_HOST = Symbol.for('process.co.signalEmitValidationHost');
171
+
141
172
  /**
142
- * When `inputSchema.validation` is true, awaits `host.enforceSchema(inputSchema, value)`.
143
- * Otherwise returns `value` unchanged.
173
+ * Host shape accepted from the runner RPC bridge (`$.enforceSchema` may be typed as
174
+ * returning `Promise<unknown>` while {@link SignalHostServices} uses a generic `T`).
175
+ */
176
+ export type SignalEmitValidationHostBinding =
177
+ | Pick<SignalHostServices, 'enforceSchema'>
178
+ | {
179
+ enforceSchema?: (
180
+ inputSchema: HttpInterfaceSchemaWire | undefined,
181
+ value: unknown,
182
+ ) => Promise<unknown>;
183
+ };
184
+
185
+ function getSignalEmitValidationHostBinding(): Pick<SignalHostServices, 'enforceSchema'> | undefined {
186
+ return (globalThis as Record<symbol, Pick<SignalHostServices, 'enforceSchema'> | undefined>)[
187
+ SIGNAL_EMIT_VALIDATION_HOST
188
+ ];
189
+ }
190
+
191
+ /**
192
+ * Binds the trusted signal host used by {@link validateEmitPayload} for the current
193
+ * invocation. The runner sets this from the RPC/proxy host **outside** element code and
194
+ * clears it when the invocation completes. Uses `globalThis` so a bundled copy of
195
+ * `validateEmitPayload` inside an element module still sees the same binding as the runner.
196
+ */
197
+ export function setSignalEmitValidationHost(
198
+ host: SignalEmitValidationHostBinding | undefined,
199
+ ): void {
200
+ const g = globalThis as Record<symbol, Pick<SignalHostServices, 'enforceSchema'> | undefined>;
201
+ if (host === undefined) {
202
+ delete g[SIGNAL_EMIT_VALIDATION_HOST];
203
+ } else {
204
+ g[SIGNAL_EMIT_VALIDATION_HOST] = host as Pick<SignalHostServices, 'enforceSchema'>;
205
+ }
206
+ }
207
+
208
+ /**
209
+ * When validation is required (explicit `validation: true`, or a non-empty `compiledValidatorKey`
210
+ * with `validation` not `false`), awaits the bound host's `enforceSchema` so the API runs the
211
+ * **compiled Zod** validator. Otherwise returns `value` unchanged.
212
+ * (see {@link setSignalEmitValidationHost}).
144
213
  */
145
214
  export async function validateEmitPayload<T>(
146
- host: Pick<SignalHostServices, 'enforceSchema'>,
147
215
  inputSchema: HttpInterfaceSchemaWire | undefined,
148
216
  value: unknown,
149
217
  ): Promise<ValidateEmitPayloadResult<T>> {
150
- if (!inputSchema?.validation) {
218
+ const hasCompiled =
219
+ inputSchema &&
220
+ typeof inputSchema.compiledValidatorKey === 'string' &&
221
+ inputSchema.compiledValidatorKey.length > 0;
222
+ if (inputSchema?.validation === false) {
223
+ return { ok: true, value: value as T };
224
+ }
225
+ if (!hasCompiled && inputSchema?.validation !== true) {
151
226
  return { ok: true, value: value as T };
152
227
  }
153
- const enforce = host.enforceSchema;
228
+ const bound = getSignalEmitValidationHostBinding();
229
+ const enforce = bound?.enforceSchema;
154
230
  if (typeof enforce !== 'function') {
155
231
  return {
156
232
  ok: false,
157
233
  message:
158
- 'Input validation is enabled but the runtime did not provide enforceSchema.',
234
+ 'Input validation is enabled for this HTTP trigger, but the runtime did not provide enforceSchema. Use `run`/`this.$` from the Process worker (RPC host), and pass the wire from `$.interfaceEmitSchema` as the first argument to `$.enforceSchema`.',
159
235
  };
160
236
  }
161
237
  try {
162
238
  const out = await enforce<T>(inputSchema, value);
163
- return { ok: true, value: out };
239
+ if (out && typeof out === 'object' && 'ok' in out) {
240
+ const r = out as EnforceSchemaResult<T>;
241
+ if (r.ok) {
242
+ return { ok: true, value: r.value };
243
+ }
244
+ return { ok: false, message: r.message };
245
+ }
246
+ return { ok: true, value: out as T };
164
247
  } catch (e) {
165
248
  const message = e instanceof Error ? e.message : String(e);
166
249
  return { ok: false, message };
@@ -482,6 +565,7 @@ type PropTypeFromTypeValue<U, T = unknown> =
482
565
  : U extends "number" ? number
483
566
  : U extends "boolean" ? boolean
484
567
  : U extends "integer" ? number
568
+ : U extends "$.interface.schema" ? HttpInterfaceSchemaWire
485
569
  : U extends "$.interface.http" ? {
486
570
  respond: (response: HTTPResponse) => Promise<any> | void;
487
571
  authenticate: (authType: HTTPAuthenticationType, options?: { token?: string }) => Promise<any> | void;