@elevasis/sdk 1.45.0 → 1.46.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/dist/cli.cjs +36046 -31587
  2. package/dist/index.d.ts +833 -391
  3. package/dist/index.js +59 -59
  4. package/dist/node/index.d.ts +0 -84
  5. package/dist/node/index.js +2 -2
  6. package/dist/test-utils/index.d.ts +859 -331
  7. package/dist/test-utils/index.js +166 -134
  8. package/dist/worker/index.d.ts +897 -324
  9. package/dist/worker/index.js +68 -35
  10. package/package.json +4 -4
  11. package/reference/_navigation.md +11 -2
  12. package/reference/_reference-manifest.json +42 -0
  13. package/reference/core/exports.mdx +2 -0
  14. package/reference/packages/core/src/business/README.md +4 -1
  15. package/reference/packages/core/src/content/README.md +19 -0
  16. package/reference/packages/core/src/organization-model/README.md +148 -149
  17. package/reference/packages/core/src/organization-model/readiness/README.md +42 -0
  18. package/reference/packages/ui/src/features/README.md +28 -28
  19. package/reference/rules/shared-types.md +21 -0
  20. package/reference/scaffold/core/organization-graph.mdx +2 -3
  21. package/reference/scaffold/core/organization-model.mdx +2 -6
  22. package/reference/scaffold/operations/propagation-pipeline.md +15 -16
  23. package/reference/scaffold/operations/scaffold-maintenance.md +3 -2
  24. package/reference/scaffold/operations/workflow-recipes.md +2 -2
  25. package/reference/scaffold/recipes/customize-crm-actions.md +5 -5
  26. package/reference/scaffold/recipes/extend-content.md +265 -0
  27. package/reference/scaffold/recipes/extend-lead-gen.md +14 -16
  28. package/reference/scaffold/recipes/index.md +4 -1
  29. package/reference/scaffold/reference/contracts.md +18 -55
  30. package/reference/scaffold/reference/feature-registry.md +3 -0
  31. package/reference/scaffold/reference/glossary.md +1 -1
  32. package/reference/scaffold/ui/customization.md +2 -2
  33. package/reference/scaffold/ui/feature-shell.mdx +1 -3
  34. package/reference/sdk/cli-management.mdx +90 -5
  35. package/reference/sdk/cli.mdx +90 -13
  36. package/reference/sdk/framework/agent.mdx +6 -0
  37. package/reference/sdk/platform-tools/adapters-platform.mdx +3 -1
  38. package/reference/ui/exports.mdx +1 -0
package/dist/index.js CHANGED
@@ -576,10 +576,28 @@ z.record(z.string(), ActionSchema).refine((record) => Object.entries(record).eve
576
576
  message: "Each action entry id must match its map key"
577
577
  }).default({});
578
578
 
579
+ // ../core/src/organization-model/readiness/profile-registry.ts
580
+ var _builtInProfileValidators = /* @__PURE__ */ new Map();
581
+ function registerBuiltInReadinessProfile(profileId, registration) {
582
+ _builtInProfileValidators.set(profileId, registration);
583
+ }
584
+ function getBuiltInReadinessProfile(profileId) {
585
+ return _builtInProfileValidators.get(profileId);
586
+ }
587
+ var _interfaceMarkerResolvers = /* @__PURE__ */ new Map();
588
+ function interfaceMarkerKey(systemPath, interfaceKey) {
589
+ return `${systemPath}::${interfaceKey}`;
590
+ }
591
+ function registerReadinessInterfaceMarker(systemPath, interfaceKey, resolver) {
592
+ _interfaceMarkerResolvers.set(interfaceMarkerKey(systemPath, interfaceKey), resolver);
593
+ }
594
+ function resolveReadinessInterfaceMarker(model, systemPath, interfaceKey) {
595
+ return _interfaceMarkerResolvers.get(interfaceMarkerKey(systemPath, interfaceKey))?.(model);
596
+ }
597
+
579
598
  // ../core/src/organization-model/domains/systems.ts
580
599
  var SystemKindSchema = z.enum(["product", "operational", "platform", "diagnostic"]).meta({ label: "System kind", color: "blue" });
581
600
  var SystemLifecycleSchema = z.enum(["draft", "beta", "active", "deprecated", "archived"]).meta({ label: "Lifecycle", color: "teal" });
582
- var SystemStatusSchema = z.enum(["active", "deprecated", "archived"]).meta({ label: "Status", color: "teal" });
583
601
  var SystemIdSchema = ModelIdSchema;
584
602
  var SystemPathSchema = z.string().trim().min(1).regex(
585
603
  /^[a-z0-9][a-z0-9-]*(?:\.[a-z0-9][a-z0-9-]*)*$/,
@@ -593,8 +611,7 @@ z.string().trim().min(1).max(200).regex(
593
611
  var SystemUiSchema = z.object({
594
612
  path: PathSchema,
595
613
  surfaces: ReferenceIdsSchema,
596
- icon: IconNameSchema.optional(),
597
- order: z.number().int().optional()
614
+ icon: IconNameSchema.optional()
598
615
  });
599
616
  var SystemInterfaceKeySchema = ModelIdSchema;
600
617
  var SystemInterfaceLifecycleSchema = z.enum(["draft", "active", "disabled", "deprecated", "archived"]).meta({ label: "System interface lifecycle", color: "teal" });
@@ -654,24 +671,25 @@ var SystemApiInterfaceSchema = z.object({
654
671
  */
655
672
  readinessContract: SystemApiInterfaceReadinessContractSchema.optional()
656
673
  }).strict();
657
- var _profileRegistry = new Map(
658
- SYSTEM_INTERFACE_READINESS_PROFILES.map((profileId) => [
659
- profileId,
660
- { profileId, kind: "built-in" }
661
- ])
662
- );
674
+ var _customProfileIds = /* @__PURE__ */ new Set();
675
+ function isReservedPlatformProfileId(profileId) {
676
+ return SYSTEM_INTERFACE_READINESS_PROFILES.includes(profileId);
677
+ }
663
678
  function lookupReadinessProfile(profileId) {
664
- return _profileRegistry.get(profileId);
679
+ if (isReservedPlatformProfileId(profileId) || getBuiltInReadinessProfile(profileId) !== void 0) {
680
+ return { profileId, kind: "built-in" };
681
+ }
682
+ if (_customProfileIds.has(profileId)) return { profileId, kind: "custom" };
683
+ return void 0;
665
684
  }
666
685
  function registerReadinessProfile(profileId) {
667
- const existing = _profileRegistry.get(profileId);
686
+ const existing = lookupReadinessProfile(profileId);
668
687
  if (existing !== void 0) return existing;
669
- const entry = { profileId, kind: "custom" };
670
- _profileRegistry.set(profileId, entry);
671
- return entry;
688
+ _customProfileIds.add(profileId);
689
+ return { profileId, kind: "custom" };
672
690
  }
673
691
  function isBuiltInReadinessProfile(profileId) {
674
- return _profileRegistry.get(profileId)?.kind === "built-in";
692
+ return isReservedPlatformProfileId(profileId) || getBuiltInReadinessProfile(profileId) !== void 0;
675
693
  }
676
694
  var SystemInterfaceRefSchema = z.object({
677
695
  systemPath: SystemPathSchema,
@@ -703,7 +721,7 @@ var SystemEntrySchema = z.object({
703
721
  parentSystemId: SystemIdSchema.optional(),
704
722
  /** Optional UI presence. Systems without UI omit this. */
705
723
  ui: SystemUiSchema.optional(),
706
- /** Canonical lifecycle state. Replaces Feature.enabled/devOnly and System.status. */
724
+ /** Canonical lifecycle state. `beta` is what gates a System to dev-mode viewers. */
707
725
  lifecycle: SystemLifecycleSchema.optional(),
708
726
  /** Optional role responsible for this system. */
709
727
  responsibleRoleId: ModelIdSchema.meta({ ref: "role" }).optional(),
@@ -711,14 +729,10 @@ var SystemEntrySchema = z.object({
711
729
  governedByKnowledge: z.array(ModelIdSchema.meta({ ref: "knowledge" })).default([]).optional(),
712
730
  /** Optional actions this system exposes or consumes. */
713
731
  actions: z.array(ActionRefSchema).optional(),
714
- /** Optional operational policies that apply to this system. */
715
- policies: z.array(ModelIdSchema.meta({ ref: "policy" })).default([]).optional(),
716
732
  /** Optional goals this system contributes to. */
717
733
  drivesGoals: z.array(ModelIdSchema.meta({ ref: "goal" })).default([]).optional(),
718
734
  /** Thin API runtime-boundary marker. Readiness is derived from scoped resources and topology. */
719
735
  apiInterface: SystemApiInterfaceSchema.optional(),
720
- /** @deprecated Use lifecycle. Accepted for one publish cycle. */
721
- status: SystemStatusSchema.optional(),
722
736
  /** @deprecated Use ui.path. Kept for one-cycle Feature compatibility. */
723
737
  path: PathSchema.optional(),
724
738
  /** @deprecated Use ui.icon. Kept for one-cycle Feature compatibility. */
@@ -727,9 +741,6 @@ var SystemEntrySchema = z.object({
727
741
  uiPosition: UiPositionSchema.optional(),
728
742
  /** @deprecated Use lifecycle. */
729
743
  enabled: z.boolean().optional(),
730
- /** @deprecated Use lifecycle: "beta". */
731
- devOnly: z.boolean().optional(),
732
- requiresAdmin: z.boolean().optional(),
733
744
  /** Domain-map iteration order. Convention: multiples of 10 (10, 20, 30, ...) to allow easy insertion. */
734
745
  order: z.number(),
735
746
  /**
@@ -756,12 +767,9 @@ var SystemEntrySchema = z.object({
756
767
  }).strict().refine((system) => system.label !== void 0 || system.title !== void 0, {
757
768
  path: ["label"],
758
769
  message: "System must provide label or title"
759
- }).transform((system) => {
760
- const normalizedSystem = system.systems !== void 0 && system.subsystems === void 0 ? { ...system, subsystems: system.systems } : system;
761
- if (normalizedSystem.status === void 0) return normalizedSystem;
762
- console.warn("[organization-model] System.status is deprecated; use System.lifecycle instead.");
763
- return normalizedSystem.lifecycle === void 0 ? { ...normalizedSystem, lifecycle: normalizedSystem.status } : normalizedSystem;
764
- });
770
+ }).transform(
771
+ (system) => system.systems !== void 0 && system.subsystems === void 0 ? { ...system, subsystems: system.systems } : system
772
+ );
765
773
  z.record(z.string(), SystemEntrySchema).refine((record) => Object.entries(record).every(([key, entry]) => entry.id === key), {
766
774
  message: "Each system entry id must match its map key"
767
775
  }).default({});
@@ -936,7 +944,6 @@ var OmTopologyNodeKindSchema = z.enum([
936
944
  "system",
937
945
  "resource",
938
946
  "ontology",
939
- "policy",
940
947
  "role",
941
948
  "trigger",
942
949
  "humanCheckpoint",
@@ -947,7 +954,6 @@ var OmTopologyNodeRefSchema = z.discriminatedUnion("kind", [
947
954
  z.object({ kind: z.literal("system"), id: ModelIdSchema }),
948
955
  z.object({ kind: z.literal("resource"), id: ResourceIdSchema }),
949
956
  z.object({ kind: z.literal("ontology"), id: OntologyIdSchema }),
950
- z.object({ kind: z.literal("policy"), id: ModelIdSchema }),
951
957
  z.object({ kind: z.literal("role"), id: ModelIdSchema }),
952
958
  z.object({ kind: z.literal("trigger"), id: ResourceIdSchema }),
953
959
  z.object({ kind: z.literal("humanCheckpoint"), id: ResourceIdSchema }),
@@ -1020,7 +1026,6 @@ var topologyRef = {
1020
1026
  system: (system) => parseRef("system", idFrom(system)),
1021
1027
  resource: (resource) => parseRef("resource", idFrom(resource)),
1022
1028
  ontology: (record) => parseRef("ontology", idFrom(record)),
1023
- policy: (policy) => parseRef("policy", idFrom(policy)),
1024
1029
  role: (role) => parseRef("role", idFrom(role)),
1025
1030
  trigger: (trigger) => parseRef("trigger", idFrom(trigger)),
1026
1031
  humanCheckpoint: (checkpoint) => parseRef("humanCheckpoint", idFrom(checkpoint)),
@@ -1096,7 +1101,9 @@ function defineTopology(relationships) {
1096
1101
  const entries = Array.isArray(relationships) ? relationships.map((relationship, index) => [`relationship-${index + 1}`, relationship]) : Object.entries(relationships);
1097
1102
  return OmTopologyDomainSchema.parse({
1098
1103
  version: 1,
1099
- relationships: Object.fromEntries(entries.map(([key, relationship]) => [key, defineTopologyRelationship(relationship)]))
1104
+ relationships: Object.fromEntries(
1105
+ entries.map(([key, relationship]) => [key, defineTopologyRelationship(relationship)])
1106
+ )
1100
1107
  });
1101
1108
  }
1102
1109
 
@@ -1218,25 +1225,6 @@ var ProspectingBuildTemplateSchema = DisplayMetadataSchema.extend({
1218
1225
  steps: z.array(ProspectingBuildTemplateStepSchema).min(1)
1219
1226
  });
1220
1227
 
1221
- // ../core/src/organization-model/readiness/profile-registry.ts
1222
- var _builtInProfileValidators = /* @__PURE__ */ new Map();
1223
- function registerBuiltInReadinessProfile(profileId, registration) {
1224
- _builtInProfileValidators.set(profileId, registration);
1225
- }
1226
- function getBuiltInReadinessProfile(profileId) {
1227
- return _builtInProfileValidators.get(profileId);
1228
- }
1229
- var _interfaceMarkerResolvers = /* @__PURE__ */ new Map();
1230
- function interfaceMarkerKey(systemPath, interfaceKey) {
1231
- return `${systemPath}::${interfaceKey}`;
1232
- }
1233
- function registerReadinessInterfaceMarker(systemPath, interfaceKey, resolver) {
1234
- _interfaceMarkerResolvers.set(interfaceMarkerKey(systemPath, interfaceKey), resolver);
1235
- }
1236
- function resolveReadinessInterfaceMarker(model, systemPath, interfaceKey) {
1237
- return _interfaceMarkerResolvers.get(interfaceMarkerKey(systemPath, interfaceKey))?.(model);
1238
- }
1239
-
1240
1228
  // ../core/src/organization-model/readiness/engine.ts
1241
1229
  var SystemInterfaceReadinessError = class extends Error {
1242
1230
  code;
@@ -4593,14 +4581,12 @@ function addTopologyIssues(issues, orgName, deployment, organizationModel, syste
4593
4581
  const relationships = organizationModel.topology?.relationships;
4594
4582
  if (relationships === void 0) return;
4595
4583
  const rolesById = new Set(Object.keys(organizationModel.roles ?? {}));
4596
- const policiesById = new Set(Object.keys(organizationModel.policies ?? {}));
4597
4584
  const triggerIds = new Set(deployment.triggers?.map((trigger) => trigger.resourceId) ?? []);
4598
4585
  const humanCheckpointIds = new Set(deployment.humanCheckpoints?.map((checkpoint) => checkpoint.resourceId) ?? []);
4599
4586
  const externalResourceIds = new Set(deployment.externalResources?.map((external) => external.resourceId) ?? []);
4600
4587
  const topologyRefExists = (ref) => {
4601
4588
  if (ref.kind === "system") return systemsById.has(ref.id);
4602
4589
  if (ref.kind === "resource") return omResourcesById.has(ref.id);
4603
- if (ref.kind === "policy") return policiesById.has(ref.id);
4604
4590
  if (ref.kind === "role") return rolesById.has(ref.id);
4605
4591
  if (ref.kind === "trigger") return triggerIds.has(ref.id);
4606
4592
  if (ref.kind === "humanCheckpoint") return humanCheckpointIds.has(ref.id);
@@ -6919,28 +6905,42 @@ z.object({
6919
6905
  limit: z.number().int(),
6920
6906
  offset: z.number().int()
6921
6907
  });
6922
- var AcqArtifactOwnerKindSchema = z.enum(["company", "contact", "deal", "list", "list_member"]);
6908
+ var AcqArtifactOwnerKindSchema = z.enum(["company", "contact", "deal", "list", "list_member", "organization"]);
6923
6909
  z.object({
6924
6910
  ownerKind: AcqArtifactOwnerKindSchema,
6925
- ownerId: UuidSchema
6911
+ ownerId: UuidSchema.optional()
6926
6912
  }).strict();
6913
+ var PipelineIdSchema = z.string().trim().min(1).max(255);
6927
6914
  z.object({
6928
6915
  ownerKind: AcqArtifactOwnerKindSchema,
6929
- ownerId: UuidSchema,
6916
+ // Nullable + optional: an org-owned artifact (ownerKind: 'organization') has no
6917
+ // single owning entity row. See the comment on AcqArtifactOwnerKindSchema above.
6918
+ ownerId: UuidSchema.nullable().optional(),
6930
6919
  kind: z.string().trim().min(1).max(255),
6931
6920
  content: z.record(z.string(), z.unknown()),
6932
- sourceExecutionId: UuidSchema.optional()
6921
+ sourceExecutionId: UuidSchema.optional(),
6922
+ // Nullable + optional: acquisition's own artifacts (audits, proposals, ICP docs) predate the
6923
+ // pipeline concept and have none. `getActiveArtifact` filters on it, so any artifact meant to
6924
+ // be resolvable as "the active document for pipeline X" MUST supply it -- artifacts-platform-tool
6925
+ // .mdx Step 3 defect 1.
6926
+ pipelineId: PipelineIdSchema.nullable().optional()
6933
6927
  }).strict();
6934
6928
  var AcqArtifactResponseSchema = z.object({
6935
6929
  id: z.string(),
6936
6930
  organizationId: z.string(),
6937
6931
  ownerKind: z.string(),
6938
- ownerId: z.string(),
6932
+ // Nullable as of content-pipeline-foundation D14: an org-owned artifact has no owning entity row.
6933
+ // CreateArtifactRequestSchema already accepted a null ownerId; this response schema not doing so
6934
+ // was Step 3 defect 2 -- an org-owned artifact inserted fine and then failed serialization.
6935
+ ownerId: z.string().nullable(),
6939
6936
  kind: z.string(),
6937
+ pipelineId: z.string().nullable(),
6940
6938
  content: z.record(z.string(), z.unknown()),
6941
6939
  sourceExecutionId: z.string().nullable(),
6942
6940
  createdBy: z.string().nullable(),
6943
6941
  createdAt: z.string(),
6942
+ updatedAt: z.string(),
6943
+ isActive: z.boolean(),
6944
6944
  version: z.number().int()
6945
6945
  });
6946
6946
  z.object({
@@ -1656,7 +1656,6 @@ interface SystemEntry {
1656
1656
  path: string;
1657
1657
  surfaces: string[];
1658
1658
  icon?: string;
1659
- order?: number;
1660
1659
  };
1661
1660
  lifecycle?: 'draft' | 'beta' | 'active' | 'deprecated' | 'archived';
1662
1661
  responsibleRoleId?: string;
@@ -1666,17 +1665,12 @@ interface SystemEntry {
1666
1665
  intent: 'exposes' | 'consumes';
1667
1666
  invocation?: unknown;
1668
1667
  }[];
1669
- policies?: string[];
1670
1668
  drivesGoals?: string[];
1671
1669
  apiInterface?: z.infer<typeof SystemApiInterfaceSchema>;
1672
- /** @deprecated Use lifecycle. Accepted for one publish cycle. */
1673
- status?: 'active' | 'deprecated' | 'archived';
1674
1670
  path?: string;
1675
1671
  icon?: string;
1676
1672
  uiPosition?: 'sidebar-primary' | 'sidebar-bottom';
1677
1673
  enabled?: boolean;
1678
- devOnly?: boolean;
1679
- requiresAdmin?: boolean;
1680
1674
  order: number;
1681
1675
  config?: Record<string, JsonValue>;
1682
1676
  ontology?: OntologyScope;
@@ -1799,10 +1793,6 @@ declare const OrganizationModelSchema: z.ZodObject<{
1799
1793
  version: z.ZodDefault<z.ZodLiteral<1>>;
1800
1794
  lastModified: z.ZodString;
1801
1795
  }, z.core.$strip>>;
1802
- policies: z.ZodOptional<z.ZodObject<{
1803
- version: z.ZodDefault<z.ZodLiteral<1>>;
1804
- lastModified: z.ZodString;
1805
- }, z.core.$strip>>;
1806
1796
  knowledge: z.ZodOptional<z.ZodObject<{
1807
1797
  version: z.ZodDefault<z.ZodLiteral<1>>;
1808
1798
  lastModified: z.ZodString;
@@ -1860,10 +1850,6 @@ declare const OrganizationModelSchema: z.ZodObject<{
1860
1850
  version: 1;
1861
1851
  lastModified: string;
1862
1852
  };
1863
- policies: {
1864
- version: 1;
1865
- lastModified: string;
1866
- };
1867
1853
  knowledge: {
1868
1854
  version: 1;
1869
1855
  lastModified: string;
@@ -1921,10 +1907,6 @@ declare const OrganizationModelSchema: z.ZodObject<{
1921
1907
  version: 1;
1922
1908
  lastModified: string;
1923
1909
  } | undefined;
1924
- policies?: {
1925
- version: 1;
1926
- lastModified: string;
1927
- } | undefined;
1928
1910
  knowledge?: {
1929
1911
  version: 1;
1930
1912
  lastModified: string;
@@ -2518,9 +2500,6 @@ declare const OrganizationModelSchema: z.ZodObject<{
2518
2500
  }, z.core.$strip>, z.ZodObject<{
2519
2501
  kind: z.ZodLiteral<"ontology">;
2520
2502
  id: z.ZodString;
2521
- }, z.core.$strip>, z.ZodObject<{
2522
- kind: z.ZodLiteral<"policy">;
2523
- id: z.ZodString;
2524
2503
  }, z.core.$strip>, z.ZodObject<{
2525
2504
  kind: z.ZodLiteral<"role">;
2526
2505
  id: z.ZodString;
@@ -2548,9 +2527,6 @@ declare const OrganizationModelSchema: z.ZodObject<{
2548
2527
  }, z.core.$strip>, z.ZodObject<{
2549
2528
  kind: z.ZodLiteral<"ontology">;
2550
2529
  id: z.ZodString;
2551
- }, z.core.$strip>, z.ZodObject<{
2552
- kind: z.ZodLiteral<"policy">;
2553
- id: z.ZodString;
2554
2530
  }, z.core.$strip>, z.ZodObject<{
2555
2531
  kind: z.ZodLiteral<"role">;
2556
2532
  id: z.ZodString;
@@ -2632,66 +2608,6 @@ declare const OrganizationModelSchema: z.ZodObject<{
2632
2608
  label: z.ZodOptional<z.ZodString>;
2633
2609
  }, z.core.$strip>>>;
2634
2610
  }, z.core.$strip>>>>;
2635
- policies: z.ZodDefault<z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
2636
- id: z.ZodString;
2637
- order: z.ZodNumber;
2638
- label: z.ZodString;
2639
- description: z.ZodOptional<z.ZodString>;
2640
- trigger: z.ZodDiscriminatedUnion<[z.ZodObject<{
2641
- kind: z.ZodLiteral<"event">;
2642
- eventId: z.ZodString;
2643
- }, z.core.$strip>, z.ZodObject<{
2644
- kind: z.ZodLiteral<"action-invocation">;
2645
- actionId: z.ZodString;
2646
- }, z.core.$strip>, z.ZodObject<{
2647
- kind: z.ZodLiteral<"schedule">;
2648
- cron: z.ZodString;
2649
- }, z.core.$strip>, z.ZodObject<{
2650
- kind: z.ZodLiteral<"manual">;
2651
- }, z.core.$strip>], "kind">;
2652
- predicate: z.ZodDefault<z.ZodDiscriminatedUnion<[z.ZodObject<{
2653
- kind: z.ZodLiteral<"always">;
2654
- }, z.core.$strip>, z.ZodObject<{
2655
- kind: z.ZodLiteral<"expression">;
2656
- expression: z.ZodString;
2657
- }, z.core.$strip>, z.ZodObject<{
2658
- kind: z.ZodLiteral<"threshold">;
2659
- metric: z.ZodString;
2660
- operator: z.ZodEnum<{
2661
- lt: "lt";
2662
- lte: "lte";
2663
- eq: "eq";
2664
- gte: "gte";
2665
- gt: "gt";
2666
- }>;
2667
- value: z.ZodNumber;
2668
- }, z.core.$strip>], "kind">>;
2669
- actions: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
2670
- kind: z.ZodLiteral<"require-approval">;
2671
- roleId: z.ZodOptional<z.ZodString>;
2672
- }, z.core.$strip>, z.ZodObject<{
2673
- kind: z.ZodLiteral<"invoke-action">;
2674
- actionId: z.ZodString;
2675
- }, z.core.$strip>, z.ZodObject<{
2676
- kind: z.ZodLiteral<"notify-role">;
2677
- roleId: z.ZodString;
2678
- }, z.core.$strip>, z.ZodObject<{
2679
- kind: z.ZodLiteral<"block">;
2680
- }, z.core.$strip>], "kind">>;
2681
- appliesTo: z.ZodDefault<z.ZodObject<{
2682
- systemIds: z.ZodDefault<z.ZodArray<z.ZodString>>;
2683
- actionIds: z.ZodDefault<z.ZodArray<z.ZodString>>;
2684
- resourceIds: z.ZodDefault<z.ZodArray<z.ZodString>>;
2685
- roleIds: z.ZodDefault<z.ZodArray<z.ZodString>>;
2686
- }, z.core.$strip>>;
2687
- lifecycle: z.ZodDefault<z.ZodEnum<{
2688
- active: "active";
2689
- deprecated: "deprecated";
2690
- draft: "draft";
2691
- beta: "beta";
2692
- archived: "archived";
2693
- }>>;
2694
- }, z.core.$strip>>>>;
2695
2611
  knowledge: z.ZodDefault<z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
2696
2612
  id: z.ZodString;
2697
2613
  kind: z.ZodEnum<{
@@ -399,7 +399,7 @@ function stripToPlainText(body) {
399
399
  var BODIES_HEADER = [
400
400
  "// @generated by generate-knowledge-bodies -- DO NOT EDIT",
401
401
  "// Regenerate: pnpm scaffold:sync",
402
- "// Source: packages/elevasis-core/src/organization-model/index.ts",
402
+ "// Source: knowledge/nodes/**/*.mdx (see 'Regenerate' above)",
403
403
  "",
404
404
  "import { Fragment, jsx, jsxs } from 'react/jsx-runtime'",
405
405
  "import type { ComponentType } from 'react'",
@@ -447,7 +447,7 @@ async function generateKnowledgeBodies(nodes) {
447
447
  const bodiesTsx2 = [
448
448
  "// @generated by generate-knowledge-bodies -- DO NOT EDIT",
449
449
  "// Regenerate: pnpm scaffold:sync",
450
- "// Source: packages/elevasis-core/src/organization-model/index.ts",
450
+ "// Source: knowledge/nodes/**/*.mdx (see 'Regenerate' above)",
451
451
  "",
452
452
  "import type { ComponentType } from 'react'",
453
453
  "",