@inf-monkeys-tech/monkeys 1.0.36 → 1.0.38

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.
Files changed (63) hide show
  1. package/lib/contracts/common.d.ts +2 -1
  2. package/lib/contracts/common.d.ts.map +1 -1
  3. package/lib/contracts/common.js.map +1 -1
  4. package/lib/contracts/index.d.ts +1 -0
  5. package/lib/contracts/index.d.ts.map +1 -1
  6. package/lib/contracts/index.js +1 -0
  7. package/lib/contracts/index.js.map +1 -1
  8. package/lib/contracts/menu.d.ts +790 -0
  9. package/lib/contracts/menu.d.ts.map +1 -0
  10. package/lib/contracts/menu.js +319 -0
  11. package/lib/contracts/menu.js.map +1 -0
  12. package/lib/contracts/page.d.ts +6 -0
  13. package/lib/contracts/page.d.ts.map +1 -1
  14. package/lib/contracts/page.js +6 -0
  15. package/lib/contracts/page.js.map +1 -1
  16. package/lib/contracts/semantic.d.ts +59 -0
  17. package/lib/contracts/semantic.d.ts.map +1 -1
  18. package/lib/contracts/semantic.js +2 -0
  19. package/lib/contracts/semantic.js.map +1 -1
  20. package/lib/contracts/tenant.d.ts +157 -0
  21. package/lib/contracts/tenant.d.ts.map +1 -1
  22. package/lib/contracts/tenant.js +4 -0
  23. package/lib/contracts/tenant.js.map +1 -1
  24. package/lib/esm/contracts/index.mjs +1089 -768
  25. package/lib/esm/contracts/index.mjs.map +1 -1
  26. package/lib/esm/index.mjs +1615 -771
  27. package/lib/esm/index.mjs.map +1 -1
  28. package/lib/esm/runtime/index.mjs +1168 -364
  29. package/lib/esm/runtime/index.mjs.map +1 -1
  30. package/lib/esm/schemas/index.mjs +1084 -768
  31. package/lib/esm/schemas/index.mjs.map +1 -1
  32. package/lib/json-schema/index.json +3 -0
  33. package/lib/json-schema/menu-definition-set.schema.json +411 -0
  34. package/lib/json-schema/menu-definition.schema.json +385 -0
  35. package/lib/json-schema/menu-runtime-bundle.schema.json +541 -0
  36. package/lib/json-schema/page-definition.schema.json +14 -0
  37. package/lib/json-schema/page-runtime-descriptor.schema.json +14 -0
  38. package/lib/json-schema/product-declaration.schema.json +369 -1
  39. package/lib/json-schema/tenant-product-config.schema.json +392 -0
  40. package/lib/json-schema/tenant-runtime-config.schema.json +522 -0
  41. package/lib/runtime/declaration-compiler.d.ts +2 -0
  42. package/lib/runtime/declaration-compiler.d.ts.map +1 -1
  43. package/lib/runtime/declaration-compiler.js +4 -0
  44. package/lib/runtime/declaration-compiler.js.map +1 -1
  45. package/lib/runtime/index.d.ts +1 -0
  46. package/lib/runtime/index.d.ts.map +1 -1
  47. package/lib/runtime/index.js +1 -0
  48. package/lib/runtime/index.js.map +1 -1
  49. package/lib/runtime/menu-compiler.d.ts +58 -0
  50. package/lib/runtime/menu-compiler.d.ts.map +1 -0
  51. package/lib/runtime/menu-compiler.js +436 -0
  52. package/lib/runtime/menu-compiler.js.map +1 -0
  53. package/lib/runtime/tenant-config.d.ts +2 -0
  54. package/lib/runtime/tenant-config.d.ts.map +1 -1
  55. package/lib/runtime/tenant-config.js +1 -0
  56. package/lib/runtime/tenant-config.js.map +1 -1
  57. package/lib/schemas/index.d.ts +408 -0
  58. package/lib/schemas/index.d.ts.map +1 -1
  59. package/lib/schemas/index.js +38 -3
  60. package/lib/schemas/index.js.map +1 -1
  61. package/package.json +1 -1
  62. package/test/fixtures/menu-definition.v1.json +41 -0
  63. package/test/fixtures/tenant-product-config.public.json +2 -1
@@ -8204,6 +8204,9 @@ var DomainEventSchema = z8.object({
8204
8204
  occurredAt: IsoDateTimeSchema
8205
8205
  }).strict();
8206
8206
 
8207
+ // src/contracts/menu.ts
8208
+ import { z as z10 } from "zod";
8209
+
8207
8210
  // src/contracts/page.ts
8208
8211
  import { z as z9 } from "zod";
8209
8212
  var PageTypeSchema = z9.enum([
@@ -8291,6 +8294,9 @@ var PageDefinitionSchema = z9.object({
8291
8294
  access: z9.object({
8292
8295
  actions: z9.array(z9.enum(["read", "write", "execute", "manage-permissions"])).default([])
8293
8296
  }).strict(),
8297
+ input: z9.object({
8298
+ schemaRef: ContractIdentifierSchema
8299
+ }).strict().optional(),
8294
8300
  rendererConfig: z9.object({
8295
8301
  schemaRef: ContractIdentifierSchema,
8296
8302
  value: JsonObjectSchema
@@ -8480,40 +8486,313 @@ var PageRuntimeProjectionSchema = z9.object({
8480
8486
  }
8481
8487
  });
8482
8488
 
8489
+ // src/contracts/menu.ts
8490
+ var MENU_CONTRACT_VERSION = 1;
8491
+ var MENU_MAX_DEFINITIONS = 128;
8492
+ var MENU_MAX_NODES = 1024;
8493
+ var MENU_MAX_TREE_DEPTH = 16;
8494
+ var MENU_MAX_INPUT_BYTES = 64 * 1024;
8495
+ var MENU_MAX_INPUT_VALUES = 2048;
8496
+ var MenuOrderSchema = z10.number().int().min(-1e6).max(1e6);
8497
+ var inspectJsonValue = (value) => {
8498
+ let maxDepth = 0;
8499
+ let values = 0;
8500
+ const visit = (candidate, depth) => {
8501
+ values += 1;
8502
+ maxDepth = Math.max(maxDepth, depth);
8503
+ if (Array.isArray(candidate)) {
8504
+ candidate.forEach((item) => visit(item, depth + 1));
8505
+ return;
8506
+ }
8507
+ if (candidate && typeof candidate === "object") {
8508
+ Object.values(candidate).forEach((item) => visit(item, depth + 1));
8509
+ }
8510
+ };
8511
+ visit(value, 1);
8512
+ return {
8513
+ bytes: new TextEncoder().encode(JSON.stringify(value)).byteLength,
8514
+ depth: maxDepth,
8515
+ values
8516
+ };
8517
+ };
8518
+ var MenuBoundedInputSchema = JsonObjectSchema.superRefine((value, context) => {
8519
+ const bounds = inspectJsonValue(value);
8520
+ if (bounds.bytes > MENU_MAX_INPUT_BYTES) {
8521
+ context.addIssue({
8522
+ code: "custom",
8523
+ message: `Menu input exceeds ${MENU_MAX_INPUT_BYTES} UTF-8 bytes.`
8524
+ });
8525
+ }
8526
+ if (bounds.depth > MENU_MAX_TREE_DEPTH) {
8527
+ context.addIssue({
8528
+ code: "custom",
8529
+ message: `Menu input exceeds maximum depth ${MENU_MAX_TREE_DEPTH}.`
8530
+ });
8531
+ }
8532
+ if (bounds.values > MENU_MAX_INPUT_VALUES) {
8533
+ context.addIssue({
8534
+ code: "custom",
8535
+ message: `Menu input exceeds ${MENU_MAX_INPUT_VALUES} values.`
8536
+ });
8537
+ }
8538
+ });
8539
+ var MenuPageRefSchema = z10.object({
8540
+ applicationId: ContractIdentifierSchema,
8541
+ pageId: ContractIdentifierSchema
8542
+ }).strict();
8543
+ var MenuSourceInputBindingSchema = z10.discriminatedUnion("exposure", [
8544
+ z10.object({ exposure: z10.literal("client"), value: MenuBoundedInputSchema }).strict(),
8545
+ z10.object({ exposure: z10.literal("server"), value: MenuBoundedInputSchema }).strict()
8546
+ ]);
8547
+ var MenuRuntimeInputBindingSchema = z10.discriminatedUnion("exposure", [
8548
+ z10.object({ exposure: z10.literal("client"), value: MenuBoundedInputSchema }).strict(),
8549
+ z10.object({ exposure: z10.literal("server") }).strict()
8550
+ ]);
8551
+ var MenuNavigateBehaviorSchema = z10.object({
8552
+ kind: z10.literal("navigate"),
8553
+ page: MenuPageRefSchema,
8554
+ activationId: ContractIdentifierSchema.optional(),
8555
+ input: MenuSourceInputBindingSchema.optional()
8556
+ }).strict();
8557
+ var MenuActionBehaviorSchema = z10.object({
8558
+ kind: z10.literal("action"),
8559
+ actionRef: ContractIdentifierSchema,
8560
+ input: MenuBoundedInputSchema.optional()
8561
+ }).strict();
8562
+ var MenuBehaviorSchema = z10.discriminatedUnion("kind", [
8563
+ MenuNavigateBehaviorSchema,
8564
+ MenuActionBehaviorSchema
8565
+ ]);
8566
+ var MenuNodeBaseShape = {
8567
+ nodeId: ContractIdentifierSchema,
8568
+ parentNodeId: ContractIdentifierSchema.optional(),
8569
+ order: MenuOrderSchema
8570
+ };
8571
+ var MenuGroupNodeSchema = z10.object({
8572
+ ...MenuNodeBaseShape,
8573
+ kind: z10.literal("group"),
8574
+ label: LocalizedTextSchema.optional(),
8575
+ iconRef: ContractIdentifierSchema.optional()
8576
+ }).strict();
8577
+ var MenuDividerNodeSchema = z10.object({
8578
+ ...MenuNodeBaseShape,
8579
+ kind: z10.literal("divider")
8580
+ }).strict();
8581
+ var MenuItemNodeSchema = z10.object({
8582
+ ...MenuNodeBaseShape,
8583
+ kind: z10.literal("item"),
8584
+ label: LocalizedTextSchema,
8585
+ iconRef: ContractIdentifierSchema.optional(),
8586
+ tone: z10.enum(["default", "danger"]).optional(),
8587
+ requiredPermission: ContractIdentifierSchema.optional(),
8588
+ behavior: MenuBehaviorSchema
8589
+ }).strict();
8590
+ var MenuNodeSchema = z10.discriminatedUnion("kind", [
8591
+ MenuGroupNodeSchema,
8592
+ MenuDividerNodeSchema,
8593
+ MenuItemNodeSchema
8594
+ ]);
8595
+ var MenuContributionSchema = z10.object({
8596
+ providerId: ContractIdentifierSchema,
8597
+ parentNodeId: ContractIdentifierSchema.optional(),
8598
+ order: MenuOrderSchema
8599
+ }).strict();
8600
+ var validateMenuStructure = (menu, context) => {
8601
+ const nodesById = /* @__PURE__ */ new Map();
8602
+ menu.nodes.forEach((node, index) => {
8603
+ if (nodesById.has(node.nodeId)) {
8604
+ context.addIssue({
8605
+ code: "custom",
8606
+ path: ["nodes", index, "nodeId"],
8607
+ message: `Duplicate menu nodeId: ${node.nodeId}`
8608
+ });
8609
+ return;
8610
+ }
8611
+ nodesById.set(node.nodeId, { node, index });
8612
+ });
8613
+ const validateParent = (parentNodeId, path) => {
8614
+ if (!parentNodeId) return;
8615
+ const parent = nodesById.get(parentNodeId);
8616
+ if (!parent) {
8617
+ context.addIssue({ code: "custom", path, message: `Unknown menu parentNodeId: ${parentNodeId}` });
8618
+ return;
8619
+ }
8620
+ if (parent.node.kind !== "group") {
8621
+ context.addIssue({ code: "custom", path, message: `Menu parent ${parentNodeId} must be a group.` });
8622
+ }
8623
+ };
8624
+ menu.nodes.forEach((node, index) => validateParent(node.parentNodeId, ["nodes", index, "parentNodeId"]));
8625
+ menu.contributions.forEach((contribution, index) => validateParent(contribution.parentNodeId, ["contributions", index, "parentNodeId"]));
8626
+ menu.nodes.forEach((node, index) => {
8627
+ const ancestors = /* @__PURE__ */ new Set([node.nodeId]);
8628
+ let parentNodeId = node.parentNodeId;
8629
+ let depth = 1;
8630
+ while (parentNodeId) {
8631
+ if (ancestors.has(parentNodeId)) {
8632
+ context.addIssue({
8633
+ code: "custom",
8634
+ path: ["nodes", index, "parentNodeId"],
8635
+ message: `Menu node cycle contains ${node.nodeId}.`
8636
+ });
8637
+ break;
8638
+ }
8639
+ ancestors.add(parentNodeId);
8640
+ depth += 1;
8641
+ if (depth > MENU_MAX_TREE_DEPTH) {
8642
+ context.addIssue({
8643
+ code: "custom",
8644
+ path: ["nodes", index, "parentNodeId"],
8645
+ message: `Menu tree exceeds maximum depth ${MENU_MAX_TREE_DEPTH}.`
8646
+ });
8647
+ break;
8648
+ }
8649
+ parentNodeId = nodesById.get(parentNodeId)?.node.parentNodeId;
8650
+ }
8651
+ });
8652
+ const contributionKeys = /* @__PURE__ */ new Set();
8653
+ menu.contributions.forEach((contribution, index) => {
8654
+ const key = `${contribution.parentNodeId ?? ""}\0${contribution.providerId}`;
8655
+ if (contributionKeys.has(key)) {
8656
+ context.addIssue({
8657
+ code: "custom",
8658
+ path: ["contributions", index, "providerId"],
8659
+ message: `Duplicate menu contribution provider at parent: ${contribution.providerId}`
8660
+ });
8661
+ }
8662
+ contributionKeys.add(key);
8663
+ });
8664
+ };
8665
+ var MenuDefinitionSchema = z10.object({
8666
+ contract: z10.literal("MenuDefinition"),
8667
+ version: z10.literal(MENU_CONTRACT_VERSION),
8668
+ applicationId: ContractIdentifierSchema,
8669
+ surface: ContractIdentifierSchema,
8670
+ menuId: ContractIdentifierSchema,
8671
+ nodes: z10.array(MenuNodeSchema).max(MENU_MAX_NODES),
8672
+ contributions: z10.array(MenuContributionSchema).max(MENU_MAX_NODES).default([])
8673
+ }).strict().superRefine(validateMenuStructure);
8674
+ var MenuDefinitionSetSchema = z10.union([
8675
+ z10.literal("*"),
8676
+ z10.object({
8677
+ version: z10.literal(MENU_CONTRACT_VERSION),
8678
+ definitions: z10.array(MenuDefinitionSchema).max(MENU_MAX_DEFINITIONS)
8679
+ }).strict()
8680
+ ]);
8681
+ var MenuAccessRequirementSchema = z10.object({
8682
+ authenticated: z10.boolean().default(true),
8683
+ permissionAllOf: z10.array(ContractIdentifierSchema).default([]),
8684
+ permissionAnyOf: z10.array(ContractIdentifierSchema).default([]),
8685
+ featureFlags: z10.array(ContractIdentifierSchema).default([])
8686
+ }).strict();
8687
+ var MenuPageRegistrationSchema = z10.object({
8688
+ applicationId: ContractIdentifierSchema,
8689
+ page: PageDefinitionSchema
8690
+ }).strict();
8691
+ var MenuActionRegistrationSchema = z10.object({
8692
+ applicationId: ContractIdentifierSchema,
8693
+ actionRef: ContractIdentifierSchema,
8694
+ inputSchemaRef: ContractIdentifierSchema.optional(),
8695
+ access: MenuAccessRequirementSchema
8696
+ }).strict();
8697
+ var MenuContributionProviderRegistrationSchema = z10.object({
8698
+ applicationId: ContractIdentifierSchema,
8699
+ providerId: ContractIdentifierSchema,
8700
+ surfaces: z10.array(ContractIdentifierSchema).min(1).optional()
8701
+ }).strict();
8702
+ var CompiledMenuNavigateBehaviorSchema = z10.object({
8703
+ kind: z10.literal("navigate"),
8704
+ page: MenuPageRefSchema,
8705
+ activationId: ContractIdentifierSchema,
8706
+ input: MenuRuntimeInputBindingSchema.optional()
8707
+ }).strict();
8708
+ var CompiledMenuActionBehaviorSchema = z10.object({
8709
+ kind: z10.literal("action"),
8710
+ actionRef: ContractIdentifierSchema,
8711
+ input: MenuBoundedInputSchema.optional()
8712
+ }).strict();
8713
+ var CompiledMenuBehaviorSchema = z10.discriminatedUnion("kind", [
8714
+ CompiledMenuNavigateBehaviorSchema,
8715
+ CompiledMenuActionBehaviorSchema
8716
+ ]);
8717
+ var CompiledMenuItemAccessSchema = MenuAccessRequirementSchema.extend({
8718
+ requiredPermission: ContractIdentifierSchema.optional()
8719
+ }).strict();
8720
+ var CompiledMenuGroupNodeSchema = MenuGroupNodeSchema;
8721
+ var CompiledMenuDividerNodeSchema = MenuDividerNodeSchema;
8722
+ var CompiledMenuItemNodeSchema = MenuItemNodeSchema.omit({ behavior: true, requiredPermission: true }).extend({
8723
+ behavior: CompiledMenuBehaviorSchema,
8724
+ access: CompiledMenuItemAccessSchema
8725
+ }).strict();
8726
+ var CompiledMenuNodeSchema = z10.discriminatedUnion("kind", [
8727
+ CompiledMenuGroupNodeSchema,
8728
+ CompiledMenuDividerNodeSchema,
8729
+ CompiledMenuItemNodeSchema
8730
+ ]);
8731
+ var CompiledMenuProjectionSchema = z10.object({
8732
+ applicationId: ContractIdentifierSchema,
8733
+ surface: ContractIdentifierSchema,
8734
+ menuId: ContractIdentifierSchema,
8735
+ nodes: z10.array(CompiledMenuNodeSchema).max(MENU_MAX_NODES),
8736
+ contributions: z10.array(MenuContributionSchema).max(MENU_MAX_NODES)
8737
+ }).strict();
8738
+ var MenuNavigationTargetSchema = z10.object({
8739
+ page: MenuPageRefSchema,
8740
+ activationId: ContractIdentifierSchema,
8741
+ input: MenuRuntimeInputBindingSchema.optional()
8742
+ }).strict();
8743
+ var MenuRuntimeBundleSchema = z10.object({
8744
+ contract: z10.literal("MenuRuntimeBundle"),
8745
+ version: z10.literal(MENU_CONTRACT_VERSION),
8746
+ applicationId: ContractIdentifierSchema,
8747
+ sourceVersion: ContractIdentifierSchema,
8748
+ contentHash: Sha256Schema,
8749
+ menus: z10.array(CompiledMenuProjectionSchema).max(MENU_MAX_DEFINITIONS),
8750
+ navigationTargets: z10.array(MenuNavigationTargetSchema),
8751
+ sourceMap: z10.record(z10.string(), ContractIdentifierSchema).default({})
8752
+ }).strict();
8753
+ var MenuContributionResultSchema = z10.object({
8754
+ contract: z10.literal("MenuContributionResult"),
8755
+ applicationId: ContractIdentifierSchema,
8756
+ surface: ContractIdentifierSchema,
8757
+ menuId: ContractIdentifierSchema,
8758
+ providerId: ContractIdentifierSchema,
8759
+ nodes: z10.array(CompiledMenuNodeSchema).max(MENU_MAX_NODES)
8760
+ }).strict();
8761
+
8483
8762
  // src/contracts/semantic.ts
8484
- import { z as z10 } from "zod";
8485
- var ConceptRelationshipSchema = z10.object({
8763
+ import { z as z11 } from "zod";
8764
+ var ConceptRelationshipSchema = z11.object({
8486
8765
  kind: ContractIdentifierSchema,
8487
8766
  targetConceptId: ContractIdentifierSchema,
8488
- cardinality: z10.enum(["one", "optional", "many"])
8767
+ cardinality: z11.enum(["one", "optional", "many"])
8489
8768
  }).strict();
8490
- var ConceptDefinitionSchema = z10.object({
8491
- contract: z10.literal("ConceptDefinition"),
8769
+ var ConceptDefinitionSchema = z11.object({
8770
+ contract: z11.literal("ConceptDefinition"),
8492
8771
  conceptId: ContractIdentifierSchema,
8493
8772
  ownerRepo: ContractIdentifierSchema,
8494
- displayName: z10.string().trim().min(1),
8495
- description: z10.string().optional(),
8773
+ displayName: z11.string().trim().min(1),
8774
+ description: z11.string().optional(),
8496
8775
  schemaRef: ContractIdentifierSchema,
8497
8776
  ontologyId: ContractIdentifierSchema.optional(),
8498
- capabilityIds: z10.array(ContractIdentifierSchema).default([]),
8499
- commandNames: z10.array(ContractIdentifierSchema).default([]),
8500
- relationships: z10.array(ConceptRelationshipSchema).default([])
8777
+ capabilityIds: z11.array(ContractIdentifierSchema).default([]),
8778
+ commandNames: z11.array(ContractIdentifierSchema).default([]),
8779
+ relationships: z11.array(ConceptRelationshipSchema).default([])
8501
8780
  }).strict();
8502
- var DomainCommandDefinitionSchema = z10.object({
8503
- contract: z10.literal("DomainCommandDefinition"),
8781
+ var DomainCommandDefinitionSchema = z11.object({
8782
+ contract: z11.literal("DomainCommandDefinition"),
8504
8783
  commandName: ContractIdentifierSchema,
8505
8784
  ownerRepo: ContractIdentifierSchema,
8506
- displayName: z10.string().trim().min(1),
8507
- description: z10.string().optional(),
8508
- targetKinds: z10.array(ContractIdentifierSchema).min(1),
8785
+ displayName: z11.string().trim().min(1),
8786
+ description: z11.string().optional(),
8787
+ targetKinds: z11.array(ContractIdentifierSchema).min(1),
8509
8788
  inputSchemaRef: ContractIdentifierSchema,
8510
8789
  outputSchemaRef: ContractIdentifierSchema.optional(),
8511
- requiredPermissionCodes: z10.array(ContractIdentifierSchema).default([]),
8790
+ requiredPermissionCodes: z11.array(ContractIdentifierSchema).default([]),
8512
8791
  handlerRef: EntityRefSchema,
8513
- sideEffects: z10.array(z10.enum(["data-write", "execution", "navigation", "notification", "external-call"])).default([])
8792
+ sideEffects: z11.array(z11.enum(["data-write", "execution", "navigation", "notification", "external-call"])).default([])
8514
8793
  }).strict();
8515
- var DomainCommandSchema = z10.object({
8516
- contract: z10.literal("DomainCommand"),
8794
+ var DomainCommandSchema = z11.object({
8795
+ contract: z11.literal("DomainCommand"),
8517
8796
  commandId: ContractIdentifierSchema,
8518
8797
  commandName: ContractIdentifierSchema,
8519
8798
  requestId: ContractIdentifierSchema,
@@ -8521,29 +8800,30 @@ var DomainCommandSchema = z10.object({
8521
8800
  idempotencyKey: ContractIdentifierSchema,
8522
8801
  targetRef: EntityRefSchema,
8523
8802
  actorRef: EntityRefSchema,
8524
- source: z10.object({
8525
- product: z10.enum(["studio", "kernel", "compute", "agent", "mcp", "service"]),
8803
+ source: z11.object({
8804
+ product: z11.enum(["studio", "kernel", "compute", "agent", "mcp", "service"]),
8526
8805
  pageId: ContractIdentifierSchema.optional(),
8527
8806
  capabilityId: ContractIdentifierSchema.optional()
8528
8807
  }).strict(),
8529
8808
  payload: JsonObjectSchema,
8530
8809
  issuedAt: IsoDateTimeSchema
8531
8810
  }).strict();
8532
- var ProductDeclarationSchema = z10.object({
8533
- contract: z10.literal("ProductDeclaration"),
8811
+ var ProductDeclarationSchema = z11.object({
8812
+ contract: z11.literal("ProductDeclaration"),
8534
8813
  declarationId: ContractIdentifierSchema,
8535
8814
  ownerRepo: ContractIdentifierSchema,
8536
- concepts: z10.array(ConceptDefinitionSchema).default([]),
8537
- ontologies: z10.array(OntologyDefinitionSchema).default([]),
8538
- projections: z10.array(ProjectionSpecSchema).default([]),
8539
- commands: z10.array(DomainCommandDefinitionSchema).default([]),
8540
- capabilities: z10.array(CapabilityManifestSchema).default([]),
8541
- pages: z10.array(PageDefinitionSchema).default([])
8542
- }).strict();
8543
- var DeclarationGraphEdgeSchema = z10.object({
8815
+ concepts: z11.array(ConceptDefinitionSchema).default([]),
8816
+ ontologies: z11.array(OntologyDefinitionSchema).default([]),
8817
+ projections: z11.array(ProjectionSpecSchema).default([]),
8818
+ commands: z11.array(DomainCommandDefinitionSchema).default([]),
8819
+ capabilities: z11.array(CapabilityManifestSchema).default([]),
8820
+ pages: z11.array(PageDefinitionSchema).default([]),
8821
+ menus: z11.array(MenuDefinitionSchema).default([])
8822
+ }).strict();
8823
+ var DeclarationGraphEdgeSchema = z11.object({
8544
8824
  from: EntityRefSchema,
8545
8825
  to: EntityRefSchema,
8546
- relation: z10.enum([
8826
+ relation: z11.enum([
8547
8827
  "uses-ontology",
8548
8828
  "uses-projection",
8549
8829
  "uses-capability",
@@ -8551,25 +8831,25 @@ var DeclarationGraphEdgeSchema = z10.object({
8551
8831
  "relates-to-concept"
8552
8832
  ])
8553
8833
  }).strict();
8554
- var ChangeImpactSchema = z10.object({
8834
+ var ChangeImpactSchema = z11.object({
8555
8835
  changedRef: EntityRefSchema,
8556
- affectedRefs: z10.array(EntityRefSchema),
8557
- reasons: z10.array(ContractIdentifierSchema).min(1)
8836
+ affectedRefs: z11.array(EntityRefSchema),
8837
+ reasons: z11.array(ContractIdentifierSchema).min(1)
8558
8838
  }).strict();
8559
- var ChangeImpactGraphSchema = z10.object({
8560
- contract: z10.literal("ChangeImpactGraph"),
8839
+ var ChangeImpactGraphSchema = z11.object({
8840
+ contract: z11.literal("ChangeImpactGraph"),
8561
8841
  declarationId: ContractIdentifierSchema,
8562
- nodes: z10.array(EntityRefSchema),
8563
- edges: z10.array(DeclarationGraphEdgeSchema),
8564
- impacts: z10.array(ChangeImpactSchema),
8842
+ nodes: z11.array(EntityRefSchema),
8843
+ edges: z11.array(DeclarationGraphEdgeSchema),
8844
+ impacts: z11.array(ChangeImpactSchema),
8565
8845
  generatedAt: IsoDateTimeSchema
8566
8846
  }).strict();
8567
8847
 
8568
8848
  // src/contracts/tenant.ts
8569
- import { z as z12 } from "zod";
8849
+ import { z as z13 } from "zod";
8570
8850
 
8571
8851
  // src/contracts/theme.ts
8572
- import { z as z11 } from "zod";
8852
+ import { z as z12 } from "zod";
8573
8853
 
8574
8854
  // src/theme-tokens/core.ts
8575
8855
  var import_ajv = __toESM(require_ajv());
@@ -10763,20 +11043,20 @@ var MONKEYS_REQUIRED_THEME_TOKEN_PATHS = Object.freeze({
10763
11043
  });
10764
11044
 
10765
11045
  // src/contracts/theme.ts
10766
- var ThemeTokenTypeSchema = z11.enum(THEME_TOKEN_TYPES);
10767
- var ThemeTokenSchema = z11.record(z11.string(), z11.unknown()).superRefine((input, context) => {
11046
+ var ThemeTokenTypeSchema = z12.enum(THEME_TOKEN_TYPES);
11047
+ var ThemeTokenSchema = z12.record(z12.string(), z12.unknown()).superRefine((input, context) => {
10768
11048
  const issues = validateThemeTokensDocumentStructure({ token: input });
10769
11049
  for (const issue of issues) {
10770
11050
  context.addIssue({ code: "custom", message: `${issue.path} ${issue.message}` });
10771
11051
  }
10772
11052
  });
10773
- var ThemeTokenGroupSchema = z11.record(z11.string(), z11.unknown()).superRefine((input, context) => {
11053
+ var ThemeTokenGroupSchema = z12.record(z12.string(), z12.unknown()).superRefine((input, context) => {
10774
11054
  const issues = validateThemeTokensDocumentStructure(input);
10775
11055
  for (const issue of issues) {
10776
11056
  context.addIssue({ code: "custom", message: `${issue.path} ${issue.message}` });
10777
11057
  }
10778
11058
  });
10779
- var ThemeTokensSchema = z11.record(z11.string(), z11.unknown()).superRefine((input, context) => {
11059
+ var ThemeTokensSchema = z12.record(z12.string(), z12.unknown()).superRefine((input, context) => {
10780
11060
  const issues = validateThemeTokensDocument(input);
10781
11061
  for (const issue of issues) {
10782
11062
  context.addIssue({ code: "custom", message: `${issue.path} ${issue.message}` });
@@ -10803,9 +11083,9 @@ var ResolvedThemeTokensSchema = ThemeTokensSchema.superRefine((input, context) =
10803
11083
  });
10804
11084
 
10805
11085
  // src/contracts/tenant.ts
10806
- var DesignTokenFileSourceSchema = z12.object({
10807
- type: z12.literal("file"),
10808
- path: z12.string().trim().min(1).superRefine((source, context) => {
11086
+ var DesignTokenFileSourceSchema = z13.object({
11087
+ type: z13.literal("file"),
11088
+ path: z13.string().trim().min(1).superRefine((source, context) => {
10809
11089
  if (/^[a-z][a-z\d+.-]*:/i.test(source)) {
10810
11090
  context.addIssue({
10811
11091
  code: "custom",
@@ -10814,9 +11094,9 @@ var DesignTokenFileSourceSchema = z12.object({
10814
11094
  }
10815
11095
  })
10816
11096
  }).strict();
10817
- var DesignTokenUrlSourceSchema = z12.object({
10818
- type: z12.literal("url"),
10819
- url: z12.string().trim().min(1).superRefine((source, context) => {
11097
+ var DesignTokenUrlSourceSchema = z13.object({
11098
+ type: z13.literal("url"),
11099
+ url: z13.string().trim().min(1).superRefine((source, context) => {
10820
11100
  if (!/^https?:\/\//i.test(source)) {
10821
11101
  context.addIssue({
10822
11102
  code: "custom",
@@ -10825,94 +11105,94 @@ var DesignTokenUrlSourceSchema = z12.object({
10825
11105
  }
10826
11106
  })
10827
11107
  }).strict();
10828
- var DesignTokenInlineSourceSchema = z12.object({
10829
- type: z12.literal("inline"),
11108
+ var DesignTokenInlineSourceSchema = z13.object({
11109
+ type: z13.literal("inline"),
10830
11110
  document: ThemeTokensSchema
10831
11111
  }).strict();
10832
- var DesignTokenSourceSchema = z12.discriminatedUnion("type", [
11112
+ var DesignTokenSourceSchema = z13.discriminatedUnion("type", [
10833
11113
  DesignTokenFileSourceSchema,
10834
11114
  DesignTokenUrlSourceSchema,
10835
11115
  DesignTokenInlineSourceSchema
10836
11116
  ]);
10837
- var TenantDesignTokensConfigSchema = z12.object({
11117
+ var TenantDesignTokensConfigSchema = z13.object({
10838
11118
  /** Ordered tenant overrides. The backend always applies the product default first. */
10839
- tokenSources: z12.array(DesignTokenSourceSchema)
11119
+ tokenSources: z13.array(DesignTokenSourceSchema)
10840
11120
  }).strict();
10841
- var TenantAuthBindingSchema = z12.object({
10842
- kind: z12.literal("auth-provider"),
11121
+ var TenantAuthBindingSchema = z13.object({
11122
+ kind: z13.literal("auth-provider"),
10843
11123
  providerId: ContractIdentifierSchema,
10844
11124
  policyRef: ContractIdentifierSchema.optional()
10845
11125
  }).strict();
10846
- var TenantDataBindingSchema = z12.discriminatedUnion("kind", [
10847
- z12.object({
10848
- kind: z12.literal("data-provider"),
11126
+ var TenantDataBindingSchema = z13.discriminatedUnion("kind", [
11127
+ z13.object({
11128
+ kind: z13.literal("data-provider"),
10849
11129
  providerId: ContractIdentifierSchema,
10850
11130
  domainRef: ContractIdentifierSchema.optional()
10851
11131
  }).strict(),
10852
- z12.object({
10853
- kind: z12.literal("projection"),
11132
+ z13.object({
11133
+ kind: z13.literal("projection"),
10854
11134
  projectionRef: ContractIdentifierSchema,
10855
11135
  domainRef: ContractIdentifierSchema.optional()
10856
11136
  }).strict()
10857
11137
  ]);
10858
- var TenantAuthBindingsSchema = z12.record(
11138
+ var TenantAuthBindingsSchema = z13.record(
10859
11139
  ContractIdentifierSchema,
10860
11140
  TenantAuthBindingSchema
10861
11141
  );
10862
- var TenantDataBindingsSchema = z12.record(
11142
+ var TenantDataBindingsSchema = z13.record(
10863
11143
  ContractIdentifierSchema,
10864
11144
  TenantDataBindingSchema
10865
11145
  );
10866
- var TenantTrendRadarSourceSchema = z12.object({
11146
+ var TenantTrendRadarSourceSchema = z13.object({
10867
11147
  ontologyId: ContractIdentifierSchema,
10868
11148
  viewId: ContractIdentifierSchema
10869
11149
  }).strict();
10870
- var TenantTrendRadarSourcesSchema = z12.object({
11150
+ var TenantTrendRadarSourcesSchema = z13.object({
10871
11151
  hotwords: TenantTrendRadarSourceSchema.optional(),
10872
11152
  brands: TenantTrendRadarSourceSchema.optional()
10873
11153
  }).strict();
10874
- var AssetVariantsSchema = z12.object({
10875
- light: z12.string().optional(),
10876
- dark: z12.string().optional()
11154
+ var AssetVariantsSchema = z13.object({
11155
+ light: z13.string().optional(),
11156
+ dark: z13.string().optional()
10877
11157
  }).strict();
10878
11158
  var LEGACY_CURRENT_USER_MENU_ITEM_IDS = ["dark-mode", "language", "settings", "logout"];
10879
11159
  var CURRENT_USER_MENU_CONTROL_REFS = ["dark-mode", "language"];
10880
11160
  var CURRENT_USER_MENU_ACTION_REFS = ["logout"];
10881
- var CurrentUserMenuIdentifierSchema = z12.string().trim().regex(/^[A-Za-z0-9][A-Za-z0-9_-]{0,127}$/, "Expected a stable current-user menu identifier.");
10882
- var CurrentUserMenuDisplayTextSchema = z12.union([
10883
- z12.string().trim().min(1),
10884
- z12.record(z12.string().trim().min(1), z12.string().trim().min(1)).refine((value) => Object.keys(value).length > 0, "Localized menu text must contain at least one locale.")
11161
+ var CurrentUserMenuIdentifierSchema = z13.string().trim().regex(/^[A-Za-z0-9][A-Za-z0-9_-]{0,127}$/, "Expected a stable current-user menu identifier.");
11162
+ var CurrentUserMenuDisplayTextSchema = z13.union([
11163
+ z13.string().trim().min(1),
11164
+ z13.record(z13.string().trim().min(1), z13.string().trim().min(1)).refine((value) => Object.keys(value).length > 0, "Localized menu text must contain at least one locale.")
10885
11165
  ]);
10886
- var CurrentUserMenuNavigationItemSchema = z12.object({
11166
+ var CurrentUserMenuNavigationItemSchema = z13.object({
10887
11167
  id: CurrentUserMenuIdentifierSchema,
10888
- kind: z12.literal("navigation"),
11168
+ kind: z13.literal("navigation"),
10889
11169
  ref: CurrentUserMenuIdentifierSchema
10890
11170
  }).strict();
10891
- var CurrentUserMenuControlItemSchema = z12.object({
11171
+ var CurrentUserMenuControlItemSchema = z13.object({
10892
11172
  id: CurrentUserMenuIdentifierSchema,
10893
- kind: z12.literal("control"),
10894
- ref: z12.enum(CURRENT_USER_MENU_CONTROL_REFS)
11173
+ kind: z13.literal("control"),
11174
+ ref: z13.enum(CURRENT_USER_MENU_CONTROL_REFS)
10895
11175
  }).strict();
10896
- var CurrentUserMenuActionItemSchema = z12.object({
11176
+ var CurrentUserMenuActionItemSchema = z13.object({
10897
11177
  id: CurrentUserMenuIdentifierSchema,
10898
- kind: z12.literal("action"),
10899
- ref: z12.enum(CURRENT_USER_MENU_ACTION_REFS),
10900
- tone: z12.enum(["default", "danger"]).optional()
11178
+ kind: z13.literal("action"),
11179
+ ref: z13.enum(CURRENT_USER_MENU_ACTION_REFS),
11180
+ tone: z13.enum(["default", "danger"]).optional()
10901
11181
  }).strict();
10902
- var CurrentUserMenuItemSchema = z12.discriminatedUnion("kind", [
11182
+ var CurrentUserMenuItemSchema = z13.discriminatedUnion("kind", [
10903
11183
  CurrentUserMenuNavigationItemSchema,
10904
11184
  CurrentUserMenuControlItemSchema,
10905
11185
  CurrentUserMenuActionItemSchema
10906
11186
  ]);
10907
- var CurrentUserMenuSectionSchema = z12.object({
11187
+ var CurrentUserMenuSectionSchema = z13.object({
10908
11188
  id: CurrentUserMenuIdentifierSchema,
10909
11189
  label: CurrentUserMenuDisplayTextSchema.optional(),
10910
- dividerBefore: z12.boolean().optional(),
10911
- items: z12.array(CurrentUserMenuItemSchema)
11190
+ dividerBefore: z13.boolean().optional(),
11191
+ items: z13.array(CurrentUserMenuItemSchema)
10912
11192
  }).strict();
10913
- var CurrentUserMenuConfigSchema = z12.object({
10914
- version: z12.literal(1),
10915
- sections: z12.array(CurrentUserMenuSectionSchema).max(20)
11193
+ var CurrentUserMenuConfigSchema = z13.object({
11194
+ version: z13.literal(1),
11195
+ sections: z13.array(CurrentUserMenuSectionSchema).max(20)
10916
11196
  }).strict().superRefine((value, context) => {
10917
11197
  const sectionIds = /* @__PURE__ */ new Set();
10918
11198
  const itemIds = /* @__PURE__ */ new Set();
@@ -10946,7 +11226,7 @@ var CurrentUserMenuConfigSchema = z12.object({
10946
11226
  });
10947
11227
  }
10948
11228
  });
10949
- var LegacyCurrentUserMenuProfileSchema = z12.array(z12.enum(LEGACY_CURRENT_USER_MENU_ITEM_IDS)).superRefine((value, context) => {
11229
+ var LegacyCurrentUserMenuProfileSchema = z13.array(z13.enum(LEGACY_CURRENT_USER_MENU_ITEM_IDS)).superRefine((value, context) => {
10950
11230
  const seen = /* @__PURE__ */ new Set();
10951
11231
  value.forEach((item, index) => {
10952
11232
  if (seen.has(item)) {
@@ -10959,73 +11239,73 @@ var LegacyCurrentUserMenuProfileSchema = z12.array(z12.enum(LEGACY_CURRENT_USER_
10959
11239
  seen.add(item);
10960
11240
  });
10961
11241
  });
10962
- var CurrentUserMenuProfileSchema = z12.union([
10963
- z12.literal("*"),
11242
+ var CurrentUserMenuProfileSchema = z13.union([
11243
+ z13.literal("*"),
10964
11244
  LegacyCurrentUserMenuProfileSchema,
10965
11245
  CurrentUserMenuConfigSchema
10966
11246
  ]);
10967
- var ThemeHeadbarSchema = z12.object({
10968
- theme: z12.enum(["card", "glassy", "ghost"]).optional(),
10969
- navPosition: z12.enum(["left", "center", "right"]).optional(),
10970
- actions: z12.union([z12.literal("*"), z12.array(ContractIdentifierSchema)]).optional(),
11247
+ var ThemeHeadbarSchema = z13.object({
11248
+ theme: z13.enum(["card", "glassy", "ghost"]).optional(),
11249
+ navPosition: z13.enum(["left", "center", "right"]).optional(),
11250
+ actions: z13.union([z13.literal("*"), z13.array(ContractIdentifierSchema)]).optional(),
10971
11251
  profile: CurrentUserMenuProfileSchema.optional(),
10972
- showTeamQuota: z12.boolean().optional()
11252
+ showTeamQuota: z13.boolean().optional()
10973
11253
  }).strict();
10974
- var TenantHeadbarModuleLeafSchema = z12.object({
11254
+ var TenantHeadbarModuleLeafSchema = z13.object({
10975
11255
  id: ContractIdentifierSchema,
10976
- extraInfo: z12.boolean().optional(),
10977
- displayName: z12.union([z12.string(), z12.record(LocaleIdentifierSchema, z12.string())]).optional(),
10978
- visible: z12.boolean().optional(),
10979
- disabled: z12.boolean().optional(),
10980
- icon: z12.string().optional(),
10981
- showQuickSwitcher: z12.boolean().optional(),
10982
- showSidebar: z12.boolean().optional(),
10983
- showContentFrame: z12.boolean().optional()
11256
+ extraInfo: z13.boolean().optional(),
11257
+ displayName: z13.union([z13.string(), z13.record(LocaleIdentifierSchema, z13.string())]).optional(),
11258
+ visible: z13.boolean().optional(),
11259
+ disabled: z13.boolean().optional(),
11260
+ icon: z13.string().optional(),
11261
+ showQuickSwitcher: z13.boolean().optional(),
11262
+ showSidebar: z13.boolean().optional(),
11263
+ showContentFrame: z13.boolean().optional()
10984
11264
  }).strict();
10985
11265
  var TenantHeadbarModuleItemSchema = TenantHeadbarModuleLeafSchema.extend({
10986
- children: z12.array(TenantHeadbarModuleLeafSchema).optional()
10987
- }).strict();
10988
- var KernelHeadbarSchema = z12.object({
10989
- theme: z12.literal("card").optional(),
10990
- layoutMode: z12.enum(["boxed", "full-bleed"]).optional(),
10991
- heightPx: z12.number().positive().optional(),
10992
- navPosition: z12.enum(["left", "center", "right"]).optional(),
10993
- brandTitle: z12.string().optional(),
10994
- menuRadius: z12.enum(["default", "none", "sm", "md", "lg", "xl", "full"]).optional()
10995
- }).strict();
10996
- var CustomIconSchema = z12.object({
10997
- color: z12.string().optional(),
10998
- url: z12.string().optional(),
10999
- type: z12.enum(["svg", "image"]).optional(),
11000
- hintTextColor: z12.string().optional()
11001
- }).strict();
11002
- var WorkbenchCustomerToolSchema = z12.object({
11266
+ children: z13.array(TenantHeadbarModuleLeafSchema).optional()
11267
+ }).strict();
11268
+ var KernelHeadbarSchema = z13.object({
11269
+ theme: z13.literal("card").optional(),
11270
+ layoutMode: z13.enum(["boxed", "full-bleed"]).optional(),
11271
+ heightPx: z13.number().positive().optional(),
11272
+ navPosition: z13.enum(["left", "center", "right"]).optional(),
11273
+ brandTitle: z13.string().optional(),
11274
+ menuRadius: z13.enum(["default", "none", "sm", "md", "lg", "xl", "full"]).optional()
11275
+ }).strict();
11276
+ var CustomIconSchema = z13.object({
11277
+ color: z13.string().optional(),
11278
+ url: z13.string().optional(),
11279
+ type: z13.enum(["svg", "image"]).optional(),
11280
+ hintTextColor: z13.string().optional()
11281
+ }).strict();
11282
+ var WorkbenchCustomerToolSchema = z13.object({
11003
11283
  id: ContractIdentifierSchema,
11004
- label: z12.union([z12.string(), z12.record(LocaleIdentifierSchema, z12.string())]).optional(),
11005
- fixed: z12.boolean().optional()
11284
+ label: z13.union([z13.string(), z13.record(LocaleIdentifierSchema, z13.string())]).optional(),
11285
+ fixed: z13.boolean().optional()
11006
11286
  }).strict();
11007
- var WorkbenchStudioOverrideSchema = z12.object({
11008
- studioName: z12.string().trim().min(1),
11009
- dropdownToolsDefault: z12.array(ContractIdentifierSchema).optional(),
11010
- existingToolsDefault: z12.array(ContractIdentifierSchema).optional(),
11011
- historyColumnsDefault: z12.number().int().min(1).max(6).optional()
11287
+ var WorkbenchStudioOverrideSchema = z13.object({
11288
+ studioName: z13.string().trim().min(1),
11289
+ dropdownToolsDefault: z13.array(ContractIdentifierSchema).optional(),
11290
+ existingToolsDefault: z13.array(ContractIdentifierSchema).optional(),
11291
+ historyColumnsDefault: z13.number().int().min(1).max(6).optional()
11012
11292
  }).strict();
11013
- var TenantWorkbenchPageContextSchema = z12.object({
11293
+ var TenantWorkbenchPageContextSchema = z13.object({
11014
11294
  workflow: JsonObjectSchema.optional(),
11015
11295
  agent: JsonObjectSchema.optional(),
11016
11296
  agentId: ContractIdentifierSchema.optional(),
11017
11297
  designProject: JsonObjectSchema.optional(),
11018
11298
  designMetadataId: ContractIdentifierSchema.optional(),
11019
- iframeUrl: z12.string().trim().min(1).optional(),
11020
- info: z12.object({
11299
+ iframeUrl: z13.string().trim().min(1).optional(),
11300
+ info: z13.object({
11021
11301
  displayName: LocalizedTextSchema.optional(),
11022
11302
  description: LocalizedTextSchema.optional(),
11023
- iconUrl: z12.string().trim().min(1).optional()
11303
+ iconUrl: z13.string().trim().min(1).optional()
11024
11304
  }).strict().optional(),
11025
- isBuiltinPinned: z12.boolean().optional(),
11026
- isBuiltinReadonly: z12.boolean().optional()
11305
+ isBuiltinPinned: z13.boolean().optional(),
11306
+ isBuiltinReadonly: z13.boolean().optional()
11027
11307
  }).strict();
11028
- var TenantWorkbenchPageEnvelopeSchema = z12.object({
11308
+ var TenantWorkbenchPageEnvelopeSchema = z13.object({
11029
11309
  definition: PageDefinitionSchema,
11030
11310
  context: TenantWorkbenchPageContextSchema
11031
11311
  }).strict().superRefine(({ definition }, context) => {
@@ -11058,56 +11338,56 @@ var TenantWorkbenchPageEnvelopeSchema = z12.object({
11058
11338
  });
11059
11339
  }
11060
11340
  });
11061
- var TenantWorkbenchPageGroupSchema = z12.object({
11341
+ var TenantWorkbenchPageGroupSchema = z13.object({
11062
11342
  id: ContractIdentifierSchema,
11063
- pageIds: z12.array(ContractIdentifierSchema),
11343
+ pageIds: z13.array(ContractIdentifierSchema),
11064
11344
  displayName: LocalizedTextSchema,
11065
- isBuiltIn: z12.boolean(),
11066
- iconUrl: z12.string().optional(),
11067
- sortIndex: z12.number().int().nullable().optional(),
11345
+ isBuiltIn: z13.boolean(),
11346
+ iconUrl: z13.string().optional(),
11347
+ sortIndex: z13.number().int().nullable().optional(),
11068
11348
  presetRelationId: ContractIdentifierSchema.optional(),
11069
11349
  relationKey: ContractIdentifierSchema.nullable().optional(),
11070
11350
  studioId: ContractIdentifierSchema.optional()
11071
11351
  }).strict();
11072
- var TenantWorkbenchConfigSchema = z12.object({
11073
- pages: z12.array(TenantWorkbenchPageEnvelopeSchema),
11074
- pageGroups: z12.array(TenantWorkbenchPageGroupSchema),
11075
- catalog: z12.object({ enabled: z12.boolean().optional(), defaultEntry: z12.boolean().optional() }).strict().optional(),
11076
- quickSwitcherMaxItems: z12.number().int().nonnegative().optional(),
11077
- defaultOrder: z12.object({
11078
- groups: z12.array(ContractIdentifierSchema),
11079
- pages: z12.record(ContractIdentifierSchema, z12.array(ContractIdentifierSchema))
11352
+ var TenantWorkbenchConfigSchema = z13.object({
11353
+ pages: z13.array(TenantWorkbenchPageEnvelopeSchema),
11354
+ pageGroups: z13.array(TenantWorkbenchPageGroupSchema),
11355
+ catalog: z13.object({ enabled: z13.boolean().optional(), defaultEntry: z13.boolean().optional() }).strict().optional(),
11356
+ quickSwitcherMaxItems: z13.number().int().nonnegative().optional(),
11357
+ defaultOrder: z13.object({
11358
+ groups: z13.array(ContractIdentifierSchema),
11359
+ pages: z13.record(ContractIdentifierSchema, z13.array(ContractIdentifierSchema))
11080
11360
  }).strict().optional(),
11081
- customers: z12.object({
11082
- dropdownToolsDefault: z12.array(ContractIdentifierSchema).optional(),
11083
- layoutManagerTools: z12.array(WorkbenchCustomerToolSchema).optional(),
11084
- studioTabsMode: z12.enum(["dropdown", "tabs"]).optional(),
11085
- historyWatermark: z12.object({
11086
- svgUrl: z12.string().optional(),
11087
- coverage: z12.array(z12.enum(["list", "detail", "download"])).optional(),
11088
- maxLongEdgeRatio: z12.number().positive().optional(),
11089
- sizing: z12.object({
11361
+ customers: z13.object({
11362
+ dropdownToolsDefault: z13.array(ContractIdentifierSchema).optional(),
11363
+ layoutManagerTools: z13.array(WorkbenchCustomerToolSchema).optional(),
11364
+ studioTabsMode: z13.enum(["dropdown", "tabs"]).optional(),
11365
+ historyWatermark: z13.object({
11366
+ svgUrl: z13.string().optional(),
11367
+ coverage: z13.array(z13.enum(["list", "detail", "download"])).optional(),
11368
+ maxLongEdgeRatio: z13.number().positive().optional(),
11369
+ sizing: z13.object({
11090
11370
  mode: ContractIdentifierSchema,
11091
- heightRatio: z12.number().positive().optional(),
11092
- minHeightPx: z12.number().nonnegative().optional(),
11093
- maxHeightPx: z12.number().nonnegative().optional()
11371
+ heightRatio: z13.number().positive().optional(),
11372
+ minHeightPx: z13.number().nonnegative().optional(),
11373
+ maxHeightPx: z13.number().nonnegative().optional()
11094
11374
  }).strict().optional(),
11095
- enhance: z12.object({
11096
- enabled: z12.boolean().optional(),
11097
- backgroundLumaThreshold: z12.number().min(0).max(1).optional(),
11098
- stroke: z12.object({
11099
- color: z12.string().optional(),
11100
- opacity: z12.number().min(0).max(1).optional(),
11101
- widthRatio: z12.number().nonnegative().optional(),
11102
- blurRatio: z12.number().nonnegative().optional(),
11103
- steps: z12.number().int().positive().optional()
11375
+ enhance: z13.object({
11376
+ enabled: z13.boolean().optional(),
11377
+ backgroundLumaThreshold: z13.number().min(0).max(1).optional(),
11378
+ stroke: z13.object({
11379
+ color: z13.string().optional(),
11380
+ opacity: z13.number().min(0).max(1).optional(),
11381
+ widthRatio: z13.number().nonnegative().optional(),
11382
+ blurRatio: z13.number().nonnegative().optional(),
11383
+ steps: z13.number().int().positive().optional()
11104
11384
  }).strict().optional()
11105
11385
  }).strict().optional()
11106
11386
  }).strict().optional(),
11107
- layoutManagerEnabled: z12.boolean().optional(),
11108
- existingToolsDefault: z12.array(ContractIdentifierSchema).optional(),
11109
- historyColumnsDefault: z12.number().int().min(1).max(6).optional(),
11110
- studioOverrides: z12.array(WorkbenchStudioOverrideSchema).optional()
11387
+ layoutManagerEnabled: z13.boolean().optional(),
11388
+ existingToolsDefault: z13.array(ContractIdentifierSchema).optional(),
11389
+ historyColumnsDefault: z13.number().int().min(1).max(6).optional(),
11390
+ studioOverrides: z13.array(WorkbenchStudioOverrideSchema).optional()
11111
11391
  }).strict().optional()
11112
11392
  }).strict().superRefine(({ pages, pageGroups }, context) => {
11113
11393
  const pageIds = pages.map(({ definition }) => definition.pageId);
@@ -11131,38 +11411,38 @@ var TenantWorkbenchConfigSchema = z12.object({
11131
11411
  });
11132
11412
  });
11133
11413
  });
11134
- var LoginPageSchema = z12.object({
11135
- background: z12.object({ imageUrl: z12.string().optional(), gradient: z12.string().optional() }).strict().optional(),
11136
- logo: z12.object({
11137
- url: z12.string().optional(),
11138
- lightUrl: z12.string().optional(),
11139
- darkUrl: z12.string().optional(),
11140
- position: z12.enum(["top", "middle", "bottom"]).optional(),
11141
- scale: z12.number().positive().optional()
11414
+ var LoginPageSchema = z13.object({
11415
+ background: z13.object({ imageUrl: z13.string().optional(), gradient: z13.string().optional() }).strict().optional(),
11416
+ logo: z13.object({
11417
+ url: z13.string().optional(),
11418
+ lightUrl: z13.string().optional(),
11419
+ darkUrl: z13.string().optional(),
11420
+ position: z13.enum(["top", "middle", "bottom"]).optional(),
11421
+ scale: z13.number().positive().optional()
11142
11422
  }).strict().optional(),
11143
- customCss: z12.string().optional()
11423
+ customCss: z13.string().optional()
11144
11424
  }).strict();
11145
11425
  var LandingPageHeadbarConfigShape = {
11146
- headbarMode: z12.enum(["shared", "hidden"]).optional()
11426
+ headbarMode: z13.enum(["shared", "hidden"]).optional()
11147
11427
  };
11148
- var LandingPageDefaultConfigSchema = z12.object({
11149
- mode: z12.literal("default"),
11428
+ var LandingPageDefaultConfigSchema = z13.object({
11429
+ mode: z13.literal("default"),
11150
11430
  ...LandingPageHeadbarConfigShape
11151
11431
  }).strict();
11152
- var LandingPageMarkdownConfigSchema = z12.object({
11153
- mode: z12.literal("markdown"),
11154
- content: z12.string(),
11432
+ var LandingPageMarkdownConfigSchema = z13.object({
11433
+ mode: z13.literal("markdown"),
11434
+ content: z13.string(),
11155
11435
  ...LandingPageHeadbarConfigShape
11156
11436
  }).strict();
11157
- var LandingPageHtmlConfigSchema = z12.object({
11158
- mode: z12.literal("html"),
11159
- content: z12.string(),
11437
+ var LandingPageHtmlConfigSchema = z13.object({
11438
+ mode: z13.literal("html"),
11439
+ content: z13.string(),
11160
11440
  ...LandingPageHeadbarConfigShape
11161
11441
  }).strict();
11162
- var LandingPageIframeConfigSchema = z12.object({
11163
- mode: z12.literal("iframe"),
11442
+ var LandingPageIframeConfigSchema = z13.object({
11443
+ mode: z13.literal("iframe"),
11164
11444
  ...LandingPageHeadbarConfigShape,
11165
- url: z12.string().refine((value) => {
11445
+ url: z13.string().refine((value) => {
11166
11446
  if (/^\/(?!\/)/.test(value)) {
11167
11447
  return !value.includes("\\");
11168
11448
  }
@@ -11174,422 +11454,425 @@ var LandingPageIframeConfigSchema = z12.object({
11174
11454
  }
11175
11455
  }, "Landing page iframe URL must use a root-relative path or HTTP(S) without embedded credentials.")
11176
11456
  }).strict();
11177
- var TenantLandingPageConfigSchema = z12.discriminatedUnion("mode", [
11457
+ var TenantLandingPageConfigSchema = z13.discriminatedUnion("mode", [
11178
11458
  LandingPageDefaultConfigSchema,
11179
11459
  LandingPageMarkdownConfigSchema,
11180
11460
  LandingPageHtmlConfigSchema,
11181
11461
  LandingPageIframeConfigSchema
11182
11462
  ]);
11183
- var TenantApplicationConfigSchema = z12.object({
11184
- theme: z12.object({
11185
- id: z12.string().optional(),
11186
- name: z12.string().optional(),
11187
- title: z12.string().optional(),
11463
+ var TenantApplicationConfigSchema = z13.object({
11464
+ theme: z13.object({
11465
+ id: z13.string().optional(),
11466
+ name: z13.string().optional(),
11467
+ title: z13.string().optional(),
11188
11468
  favicon: AssetVariantsSchema.optional(),
11189
11469
  logo: AssetVariantsSchema.optional(),
11190
- pwaIcon: z12.string().optional(),
11191
- form: z12.object({ variant: z12.enum(["bento", "ghost"]) }).strict().optional(),
11192
- toast: z12.object({
11193
- position: z12.enum(["top-right", "top-left", "bottom-right", "bottom-left", "top-center", "bottom-center"])
11470
+ pwaIcon: z13.string().optional(),
11471
+ form: z13.object({ variant: z13.enum(["bento", "ghost"]) }).strict().optional(),
11472
+ toast: z13.object({
11473
+ position: z13.enum(["top-right", "top-left", "bottom-right", "bottom-left", "top-center", "bottom-center"])
11194
11474
  }).strict().optional(),
11195
- icons: z12.object({ error: CustomIconSchema.optional(), empty: CustomIconSchema.optional() }).strict().optional(),
11196
- views: z12.object({
11197
- form: z12.object({
11198
- toast: z12.object({ afterCreate: z12.boolean(), afterDelete: z12.boolean() }).strict(),
11199
- progress: z12.enum(["estimate", "infinite"]),
11200
- onlyResult: z12.boolean(),
11201
- tabular: z12.object({ theme: z12.enum(["default", "tentiary", "primary"]) }).strict()
11475
+ icons: z13.object({ error: CustomIconSchema.optional(), empty: CustomIconSchema.optional() }).strict().optional(),
11476
+ views: z13.object({
11477
+ form: z13.object({
11478
+ toast: z13.object({ afterCreate: z13.boolean(), afterDelete: z13.boolean() }).strict(),
11479
+ progress: z13.enum(["estimate", "infinite"]),
11480
+ onlyResult: z13.boolean(),
11481
+ tabular: z13.object({ theme: z13.enum(["default", "tentiary", "primary"]) }).strict()
11202
11482
  }).strict()
11203
11483
  }).strict().optional(),
11204
11484
  loginPage: LoginPageSchema.optional(),
11205
- extraLanguageURL: z12.record(z12.string(), z12.string()).optional(),
11206
- hideSpaceHeader: z12.boolean().optional(),
11207
- showSidebarTeamSelector: z12.boolean().optional(),
11208
- showWorkbenchSidebar: z12.boolean().optional(),
11209
- workbenchViewTheme: z12.enum(["default", "bsd-blue"]).optional(),
11210
- defaults: z12.object({
11211
- showFormInImageDetail: z12.boolean().optional(),
11212
- darkMode: z12.enum(["light", "dark", "auto"]).optional(),
11213
- language: z12.enum(["en-US", "zh-CN", "ja-JP"]).optional(),
11214
- showDarkModeToggle: z12.boolean().optional(),
11215
- showLanguageToggle: z12.boolean().optional()
11485
+ extraLanguageURL: z13.record(z13.string(), z13.string()).optional(),
11486
+ hideSpaceHeader: z13.boolean().optional(),
11487
+ showSidebarTeamSelector: z13.boolean().optional(),
11488
+ showWorkbenchSidebar: z13.boolean().optional(),
11489
+ workbenchViewTheme: z13.enum(["default", "bsd-blue"]).optional(),
11490
+ defaults: z13.object({
11491
+ showFormInImageDetail: z13.boolean().optional(),
11492
+ darkMode: z13.enum(["light", "dark", "auto"]).optional(),
11493
+ language: z13.enum(["en-US", "zh-CN", "ja-JP"]).optional(),
11494
+ showDarkModeToggle: z13.boolean().optional(),
11495
+ showLanguageToggle: z13.boolean().optional()
11216
11496
  }).strict().optional(),
11217
- modules: z12.object({
11218
- monkeysSpaceSidebar: z12.union([z12.literal("*"), z12.array(ContractIdentifierSchema)]).optional(),
11219
- monkeysSpaceHeadbar: z12.union([
11220
- z12.literal("*"),
11221
- z12.array(TenantHeadbarModuleItemSchema)
11497
+ modules: z13.object({
11498
+ monkeysSpaceSidebar: z13.union([z13.literal("*"), z13.array(ContractIdentifierSchema)]).optional(),
11499
+ monkeysSpaceHeadbar: z13.union([
11500
+ z13.literal("*"),
11501
+ z13.array(TenantHeadbarModuleItemSchema)
11222
11502
  ]).optional(),
11223
- settingsSidebar: z12.union([z12.literal("*"), z12.array(ContractIdentifierSchema)]).optional()
11503
+ settingsSidebar: z13.union([z13.literal("*"), z13.array(ContractIdentifierSchema)]).optional()
11224
11504
  }).strict().optional(),
11225
11505
  headbar: ThemeHeadbarSchema.optional(),
11226
- kernelLayout: z12.object({
11227
- navigationMode: z12.enum(["sidebar", "topbar"]).optional(),
11228
- allowNavigationModeSwitch: z12.boolean().optional(),
11506
+ kernelLayout: z13.object({
11507
+ navigationMode: z13.enum(["sidebar", "topbar"]).optional(),
11508
+ allowNavigationModeSwitch: z13.boolean().optional(),
11229
11509
  headbar: KernelHeadbarSchema.optional()
11230
11510
  }).strict().optional(),
11231
- paginationPosition: z12.enum(["left", "right"]).optional(),
11232
- ugcViewIconOnlyMode: z12.boolean().optional(),
11233
- workflowPreviewExecutionGrid: z12.object({
11234
- selectionModeDisplayType: z12.enum(["operation-button", "dropdown-menu"]).optional(),
11235
- clickBehavior: z12.enum(["preview", "select", "fill-form", "none"]).optional(),
11236
- showErrorFilter: z12.boolean().optional(),
11237
- displayType: z12.enum(["grid", "masonry"]).optional(),
11238
- showDetailButton: z12.boolean().optional()
11511
+ paginationPosition: z13.enum(["left", "right"]).optional(),
11512
+ ugcViewIconOnlyMode: z13.boolean().optional(),
11513
+ workflowPreviewExecutionGrid: z13.object({
11514
+ selectionModeDisplayType: z13.enum(["operation-button", "dropdown-menu"]).optional(),
11515
+ clickBehavior: z13.enum(["preview", "select", "fill-form", "none"]).optional(),
11516
+ showErrorFilter: z13.boolean().optional(),
11517
+ displayType: z13.enum(["grid", "masonry"]).optional(),
11518
+ showDetailButton: z13.boolean().optional()
11239
11519
  }).strict().optional(),
11240
- workbenchSidebarDefaultOpen: z12.boolean().optional(),
11241
- workbenchSidebarMoreAction: z12.boolean().optional(),
11242
- workbenchSidebarApart: z12.boolean().optional(),
11243
- workbenchSidebarToggleGroupDetail: z12.boolean().optional(),
11244
- workbenchSidebarViewType: z12.boolean().optional(),
11245
- workbenchSidebarFormViewEmbed: z12.boolean().optional(),
11246
- workbenchSidebarModernMode: z12.boolean().optional(),
11247
- ugc: z12.object({ onItemClick: z12.boolean(), subtitle: z12.boolean().optional() }).strict().optional(),
11248
- uniImagePreview: z12.boolean().optional(),
11249
- imagePreviewStyle: z12.union([z12.literal(false), z12.enum(["simple", "normal", "uni"])]).optional(),
11250
- teamAsUser: z12.boolean().optional(),
11251
- themeMode: z12.enum(["shadow", "border"]).optional(),
11252
- density: z12.enum(["compact", "default", "comfortable"]).optional(),
11253
- pageZoom: z12.number().positive().optional(),
11254
- miniMode: z12.object({ showPreviewViewExecutionResultGrid: z12.boolean() }).strict().optional(),
11255
- workflow: z12.object({ allowConcurrentRuns: z12.boolean() }).strict().optional(),
11256
- historyResult: z12.object({ display: z12.boolean() }).strict().optional(),
11257
- uploader: z12.object({
11258
- orientation: z12.enum(["vertical", "horizontal"]),
11259
- pasteButton: z12.boolean(),
11260
- statusText: z12.boolean()
11520
+ workbenchSidebarDefaultOpen: z13.boolean().optional(),
11521
+ workbenchSidebarMoreAction: z13.boolean().optional(),
11522
+ workbenchSidebarApart: z13.boolean().optional(),
11523
+ workbenchSidebarToggleGroupDetail: z13.boolean().optional(),
11524
+ workbenchSidebarViewType: z13.boolean().optional(),
11525
+ workbenchSidebarFormViewEmbed: z13.boolean().optional(),
11526
+ workbenchSidebarModernMode: z13.boolean().optional(),
11527
+ ugc: z13.object({ onItemClick: z13.boolean(), subtitle: z13.boolean().optional() }).strict().optional(),
11528
+ uniImagePreview: z13.boolean().optional(),
11529
+ imagePreviewStyle: z13.union([z13.literal(false), z13.enum(["simple", "normal", "uni"])]).optional(),
11530
+ teamAsUser: z13.boolean().optional(),
11531
+ themeMode: z13.enum(["shadow", "border"]).optional(),
11532
+ density: z13.enum(["compact", "default", "comfortable"]).optional(),
11533
+ pageZoom: z13.number().positive().optional(),
11534
+ miniMode: z13.object({ showPreviewViewExecutionResultGrid: z13.boolean() }).strict().optional(),
11535
+ workflow: z13.object({ allowConcurrentRuns: z13.boolean() }).strict().optional(),
11536
+ historyResult: z13.object({ display: z13.boolean() }).strict().optional(),
11537
+ uploader: z13.object({
11538
+ orientation: z13.enum(["vertical", "horizontal"]),
11539
+ pasteButton: z13.boolean(),
11540
+ statusText: z13.boolean()
11261
11541
  }).strict().optional(),
11262
- designProjects: z12.object({
11263
- oneOnOne: z12.boolean(),
11264
- newTabOpenBoard: z12.boolean(),
11265
- defaultShowGrid: z12.boolean().optional(),
11266
- createDefaultFrame: z12.boolean(),
11267
- showPageMenu: z12.boolean(),
11268
- showMainMenu: z12.boolean(),
11269
- showStylePanel: z12.boolean(),
11270
- showToolbar: z12.boolean(),
11271
- toolbarPosition: z12.enum(["bottom", "left"]).optional(),
11272
- showContextMenu: z12.boolean(),
11273
- showActionsMenu: z12.boolean(),
11274
- showPageAndLayerSidebar: z12.boolean().optional(),
11275
- showBoardOperationSidebar: z12.boolean().optional(),
11276
- showMiniToolsToolbar: z12.boolean().optional(),
11277
- showRightSidebar: z12.boolean().optional(),
11278
- showRealtimeDrawing: z12.boolean().optional(),
11279
- showWorkflow: z12.boolean().optional(),
11280
- showVersionManager: z12.boolean().optional(),
11281
- showAgent: z12.boolean().optional(),
11282
- AgentTools: z12.array(ContractIdentifierSchema).optional()
11542
+ designProjects: z13.object({
11543
+ oneOnOne: z13.boolean(),
11544
+ newTabOpenBoard: z13.boolean(),
11545
+ defaultShowGrid: z13.boolean().optional(),
11546
+ createDefaultFrame: z13.boolean(),
11547
+ showPageMenu: z13.boolean(),
11548
+ showMainMenu: z13.boolean(),
11549
+ showStylePanel: z13.boolean(),
11550
+ showToolbar: z13.boolean(),
11551
+ toolbarPosition: z13.enum(["bottom", "left"]).optional(),
11552
+ showContextMenu: z13.boolean(),
11553
+ showActionsMenu: z13.boolean(),
11554
+ showPageAndLayerSidebar: z13.boolean().optional(),
11555
+ showBoardOperationSidebar: z13.boolean().optional(),
11556
+ showMiniToolsToolbar: z13.boolean().optional(),
11557
+ showRightSidebar: z13.boolean().optional(),
11558
+ showRealtimeDrawing: z13.boolean().optional(),
11559
+ showWorkflow: z13.boolean().optional(),
11560
+ showVersionManager: z13.boolean().optional(),
11561
+ showAgent: z13.boolean().optional(),
11562
+ AgentTools: z13.array(ContractIdentifierSchema).optional()
11283
11563
  }).strict().optional(),
11284
11564
  workbench: TenantWorkbenchConfigSchema.optional(),
11285
- visionProWorkflows: z12.array(ContractIdentifierSchema).optional(),
11286
- initTeam: z12.boolean().optional(),
11287
- imageThumbnail: z12.boolean().optional(),
11288
- pages: z12.object({
11289
- allowPageKeys: z12.union([z12.literal("*"), z12.array(ContractIdentifierSchema)]),
11565
+ visionProWorkflows: z13.array(ContractIdentifierSchema).optional(),
11566
+ initTeam: z13.boolean().optional(),
11567
+ imageThumbnail: z13.boolean().optional(),
11568
+ pages: z13.object({
11569
+ allowPageKeys: z13.union([z13.literal("*"), z13.array(ContractIdentifierSchema)]),
11290
11570
  defaultPageKey: ContractIdentifierSchema.optional()
11291
11571
  }).strict().optional(),
11292
- agent: z12.object({
11572
+ agent: z13.object({
11293
11573
  logo: AssetVariantsSchema.optional(),
11294
- brandDisplayMode: z12.enum(["auto", "logo-only", "logo-name", "name-only"]).optional(),
11295
- density: z12.enum(["compact", "default", "comfortable"]).optional()
11574
+ brandDisplayMode: z13.enum(["auto", "logo-only", "logo-name", "name-only"]).optional(),
11575
+ density: z13.enum(["compact", "default", "comfortable"]).optional(),
11576
+ sessionCentric: z13.boolean().optional()
11296
11577
  }).strict().optional()
11297
11578
  }).strict(),
11298
11579
  landingPage: TenantLandingPageConfigSchema.optional(),
11299
- auth: z12.object({
11300
- enabled: z12.array(ContractIdentifierSchema).default([]),
11301
- oidc: z12.object({ buttonText: z12.string().optional(), autoSignin: z12.boolean().optional() }).strict().optional(),
11302
- password: z12.object({ disableAutoRegister: z12.boolean().optional() }).strict().optional(),
11303
- hideAuthToast: z12.boolean().optional(),
11304
- autoReload: z12.boolean().optional(),
11305
- defaultOtherTeam: z12.boolean().optional()
11580
+ auth: z13.object({
11581
+ enabled: z13.array(ContractIdentifierSchema).default([]),
11582
+ oidc: z13.object({ buttonText: z13.string().optional(), autoSignin: z13.boolean().optional() }).strict().optional(),
11583
+ password: z13.object({ disableAutoRegister: z13.boolean().optional() }).strict().optional(),
11584
+ hideAuthToast: z13.boolean().optional(),
11585
+ autoReload: z13.boolean().optional(),
11586
+ defaultOtherTeam: z13.boolean().optional()
11306
11587
  }).strict(),
11307
- endpoints: z12.record(ContractIdentifierSchema, z12.string()),
11308
- module: z12.union([z12.literal("*"), z12.array(ContractIdentifierSchema)]),
11309
- behavior: z12.object({
11310
- clearWorkflowFormStorageAfterUpdate: z12.boolean().optional(),
11311
- autoApproveOAuth: z12.boolean().optional(),
11312
- rememberWorkflowModelSelection: z12.boolean().optional()
11588
+ endpoints: z13.record(ContractIdentifierSchema, z13.string()),
11589
+ module: z13.union([z13.literal("*"), z13.array(ContractIdentifierSchema)]),
11590
+ behavior: z13.object({
11591
+ clearWorkflowFormStorageAfterUpdate: z13.boolean().optional(),
11592
+ autoApproveOAuth: z13.boolean().optional(),
11593
+ rememberWorkflowModelSelection: z13.boolean().optional()
11313
11594
  }).strict(),
11314
- dataManagement: z12.object({
11315
- favoriteOntologyId: z12.string().optional(),
11316
- pairedOntologyId: z12.string().optional(),
11317
- galleryOntologyIds: z12.array(ContractIdentifierSchema).max(20).optional(),
11318
- galleryOntologyId: z12.string().optional(),
11319
- dataBrowserDefaultOntologyId: z12.string().optional(),
11320
- workflowResultOntologyId: z12.string().optional(),
11321
- homeAdvertisement: z12.object({
11595
+ dataManagement: z13.object({
11596
+ favoriteOntologyId: z13.string().optional(),
11597
+ pairedOntologyId: z13.string().optional(),
11598
+ galleryOntologyIds: z13.array(ContractIdentifierSchema).max(20).optional(),
11599
+ galleryOntologyId: z13.string().optional(),
11600
+ dataBrowserDefaultOntologyId: z13.string().optional(),
11601
+ workflowResultOntologyId: z13.string().optional(),
11602
+ homeAdvertisement: z13.object({
11322
11603
  ontologyId: ContractIdentifierSchema,
11323
11604
  viewId: ContractIdentifierSchema.optional(),
11324
- viewType: z12.enum(["filter", "container", "share_link"]).optional(),
11605
+ viewType: z13.enum(["filter", "container", "share_link"]).optional(),
11325
11606
  teamId: ContractIdentifierSchema.optional(),
11326
- teamOnly: z12.boolean().optional(),
11327
- pageSize: z12.number().int().positive().optional(),
11328
- sortBy: z12.enum(["pin_order", "asset_id", "updated_timestamp", "created_timestamp"]).optional(),
11329
- sortOrder: z12.enum(["asc", "desc"]).optional(),
11330
- fieldMap: z12.record(z12.string(), z12.string()).optional(),
11331
- columnIds: z12.record(z12.string(), z12.string()).optional()
11607
+ teamOnly: z13.boolean().optional(),
11608
+ pageSize: z13.number().int().positive().optional(),
11609
+ sortBy: z13.enum(["pin_order", "asset_id", "updated_timestamp", "created_timestamp"]).optional(),
11610
+ sortOrder: z13.enum(["asc", "desc"]).optional(),
11611
+ fieldMap: z13.record(z13.string(), z13.string()).optional(),
11612
+ columnIds: z13.record(z13.string(), z13.string()).optional()
11332
11613
  }).strict().optional(),
11333
- homeTrendAssistant: z12.object({
11614
+ homeTrendAssistant: z13.object({
11334
11615
  ontologyId: ContractIdentifierSchema.optional(),
11335
11616
  viewId: ContractIdentifierSchema.optional(),
11336
11617
  viewInstanceId: ContractIdentifierSchema.optional(),
11337
- viewName: z12.string().optional(),
11618
+ viewName: z13.string().optional(),
11338
11619
  teamId: ContractIdentifierSchema.optional(),
11339
11620
  designOptionsWorkflowId: ContractIdentifierSchema.optional(),
11340
- tep: z12.object({ baseUrl: z12.string().optional(), timeoutMs: z12.number().int().positive().optional() }).strict().optional(),
11341
- runtime: z12.object({ appId: ContractIdentifierSchema, tepBaseUrlConfigured: z12.boolean(), tepAuthorizationConfigured: z12.boolean(), tepCookieConfigured: z12.boolean() }).strict().optional()
11621
+ tep: z13.object({ baseUrl: z13.string().optional(), timeoutMs: z13.number().int().positive().optional() }).strict().optional(),
11622
+ runtime: z13.object({ appId: ContractIdentifierSchema, tepBaseUrlConfigured: z13.boolean(), tepAuthorizationConfigured: z13.boolean(), tepCookieConfigured: z13.boolean() }).strict().optional()
11342
11623
  }).strict().optional(),
11343
11624
  trendRadar: TenantTrendRadarSourcesSchema.optional(),
11344
- sharing: z12.object({
11345
- silentViewLinks: z12.object({ enabled: z12.boolean().optional(), placement: z12.object({ mode: z12.enum(["sourceOntology", "ontology"]).optional(), ontologyId: ContractIdentifierSchema.optional(), parentId: ContractIdentifierSchema.optional(), navId: ContractIdentifierSchema.optional() }).strict().optional() }).strict().optional(),
11346
- shareAccess: z12.object({ publicLinksEnabled: z12.boolean().optional(), passwordGateEnabled: z12.boolean().optional(), passwordAccessTtlSeconds: z12.number().int().positive().optional(), defaultViewTreeDelivery: z12.enum(["manual", "auto"]).optional() }).strict().optional(),
11347
- shareDialog: z12.object({
11348
- audience: z12.object({ enabled: z12.boolean().optional(), allowed: z12.array(z12.enum(["user", "team", "public"])).optional(), default: z12.enum(["user", "team", "public"]).optional() }).strict().optional(),
11349
- accessLevel: z12.object({ enabled: z12.boolean().optional(), allowed: z12.array(z12.enum(["read", "write"])).optional(), default: z12.enum(["read", "write"]).optional() }).strict().optional(),
11350
- viewTreeDelivery: z12.object({ enabled: z12.boolean().optional(), allowed: z12.array(z12.enum(["manual", "auto"])).optional(), default: z12.enum(["manual", "auto"]).optional() }).strict().optional()
11625
+ sharing: z13.object({
11626
+ silentViewLinks: z13.object({ enabled: z13.boolean().optional(), placement: z13.object({ mode: z13.enum(["sourceOntology", "ontology"]).optional(), ontologyId: ContractIdentifierSchema.optional(), parentId: ContractIdentifierSchema.optional(), navId: ContractIdentifierSchema.optional() }).strict().optional() }).strict().optional(),
11627
+ shareAccess: z13.object({ publicLinksEnabled: z13.boolean().optional(), passwordGateEnabled: z13.boolean().optional(), passwordAccessTtlSeconds: z13.number().int().positive().optional(), defaultViewTreeDelivery: z13.enum(["manual", "auto"]).optional() }).strict().optional(),
11628
+ shareDialog: z13.object({
11629
+ audience: z13.object({ enabled: z13.boolean().optional(), allowed: z13.array(z13.enum(["user", "team", "public"])).optional(), default: z13.enum(["user", "team", "public"]).optional() }).strict().optional(),
11630
+ accessLevel: z13.object({ enabled: z13.boolean().optional(), allowed: z13.array(z13.enum(["read", "write"])).optional(), default: z13.enum(["read", "write"]).optional() }).strict().optional(),
11631
+ viewTreeDelivery: z13.object({ enabled: z13.boolean().optional(), allowed: z13.array(z13.enum(["manual", "auto"])).optional(), default: z13.enum(["manual", "auto"]).optional() }).strict().optional()
11351
11632
  }).strict().optional()
11352
11633
  }).strict().optional()
11353
11634
  }).strict().optional(),
11354
- compute: z12.object({
11355
- integrations: z12.object({
11356
- harbor: z12.object({ endpoint: z12.string().optional(), projectScopes: z12.array(z12.string()).optional(), authMode: z12.string().optional(), principal: z12.string().optional(), autoSync: z12.boolean().optional(), proxyUrl: z12.string().optional() }).strict().optional(),
11357
- gitlab: z12.object({ baseUrl: z12.string().optional(), groupScopes: z12.array(z12.string()).optional(), tokenMode: z12.string().optional(), deployProjectPath: z12.string().optional(), deploymentReportsEnabled: z12.boolean().optional(), proxyUrl: z12.string().optional() }).strict().optional(),
11358
- kubernetes: z12.object({ accessMode: z12.string().optional(), clusterAlias: z12.string().optional(), agentProjectPath: z12.string().optional(), agentName: z12.string().optional(), namespaceScopes: z12.array(z12.string()).optional(), rolloutObserverEnabled: z12.boolean().optional(), proxyUrl: z12.string().optional() }).strict().optional()
11635
+ compute: z13.object({
11636
+ integrations: z13.object({
11637
+ harbor: z13.object({ endpoint: z13.string().optional(), projectScopes: z13.array(z13.string()).optional(), authMode: z13.string().optional(), principal: z13.string().optional(), autoSync: z13.boolean().optional(), proxyUrl: z13.string().optional() }).strict().optional(),
11638
+ gitlab: z13.object({ baseUrl: z13.string().optional(), groupScopes: z13.array(z13.string()).optional(), tokenMode: z13.string().optional(), deployProjectPath: z13.string().optional(), deploymentReportsEnabled: z13.boolean().optional(), proxyUrl: z13.string().optional() }).strict().optional(),
11639
+ kubernetes: z13.object({ accessMode: z13.string().optional(), clusterAlias: z13.string().optional(), agentProjectPath: z13.string().optional(), agentName: z13.string().optional(), namespaceScopes: z13.array(z13.string()).optional(), rolloutObserverEnabled: z13.boolean().optional(), proxyUrl: z13.string().optional() }).strict().optional()
11359
11640
  }).strict().optional()
11360
11641
  }).strict().optional(),
11361
- data: z12.object({}).strict().optional(),
11362
- storage: z12.object({
11363
- presignMode: z12.enum(["frontend", "backend", "both"]).optional(),
11364
- presign: z12.object({
11365
- expiresInSeconds: z12.number().int().positive(),
11366
- buckets: z12.array(
11367
- z12.object({
11642
+ data: z13.object({}).strict().optional(),
11643
+ storage: z13.object({
11644
+ presignMode: z13.enum(["frontend", "backend", "both"]).optional(),
11645
+ presign: z13.object({
11646
+ expiresInSeconds: z13.number().int().positive(),
11647
+ buckets: z13.array(
11648
+ z13.object({
11368
11649
  id: ContractIdentifierSchema,
11369
11650
  provider: ContractIdentifierSchema,
11370
11651
  preferredUrlPatternId: ContractIdentifierSchema,
11371
- urlPatterns: z12.array(
11372
- z12.object({
11652
+ urlPatterns: z13.array(
11653
+ z13.object({
11373
11654
  id: ContractIdentifierSchema,
11374
- type: z12.enum(["bucket-hostname", "provider-hostname"]),
11375
- hostname: z12.string().trim().min(1),
11376
- preferred: z12.boolean().optional(),
11377
- bucketSegment: z12.string().optional()
11655
+ type: z13.enum(["bucket-hostname", "provider-hostname"]),
11656
+ hostname: z13.string().trim().min(1),
11657
+ preferred: z13.boolean().optional(),
11658
+ bucketSegment: z13.string().optional()
11378
11659
  }).strict()
11379
11660
  )
11380
11661
  }).strict()
11381
11662
  )
11382
11663
  }).strict().optional()
11383
11664
  }).strict().optional(),
11384
- monkeyData: z12.object({ baseUrl: z12.string().optional() }).strict().optional()
11665
+ monkeyData: z13.object({ baseUrl: z13.string().optional() }).strict().optional()
11385
11666
  }).strict();
11386
- var TenantProductConfigSchema = z12.object({
11387
- contract: z12.literal("TenantProductConfig"),
11667
+ var TenantProductConfigSchema = z13.object({
11668
+ contract: z13.literal("TenantProductConfig"),
11388
11669
  tenantId: ContractIdentifierSchema,
11389
11670
  appId: ContractIdentifierSchema,
11390
11671
  environment: ContractIdentifierSchema,
11391
11672
  designTokens: TenantDesignTokensConfigSchema,
11392
- moduleRefs: z12.array(ContractIdentifierSchema).default([]),
11393
- pageRefs: z12.array(ContractIdentifierSchema).default([]),
11394
- featureFlags: z12.record(z12.string(), z12.boolean()).default({}),
11673
+ moduleRefs: z13.array(ContractIdentifierSchema).default([]),
11674
+ pageRefs: z13.array(ContractIdentifierSchema).default([]),
11675
+ featureFlags: z13.record(z13.string(), z13.boolean()).default({}),
11395
11676
  authBinding: TenantAuthBindingsSchema,
11396
11677
  dataBinding: TenantDataBindingsSchema,
11397
- sourceMap: z12.record(z12.string(), ContractIdentifierSchema),
11398
- warnings: z12.array(z12.string()).default([]),
11678
+ sourceMap: z13.record(z13.string(), ContractIdentifierSchema),
11679
+ warnings: z13.array(z13.string()).default([]),
11680
+ menus: MenuDefinitionSetSchema.optional(),
11399
11681
  applicationConfig: TenantApplicationConfigSchema
11400
11682
  }).strict();
11401
- var TenantRuntimeConfigSchema = z12.object({
11402
- contract: z12.literal("TenantRuntimeConfig"),
11683
+ var TenantRuntimeConfigSchema = z13.object({
11684
+ contract: z13.literal("TenantRuntimeConfig"),
11403
11685
  tenantId: ContractIdentifierSchema,
11404
11686
  appId: ContractIdentifierSchema,
11405
11687
  environment: ContractIdentifierSchema,
11406
11688
  designTokens: ResolvedThemeTokensSchema,
11407
- moduleRefs: z12.array(ContractIdentifierSchema).default([]),
11408
- pageRefs: z12.array(ContractIdentifierSchema).default([]),
11409
- featureFlags: z12.record(z12.string(), z12.boolean()).default({}),
11689
+ moduleRefs: z13.array(ContractIdentifierSchema).default([]),
11690
+ pageRefs: z13.array(ContractIdentifierSchema).default([]),
11691
+ featureFlags: z13.record(z13.string(), z13.boolean()).default({}),
11410
11692
  authBinding: TenantAuthBindingsSchema,
11411
11693
  dataBinding: TenantDataBindingsSchema,
11412
- sourceMap: z12.record(z12.string(), ContractIdentifierSchema),
11413
- warnings: z12.array(z12.string()).default([]),
11694
+ sourceMap: z13.record(z13.string(), ContractIdentifierSchema),
11695
+ warnings: z13.array(z13.string()).default([]),
11696
+ menuBundle: MenuRuntimeBundleSchema.optional(),
11414
11697
  applicationConfig: TenantApplicationConfigSchema
11415
11698
  }).strict();
11416
11699
 
11417
11700
  // src/contracts/trend.ts
11418
- import { z as z13 } from "zod";
11419
- var RadarDecisionMetricsSchema = z13.object({
11420
- currentSales: z13.number().finite(),
11421
- forecastSales: z13.number().finite(),
11422
- searchHeat: z13.number().finite(),
11423
- socialHeat: z13.number().finite(),
11424
- confidence: z13.number().min(0).max(1)
11425
- }).strict();
11426
- var TrendSourceSchema = z13.object({
11701
+ import { z as z14 } from "zod";
11702
+ var RadarDecisionMetricsSchema = z14.object({
11703
+ currentSales: z14.number().finite(),
11704
+ forecastSales: z14.number().finite(),
11705
+ searchHeat: z14.number().finite(),
11706
+ socialHeat: z14.number().finite(),
11707
+ confidence: z14.number().min(0).max(1)
11708
+ }).strict();
11709
+ var TrendSourceSchema = z14.object({
11427
11710
  sourceId: ContractIdentifierSchema,
11428
11711
  provider: ContractIdentifierSchema,
11429
- channel: z13.enum(["trend", "ecommerce", "social", "search", "internal"]),
11712
+ channel: z14.enum(["trend", "ecommerce", "social", "search", "internal"]),
11430
11713
  collectedAt: IsoDateTimeSchema,
11431
- sourceUrl: z13.string().url().optional(),
11432
- evidenceRefs: z13.array(EntityRefSchema).default([])
11714
+ sourceUrl: z14.string().url().optional(),
11715
+ evidenceRefs: z14.array(EntityRefSchema).default([])
11433
11716
  }).strict();
11434
- var TrendIngestRunSchema = z13.object({
11435
- contract: z13.literal("TrendIngestRun"),
11717
+ var TrendIngestRunSchema = z14.object({
11718
+ contract: z14.literal("TrendIngestRun"),
11436
11719
  ingestRunId: ContractIdentifierSchema,
11437
11720
  sourceId: ContractIdentifierSchema,
11438
11721
  requestId: ContractIdentifierSchema,
11439
11722
  idempotencyKey: ContractIdentifierSchema,
11440
- status: z13.enum(["RUNNING", "SUCCEEDED", "FAILED", "PARTIAL"]),
11441
- recordCount: z13.number().int().nonnegative(),
11442
- errorCount: z13.number().int().nonnegative(),
11723
+ status: z14.enum(["RUNNING", "SUCCEEDED", "FAILED", "PARTIAL"]),
11724
+ recordCount: z14.number().int().nonnegative(),
11725
+ errorCount: z14.number().int().nonnegative(),
11443
11726
  startedAt: IsoDateTimeSchema,
11444
11727
  completedAt: IsoDateTimeSchema.optional()
11445
11728
  }).strict();
11446
- var TrendSourceRecordSchema = z13.object({
11447
- contract: z13.literal("TrendSourceRecord"),
11729
+ var TrendSourceRecordSchema = z14.object({
11730
+ contract: z14.literal("TrendSourceRecord"),
11448
11731
  sourceRecordId: ContractIdentifierSchema,
11449
11732
  source: TrendSourceSchema,
11450
11733
  ingestRunRef: EntityRefSchema,
11451
- recordVersion: z13.number().int().positive(),
11734
+ recordVersion: z14.number().int().positive(),
11452
11735
  contentHash: Sha256Schema,
11453
11736
  payload: JsonValueSchema,
11454
11737
  idempotencyKey: ContractIdentifierSchema,
11455
11738
  collectedAt: IsoDateTimeSchema
11456
11739
  }).strict();
11457
- var HotwordBodySchema = z13.object({
11458
- contract: z13.literal("HotwordBody"),
11740
+ var HotwordBodySchema = z14.object({
11741
+ contract: z14.literal("HotwordBody"),
11459
11742
  hotwordId: ContractIdentifierSchema,
11460
- label: z13.string().trim().min(1),
11461
- normalizedLabel: z13.string().trim().min(1),
11462
- categories: z13.array(ContractIdentifierSchema).default([]),
11463
- sourceRefs: z13.array(TrendSourceSchema).min(1),
11464
- relationRefs: z13.array(EntityRefSchema).default([]),
11743
+ label: z14.string().trim().min(1),
11744
+ normalizedLabel: z14.string().trim().min(1),
11745
+ categories: z14.array(ContractIdentifierSchema).default([]),
11746
+ sourceRefs: z14.array(TrendSourceSchema).min(1),
11747
+ relationRefs: z14.array(EntityRefSchema).default([]),
11465
11748
  createdAt: IsoDateTimeSchema,
11466
11749
  updatedAt: IsoDateTimeSchema
11467
11750
  }).strict();
11468
11751
  var CommerceBodyFieldsSchema = {
11469
- displayName: z13.string().trim().min(1),
11470
- normalizedName: z13.string().trim().min(1),
11471
- categories: z13.array(ContractIdentifierSchema).default([]),
11472
- sourceRefs: z13.array(EntityRefSchema).min(1),
11473
- relationRefs: z13.array(EntityRefSchema).default([]),
11752
+ displayName: z14.string().trim().min(1),
11753
+ normalizedName: z14.string().trim().min(1),
11754
+ categories: z14.array(ContractIdentifierSchema).default([]),
11755
+ sourceRefs: z14.array(EntityRefSchema).min(1),
11756
+ relationRefs: z14.array(EntityRefSchema).default([]),
11474
11757
  createdAt: IsoDateTimeSchema,
11475
11758
  updatedAt: IsoDateTimeSchema
11476
11759
  };
11477
- var BrandBodySchema = z13.object({
11478
- contract: z13.literal("BrandBody"),
11760
+ var BrandBodySchema = z14.object({
11761
+ contract: z14.literal("BrandBody"),
11479
11762
  brandId: ContractIdentifierSchema,
11480
11763
  ...CommerceBodyFieldsSchema
11481
11764
  }).strict();
11482
- var ProductBodySchema = z13.object({
11483
- contract: z13.literal("ProductBody"),
11765
+ var ProductBodySchema = z14.object({
11766
+ contract: z14.literal("ProductBody"),
11484
11767
  productId: ContractIdentifierSchema,
11485
11768
  brandRef: EntityRefSchema.optional(),
11486
11769
  ...CommerceBodyFieldsSchema
11487
11770
  }).strict();
11488
- var TrendMetricSnapshotSchema = z13.object({
11489
- contract: z13.literal("TrendMetricSnapshot"),
11771
+ var TrendMetricSnapshotSchema = z14.object({
11772
+ contract: z14.literal("TrendMetricSnapshot"),
11490
11773
  snapshotId: ContractIdentifierSchema,
11491
11774
  subjectRef: EntityRefSchema,
11492
11775
  observedAt: IsoDateTimeSchema,
11493
- metrics: z13.record(z13.string(), z13.number().finite()),
11494
- confidence: z13.number().min(0).max(1),
11495
- evidenceRefs: z13.array(EntityRefSchema).min(1)
11776
+ metrics: z14.record(z14.string(), z14.number().finite()),
11777
+ confidence: z14.number().min(0).max(1),
11778
+ evidenceRefs: z14.array(EntityRefSchema).min(1)
11496
11779
  }).strict();
11497
- var RadarScoreModelBodySchema = z13.object({
11498
- contract: z13.literal("RadarScoreModelBody"),
11780
+ var RadarScoreModelBodySchema = z14.object({
11781
+ contract: z14.literal("RadarScoreModelBody"),
11499
11782
  modelId: ContractIdentifierSchema,
11500
- version: z13.number().int().positive(),
11783
+ version: z14.number().int().positive(),
11501
11784
  weights: RadarDecisionMetricsSchema,
11502
- thresholds: z13.record(z13.string(), z13.number().finite()).default({}),
11503
- explanationRules: z13.record(z13.string(), z13.string().trim().min(1)).default({}),
11785
+ thresholds: z14.record(z14.string(), z14.number().finite()).default({}),
11786
+ explanationRules: z14.record(z14.string(), z14.string().trim().min(1)).default({}),
11504
11787
  createdAt: IsoDateTimeSchema
11505
11788
  }).strict();
11506
- var RadarScoreProjectionSchema = z13.object({
11507
- contract: z13.literal("RadarScoreProjection"),
11789
+ var RadarScoreProjectionSchema = z14.object({
11790
+ contract: z14.literal("RadarScoreProjection"),
11508
11791
  projectionId: ContractIdentifierSchema,
11509
11792
  subjectRef: EntityRefSchema,
11510
11793
  modelRef: EntityRefSchema,
11511
- totalScore: z13.number().finite(),
11794
+ totalScore: z14.number().finite(),
11512
11795
  dimensions: RadarDecisionMetricsSchema,
11513
- evidenceRefs: z13.array(EntityRefSchema).min(1),
11796
+ evidenceRefs: z14.array(EntityRefSchema).min(1),
11514
11797
  freshnessAt: IsoDateTimeSchema
11515
11798
  }).strict();
11516
- var RadarPanoramaNodeSchema = z13.object({
11799
+ var RadarPanoramaNodeSchema = z14.object({
11517
11800
  ref: EntityRefSchema,
11518
- label: z13.string().trim().min(1),
11519
- categories: z13.array(ContractIdentifierSchema).default([]),
11520
- score: z13.number().finite().optional(),
11801
+ label: z14.string().trim().min(1),
11802
+ categories: z14.array(ContractIdentifierSchema).default([]),
11803
+ score: z14.number().finite().optional(),
11521
11804
  freshnessAt: IsoDateTimeSchema.optional()
11522
11805
  }).strict();
11523
- var RadarPanoramaEdgeSchema = z13.object({
11806
+ var RadarPanoramaEdgeSchema = z14.object({
11524
11807
  sourceRef: EntityRefSchema,
11525
11808
  targetRef: EntityRefSchema,
11526
11809
  relation: ContractIdentifierSchema,
11527
- evidenceRefs: z13.array(EntityRefSchema).default([])
11810
+ evidenceRefs: z14.array(EntityRefSchema).default([])
11528
11811
  }).strict();
11529
- var RadarPanoramaSchema = z13.object({
11530
- contract: z13.literal("RadarPanorama"),
11531
- nodes: z13.array(RadarPanoramaNodeSchema),
11532
- edges: z13.array(RadarPanoramaEdgeSchema),
11812
+ var RadarPanoramaSchema = z14.object({
11813
+ contract: z14.literal("RadarPanorama"),
11814
+ nodes: z14.array(RadarPanoramaNodeSchema),
11815
+ edges: z14.array(RadarPanoramaEdgeSchema),
11533
11816
  generatedAt: IsoDateTimeSchema
11534
11817
  }).strict();
11535
- var BrandGeneticsProfileSchema = z13.object({
11536
- contract: z13.literal("BrandGeneticsProfile"),
11818
+ var BrandGeneticsProfileSchema = z14.object({
11819
+ contract: z14.literal("BrandGeneticsProfile"),
11537
11820
  brandRef: EntityRefSchema,
11538
- categories: z13.array(ContractIdentifierSchema).default([]),
11539
- signature: z13.record(ContractIdentifierSchema, z13.number().finite()),
11540
- relatedRefs: z13.array(EntityRefSchema).default([]),
11541
- evidenceRefs: z13.array(EntityRefSchema).default([]),
11821
+ categories: z14.array(ContractIdentifierSchema).default([]),
11822
+ signature: z14.record(ContractIdentifierSchema, z14.number().finite()),
11823
+ relatedRefs: z14.array(EntityRefSchema).default([]),
11824
+ evidenceRefs: z14.array(EntityRefSchema).default([]),
11542
11825
  computedAt: IsoDateTimeSchema
11543
11826
  }).strict();
11544
- var RadarOpportunityMatrixPointSchema = z13.object({
11827
+ var RadarOpportunityMatrixPointSchema = z14.object({
11545
11828
  subjectRef: EntityRefSchema,
11546
- label: z13.string().trim().min(1),
11547
- x: z13.number().finite(),
11548
- y: z13.number().finite(),
11549
- score: z13.number().finite(),
11550
- evidenceRefs: z13.array(EntityRefSchema).default([])
11551
- }).strict();
11552
- var RadarOpportunityMatrixSchema = z13.object({
11553
- contract: z13.literal("RadarOpportunityMatrix"),
11554
- xMetric: z13.enum(["currentSales", "forecastSales", "searchHeat", "socialHeat", "confidence"]),
11555
- yMetric: z13.enum(["currentSales", "forecastSales", "searchHeat", "socialHeat", "confidence"]),
11556
- points: z13.array(RadarOpportunityMatrixPointSchema),
11829
+ label: z14.string().trim().min(1),
11830
+ x: z14.number().finite(),
11831
+ y: z14.number().finite(),
11832
+ score: z14.number().finite(),
11833
+ evidenceRefs: z14.array(EntityRefSchema).default([])
11834
+ }).strict();
11835
+ var RadarOpportunityMatrixSchema = z14.object({
11836
+ contract: z14.literal("RadarOpportunityMatrix"),
11837
+ xMetric: z14.enum(["currentSales", "forecastSales", "searchHeat", "socialHeat", "confidence"]),
11838
+ yMetric: z14.enum(["currentSales", "forecastSales", "searchHeat", "socialHeat", "confidence"]),
11839
+ points: z14.array(RadarOpportunityMatrixPointSchema),
11557
11840
  computedAt: IsoDateTimeSchema
11558
11841
  }).strict();
11559
- var RadarQueryBodySchema = z13.object({
11560
- contract: z13.literal("RadarQueryBody"),
11842
+ var RadarQueryBodySchema = z14.object({
11843
+ contract: z14.literal("RadarQueryBody"),
11561
11844
  queryId: ContractIdentifierSchema,
11562
- filters: z13.record(z13.string(), JsonValueSchema).default({}),
11563
- sort: z13.object({
11845
+ filters: z14.record(z14.string(), JsonValueSchema).default({}),
11846
+ sort: z14.object({
11564
11847
  field: ContractIdentifierSchema,
11565
- direction: z13.enum(["asc", "desc"])
11848
+ direction: z14.enum(["asc", "desc"])
11566
11849
  }).strict(),
11567
- pageSize: z13.number().int().min(1).max(200),
11850
+ pageSize: z14.number().int().min(1).max(200),
11568
11851
  updatedAt: IsoDateTimeSchema
11569
11852
  }).strict();
11570
- var SavedRadarQuerySchema = z13.object({
11571
- contract: z13.literal("SavedRadarQuery"),
11853
+ var SavedRadarQuerySchema = z14.object({
11854
+ contract: z14.literal("SavedRadarQuery"),
11572
11855
  savedQueryId: ContractIdentifierSchema,
11573
11856
  teamId: ContractIdentifierSchema,
11574
11857
  ownerRef: EntityRefSchema,
11575
- name: z13.string().trim().min(1),
11858
+ name: z14.string().trim().min(1),
11576
11859
  queryRef: EntityRefSchema,
11577
- expectedVersion: z13.number().int().nonnegative(),
11860
+ expectedVersion: z14.number().int().nonnegative(),
11578
11861
  updatedAt: IsoDateTimeSchema
11579
11862
  }).strict();
11580
- var RadarSelectionSchema = z13.object({
11581
- contract: z13.literal("RadarSelection"),
11863
+ var RadarSelectionSchema = z14.object({
11864
+ contract: z14.literal("RadarSelection"),
11582
11865
  selectionId: ContractIdentifierSchema,
11583
11866
  teamId: ContractIdentifierSchema,
11584
11867
  ownerRef: EntityRefSchema,
11585
- subjectRefs: z13.array(EntityRefSchema),
11586
- status: z13.enum(["stashed", "selected", "rejected", "archived"]),
11587
- note: z13.string().optional(),
11588
- expectedVersion: z13.number().int().nonnegative(),
11868
+ subjectRefs: z14.array(EntityRefSchema),
11869
+ status: z14.enum(["stashed", "selected", "rejected", "archived"]),
11870
+ note: z14.string().optional(),
11871
+ expectedVersion: z14.number().int().nonnegative(),
11589
11872
  updatedAt: IsoDateTimeSchema
11590
11873
  }).strict();
11591
- var RadarAnalysisRunSchema = z13.object({
11592
- contract: z13.literal("RadarAnalysisRun"),
11874
+ var RadarAnalysisRunSchema = z14.object({
11875
+ contract: z14.literal("RadarAnalysisRun"),
11593
11876
  runId: ContractIdentifierSchema,
11594
11877
  teamId: ContractIdentifierSchema,
11595
11878
  selectionRef: EntityRefSchema,
@@ -11598,66 +11881,66 @@ var RadarAnalysisRunSchema = z13.object({
11598
11881
  designProjectRef: EntityRefSchema.optional(),
11599
11882
  replayedFromRef: EntityRefSchema.optional(),
11600
11883
  workflowDefinitionTeamId: ContractIdentifierSchema.optional(),
11601
- workflowInput: z13.record(z13.string(), JsonValueSchema).default({}),
11602
- createDesignProject: z13.boolean().default(true),
11603
- designProjectName: z13.string().trim().min(1).max(200).optional(),
11884
+ workflowInput: z14.record(z14.string(), JsonValueSchema).default({}),
11885
+ createDesignProject: z14.boolean().default(true),
11886
+ designProjectName: z14.string().trim().min(1).max(200).optional(),
11604
11887
  modelRef: EntityRefSchema,
11605
11888
  requestId: ContractIdentifierSchema,
11606
11889
  idempotencyKey: ContractIdentifierSchema,
11607
- status: z13.enum(["QUEUED", "RUNNING", "SUCCEEDED", "FAILED", "CANCELLED", "PARTIAL"]),
11608
- outputRefs: z13.array(EntityRefSchema).default([]),
11609
- error: z13.object({
11890
+ status: z14.enum(["QUEUED", "RUNNING", "SUCCEEDED", "FAILED", "CANCELLED", "PARTIAL"]),
11891
+ outputRefs: z14.array(EntityRefSchema).default([]),
11892
+ error: z14.object({
11610
11893
  code: ContractIdentifierSchema,
11611
- message: z13.string().trim().min(1),
11612
- retryable: z13.boolean()
11894
+ message: z14.string().trim().min(1),
11895
+ retryable: z14.boolean()
11613
11896
  }).strict().optional(),
11614
11897
  startedAt: IsoDateTimeSchema.optional(),
11615
11898
  completedAt: IsoDateTimeSchema.optional(),
11616
11899
  createdAt: IsoDateTimeSchema
11617
11900
  }).strict();
11618
- var RadarAnalysisAssetSchema = z13.object({
11901
+ var RadarAnalysisAssetSchema = z14.object({
11619
11902
  artifactRef: EntityRefSchema,
11620
11903
  kind: ContractIdentifierSchema,
11621
- mimeType: z13.string().trim().min(1).optional(),
11622
- url: z13.string().url(),
11623
- metadata: z13.record(z13.string(), JsonValueSchema).default({}),
11904
+ mimeType: z14.string().trim().min(1).optional(),
11905
+ url: z14.string().url(),
11906
+ metadata: z14.record(z14.string(), JsonValueSchema).default({}),
11624
11907
  createdAt: IsoDateTimeSchema
11625
11908
  }).strict();
11626
- var RadarAnalysisDetailSchema = z13.object({
11627
- contract: z13.literal("RadarAnalysisDetail"),
11909
+ var RadarAnalysisDetailSchema = z14.object({
11910
+ contract: z14.literal("RadarAnalysisDetail"),
11628
11911
  run: RadarAnalysisRunSchema,
11629
- runVersion: z13.number().int().positive(),
11912
+ runVersion: z14.number().int().positive(),
11630
11913
  selection: RadarSelectionSchema,
11631
- outputs: z13.array(OutputRecordSchema),
11632
- assets: z13.array(RadarAnalysisAssetSchema),
11633
- lineage: z13.array(LineageRecordSchema)
11914
+ outputs: z14.array(OutputRecordSchema),
11915
+ assets: z14.array(RadarAnalysisAssetSchema),
11916
+ lineage: z14.array(LineageRecordSchema)
11634
11917
  }).strict();
11635
- var RadarActionRecordSchema = z13.object({
11636
- contract: z13.literal("RadarActionRecord"),
11918
+ var RadarActionRecordSchema = z14.object({
11919
+ contract: z14.literal("RadarActionRecord"),
11637
11920
  actionId: ContractIdentifierSchema,
11638
11921
  teamId: ContractIdentifierSchema,
11639
11922
  actorRef: EntityRefSchema,
11640
- action: z13.enum(["stash", "select", "reject", "archive", "launch", "retry", "replay", "rollback"]),
11923
+ action: z14.enum(["stash", "select", "reject", "archive", "launch", "retry", "replay", "rollback"]),
11641
11924
  targetRef: EntityRefSchema,
11642
11925
  requestId: ContractIdentifierSchema,
11643
11926
  idempotencyKey: ContractIdentifierSchema,
11644
- expectedVersion: z13.number().int().nonnegative(),
11927
+ expectedVersion: z14.number().int().nonnegative(),
11645
11928
  occurredAt: IsoDateTimeSchema
11646
11929
  }).strict();
11647
- var RadarWritebackRecordSchema = z13.object({
11648
- contract: z13.literal("RadarWritebackRecord"),
11930
+ var RadarWritebackRecordSchema = z14.object({
11931
+ contract: z14.literal("RadarWritebackRecord"),
11649
11932
  writebackId: ContractIdentifierSchema,
11650
11933
  actionRef: EntityRefSchema,
11651
11934
  targetRef: EntityRefSchema,
11652
- status: z13.enum(["PENDING", "APPLIED", "FAILED"]),
11653
- resultingVersion: z13.number().int().nonnegative().optional(),
11654
- error: z13.string().trim().min(1).optional(),
11935
+ status: z14.enum(["PENDING", "APPLIED", "FAILED"]),
11936
+ resultingVersion: z14.number().int().nonnegative().optional(),
11937
+ error: z14.string().trim().min(1).optional(),
11655
11938
  recordedAt: IsoDateTimeSchema
11656
11939
  }).strict();
11657
11940
 
11658
11941
  // src/contracts/workflow-definition.ts
11659
- import { z as z14 } from "zod";
11660
- var ConductorTaskTypeSchema = z14.enum([
11942
+ import { z as z15 } from "zod";
11943
+ var ConductorTaskTypeSchema = z15.enum([
11661
11944
  "SIMPLE",
11662
11945
  "DYNAMIC",
11663
11946
  "FORK_JOIN",
@@ -11706,46 +11989,46 @@ var requiredTaskFields = {
11706
11989
  WAIT: ["inputParameters"],
11707
11990
  TERMINATE: ["inputParameters"]
11708
11991
  };
11709
- var ConductorTaskDefinitionSchema = z14.lazy(
11710
- () => z14.object({
11992
+ var ConductorTaskDefinitionSchema = z15.lazy(
11993
+ () => z15.object({
11711
11994
  name: ContractIdentifierSchema,
11712
11995
  taskReferenceName: ContractIdentifierSchema,
11713
11996
  type: ConductorTaskTypeSchema,
11714
- inputParameters: z14.record(z14.string(), JsonValueSchema).optional(),
11715
- startDelay: z14.number().int().nonnegative().optional(),
11716
- optional: z14.boolean().optional(),
11717
- asyncComplete: z14.boolean().optional(),
11718
- rateLimited: z14.boolean().optional(),
11719
- retryCount: z14.number().int().nonnegative().optional(),
11720
- taskDefinition: z14.record(z14.string(), JsonValueSchema).optional(),
11721
- loopCondition: z14.string().optional(),
11722
- loopOver: z14.array(ConductorTaskDefinitionSchema).optional(),
11723
- sink: z14.string().optional(),
11724
- forkTasks: z14.array(z14.array(ConductorTaskDefinitionSchema)).optional(),
11725
- joinOn: z14.array(ContractIdentifierSchema).optional(),
11726
- defaultExclusiveJoinTask: z14.array(ContractIdentifierSchema).optional(),
11727
- dynamicForkTasksParam: z14.string().optional(),
11728
- dynamicForkTasksInputParamName: z14.string().optional(),
11729
- subWorkflowParam: z14.object({
11730
- $ref: z14.string().optional(),
11997
+ inputParameters: z15.record(z15.string(), JsonValueSchema).optional(),
11998
+ startDelay: z15.number().int().nonnegative().optional(),
11999
+ optional: z15.boolean().optional(),
12000
+ asyncComplete: z15.boolean().optional(),
12001
+ rateLimited: z15.boolean().optional(),
12002
+ retryCount: z15.number().int().nonnegative().optional(),
12003
+ taskDefinition: z15.record(z15.string(), JsonValueSchema).optional(),
12004
+ loopCondition: z15.string().optional(),
12005
+ loopOver: z15.array(ConductorTaskDefinitionSchema).optional(),
12006
+ sink: z15.string().optional(),
12007
+ forkTasks: z15.array(z15.array(ConductorTaskDefinitionSchema)).optional(),
12008
+ joinOn: z15.array(ContractIdentifierSchema).optional(),
12009
+ defaultExclusiveJoinTask: z15.array(ContractIdentifierSchema).optional(),
12010
+ dynamicForkTasksParam: z15.string().optional(),
12011
+ dynamicForkTasksInputParamName: z15.string().optional(),
12012
+ subWorkflowParam: z15.object({
12013
+ $ref: z15.string().optional(),
11731
12014
  name: ContractIdentifierSchema,
11732
- version: z14.number().int().positive().optional(),
11733
- taskToDomain: z14.record(z14.string(), z14.string()).optional(),
11734
- workflowDefinition: z14.record(z14.string(), JsonValueSchema).optional()
12015
+ version: z15.number().int().positive().optional(),
12016
+ taskToDomain: z15.record(z15.string(), z15.string()).optional(),
12017
+ workflowDefinition: z15.record(z15.string(), JsonValueSchema).optional()
11735
12018
  }).strict().optional(),
11736
- decisionCases: z14.record(z14.string(), z14.array(ConductorTaskDefinitionSchema)).optional(),
11737
- defaultCase: z14.array(ConductorTaskDefinitionSchema).optional(),
11738
- evaluatorType: z14.enum(["value-param", "javascript", "graaljs"]).optional(),
11739
- expression: z14.string().optional(),
12019
+ decisionCases: z15.record(z15.string(), z15.array(ConductorTaskDefinitionSchema)).optional(),
12020
+ defaultCase: z15.array(ConductorTaskDefinitionSchema).optional(),
12021
+ evaluatorType: z15.enum(["value-param", "javascript", "graaljs"]).optional(),
12022
+ expression: z15.string().optional(),
11740
12023
  __alias: JsonValueSchema.optional(),
11741
- callbackFromWorker: z14.boolean().optional(),
12024
+ callbackFromWorker: z15.boolean().optional(),
11742
12025
  caseExpression: JsonValueSchema.optional(),
11743
- caseValueParam: z14.string().optional(),
11744
- dependencies: z14.array(JsonValueSchema).optional(),
11745
- description: z14.string().optional(),
11746
- dynamicTaskNameParam: z14.string().optional(),
11747
- joinMode: z14.string().optional(),
11748
- permissive: z14.boolean().optional(),
12026
+ caseValueParam: z15.string().optional(),
12027
+ dependencies: z15.array(JsonValueSchema).optional(),
12028
+ description: z15.string().optional(),
12029
+ dynamicTaskNameParam: z15.string().optional(),
12030
+ joinMode: z15.string().optional(),
12031
+ permissive: z15.boolean().optional(),
11749
12032
  joinTaskRef: ContractIdentifierSchema.optional(),
11750
12033
  forkTaskRef: ContractIdentifierSchema.optional()
11751
12034
  }).strict().superRefine((task, context) => {
@@ -11759,29 +12042,29 @@ var ConductorTaskDefinitionSchema = z14.lazy(
11759
12042
  }
11760
12043
  })
11761
12044
  );
11762
- var ConductorWorkflowDefinitionSchema = z14.object({
11763
- ownerApp: z14.string().optional(),
11764
- createTime: z14.number().int().nonnegative().optional(),
11765
- updateTime: z14.number().int().nonnegative().optional(),
11766
- createdBy: z14.string().optional(),
11767
- updatedBy: z14.string().optional(),
12045
+ var ConductorWorkflowDefinitionSchema = z15.object({
12046
+ ownerApp: z15.string().optional(),
12047
+ createTime: z15.number().int().nonnegative().optional(),
12048
+ updateTime: z15.number().int().nonnegative().optional(),
12049
+ createdBy: z15.string().optional(),
12050
+ updatedBy: z15.string().optional(),
11768
12051
  name: ContractIdentifierSchema,
11769
- description: z14.string().optional(),
11770
- version: z14.number().int().positive(),
11771
- tasks: z14.array(ConductorTaskDefinitionSchema),
11772
- inputParameters: z14.array(ContractIdentifierSchema),
11773
- outputParameters: z14.record(z14.string(), JsonValueSchema).optional(),
12052
+ description: z15.string().optional(),
12053
+ version: z15.number().int().positive(),
12054
+ tasks: z15.array(ConductorTaskDefinitionSchema),
12055
+ inputParameters: z15.array(ContractIdentifierSchema),
12056
+ outputParameters: z15.record(z15.string(), JsonValueSchema).optional(),
11774
12057
  failureWorkflow: ContractIdentifierSchema.optional(),
11775
- schemaVersion: z14.number().int().positive().optional(),
11776
- restartable: z14.boolean().optional(),
11777
- workflowStatusListenerEnabled: z14.boolean().optional(),
11778
- ownerEmail: z14.string().email().optional(),
11779
- timeoutPolicy: z14.enum(["TIME_OUT_WF", "ALERT_ONLY"]).optional(),
11780
- timeoutSeconds: z14.number().int().nonnegative(),
11781
- variables: z14.record(z14.string(), JsonValueSchema).optional(),
11782
- inputTemplate: z14.record(z14.string(), JsonValueSchema).optional()
11783
- }).strict();
11784
- var WorkflowParameterTypeSchema = z14.enum([
12058
+ schemaVersion: z15.number().int().positive().optional(),
12059
+ restartable: z15.boolean().optional(),
12060
+ workflowStatusListenerEnabled: z15.boolean().optional(),
12061
+ ownerEmail: z15.string().email().optional(),
12062
+ timeoutPolicy: z15.enum(["TIME_OUT_WF", "ALERT_ONLY"]).optional(),
12063
+ timeoutSeconds: z15.number().int().nonnegative(),
12064
+ variables: z15.record(z15.string(), JsonValueSchema).optional(),
12065
+ inputTemplate: z15.record(z15.string(), JsonValueSchema).optional()
12066
+ }).strict();
12067
+ var WorkflowParameterTypeSchema = z15.enum([
11785
12068
  "string",
11786
12069
  "file",
11787
12070
  "number",
@@ -11791,213 +12074,213 @@ var WorkflowParameterTypeSchema = z14.enum([
11791
12074
  "notice",
11792
12075
  "canvas-assist"
11793
12076
  ]);
11794
- var WorkflowConditionalStateSchema = z14.object({
11795
- conditions: z14.array(
11796
- z14.object({
11797
- field: z14.string(),
11798
- operator: z14.enum(["is", "isNot", "isGreaterThan", "isLessThan", "isGreaterThanOrEqual", "isLessThanOrEqual", "in", "notIn"]),
12077
+ var WorkflowConditionalStateSchema = z15.object({
12078
+ conditions: z15.array(
12079
+ z15.object({
12080
+ field: z15.string(),
12081
+ operator: z15.enum(["is", "isNot", "isGreaterThan", "isLessThan", "isGreaterThanOrEqual", "isLessThanOrEqual", "in", "notIn"]),
11799
12082
  value: JsonValueSchema
11800
12083
  }).strict()
11801
12084
  ),
11802
- logic: z14.enum(["AND", "OR"]).optional()
11803
- }).strict();
11804
- var ImageSelectMappingAppearanceSchema = z14.object({
11805
- columns: z14.number().int().min(1).max(4).optional(),
11806
- cardSize: z14.enum(["sm", "md", "lg"]).optional(),
11807
- imageAspectRatio: z14.enum(["square", "4:5", "3:4", "16:9"]).optional(),
11808
- gap: z14.enum(["sm", "md", "lg"]).optional(),
11809
- radius: z14.enum(["sm", "md", "lg", "xl"]).optional(),
11810
- borderStyle: z14.enum(["none", "soft", "strong"]).optional(),
11811
- borderWidth: z14.union([z14.literal(0), z14.literal(1), z14.literal(2)]).optional(),
11812
- enableScroll: z14.boolean().optional(),
11813
- maxHeight: z14.number().int().min(160).max(1200).optional(),
11814
- enableCollapse: z14.boolean().optional(),
11815
- visibleRows: z14.number().int().min(1).max(6).optional(),
11816
- hideLabel: z14.boolean().optional(),
11817
- hideDescription: z14.boolean().optional(),
11818
- hideValue: z14.boolean().optional()
11819
- }).strict();
11820
- var ComfyWorkflowPortBindingSchema = z14.object({
11821
- node: z14.union([z14.string(), z14.number()]),
11822
- key: z14.string().optional()
11823
- }).strict();
11824
- var WorkflowParameterTypeOptionsSchema = z14.object({
11825
- editor: z14.enum(["code", "codeNodeEditor", "htmlEditor", "sqlEditor", "json"]).optional(),
11826
- editorLanguage: z14.enum(["javaScript", "json", "python", "sql"]).optional(),
11827
- maxValue: z14.number().optional(),
11828
- minValue: z14.number().optional(),
11829
- max: z14.number().optional(),
11830
- min: z14.number().optional(),
11831
- multipleValues: z14.boolean().optional(),
11832
- numberPrecision: z14.number().nonnegative().optional(),
11833
- password: z14.boolean().optional(),
11834
- rows: z14.number().int().positive().optional(),
11835
- assetType: z14.string().optional(),
11836
- accept: z14.string().optional(),
11837
- maxSize: z14.number().positive().optional(),
11838
- fileType: z14.string().optional(),
11839
- aiMultiShotMainImageField: z14.string().optional(),
11840
- aiMultiShotWorkflowAppId: z14.string().optional(),
11841
- aiMultiShotWorkflowId: z14.string().optional(),
11842
- allowCustomInput: z14.boolean().optional(),
11843
- allowUploadVideo: z14.boolean().optional(),
11844
- aspectRatioField: z14.string().optional(),
11845
- assemblyValueType: z14.string().optional(),
11846
- autoAnalyzeDesignImage: z14.boolean().optional(),
11847
- autoDetectAspectRatio: z14.boolean().optional(),
11848
- autoIncrementId: z14.boolean().optional(),
12085
+ logic: z15.enum(["AND", "OR"]).optional()
12086
+ }).strict();
12087
+ var ImageSelectMappingAppearanceSchema = z15.object({
12088
+ columns: z15.number().int().min(1).max(4).optional(),
12089
+ cardSize: z15.enum(["sm", "md", "lg"]).optional(),
12090
+ imageAspectRatio: z15.enum(["square", "4:5", "3:4", "16:9"]).optional(),
12091
+ gap: z15.enum(["sm", "md", "lg"]).optional(),
12092
+ radius: z15.enum(["sm", "md", "lg", "xl"]).optional(),
12093
+ borderStyle: z15.enum(["none", "soft", "strong"]).optional(),
12094
+ borderWidth: z15.union([z15.literal(0), z15.literal(1), z15.literal(2)]).optional(),
12095
+ enableScroll: z15.boolean().optional(),
12096
+ maxHeight: z15.number().int().min(160).max(1200).optional(),
12097
+ enableCollapse: z15.boolean().optional(),
12098
+ visibleRows: z15.number().int().min(1).max(6).optional(),
12099
+ hideLabel: z15.boolean().optional(),
12100
+ hideDescription: z15.boolean().optional(),
12101
+ hideValue: z15.boolean().optional()
12102
+ }).strict();
12103
+ var ComfyWorkflowPortBindingSchema = z15.object({
12104
+ node: z15.union([z15.string(), z15.number()]),
12105
+ key: z15.string().optional()
12106
+ }).strict();
12107
+ var WorkflowParameterTypeOptionsSchema = z15.object({
12108
+ editor: z15.enum(["code", "codeNodeEditor", "htmlEditor", "sqlEditor", "json"]).optional(),
12109
+ editorLanguage: z15.enum(["javaScript", "json", "python", "sql"]).optional(),
12110
+ maxValue: z15.number().optional(),
12111
+ minValue: z15.number().optional(),
12112
+ max: z15.number().optional(),
12113
+ min: z15.number().optional(),
12114
+ multipleValues: z15.boolean().optional(),
12115
+ numberPrecision: z15.number().nonnegative().optional(),
12116
+ password: z15.boolean().optional(),
12117
+ rows: z15.number().int().positive().optional(),
12118
+ assetType: z15.string().optional(),
12119
+ accept: z15.string().optional(),
12120
+ maxSize: z15.number().positive().optional(),
12121
+ fileType: z15.string().optional(),
12122
+ aiMultiShotMainImageField: z15.string().optional(),
12123
+ aiMultiShotWorkflowAppId: z15.string().optional(),
12124
+ aiMultiShotWorkflowId: z15.string().optional(),
12125
+ allowCustomInput: z15.boolean().optional(),
12126
+ allowUploadVideo: z15.boolean().optional(),
12127
+ aspectRatioField: z15.string().optional(),
12128
+ assemblyValueType: z15.string().optional(),
12129
+ autoAnalyzeDesignImage: z15.boolean().optional(),
12130
+ autoDetectAspectRatio: z15.boolean().optional(),
12131
+ autoIncrementId: z15.boolean().optional(),
11849
12132
  comfyOptions: ComfyWorkflowPortBindingSchema.optional(),
11850
- comfyuiModelServerId: z14.string().optional(),
11851
- comfyuiModelTypeName: z14.string().optional(),
12133
+ comfyuiModelServerId: z15.string().optional(),
12134
+ comfyuiModelTypeName: z15.string().optional(),
11852
12135
  defaultCustomInput: JsonValueSchema.optional(),
11853
- descriptionAlert: z14.boolean().optional(),
11854
- disabled: z14.union([z14.boolean(), WorkflowConditionalStateSchema]).optional(),
11855
- editable: z14.union([z14.boolean(), WorkflowConditionalStateSchema]).optional(),
11856
- enableAiMultiShot: z14.boolean().optional(),
11857
- enableBooleanSwitchMode: z14.boolean().optional(),
11858
- enableClear: z14.boolean().optional(),
11859
- enableExpand: z14.boolean().optional(),
11860
- enableImageMask: z14.boolean().optional(),
11861
- enableImageOverlay: z14.boolean().optional(),
11862
- enablePopupEditor: z14.boolean().optional(),
11863
- enablePromptFontSize: z14.boolean().optional(),
11864
- enableReset: z14.boolean().optional(),
11865
- enableSelectItemIcon: z14.boolean().optional(),
11866
- enableSelectList: z14.boolean().optional(),
11867
- enableSelectSearch: z14.boolean().optional(),
11868
- enableSliderEnterMode: z14.boolean().optional(),
11869
- enableVoice: z14.boolean().optional(),
11870
- expandButtonText: z14.string().optional(),
11871
- foldUp: z14.boolean().optional(),
11872
- hidden: z14.boolean().optional(),
11873
- hideRequiredDot: z14.boolean().optional(),
11874
- inlineTitleWithSelect: z14.boolean().optional(),
11875
- knowledgeGraphButtonText: z14.string().optional(),
11876
- identifyAttributeCount: z14.union([z14.number().nonnegative(), z14.string().min(1), z14.object({ min: z14.number().nonnegative().optional(), max: z14.number().nonnegative().optional() }).strict()]).optional(),
11877
- identifyAttributes: z14.array(JsonValueSchema).optional(),
11878
- identifyMaxVariants: z14.number().int().nonnegative().optional(),
11879
- identifySourceField: z14.string().optional(),
11880
- imageOverlayBaseField: z14.string().optional(),
11881
- imageOverlayOverlayField: z14.string().optional(),
12136
+ descriptionAlert: z15.boolean().optional(),
12137
+ disabled: z15.union([z15.boolean(), WorkflowConditionalStateSchema]).optional(),
12138
+ editable: z15.union([z15.boolean(), WorkflowConditionalStateSchema]).optional(),
12139
+ enableAiMultiShot: z15.boolean().optional(),
12140
+ enableBooleanSwitchMode: z15.boolean().optional(),
12141
+ enableClear: z15.boolean().optional(),
12142
+ enableExpand: z15.boolean().optional(),
12143
+ enableImageMask: z15.boolean().optional(),
12144
+ enableImageOverlay: z15.boolean().optional(),
12145
+ enablePopupEditor: z15.boolean().optional(),
12146
+ enablePromptFontSize: z15.boolean().optional(),
12147
+ enableReset: z15.boolean().optional(),
12148
+ enableSelectItemIcon: z15.boolean().optional(),
12149
+ enableSelectList: z15.boolean().optional(),
12150
+ enableSelectSearch: z15.boolean().optional(),
12151
+ enableSliderEnterMode: z15.boolean().optional(),
12152
+ enableVoice: z15.boolean().optional(),
12153
+ expandButtonText: z15.string().optional(),
12154
+ foldUp: z15.boolean().optional(),
12155
+ hidden: z15.boolean().optional(),
12156
+ hideRequiredDot: z15.boolean().optional(),
12157
+ inlineTitleWithSelect: z15.boolean().optional(),
12158
+ knowledgeGraphButtonText: z15.string().optional(),
12159
+ identifyAttributeCount: z15.union([z15.number().nonnegative(), z15.string().min(1), z15.object({ min: z15.number().nonnegative().optional(), max: z15.number().nonnegative().optional() }).strict()]).optional(),
12160
+ identifyAttributes: z15.array(JsonValueSchema).optional(),
12161
+ identifyMaxVariants: z15.number().int().nonnegative().optional(),
12162
+ identifySourceField: z15.string().optional(),
12163
+ imageOverlayBaseField: z15.string().optional(),
12164
+ imageOverlayOverlayField: z15.string().optional(),
11882
12165
  imageSelectMappingAppearance: ImageSelectMappingAppearanceSchema.optional(),
11883
- imageSelectMappingColumns: z14.number().int().min(1).max(4).optional(),
11884
- imageSelectMappingEnableCustomUpload: z14.boolean().optional(),
11885
- imageSelectMappingHideLabel: z14.boolean().optional(),
11886
- imageSelectMappingHideLink: z14.boolean().optional(),
11887
- imageSelectMappingHideMeta: z14.boolean().optional(),
11888
- imageSelectMappingInlineUseLargeUploadBox: z14.boolean().optional(),
11889
- imageSelectMappingPromptField: z14.string().optional(),
11890
- imageSelectMappingTabOrder: z14.enum(["template-first", "upload-first"]).optional(),
11891
- imageSelectMappingTabWidthMode: z14.enum(["content", "fill"]).optional(),
12166
+ imageSelectMappingColumns: z15.number().int().min(1).max(4).optional(),
12167
+ imageSelectMappingEnableCustomUpload: z15.boolean().optional(),
12168
+ imageSelectMappingHideLabel: z15.boolean().optional(),
12169
+ imageSelectMappingHideLink: z15.boolean().optional(),
12170
+ imageSelectMappingHideMeta: z15.boolean().optional(),
12171
+ imageSelectMappingInlineUseLargeUploadBox: z15.boolean().optional(),
12172
+ imageSelectMappingPromptField: z15.string().optional(),
12173
+ imageSelectMappingTabOrder: z15.enum(["template-first", "upload-first"]).optional(),
12174
+ imageSelectMappingTabWidthMode: z15.enum(["content", "fill"]).optional(),
11892
12175
  imageSelectMappingTemplatePrompt: LocalizedTextSchema.optional(),
11893
12176
  imageSelectMappingTemplateTabTitle: LocalizedTextSchema.optional(),
11894
- imageSelectMappingUploadMode: z14.enum(["tabs", "inline"]).optional(),
12177
+ imageSelectMappingUploadMode: z15.enum(["tabs", "inline"]).optional(),
11895
12178
  imageSelectMappingUploadPrompt: LocalizedTextSchema.optional(),
11896
12179
  imageSelectMappingUploadTabTitle: LocalizedTextSchema.optional(),
11897
- endpoints: z14.array(JsonValueSchema).optional(),
11898
- examples: z14.array(JsonValueSchema).optional(),
12180
+ endpoints: z15.array(JsonValueSchema).optional(),
12181
+ examples: z15.array(JsonValueSchema).optional(),
11899
12182
  extraData: JsonValueSchema.optional(),
11900
12183
  layer: JsonValueSchema.optional(),
11901
12184
  map: JsonValueSchema.optional(),
11902
- multiline: z14.boolean().optional(),
11903
- options: z14.array(JsonValueSchema).optional(),
11904
- originalFiles: z14.array(JsonValueSchema).optional(),
12185
+ multiline: z15.boolean().optional(),
12186
+ options: z15.array(JsonValueSchema).optional(),
12187
+ originalFiles: z15.array(JsonValueSchema).optional(),
11905
12188
  placeholder: LocalizedTextSchema.optional(),
11906
- preserveSelectListOrder: z14.boolean().optional(),
12189
+ preserveSelectListOrder: z15.boolean().optional(),
11907
12190
  promptDictionary: JsonValueSchema.optional(),
11908
- promptFontSize: z14.number().optional(),
12191
+ promptFontSize: z15.number().optional(),
11909
12192
  promptModeToggle: JsonValueSchema.optional(),
11910
- requireActiveSelectFilter: z14.boolean().optional(),
11911
- restoreDefaultOnEmptyEnter: z14.boolean().optional(),
11912
- search: z14.boolean().optional(),
11913
- selectButtonEnableCollapse: z14.boolean().optional(),
11914
- selectButtonVisibleRows: z14.number().int().positive().optional(),
11915
- selectList: z14.array(JsonValueSchema).optional(),
11916
- selectListDisplayMode: z14.string().optional(),
11917
- selectPromptField: z14.string().optional(),
11918
- showAddLocalFileButton: z14.boolean().optional(),
11919
- singleColumn: z14.boolean().optional(),
11920
- singleFrameForMultiple: z14.boolean().optional(),
11921
- textSingleLine: z14.boolean().optional(),
11922
- textareaMiniHeight: z14.number().nonnegative().optional(),
12193
+ requireActiveSelectFilter: z15.boolean().optional(),
12194
+ restoreDefaultOnEmptyEnter: z15.boolean().optional(),
12195
+ search: z15.boolean().optional(),
12196
+ selectButtonEnableCollapse: z15.boolean().optional(),
12197
+ selectButtonVisibleRows: z15.number().int().positive().optional(),
12198
+ selectList: z15.array(JsonValueSchema).optional(),
12199
+ selectListDisplayMode: z15.string().optional(),
12200
+ selectPromptField: z15.string().optional(),
12201
+ showAddLocalFileButton: z15.boolean().optional(),
12202
+ singleColumn: z15.boolean().optional(),
12203
+ singleFrameForMultiple: z15.boolean().optional(),
12204
+ textSingleLine: z15.boolean().optional(),
12205
+ textareaMiniHeight: z15.number().nonnegative().optional(),
11923
12206
  tips: LocalizedTextSchema.optional(),
11924
12207
  visibility: JsonValueSchema.optional(),
11925
- voiceButtonText: z14.string().optional(),
11926
- designAnalysisFields: z14.array(JsonValueSchema).optional(),
11927
- designAnalysisFillStrategy: z14.string().optional(),
11928
- designAnalysisMaxFields: z14.number().int().nonnegative().optional(),
11929
- designAnalysisType: z14.string().optional(),
11930
- designAnalysisFieldPrefix: z14.string().optional()
11931
- }).strict();
11932
- var WorkflowParameterSchema = z14.lazy(
11933
- () => z14.object({
12208
+ voiceButtonText: z15.string().optional(),
12209
+ designAnalysisFields: z15.array(JsonValueSchema).optional(),
12210
+ designAnalysisFillStrategy: z15.string().optional(),
12211
+ designAnalysisMaxFields: z15.number().int().nonnegative().optional(),
12212
+ designAnalysisType: z15.string().optional(),
12213
+ designAnalysisFieldPrefix: z15.string().optional()
12214
+ }).strict();
12215
+ var WorkflowParameterSchema = z15.lazy(
12216
+ () => z15.object({
11934
12217
  displayName: LocalizedTextSchema,
11935
12218
  name: ContractIdentifierSchema,
11936
12219
  type: WorkflowParameterTypeSchema,
11937
12220
  typeOptions: WorkflowParameterTypeOptionsSchema.optional(),
11938
12221
  default: JsonValueSchema.optional(),
11939
12222
  description: LocalizedTextSchema.optional(),
11940
- hint: z14.string().optional(),
11941
- displayOptions: z14.object({
11942
- hide: z14.record(z14.string(), z14.array(JsonValueSchema)).optional(),
11943
- show: z14.record(z14.string(), z14.array(JsonValueSchema)).optional()
12223
+ hint: z15.string().optional(),
12224
+ displayOptions: z15.object({
12225
+ hide: z15.record(z15.string(), z15.array(JsonValueSchema)).optional(),
12226
+ show: z15.record(z15.string(), z15.array(JsonValueSchema)).optional()
11944
12227
  }).strict().optional(),
11945
- options: z14.array(z14.union([
11946
- z14.object({ name: LocalizedTextSchema, value: z14.union([z14.string(), z14.number(), z14.boolean()]), action: z14.string().optional(), description: LocalizedTextSchema.optional() }).strict(),
12228
+ options: z15.array(z15.union([
12229
+ z15.object({ name: LocalizedTextSchema, value: z15.union([z15.string(), z15.number(), z15.boolean()]), action: z15.string().optional(), description: LocalizedTextSchema.optional() }).strict(),
11947
12230
  WorkflowParameterSchema,
11948
- z14.object({ displayName: z14.string(), name: ContractIdentifierSchema, values: z14.array(WorkflowParameterSchema) }).strict()
12231
+ z15.object({ displayName: z15.string(), name: ContractIdentifierSchema, values: z15.array(WorkflowParameterSchema) }).strict()
11949
12232
  ])).optional(),
11950
12233
  placeholder: LocalizedTextSchema.optional(),
11951
- isNodeSetting: z14.boolean().optional(),
11952
- noDataExpression: z14.boolean().optional(),
11953
- required: z14.boolean().optional(),
11954
- example: z14.string().optional(),
11955
- extractValue: z14.object({ type: z14.literal("regex"), regex: z14.string() }).strict().optional(),
11956
- properties: z14.array(WorkflowParameterSchema).optional(),
11957
- assetType: z14.string().optional(),
11958
- flag: z14.boolean().optional(),
11959
- enableExpand: z14.boolean().optional(),
11960
- enableVoice: z14.boolean().optional(),
11961
- expandButtonText: z14.string().optional(),
11962
- knowledgeGraphButtonText: z14.string().optional(),
11963
- selectListDisplayMode: z14.string().optional(),
11964
- voiceButtonText: z14.string().optional()
12234
+ isNodeSetting: z15.boolean().optional(),
12235
+ noDataExpression: z15.boolean().optional(),
12236
+ required: z15.boolean().optional(),
12237
+ example: z15.string().optional(),
12238
+ extractValue: z15.object({ type: z15.literal("regex"), regex: z15.string() }).strict().optional(),
12239
+ properties: z15.array(WorkflowParameterSchema).optional(),
12240
+ assetType: z15.string().optional(),
12241
+ flag: z15.boolean().optional(),
12242
+ enableExpand: z15.boolean().optional(),
12243
+ enableVoice: z15.boolean().optional(),
12244
+ expandButtonText: z15.string().optional(),
12245
+ knowledgeGraphButtonText: z15.string().optional(),
12246
+ selectListDisplayMode: z15.string().optional(),
12247
+ voiceButtonText: z15.string().optional()
11965
12248
  }).strict()
11966
12249
  );
11967
- var WorkflowOutputBindingSchema = z14.object({ key: ContractIdentifierSchema, value: z14.string() }).strict();
11968
- var WorkflowNodeSchema = z14.object({
12250
+ var WorkflowOutputBindingSchema = z15.object({ key: ContractIdentifierSchema, value: z15.string() }).strict();
12251
+ var WorkflowNodeSchema = z15.object({
11969
12252
  id: ContractIdentifierSchema,
11970
12253
  referenceName: ContractIdentifierSchema,
11971
12254
  capabilityRef: ContractIdentifierSchema,
11972
12255
  capabilityVersion: ContractIdentifierSchema.optional(),
11973
- inputBindings: z14.record(z14.string(), JsonValueSchema).default({}),
11974
- configuration: z14.object({ executor: z14.literal("conductor"), task: ConductorTaskDefinitionSchema }).strict()
12256
+ inputBindings: z15.record(z15.string(), JsonValueSchema).default({}),
12257
+ configuration: z15.object({ executor: z15.literal("conductor"), task: ConductorTaskDefinitionSchema }).strict()
11975
12258
  }).strict().superRefine((node, context) => {
11976
12259
  if (node.configuration.task.taskReferenceName !== node.referenceName) context.addIssue({ code: "custom", path: ["configuration", "task", "taskReferenceName"], message: "Conductor task reference must match node referenceName." });
11977
12260
  if (node.configuration.task.name !== node.capabilityRef) context.addIssue({ code: "custom", path: ["configuration", "task", "name"], message: "Conductor task name must match node capabilityRef." });
11978
12261
  if (JSON.stringify(node.configuration.task.inputParameters ?? {}) !== JSON.stringify(node.inputBindings)) context.addIssue({ code: "custom", path: ["configuration", "task", "inputParameters"], message: "Conductor task inputs must match node inputBindings." });
11979
12262
  });
11980
- var WorkflowEdgeSchema = z14.object({
12263
+ var WorkflowEdgeSchema = z15.object({
11981
12264
  from: ContractIdentifierSchema,
11982
12265
  to: ContractIdentifierSchema,
11983
12266
  outputPort: ContractIdentifierSchema.optional(),
11984
12267
  inputPort: ContractIdentifierSchema.optional(),
11985
- condition: z14.string().optional()
12268
+ condition: z15.string().optional()
11986
12269
  }).strict();
11987
- var WorkflowTriggerSchema = z14.object({
12270
+ var WorkflowTriggerSchema = z15.object({
11988
12271
  id: ContractIdentifierSchema,
11989
- type: z14.enum(["manual", "schedule", "webhook", "event", "api"]),
11990
- enabled: z14.boolean(),
11991
- schedule: z14.object({ cron: z14.string().trim().min(1) }).strict().optional(),
11992
- webhook: z14.object({
11993
- path: z14.string().trim().min(1).optional(),
11994
- method: z14.enum(["GET", "POST", "PUT", "PATCH", "DELETE", "OPTIONS", "HEAD"]),
11995
- auth: z14.enum(["NONE", "BASIC", "CUSTOM_HEADER"]),
11996
- basicAuth: z14.object({ username: z14.string(), password: z14.string() }).strict().optional(),
11997
- headerAuth: z14.object({ name: z14.string().trim().min(1), value: z14.string() }).strict().optional(),
11998
- responseUntil: z14.enum(["WORKFLOW_STARTED", "WORKFLOW_COMPLETED_OR_FINISHED"])
12272
+ type: z15.enum(["manual", "schedule", "webhook", "event", "api"]),
12273
+ enabled: z15.boolean(),
12274
+ schedule: z15.object({ cron: z15.string().trim().min(1) }).strict().optional(),
12275
+ webhook: z15.object({
12276
+ path: z15.string().trim().min(1).optional(),
12277
+ method: z15.enum(["GET", "POST", "PUT", "PATCH", "DELETE", "OPTIONS", "HEAD"]),
12278
+ auth: z15.enum(["NONE", "BASIC", "CUSTOM_HEADER"]),
12279
+ basicAuth: z15.object({ username: z15.string(), password: z15.string() }).strict().optional(),
12280
+ headerAuth: z15.object({ name: z15.string().trim().min(1), value: z15.string() }).strict().optional(),
12281
+ responseUntil: z15.enum(["WORKFLOW_STARTED", "WORKFLOW_COMPLETED_OR_FINISHED"])
11999
12282
  }).strict().optional(),
12000
- event: z14.object({
12283
+ event: z15.object({
12001
12284
  eventType: ContractIdentifierSchema,
12002
12285
  configuration: JsonValueSchema.optional()
12003
12286
  }).strict().optional()
@@ -12006,63 +12289,63 @@ var WorkflowTriggerSchema = z14.object({
12006
12289
  if (trigger.type === "webhook" && !trigger.webhook) context.addIssue({ code: "custom", path: ["webhook"], message: "Webhook trigger requires webhook configuration." });
12007
12290
  if (trigger.type === "event" && !trigger.event) context.addIssue({ code: "custom", path: ["event"], message: "Event trigger requires event configuration." });
12008
12291
  });
12009
- var WorkflowValidationIssueSchema = z14.object({
12292
+ var WorkflowValidationIssueSchema = z15.object({
12010
12293
  taskReferenceName: ContractIdentifierSchema,
12011
- issueType: z14.enum(["ERROR", "WARNING"]),
12012
- detailReason: z14.object({ type: ContractIdentifierSchema, name: ContractIdentifierSchema, detailInformation: JsonValueSchema.optional() }).strict(),
12013
- humanMessage: z14.object({ en: z14.string(), zh: z14.string() }).strict()
12294
+ issueType: z15.enum(["ERROR", "WARNING"]),
12295
+ detailReason: z15.object({ type: ContractIdentifierSchema, name: ContractIdentifierSchema, detailInformation: JsonValueSchema.optional() }).strict(),
12296
+ humanMessage: z15.object({ en: z15.string(), zh: z15.string() }).strict()
12014
12297
  }).strict();
12015
- var WorkflowDefinitionSchema = z14.object({
12016
- contract: z14.literal("WorkflowDefinition"),
12298
+ var WorkflowDefinitionSchema = z15.object({
12299
+ contract: z15.literal("WorkflowDefinition"),
12017
12300
  metadata: ContractMetadataSchema.omit({ name: true, description: true, labels: true }).extend({
12018
12301
  name: LocalizedTextSchema,
12019
12302
  description: LocalizedTextSchema.optional(),
12020
- role: z14.enum(["workflow", "template"]),
12303
+ role: z15.enum(["workflow", "template"]),
12021
12304
  teamId: ContractIdentifierSchema,
12022
12305
  creatorRef: EntityRefSchema,
12023
- tags: z14.array(ContractIdentifierSchema).default([])
12306
+ tags: z15.array(ContractIdentifierSchema).default([])
12024
12307
  }).strict(),
12025
- revision: z14.object({
12026
- kind: z14.enum(["release", "backup"]),
12027
- recordVersion: z14.number().int().positive(),
12028
- sourceVersion: z14.number().int().positive().optional()
12308
+ revision: z15.object({
12309
+ kind: z15.enum(["release", "backup"]),
12310
+ recordVersion: z15.number().int().positive(),
12311
+ sourceVersion: z15.number().int().positive().optional()
12029
12312
  }).strict().superRefine((revision, context) => {
12030
12313
  if (revision.kind === "backup" && revision.sourceVersion === void 0) context.addIssue({ code: "custom", path: ["sourceVersion"], message: "Backup revisions require a sourceVersion." });
12031
12314
  }),
12032
- presentation: z14.object({ iconUrl: z14.string().optional(), thumbnail: z14.string().optional() }).strict(),
12033
- ports: z14.object({ inputs: z14.array(ContractPortSchema).default([]), outputs: z14.array(ContractPortSchema).default([]) }).strict(),
12034
- parameters: z14.object({ variables: z14.array(WorkflowParameterSchema).default([]), outputs: z14.array(WorkflowOutputBindingSchema).default([]) }).strict(),
12035
- graph: z14.object({ nodes: z14.array(WorkflowNodeSchema), edges: z14.array(WorkflowEdgeSchema).default([]) }).strict(),
12036
- execution: z14.object({
12037
- timeoutMs: z14.number().int().positive().optional(),
12038
- retries: z14.number().int().nonnegative().default(0),
12039
- concurrencyLimit: z14.number().int().positive().optional(),
12040
- idempotency: z14.enum(["required", "supported", "none"]),
12041
- rateLimit: z14.object({ enabled: z14.boolean(), max: z14.number().int().nonnegative(), windowMs: z14.number().int().nonnegative() }).strict().superRefine((rateLimit, context) => {
12315
+ presentation: z15.object({ iconUrl: z15.string().optional(), thumbnail: z15.string().optional() }).strict(),
12316
+ ports: z15.object({ inputs: z15.array(ContractPortSchema).default([]), outputs: z15.array(ContractPortSchema).default([]) }).strict(),
12317
+ parameters: z15.object({ variables: z15.array(WorkflowParameterSchema).default([]), outputs: z15.array(WorkflowOutputBindingSchema).default([]) }).strict(),
12318
+ graph: z15.object({ nodes: z15.array(WorkflowNodeSchema), edges: z15.array(WorkflowEdgeSchema).default([]) }).strict(),
12319
+ execution: z15.object({
12320
+ timeoutMs: z15.number().int().positive().optional(),
12321
+ retries: z15.number().int().nonnegative().default(0),
12322
+ concurrencyLimit: z15.number().int().positive().optional(),
12323
+ idempotency: z15.enum(["required", "supported", "none"]),
12324
+ rateLimit: z15.object({ enabled: z15.boolean(), max: z15.number().int().nonnegative(), windowMs: z15.number().int().nonnegative() }).strict().superRefine((rateLimit, context) => {
12042
12325
  if (rateLimit.enabled && (rateLimit.max === 0 || rateLimit.windowMs === 0)) context.addIssue({ code: "custom", message: "Enabled rate limit requires positive max and windowMs." });
12043
12326
  }).optional(),
12044
- conductor: z14.object({
12045
- ownerApp: z14.string().optional(),
12046
- createTime: z14.number().int().nonnegative().optional(),
12047
- updateTime: z14.number().int().nonnegative().optional(),
12048
- createdBy: z14.string().optional(),
12049
- updatedBy: z14.string().optional(),
12327
+ conductor: z15.object({
12328
+ ownerApp: z15.string().optional(),
12329
+ createTime: z15.number().int().nonnegative().optional(),
12330
+ updateTime: z15.number().int().nonnegative().optional(),
12331
+ createdBy: z15.string().optional(),
12332
+ updatedBy: z15.string().optional(),
12050
12333
  failureWorkflow: ContractIdentifierSchema.optional(),
12051
- schemaVersion: z14.number().int().positive().optional(),
12052
- restartable: z14.boolean().optional(),
12053
- workflowStatusListenerEnabled: z14.boolean().optional(),
12054
- ownerEmail: z14.string().email().optional(),
12055
- timeoutPolicy: z14.enum(["TIME_OUT_WF", "ALERT_ONLY"]).optional(),
12056
- variables: z14.record(z14.string(), JsonValueSchema).optional(),
12057
- inputTemplate: z14.record(z14.string(), JsonValueSchema).optional()
12334
+ schemaVersion: z15.number().int().positive().optional(),
12335
+ restartable: z15.boolean().optional(),
12336
+ workflowStatusListenerEnabled: z15.boolean().optional(),
12337
+ ownerEmail: z15.string().email().optional(),
12338
+ timeoutPolicy: z15.enum(["TIME_OUT_WF", "ALERT_ONLY"]).optional(),
12339
+ variables: z15.record(z15.string(), JsonValueSchema).optional(),
12340
+ inputTemplate: z15.record(z15.string(), JsonValueSchema).optional()
12058
12341
  }).strict()
12059
12342
  }).strict(),
12060
- triggers: z14.array(WorkflowTriggerSchema).default([]),
12061
- views: z14.array(z14.object({ pageRef: ContractIdentifierSchema, placement: ContractIdentifierSchema.optional() }).strict()).default([]),
12062
- dataContracts: z14.object({ reads: z14.array(ContractIdentifierSchema).default([]), writes: z14.array(ContractIdentifierSchema).default([]), emits: z14.array(ContractIdentifierSchema).default([]) }).strict(),
12063
- governance: z14.object({ activated: z14.boolean(), validated: z14.boolean(), validationIssues: z14.array(WorkflowValidationIssueSchema).default([]), hidden: z14.boolean().optional() }).strict(),
12064
- interfaces: z14.object({
12065
- openai: z14.object({ enabled: z14.boolean(), modelName: z14.string().trim().min(1).optional() }).strict(),
12343
+ triggers: z15.array(WorkflowTriggerSchema).default([]),
12344
+ views: z15.array(z15.object({ pageRef: ContractIdentifierSchema, placement: ContractIdentifierSchema.optional() }).strict()).default([]),
12345
+ dataContracts: z15.object({ reads: z15.array(ContractIdentifierSchema).default([]), writes: z15.array(ContractIdentifierSchema).default([]), emits: z15.array(ContractIdentifierSchema).default([]) }).strict(),
12346
+ governance: z15.object({ activated: z15.boolean(), validated: z15.boolean(), validationIssues: z15.array(WorkflowValidationIssueSchema).default([]), hidden: z15.boolean().optional() }).strict(),
12347
+ interfaces: z15.object({
12348
+ openai: z15.object({ enabled: z15.boolean(), modelName: z15.string().trim().min(1).optional() }).strict(),
12066
12349
  shortcutRef: EntityRefSchema.optional(),
12067
12350
  preferredAppId: ContractIdentifierSchema.optional()
12068
12351
  }).strict().superRefine((interfaces, context) => {
@@ -12081,21 +12364,21 @@ var WorkflowDefinitionSchema = z14.object({
12081
12364
  });
12082
12365
 
12083
12366
  // src/contracts/workflow-runtime.ts
12084
- import { z as z15 } from "zod";
12085
- var WorkflowCatalogEntrySchema = z15.object({
12086
- contract: z15.literal("WorkflowCatalogEntry"),
12367
+ import { z as z16 } from "zod";
12368
+ var WorkflowCatalogEntrySchema = z16.object({
12369
+ contract: z16.literal("WorkflowCatalogEntry"),
12087
12370
  workflowId: ContractIdentifierSchema,
12088
12371
  teamId: ContractIdentifierSchema,
12089
12372
  creatorRef: EntityRefSchema,
12090
12373
  currentDefinitionRef: EntityRefSchema,
12091
- lifecycle: z15.enum(["ACTIVE", "DELETED"]),
12092
- asset: z15.object({
12093
- preset: z15.boolean(),
12094
- marketplacePublished: z15.boolean(),
12374
+ lifecycle: z16.enum(["ACTIVE", "DELETED"]),
12375
+ asset: z16.object({
12376
+ preset: z16.boolean(),
12377
+ marketplacePublished: z16.boolean(),
12095
12378
  publishConfig: JsonObjectSchema.optional(),
12096
- sort: z15.number().int(),
12379
+ sort: z16.number().int(),
12097
12380
  forkFromRef: EntityRefSchema.optional(),
12098
- notAuthorized: z15.boolean()
12381
+ notAuthorized: z16.boolean()
12099
12382
  }).strict(),
12100
12383
  createdAt: IsoDateTimeSchema,
12101
12384
  updatedAt: IsoDateTimeSchema,
@@ -12130,17 +12413,17 @@ var WorkflowCatalogEntrySchema = z15.object({
12130
12413
  });
12131
12414
  }
12132
12415
  });
12133
- var WorkflowPublicationSchema = z15.object({
12134
- contract: z15.literal("WorkflowPublication"),
12416
+ var WorkflowPublicationSchema = z16.object({
12417
+ contract: z16.literal("WorkflowPublication"),
12135
12418
  publicationId: ContractIdentifierSchema,
12136
12419
  definitionRef: EntityRefSchema,
12137
12420
  runtimeDefinitionRef: EntityRefSchema,
12138
12421
  sourceHash: Sha256Schema,
12139
12422
  compiledHash: Sha256Schema,
12140
- status: z15.enum(["PENDING", "PUBLISHED", "FAILED", "RETIRED"]),
12423
+ status: z16.enum(["PENDING", "PUBLISHED", "FAILED", "RETIRED"]),
12141
12424
  publisherRef: EntityRefSchema,
12142
12425
  publishedAt: IsoDateTimeSchema.optional(),
12143
- failureReason: z15.string().trim().min(1).optional()
12426
+ failureReason: z16.string().trim().min(1).optional()
12144
12427
  }).strict().superRefine((publication, context) => {
12145
12428
  if (publication.definitionRef.kind !== "workflow-definition") {
12146
12429
  context.addIssue({
@@ -12171,12 +12454,12 @@ var WorkflowPublicationSchema = z15.object({
12171
12454
  });
12172
12455
  }
12173
12456
  });
12174
- var WorkflowCompletionCommitSchema = z15.object({
12175
- contract: z15.literal("WorkflowCompletionCommit"),
12457
+ var WorkflowCompletionCommitSchema = z16.object({
12458
+ contract: z16.literal("WorkflowCompletionCommit"),
12176
12459
  commitId: ContractIdentifierSchema,
12177
12460
  run: ApplicationRunSchema,
12178
- outputs: z15.array(OutputRecordSchema),
12179
- artifacts: z15.array(ArtifactManifestSchema),
12461
+ outputs: z16.array(OutputRecordSchema),
12462
+ artifacts: z16.array(ArtifactManifestSchema),
12180
12463
  lineage: LineageRecordSchema,
12181
12464
  completedAt: IsoDateTimeSchema
12182
12465
  }).strict().superRefine((commit, context) => {
@@ -12218,15 +12501,15 @@ var WorkflowCompletionCommitSchema = z15.object({
12218
12501
  }
12219
12502
  });
12220
12503
  });
12221
- var WorkflowCompletionReceiptSchema = z15.object({
12222
- contract: z15.literal("WorkflowCompletionReceipt"),
12504
+ var WorkflowCompletionReceiptSchema = z16.object({
12505
+ contract: z16.literal("WorkflowCompletionReceipt"),
12223
12506
  commitId: ContractIdentifierSchema,
12224
12507
  runRef: EntityRefSchema,
12225
- outputRefs: z15.array(EntityRefSchema),
12226
- artifactRefs: z15.array(EntityRefSchema),
12508
+ outputRefs: z16.array(EntityRefSchema),
12509
+ artifactRefs: z16.array(EntityRefSchema),
12227
12510
  contentHash: Sha256Schema,
12228
12511
  committedAt: IsoDateTimeSchema,
12229
- idempotentReplay: z15.boolean()
12512
+ idempotentReplay: z16.boolean()
12230
12513
  }).strict().superRefine((receipt, context) => {
12231
12514
  if (receipt.runRef.kind !== "application-run") {
12232
12515
  context.addIssue({
@@ -12290,6 +12573,9 @@ var canonicalContractSchemas = {
12290
12573
  "expiring-access-grant": ExpiringAccessGrantSchema,
12291
12574
  "hotword-body": HotwordBodySchema,
12292
12575
  "lineage-record": LineageRecordSchema,
12576
+ "menu-definition": MenuDefinitionSchema,
12577
+ "menu-definition-set": MenuDefinitionSetSchema,
12578
+ "menu-runtime-bundle": MenuRuntimeBundleSchema,
12293
12579
  "ontology-definition": OntologyDefinitionSchema,
12294
12580
  "overlay-node": OverlayNodeSchema,
12295
12581
  "output-record": OutputRecordSchema,
@@ -12379,6 +12665,15 @@ export {
12379
12665
  CapabilityRegistrySourceSchema,
12380
12666
  CapabilitySourceTypeSchema,
12381
12667
  ChangeImpactGraphSchema,
12668
+ CompiledMenuActionBehaviorSchema,
12669
+ CompiledMenuBehaviorSchema,
12670
+ CompiledMenuDividerNodeSchema,
12671
+ CompiledMenuGroupNodeSchema,
12672
+ CompiledMenuItemAccessSchema,
12673
+ CompiledMenuItemNodeSchema,
12674
+ CompiledMenuNavigateBehaviorSchema,
12675
+ CompiledMenuNodeSchema,
12676
+ CompiledMenuProjectionSchema,
12382
12677
  CompletionEventSchema,
12383
12678
  CompletionHeaderSchema,
12384
12679
  ConceptDefinitionSchema,
@@ -12406,6 +12701,27 @@ export {
12406
12701
  JsonObjectSchema,
12407
12702
  JsonValueSchema,
12408
12703
  LineageRecordSchema,
12704
+ MenuAccessRequirementSchema,
12705
+ MenuActionBehaviorSchema,
12706
+ MenuActionRegistrationSchema,
12707
+ MenuBehaviorSchema,
12708
+ MenuBoundedInputSchema,
12709
+ MenuContributionProviderRegistrationSchema,
12710
+ MenuContributionResultSchema,
12711
+ MenuContributionSchema,
12712
+ MenuDefinitionSchema,
12713
+ MenuDefinitionSetSchema,
12714
+ MenuDividerNodeSchema,
12715
+ MenuGroupNodeSchema,
12716
+ MenuItemNodeSchema,
12717
+ MenuNavigateBehaviorSchema,
12718
+ MenuNavigationTargetSchema,
12719
+ MenuNodeSchema,
12720
+ MenuPageRefSchema,
12721
+ MenuPageRegistrationSchema,
12722
+ MenuRuntimeBundleSchema,
12723
+ MenuRuntimeInputBindingSchema,
12724
+ MenuSourceInputBindingSchema,
12409
12725
  OntologyDefinitionSchema,
12410
12726
  OutputRecordSchema,
12411
12727
  OverlayNodeSchema,