@inf-monkeys-tech/monkeys 1.0.68 → 1.0.70
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/lib/contracts/declarative-control-http.d.ts +1681 -369
- package/lib/contracts/declarative-control-http.d.ts.map +1 -1
- package/lib/contracts/declarative-control.d.ts +740 -23
- package/lib/contracts/declarative-control.d.ts.map +1 -1
- package/lib/contracts/declarative-control.js +22 -3
- package/lib/contracts/declarative-control.js.map +1 -1
- package/lib/contracts/index.d.ts +1 -0
- package/lib/contracts/index.d.ts.map +1 -1
- package/lib/contracts/index.js +1 -0
- package/lib/contracts/index.js.map +1 -1
- package/lib/contracts/workflow-column.d.ts +130 -0
- package/lib/contracts/workflow-column.d.ts.map +1 -0
- package/lib/contracts/workflow-column.js +72 -0
- package/lib/contracts/workflow-column.js.map +1 -0
- package/lib/esm/contracts/index.mjs +103 -25
- package/lib/esm/contracts/index.mjs.map +1 -1
- package/lib/esm/index.mjs +225 -25
- package/lib/esm/index.mjs.map +1 -1
- package/lib/esm/runtime/index.mjs +207 -15
- package/lib/esm/runtime/index.mjs.map +1 -1
- package/lib/esm/schemas/index.mjs +81 -3
- package/lib/esm/schemas/index.mjs.map +1 -1
- package/lib/json-schema/index.json +1 -0
- package/lib/json-schema/navigation-release.schema.json +582 -0
- package/lib/json-schema/navigation-runtime-bundle.schema.json +579 -0
- package/lib/json-schema/workflow-column-binding.schema.json +386 -0
- package/lib/runtime/declarative-control-compiler.d.ts.map +1 -1
- package/lib/runtime/declarative-control-compiler.js +26 -0
- package/lib/runtime/declarative-control-compiler.js.map +1 -1
- package/lib/runtime/index.d.ts +2 -0
- package/lib/runtime/index.d.ts.map +1 -1
- package/lib/runtime/index.js +2 -0
- package/lib/runtime/index.js.map +1 -1
- package/lib/runtime/menu-compiler.d.ts +19 -1
- package/lib/runtime/menu-compiler.d.ts.map +1 -1
- package/lib/runtime/menu-compiler.js +34 -0
- package/lib/runtime/menu-compiler.js.map +1 -1
- package/lib/runtime/navigation-availability.d.ts +6 -0
- package/lib/runtime/navigation-availability.d.ts.map +1 -0
- package/lib/runtime/navigation-availability.js +17 -0
- package/lib/runtime/navigation-availability.js.map +1 -0
- package/lib/runtime/workflow-column.d.ts +8 -0
- package/lib/runtime/workflow-column.d.ts.map +1 -0
- package/lib/runtime/workflow-column.js +57 -0
- package/lib/runtime/workflow-column.js.map +1 -0
- package/lib/schemas/index.d.ts +310 -1
- package/lib/schemas/index.d.ts.map +1 -1
- package/lib/schemas/index.js +13 -4
- package/lib/schemas/index.js.map +1 -1
- package/package.json +1 -1
- package/test/fixtures/navigation-three-roots-topology.json +275 -0
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WorkflowColumnBindingSchema = exports.WorkflowColumnOutputSchema = exports.WorkflowColumnOutputPathSchema = exports.WorkflowColumnDependencySchema = exports.WorkflowColumnInputSchema = exports.WorkflowColumnFieldRefSchema = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
const common_1 = require("./common");
|
|
6
|
+
exports.WorkflowColumnFieldRefSchema = zod_1.z
|
|
7
|
+
.object({
|
|
8
|
+
ontologyId: common_1.ContractIdentifierSchema,
|
|
9
|
+
fieldKey: common_1.ContractIdentifierSchema,
|
|
10
|
+
})
|
|
11
|
+
.strict();
|
|
12
|
+
exports.WorkflowColumnInputSchema = zod_1.z.discriminatedUnion('kind', [
|
|
13
|
+
zod_1.z.object({ kind: zod_1.z.literal('default') }).strict(),
|
|
14
|
+
zod_1.z.object({ kind: zod_1.z.literal('constant'), value: common_1.JsonValueSchema }).strict(),
|
|
15
|
+
zod_1.z.object({ kind: zod_1.z.literal('field'), field: exports.WorkflowColumnFieldRefSchema }).strict(),
|
|
16
|
+
zod_1.z
|
|
17
|
+
.object({
|
|
18
|
+
kind: zod_1.z.literal('context'),
|
|
19
|
+
field: zod_1.z.enum(['assetId', 'teamId', 'ontologyId', 'columnId']),
|
|
20
|
+
})
|
|
21
|
+
.strict(),
|
|
22
|
+
]);
|
|
23
|
+
exports.WorkflowColumnDependencySchema = zod_1.z.discriminatedUnion('kind', [
|
|
24
|
+
zod_1.z.object({ kind: zod_1.z.literal('field'), field: exports.WorkflowColumnFieldRefSchema }).strict(),
|
|
25
|
+
zod_1.z
|
|
26
|
+
.object({
|
|
27
|
+
kind: zod_1.z.literal('relation'),
|
|
28
|
+
relation: exports.WorkflowColumnFieldRefSchema,
|
|
29
|
+
direction: zod_1.z.enum(['incoming', 'outgoing']),
|
|
30
|
+
fields: zod_1.z.array(exports.WorkflowColumnFieldRefSchema).max(100),
|
|
31
|
+
})
|
|
32
|
+
.strict(),
|
|
33
|
+
]);
|
|
34
|
+
// Paths are literal own-property segments, never executable JSONPath expressions.
|
|
35
|
+
exports.WorkflowColumnOutputPathSchema = zod_1.z.array(zod_1.z.string().min(1).max(256)).max(20);
|
|
36
|
+
exports.WorkflowColumnOutputSchema = zod_1.z
|
|
37
|
+
.object({
|
|
38
|
+
type: zod_1.z.enum(['number', 'text', 'json']),
|
|
39
|
+
path: exports.WorkflowColumnOutputPathSchema,
|
|
40
|
+
nullable: zod_1.z.boolean().default(false),
|
|
41
|
+
})
|
|
42
|
+
.strict();
|
|
43
|
+
exports.WorkflowColumnBindingSchema = zod_1.z
|
|
44
|
+
.object({
|
|
45
|
+
contract: zod_1.z.literal('WorkflowColumnBinding'),
|
|
46
|
+
version: zod_1.z.literal(1),
|
|
47
|
+
enabled: zod_1.z.boolean(),
|
|
48
|
+
paused: zod_1.z.boolean().default(false),
|
|
49
|
+
workflow: zod_1.z
|
|
50
|
+
.object({
|
|
51
|
+
id: common_1.ContractIdentifierSchema,
|
|
52
|
+
version: zod_1.z.number().int().positive(),
|
|
53
|
+
inputSchemaHash: common_1.Sha256Schema,
|
|
54
|
+
})
|
|
55
|
+
.strict(),
|
|
56
|
+
inputs: zod_1.z.record(zod_1.z.string().min(1).max(128), exports.WorkflowColumnInputSchema),
|
|
57
|
+
dependencies: zod_1.z.array(exports.WorkflowColumnDependencySchema).max(100).default([]),
|
|
58
|
+
output: exports.WorkflowColumnOutputSchema,
|
|
59
|
+
policy: zod_1.z
|
|
60
|
+
.object({
|
|
61
|
+
debounceMs: zod_1.z.number().int().min(0).max(30000).default(5000),
|
|
62
|
+
maxDelayMs: zod_1.z.number().int().min(0).max(30000).default(30000),
|
|
63
|
+
concurrency: zod_1.z.number().int().min(1).max(32).default(2),
|
|
64
|
+
})
|
|
65
|
+
.strict()
|
|
66
|
+
.default({ debounceMs: 5000, maxDelayMs: 30000, concurrency: 2 }),
|
|
67
|
+
// The workflow supplies an ISO datetime with offset for one future expiry.
|
|
68
|
+
// Scheduling infrastructure needs no knowledge of months or business periods.
|
|
69
|
+
expiry: zod_1.z.object({ path: exports.WorkflowColumnOutputPathSchema }).strict().optional(),
|
|
70
|
+
})
|
|
71
|
+
.strict();
|
|
72
|
+
//# sourceMappingURL=workflow-column.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-column.js","sourceRoot":"","sources":["../../src/contracts/workflow-column.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AACxB,qCAAmF;AAEtE,QAAA,4BAA4B,GAAG,OAAC;KAC1C,MAAM,CAAC;IACN,UAAU,EAAE,iCAAwB;IACpC,QAAQ,EAAE,iCAAwB;CACnC,CAAC;KACD,MAAM,EAAE,CAAC;AAEC,QAAA,yBAAyB,GAAG,OAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IACpE,OAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE;IACjD,OAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,wBAAe,EAAE,CAAC,CAAC,MAAM,EAAE;IAC1E,OAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,oCAA4B,EAAE,CAAC,CAAC,MAAM,EAAE;IACpF,OAAC;SACE,MAAM,CAAC;QACN,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,SAAS,CAAC;QAC1B,KAAK,EAAE,OAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;KAC/D,CAAC;SACD,MAAM,EAAE;CACZ,CAAC,CAAC;AAEU,QAAA,8BAA8B,GAAG,OAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IACzE,OAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,oCAA4B,EAAE,CAAC,CAAC,MAAM,EAAE;IACpF,OAAC;SACE,MAAM,CAAC;QACN,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,UAAU,CAAC;QAC3B,QAAQ,EAAE,oCAA4B;QACtC,SAAS,EAAE,OAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QAC3C,MAAM,EAAE,OAAC,CAAC,KAAK,CAAC,oCAA4B,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;KACvD,CAAC;SACD,MAAM,EAAE;CACZ,CAAC,CAAC;AAEH,kFAAkF;AACrE,QAAA,8BAA8B,GAAG,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAC7E,QAAA,0BAA0B,GAAG,OAAC;KACxC,MAAM,CAAC;IACN,IAAI,EAAE,OAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,IAAI,EAAE,sCAA8B;IACpC,QAAQ,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;CACrC,CAAC;KACD,MAAM,EAAE,CAAC;AAEC,QAAA,2BAA2B,GAAG,OAAC;KACzC,MAAM,CAAC;IACN,QAAQ,EAAE,OAAC,CAAC,OAAO,CAAC,uBAAuB,CAAC;IAC5C,OAAO,EAAE,OAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IACrB,OAAO,EAAE,OAAC,CAAC,OAAO,EAAE;IACpB,MAAM,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IAClC,QAAQ,EAAE,OAAC;SACR,MAAM,CAAC;QACN,EAAE,EAAE,iCAAwB;QAC5B,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;QACpC,eAAe,EAAE,qBAAY;KAC9B,CAAC;SACD,MAAM,EAAE;IACX,MAAM,EAAE,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,iCAAyB,CAAC;IACvE,YAAY,EAAE,OAAC,CAAC,KAAK,CAAC,sCAA8B,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IAC1E,MAAM,EAAE,kCAA0B;IAClC,MAAM,EAAE,OAAC;SACN,MAAM,CAAC;QACN,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAM,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;QAC7D,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAM,CAAC,CAAC,OAAO,CAAC,KAAM,CAAC;QAC/D,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;KACxD,CAAC;SACD,MAAM,EAAE;SACR,OAAO,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,KAAM,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC;IACpE,2EAA2E;IAC3E,8EAA8E;IAC9E,MAAM,EAAE,OAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,sCAA8B,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC/E,CAAC;KACD,MAAM,EAAE,CAAC"}
|
|
@@ -9199,6 +9199,12 @@ var ResolvedNavigationTargetSchema = z10.object({
|
|
|
9199
9199
|
targetRevisionRef: RevisionRefSchema,
|
|
9200
9200
|
releaseRevisionRef: RevisionRefSchema.optional()
|
|
9201
9201
|
}).strict();
|
|
9202
|
+
var UnavailableNavigationTargetSchema = z10.object({
|
|
9203
|
+
nodeId: ContractIdentifierSchema,
|
|
9204
|
+
stableTargetRef: StableRefSchema.refine((reference) => reference.kind === "page", "Only missing Pages can be isolated."),
|
|
9205
|
+
reason: z10.literal("page-missing"),
|
|
9206
|
+
accessPolicy: AccessPolicySchema.nullable()
|
|
9207
|
+
}).strict();
|
|
9202
9208
|
var NavigationReleaseSchema = z10.object({
|
|
9203
9209
|
contract: z10.literal("NavigationRelease"),
|
|
9204
9210
|
...ReleaseBaseShape,
|
|
@@ -9208,13 +9214,17 @@ var NavigationReleaseSchema = z10.object({
|
|
|
9208
9214
|
surface: ProductSurfaceSchema,
|
|
9209
9215
|
placement: ContractIdentifierSchema
|
|
9210
9216
|
}).strict(),
|
|
9211
|
-
resolvedTargets: z10.array(ResolvedNavigationTargetSchema)
|
|
9217
|
+
resolvedTargets: z10.array(ResolvedNavigationTargetSchema),
|
|
9218
|
+
unavailableTargets: z10.array(UnavailableNavigationTargetSchema).optional()
|
|
9212
9219
|
}).strict().superRefine((value, context) => {
|
|
9213
9220
|
validateDependencySnapshot(value.dependencySnapshot, context);
|
|
9214
9221
|
validateReleaseExpectedHead(value, "navigation-release", context);
|
|
9215
9222
|
if (value.navigationRevisionRef.kind !== "navigation") context.addIssue({ code: "custom", path: ["navigationRevisionRef", "kind"], message: "Expected a navigation revision." });
|
|
9216
9223
|
if (value.target.environmentRef.kind !== "environment") context.addIssue({ code: "custom", path: ["target", "environmentRef", "kind"], message: "Navigation release target requires an environment reference." });
|
|
9217
9224
|
if (uniqueArray(value.resolvedTargets, (target) => target.nodeId)) context.addIssue({ code: "custom", path: ["resolvedTargets"], message: "Resolved Navigation node IDs must be unique." });
|
|
9225
|
+
if (uniqueArray([...value.resolvedTargets, ...value.unavailableTargets ?? []], (target) => target.nodeId)) {
|
|
9226
|
+
context.addIssue({ code: "custom", path: ["unavailableTargets"], message: "Navigation target resolutions must have unique node IDs." });
|
|
9227
|
+
}
|
|
9218
9228
|
});
|
|
9219
9229
|
var RuntimeDiagnosticSchema = z10.object({
|
|
9220
9230
|
code: ContractIdentifierSchema,
|
|
@@ -9302,7 +9312,8 @@ var CompiledNavigationDomainCommandTargetSchema = ResolvedNavigationTargetSchema
|
|
|
9302
9312
|
var CompiledNavigationResolvedTargetSchema = z10.discriminatedUnion("kind", [
|
|
9303
9313
|
CompiledNavigationTargetSchema,
|
|
9304
9314
|
CompiledNavigationRegisteredMenuActionTargetSchema,
|
|
9305
|
-
CompiledNavigationDomainCommandTargetSchema
|
|
9315
|
+
CompiledNavigationDomainCommandTargetSchema,
|
|
9316
|
+
UnavailableNavigationTargetSchema.omit({ reason: true }).extend({ kind: z10.literal("unavailable") }).strict()
|
|
9306
9317
|
]);
|
|
9307
9318
|
var CompiledNavigationGroupNodeSchema = NavigationGroupNodeSchema.extend({
|
|
9308
9319
|
ancestorAccessPolicies: z10.array(AccessPolicySchema)
|
|
@@ -9310,7 +9321,14 @@ var CompiledNavigationGroupNodeSchema = NavigationGroupNodeSchema.extend({
|
|
|
9310
9321
|
var CompiledNavigationTargetNodeSchema = NavigationTargetNodeSchema.extend({
|
|
9311
9322
|
ancestorAccessPolicies: z10.array(AccessPolicySchema),
|
|
9312
9323
|
resolvedTarget: CompiledNavigationResolvedTargetSchema
|
|
9313
|
-
}).strict()
|
|
9324
|
+
}).strict().superRefine((node, context) => {
|
|
9325
|
+
if (node.resolvedTarget.nodeId !== node.nodeId || stableRefIdentity(node.resolvedTarget.stableTargetRef) !== stableRefIdentity(node.targetRef)) {
|
|
9326
|
+
context.addIssue({ code: "custom", path: ["resolvedTarget"], message: "Resolved target identity must match the source node." });
|
|
9327
|
+
}
|
|
9328
|
+
if (node.resolvedTarget.kind === "unavailable" && (node.disabled !== true || Object.keys(node.parameterMapping).length > 0)) {
|
|
9329
|
+
context.addIssue({ code: "custom", path: ["resolvedTarget"], message: "Unavailable targets must be disabled and contain no executable input." });
|
|
9330
|
+
}
|
|
9331
|
+
});
|
|
9314
9332
|
var CompiledNavigationSeparatorNodeSchema = NavigationSeparatorNodeSchema.extend({
|
|
9315
9333
|
ancestorAccessPolicies: z10.array(AccessPolicySchema)
|
|
9316
9334
|
}).strict();
|
|
@@ -14775,22 +14793,75 @@ var WorkflowDefinitionSchema = z19.object({
|
|
|
14775
14793
|
if (definition.revision.kind === "release" && definition.metadata.version !== definition.revision.recordVersion) context.addIssue({ code: "custom", path: ["revision", "recordVersion"], message: "Release recordVersion must equal metadata.version." });
|
|
14776
14794
|
});
|
|
14777
14795
|
|
|
14778
|
-
// src/contracts/workflow-
|
|
14796
|
+
// src/contracts/workflow-column.ts
|
|
14779
14797
|
import { z as z20 } from "zod";
|
|
14780
|
-
var
|
|
14781
|
-
|
|
14798
|
+
var WorkflowColumnFieldRefSchema = z20.object({
|
|
14799
|
+
ontologyId: ContractIdentifierSchema,
|
|
14800
|
+
fieldKey: ContractIdentifierSchema
|
|
14801
|
+
}).strict();
|
|
14802
|
+
var WorkflowColumnInputSchema = z20.discriminatedUnion("kind", [
|
|
14803
|
+
z20.object({ kind: z20.literal("default") }).strict(),
|
|
14804
|
+
z20.object({ kind: z20.literal("constant"), value: JsonValueSchema }).strict(),
|
|
14805
|
+
z20.object({ kind: z20.literal("field"), field: WorkflowColumnFieldRefSchema }).strict(),
|
|
14806
|
+
z20.object({
|
|
14807
|
+
kind: z20.literal("context"),
|
|
14808
|
+
field: z20.enum(["assetId", "teamId", "ontologyId", "columnId"])
|
|
14809
|
+
}).strict()
|
|
14810
|
+
]);
|
|
14811
|
+
var WorkflowColumnDependencySchema = z20.discriminatedUnion("kind", [
|
|
14812
|
+
z20.object({ kind: z20.literal("field"), field: WorkflowColumnFieldRefSchema }).strict(),
|
|
14813
|
+
z20.object({
|
|
14814
|
+
kind: z20.literal("relation"),
|
|
14815
|
+
relation: WorkflowColumnFieldRefSchema,
|
|
14816
|
+
direction: z20.enum(["incoming", "outgoing"]),
|
|
14817
|
+
fields: z20.array(WorkflowColumnFieldRefSchema).max(100)
|
|
14818
|
+
}).strict()
|
|
14819
|
+
]);
|
|
14820
|
+
var WorkflowColumnOutputPathSchema = z20.array(z20.string().min(1).max(256)).max(20);
|
|
14821
|
+
var WorkflowColumnOutputSchema = z20.object({
|
|
14822
|
+
type: z20.enum(["number", "text", "json"]),
|
|
14823
|
+
path: WorkflowColumnOutputPathSchema,
|
|
14824
|
+
nullable: z20.boolean().default(false)
|
|
14825
|
+
}).strict();
|
|
14826
|
+
var WorkflowColumnBindingSchema = z20.object({
|
|
14827
|
+
contract: z20.literal("WorkflowColumnBinding"),
|
|
14828
|
+
version: z20.literal(1),
|
|
14829
|
+
enabled: z20.boolean(),
|
|
14830
|
+
paused: z20.boolean().default(false),
|
|
14831
|
+
workflow: z20.object({
|
|
14832
|
+
id: ContractIdentifierSchema,
|
|
14833
|
+
version: z20.number().int().positive(),
|
|
14834
|
+
inputSchemaHash: Sha256Schema
|
|
14835
|
+
}).strict(),
|
|
14836
|
+
inputs: z20.record(z20.string().min(1).max(128), WorkflowColumnInputSchema),
|
|
14837
|
+
dependencies: z20.array(WorkflowColumnDependencySchema).max(100).default([]),
|
|
14838
|
+
output: WorkflowColumnOutputSchema,
|
|
14839
|
+
policy: z20.object({
|
|
14840
|
+
debounceMs: z20.number().int().min(0).max(3e4).default(5e3),
|
|
14841
|
+
maxDelayMs: z20.number().int().min(0).max(3e4).default(3e4),
|
|
14842
|
+
concurrency: z20.number().int().min(1).max(32).default(2)
|
|
14843
|
+
}).strict().default({ debounceMs: 5e3, maxDelayMs: 3e4, concurrency: 2 }),
|
|
14844
|
+
// The workflow supplies an ISO datetime with offset for one future expiry.
|
|
14845
|
+
// Scheduling infrastructure needs no knowledge of months or business periods.
|
|
14846
|
+
expiry: z20.object({ path: WorkflowColumnOutputPathSchema }).strict().optional()
|
|
14847
|
+
}).strict();
|
|
14848
|
+
|
|
14849
|
+
// src/contracts/workflow-runtime.ts
|
|
14850
|
+
import { z as z21 } from "zod";
|
|
14851
|
+
var WorkflowCatalogEntrySchema = z21.object({
|
|
14852
|
+
contract: z21.literal("WorkflowCatalogEntry"),
|
|
14782
14853
|
workflowId: ContractIdentifierSchema,
|
|
14783
14854
|
teamId: ContractIdentifierSchema,
|
|
14784
14855
|
creatorRef: EntityRefSchema,
|
|
14785
14856
|
currentDefinitionRef: EntityRefSchema,
|
|
14786
|
-
lifecycle:
|
|
14787
|
-
asset:
|
|
14788
|
-
preset:
|
|
14789
|
-
marketplacePublished:
|
|
14857
|
+
lifecycle: z21.enum(["ACTIVE", "DELETED"]),
|
|
14858
|
+
asset: z21.object({
|
|
14859
|
+
preset: z21.boolean(),
|
|
14860
|
+
marketplacePublished: z21.boolean(),
|
|
14790
14861
|
publishConfig: JsonObjectSchema.optional(),
|
|
14791
|
-
sort:
|
|
14862
|
+
sort: z21.number().int(),
|
|
14792
14863
|
forkFromRef: EntityRefSchema.optional(),
|
|
14793
|
-
notAuthorized:
|
|
14864
|
+
notAuthorized: z21.boolean()
|
|
14794
14865
|
}).strict(),
|
|
14795
14866
|
createdAt: IsoDateTimeSchema,
|
|
14796
14867
|
updatedAt: IsoDateTimeSchema,
|
|
@@ -14825,17 +14896,17 @@ var WorkflowCatalogEntrySchema = z20.object({
|
|
|
14825
14896
|
});
|
|
14826
14897
|
}
|
|
14827
14898
|
});
|
|
14828
|
-
var WorkflowPublicationSchema =
|
|
14829
|
-
contract:
|
|
14899
|
+
var WorkflowPublicationSchema = z21.object({
|
|
14900
|
+
contract: z21.literal("WorkflowPublication"),
|
|
14830
14901
|
publicationId: ContractIdentifierSchema,
|
|
14831
14902
|
definitionRef: EntityRefSchema,
|
|
14832
14903
|
runtimeDefinitionRef: EntityRefSchema,
|
|
14833
14904
|
sourceHash: Sha256Schema,
|
|
14834
14905
|
compiledHash: Sha256Schema,
|
|
14835
|
-
status:
|
|
14906
|
+
status: z21.enum(["PENDING", "PUBLISHED", "FAILED", "RETIRED"]),
|
|
14836
14907
|
publisherRef: EntityRefSchema,
|
|
14837
14908
|
publishedAt: IsoDateTimeSchema.optional(),
|
|
14838
|
-
failureReason:
|
|
14909
|
+
failureReason: z21.string().trim().min(1).optional()
|
|
14839
14910
|
}).strict().superRefine((publication, context) => {
|
|
14840
14911
|
if (publication.definitionRef.kind !== "workflow-definition") {
|
|
14841
14912
|
context.addIssue({
|
|
@@ -14866,12 +14937,12 @@ var WorkflowPublicationSchema = z20.object({
|
|
|
14866
14937
|
});
|
|
14867
14938
|
}
|
|
14868
14939
|
});
|
|
14869
|
-
var WorkflowCompletionCommitSchema =
|
|
14870
|
-
contract:
|
|
14940
|
+
var WorkflowCompletionCommitSchema = z21.object({
|
|
14941
|
+
contract: z21.literal("WorkflowCompletionCommit"),
|
|
14871
14942
|
commitId: ContractIdentifierSchema,
|
|
14872
14943
|
run: ApplicationRunSchema,
|
|
14873
|
-
outputs:
|
|
14874
|
-
artifacts:
|
|
14944
|
+
outputs: z21.array(OutputRecordSchema),
|
|
14945
|
+
artifacts: z21.array(ArtifactManifestSchema),
|
|
14875
14946
|
lineage: LineageRecordSchema,
|
|
14876
14947
|
completedAt: IsoDateTimeSchema
|
|
14877
14948
|
}).strict().superRefine((commit, context) => {
|
|
@@ -14913,15 +14984,15 @@ var WorkflowCompletionCommitSchema = z20.object({
|
|
|
14913
14984
|
}
|
|
14914
14985
|
});
|
|
14915
14986
|
});
|
|
14916
|
-
var WorkflowCompletionReceiptSchema =
|
|
14917
|
-
contract:
|
|
14987
|
+
var WorkflowCompletionReceiptSchema = z21.object({
|
|
14988
|
+
contract: z21.literal("WorkflowCompletionReceipt"),
|
|
14918
14989
|
commitId: ContractIdentifierSchema,
|
|
14919
14990
|
runRef: EntityRefSchema,
|
|
14920
|
-
outputRefs:
|
|
14921
|
-
artifactRefs:
|
|
14991
|
+
outputRefs: z21.array(EntityRefSchema),
|
|
14992
|
+
artifactRefs: z21.array(EntityRefSchema),
|
|
14922
14993
|
contentHash: Sha256Schema,
|
|
14923
14994
|
committedAt: IsoDateTimeSchema,
|
|
14924
|
-
idempotentReplay:
|
|
14995
|
+
idempotentReplay: z21.boolean()
|
|
14925
14996
|
}).strict().superRefine((receipt, context) => {
|
|
14926
14997
|
if (receipt.runRef.kind !== "application-run") {
|
|
14927
14998
|
context.addIssue({
|
|
@@ -15339,6 +15410,7 @@ export {
|
|
|
15339
15410
|
TrendRadarCollectionSubjectRefSchema,
|
|
15340
15411
|
TrendSourceRecordSchema,
|
|
15341
15412
|
TrendSourceSchema,
|
|
15413
|
+
UnavailableNavigationTargetSchema,
|
|
15342
15414
|
ViewProviderDescriptorSchema,
|
|
15343
15415
|
WorkbenchAppInstanceSchema,
|
|
15344
15416
|
WorkbenchGroupSchema,
|
|
@@ -15347,6 +15419,12 @@ export {
|
|
|
15347
15419
|
WorkbenchRuntimeBundleSchema,
|
|
15348
15420
|
WorkbenchSchema,
|
|
15349
15421
|
WorkflowCatalogEntrySchema,
|
|
15422
|
+
WorkflowColumnBindingSchema,
|
|
15423
|
+
WorkflowColumnDependencySchema,
|
|
15424
|
+
WorkflowColumnFieldRefSchema,
|
|
15425
|
+
WorkflowColumnInputSchema,
|
|
15426
|
+
WorkflowColumnOutputPathSchema,
|
|
15427
|
+
WorkflowColumnOutputSchema,
|
|
15350
15428
|
WorkflowCompletionCommitSchema,
|
|
15351
15429
|
WorkflowCompletionReceiptSchema,
|
|
15352
15430
|
WorkflowDefinitionSchema,
|