@elevasis/sdk 1.20.2 → 1.22.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 (164) hide show
  1. package/dist/cli.cjs +4220 -1583
  2. package/dist/index.d.ts +1035 -481
  3. package/dist/index.js +7381 -4187
  4. package/dist/node/index.d.ts +1 -3
  5. package/dist/node/index.js +40 -49
  6. package/dist/test-utils/index.d.ts +699 -123
  7. package/dist/test-utils/index.js +3826 -630
  8. package/dist/worker/index.js +3616 -442
  9. package/package.json +3 -3
  10. package/reference/_navigation.md +9 -7
  11. package/reference/_reference-manifest.json +1 -1
  12. package/reference/claude-config/hooks/post-edit-validate.mjs +98 -98
  13. package/reference/claude-config/hooks/scaffold-registry-reminder.mjs +188 -188
  14. package/reference/claude-config/hooks/tool-failure-recovery.mjs +73 -73
  15. package/reference/claude-config/registries/graph-skills.json +4 -4
  16. package/reference/claude-config/registries/knowledge-flags.json +0 -2
  17. package/reference/claude-config/rules/active-change-index.md +80 -80
  18. package/reference/claude-config/rules/agent-start-here.md +277 -273
  19. package/reference/claude-config/rules/deployment.md +57 -57
  20. package/reference/claude-config/rules/error-handling.md +56 -56
  21. package/reference/claude-config/rules/execution.md +40 -40
  22. package/reference/claude-config/rules/frontend.md +4 -4
  23. package/reference/claude-config/rules/observability.md +31 -31
  24. package/reference/claude-config/rules/operations.md +29 -17
  25. package/reference/claude-config/rules/organization-model.md +108 -40
  26. package/reference/claude-config/rules/organization-os.md +115 -113
  27. package/reference/claude-config/rules/package-taxonomy.md +33 -33
  28. package/reference/claude-config/rules/platform.md +42 -42
  29. package/reference/claude-config/rules/shared-types.md +49 -46
  30. package/reference/claude-config/rules/task-tracking.md +47 -47
  31. package/reference/claude-config/rules/ui.md +200 -200
  32. package/reference/claude-config/rules/vibe.md +235 -231
  33. package/reference/claude-config/scripts/statusline-command.js +18 -18
  34. package/reference/claude-config/settings.json +34 -34
  35. package/reference/claude-config/skills/deploy/{SKILL.md → skill.md} +156 -156
  36. package/reference/claude-config/skills/dsp/SKILL.md +66 -66
  37. package/reference/claude-config/skills/elevasis/SKILL.md +235 -235
  38. package/reference/claude-config/skills/explore/SKILL.md +6 -6
  39. package/reference/claude-config/skills/git-sync/SKILL.md +126 -126
  40. package/reference/claude-config/skills/knowledge/SKILL.md +330 -271
  41. package/reference/claude-config/skills/knowledge/operations/codify-level-a.md +100 -100
  42. package/reference/claude-config/skills/knowledge/operations/codify-level-b.md +159 -158
  43. package/reference/claude-config/skills/knowledge/operations/customers.md +109 -109
  44. package/reference/claude-config/skills/knowledge/operations/features.md +76 -113
  45. package/reference/claude-config/skills/knowledge/operations/goals.md +118 -118
  46. package/reference/claude-config/skills/knowledge/operations/identity.md +93 -93
  47. package/reference/claude-config/skills/knowledge/operations/labels.md +94 -89
  48. package/reference/claude-config/skills/knowledge/operations/offerings.md +109 -109
  49. package/reference/claude-config/skills/knowledge/operations/roles.md +99 -99
  50. package/reference/claude-config/skills/knowledge/operations/techStack.md +30 -30
  51. package/reference/claude-config/skills/project/SKILL.md +1088 -1088
  52. package/reference/claude-config/skills/run-ui/SKILL.md +73 -73
  53. package/reference/claude-config/skills/save/SKILL.md +3 -3
  54. package/reference/claude-config/skills/setup/SKILL.md +275 -275
  55. package/reference/claude-config/skills/status/SKILL.md +59 -59
  56. package/reference/claude-config/skills/submit-request/SKILL.md +180 -180
  57. package/reference/claude-config/skills/sync/SKILL.md +47 -47
  58. package/reference/claude-config/skills/tutorial/SKILL.md +259 -259
  59. package/reference/claude-config/skills/tutorial/progress-template.md +74 -74
  60. package/reference/claude-config/skills/tutorial/technical.md +1303 -1306
  61. package/reference/claude-config/skills/tutorial/vibe-coder.md +890 -890
  62. package/reference/claude-config/sync-notes/2026-04-22-git-sync-and-sync-notes.md +27 -27
  63. package/reference/claude-config/sync-notes/2026-04-22-lead-gen-deliverability-removal.md +30 -30
  64. package/reference/claude-config/sync-notes/2026-04-24-test-utils-and-template-tests.md +73 -73
  65. package/reference/claude-config/sync-notes/2026-04-24-ui-consolidation-and-sdk-cli-train.md +86 -86
  66. package/reference/claude-config/sync-notes/2026-04-25-auth-role-system-and-settings-roles.md +55 -55
  67. package/reference/claude-config/sync-notes/2026-04-27-crm-hitl-action-layer-cutover.md +97 -97
  68. package/reference/claude-config/sync-notes/2026-04-27-lead-gen-substrate-train.md +112 -112
  69. package/reference/claude-config/sync-notes/2026-04-29-crm-state-and-lead-gen-processing-status.md +93 -93
  70. package/reference/claude-config/sync-notes/2026-05-02-crm-ownership-next-action.md +58 -58
  71. package/reference/claude-config/sync-notes/2026-05-02-template-hardcode-workos-config.md +56 -56
  72. package/reference/claude-config/sync-notes/2026-05-04-elevasis-workspace.md +71 -71
  73. package/reference/claude-config/sync-notes/2026-05-04-knowledge-bundle.md +83 -83
  74. package/reference/claude-config/sync-notes/2026-05-04-template-skills-run-ui-and-tutorial.md +59 -59
  75. package/reference/claude-config/sync-notes/2026-05-05-list-builder.md +42 -42
  76. package/reference/claude-config/sync-notes/2026-05-06-crm-spine.md +60 -60
  77. package/reference/claude-config/sync-notes/2026-05-06-sdk-changes-release-train.md +37 -37
  78. package/reference/claude-config/sync-notes/2026-05-07-sdk-changes-release-train.md +34 -34
  79. package/reference/claude-config/sync-notes/2026-05-08-resource-governance-scaffold-guidance.md +38 -38
  80. package/reference/claude-config/sync-notes/2026-05-09-clients-domain.md +32 -32
  81. package/reference/claude-config/sync-notes/2026-05-09-command-system.md +33 -33
  82. package/reference/claude-config/sync-notes/2026-05-09-resource-governance-and-misc.md +69 -69
  83. package/reference/claude-config/sync-notes/2026-05-12-sdk-ready-release-train.md +30 -0
  84. package/reference/claude-config/sync-notes/2026-05-14-organization-model-ontology-refactor.md +42 -0
  85. package/reference/claude-config/sync-notes/README.md +43 -43
  86. package/reference/cli.mdx +808 -668
  87. package/reference/concepts.mdx +146 -146
  88. package/reference/deployment/api.mdx +297 -297
  89. package/reference/deployment/command-center.mdx +209 -209
  90. package/reference/deployment/index.mdx +195 -195
  91. package/reference/deployment/provided-features.mdx +107 -93
  92. package/reference/deployment/ui-execution.mdx +250 -250
  93. package/reference/examples/organization-model.ts +147 -84
  94. package/reference/framework/agent.mdx +156 -156
  95. package/reference/framework/index.mdx +195 -195
  96. package/reference/framework/interaction-guidance.mdx +182 -182
  97. package/reference/framework/memory.mdx +326 -326
  98. package/reference/framework/project-structure.mdx +282 -282
  99. package/reference/framework/tutorial-system.mdx +135 -135
  100. package/reference/getting-started.mdx +142 -142
  101. package/reference/index.mdx +106 -106
  102. package/reference/packages/core/src/README.md +14 -14
  103. package/reference/packages/core/src/business/README.md +2 -2
  104. package/reference/packages/core/src/knowledge/README.md +33 -32
  105. package/reference/packages/core/src/organization-model/README.md +149 -109
  106. package/reference/packages/core/src/test-utils/README.md +37 -37
  107. package/reference/packages/ui/src/api/README.md +18 -18
  108. package/reference/packages/ui/src/app/README.md +24 -24
  109. package/reference/packages/ui/src/auth/README.md +18 -18
  110. package/reference/packages/ui/src/components/README.md +24 -24
  111. package/reference/packages/ui/src/execution/README.md +16 -16
  112. package/reference/packages/ui/src/features/README.md +28 -28
  113. package/reference/packages/ui/src/graph/README.md +16 -16
  114. package/reference/packages/ui/src/hooks/README.md +23 -23
  115. package/reference/packages/ui/src/initialization/README.md +19 -19
  116. package/reference/packages/ui/src/knowledge/README.md +31 -31
  117. package/reference/packages/ui/src/organization/README.md +18 -18
  118. package/reference/packages/ui/src/profile/README.md +19 -19
  119. package/reference/packages/ui/src/provider/README.md +32 -32
  120. package/reference/packages/ui/src/router/README.md +18 -18
  121. package/reference/packages/ui/src/sse/README.md +13 -13
  122. package/reference/packages/ui/src/test-utils/README.md +7 -7
  123. package/reference/packages/ui/src/theme/README.md +23 -23
  124. package/reference/packages/ui/src/theme/presets/README.md +19 -19
  125. package/reference/packages/ui/src/types/README.md +16 -16
  126. package/reference/packages/ui/src/utils/README.md +18 -18
  127. package/reference/packages/ui/src/zustand/README.md +18 -18
  128. package/reference/platform-tools/adapters-integration.mdx +301 -301
  129. package/reference/platform-tools/adapters-platform.mdx +553 -553
  130. package/reference/platform-tools/index.mdx +217 -217
  131. package/reference/platform-tools/type-safety.mdx +82 -82
  132. package/reference/resources/index.mdx +349 -349
  133. package/reference/resources/patterns.mdx +449 -449
  134. package/reference/resources/types.mdx +116 -116
  135. package/reference/roadmap.mdx +165 -165
  136. package/reference/runtime.mdx +173 -173
  137. package/reference/scaffold/core/organization-graph.mdx +110 -89
  138. package/reference/scaffold/core/organization-model.mdx +226 -171
  139. package/reference/scaffold/index.mdx +67 -67
  140. package/reference/scaffold/operations/propagation-pipeline.md +77 -77
  141. package/reference/scaffold/operations/scaffold-maintenance.md +10 -10
  142. package/reference/scaffold/operations/workflow-recipes.md +138 -138
  143. package/reference/scaffold/recipes/add-a-feature.md +310 -88
  144. package/reference/scaffold/recipes/add-a-resource.md +137 -117
  145. package/reference/scaffold/recipes/customize-crm-actions.md +439 -439
  146. package/reference/scaffold/recipes/customize-knowledge-browser.md +384 -0
  147. package/reference/scaffold/recipes/customize-organization-model.md +281 -118
  148. package/reference/scaffold/recipes/extend-a-base-entity.md +8 -8
  149. package/reference/scaffold/recipes/extend-crm.md +40 -39
  150. package/reference/scaffold/recipes/extend-lead-gen.md +400 -401
  151. package/reference/scaffold/recipes/gate-by-feature-or-admin.md +118 -114
  152. package/reference/scaffold/recipes/index.md +47 -46
  153. package/reference/scaffold/recipes/query-the-knowledge-graph.md +227 -0
  154. package/reference/scaffold/reference/contracts.md +2389 -2121
  155. package/reference/scaffold/reference/feature-registry.md +9 -20
  156. package/reference/scaffold/reference/glossary.md +76 -76
  157. package/reference/scaffold/ui/composition-extensibility.mdx +233 -233
  158. package/reference/scaffold/ui/customization.md +243 -243
  159. package/reference/scaffold/ui/feature-flags-and-gating.md +46 -46
  160. package/reference/scaffold/ui/feature-shell.mdx +72 -72
  161. package/reference/scaffold/ui/recipes.md +221 -213
  162. package/reference/spine/spine-primer.md +96 -96
  163. package/reference/templates/index.mdx +47 -47
  164. package/reference/troubleshooting.mdx +223 -223
package/dist/index.d.ts CHANGED
@@ -503,125 +503,512 @@ interface ModelConfig {
503
503
  }
504
504
 
505
505
  declare const ResourceGovernanceStatusSchema: z.ZodEnum<{
506
- active: "active";
507
506
  deprecated: "deprecated";
507
+ active: "active";
508
508
  archived: "archived";
509
509
  }>;
510
510
  declare const WorkflowResourceEntrySchema: z.ZodObject<{
511
511
  id: z.ZodString;
512
- systemId: z.ZodString;
512
+ order: z.ZodDefault<z.ZodNumber>;
513
+ systemPath: z.ZodString;
513
514
  ownerRoleId: z.ZodOptional<z.ZodString>;
514
515
  status: z.ZodEnum<{
515
- active: "active";
516
516
  deprecated: "deprecated";
517
+ active: "active";
517
518
  archived: "archived";
518
519
  }>;
520
+ ontology: z.ZodOptional<z.ZodObject<{
521
+ implements: z.ZodOptional<z.ZodArray<z.ZodString>>;
522
+ reads: z.ZodOptional<z.ZodArray<z.ZodString>>;
523
+ writes: z.ZodOptional<z.ZodArray<z.ZodString>>;
524
+ usesCatalogs: z.ZodOptional<z.ZodArray<z.ZodString>>;
525
+ emits: z.ZodOptional<z.ZodArray<z.ZodString>>;
526
+ }, z.core.$strip>>;
527
+ codeRefs: z.ZodDefault<z.ZodArray<z.ZodObject<{
528
+ path: z.ZodString;
529
+ role: z.ZodEnum<{
530
+ schema: "schema";
531
+ config: "config";
532
+ entrypoint: "entrypoint";
533
+ handler: "handler";
534
+ test: "test";
535
+ docs: "docs";
536
+ }>;
537
+ symbol: z.ZodOptional<z.ZodString>;
538
+ description: z.ZodOptional<z.ZodString>;
539
+ }, z.core.$strip>>>;
519
540
  kind: z.ZodLiteral<"workflow">;
520
- capabilityKey: z.ZodOptional<z.ZodString>;
541
+ actionKey: z.ZodOptional<z.ZodString>;
542
+ emits: z.ZodOptional<z.ZodArray<z.ZodObject<{
543
+ eventKey: z.ZodString;
544
+ label: z.ZodString;
545
+ payloadSchema: z.ZodOptional<z.ZodString>;
546
+ lifecycle: z.ZodOptional<z.ZodEnum<{
547
+ deprecated: "deprecated";
548
+ draft: "draft";
549
+ beta: "beta";
550
+ active: "active";
551
+ archived: "archived";
552
+ }>>;
553
+ }, z.core.$strip>>>;
521
554
  }, z.core.$strip>;
522
555
  declare const AgentResourceEntrySchema: z.ZodObject<{
523
556
  id: z.ZodString;
524
- systemId: z.ZodString;
557
+ order: z.ZodDefault<z.ZodNumber>;
558
+ systemPath: z.ZodString;
525
559
  ownerRoleId: z.ZodOptional<z.ZodString>;
526
560
  status: z.ZodEnum<{
527
- active: "active";
528
561
  deprecated: "deprecated";
562
+ active: "active";
529
563
  archived: "archived";
530
564
  }>;
565
+ ontology: z.ZodOptional<z.ZodObject<{
566
+ implements: z.ZodOptional<z.ZodArray<z.ZodString>>;
567
+ reads: z.ZodOptional<z.ZodArray<z.ZodString>>;
568
+ writes: z.ZodOptional<z.ZodArray<z.ZodString>>;
569
+ usesCatalogs: z.ZodOptional<z.ZodArray<z.ZodString>>;
570
+ emits: z.ZodOptional<z.ZodArray<z.ZodString>>;
571
+ }, z.core.$strip>>;
572
+ codeRefs: z.ZodDefault<z.ZodArray<z.ZodObject<{
573
+ path: z.ZodString;
574
+ role: z.ZodEnum<{
575
+ schema: "schema";
576
+ config: "config";
577
+ entrypoint: "entrypoint";
578
+ handler: "handler";
579
+ test: "test";
580
+ docs: "docs";
581
+ }>;
582
+ symbol: z.ZodOptional<z.ZodString>;
583
+ description: z.ZodOptional<z.ZodString>;
584
+ }, z.core.$strip>>>;
531
585
  kind: z.ZodLiteral<"agent">;
532
586
  agentKind: z.ZodEnum<{
587
+ platform: "platform";
533
588
  orchestrator: "orchestrator";
534
589
  specialist: "specialist";
535
590
  utility: "utility";
536
- system: "system";
537
591
  }>;
538
592
  actsAsRoleId: z.ZodOptional<z.ZodString>;
539
593
  sessionCapable: z.ZodBoolean;
594
+ invocations: z.ZodDefault<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
595
+ kind: z.ZodLiteral<"slash-command">;
596
+ command: z.ZodString;
597
+ toolFactory: z.ZodOptional<z.ZodString>;
598
+ }, z.core.$strip>, z.ZodObject<{
599
+ kind: z.ZodLiteral<"mcp-tool">;
600
+ server: z.ZodString;
601
+ name: z.ZodString;
602
+ }, z.core.$strip>, z.ZodObject<{
603
+ kind: z.ZodLiteral<"api-endpoint">;
604
+ method: z.ZodEnum<{
605
+ GET: "GET";
606
+ POST: "POST";
607
+ PATCH: "PATCH";
608
+ DELETE: "DELETE";
609
+ }>;
610
+ path: z.ZodString;
611
+ requestSchema: z.ZodOptional<z.ZodString>;
612
+ responseSchema: z.ZodOptional<z.ZodString>;
613
+ }, z.core.$strip>, z.ZodObject<{
614
+ kind: z.ZodLiteral<"script-execution">;
615
+ resourceId: z.ZodString;
616
+ }, z.core.$strip>], "kind">>>;
617
+ emits: z.ZodOptional<z.ZodArray<z.ZodObject<{
618
+ eventKey: z.ZodString;
619
+ label: z.ZodString;
620
+ payloadSchema: z.ZodOptional<z.ZodString>;
621
+ lifecycle: z.ZodOptional<z.ZodEnum<{
622
+ deprecated: "deprecated";
623
+ draft: "draft";
624
+ beta: "beta";
625
+ active: "active";
626
+ archived: "archived";
627
+ }>>;
628
+ }, z.core.$strip>>>;
540
629
  }, z.core.$strip>;
541
630
  declare const ResourceEntrySchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
542
631
  id: z.ZodString;
543
- systemId: z.ZodString;
632
+ order: z.ZodDefault<z.ZodNumber>;
633
+ systemPath: z.ZodString;
544
634
  ownerRoleId: z.ZodOptional<z.ZodString>;
545
635
  status: z.ZodEnum<{
546
- active: "active";
547
636
  deprecated: "deprecated";
637
+ active: "active";
548
638
  archived: "archived";
549
639
  }>;
640
+ ontology: z.ZodOptional<z.ZodObject<{
641
+ implements: z.ZodOptional<z.ZodArray<z.ZodString>>;
642
+ reads: z.ZodOptional<z.ZodArray<z.ZodString>>;
643
+ writes: z.ZodOptional<z.ZodArray<z.ZodString>>;
644
+ usesCatalogs: z.ZodOptional<z.ZodArray<z.ZodString>>;
645
+ emits: z.ZodOptional<z.ZodArray<z.ZodString>>;
646
+ }, z.core.$strip>>;
647
+ codeRefs: z.ZodDefault<z.ZodArray<z.ZodObject<{
648
+ path: z.ZodString;
649
+ role: z.ZodEnum<{
650
+ schema: "schema";
651
+ config: "config";
652
+ entrypoint: "entrypoint";
653
+ handler: "handler";
654
+ test: "test";
655
+ docs: "docs";
656
+ }>;
657
+ symbol: z.ZodOptional<z.ZodString>;
658
+ description: z.ZodOptional<z.ZodString>;
659
+ }, z.core.$strip>>>;
550
660
  kind: z.ZodLiteral<"workflow">;
551
- capabilityKey: z.ZodOptional<z.ZodString>;
661
+ actionKey: z.ZodOptional<z.ZodString>;
662
+ emits: z.ZodOptional<z.ZodArray<z.ZodObject<{
663
+ eventKey: z.ZodString;
664
+ label: z.ZodString;
665
+ payloadSchema: z.ZodOptional<z.ZodString>;
666
+ lifecycle: z.ZodOptional<z.ZodEnum<{
667
+ deprecated: "deprecated";
668
+ draft: "draft";
669
+ beta: "beta";
670
+ active: "active";
671
+ archived: "archived";
672
+ }>>;
673
+ }, z.core.$strip>>>;
552
674
  }, z.core.$strip>, z.ZodObject<{
553
675
  id: z.ZodString;
554
- systemId: z.ZodString;
676
+ order: z.ZodDefault<z.ZodNumber>;
677
+ systemPath: z.ZodString;
555
678
  ownerRoleId: z.ZodOptional<z.ZodString>;
556
679
  status: z.ZodEnum<{
557
- active: "active";
558
680
  deprecated: "deprecated";
681
+ active: "active";
559
682
  archived: "archived";
560
683
  }>;
684
+ ontology: z.ZodOptional<z.ZodObject<{
685
+ implements: z.ZodOptional<z.ZodArray<z.ZodString>>;
686
+ reads: z.ZodOptional<z.ZodArray<z.ZodString>>;
687
+ writes: z.ZodOptional<z.ZodArray<z.ZodString>>;
688
+ usesCatalogs: z.ZodOptional<z.ZodArray<z.ZodString>>;
689
+ emits: z.ZodOptional<z.ZodArray<z.ZodString>>;
690
+ }, z.core.$strip>>;
691
+ codeRefs: z.ZodDefault<z.ZodArray<z.ZodObject<{
692
+ path: z.ZodString;
693
+ role: z.ZodEnum<{
694
+ schema: "schema";
695
+ config: "config";
696
+ entrypoint: "entrypoint";
697
+ handler: "handler";
698
+ test: "test";
699
+ docs: "docs";
700
+ }>;
701
+ symbol: z.ZodOptional<z.ZodString>;
702
+ description: z.ZodOptional<z.ZodString>;
703
+ }, z.core.$strip>>>;
561
704
  kind: z.ZodLiteral<"agent">;
562
705
  agentKind: z.ZodEnum<{
706
+ platform: "platform";
563
707
  orchestrator: "orchestrator";
564
708
  specialist: "specialist";
565
709
  utility: "utility";
566
- system: "system";
567
710
  }>;
568
711
  actsAsRoleId: z.ZodOptional<z.ZodString>;
569
712
  sessionCapable: z.ZodBoolean;
713
+ invocations: z.ZodDefault<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
714
+ kind: z.ZodLiteral<"slash-command">;
715
+ command: z.ZodString;
716
+ toolFactory: z.ZodOptional<z.ZodString>;
717
+ }, z.core.$strip>, z.ZodObject<{
718
+ kind: z.ZodLiteral<"mcp-tool">;
719
+ server: z.ZodString;
720
+ name: z.ZodString;
721
+ }, z.core.$strip>, z.ZodObject<{
722
+ kind: z.ZodLiteral<"api-endpoint">;
723
+ method: z.ZodEnum<{
724
+ GET: "GET";
725
+ POST: "POST";
726
+ PATCH: "PATCH";
727
+ DELETE: "DELETE";
728
+ }>;
729
+ path: z.ZodString;
730
+ requestSchema: z.ZodOptional<z.ZodString>;
731
+ responseSchema: z.ZodOptional<z.ZodString>;
732
+ }, z.core.$strip>, z.ZodObject<{
733
+ kind: z.ZodLiteral<"script-execution">;
734
+ resourceId: z.ZodString;
735
+ }, z.core.$strip>], "kind">>>;
736
+ emits: z.ZodOptional<z.ZodArray<z.ZodObject<{
737
+ eventKey: z.ZodString;
738
+ label: z.ZodString;
739
+ payloadSchema: z.ZodOptional<z.ZodString>;
740
+ lifecycle: z.ZodOptional<z.ZodEnum<{
741
+ deprecated: "deprecated";
742
+ draft: "draft";
743
+ beta: "beta";
744
+ active: "active";
745
+ archived: "archived";
746
+ }>>;
747
+ }, z.core.$strip>>>;
570
748
  }, z.core.$strip>, z.ZodObject<{
571
749
  id: z.ZodString;
572
- systemId: z.ZodString;
750
+ order: z.ZodDefault<z.ZodNumber>;
751
+ systemPath: z.ZodString;
573
752
  ownerRoleId: z.ZodOptional<z.ZodString>;
574
753
  status: z.ZodEnum<{
575
- active: "active";
576
754
  deprecated: "deprecated";
755
+ active: "active";
577
756
  archived: "archived";
578
757
  }>;
758
+ ontology: z.ZodOptional<z.ZodObject<{
759
+ implements: z.ZodOptional<z.ZodArray<z.ZodString>>;
760
+ reads: z.ZodOptional<z.ZodArray<z.ZodString>>;
761
+ writes: z.ZodOptional<z.ZodArray<z.ZodString>>;
762
+ usesCatalogs: z.ZodOptional<z.ZodArray<z.ZodString>>;
763
+ emits: z.ZodOptional<z.ZodArray<z.ZodString>>;
764
+ }, z.core.$strip>>;
765
+ codeRefs: z.ZodDefault<z.ZodArray<z.ZodObject<{
766
+ path: z.ZodString;
767
+ role: z.ZodEnum<{
768
+ schema: "schema";
769
+ config: "config";
770
+ entrypoint: "entrypoint";
771
+ handler: "handler";
772
+ test: "test";
773
+ docs: "docs";
774
+ }>;
775
+ symbol: z.ZodOptional<z.ZodString>;
776
+ description: z.ZodOptional<z.ZodString>;
777
+ }, z.core.$strip>>>;
579
778
  kind: z.ZodLiteral<"integration">;
580
779
  provider: z.ZodString;
780
+ }, z.core.$strip>, z.ZodObject<{
781
+ id: z.ZodString;
782
+ order: z.ZodDefault<z.ZodNumber>;
783
+ systemPath: z.ZodString;
784
+ ownerRoleId: z.ZodOptional<z.ZodString>;
785
+ status: z.ZodEnum<{
786
+ deprecated: "deprecated";
787
+ active: "active";
788
+ archived: "archived";
789
+ }>;
790
+ ontology: z.ZodOptional<z.ZodObject<{
791
+ implements: z.ZodOptional<z.ZodArray<z.ZodString>>;
792
+ reads: z.ZodOptional<z.ZodArray<z.ZodString>>;
793
+ writes: z.ZodOptional<z.ZodArray<z.ZodString>>;
794
+ usesCatalogs: z.ZodOptional<z.ZodArray<z.ZodString>>;
795
+ emits: z.ZodOptional<z.ZodArray<z.ZodString>>;
796
+ }, z.core.$strip>>;
797
+ codeRefs: z.ZodDefault<z.ZodArray<z.ZodObject<{
798
+ path: z.ZodString;
799
+ role: z.ZodEnum<{
800
+ schema: "schema";
801
+ config: "config";
802
+ entrypoint: "entrypoint";
803
+ handler: "handler";
804
+ test: "test";
805
+ docs: "docs";
806
+ }>;
807
+ symbol: z.ZodOptional<z.ZodString>;
808
+ description: z.ZodOptional<z.ZodString>;
809
+ }, z.core.$strip>>>;
810
+ kind: z.ZodLiteral<"script">;
811
+ language: z.ZodEnum<{
812
+ shell: "shell";
813
+ sql: "sql";
814
+ typescript: "typescript";
815
+ python: "python";
816
+ }>;
817
+ source: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
818
+ file: z.ZodString;
819
+ }, z.core.$strip>]>;
581
820
  }, z.core.$strip>], "kind">;
582
- declare const ResourcesDomainSchema: z.ZodObject<{
583
- entries: z.ZodDefault<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
584
- id: z.ZodString;
585
- systemId: z.ZodString;
586
- ownerRoleId: z.ZodOptional<z.ZodString>;
587
- status: z.ZodEnum<{
588
- active: "active";
589
- deprecated: "deprecated";
590
- archived: "archived";
821
+ declare const ResourcesDomainSchema: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodDiscriminatedUnion<[z.ZodObject<{
822
+ id: z.ZodString;
823
+ order: z.ZodDefault<z.ZodNumber>;
824
+ systemPath: z.ZodString;
825
+ ownerRoleId: z.ZodOptional<z.ZodString>;
826
+ status: z.ZodEnum<{
827
+ deprecated: "deprecated";
828
+ active: "active";
829
+ archived: "archived";
830
+ }>;
831
+ ontology: z.ZodOptional<z.ZodObject<{
832
+ implements: z.ZodOptional<z.ZodArray<z.ZodString>>;
833
+ reads: z.ZodOptional<z.ZodArray<z.ZodString>>;
834
+ writes: z.ZodOptional<z.ZodArray<z.ZodString>>;
835
+ usesCatalogs: z.ZodOptional<z.ZodArray<z.ZodString>>;
836
+ emits: z.ZodOptional<z.ZodArray<z.ZodString>>;
837
+ }, z.core.$strip>>;
838
+ codeRefs: z.ZodDefault<z.ZodArray<z.ZodObject<{
839
+ path: z.ZodString;
840
+ role: z.ZodEnum<{
841
+ schema: "schema";
842
+ config: "config";
843
+ entrypoint: "entrypoint";
844
+ handler: "handler";
845
+ test: "test";
846
+ docs: "docs";
591
847
  }>;
592
- kind: z.ZodLiteral<"workflow">;
593
- capabilityKey: z.ZodOptional<z.ZodString>;
594
- }, z.core.$strip>, z.ZodObject<{
595
- id: z.ZodString;
596
- systemId: z.ZodString;
597
- ownerRoleId: z.ZodOptional<z.ZodString>;
598
- status: z.ZodEnum<{
599
- active: "active";
848
+ symbol: z.ZodOptional<z.ZodString>;
849
+ description: z.ZodOptional<z.ZodString>;
850
+ }, z.core.$strip>>>;
851
+ kind: z.ZodLiteral<"workflow">;
852
+ actionKey: z.ZodOptional<z.ZodString>;
853
+ emits: z.ZodOptional<z.ZodArray<z.ZodObject<{
854
+ eventKey: z.ZodString;
855
+ label: z.ZodString;
856
+ payloadSchema: z.ZodOptional<z.ZodString>;
857
+ lifecycle: z.ZodOptional<z.ZodEnum<{
600
858
  deprecated: "deprecated";
859
+ draft: "draft";
860
+ beta: "beta";
861
+ active: "active";
601
862
  archived: "archived";
863
+ }>>;
864
+ }, z.core.$strip>>>;
865
+ }, z.core.$strip>, z.ZodObject<{
866
+ id: z.ZodString;
867
+ order: z.ZodDefault<z.ZodNumber>;
868
+ systemPath: z.ZodString;
869
+ ownerRoleId: z.ZodOptional<z.ZodString>;
870
+ status: z.ZodEnum<{
871
+ deprecated: "deprecated";
872
+ active: "active";
873
+ archived: "archived";
874
+ }>;
875
+ ontology: z.ZodOptional<z.ZodObject<{
876
+ implements: z.ZodOptional<z.ZodArray<z.ZodString>>;
877
+ reads: z.ZodOptional<z.ZodArray<z.ZodString>>;
878
+ writes: z.ZodOptional<z.ZodArray<z.ZodString>>;
879
+ usesCatalogs: z.ZodOptional<z.ZodArray<z.ZodString>>;
880
+ emits: z.ZodOptional<z.ZodArray<z.ZodString>>;
881
+ }, z.core.$strip>>;
882
+ codeRefs: z.ZodDefault<z.ZodArray<z.ZodObject<{
883
+ path: z.ZodString;
884
+ role: z.ZodEnum<{
885
+ schema: "schema";
886
+ config: "config";
887
+ entrypoint: "entrypoint";
888
+ handler: "handler";
889
+ test: "test";
890
+ docs: "docs";
602
891
  }>;
603
- kind: z.ZodLiteral<"agent">;
604
- agentKind: z.ZodEnum<{
605
- orchestrator: "orchestrator";
606
- specialist: "specialist";
607
- utility: "utility";
608
- system: "system";
892
+ symbol: z.ZodOptional<z.ZodString>;
893
+ description: z.ZodOptional<z.ZodString>;
894
+ }, z.core.$strip>>>;
895
+ kind: z.ZodLiteral<"agent">;
896
+ agentKind: z.ZodEnum<{
897
+ platform: "platform";
898
+ orchestrator: "orchestrator";
899
+ specialist: "specialist";
900
+ utility: "utility";
901
+ }>;
902
+ actsAsRoleId: z.ZodOptional<z.ZodString>;
903
+ sessionCapable: z.ZodBoolean;
904
+ invocations: z.ZodDefault<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
905
+ kind: z.ZodLiteral<"slash-command">;
906
+ command: z.ZodString;
907
+ toolFactory: z.ZodOptional<z.ZodString>;
908
+ }, z.core.$strip>, z.ZodObject<{
909
+ kind: z.ZodLiteral<"mcp-tool">;
910
+ server: z.ZodString;
911
+ name: z.ZodString;
912
+ }, z.core.$strip>, z.ZodObject<{
913
+ kind: z.ZodLiteral<"api-endpoint">;
914
+ method: z.ZodEnum<{
915
+ GET: "GET";
916
+ POST: "POST";
917
+ PATCH: "PATCH";
918
+ DELETE: "DELETE";
609
919
  }>;
610
- actsAsRoleId: z.ZodOptional<z.ZodString>;
611
- sessionCapable: z.ZodBoolean;
920
+ path: z.ZodString;
921
+ requestSchema: z.ZodOptional<z.ZodString>;
922
+ responseSchema: z.ZodOptional<z.ZodString>;
612
923
  }, z.core.$strip>, z.ZodObject<{
613
- id: z.ZodString;
614
- systemId: z.ZodString;
615
- ownerRoleId: z.ZodOptional<z.ZodString>;
616
- status: z.ZodEnum<{
617
- active: "active";
924
+ kind: z.ZodLiteral<"script-execution">;
925
+ resourceId: z.ZodString;
926
+ }, z.core.$strip>], "kind">>>;
927
+ emits: z.ZodOptional<z.ZodArray<z.ZodObject<{
928
+ eventKey: z.ZodString;
929
+ label: z.ZodString;
930
+ payloadSchema: z.ZodOptional<z.ZodString>;
931
+ lifecycle: z.ZodOptional<z.ZodEnum<{
618
932
  deprecated: "deprecated";
933
+ draft: "draft";
934
+ beta: "beta";
935
+ active: "active";
619
936
  archived: "archived";
937
+ }>>;
938
+ }, z.core.$strip>>>;
939
+ }, z.core.$strip>, z.ZodObject<{
940
+ id: z.ZodString;
941
+ order: z.ZodDefault<z.ZodNumber>;
942
+ systemPath: z.ZodString;
943
+ ownerRoleId: z.ZodOptional<z.ZodString>;
944
+ status: z.ZodEnum<{
945
+ deprecated: "deprecated";
946
+ active: "active";
947
+ archived: "archived";
948
+ }>;
949
+ ontology: z.ZodOptional<z.ZodObject<{
950
+ implements: z.ZodOptional<z.ZodArray<z.ZodString>>;
951
+ reads: z.ZodOptional<z.ZodArray<z.ZodString>>;
952
+ writes: z.ZodOptional<z.ZodArray<z.ZodString>>;
953
+ usesCatalogs: z.ZodOptional<z.ZodArray<z.ZodString>>;
954
+ emits: z.ZodOptional<z.ZodArray<z.ZodString>>;
955
+ }, z.core.$strip>>;
956
+ codeRefs: z.ZodDefault<z.ZodArray<z.ZodObject<{
957
+ path: z.ZodString;
958
+ role: z.ZodEnum<{
959
+ schema: "schema";
960
+ config: "config";
961
+ entrypoint: "entrypoint";
962
+ handler: "handler";
963
+ test: "test";
964
+ docs: "docs";
620
965
  }>;
621
- kind: z.ZodLiteral<"integration">;
622
- provider: z.ZodString;
623
- }, z.core.$strip>], "kind">>>;
624
- }, z.core.$strip>;
966
+ symbol: z.ZodOptional<z.ZodString>;
967
+ description: z.ZodOptional<z.ZodString>;
968
+ }, z.core.$strip>>>;
969
+ kind: z.ZodLiteral<"integration">;
970
+ provider: z.ZodString;
971
+ }, z.core.$strip>, z.ZodObject<{
972
+ id: z.ZodString;
973
+ order: z.ZodDefault<z.ZodNumber>;
974
+ systemPath: z.ZodString;
975
+ ownerRoleId: z.ZodOptional<z.ZodString>;
976
+ status: z.ZodEnum<{
977
+ deprecated: "deprecated";
978
+ active: "active";
979
+ archived: "archived";
980
+ }>;
981
+ ontology: z.ZodOptional<z.ZodObject<{
982
+ implements: z.ZodOptional<z.ZodArray<z.ZodString>>;
983
+ reads: z.ZodOptional<z.ZodArray<z.ZodString>>;
984
+ writes: z.ZodOptional<z.ZodArray<z.ZodString>>;
985
+ usesCatalogs: z.ZodOptional<z.ZodArray<z.ZodString>>;
986
+ emits: z.ZodOptional<z.ZodArray<z.ZodString>>;
987
+ }, z.core.$strip>>;
988
+ codeRefs: z.ZodDefault<z.ZodArray<z.ZodObject<{
989
+ path: z.ZodString;
990
+ role: z.ZodEnum<{
991
+ schema: "schema";
992
+ config: "config";
993
+ entrypoint: "entrypoint";
994
+ handler: "handler";
995
+ test: "test";
996
+ docs: "docs";
997
+ }>;
998
+ symbol: z.ZodOptional<z.ZodString>;
999
+ description: z.ZodOptional<z.ZodString>;
1000
+ }, z.core.$strip>>>;
1001
+ kind: z.ZodLiteral<"script">;
1002
+ language: z.ZodEnum<{
1003
+ shell: "shell";
1004
+ sql: "sql";
1005
+ typescript: "typescript";
1006
+ python: "python";
1007
+ }>;
1008
+ source: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
1009
+ file: z.ZodString;
1010
+ }, z.core.$strip>]>;
1011
+ }, z.core.$strip>], "kind">>>;
625
1012
  type ResourceGovernanceStatus = z.infer<typeof ResourceGovernanceStatusSchema>;
626
1013
  type WorkflowResourceEntry = z.infer<typeof WorkflowResourceEntrySchema>;
627
1014
  type AgentResourceEntry = z.infer<typeof AgentResourceEntrySchema>;
@@ -736,8 +1123,8 @@ interface WorkflowConfig extends ResourceDefinition {
736
1123
  type: 'workflow';
737
1124
  /** OM descriptor backing canonical identity and governance metadata. */
738
1125
  resource?: WorkflowResourceEntry;
739
- /** Lead-gen capability key for registry derivation (e.g. 'lead-gen.company.apollo-import') */
740
- capabilityKey?: string;
1126
+ /** Lead-gen action key for registry derivation (e.g. 'lead-gen.company.apollo-import') */
1127
+ actionKey?: string;
741
1128
  }
742
1129
  interface WorkflowStepDefinition {
743
1130
  id: string;
@@ -1088,7 +1475,7 @@ interface KnowledgeContent {
1088
1475
  * AIUsageCollector/AICallContext) and the worker proxy (which ignores them) satisfy the type.
1089
1476
  */
1090
1477
  type LLMAdapterFactory = (config: ModelConfig, ...args: any[]) => LLMAdapter;
1091
- type AgentKind = 'orchestrator' | 'specialist' | 'utility' | 'system';
1478
+ type AgentKind = 'orchestrator' | 'specialist' | 'utility' | 'platform';
1092
1479
  interface AgentConfig extends ResourceDefinition {
1093
1480
  type: 'agent';
1094
1481
  /** OM descriptor backing canonical identity and governance metadata. */
@@ -3955,6 +4342,66 @@ type Database = {
3955
4342
  }
3956
4343
  ];
3957
4344
  };
4345
+ user_notes: {
4346
+ Row: {
4347
+ content: string;
4348
+ created_at: string;
4349
+ created_by: string;
4350
+ id: string;
4351
+ metadata: Json;
4352
+ organization_id: string | null;
4353
+ pinned: boolean;
4354
+ priority: string;
4355
+ source: string | null;
4356
+ title: string | null;
4357
+ updated_at: string;
4358
+ user_id: string;
4359
+ };
4360
+ Insert: {
4361
+ content: string;
4362
+ created_at?: string;
4363
+ created_by?: string;
4364
+ id?: string;
4365
+ metadata?: Json;
4366
+ organization_id?: string | null;
4367
+ pinned?: boolean;
4368
+ priority?: string;
4369
+ source?: string | null;
4370
+ title?: string | null;
4371
+ updated_at?: string;
4372
+ user_id: string;
4373
+ };
4374
+ Update: {
4375
+ content?: string;
4376
+ created_at?: string;
4377
+ created_by?: string;
4378
+ id?: string;
4379
+ metadata?: Json;
4380
+ organization_id?: string | null;
4381
+ pinned?: boolean;
4382
+ priority?: string;
4383
+ source?: string | null;
4384
+ title?: string | null;
4385
+ updated_at?: string;
4386
+ user_id?: string;
4387
+ };
4388
+ Relationships: [
4389
+ {
4390
+ foreignKeyName: "user_notes_organization_id_fkey";
4391
+ columns: ["organization_id"];
4392
+ isOneToOne: false;
4393
+ referencedRelation: "organizations";
4394
+ referencedColumns: ["id"];
4395
+ },
4396
+ {
4397
+ foreignKeyName: "user_notes_user_id_fkey";
4398
+ columns: ["user_id"];
4399
+ isOneToOne: false;
4400
+ referencedRelation: "users";
4401
+ referencedColumns: ["id"];
4402
+ }
4403
+ ];
4404
+ };
3958
4405
  users: {
3959
4406
  Row: {
3960
4407
  config: Json;
@@ -4219,10 +4666,10 @@ declare const RecordColumnConfigSchema: z.ZodObject<{
4219
4666
  width: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>;
4220
4667
  renderType: z.ZodOptional<z.ZodEnum<{
4221
4668
  text: "text";
4222
- badge: "badge";
4223
- datetime: "datetime";
4224
4669
  count: "count";
4225
4670
  json: "json";
4671
+ badge: "badge";
4672
+ datetime: "datetime";
4226
4673
  }>>;
4227
4674
  badgeColor: z.ZodOptional<z.ZodString>;
4228
4675
  }, z.core.$strip>;
@@ -4249,71 +4696,65 @@ declare const ProspectingBuildTemplateStepSchema: z.ZodObject<{
4249
4696
  description: z.ZodOptional<z.ZodString>;
4250
4697
  color: z.ZodOptional<z.ZodString>;
4251
4698
  icon: z.ZodOptional<z.ZodUnion<readonly [z.ZodEnum<{
4252
- "nav.dashboard": "nav.dashboard";
4253
- "nav.calendar": "nav.calendar";
4254
- "nav.sales": "nav.sales";
4255
- "nav.crm": "nav.crm";
4256
- "nav.lead-gen": "nav.lead-gen";
4257
- "nav.projects": "nav.projects";
4258
- "nav.operations": "nav.operations";
4259
- "nav.monitoring": "nav.monitoring";
4260
- "nav.knowledge": "nav.knowledge";
4261
- "nav.settings": "nav.settings";
4262
- "nav.admin": "nav.admin";
4263
- "nav.archive": "nav.archive";
4264
- "knowledge.playbook": "knowledge.playbook";
4265
- "knowledge.strategy": "knowledge.strategy";
4266
- "knowledge.reference": "knowledge.reference";
4267
- "feature.dashboard": "feature.dashboard";
4268
- "feature.calendar": "feature.calendar";
4269
- "feature.business": "feature.business";
4270
- "feature.sales": "feature.sales";
4271
- "feature.crm": "feature.crm";
4272
- "feature.finance": "feature.finance";
4273
- "feature.lead-gen": "feature.lead-gen";
4274
- "feature.platform": "feature.platform";
4275
- "feature.projects": "feature.projects";
4276
- "feature.operations": "feature.operations";
4277
- "feature.knowledge": "feature.knowledge";
4278
- "feature.monitoring": "feature.monitoring";
4279
- "feature.settings": "feature.settings";
4280
- "feature.admin": "feature.admin";
4281
- "feature.archive": "feature.archive";
4282
- "feature.seo": "feature.seo";
4283
- "resource.agent": "resource.agent";
4284
- "resource.workflow": "resource.workflow";
4285
- "resource.integration": "resource.integration";
4286
- "resource.database": "resource.database";
4287
- "resource.user": "resource.user";
4288
- "resource.team": "resource.team";
4289
- "integration.gmail": "integration.gmail";
4290
- "integration.google-sheets": "integration.google-sheets";
4291
- "integration.attio": "integration.attio";
4292
- "surface.dashboard": "surface.dashboard";
4293
- "surface.calendar": "surface.calendar";
4294
- "surface.overview": "surface.overview";
4295
- "surface.command-view": "surface.command-view";
4296
- "surface.command-queue": "surface.command-queue";
4297
- "surface.pipeline": "surface.pipeline";
4298
- "surface.lists": "surface.lists";
4299
- "surface.resources": "surface.resources";
4300
- "surface.settings": "surface.settings";
4301
- "status.success": "status.success";
4302
- "status.error": "status.error";
4303
- "status.warning": "status.warning";
4304
- "status.info": "status.info";
4305
- "status.pending": "status.pending";
4306
- "action.approve": "action.approve";
4307
- "action.reject": "action.reject";
4308
- "action.retry": "action.retry";
4309
- "action.edit": "action.edit";
4310
- "action.view": "action.view";
4311
- "action.launch": "action.launch";
4312
- "action.message": "action.message";
4313
- "action.escalate": "action.escalate";
4314
- "action.promote": "action.promote";
4315
- "action.submit": "action.submit";
4316
- "action.email": "action.email";
4699
+ message: "message";
4700
+ error: "error";
4701
+ agent: "agent";
4702
+ workflow: "workflow";
4703
+ "google-sheets": "google-sheets";
4704
+ dashboard: "dashboard";
4705
+ calendar: "calendar";
4706
+ sales: "sales";
4707
+ crm: "crm";
4708
+ "lead-gen": "lead-gen";
4709
+ projects: "projects";
4710
+ operations: "operations";
4711
+ monitoring: "monitoring";
4712
+ knowledge: "knowledge";
4713
+ settings: "settings";
4714
+ admin: "admin";
4715
+ archive: "archive";
4716
+ business: "business";
4717
+ finance: "finance";
4718
+ platform: "platform";
4719
+ seo: "seo";
4720
+ playbook: "playbook";
4721
+ strategy: "strategy";
4722
+ reference: "reference";
4723
+ integration: "integration";
4724
+ database: "database";
4725
+ user: "user";
4726
+ team: "team";
4727
+ gmail: "gmail";
4728
+ attio: "attio";
4729
+ overview: "overview";
4730
+ "command-view": "command-view";
4731
+ "command-queue": "command-queue";
4732
+ pipeline: "pipeline";
4733
+ lists: "lists";
4734
+ resources: "resources";
4735
+ approve: "approve";
4736
+ reject: "reject";
4737
+ retry: "retry";
4738
+ edit: "edit";
4739
+ view: "view";
4740
+ launch: "launch";
4741
+ escalate: "escalate";
4742
+ promote: "promote";
4743
+ submit: "submit";
4744
+ email: "email";
4745
+ success: "success";
4746
+ warning: "warning";
4747
+ info: "info";
4748
+ pending: "pending";
4749
+ bolt: "bolt";
4750
+ building: "building";
4751
+ briefcase: "briefcase";
4752
+ apps: "apps";
4753
+ graph: "graph";
4754
+ shield: "shield";
4755
+ users: "users";
4756
+ "chart-bar": "chart-bar";
4757
+ search: "search";
4317
4758
  }>, z.ZodString]>>;
4318
4759
  id: z.ZodString;
4319
4760
  primaryEntity: z.ZodEnum<{
@@ -4334,7 +4775,7 @@ declare const ProspectingBuildTemplateStepSchema: z.ZodObject<{
4334
4775
  recordSourceStageKey: z.ZodOptional<z.ZodString>;
4335
4776
  dependsOn: z.ZodOptional<z.ZodArray<z.ZodString>>;
4336
4777
  dependencyMode: z.ZodLiteral<"per-record-eligibility">;
4337
- capabilityKey: z.ZodString;
4778
+ actionKey: z.ZodString;
4338
4779
  defaultBatchSize: z.ZodNumber;
4339
4780
  maxBatchSize: z.ZodNumber;
4340
4781
  recordColumns: z.ZodOptional<z.ZodObject<{
@@ -4345,10 +4786,10 @@ declare const ProspectingBuildTemplateStepSchema: z.ZodObject<{
4345
4786
  width: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>;
4346
4787
  renderType: z.ZodOptional<z.ZodEnum<{
4347
4788
  text: "text";
4348
- badge: "badge";
4349
- datetime: "datetime";
4350
4789
  count: "count";
4351
4790
  json: "json";
4791
+ badge: "badge";
4792
+ datetime: "datetime";
4352
4793
  }>>;
4353
4794
  badgeColor: z.ZodOptional<z.ZodString>;
4354
4795
  }, z.core.$strip>>>;
@@ -4359,10 +4800,10 @@ declare const ProspectingBuildTemplateStepSchema: z.ZodObject<{
4359
4800
  width: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>;
4360
4801
  renderType: z.ZodOptional<z.ZodEnum<{
4361
4802
  text: "text";
4362
- badge: "badge";
4363
- datetime: "datetime";
4364
4803
  count: "count";
4365
4804
  json: "json";
4805
+ badge: "badge";
4806
+ datetime: "datetime";
4366
4807
  }>>;
4367
4808
  badgeColor: z.ZodOptional<z.ZodString>;
4368
4809
  }, z.core.$strip>>>;
@@ -4391,71 +4832,65 @@ declare const ProspectingBuildTemplateSchema: z.ZodObject<{
4391
4832
  description: z.ZodOptional<z.ZodString>;
4392
4833
  color: z.ZodOptional<z.ZodString>;
4393
4834
  icon: z.ZodOptional<z.ZodUnion<readonly [z.ZodEnum<{
4394
- "nav.dashboard": "nav.dashboard";
4395
- "nav.calendar": "nav.calendar";
4396
- "nav.sales": "nav.sales";
4397
- "nav.crm": "nav.crm";
4398
- "nav.lead-gen": "nav.lead-gen";
4399
- "nav.projects": "nav.projects";
4400
- "nav.operations": "nav.operations";
4401
- "nav.monitoring": "nav.monitoring";
4402
- "nav.knowledge": "nav.knowledge";
4403
- "nav.settings": "nav.settings";
4404
- "nav.admin": "nav.admin";
4405
- "nav.archive": "nav.archive";
4406
- "knowledge.playbook": "knowledge.playbook";
4407
- "knowledge.strategy": "knowledge.strategy";
4408
- "knowledge.reference": "knowledge.reference";
4409
- "feature.dashboard": "feature.dashboard";
4410
- "feature.calendar": "feature.calendar";
4411
- "feature.business": "feature.business";
4412
- "feature.sales": "feature.sales";
4413
- "feature.crm": "feature.crm";
4414
- "feature.finance": "feature.finance";
4415
- "feature.lead-gen": "feature.lead-gen";
4416
- "feature.platform": "feature.platform";
4417
- "feature.projects": "feature.projects";
4418
- "feature.operations": "feature.operations";
4419
- "feature.knowledge": "feature.knowledge";
4420
- "feature.monitoring": "feature.monitoring";
4421
- "feature.settings": "feature.settings";
4422
- "feature.admin": "feature.admin";
4423
- "feature.archive": "feature.archive";
4424
- "feature.seo": "feature.seo";
4425
- "resource.agent": "resource.agent";
4426
- "resource.workflow": "resource.workflow";
4427
- "resource.integration": "resource.integration";
4428
- "resource.database": "resource.database";
4429
- "resource.user": "resource.user";
4430
- "resource.team": "resource.team";
4431
- "integration.gmail": "integration.gmail";
4432
- "integration.google-sheets": "integration.google-sheets";
4433
- "integration.attio": "integration.attio";
4434
- "surface.dashboard": "surface.dashboard";
4435
- "surface.calendar": "surface.calendar";
4436
- "surface.overview": "surface.overview";
4437
- "surface.command-view": "surface.command-view";
4438
- "surface.command-queue": "surface.command-queue";
4439
- "surface.pipeline": "surface.pipeline";
4440
- "surface.lists": "surface.lists";
4441
- "surface.resources": "surface.resources";
4442
- "surface.settings": "surface.settings";
4443
- "status.success": "status.success";
4444
- "status.error": "status.error";
4445
- "status.warning": "status.warning";
4446
- "status.info": "status.info";
4447
- "status.pending": "status.pending";
4448
- "action.approve": "action.approve";
4449
- "action.reject": "action.reject";
4450
- "action.retry": "action.retry";
4451
- "action.edit": "action.edit";
4452
- "action.view": "action.view";
4453
- "action.launch": "action.launch";
4454
- "action.message": "action.message";
4455
- "action.escalate": "action.escalate";
4456
- "action.promote": "action.promote";
4457
- "action.submit": "action.submit";
4458
- "action.email": "action.email";
4835
+ message: "message";
4836
+ error: "error";
4837
+ agent: "agent";
4838
+ workflow: "workflow";
4839
+ "google-sheets": "google-sheets";
4840
+ dashboard: "dashboard";
4841
+ calendar: "calendar";
4842
+ sales: "sales";
4843
+ crm: "crm";
4844
+ "lead-gen": "lead-gen";
4845
+ projects: "projects";
4846
+ operations: "operations";
4847
+ monitoring: "monitoring";
4848
+ knowledge: "knowledge";
4849
+ settings: "settings";
4850
+ admin: "admin";
4851
+ archive: "archive";
4852
+ business: "business";
4853
+ finance: "finance";
4854
+ platform: "platform";
4855
+ seo: "seo";
4856
+ playbook: "playbook";
4857
+ strategy: "strategy";
4858
+ reference: "reference";
4859
+ integration: "integration";
4860
+ database: "database";
4861
+ user: "user";
4862
+ team: "team";
4863
+ gmail: "gmail";
4864
+ attio: "attio";
4865
+ overview: "overview";
4866
+ "command-view": "command-view";
4867
+ "command-queue": "command-queue";
4868
+ pipeline: "pipeline";
4869
+ lists: "lists";
4870
+ resources: "resources";
4871
+ approve: "approve";
4872
+ reject: "reject";
4873
+ retry: "retry";
4874
+ edit: "edit";
4875
+ view: "view";
4876
+ launch: "launch";
4877
+ escalate: "escalate";
4878
+ promote: "promote";
4879
+ submit: "submit";
4880
+ email: "email";
4881
+ success: "success";
4882
+ warning: "warning";
4883
+ info: "info";
4884
+ pending: "pending";
4885
+ bolt: "bolt";
4886
+ building: "building";
4887
+ briefcase: "briefcase";
4888
+ apps: "apps";
4889
+ graph: "graph";
4890
+ shield: "shield";
4891
+ users: "users";
4892
+ "chart-bar": "chart-bar";
4893
+ search: "search";
4459
4894
  }>, z.ZodString]>>;
4460
4895
  id: z.ZodString;
4461
4896
  steps: z.ZodArray<z.ZodObject<{
@@ -4463,71 +4898,65 @@ declare const ProspectingBuildTemplateSchema: z.ZodObject<{
4463
4898
  description: z.ZodOptional<z.ZodString>;
4464
4899
  color: z.ZodOptional<z.ZodString>;
4465
4900
  icon: z.ZodOptional<z.ZodUnion<readonly [z.ZodEnum<{
4466
- "nav.dashboard": "nav.dashboard";
4467
- "nav.calendar": "nav.calendar";
4468
- "nav.sales": "nav.sales";
4469
- "nav.crm": "nav.crm";
4470
- "nav.lead-gen": "nav.lead-gen";
4471
- "nav.projects": "nav.projects";
4472
- "nav.operations": "nav.operations";
4473
- "nav.monitoring": "nav.monitoring";
4474
- "nav.knowledge": "nav.knowledge";
4475
- "nav.settings": "nav.settings";
4476
- "nav.admin": "nav.admin";
4477
- "nav.archive": "nav.archive";
4478
- "knowledge.playbook": "knowledge.playbook";
4479
- "knowledge.strategy": "knowledge.strategy";
4480
- "knowledge.reference": "knowledge.reference";
4481
- "feature.dashboard": "feature.dashboard";
4482
- "feature.calendar": "feature.calendar";
4483
- "feature.business": "feature.business";
4484
- "feature.sales": "feature.sales";
4485
- "feature.crm": "feature.crm";
4486
- "feature.finance": "feature.finance";
4487
- "feature.lead-gen": "feature.lead-gen";
4488
- "feature.platform": "feature.platform";
4489
- "feature.projects": "feature.projects";
4490
- "feature.operations": "feature.operations";
4491
- "feature.knowledge": "feature.knowledge";
4492
- "feature.monitoring": "feature.monitoring";
4493
- "feature.settings": "feature.settings";
4494
- "feature.admin": "feature.admin";
4495
- "feature.archive": "feature.archive";
4496
- "feature.seo": "feature.seo";
4497
- "resource.agent": "resource.agent";
4498
- "resource.workflow": "resource.workflow";
4499
- "resource.integration": "resource.integration";
4500
- "resource.database": "resource.database";
4501
- "resource.user": "resource.user";
4502
- "resource.team": "resource.team";
4503
- "integration.gmail": "integration.gmail";
4504
- "integration.google-sheets": "integration.google-sheets";
4505
- "integration.attio": "integration.attio";
4506
- "surface.dashboard": "surface.dashboard";
4507
- "surface.calendar": "surface.calendar";
4508
- "surface.overview": "surface.overview";
4509
- "surface.command-view": "surface.command-view";
4510
- "surface.command-queue": "surface.command-queue";
4511
- "surface.pipeline": "surface.pipeline";
4512
- "surface.lists": "surface.lists";
4513
- "surface.resources": "surface.resources";
4514
- "surface.settings": "surface.settings";
4515
- "status.success": "status.success";
4516
- "status.error": "status.error";
4517
- "status.warning": "status.warning";
4518
- "status.info": "status.info";
4519
- "status.pending": "status.pending";
4520
- "action.approve": "action.approve";
4521
- "action.reject": "action.reject";
4522
- "action.retry": "action.retry";
4523
- "action.edit": "action.edit";
4524
- "action.view": "action.view";
4525
- "action.launch": "action.launch";
4526
- "action.message": "action.message";
4527
- "action.escalate": "action.escalate";
4528
- "action.promote": "action.promote";
4529
- "action.submit": "action.submit";
4530
- "action.email": "action.email";
4901
+ message: "message";
4902
+ error: "error";
4903
+ agent: "agent";
4904
+ workflow: "workflow";
4905
+ "google-sheets": "google-sheets";
4906
+ dashboard: "dashboard";
4907
+ calendar: "calendar";
4908
+ sales: "sales";
4909
+ crm: "crm";
4910
+ "lead-gen": "lead-gen";
4911
+ projects: "projects";
4912
+ operations: "operations";
4913
+ monitoring: "monitoring";
4914
+ knowledge: "knowledge";
4915
+ settings: "settings";
4916
+ admin: "admin";
4917
+ archive: "archive";
4918
+ business: "business";
4919
+ finance: "finance";
4920
+ platform: "platform";
4921
+ seo: "seo";
4922
+ playbook: "playbook";
4923
+ strategy: "strategy";
4924
+ reference: "reference";
4925
+ integration: "integration";
4926
+ database: "database";
4927
+ user: "user";
4928
+ team: "team";
4929
+ gmail: "gmail";
4930
+ attio: "attio";
4931
+ overview: "overview";
4932
+ "command-view": "command-view";
4933
+ "command-queue": "command-queue";
4934
+ pipeline: "pipeline";
4935
+ lists: "lists";
4936
+ resources: "resources";
4937
+ approve: "approve";
4938
+ reject: "reject";
4939
+ retry: "retry";
4940
+ edit: "edit";
4941
+ view: "view";
4942
+ launch: "launch";
4943
+ escalate: "escalate";
4944
+ promote: "promote";
4945
+ submit: "submit";
4946
+ email: "email";
4947
+ success: "success";
4948
+ warning: "warning";
4949
+ info: "info";
4950
+ pending: "pending";
4951
+ bolt: "bolt";
4952
+ building: "building";
4953
+ briefcase: "briefcase";
4954
+ apps: "apps";
4955
+ graph: "graph";
4956
+ shield: "shield";
4957
+ users: "users";
4958
+ "chart-bar": "chart-bar";
4959
+ search: "search";
4531
4960
  }>, z.ZodString]>>;
4532
4961
  id: z.ZodString;
4533
4962
  primaryEntity: z.ZodEnum<{
@@ -4548,7 +4977,7 @@ declare const ProspectingBuildTemplateSchema: z.ZodObject<{
4548
4977
  recordSourceStageKey: z.ZodOptional<z.ZodString>;
4549
4978
  dependsOn: z.ZodOptional<z.ZodArray<z.ZodString>>;
4550
4979
  dependencyMode: z.ZodLiteral<"per-record-eligibility">;
4551
- capabilityKey: z.ZodString;
4980
+ actionKey: z.ZodString;
4552
4981
  defaultBatchSize: z.ZodNumber;
4553
4982
  maxBatchSize: z.ZodNumber;
4554
4983
  recordColumns: z.ZodOptional<z.ZodObject<{
@@ -4559,10 +4988,10 @@ declare const ProspectingBuildTemplateSchema: z.ZodObject<{
4559
4988
  width: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>;
4560
4989
  renderType: z.ZodOptional<z.ZodEnum<{
4561
4990
  text: "text";
4562
- badge: "badge";
4563
- datetime: "datetime";
4564
4991
  count: "count";
4565
4992
  json: "json";
4993
+ badge: "badge";
4994
+ datetime: "datetime";
4566
4995
  }>>;
4567
4996
  badgeColor: z.ZodOptional<z.ZodString>;
4568
4997
  }, z.core.$strip>>>;
@@ -4573,10 +5002,10 @@ declare const ProspectingBuildTemplateSchema: z.ZodObject<{
4573
5002
  width: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>;
4574
5003
  renderType: z.ZodOptional<z.ZodEnum<{
4575
5004
  text: "text";
4576
- badge: "badge";
4577
- datetime: "datetime";
4578
5005
  count: "count";
4579
5006
  json: "json";
5007
+ badge: "badge";
5008
+ datetime: "datetime";
4580
5009
  }>>;
4581
5010
  badgeColor: z.ZodOptional<z.ZodString>;
4582
5011
  }, z.core.$strip>>>;
@@ -4631,7 +5060,7 @@ interface LeadGenStageCatalogEntry {
4631
5060
  * Canonical lead-gen processing stage catalog.
4632
5061
  * Keys are the stage names written by workflow steps into processing_state jsonb.
4633
5062
  *
4634
- * Ordered roughly by pipeline progression (prospecting outreach qualification).
5063
+ * Ordered roughly by pipeline progression (prospecting -> outreach -> qualification).
4635
5064
  */
4636
5065
  declare const LEAD_GEN_STAGE_CATALOG: Record<string, LeadGenStageCatalogEntry>;
4637
5066
 
@@ -4675,10 +5104,10 @@ declare const DealSchemas: {
4675
5104
  }, z.core.$strict>;
4676
5105
  ListDealTasksDueQuery: z.ZodObject<{
4677
5106
  window: z.ZodOptional<z.ZodEnum<{
4678
- upcoming: "upcoming";
4679
5107
  overdue: "overdue";
4680
5108
  today: "today";
4681
5109
  today_and_overdue: "today_and_overdue";
5110
+ upcoming: "upcoming";
4682
5111
  }>>;
4683
5112
  assigneeUserId: z.ZodOptional<z.ZodString>;
4684
5113
  }, z.core.$strict>;
@@ -5097,7 +5526,7 @@ declare const BuildPlanSnapshotStepSchema: z.ZodObject<{
5097
5526
  recordSourceStageKey: z.ZodOptional<z.ZodString>;
5098
5527
  dependsOn: z.ZodOptional<z.ZodArray<z.ZodString>>;
5099
5528
  dependencyMode: z.ZodLiteral<"per-record-eligibility">;
5100
- capabilityKey: z.ZodString;
5529
+ actionKey: z.ZodString;
5101
5530
  defaultBatchSize: z.ZodNumber;
5102
5531
  maxBatchSize: z.ZodNumber;
5103
5532
  recordColumns: z.ZodOptional<z.ZodObject<{
@@ -5108,10 +5537,10 @@ declare const BuildPlanSnapshotStepSchema: z.ZodObject<{
5108
5537
  width: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>;
5109
5538
  renderType: z.ZodOptional<z.ZodEnum<{
5110
5539
  text: "text";
5111
- badge: "badge";
5112
- datetime: "datetime";
5113
5540
  count: "count";
5114
5541
  json: "json";
5542
+ badge: "badge";
5543
+ datetime: "datetime";
5115
5544
  }>>;
5116
5545
  badgeColor: z.ZodOptional<z.ZodString>;
5117
5546
  }, z.core.$strip>>>;
@@ -5122,10 +5551,10 @@ declare const BuildPlanSnapshotStepSchema: z.ZodObject<{
5122
5551
  width: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>;
5123
5552
  renderType: z.ZodOptional<z.ZodEnum<{
5124
5553
  text: "text";
5125
- badge: "badge";
5126
- datetime: "datetime";
5127
5554
  count: "count";
5128
5555
  json: "json";
5556
+ badge: "badge";
5557
+ datetime: "datetime";
5129
5558
  }>>;
5130
5559
  badgeColor: z.ZodOptional<z.ZodString>;
5131
5560
  }, z.core.$strip>>>;
@@ -5272,7 +5701,7 @@ interface BuildPlanSnapshotStep {
5272
5701
  recordSourceStageKey?: string;
5273
5702
  dependsOn?: string[];
5274
5703
  dependencyMode: BuildPlanSnapshotDependencyMode;
5275
- capabilityKey: string;
5704
+ actionKey: string;
5276
5705
  defaultBatchSize: number;
5277
5706
  maxBatchSize: number;
5278
5707
  recordColumns?: Partial<Record<BuildPlanSnapshotPrimaryEntity, RecordColumnConfig[]>>;
@@ -6090,6 +6519,100 @@ type DealActionInput = AcqDealRow & {
6090
6519
  declare const DEFAULT_CRM_ACTIONS: ActionDef[];
6091
6520
  declare function deriveActions(deal: DealActionInput, actions?: ActionDef[]): Action[];
6092
6521
 
6522
+ declare const OntologyScopeSchema: z.ZodDefault<z.ZodObject<{
6523
+ objectTypes: z.ZodOptional<z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
6524
+ id: z.ZodString;
6525
+ label: z.ZodOptional<z.ZodString>;
6526
+ description: z.ZodOptional<z.ZodString>;
6527
+ ownerSystemId: z.ZodOptional<z.ZodString>;
6528
+ aliases: z.ZodOptional<z.ZodArray<z.ZodString>>;
6529
+ properties: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
6530
+ storage: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
6531
+ }, z.core.$loose>>>>;
6532
+ linkTypes: z.ZodOptional<z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
6533
+ id: z.ZodString;
6534
+ label: z.ZodOptional<z.ZodString>;
6535
+ description: z.ZodOptional<z.ZodString>;
6536
+ ownerSystemId: z.ZodOptional<z.ZodString>;
6537
+ aliases: z.ZodOptional<z.ZodArray<z.ZodString>>;
6538
+ from: z.ZodString;
6539
+ to: z.ZodString;
6540
+ cardinality: z.ZodOptional<z.ZodString>;
6541
+ via: z.ZodOptional<z.ZodString>;
6542
+ }, z.core.$loose>>>>;
6543
+ actionTypes: z.ZodOptional<z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
6544
+ id: z.ZodString;
6545
+ label: z.ZodOptional<z.ZodString>;
6546
+ description: z.ZodOptional<z.ZodString>;
6547
+ ownerSystemId: z.ZodOptional<z.ZodString>;
6548
+ aliases: z.ZodOptional<z.ZodArray<z.ZodString>>;
6549
+ actsOn: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodString>>>;
6550
+ input: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
6551
+ effects: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
6552
+ }, z.core.$loose>>>>;
6553
+ catalogTypes: z.ZodOptional<z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
6554
+ id: z.ZodString;
6555
+ label: z.ZodOptional<z.ZodString>;
6556
+ description: z.ZodOptional<z.ZodString>;
6557
+ ownerSystemId: z.ZodOptional<z.ZodString>;
6558
+ aliases: z.ZodOptional<z.ZodArray<z.ZodString>>;
6559
+ kind: z.ZodOptional<z.ZodString>;
6560
+ appliesTo: z.ZodOptional<z.ZodString>;
6561
+ entries: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
6562
+ }, z.core.$loose>>>>;
6563
+ eventTypes: z.ZodOptional<z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
6564
+ id: z.ZodString;
6565
+ label: z.ZodOptional<z.ZodString>;
6566
+ description: z.ZodOptional<z.ZodString>;
6567
+ ownerSystemId: z.ZodOptional<z.ZodString>;
6568
+ aliases: z.ZodOptional<z.ZodArray<z.ZodString>>;
6569
+ payload: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
6570
+ }, z.core.$loose>>>>;
6571
+ interfaceTypes: z.ZodOptional<z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
6572
+ id: z.ZodString;
6573
+ label: z.ZodOptional<z.ZodString>;
6574
+ description: z.ZodOptional<z.ZodString>;
6575
+ ownerSystemId: z.ZodOptional<z.ZodString>;
6576
+ aliases: z.ZodOptional<z.ZodArray<z.ZodString>>;
6577
+ properties: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
6578
+ }, z.core.$loose>>>>;
6579
+ valueTypes: z.ZodOptional<z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
6580
+ id: z.ZodString;
6581
+ label: z.ZodOptional<z.ZodString>;
6582
+ description: z.ZodOptional<z.ZodString>;
6583
+ ownerSystemId: z.ZodOptional<z.ZodString>;
6584
+ aliases: z.ZodOptional<z.ZodArray<z.ZodString>>;
6585
+ primitive: z.ZodOptional<z.ZodString>;
6586
+ }, z.core.$loose>>>>;
6587
+ sharedProperties: z.ZodOptional<z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
6588
+ id: z.ZodString;
6589
+ label: z.ZodOptional<z.ZodString>;
6590
+ description: z.ZodOptional<z.ZodString>;
6591
+ ownerSystemId: z.ZodOptional<z.ZodString>;
6592
+ aliases: z.ZodOptional<z.ZodArray<z.ZodString>>;
6593
+ valueType: z.ZodOptional<z.ZodString>;
6594
+ searchable: z.ZodOptional<z.ZodBoolean>;
6595
+ pii: z.ZodOptional<z.ZodBoolean>;
6596
+ }, z.core.$loose>>>>;
6597
+ groups: z.ZodOptional<z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
6598
+ id: z.ZodString;
6599
+ label: z.ZodOptional<z.ZodString>;
6600
+ description: z.ZodOptional<z.ZodString>;
6601
+ ownerSystemId: z.ZodOptional<z.ZodString>;
6602
+ aliases: z.ZodOptional<z.ZodArray<z.ZodString>>;
6603
+ members: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodString>>>;
6604
+ }, z.core.$loose>>>>;
6605
+ surfaces: z.ZodOptional<z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
6606
+ id: z.ZodString;
6607
+ label: z.ZodOptional<z.ZodString>;
6608
+ description: z.ZodOptional<z.ZodString>;
6609
+ ownerSystemId: z.ZodOptional<z.ZodString>;
6610
+ aliases: z.ZodOptional<z.ZodArray<z.ZodString>>;
6611
+ route: z.ZodOptional<z.ZodString>;
6612
+ }, z.core.$loose>>>>;
6613
+ }, z.core.$strip>>;
6614
+ type OntologyScope = z.infer<typeof OntologyScopeSchema>;
6615
+
6093
6616
  /**
6094
6617
  * A single CRM activity entry (note, stage change, or deal creation).
6095
6618
  * Matches the CrmActivityEntry interface from useRecentCrmActivity.ts.
@@ -7802,11 +8325,11 @@ declare const ProjectSchemas: {
7802
8325
  }>;
7803
8326
  status: z.ZodOptional<z.ZodEnum<{
7804
8327
  active: "active";
8328
+ completed: "completed";
8329
+ paused: "paused";
7805
8330
  on_track: "on_track";
7806
8331
  at_risk: "at_risk";
7807
8332
  blocked: "blocked";
7808
- paused: "paused";
7809
- completed: "completed";
7810
8333
  }>>;
7811
8334
  description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
7812
8335
  deal_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -7827,11 +8350,11 @@ declare const ProjectSchemas: {
7827
8350
  }>>;
7828
8351
  status: z.ZodOptional<z.ZodEnum<{
7829
8352
  active: "active";
8353
+ completed: "completed";
8354
+ paused: "paused";
7830
8355
  on_track: "on_track";
7831
8356
  at_risk: "at_risk";
7832
8357
  blocked: "blocked";
7833
- paused: "paused";
7834
- completed: "completed";
7835
8358
  }>>;
7836
8359
  description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
7837
8360
  deal_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -7852,11 +8375,11 @@ declare const ProjectSchemas: {
7852
8375
  }>>;
7853
8376
  status: z.ZodOptional<z.ZodEnum<{
7854
8377
  active: "active";
8378
+ completed: "completed";
8379
+ paused: "paused";
7855
8380
  on_track: "on_track";
7856
8381
  at_risk: "at_risk";
7857
8382
  blocked: "blocked";
7858
- paused: "paused";
7859
- completed: "completed";
7860
8383
  }>>;
7861
8384
  search: z.ZodOptional<z.ZodString>;
7862
8385
  client_id: z.ZodOptional<z.ZodString>;
@@ -7881,11 +8404,11 @@ declare const ProjectSchemas: {
7881
8404
  CreateMilestoneRequest: z.ZodObject<{
7882
8405
  name: z.ZodString;
7883
8406
  status: z.ZodOptional<z.ZodEnum<{
7884
- blocked: "blocked";
7885
8407
  completed: "completed";
8408
+ overdue: "overdue";
7886
8409
  upcoming: "upcoming";
8410
+ blocked: "blocked";
7887
8411
  in_progress: "in_progress";
7888
- overdue: "overdue";
7889
8412
  }>>;
7890
8413
  description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
7891
8414
  due_date: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -7895,11 +8418,11 @@ declare const ProjectSchemas: {
7895
8418
  UpdateMilestoneRequest: z.ZodObject<{
7896
8419
  name: z.ZodOptional<z.ZodString>;
7897
8420
  status: z.ZodOptional<z.ZodEnum<{
7898
- blocked: "blocked";
7899
8421
  completed: "completed";
8422
+ overdue: "overdue";
7900
8423
  upcoming: "upcoming";
8424
+ blocked: "blocked";
7901
8425
  in_progress: "in_progress";
7902
- overdue: "overdue";
7903
8426
  }>>;
7904
8427
  description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
7905
8428
  due_date: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -7923,25 +8446,25 @@ declare const ProjectSchemas: {
7923
8446
  name: z.ZodString;
7924
8447
  type: z.ZodOptional<z.ZodEnum<{
7925
8448
  code: "code";
7926
- feature: "feature";
7927
8449
  other: "other";
7928
8450
  research: "research";
7929
8451
  documentation: "documentation";
7930
8452
  report: "report";
7931
8453
  design: "design";
7932
8454
  refactor: "refactor";
8455
+ feature: "feature";
7933
8456
  bug: "bug";
7934
8457
  }>>;
7935
8458
  status: z.ZodOptional<z.ZodEnum<{
7936
- blocked: "blocked";
7937
8459
  completed: "completed";
8460
+ cancelled: "cancelled";
8461
+ blocked: "blocked";
7938
8462
  in_progress: "in_progress";
7939
8463
  planned: "planned";
7940
8464
  submitted: "submitted";
7941
8465
  approved: "approved";
7942
- revision_requested: "revision_requested";
7943
8466
  rejected: "rejected";
7944
- cancelled: "cancelled";
8467
+ revision_requested: "revision_requested";
7945
8468
  }>>;
7946
8469
  description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
7947
8470
  milestone_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -7959,25 +8482,25 @@ declare const ProjectSchemas: {
7959
8482
  name: z.ZodOptional<z.ZodString>;
7960
8483
  type: z.ZodOptional<z.ZodEnum<{
7961
8484
  code: "code";
7962
- feature: "feature";
7963
8485
  other: "other";
7964
8486
  research: "research";
7965
8487
  documentation: "documentation";
7966
8488
  report: "report";
7967
8489
  design: "design";
7968
8490
  refactor: "refactor";
8491
+ feature: "feature";
7969
8492
  bug: "bug";
7970
8493
  }>>;
7971
8494
  status: z.ZodOptional<z.ZodEnum<{
7972
- blocked: "blocked";
7973
8495
  completed: "completed";
8496
+ cancelled: "cancelled";
8497
+ blocked: "blocked";
7974
8498
  in_progress: "in_progress";
7975
8499
  planned: "planned";
7976
8500
  submitted: "submitted";
7977
8501
  approved: "approved";
7978
- revision_requested: "revision_requested";
7979
8502
  rejected: "rejected";
7980
- cancelled: "cancelled";
8503
+ revision_requested: "revision_requested";
7981
8504
  }>>;
7982
8505
  description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
7983
8506
  milestone_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -7996,15 +8519,15 @@ declare const ProjectSchemas: {
7996
8519
  MergeResumeContextRequest: z.ZodRecord<z.ZodString, z.ZodUnknown>;
7997
8520
  GetTasksQuery: z.ZodObject<{
7998
8521
  status: z.ZodOptional<z.ZodEnum<{
7999
- blocked: "blocked";
8000
8522
  completed: "completed";
8523
+ cancelled: "cancelled";
8524
+ blocked: "blocked";
8001
8525
  in_progress: "in_progress";
8002
8526
  planned: "planned";
8003
8527
  submitted: "submitted";
8004
8528
  approved: "approved";
8005
- revision_requested: "revision_requested";
8006
8529
  rejected: "rejected";
8007
- cancelled: "cancelled";
8530
+ revision_requested: "revision_requested";
8008
8531
  }>>;
8009
8532
  milestone_id: z.ZodOptional<z.ZodString>;
8010
8533
  parent_task_id: z.ZodOptional<z.ZodString>;
@@ -9349,47 +9872,73 @@ type ToolingErrorType = 'service_unavailable' | 'permission_denied' | 'platform_
9349
9872
  */
9350
9873
  type IntegrationType = 'gmail' | 'google-sheets' | 'slack' | 'github' | 'linear' | 'attio' | 'airtable' | 'salesforce' | 'hubspot' | 'stripe' | 'twilio' | 'sendgrid' | 'mailgun' | 'zapier' | 'webhook' | 'apify' | 'instantly' | 'resend' | 'signature-api' | 'dropbox' | 'anymailfinder' | 'tomba' | 'millionverifier';
9351
9874
 
9352
- declare const SystemEntrySchema: z.ZodObject<{
9353
- id: z.ZodString;
9354
- title: z.ZodString;
9355
- description: z.ZodString;
9356
- kind: z.ZodEnum<{
9357
- platform: "platform";
9358
- product: "product";
9359
- operational: "operational";
9360
- diagnostic: "diagnostic";
9361
- }>;
9362
- responsibleRoleId: z.ZodOptional<z.ZodString>;
9363
- governedByKnowledge: z.ZodDefault<z.ZodArray<z.ZodString>>;
9364
- drivesGoals: z.ZodDefault<z.ZodArray<z.ZodString>>;
9365
- status: z.ZodEnum<{
9366
- active: "active";
9367
- deprecated: "deprecated";
9368
- archived: "archived";
9369
- }>;
9370
- }, z.core.$strip>;
9371
- declare const SystemsDomainSchema: z.ZodObject<{
9372
- systems: z.ZodDefault<z.ZodArray<z.ZodObject<{
9373
- id: z.ZodString;
9374
- title: z.ZodString;
9375
- description: z.ZodString;
9376
- kind: z.ZodEnum<{
9377
- platform: "platform";
9378
- product: "product";
9379
- operational: "operational";
9380
- diagnostic: "diagnostic";
9381
- }>;
9382
- responsibleRoleId: z.ZodOptional<z.ZodString>;
9383
- governedByKnowledge: z.ZodDefault<z.ZodArray<z.ZodString>>;
9384
- drivesGoals: z.ZodDefault<z.ZodArray<z.ZodString>>;
9385
- status: z.ZodEnum<{
9386
- active: "active";
9387
- deprecated: "deprecated";
9388
- archived: "archived";
9389
- }>;
9390
- }, z.core.$strip>>>;
9875
+ /**
9876
+ * Placeholder discriminated union for ContentNode (Wave 1A).
9877
+ * Wave 2A wires concrete (kind, type) pairs via the registry.
9878
+ *
9879
+ * Per D2: unregistered (kind, type) pairs are allowed and pass through validation.
9880
+ * Per L14: every node carries BOTH `kind` and `type`.
9881
+ */
9882
+ declare const ContentNodeSchema: z.ZodObject<{
9883
+ label: z.ZodString;
9884
+ description: z.ZodOptional<z.ZodString>;
9885
+ order: z.ZodOptional<z.ZodNumber>;
9886
+ parentContentId: z.ZodOptional<z.ZodString>;
9887
+ kind: z.ZodString;
9888
+ type: z.ZodString;
9889
+ data: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
9391
9890
  }, z.core.$strip>;
9392
- type SystemEntry = z.infer<typeof SystemEntrySchema>;
9891
+ type ContentNode = z.infer<typeof ContentNodeSchema>;
9892
+
9893
+ type JsonPrimitive = string | number | boolean | null;
9894
+ type JsonValue = JsonPrimitive | JsonValue[] | {
9895
+ [key: string]: JsonValue;
9896
+ };
9897
+ /** Explicit interface needed to annotate the recursive SystemEntrySchema. */
9898
+ interface SystemEntry {
9899
+ id: string;
9900
+ label?: string;
9901
+ title?: string;
9902
+ description?: string;
9903
+ kind?: 'product' | 'operational' | 'platform' | 'diagnostic';
9904
+ parentSystemId?: string;
9905
+ ui?: {
9906
+ path: string;
9907
+ surfaces: string[];
9908
+ icon?: string;
9909
+ order?: number;
9910
+ };
9911
+ lifecycle?: 'draft' | 'beta' | 'active' | 'deprecated' | 'archived';
9912
+ responsibleRoleId?: string;
9913
+ governedByKnowledge?: string[];
9914
+ actions?: {
9915
+ actionId: string;
9916
+ intent: 'exposes' | 'consumes';
9917
+ invocation?: unknown;
9918
+ }[];
9919
+ policies?: string[];
9920
+ drivesGoals?: string[];
9921
+ /** @deprecated Use lifecycle. Accepted for one publish cycle. */
9922
+ status?: 'active' | 'deprecated' | 'archived';
9923
+ path?: string;
9924
+ icon?: string;
9925
+ color?: string;
9926
+ uiPosition?: 'sidebar-primary' | 'sidebar-bottom';
9927
+ enabled?: boolean;
9928
+ devOnly?: boolean;
9929
+ requiresAdmin?: boolean;
9930
+ order: number;
9931
+ config?: Record<string, JsonValue>;
9932
+ ontology?: OntologyScope;
9933
+ systems?: Record<string, SystemEntry>;
9934
+ /**
9935
+ * @deprecated Compatibility-only bridge for old tenant data and migration readers.
9936
+ * Author new semantic catalogs in `ontology` and local settings in `config`.
9937
+ */
9938
+ content?: Record<string, ContentNode>;
9939
+ subsystems?: Record<string, SystemEntry>;
9940
+ }
9941
+ declare const SystemsDomainSchema: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodType<SystemEntry, unknown, z.core.$ZodTypeInternals<SystemEntry, unknown>>>>;
9393
9942
 
9394
9943
  /**
9395
9944
  * Resource Registry type definitions
@@ -9404,7 +9953,7 @@ type ResourceStatus$1 = 'dev' | 'prod';
9404
9953
  * Used as the discriminator field in ResourceDefinition
9405
9954
  */
9406
9955
  type ResourceType = 'agent' | 'workflow' | 'trigger' | 'integration' | 'external' | 'human';
9407
- type ResourceSystemSummary = Pick<SystemEntry, 'id' | 'title' | 'description' | 'kind' | 'status'>;
9956
+ type ResourceSystemSummary = Pick<SystemEntry, 'id' | 'title' | 'description' | 'kind' | 'lifecycle'>;
9408
9957
  /**
9409
9958
  * Base interface for ALL platform resources
9410
9959
  * Shared by both executable (agents, workflows) and non-executable (triggers, integrations, etc.) resources
@@ -9430,8 +9979,8 @@ interface ResourceDefinition {
9430
9979
  sessionCapable?: boolean;
9431
9980
  /** Whether the resource is local (monorepo) or remote (externally deployed) */
9432
9981
  origin?: 'local' | 'remote';
9433
- /** OM System membership, when backed by a Resource descriptor */
9434
- systemId?: string;
9982
+ /** OM System membership — dot-separated system path (e.g. "sys.lead-gen"), when backed by a Resource descriptor */
9983
+ systemPath?: string;
9435
9984
  /** Display metadata for the owning OM System */
9436
9985
  system?: ResourceSystemSummary;
9437
9986
  /** Governance lifecycle status from the OM Resource descriptor */
@@ -9774,13 +10323,22 @@ type OrganizationModelResources = z.infer<typeof ResourcesDomainSchema>;
9774
10323
  declare const LinkSchema: z.ZodObject<{
9775
10324
  nodeId: z.ZodString;
9776
10325
  kind: z.ZodEnum<{
10326
+ links: "links";
10327
+ affects: "affects";
10328
+ effects: "effects";
10329
+ implements: "implements";
10330
+ reads: "reads";
10331
+ writes: "writes";
10332
+ emits: "emits";
9777
10333
  contains: "contains";
9778
10334
  references: "references";
9779
- exposes: "exposes";
9780
10335
  maps_to: "maps_to";
9781
- "operates-on": "operates-on";
9782
10336
  uses: "uses";
9783
10337
  governs: "governs";
10338
+ originates_from: "originates_from";
10339
+ triggers: "triggers";
10340
+ applies_to: "applies_to";
10341
+ uses_catalog: "uses_catalog";
9784
10342
  }>;
9785
10343
  }, z.core.$strip>;
9786
10344
  type Link = z.infer<typeof LinkSchema>;
@@ -10162,12 +10720,8 @@ declare class RegistryValidationError extends Error {
10162
10720
  type ResourceValidatorMode = 'strict' | 'warn-only';
10163
10721
  type ResourceGovernanceValidationIssueType = 'missing-code-resource' | 'missing-om-resource' | 'type-mismatch' | 'system-mismatch' | 'missing-om-system' | 'raw-resource-id';
10164
10722
  interface ResourceGovernanceModel {
10165
- systems?: {
10166
- systems: SystemEntry[];
10167
- };
10168
- resources?: {
10169
- entries: ResourceEntry[];
10170
- };
10723
+ systems?: Record<string, SystemEntry>;
10724
+ resources?: Record<string, ResourceEntry>;
10171
10725
  }
10172
10726
  interface ResourceGovernanceValidationIssue {
10173
10727
  type: ResourceGovernanceValidationIssueType;
@@ -10257,150 +10811,150 @@ declare class ToolingError extends ExecutionError {
10257
10811
  constructor(errorType: string, message: string, details?: unknown);
10258
10812
  }
10259
10813
 
10260
- // ============================================================================
10261
- // Lead-Gen Stateful Pipeline Definitions (Decision N8, Wave 4)
10262
- //
10263
- // Defines the (pipeline_key, stage_key, state_key) vocabulary for the three
10264
- // entities that carry the Stateful trait via Track B:
10265
- // - acq_lists (pipeline_key='lead-gen', stage_key='lifecycle')
10266
- // - acq_list_members (pipeline_key='lead-gen', stages: outreach / prospecting / qualification)
10267
- // - acq_list_companies (pipeline_key='lead-gen', stages: outreach / prospecting / qualification)
10268
- //
10269
- // DB columns (pipeline_key, stage_key, state_key) remain free-form text with no
10270
- // CHECK constraint — new states can be introduced without a migration (Decision N8).
10271
- // These definitions are the org-specific source of truth consumed by UI and tooling.
10272
- //
10273
- // State vocabularies sourced from the post-restructure sales tree (W3 canonical):
10274
- // outreach/:
10275
- // - personalized (instantly-personalization.ts → contacts)
10276
- // - uploaded (instantly-upload.ts → contacts)
10277
- // - interested (instantly-reply-handler.ts → contacts, initial reply transition)
10278
- // prospecting/:
10279
- // - populated (apify-acquire.ts, apify-scrape.ts → companies)
10280
- // - crawled (apify-website-crawl.ts → companies)
10281
- // - extracted (website-extract.ts → companies)
10282
- // - discovered (email-discovery.ts, anymailfinder-enrich.ts → contacts)
10283
- // - verified (email-verification.ts → contacts)
10284
- // qualification/:
10285
- // - qualified (company-qualification.ts → companies)
10286
- //
10287
- // The 'pending' state is the W2 backfill default (coalesce(stage, 'pending')).
10288
- // It is valid in any stage and represents "not yet processed by a workflow step".
10289
- // ============================================================================
10290
-
10291
- /** One state within a stage — minimal shape: key + display label. */
10292
- interface StatefulStateDefinition {
10293
- /** Matches state_key values written by workflow steps. */
10294
- stateKey: string
10295
- label: string
10296
- }
10297
-
10298
- /** One stage within a pipeline — has a stage_key and an ordered list of valid states. */
10299
- interface StatefulStageDefinition {
10300
- /** Matches stage_key values written by workflow steps. */
10301
- stageKey: string
10302
- label: string
10303
- /** UI color token. Consumers may map this to their design system. */
10304
- color?: string
10305
- states: StatefulStateDefinition[]
10306
- }
10307
-
10308
- /**
10309
- * Pipeline definition for a single entity participating in the Stateful trait.
10310
- * Parallel to acq_deals' pipeline_key concept but structured for lead-gen entities.
10311
- */
10312
- interface StatefulPipelineDefinition {
10313
- /** Matches pipeline_key values in the database (e.g. 'lead-gen'). */
10314
- pipelineKey: string
10315
- label: string
10316
- /** Entity this pipeline applies to (e.g. 'acq.list', 'acq.list-member', 'acq.list-company'). */
10317
- entityKey: string
10318
- stages: StatefulStageDefinition[]
10319
- }
10320
-
10321
- // ============================================================================
10322
- // CRM Stateful Pipeline Definition
10323
- //
10324
- // Defines the (pipeline_key, stage_key, state_key) vocabulary for crm.deal
10325
- // entities. Stage keys match DEFAULT_ORGANIZATION_MODEL_SALES.pipelines[0].stages.
10326
- //
10327
- // State vocabularies sourced from the CRM action/handler tree:
10328
- // interested/:
10329
- // - discovery_replied (instantly-reply-handler.ts → first/subsequent reply)
10330
- // - discovery_link_sent (crm-send-booking-link.ts, crm-rebook.ts → booking link sent)
10331
- // - discovery_nudging (crm-send-nudge.ts → nudge sent after link)
10332
- // - discovery_booking_cancelled (booking-revert.ts → Cal cancellation webhook)
10333
- // - reply_sent (crm-send-reply.ts → operator reply sent)
10334
- // - followup_1_sent (crm-reply-followup.ts day=3)
10335
- // - followup_2_sent (crm-reply-followup.ts day=5)
10336
- // - followup_3_sent (crm-reply-followup.ts day=7)
10337
- // proposal, closing, closed_won, closed_lost, nurturing: no observed sub-states
10338
- // ============================================================================
10339
-
10340
- declare const CRM_DISCOVERY_REPLIED_STATE: StatefulStateDefinition = {
10341
- stateKey: 'discovery_replied',
10342
- label: 'Discovery Replied'
10343
- }
10344
- declare const CRM_DISCOVERY_LINK_SENT_STATE: StatefulStateDefinition = {
10345
- stateKey: 'discovery_link_sent',
10346
- label: 'Discovery Link Sent'
10347
- }
10348
- declare const CRM_DISCOVERY_NUDGING_STATE: StatefulStateDefinition = {
10349
- stateKey: 'discovery_nudging',
10350
- label: 'Discovery Nudging'
10351
- }
10352
- declare const CRM_DISCOVERY_BOOKING_CANCELLED_STATE: StatefulStateDefinition = {
10353
- stateKey: 'discovery_booking_cancelled',
10354
- label: 'Discovery Booking Cancelled'
10355
- }
10356
- declare const CRM_REPLY_SENT_STATE: StatefulStateDefinition = {
10357
- stateKey: 'reply_sent',
10358
- label: 'Reply Sent'
10359
- }
10360
- declare const CRM_FOLLOWUP_1_SENT_STATE: StatefulStateDefinition = {
10361
- stateKey: 'followup_1_sent',
10362
- label: 'Follow-up 1 Sent'
10363
- }
10364
- declare const CRM_FOLLOWUP_2_SENT_STATE: StatefulStateDefinition = {
10365
- stateKey: 'followup_2_sent',
10366
- label: 'Follow-up 2 Sent'
10367
- }
10368
- declare const CRM_FOLLOWUP_3_SENT_STATE: StatefulStateDefinition = {
10369
- stateKey: 'followup_3_sent',
10370
- label: 'Follow-up 3 Sent'
10371
- }
10372
-
10373
- declare const CRM_PIPELINE_DEFINITION: StatefulPipelineDefinition = {
10374
- pipelineKey: 'crm',
10375
- label: 'CRM',
10376
- entityKey: 'crm.deal',
10377
- stages: [
10378
- {
10379
- stageKey: 'interested',
10380
- label: 'Interested',
10381
- color: 'blue',
10382
- states: [
10383
- CRM_DISCOVERY_REPLIED_STATE,
10384
- CRM_DISCOVERY_LINK_SENT_STATE,
10385
- CRM_DISCOVERY_NUDGING_STATE,
10386
- CRM_DISCOVERY_BOOKING_CANCELLED_STATE,
10387
- CRM_REPLY_SENT_STATE,
10388
- CRM_FOLLOWUP_1_SENT_STATE,
10389
- CRM_FOLLOWUP_2_SENT_STATE,
10390
- CRM_FOLLOWUP_3_SENT_STATE
10391
- ]
10392
- },
10393
- { stageKey: 'proposal', label: 'Proposal', color: 'yellow', states: [] },
10394
- { stageKey: 'closing', label: 'Closing', color: 'orange', states: [] },
10395
- { stageKey: 'closed_won', label: 'Closed Won', color: 'green', states: [] },
10396
- { stageKey: 'closed_lost', label: 'Closed Lost', color: 'red', states: [] },
10397
- { stageKey: 'nurturing', label: 'Nurturing', color: 'grape', states: [] }
10398
- ]
10814
+ // ============================================================================
10815
+ // Lead-Gen Stateful Pipeline Definitions (Decision N8, Wave 4)
10816
+ //
10817
+ // Defines the (pipeline_key, stage_key, state_key) vocabulary for the three
10818
+ // entities that carry the Stateful trait via Track B:
10819
+ // - acq_lists (pipeline_key='lead-gen', stage_key='lifecycle')
10820
+ // - acq_list_members (pipeline_key='lead-gen', stages: outreach / prospecting / qualification)
10821
+ // - acq_list_companies (pipeline_key='lead-gen', stages: outreach / prospecting / qualification)
10822
+ //
10823
+ // DB columns (pipeline_key, stage_key, state_key) remain free-form text with no
10824
+ // CHECK constraint — new states can be introduced without a migration (Decision N8).
10825
+ // These definitions are the org-specific source of truth consumed by UI and tooling.
10826
+ //
10827
+ // State vocabularies sourced from the post-restructure sales tree (W3 canonical):
10828
+ // outreach/:
10829
+ // - personalized (instantly-personalization.ts → contacts)
10830
+ // - uploaded (instantly-upload.ts → contacts)
10831
+ // - interested (instantly-reply-handler.ts → contacts, initial reply transition)
10832
+ // prospecting/:
10833
+ // - populated (apify-acquire.ts, apify-scrape.ts → companies)
10834
+ // - crawled (apify-website-crawl.ts → companies)
10835
+ // - extracted (website-extract.ts → companies)
10836
+ // - discovered (email-discovery.ts, anymailfinder-enrich.ts → contacts)
10837
+ // - verified (email-verification.ts → contacts)
10838
+ // qualification/:
10839
+ // - qualified (company-qualification.ts → companies)
10840
+ //
10841
+ // The 'pending' state is the W2 backfill default (coalesce(stage, 'pending')).
10842
+ // It is valid in any stage and represents "not yet processed by a workflow step".
10843
+ // ============================================================================
10844
+
10845
+ /** One state within a stage — minimal shape: key + display label. */
10846
+ interface StatefulStateDefinition {
10847
+ /** Matches state_key values written by workflow steps. */
10848
+ stateKey: string
10849
+ label: string
10850
+ }
10851
+
10852
+ /** One stage within a pipeline — has a stage_key and an ordered list of valid states. */
10853
+ interface StatefulStageDefinition {
10854
+ /** Matches stage_key values written by workflow steps. */
10855
+ stageKey: string
10856
+ label: string
10857
+ /** UI color token. Consumers may map this to their design system. */
10858
+ color?: string
10859
+ states: StatefulStateDefinition[]
10860
+ }
10861
+
10862
+ /**
10863
+ * Pipeline definition for a single entity participating in the Stateful trait.
10864
+ * Parallel to acq_deals' pipeline_key concept but structured for lead-gen entities.
10865
+ */
10866
+ interface StatefulPipelineDefinition {
10867
+ /** Matches pipeline_key values in the database (e.g. 'lead-gen'). */
10868
+ pipelineKey: string
10869
+ label: string
10870
+ /** Entity this pipeline applies to (e.g. 'acq.list', 'acq.list-member', 'acq.list-company'). */
10871
+ entityKey: string
10872
+ stages: StatefulStageDefinition[]
10873
+ }
10874
+
10875
+ // ============================================================================
10876
+ // CRM Stateful Pipeline Definition
10877
+ //
10878
+ // Defines the (pipeline_key, stage_key, state_key) vocabulary for crm.deal
10879
+ // entities. Stage keys match DEFAULT_ORGANIZATION_MODEL_SALES.pipelines[0].stages.
10880
+ //
10881
+ // State vocabularies sourced from the CRM action/handler tree:
10882
+ // interested/:
10883
+ // - discovery_replied (instantly-reply-handler.ts → first/subsequent reply)
10884
+ // - discovery_link_sent (crm-send-booking-link.ts, crm-rebook.ts → booking link sent)
10885
+ // - discovery_nudging (crm-send-nudge.ts → nudge sent after link)
10886
+ // - discovery_booking_cancelled (booking-revert.ts → Cal cancellation webhook)
10887
+ // - reply_sent (crm-send-reply.ts → operator reply sent)
10888
+ // - followup_1_sent (crm-reply-followup.ts day=3)
10889
+ // - followup_2_sent (crm-reply-followup.ts day=5)
10890
+ // - followup_3_sent (crm-reply-followup.ts day=7)
10891
+ // proposal, closing, closed_won, closed_lost, nurturing: no observed sub-states
10892
+ // ============================================================================
10893
+
10894
+ declare const CRM_DISCOVERY_REPLIED_STATE: StatefulStateDefinition = {
10895
+ stateKey: 'discovery_replied',
10896
+ label: 'Discovery Replied'
10897
+ }
10898
+ declare const CRM_DISCOVERY_LINK_SENT_STATE: StatefulStateDefinition = {
10899
+ stateKey: 'discovery_link_sent',
10900
+ label: 'Discovery Link Sent'
10901
+ }
10902
+ declare const CRM_DISCOVERY_NUDGING_STATE: StatefulStateDefinition = {
10903
+ stateKey: 'discovery_nudging',
10904
+ label: 'Discovery Nudging'
10905
+ }
10906
+ declare const CRM_DISCOVERY_BOOKING_CANCELLED_STATE: StatefulStateDefinition = {
10907
+ stateKey: 'discovery_booking_cancelled',
10908
+ label: 'Discovery Booking Cancelled'
10909
+ }
10910
+ declare const CRM_REPLY_SENT_STATE: StatefulStateDefinition = {
10911
+ stateKey: 'reply_sent',
10912
+ label: 'Reply Sent'
10913
+ }
10914
+ declare const CRM_FOLLOWUP_1_SENT_STATE: StatefulStateDefinition = {
10915
+ stateKey: 'followup_1_sent',
10916
+ label: 'Follow-up 1 Sent'
10917
+ }
10918
+ declare const CRM_FOLLOWUP_2_SENT_STATE: StatefulStateDefinition = {
10919
+ stateKey: 'followup_2_sent',
10920
+ label: 'Follow-up 2 Sent'
10921
+ }
10922
+ declare const CRM_FOLLOWUP_3_SENT_STATE: StatefulStateDefinition = {
10923
+ stateKey: 'followup_3_sent',
10924
+ label: 'Follow-up 3 Sent'
10925
+ }
10926
+
10927
+ declare const CRM_PIPELINE_DEFINITION: StatefulPipelineDefinition = {
10928
+ pipelineKey: 'crm',
10929
+ label: 'CRM',
10930
+ entityKey: 'crm.deal',
10931
+ stages: [
10932
+ {
10933
+ stageKey: 'interested',
10934
+ label: 'Interested',
10935
+ color: 'blue',
10936
+ states: [
10937
+ CRM_DISCOVERY_REPLIED_STATE,
10938
+ CRM_DISCOVERY_LINK_SENT_STATE,
10939
+ CRM_DISCOVERY_NUDGING_STATE,
10940
+ CRM_DISCOVERY_BOOKING_CANCELLED_STATE,
10941
+ CRM_REPLY_SENT_STATE,
10942
+ CRM_FOLLOWUP_1_SENT_STATE,
10943
+ CRM_FOLLOWUP_2_SENT_STATE,
10944
+ CRM_FOLLOWUP_3_SENT_STATE
10945
+ ]
10946
+ },
10947
+ { stageKey: 'proposal', label: 'Proposal', color: 'yellow', states: [] },
10948
+ { stageKey: 'closing', label: 'Closing', color: 'orange', states: [] },
10949
+ { stageKey: 'closed_won', label: 'Closed Won', color: 'green', states: [] },
10950
+ { stageKey: 'closed_lost', label: 'Closed Lost', color: 'red', states: [] },
10951
+ { stageKey: 'nurturing', label: 'Nurturing', color: 'grape', states: [] }
10952
+ ]
10399
10953
  }
10400
10954
 
10401
- declare const CrmStageKeySchema = z.enum(crmStageKeys)
10402
- declare const CrmStateKeySchema = z.enum(crmStateKeys)
10403
- type CrmStageKey = z.infer<typeof CrmStageKeySchema>
10955
+ declare const CrmStageKeySchema = z.enum(crmStageKeys)
10956
+ declare const CrmStateKeySchema = z.enum(crmStateKeys)
10957
+ type CrmStageKey = z.infer<typeof CrmStageKeySchema>
10404
10958
  type CrmStateKey = z.infer<typeof CrmStateKeySchema>
10405
10959
 
10406
10960
  /**