@elevasis/sdk 1.44.3 → 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 (259) hide show
  1. package/dist/cli.cjs +35026 -30226
  2. package/dist/index.d.ts +1786 -808
  3. package/dist/index.js +789 -739
  4. package/dist/node/index.d.ts +105 -181
  5. package/dist/node/index.js +2 -2
  6. package/dist/test-utils/index.d.ts +901 -359
  7. package/dist/test-utils/index.js +587 -824
  8. package/dist/worker/index.d.ts +12685 -0
  9. package/dist/worker/index.js +188 -216
  10. package/package.json +4 -7
  11. package/reference/_navigation.md +161 -22
  12. package/reference/_reference-manifest.json +228 -4
  13. package/reference/claude-config.md +8 -0
  14. package/reference/core/exports.mdx +2 -0
  15. package/reference/core/index.mdx +3 -3
  16. package/reference/examples/organization-model.ts +117 -111
  17. package/reference/index.mdx +4 -4
  18. package/reference/packages/core/src/business/README.md +4 -1
  19. package/reference/packages/core/src/content/README.md +19 -0
  20. package/reference/packages/core/src/organization-model/README.md +148 -149
  21. package/reference/packages/core/src/organization-model/readiness/README.md +42 -0
  22. package/reference/packages/ui/src/features/README.md +28 -28
  23. package/reference/rules/active-change-index.md +40 -54
  24. package/reference/rules/agent-runtime.md +81 -0
  25. package/reference/rules/agent-start-here.md +71 -163
  26. package/reference/rules/deployment.md +33 -10
  27. package/reference/rules/error-handling.md +26 -0
  28. package/reference/rules/execution.md +13 -0
  29. package/reference/rules/frontend.md +10 -3
  30. package/reference/rules/observability.md +9 -1
  31. package/reference/rules/operations.md +26 -17
  32. package/reference/rules/organization-model.md +74 -88
  33. package/reference/rules/organization-os.md +71 -88
  34. package/reference/rules/package-taxonomy.md +11 -2
  35. package/reference/rules/platform.md +13 -7
  36. package/reference/rules/shared-types.md +36 -0
  37. package/reference/rules/task-tracking.md +30 -5
  38. package/reference/rules/ui.md +145 -3
  39. package/reference/rules/vibe-intents.md +271 -0
  40. package/reference/rules/vibe.md +17 -243
  41. package/reference/scaffold/core/organization-graph.mdx +112 -99
  42. package/reference/scaffold/core/organization-model.mdx +231 -215
  43. package/reference/scaffold/operations/propagation-pipeline.md +16 -17
  44. package/reference/scaffold/operations/scaffold-maintenance.md +22 -20
  45. package/reference/scaffold/operations/workflow-recipes.md +72 -20
  46. package/reference/scaffold/recipes/add-a-feature.md +156 -146
  47. package/reference/scaffold/recipes/add-a-resource.md +123 -117
  48. package/reference/scaffold/recipes/customize-crm-actions.md +28 -13
  49. package/reference/scaffold/recipes/customize-knowledge-browser.md +52 -117
  50. package/reference/scaffold/recipes/customize-organization-model.md +161 -149
  51. package/reference/scaffold/recipes/extend-a-base-entity.md +156 -140
  52. package/reference/scaffold/recipes/extend-content.md +265 -0
  53. package/reference/scaffold/recipes/extend-crm.md +16 -11
  54. package/reference/scaffold/recipes/extend-lead-gen.md +37 -21
  55. package/reference/scaffold/recipes/gate-by-feature-or-admin.md +160 -118
  56. package/reference/scaffold/recipes/index.md +6 -3
  57. package/reference/scaffold/recipes/query-the-knowledge-graph.md +23 -23
  58. package/reference/scaffold/reference/contracts.md +30 -56
  59. package/reference/scaffold/reference/feature-registry.md +3 -0
  60. package/reference/scaffold/reference/glossary.md +4 -4
  61. package/reference/scaffold/reference/system-interface-capabilities.md +5 -4
  62. package/reference/scaffold/ui/composition-extensibility.mdx +271 -232
  63. package/reference/scaffold/ui/customization.md +2 -2
  64. package/reference/scaffold/ui/feature-flags-and-gating.md +14 -6
  65. package/reference/scaffold/ui/feature-shell.mdx +277 -62
  66. package/reference/scaffold/ui/recipes.md +229 -197
  67. package/reference/sdk/cli-management.mdx +166 -33
  68. package/reference/sdk/cli.mdx +90 -13
  69. package/reference/sdk/concepts.mdx +2 -0
  70. package/reference/sdk/define-builders.mdx +76 -0
  71. package/reference/sdk/deployment/command-center.mdx +6 -2
  72. package/reference/sdk/deployment/execution-reference.mdx +64 -186
  73. package/reference/sdk/deployment/index.mdx +2 -0
  74. package/reference/sdk/exports.mdx +4 -4
  75. package/reference/sdk/framework/agent.mdx +52 -116
  76. package/reference/sdk/framework/index.mdx +46 -65
  77. package/reference/sdk/framework/project-structure.mdx +150 -205
  78. package/reference/sdk/framework/tutorial-system.mdx +2 -2
  79. package/reference/sdk/human-in-the-loop.mdx +152 -0
  80. package/reference/sdk/index.mdx +6 -7
  81. package/reference/sdk/platform-tools/adapters-platform.mdx +3 -1
  82. package/reference/sdk/platform-tools/index.mdx +12 -0
  83. package/reference/sdk/platform-tools/type-safety.mdx +4 -0
  84. package/reference/sdk/project-deployment-spec.mdx +131 -0
  85. package/reference/sdk/resources/index.mdx +21 -7
  86. package/reference/sdk/resources/patterns.mdx +54 -24
  87. package/reference/sdk/resources/types.mdx +7 -4
  88. package/reference/sdk/templates/data-enrichment.mdx +7 -3
  89. package/reference/sdk/templates/email-sender.mdx +139 -135
  90. package/reference/sdk/templates/lead-scorer.mdx +5 -1
  91. package/reference/sdk/templates/pdf-generator.mdx +155 -151
  92. package/reference/sdk/templates/recurring-job.mdx +195 -189
  93. package/reference/sdk/templates/text-classifier.mdx +4 -0
  94. package/reference/sdk/templates/web-scraper.mdx +139 -135
  95. package/reference/spine/spine-primer.md +135 -96
  96. package/reference/ui/exports.mdx +1 -0
  97. package/reference/ui/index.mdx +14 -7
  98. package/dist/types/worker/adapters/anymailfinder.d.ts +0 -14
  99. package/dist/types/worker/adapters/apify.d.ts +0 -14
  100. package/dist/types/worker/adapters/approval.d.ts +0 -23
  101. package/dist/types/worker/adapters/attio.d.ts +0 -22
  102. package/dist/types/worker/adapters/clickup.d.ts +0 -22
  103. package/dist/types/worker/adapters/create-adapter.d.ts +0 -41
  104. package/dist/types/worker/adapters/crm.d.ts +0 -20
  105. package/dist/types/worker/adapters/dropbox.d.ts +0 -14
  106. package/dist/types/worker/adapters/email.d.ts +0 -25
  107. package/dist/types/worker/adapters/execution.d.ts +0 -22
  108. package/dist/types/worker/adapters/gmail.d.ts +0 -14
  109. package/dist/types/worker/adapters/google-sheets.d.ts +0 -14
  110. package/dist/types/worker/adapters/index.d.ts +0 -33
  111. package/dist/types/worker/adapters/instantly.d.ts +0 -14
  112. package/dist/types/worker/adapters/lead.d.ts +0 -28
  113. package/dist/types/worker/adapters/list.d.ts +0 -9
  114. package/dist/types/worker/adapters/llm.d.ts +0 -45
  115. package/dist/types/worker/adapters/millionverifier.d.ts +0 -14
  116. package/dist/types/worker/adapters/notification.d.ts +0 -28
  117. package/dist/types/worker/adapters/pdf.d.ts +0 -22
  118. package/dist/types/worker/adapters/projects.d.ts +0 -20
  119. package/dist/types/worker/adapters/resend.d.ts +0 -14
  120. package/dist/types/worker/adapters/scheduler.d.ts +0 -25
  121. package/dist/types/worker/adapters/signature-api.d.ts +0 -14
  122. package/dist/types/worker/adapters/storage.d.ts +0 -33
  123. package/dist/types/worker/adapters/stripe.d.ts +0 -14
  124. package/dist/types/worker/adapters/tomba.d.ts +0 -14
  125. package/dist/types/worker/index.d.ts +0 -60
  126. package/dist/types/worker/platform.d.ts +0 -90
  127. package/dist/types/worker/utils.d.ts +0 -9
  128. package/reference/claude-config/Overview.md +0 -230
  129. package/reference/claude-config/hooks/post-edit-validate.mjs +0 -98
  130. package/reference/claude-config/hooks/scaffold-registry-reminder.mjs +0 -187
  131. package/reference/claude-config/hooks/tool-failure-recovery.mjs +0 -73
  132. package/reference/claude-config/registries/graph-skills.json +0 -4
  133. package/reference/claude-config/registries/knowledge-flags.json +0 -154
  134. package/reference/claude-config/registries/skill-coverage.json +0 -20
  135. package/reference/claude-config/rules/active-change-index.md +0 -22
  136. package/reference/claude-config/rules/agent-start-here.md +0 -22
  137. package/reference/claude-config/rules/deployment.md +0 -22
  138. package/reference/claude-config/rules/error-handling.md +0 -22
  139. package/reference/claude-config/rules/execution.md +0 -22
  140. package/reference/claude-config/rules/frontend.md +0 -22
  141. package/reference/claude-config/rules/observability.md +0 -22
  142. package/reference/claude-config/rules/operations.md +0 -22
  143. package/reference/claude-config/rules/organization-model.md +0 -22
  144. package/reference/claude-config/rules/organization-os.md +0 -22
  145. package/reference/claude-config/rules/package-taxonomy.md +0 -22
  146. package/reference/claude-config/rules/platform.md +0 -22
  147. package/reference/claude-config/rules/shared-types.md +0 -22
  148. package/reference/claude-config/rules/task-tracking.md +0 -22
  149. package/reference/claude-config/rules/topbar-actions.md +0 -70
  150. package/reference/claude-config/rules/ui.md +0 -22
  151. package/reference/claude-config/rules/vibe.md +0 -22
  152. package/reference/claude-config/scripts/statusline-command.js +0 -18
  153. package/reference/claude-config/settings.json +0 -30
  154. package/reference/claude-config/skills/client/SKILL.md +0 -201
  155. package/reference/claude-config/skills/deploy/SKILL.md +0 -159
  156. package/reference/claude-config/skills/dsp/SKILL.md +0 -66
  157. package/reference/claude-config/skills/elevasis/SKILL.md +0 -251
  158. package/reference/claude-config/skills/explore/SKILL.md +0 -78
  159. package/reference/claude-config/skills/git-sync/SKILL.md +0 -166
  160. package/reference/claude-config/skills/om/SKILL.md +0 -475
  161. package/reference/claude-config/skills/om/operations/build.md +0 -237
  162. package/reference/claude-config/skills/om/operations/codify-level-a.md +0 -109
  163. package/reference/claude-config/skills/om/operations/codify-level-b.md +0 -159
  164. package/reference/claude-config/skills/om/operations/customers.md +0 -114
  165. package/reference/claude-config/skills/om/operations/features.md +0 -88
  166. package/reference/claude-config/skills/om/operations/goals.md +0 -123
  167. package/reference/claude-config/skills/om/operations/identity.md +0 -97
  168. package/reference/claude-config/skills/om/operations/labels.md +0 -110
  169. package/reference/claude-config/skills/om/operations/offerings.md +0 -114
  170. package/reference/claude-config/skills/om/operations/roles.md +0 -104
  171. package/reference/claude-config/skills/om/operations/scaffold.md +0 -163
  172. package/reference/claude-config/skills/om/operations/techStack.md +0 -38
  173. package/reference/claude-config/skills/project/SKILL.md +0 -1114
  174. package/reference/claude-config/skills/run-ui/SKILL.md +0 -73
  175. package/reference/claude-config/skills/save/SKILL.md +0 -183
  176. package/reference/claude-config/skills/setup/SKILL.md +0 -290
  177. package/reference/claude-config/skills/status/SKILL.md +0 -59
  178. package/reference/claude-config/skills/submit-request/SKILL.md +0 -180
  179. package/reference/claude-config/skills/sync/SKILL.md +0 -47
  180. package/reference/claude-config/skills/tutorial/SKILL.md +0 -259
  181. package/reference/claude-config/skills/tutorial/progress-template.md +0 -74
  182. package/reference/claude-config/skills/tutorial/technical.md +0 -1303
  183. package/reference/claude-config/skills/tutorial/vibe-coder.md +0 -890
  184. package/reference/claude-config/sync-notes/2026-04-22-git-sync-and-sync-notes.md +0 -27
  185. package/reference/claude-config/sync-notes/2026-04-22-lead-gen-deliverability-removal.md +0 -30
  186. package/reference/claude-config/sync-notes/2026-04-24-test-utils-and-template-tests.md +0 -73
  187. package/reference/claude-config/sync-notes/2026-04-24-ui-consolidation-and-sdk-cli-train.md +0 -86
  188. package/reference/claude-config/sync-notes/2026-04-25-auth-role-system-and-settings-roles.md +0 -55
  189. package/reference/claude-config/sync-notes/2026-04-27-crm-hitl-action-layer-cutover.md +0 -97
  190. package/reference/claude-config/sync-notes/2026-04-27-lead-gen-substrate-train.md +0 -112
  191. package/reference/claude-config/sync-notes/2026-04-29-crm-state-and-lead-gen-processing-status.md +0 -93
  192. package/reference/claude-config/sync-notes/2026-05-02-crm-ownership-next-action.md +0 -58
  193. package/reference/claude-config/sync-notes/2026-05-02-template-hardcode-workos-config.md +0 -56
  194. package/reference/claude-config/sync-notes/2026-05-04-elevasis-workspace.md +0 -71
  195. package/reference/claude-config/sync-notes/2026-05-04-knowledge-bundle.md +0 -83
  196. package/reference/claude-config/sync-notes/2026-05-04-template-skills-run-ui-and-tutorial.md +0 -59
  197. package/reference/claude-config/sync-notes/2026-05-05-list-builder.md +0 -42
  198. package/reference/claude-config/sync-notes/2026-05-06-crm-spine.md +0 -60
  199. package/reference/claude-config/sync-notes/2026-05-06-sdk-changes-release-train.md +0 -37
  200. package/reference/claude-config/sync-notes/2026-05-07-sdk-changes-release-train.md +0 -34
  201. package/reference/claude-config/sync-notes/2026-05-08-resource-governance-scaffold-guidance.md +0 -38
  202. package/reference/claude-config/sync-notes/2026-05-09-clients-domain.md +0 -32
  203. package/reference/claude-config/sync-notes/2026-05-09-command-system.md +0 -33
  204. package/reference/claude-config/sync-notes/2026-05-09-resource-governance-and-misc.md +0 -69
  205. package/reference/claude-config/sync-notes/2026-05-12-sdk-ready-release-train.md +0 -30
  206. package/reference/claude-config/sync-notes/2026-05-14-organization-model-ontology-refactor.md +0 -45
  207. package/reference/claude-config/sync-notes/2026-05-15-om-skill-rename-and-write-family.md +0 -52
  208. package/reference/claude-config/sync-notes/2026-05-17-sdk-boundary-consolidation.md +0 -33
  209. package/reference/claude-config/sync-notes/2026-05-20-om-define-helpers.md +0 -32
  210. package/reference/claude-config/sync-notes/2026-05-22-access-model-and-right-panel.md +0 -43
  211. package/reference/claude-config/sync-notes/2026-05-22-lead-gen-tenant-config.md +0 -40
  212. package/reference/claude-config/sync-notes/2026-05-22-org-model-multi-file-split.md +0 -61
  213. package/reference/claude-config/sync-notes/2026-05-23-branding-names-to-identity.md +0 -49
  214. package/reference/claude-config/sync-notes/2026-05-23-lead-gen-manage-access.md +0 -31
  215. package/reference/claude-config/sync-notes/2026-05-23-om-deployment-drift-detection.md +0 -42
  216. package/reference/claude-config/sync-notes/2026-05-23-om-full-model-deploy-contract.md +0 -33
  217. package/reference/claude-config/sync-notes/2026-05-23-ui-sdk-package-fixes.md +0 -37
  218. package/reference/claude-config/sync-notes/2026-05-24-platform-invite-router-core-baseline.md +0 -28
  219. package/reference/claude-config/sync-notes/2026-05-24-system-interface-readiness.md +0 -43
  220. package/reference/claude-config/sync-notes/2026-05-25-invitation-login-loader.md +0 -26
  221. package/reference/claude-config/sync-notes/2026-05-25-om-topbar-requests.md +0 -33
  222. package/reference/claude-config/sync-notes/2026-05-25-system-interface-profile-registry-and-substrate.md +0 -35
  223. package/reference/claude-config/sync-notes/2026-05-25-tenant-om-scaffold-cli.md +0 -49
  224. package/reference/claude-config/sync-notes/2026-05-25-vibe-operate-intent.md +0 -47
  225. package/reference/claude-config/sync-notes/2026-05-28-om-snapshot-sdk-workflow-config.md +0 -33
  226. package/reference/claude-config/sync-notes/2026-05-30-client-source-and-om-profiles.md +0 -39
  227. package/reference/claude-config/sync-notes/2026-06-02-knowledge-nested-group-routing.md +0 -27
  228. package/reference/claude-config/sync-notes/2026-06-02-nest-projects-under-platform.md +0 -45
  229. package/reference/claude-config/sync-notes/2026-06-03-skill-autogen-and-client-skill.md +0 -34
  230. package/reference/claude-config/sync-notes/2026-06-04-scaffold-registry-lane-severity.md +0 -34
  231. package/reference/claude-config/sync-notes/2026-06-05-appearance-app-mode-decouple.md +0 -29
  232. package/reference/claude-config/sync-notes/2026-06-05-ontology-endpoint-rename-and-knowledge-browser-ui.md +0 -86
  233. package/reference/claude-config/sync-notes/2026-06-06-om-build-systems-scaffold.md +0 -47
  234. package/reference/claude-config/sync-notes/2026-06-06-om-item-copy-references.md +0 -50
  235. package/reference/claude-config/sync-notes/2026-06-08-knowledge-base-page-not-found-fix.md +0 -76
  236. package/reference/claude-config/sync-notes/2026-06-09-agent-sessions-public-agent-chat-route.md +0 -75
  237. package/reference/claude-config/sync-notes/2026-06-09-sdk-cli-load-org-model-resolution.md +0 -42
  238. package/reference/claude-config/sync-notes/2026-06-12-agent-grants-visualizer-operations.md +0 -30
  239. package/reference/claude-config/sync-notes/2026-06-14-session-ux-and-project-cli-json.md +0 -33
  240. package/reference/claude-config/sync-notes/2026-06-14-shared-session-conversation-view.md +0 -26
  241. package/reference/claude-config/sync-notes/2026-06-15-session-chat-zero-wiring.md +0 -46
  242. package/reference/claude-config/sync-notes/2026-06-17-agent-session-ux-features.md +0 -34
  243. package/reference/claude-config/sync-notes/2026-06-25-shared-page-scroll-contract-guard.md +0 -52
  244. package/reference/claude-config/sync-notes/2026-06-26-leadgen-overview-om-telemetry.md +0 -47
  245. package/reference/claude-config/sync-notes/2026-07-21-agent-scaffold-hardening.md +0 -75
  246. package/reference/claude-config/sync-notes/2026-07-23-agent-session-memory.md +0 -49
  247. package/reference/claude-config/sync-notes/2026-07-23-workos-org-marker.md +0 -50
  248. package/reference/claude-config/sync-notes/2026-07-24-claude-5-models-and-session-surface-fixes.md +0 -116
  249. package/reference/claude-config/sync-notes/2026-07-27-agent-strict-output-and-turn-drift.md +0 -73
  250. package/reference/claude-config/sync-notes/2026-07-28-agent-reply-is-its-own-field.md +0 -84
  251. package/reference/claude-config/sync-notes/2026-07-30-login-screen-and-member-provisioning-state.md +0 -114
  252. package/reference/claude-config/sync-notes/2026-08-02-auth-guard-defaults-and-truncation-fix.md +0 -122
  253. package/reference/claude-config/sync-notes/2026-08-03-agent-prose-escape-normalization.md +0 -88
  254. package/reference/claude-config/sync-notes/2026-08-03-cli-gateway-errors-and-request-timeout.md +0 -120
  255. package/reference/claude-config/sync-notes/README.md +0 -43
  256. package/reference/sdk/framework/interaction-guidance.mdx +0 -182
  257. package/reference/sdk/framework/memory.mdx +0 -326
  258. package/reference/sdk/framework/resource-documentation.mdx +0 -90
  259. package/reference/sdk/roadmap.mdx +0 -164
package/dist/index.d.ts CHANGED
@@ -289,6 +289,31 @@ interface AgentScopedLogger {
289
289
  lifecycle(lifecycle: AgentLifecycle, stage: 'failed', data: AgentLifecycleFailedData): void;
290
290
  reasoning(output: string, iteration: number, startTime: number, endTime: number, duration: number): void;
291
291
  action(actionType: string, message: string, iteration: number, startTime: number, endTime: number, duration: number): void;
292
+ /**
293
+ * Time a unit of work and emit the single `action` event it produces.
294
+ *
295
+ * Captures `Date.now()` immediately before and after `work()`, then emits the same event
296
+ * `action()` would -- collapsing the repeated `startTime = Date.now(); ...work...; endTime =
297
+ * Date.now(); action(actionType, message, iteration, startTime, endTime, endTime - startTime)`
298
+ * boilerplate found at memory-write and tool-result call sites into a single call.
299
+ *
300
+ * `actionType` may be a function of the work's result for the rare call site where the emitted
301
+ * type itself depends on the outcome (e.g. "deleted" vs "delete of a missing key") -- most
302
+ * callers just pass a fixed string.
303
+ *
304
+ * **Throw behavior:** if `work` throws synchronously or its promise rejects, the error propagates
305
+ * to the caller UNCHANGED and NO `action` event is emitted -- there is no completed unit of work
306
+ * to describe, so this deliberately does not swallow the error or log a synthetic failure action.
307
+ * A call site that needs an error-path log keeps calling `action()` manually from its own
308
+ * `catch` block.
309
+ *
310
+ * @param actionType - Action type string, or a function deriving it from the result
311
+ * @param iteration - Current iteration number
312
+ * @param work - The unit of work to time (sync or async)
313
+ * @param message - Builds the human-readable message from the work's result
314
+ * @returns The value returned by `work`
315
+ */
316
+ timed<T>(actionType: string | ((result: T) => string), iteration: number, work: () => Promise<T> | T, message: (result: T) => string): Promise<T>;
292
317
  toolCall(toolName: string, iteration: number, startTime: number, endTime: number, duration: number, success: boolean, error?: string, input?: unknown, output?: unknown): void;
293
318
  }
294
319
 
@@ -305,7 +330,30 @@ declare const ResourceGovernanceStatusSchema: z.ZodEnum<{
305
330
  deprecated: "deprecated";
306
331
  archived: "archived";
307
332
  }>;
308
- declare const WorkflowResourceEntrySchema$1: z.ZodObject<{
333
+ declare const ResourceOntologyBindingSchema: z.ZodObject<{
334
+ actions: z.ZodOptional<z.ZodArray<z.ZodString>>;
335
+ primaryAction: z.ZodOptional<z.ZodString>;
336
+ reads: z.ZodOptional<z.ZodArray<z.ZodString>>;
337
+ writes: z.ZodOptional<z.ZodArray<z.ZodString>>;
338
+ usesCatalogs: z.ZodOptional<z.ZodArray<z.ZodString>>;
339
+ emits: z.ZodOptional<z.ZodArray<z.ZodString>>;
340
+ contract: z.ZodOptional<z.ZodObject<{
341
+ input: z.ZodOptional<z.ZodString>;
342
+ output: z.ZodOptional<z.ZodString>;
343
+ }, z.core.$strip>>;
344
+ }, z.core.$strip>;
345
+ type OntologyRefInput = string | {
346
+ id: string;
347
+ };
348
+ type ResourceOntologyBindingInput = {
349
+ actions?: OntologyRefInput[];
350
+ primaryAction?: OntologyRefInput;
351
+ reads?: OntologyRefInput[];
352
+ writes?: OntologyRefInput[];
353
+ usesCatalogs?: OntologyRefInput[];
354
+ emits?: OntologyRefInput[];
355
+ };
356
+ declare const WorkflowResourceEntrySchema: z.ZodObject<{
309
357
  id: z.ZodString;
310
358
  order: z.ZodDefault<z.ZodNumber>;
311
359
  systemPath: z.ZodString;
@@ -356,7 +404,7 @@ declare const WorkflowResourceEntrySchema$1: z.ZodObject<{
356
404
  }>>;
357
405
  }, z.core.$strip>>>;
358
406
  }, z.core.$strip>;
359
- declare const AgentResourceEntrySchema$1: z.ZodObject<{
407
+ declare const AgentResourceEntrySchema: z.ZodObject<{
360
408
  id: z.ZodString;
361
409
  order: z.ZodDefault<z.ZodNumber>;
362
410
  systemPath: z.ZodString;
@@ -438,7 +486,47 @@ declare const AgentResourceEntrySchema$1: z.ZodObject<{
438
486
  }>>;
439
487
  }, z.core.$strip>>>;
440
488
  }, z.core.$strip>;
441
- declare const ResourceEntrySchema$1: z.ZodDiscriminatedUnion<[z.ZodObject<{
489
+ declare const IntegrationResourceEntrySchema: z.ZodObject<{
490
+ id: z.ZodString;
491
+ order: z.ZodDefault<z.ZodNumber>;
492
+ systemPath: z.ZodString;
493
+ title: z.ZodOptional<z.ZodString>;
494
+ description: z.ZodOptional<z.ZodString>;
495
+ ownerRoleId: z.ZodOptional<z.ZodString>;
496
+ status: z.ZodEnum<{
497
+ active: "active";
498
+ deprecated: "deprecated";
499
+ archived: "archived";
500
+ }>;
501
+ ontology: z.ZodOptional<z.ZodObject<{
502
+ actions: z.ZodOptional<z.ZodArray<z.ZodString>>;
503
+ primaryAction: z.ZodOptional<z.ZodString>;
504
+ reads: z.ZodOptional<z.ZodArray<z.ZodString>>;
505
+ writes: z.ZodOptional<z.ZodArray<z.ZodString>>;
506
+ usesCatalogs: z.ZodOptional<z.ZodArray<z.ZodString>>;
507
+ emits: z.ZodOptional<z.ZodArray<z.ZodString>>;
508
+ contract: z.ZodOptional<z.ZodObject<{
509
+ input: z.ZodOptional<z.ZodString>;
510
+ output: z.ZodOptional<z.ZodString>;
511
+ }, z.core.$strip>>;
512
+ }, z.core.$strip>>;
513
+ codeRefs: z.ZodDefault<z.ZodArray<z.ZodObject<{
514
+ path: z.ZodString;
515
+ role: z.ZodEnum<{
516
+ entrypoint: "entrypoint";
517
+ handler: "handler";
518
+ schema: "schema";
519
+ test: "test";
520
+ docs: "docs";
521
+ config: "config";
522
+ }>;
523
+ symbol: z.ZodOptional<z.ZodString>;
524
+ description: z.ZodOptional<z.ZodString>;
525
+ }, z.core.$strip>>>;
526
+ kind: z.ZodLiteral<"integration">;
527
+ provider: z.ZodString;
528
+ }, z.core.$strip>;
529
+ declare const ResourceEntrySchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
442
530
  id: z.ZodString;
443
531
  order: z.ZodDefault<z.ZodNumber>;
444
532
  systemPath: z.ZodString;
@@ -656,10 +744,14 @@ declare const ResourceEntrySchema$1: z.ZodDiscriminatedUnion<[z.ZodObject<{
656
744
  file: z.ZodString;
657
745
  }, z.core.$strip>]>;
658
746
  }, z.core.$strip>], "kind">;
747
+ declare function defineResource<const TResource extends ResourceEntry>(resource: TResource): TResource;
748
+ declare function defineResources<const TResources extends Record<string, ResourceEntry>>(resources: TResources): TResources;
749
+ declare function defineResourceOntology(input: ResourceOntologyBindingInput): ResourceOntologyBinding;
659
750
  type ResourceGovernanceStatus = z.infer<typeof ResourceGovernanceStatusSchema>;
660
- type WorkflowResourceEntry = z.infer<typeof WorkflowResourceEntrySchema$1>;
661
- type AgentResourceEntry = z.infer<typeof AgentResourceEntrySchema$1>;
662
- type ResourceEntry$1 = z.infer<typeof ResourceEntrySchema$1>;
751
+ type ResourceOntologyBinding = z.infer<typeof ResourceOntologyBindingSchema>;
752
+ type WorkflowResourceEntry = z.infer<typeof WorkflowResourceEntrySchema>;
753
+ type AgentResourceEntry = z.infer<typeof AgentResourceEntrySchema>;
754
+ type ResourceEntry = z.infer<typeof ResourceEntrySchema>;
663
755
 
664
756
  /**
665
757
  * Memory type definitions
@@ -779,13 +871,6 @@ interface MemoryStatus {
779
871
  storedHistoryPercent: number;
780
872
  historyBudget: number;
781
873
  }
782
- /**
783
- * Memory constraints (optional limits)
784
- */
785
- interface MemoryConstraints {
786
- maxSessionMemoryKeys?: number;
787
- maxMemoryTokens?: number;
788
- }
789
874
 
790
875
  /**
791
876
  * Types for the schema compiler. `compile.ts` walks a `JsonSchema` once, driven entirely by a
@@ -1182,14 +1267,13 @@ declare class MemoryManager {
1182
1267
  private memory;
1183
1268
  private constraints;
1184
1269
  private logger?;
1185
- private cachedSnapshot?;
1186
1270
  /**
1187
1271
  * Rolling correction for `estimateTokens`'s bias, learned from real provider usage.
1188
1272
  * `undefined` until the first `recordActualUsage` call -- the cold-start state, where
1189
1273
  * `estimate()` returns the raw `estimateTokens` output unscaled. See `recordActualUsage`.
1190
1274
  */
1191
1275
  private tokenCorrectionFactor?;
1192
- constructor(memory: AgentMemory, constraints?: MemoryConstraints, logger?: AgentScopedLogger | undefined);
1276
+ constructor(memory: AgentMemory, constraints?: AgentConstraints, logger?: AgentScopedLogger | undefined);
1193
1277
  /**
1194
1278
  * Record how far `estimateTokens` was from reality on a real provider call, and roll it into a
1195
1279
  * correction applied to every estimate this instance makes from here on -- `getStatus`'s three
@@ -1284,17 +1368,14 @@ declare class MemoryManager {
1284
1368
  */
1285
1369
  getStatus(currentTurn?: number): MemoryStatus;
1286
1370
  /**
1287
- * Create memory snapshot for persistence
1288
- * Caches snapshot internally for later retrieval
1371
+ * Create a memory snapshot for persistence.
1372
+ *
1373
+ * Stateless: every call returns a fresh `structuredClone` of the current memory, so the caller
1374
+ * owns caching if it needs to hold onto the result across calls (see `Agent.memorySnapshot`).
1375
+ *
1289
1376
  * @returns Deep copy of current memory state
1290
1377
  */
1291
- toSnapshot(): AgentMemory;
1292
- /**
1293
- * Get cached memory snapshot
1294
- * Returns snapshot created by toSnapshot()
1295
- * @returns Cached snapshot (undefined if toSnapshot() not called yet)
1296
- */
1297
- getSnapshot(): AgentMemory | undefined;
1378
+ snapshot(): AgentMemory;
1298
1379
  /**
1299
1380
  * Build the framework framing and the untrusted data envelope for an LLM call.
1300
1381
  *
@@ -1497,53 +1578,6 @@ type Json = string | number | boolean | null | {
1497
1578
  type Database = {
1498
1579
  public: {
1499
1580
  Tables: {
1500
- acq_artifacts: {
1501
- Row: {
1502
- content: Json;
1503
- created_at: string;
1504
- created_by: string | null;
1505
- id: string;
1506
- kind: string;
1507
- organization_id: string;
1508
- owner_id: string;
1509
- owner_kind: string;
1510
- source_execution_id: string | null;
1511
- version: number;
1512
- };
1513
- Insert: {
1514
- content: Json;
1515
- created_at?: string;
1516
- created_by?: string | null;
1517
- id?: string;
1518
- kind: string;
1519
- organization_id: string;
1520
- owner_id: string;
1521
- owner_kind: string;
1522
- source_execution_id?: string | null;
1523
- version?: number;
1524
- };
1525
- Update: {
1526
- content?: Json;
1527
- created_at?: string;
1528
- created_by?: string | null;
1529
- id?: string;
1530
- kind?: string;
1531
- organization_id?: string;
1532
- owner_id?: string;
1533
- owner_kind?: string;
1534
- source_execution_id?: string | null;
1535
- version?: number;
1536
- };
1537
- Relationships: [
1538
- {
1539
- foreignKeyName: "acq_artifacts_organization_id_fkey";
1540
- columns: ["organization_id"];
1541
- isOneToOne: false;
1542
- referencedRelation: "organizations";
1543
- referencedColumns: ["id"];
1544
- }
1545
- ];
1546
- };
1547
1581
  acq_companies: {
1548
1582
  Row: {
1549
1583
  batch_id: string | null;
@@ -1755,122 +1789,6 @@ type Database = {
1755
1789
  }
1756
1790
  ];
1757
1791
  };
1758
- acq_content: {
1759
- Row: {
1760
- body: string | null;
1761
- created_at: string;
1762
- id: string;
1763
- organization_id: string;
1764
- pillar: string;
1765
- status: string;
1766
- title: string;
1767
- updated_at: string;
1768
- };
1769
- Insert: {
1770
- body?: string | null;
1771
- created_at?: string;
1772
- id?: string;
1773
- organization_id: string;
1774
- pillar: string;
1775
- status?: string;
1776
- title: string;
1777
- updated_at?: string;
1778
- };
1779
- Update: {
1780
- body?: string | null;
1781
- created_at?: string;
1782
- id?: string;
1783
- organization_id?: string;
1784
- pillar?: string;
1785
- status?: string;
1786
- title?: string;
1787
- updated_at?: string;
1788
- };
1789
- Relationships: [
1790
- {
1791
- foreignKeyName: "acq_content_organization_id_fkey";
1792
- columns: ["organization_id"];
1793
- isOneToOne: false;
1794
- referencedRelation: "organizations";
1795
- referencedColumns: ["id"];
1796
- }
1797
- ];
1798
- };
1799
- acq_content_distributions: {
1800
- Row: {
1801
- adapted_body: string | null;
1802
- checklist: Json | null;
1803
- content_id: string;
1804
- created_at: string;
1805
- format: string;
1806
- id: string;
1807
- media_urls: Json;
1808
- metrics: Json;
1809
- metrics_updated_at: string | null;
1810
- organization_id: string;
1811
- platform: string;
1812
- platform_content: Json | null;
1813
- platform_post_id: string | null;
1814
- platform_url: string | null;
1815
- published_at: string | null;
1816
- status: string;
1817
- updated_at: string;
1818
- };
1819
- Insert: {
1820
- adapted_body?: string | null;
1821
- checklist?: Json | null;
1822
- content_id: string;
1823
- created_at?: string;
1824
- format: string;
1825
- id?: string;
1826
- media_urls?: Json;
1827
- metrics?: Json;
1828
- metrics_updated_at?: string | null;
1829
- organization_id: string;
1830
- platform: string;
1831
- platform_content?: Json | null;
1832
- platform_post_id?: string | null;
1833
- platform_url?: string | null;
1834
- published_at?: string | null;
1835
- status?: string;
1836
- updated_at?: string;
1837
- };
1838
- Update: {
1839
- adapted_body?: string | null;
1840
- checklist?: Json | null;
1841
- content_id?: string;
1842
- created_at?: string;
1843
- format?: string;
1844
- id?: string;
1845
- media_urls?: Json;
1846
- metrics?: Json;
1847
- metrics_updated_at?: string | null;
1848
- organization_id?: string;
1849
- platform?: string;
1850
- platform_content?: Json | null;
1851
- platform_post_id?: string | null;
1852
- platform_url?: string | null;
1853
- published_at?: string | null;
1854
- status?: string;
1855
- updated_at?: string;
1856
- };
1857
- Relationships: [
1858
- {
1859
- foreignKeyName: "acq_content_distributions_content_id_fkey";
1860
- columns: ["content_id"];
1861
- isOneToOne: false;
1862
- referencedRelation: "acq_content";
1863
- referencedColumns: ["id"];
1864
- },
1865
- {
1866
- foreignKeyName: "acq_content_distributions_organization_id_fkey";
1867
- columns: ["organization_id"];
1868
- isOneToOne: false;
1869
- referencedRelation: "organizations";
1870
- referencedColumns: ["id"];
1871
- }
1872
- ];
1873
- };
1874
1792
  acq_deal_notes: {
1875
1793
  Row: {
1876
1794
  author_user_id: string | null;
@@ -1900,6 +1818,13 @@ type Database = {
1900
1818
  updated_at?: string;
1901
1819
  };
1902
1820
  Relationships: [
1821
+ {
1822
+ foreignKeyName: "acq_deal_notes_author_user_id_fkey";
1823
+ columns: ["author_user_id"];
1824
+ isOneToOne: false;
1825
+ referencedRelation: "users";
1826
+ referencedColumns: ["id"];
1827
+ },
1903
1828
  {
1904
1829
  foreignKeyName: "acq_deal_notes_deal_id_fkey";
1905
1830
  columns: ["deal_id"];
@@ -1963,6 +1888,27 @@ type Database = {
1963
1888
  updated_at?: string;
1964
1889
  };
1965
1890
  Relationships: [
1891
+ {
1892
+ foreignKeyName: "acq_deal_tasks_assignee_user_id_fkey";
1893
+ columns: ["assignee_user_id"];
1894
+ isOneToOne: false;
1895
+ referencedRelation: "users";
1896
+ referencedColumns: ["id"];
1897
+ },
1898
+ {
1899
+ foreignKeyName: "acq_deal_tasks_completed_by_user_id_fkey";
1900
+ columns: ["completed_by_user_id"];
1901
+ isOneToOne: false;
1902
+ referencedRelation: "users";
1903
+ referencedColumns: ["id"];
1904
+ },
1905
+ {
1906
+ foreignKeyName: "acq_deal_tasks_created_by_user_id_fkey";
1907
+ columns: ["created_by_user_id"];
1908
+ isOneToOne: false;
1909
+ referencedRelation: "users";
1910
+ referencedColumns: ["id"];
1911
+ },
1966
1912
  {
1967
1913
  foreignKeyName: "acq_deal_tasks_deal_id_fkey";
1968
1914
  columns: ["deal_id"];
@@ -2119,6 +2065,13 @@ type Database = {
2119
2065
  referencedRelation: "acq_contacts";
2120
2066
  referencedColumns: ["id"];
2121
2067
  },
2068
+ {
2069
+ foreignKeyName: "acq_deals_discovery_submitted_by_fkey";
2070
+ columns: ["discovery_submitted_by"];
2071
+ isOneToOne: false;
2072
+ referencedRelation: "users";
2073
+ referencedColumns: ["id"];
2074
+ },
2122
2075
  {
2123
2076
  foreignKeyName: "acq_deals_organization_id_fkey";
2124
2077
  columns: ["organization_id"];
@@ -2126,6 +2079,13 @@ type Database = {
2126
2079
  referencedRelation: "organizations";
2127
2080
  referencedColumns: ["id"];
2128
2081
  },
2082
+ {
2083
+ foreignKeyName: "acq_deals_proposal_reviewed_by_fkey";
2084
+ columns: ["proposal_reviewed_by"];
2085
+ isOneToOne: false;
2086
+ referencedRelation: "users";
2087
+ referencedColumns: ["id"];
2088
+ },
2129
2089
  {
2130
2090
  foreignKeyName: "acq_deals_source_list_id_fkey";
2131
2091
  columns: ["source_list_id"];
@@ -2179,6 +2139,13 @@ type Database = {
2179
2139
  state_key?: string;
2180
2140
  };
2181
2141
  Relationships: [
2142
+ {
2143
+ foreignKeyName: "acq_list_companies_added_by_fkey";
2144
+ columns: ["added_by"];
2145
+ isOneToOne: false;
2146
+ referencedRelation: "users";
2147
+ referencedColumns: ["id"];
2148
+ },
2182
2149
  {
2183
2150
  foreignKeyName: "acq_list_companies_company_id_fkey";
2184
2151
  columns: ["company_id"];
@@ -2285,6 +2252,13 @@ type Database = {
2285
2252
  state_key?: string;
2286
2253
  };
2287
2254
  Relationships: [
2255
+ {
2256
+ foreignKeyName: "acq_list_members_added_by_fkey";
2257
+ columns: ["added_by"];
2258
+ isOneToOne: false;
2259
+ referencedRelation: "users";
2260
+ referencedColumns: ["id"];
2261
+ },
2288
2262
  {
2289
2263
  foreignKeyName: "acq_list_members_contact_id_fkey";
2290
2264
  columns: ["contact_id"];
@@ -2685,6 +2659,13 @@ type Database = {
2685
2659
  title?: string;
2686
2660
  };
2687
2661
  Relationships: [
2662
+ {
2663
+ foreignKeyName: "activities_actor_id_fkey";
2664
+ columns: ["actor_id"];
2665
+ isOneToOne: false;
2666
+ referencedRelation: "users";
2667
+ referencedColumns: ["id"];
2668
+ },
2688
2669
  {
2689
2670
  foreignKeyName: "activities_organization_id_fkey";
2690
2671
  columns: ["organization_id"];
@@ -2797,13 +2778,69 @@ type Database = {
2797
2778
  }
2798
2779
  ];
2799
2780
  };
2800
- clients: {
2781
+ artifacts: {
2801
2782
  Row: {
2802
- converted_at: string | null;
2783
+ content: Json;
2803
2784
  created_at: string;
2785
+ created_by: string | null;
2804
2786
  id: string;
2805
- metadata: Json;
2806
- name: string;
2787
+ is_active: boolean;
2788
+ kind: string;
2789
+ organization_id: string;
2790
+ owner_id: string | null;
2791
+ owner_kind: string;
2792
+ pipeline_id: string | null;
2793
+ source_execution_id: string | null;
2794
+ updated_at: string;
2795
+ version: number;
2796
+ };
2797
+ Insert: {
2798
+ content: Json;
2799
+ created_at?: string;
2800
+ created_by?: string | null;
2801
+ id?: string;
2802
+ is_active?: boolean;
2803
+ kind: string;
2804
+ organization_id: string;
2805
+ owner_id?: string | null;
2806
+ owner_kind: string;
2807
+ pipeline_id?: string | null;
2808
+ source_execution_id?: string | null;
2809
+ updated_at?: string;
2810
+ version?: number;
2811
+ };
2812
+ Update: {
2813
+ content?: Json;
2814
+ created_at?: string;
2815
+ created_by?: string | null;
2816
+ id?: string;
2817
+ is_active?: boolean;
2818
+ kind?: string;
2819
+ organization_id?: string;
2820
+ owner_id?: string | null;
2821
+ owner_kind?: string;
2822
+ pipeline_id?: string | null;
2823
+ source_execution_id?: string | null;
2824
+ updated_at?: string;
2825
+ version?: number;
2826
+ };
2827
+ Relationships: [
2828
+ {
2829
+ foreignKeyName: "artifacts_organization_id_fkey";
2830
+ columns: ["organization_id"];
2831
+ isOneToOne: false;
2832
+ referencedRelation: "organizations";
2833
+ referencedColumns: ["id"];
2834
+ }
2835
+ ];
2836
+ };
2837
+ clients: {
2838
+ Row: {
2839
+ converted_at: string | null;
2840
+ created_at: string;
2841
+ id: string;
2842
+ metadata: Json;
2843
+ name: string;
2807
2844
  organization_id: string;
2808
2845
  primary_company_id: string | null;
2809
2846
  primary_contact_id: string | null;
@@ -2968,50 +3005,80 @@ type Database = {
2968
3005
  }
2969
3006
  ];
2970
3007
  };
2971
- credentials: {
3008
+ content_distributions: {
2972
3009
  Row: {
3010
+ adapted_body: string | null;
3011
+ checklist: Json | null;
3012
+ content_item_id: string;
2973
3013
  created_at: string;
2974
- created_by: string | null;
2975
- encrypted_value: string;
3014
+ format: string;
2976
3015
  id: string;
2977
- name: string;
3016
+ media_urls: Json;
3017
+ metrics: Json;
3018
+ metrics_updated_at: string | null;
2978
3019
  organization_id: string;
2979
- provider: string | null;
2980
- type: string;
3020
+ platform: string;
3021
+ platform_content: Json | null;
3022
+ platform_post_id: string | null;
3023
+ platform_url: string | null;
3024
+ processing_state: Json;
3025
+ publish_method: string | null;
3026
+ published_at: string | null;
3027
+ status: string;
2981
3028
  updated_at: string;
2982
3029
  };
2983
3030
  Insert: {
3031
+ adapted_body?: string | null;
3032
+ checklist?: Json | null;
3033
+ content_item_id: string;
2984
3034
  created_at?: string;
2985
- created_by?: string | null;
2986
- encrypted_value: string;
3035
+ format: string;
2987
3036
  id?: string;
2988
- name: string;
3037
+ media_urls?: Json;
3038
+ metrics?: Json;
3039
+ metrics_updated_at?: string | null;
2989
3040
  organization_id: string;
2990
- provider?: string | null;
2991
- type?: string;
3041
+ platform: string;
3042
+ platform_content?: Json | null;
3043
+ platform_post_id?: string | null;
3044
+ platform_url?: string | null;
3045
+ processing_state?: Json;
3046
+ publish_method?: string | null;
3047
+ published_at?: string | null;
3048
+ status?: string;
2992
3049
  updated_at?: string;
2993
3050
  };
2994
3051
  Update: {
3052
+ adapted_body?: string | null;
3053
+ checklist?: Json | null;
3054
+ content_item_id?: string;
2995
3055
  created_at?: string;
2996
- created_by?: string | null;
2997
- encrypted_value?: string;
3056
+ format?: string;
2998
3057
  id?: string;
2999
- name?: string;
3058
+ media_urls?: Json;
3059
+ metrics?: Json;
3060
+ metrics_updated_at?: string | null;
3000
3061
  organization_id?: string;
3001
- provider?: string | null;
3002
- type?: string;
3062
+ platform?: string;
3063
+ platform_content?: Json | null;
3064
+ platform_post_id?: string | null;
3065
+ platform_url?: string | null;
3066
+ processing_state?: Json;
3067
+ publish_method?: string | null;
3068
+ published_at?: string | null;
3069
+ status?: string;
3003
3070
  updated_at?: string;
3004
3071
  };
3005
3072
  Relationships: [
3006
3073
  {
3007
- foreignKeyName: "credentials_created_by_fkey";
3008
- columns: ["created_by"];
3074
+ foreignKeyName: "content_distributions_content_item_id_fkey";
3075
+ columns: ["content_item_id"];
3009
3076
  isOneToOne: false;
3010
- referencedRelation: "users";
3077
+ referencedRelation: "content_items";
3011
3078
  referencedColumns: ["id"];
3012
3079
  },
3013
3080
  {
3014
- foreignKeyName: "credentials_organization_id_fkey";
3081
+ foreignKeyName: "content_distributions_organization_id_fkey";
3015
3082
  columns: ["organization_id"];
3016
3083
  isOneToOne: false;
3017
3084
  referencedRelation: "organizations";
@@ -3019,133 +3086,408 @@ type Database = {
3019
3086
  }
3020
3087
  ];
3021
3088
  };
3022
- deployment_organization_models: {
3089
+ content_item_attempts: {
3023
3090
  Row: {
3091
+ attempt_number: number;
3092
+ content_item_id: string;
3024
3093
  created_at: string;
3025
- deployment_id: string;
3026
- model_hash: string | null;
3094
+ created_by: string | null;
3095
+ id: string;
3027
3096
  organization_id: string;
3028
- organization_model: Json;
3029
- schema_version: string;
3030
- updated_at: string;
3097
+ payload: Json;
3098
+ source_execution_id: string | null;
3099
+ step_key: string | null;
3031
3100
  };
3032
3101
  Insert: {
3102
+ attempt_number: number;
3103
+ content_item_id: string;
3033
3104
  created_at?: string;
3034
- deployment_id: string;
3035
- model_hash?: string | null;
3105
+ created_by?: string | null;
3106
+ id?: string;
3036
3107
  organization_id: string;
3037
- organization_model: Json;
3038
- schema_version?: string;
3039
- updated_at?: string;
3108
+ payload?: Json;
3109
+ source_execution_id?: string | null;
3110
+ step_key?: string | null;
3040
3111
  };
3041
3112
  Update: {
3113
+ attempt_number?: number;
3114
+ content_item_id?: string;
3042
3115
  created_at?: string;
3043
- deployment_id?: string;
3044
- model_hash?: string | null;
3116
+ created_by?: string | null;
3117
+ id?: string;
3045
3118
  organization_id?: string;
3046
- organization_model?: Json;
3047
- schema_version?: string;
3048
- updated_at?: string;
3119
+ payload?: Json;
3120
+ source_execution_id?: string | null;
3121
+ step_key?: string | null;
3049
3122
  };
3050
3123
  Relationships: [
3051
3124
  {
3052
- foreignKeyName: "deployment_organization_models_deployment_id_fkey";
3053
- columns: ["deployment_id"];
3054
- isOneToOne: true;
3055
- referencedRelation: "deployments";
3125
+ foreignKeyName: "content_item_attempts_content_item_id_fkey";
3126
+ columns: ["content_item_id"];
3127
+ isOneToOne: false;
3128
+ referencedRelation: "content_items";
3056
3129
  referencedColumns: ["id"];
3057
3130
  },
3058
3131
  {
3059
- foreignKeyName: "deployment_organization_models_organization_id_fkey";
3132
+ foreignKeyName: "content_item_attempts_created_by_fkey";
3133
+ columns: ["created_by"];
3134
+ isOneToOne: false;
3135
+ referencedRelation: "users";
3136
+ referencedColumns: ["id"];
3137
+ },
3138
+ {
3139
+ foreignKeyName: "content_item_attempts_organization_id_fkey";
3060
3140
  columns: ["organization_id"];
3061
3141
  isOneToOne: false;
3062
3142
  referencedRelation: "organizations";
3063
3143
  referencedColumns: ["id"];
3144
+ },
3145
+ {
3146
+ foreignKeyName: "content_item_attempts_source_execution_id_fkey";
3147
+ columns: ["source_execution_id"];
3148
+ isOneToOne: false;
3149
+ referencedRelation: "execution_logs";
3150
+ referencedColumns: ["execution_id"];
3064
3151
  }
3065
3152
  ];
3066
3153
  };
3067
- deployments: {
3154
+ content_items: {
3068
3155
  Row: {
3156
+ body: string | null;
3157
+ client_id: string | null;
3069
3158
  created_at: string;
3070
- deployment_version: string | null;
3071
- error_message: string | null;
3159
+ created_by: string | null;
3072
3160
  id: string;
3073
3161
  organization_id: string;
3074
- pid: number | null;
3075
- port: number | null;
3076
- sdk_version: string;
3162
+ payload: Json;
3163
+ pillar: string | null;
3164
+ pipeline_id: string | null;
3165
+ processing_state: Json;
3166
+ reject_reason: string | null;
3167
+ reviewed_at: string | null;
3168
+ reviewed_by: string | null;
3169
+ reviewer_feedback: string | null;
3170
+ source_asset_id: string | null;
3077
3171
  status: string;
3078
- tarball_path: string | null;
3172
+ title: string;
3079
3173
  updated_at: string;
3174
+ updated_by: string | null;
3080
3175
  };
3081
3176
  Insert: {
3177
+ body?: string | null;
3178
+ client_id?: string | null;
3082
3179
  created_at?: string;
3083
- deployment_version?: string | null;
3084
- error_message?: string | null;
3180
+ created_by?: string | null;
3085
3181
  id?: string;
3086
3182
  organization_id: string;
3087
- pid?: number | null;
3088
- port?: number | null;
3089
- sdk_version: string;
3183
+ payload?: Json;
3184
+ pillar?: string | null;
3185
+ pipeline_id?: string | null;
3186
+ processing_state?: Json;
3187
+ reject_reason?: string | null;
3188
+ reviewed_at?: string | null;
3189
+ reviewed_by?: string | null;
3190
+ reviewer_feedback?: string | null;
3191
+ source_asset_id?: string | null;
3090
3192
  status?: string;
3091
- tarball_path?: string | null;
3193
+ title: string;
3092
3194
  updated_at?: string;
3195
+ updated_by?: string | null;
3093
3196
  };
3094
3197
  Update: {
3198
+ body?: string | null;
3199
+ client_id?: string | null;
3095
3200
  created_at?: string;
3096
- deployment_version?: string | null;
3097
- error_message?: string | null;
3201
+ created_by?: string | null;
3098
3202
  id?: string;
3099
3203
  organization_id?: string;
3100
- pid?: number | null;
3101
- port?: number | null;
3102
- sdk_version?: string;
3204
+ payload?: Json;
3205
+ pillar?: string | null;
3206
+ pipeline_id?: string | null;
3207
+ processing_state?: Json;
3208
+ reject_reason?: string | null;
3209
+ reviewed_at?: string | null;
3210
+ reviewed_by?: string | null;
3211
+ reviewer_feedback?: string | null;
3212
+ source_asset_id?: string | null;
3103
3213
  status?: string;
3104
- tarball_path?: string | null;
3214
+ title?: string;
3105
3215
  updated_at?: string;
3216
+ updated_by?: string | null;
3106
3217
  };
3107
3218
  Relationships: [
3108
3219
  {
3109
- foreignKeyName: "deployments_organization_id_fkey";
3220
+ foreignKeyName: "content_items_client_id_fkey";
3221
+ columns: ["client_id"];
3222
+ isOneToOne: false;
3223
+ referencedRelation: "clients";
3224
+ referencedColumns: ["id"];
3225
+ },
3226
+ {
3227
+ foreignKeyName: "content_items_created_by_fkey";
3228
+ columns: ["created_by"];
3229
+ isOneToOne: false;
3230
+ referencedRelation: "users";
3231
+ referencedColumns: ["id"];
3232
+ },
3233
+ {
3234
+ foreignKeyName: "content_items_organization_id_fkey";
3110
3235
  columns: ["organization_id"];
3111
3236
  isOneToOne: false;
3112
3237
  referencedRelation: "organizations";
3113
3238
  referencedColumns: ["id"];
3239
+ },
3240
+ {
3241
+ foreignKeyName: "content_items_reviewed_by_fkey";
3242
+ columns: ["reviewed_by"];
3243
+ isOneToOne: false;
3244
+ referencedRelation: "users";
3245
+ referencedColumns: ["id"];
3246
+ },
3247
+ {
3248
+ foreignKeyName: "content_items_source_asset_id_fkey";
3249
+ columns: ["source_asset_id"];
3250
+ isOneToOne: false;
3251
+ referencedRelation: "content_source_assets";
3252
+ referencedColumns: ["id"];
3253
+ },
3254
+ {
3255
+ foreignKeyName: "content_items_updated_by_fkey";
3256
+ columns: ["updated_by"];
3257
+ isOneToOne: false;
3258
+ referencedRelation: "users";
3259
+ referencedColumns: ["id"];
3114
3260
  }
3115
3261
  ];
3116
3262
  };
3117
- execution_errors: {
3263
+ content_source_assets: {
3118
3264
  Row: {
3119
- created_at: string | null;
3120
- error_category: string;
3121
- error_message: string;
3122
- error_severity: string;
3123
- error_stack_trace: string | null;
3124
- error_type: string;
3125
- execution_id: string;
3265
+ created_at: string;
3266
+ duration_seconds: number | null;
3267
+ external_url: string | null;
3126
3268
  id: string;
3127
- metadata: Json | null;
3128
- occurred_at: string;
3269
+ kind: string;
3270
+ metadata: Json;
3129
3271
  organization_id: string;
3130
- resolved: boolean;
3131
- resolved_at: string | null;
3132
- resolved_by: string | null;
3272
+ processing_state: Json;
3273
+ storage_path: string | null;
3274
+ title: string;
3275
+ updated_at: string;
3133
3276
  };
3134
3277
  Insert: {
3135
- created_at?: string | null;
3136
- error_category: string;
3137
- error_message: string;
3138
- error_severity: string;
3139
- error_stack_trace?: string | null;
3140
- error_type: string;
3141
- execution_id: string;
3278
+ created_at?: string;
3279
+ duration_seconds?: number | null;
3280
+ external_url?: string | null;
3142
3281
  id?: string;
3143
- metadata?: Json | null;
3144
- occurred_at?: string;
3282
+ kind: string;
3283
+ metadata?: Json;
3145
3284
  organization_id: string;
3146
- resolved?: boolean;
3147
- resolved_at?: string | null;
3148
- resolved_by?: string | null;
3285
+ processing_state?: Json;
3286
+ storage_path?: string | null;
3287
+ title: string;
3288
+ updated_at?: string;
3289
+ };
3290
+ Update: {
3291
+ created_at?: string;
3292
+ duration_seconds?: number | null;
3293
+ external_url?: string | null;
3294
+ id?: string;
3295
+ kind?: string;
3296
+ metadata?: Json;
3297
+ organization_id?: string;
3298
+ processing_state?: Json;
3299
+ storage_path?: string | null;
3300
+ title?: string;
3301
+ updated_at?: string;
3302
+ };
3303
+ Relationships: [
3304
+ {
3305
+ foreignKeyName: "content_source_assets_organization_id_fkey";
3306
+ columns: ["organization_id"];
3307
+ isOneToOne: false;
3308
+ referencedRelation: "organizations";
3309
+ referencedColumns: ["id"];
3310
+ }
3311
+ ];
3312
+ };
3313
+ credentials: {
3314
+ Row: {
3315
+ created_at: string;
3316
+ created_by: string | null;
3317
+ encrypted_value: string;
3318
+ id: string;
3319
+ name: string;
3320
+ organization_id: string;
3321
+ provider: string | null;
3322
+ type: string;
3323
+ updated_at: string;
3324
+ };
3325
+ Insert: {
3326
+ created_at?: string;
3327
+ created_by?: string | null;
3328
+ encrypted_value: string;
3329
+ id?: string;
3330
+ name: string;
3331
+ organization_id: string;
3332
+ provider?: string | null;
3333
+ type?: string;
3334
+ updated_at?: string;
3335
+ };
3336
+ Update: {
3337
+ created_at?: string;
3338
+ created_by?: string | null;
3339
+ encrypted_value?: string;
3340
+ id?: string;
3341
+ name?: string;
3342
+ organization_id?: string;
3343
+ provider?: string | null;
3344
+ type?: string;
3345
+ updated_at?: string;
3346
+ };
3347
+ Relationships: [
3348
+ {
3349
+ foreignKeyName: "credentials_created_by_fkey";
3350
+ columns: ["created_by"];
3351
+ isOneToOne: false;
3352
+ referencedRelation: "users";
3353
+ referencedColumns: ["id"];
3354
+ },
3355
+ {
3356
+ foreignKeyName: "credentials_organization_id_fkey";
3357
+ columns: ["organization_id"];
3358
+ isOneToOne: false;
3359
+ referencedRelation: "organizations";
3360
+ referencedColumns: ["id"];
3361
+ }
3362
+ ];
3363
+ };
3364
+ deployment_organization_models: {
3365
+ Row: {
3366
+ created_at: string;
3367
+ deployment_id: string;
3368
+ model_hash: string | null;
3369
+ organization_id: string;
3370
+ organization_model: Json;
3371
+ schema_version: string;
3372
+ updated_at: string;
3373
+ };
3374
+ Insert: {
3375
+ created_at?: string;
3376
+ deployment_id: string;
3377
+ model_hash?: string | null;
3378
+ organization_id: string;
3379
+ organization_model: Json;
3380
+ schema_version?: string;
3381
+ updated_at?: string;
3382
+ };
3383
+ Update: {
3384
+ created_at?: string;
3385
+ deployment_id?: string;
3386
+ model_hash?: string | null;
3387
+ organization_id?: string;
3388
+ organization_model?: Json;
3389
+ schema_version?: string;
3390
+ updated_at?: string;
3391
+ };
3392
+ Relationships: [
3393
+ {
3394
+ foreignKeyName: "deployment_organization_models_deployment_id_fkey";
3395
+ columns: ["deployment_id"];
3396
+ isOneToOne: true;
3397
+ referencedRelation: "deployments";
3398
+ referencedColumns: ["id"];
3399
+ },
3400
+ {
3401
+ foreignKeyName: "deployment_organization_models_organization_id_fkey";
3402
+ columns: ["organization_id"];
3403
+ isOneToOne: false;
3404
+ referencedRelation: "organizations";
3405
+ referencedColumns: ["id"];
3406
+ }
3407
+ ];
3408
+ };
3409
+ deployments: {
3410
+ Row: {
3411
+ created_at: string;
3412
+ deployment_version: string | null;
3413
+ error_message: string | null;
3414
+ id: string;
3415
+ organization_id: string;
3416
+ pid: number | null;
3417
+ port: number | null;
3418
+ sdk_version: string;
3419
+ status: string;
3420
+ tarball_path: string | null;
3421
+ updated_at: string;
3422
+ };
3423
+ Insert: {
3424
+ created_at?: string;
3425
+ deployment_version?: string | null;
3426
+ error_message?: string | null;
3427
+ id?: string;
3428
+ organization_id: string;
3429
+ pid?: number | null;
3430
+ port?: number | null;
3431
+ sdk_version: string;
3432
+ status?: string;
3433
+ tarball_path?: string | null;
3434
+ updated_at?: string;
3435
+ };
3436
+ Update: {
3437
+ created_at?: string;
3438
+ deployment_version?: string | null;
3439
+ error_message?: string | null;
3440
+ id?: string;
3441
+ organization_id?: string;
3442
+ pid?: number | null;
3443
+ port?: number | null;
3444
+ sdk_version?: string;
3445
+ status?: string;
3446
+ tarball_path?: string | null;
3447
+ updated_at?: string;
3448
+ };
3449
+ Relationships: [
3450
+ {
3451
+ foreignKeyName: "deployments_organization_id_fkey";
3452
+ columns: ["organization_id"];
3453
+ isOneToOne: false;
3454
+ referencedRelation: "organizations";
3455
+ referencedColumns: ["id"];
3456
+ }
3457
+ ];
3458
+ };
3459
+ execution_errors: {
3460
+ Row: {
3461
+ created_at: string | null;
3462
+ error_category: string;
3463
+ error_message: string;
3464
+ error_severity: string;
3465
+ error_stack_trace: string | null;
3466
+ error_type: string;
3467
+ execution_id: string;
3468
+ id: string;
3469
+ metadata: Json | null;
3470
+ occurred_at: string;
3471
+ organization_id: string;
3472
+ resolved: boolean;
3473
+ resolved_at: string | null;
3474
+ resolved_by: string | null;
3475
+ };
3476
+ Insert: {
3477
+ created_at?: string | null;
3478
+ error_category: string;
3479
+ error_message: string;
3480
+ error_severity: string;
3481
+ error_stack_trace?: string | null;
3482
+ error_type: string;
3483
+ execution_id: string;
3484
+ id?: string;
3485
+ metadata?: Json | null;
3486
+ occurred_at?: string;
3487
+ organization_id: string;
3488
+ resolved?: boolean;
3489
+ resolved_at?: string | null;
3490
+ resolved_by?: string | null;
3149
3491
  };
3150
3492
  Update: {
3151
3493
  created_at?: string | null;
@@ -4584,6 +4926,33 @@ type Database = {
4584
4926
  };
4585
4927
  Returns: boolean;
4586
4928
  };
4929
+ create_artifact_version: {
4930
+ Args: {
4931
+ p_content: Json;
4932
+ p_created_by?: string;
4933
+ p_kind: string;
4934
+ p_organization_id: string;
4935
+ p_owner_id?: string;
4936
+ p_owner_kind: string;
4937
+ p_pipeline_id?: string;
4938
+ p_source_execution_id?: string;
4939
+ };
4940
+ Returns: {
4941
+ content: Json;
4942
+ created_at: string;
4943
+ created_by: string | null;
4944
+ id: string;
4945
+ is_active: boolean;
4946
+ kind: string;
4947
+ organization_id: string;
4948
+ owner_id: string | null;
4949
+ owner_kind: string;
4950
+ pipeline_id: string | null;
4951
+ source_execution_id: string | null;
4952
+ updated_at: string;
4953
+ version: number;
4954
+ };
4955
+ };
4587
4956
  current_user_is_platform_admin: {
4588
4957
  Args: Record<PropertyKey, never>;
4589
4958
  Returns: boolean;
@@ -4598,10 +4967,6 @@ type Database = {
4598
4967
  Args: Record<PropertyKey, never>;
4599
4968
  Returns: string;
4600
4969
  };
4601
- detect_stalled_executions: {
4602
- Args: Record<PropertyKey, never>;
4603
- Returns: undefined;
4604
- };
4605
4970
  execute_session_turn: {
4606
4971
  Args: {
4607
4972
  p_session_id: string;
@@ -4694,6 +5059,12 @@ type Database = {
4694
5059
  Args: Record<PropertyKey, never>;
4695
5060
  Returns: Json;
4696
5061
  };
5062
+ purge_stale_test_data: {
5063
+ Args: {
5064
+ p_max_age?: unknown;
5065
+ };
5066
+ Returns: Json;
5067
+ };
4697
5068
  recompute_all_memberships: {
4698
5069
  Args: Record<PropertyKey, never>;
4699
5070
  Returns: undefined;
@@ -4747,37 +5118,81 @@ type Database = {
4747
5118
  };
4748
5119
  };
4749
5120
 
4750
- declare const RecordColumnConfigSchema: z.ZodObject<{
4751
- key: z.ZodString;
4752
- label: z.ZodString;
4753
- path: z.ZodString;
4754
- width: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>;
4755
- renderType: z.ZodOptional<z.ZodEnum<{
4756
- text: "text";
4757
- badge: "badge";
4758
- datetime: "datetime";
4759
- count: "count";
4760
- json: "json";
4761
- }>>;
4762
- badgeColor: z.ZodOptional<z.ZodString>;
4763
- }, z.core.$strip>;
4764
- declare const CredentialRequirementSchema: z.ZodObject<{
4765
- key: z.ZodString;
4766
- provider: z.ZodString;
4767
- credentialType: z.ZodEnum<{
4768
- "api-key": "api-key";
4769
- "api-key-secret": "api-key-secret";
4770
- oauth: "oauth";
4771
- "webhook-secret": "webhook-secret";
4772
- }>;
5121
+ declare const ActionSchema: z.ZodObject<{
5122
+ id: z.ZodString;
5123
+ order: z.ZodNumber;
4773
5124
  label: z.ZodString;
4774
- required: z.ZodBoolean;
4775
- selectionMode: z.ZodOptional<z.ZodEnum<{
4776
- single: "single";
4777
- multiple: "multiple";
4778
- }>>;
4779
- inputPath: z.ZodString;
4780
- verifyOnRun: z.ZodOptional<z.ZodBoolean>;
5125
+ description: z.ZodOptional<z.ZodString>;
5126
+ scope: z.ZodDefault<z.ZodUnion<readonly [z.ZodLiteral<"global">, z.ZodObject<{
5127
+ domain: z.ZodString;
5128
+ }, z.core.$strip>]>>;
5129
+ resourceId: z.ZodOptional<z.ZodString>;
5130
+ affects: z.ZodOptional<z.ZodArray<z.ZodString>>;
5131
+ invocations: z.ZodDefault<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
5132
+ kind: z.ZodLiteral<"slash-command">;
5133
+ command: z.ZodString;
5134
+ toolFactory: z.ZodOptional<z.ZodString>;
5135
+ }, z.core.$strip>, z.ZodObject<{
5136
+ kind: z.ZodLiteral<"mcp-tool">;
5137
+ server: z.ZodString;
5138
+ name: z.ZodString;
5139
+ }, z.core.$strip>, z.ZodObject<{
5140
+ kind: z.ZodLiteral<"api-endpoint">;
5141
+ method: z.ZodEnum<{
5142
+ GET: "GET";
5143
+ POST: "POST";
5144
+ PATCH: "PATCH";
5145
+ DELETE: "DELETE";
5146
+ }>;
5147
+ path: z.ZodString;
5148
+ requestSchema: z.ZodOptional<z.ZodString>;
5149
+ responseSchema: z.ZodOptional<z.ZodString>;
5150
+ }, z.core.$strip>, z.ZodObject<{
5151
+ kind: z.ZodLiteral<"script-execution">;
5152
+ resourceId: z.ZodString;
5153
+ }, z.core.$strip>], "kind">>>;
5154
+ knowledge: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodString>>>;
5155
+ lifecycle: z.ZodDefault<z.ZodEnum<{
5156
+ active: "active";
5157
+ deprecated: "deprecated";
5158
+ draft: "draft";
5159
+ beta: "beta";
5160
+ archived: "archived";
5161
+ }>>;
5162
+ }, z.core.$strip>;
5163
+ type Action$1 = z.infer<typeof ActionSchema>;
5164
+
5165
+ declare const RecordColumnConfigSchema: z.ZodObject<{
5166
+ key: z.ZodString;
5167
+ label: z.ZodString;
5168
+ path: z.ZodString;
5169
+ width: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>;
5170
+ renderType: z.ZodOptional<z.ZodEnum<{
5171
+ text: "text";
5172
+ badge: "badge";
5173
+ datetime: "datetime";
5174
+ count: "count";
5175
+ json: "json";
5176
+ }>>;
5177
+ badgeColor: z.ZodOptional<z.ZodString>;
5178
+ }, z.core.$strip>;
5179
+ declare const CredentialRequirementSchema: z.ZodObject<{
5180
+ key: z.ZodString;
5181
+ provider: z.ZodString;
5182
+ credentialType: z.ZodEnum<{
5183
+ "api-key": "api-key";
5184
+ "api-key-secret": "api-key-secret";
5185
+ oauth: "oauth";
5186
+ "webhook-secret": "webhook-secret";
5187
+ }>;
5188
+ label: z.ZodString;
5189
+ required: z.ZodBoolean;
5190
+ selectionMode: z.ZodOptional<z.ZodEnum<{
5191
+ single: "single";
5192
+ multiple: "multiple";
5193
+ }>>;
5194
+ inputPath: z.ZodString;
5195
+ verifyOnRun: z.ZodOptional<z.ZodBoolean>;
4781
5196
  }, z.core.$strip>;
4782
5197
  declare const ProspectingBuildTemplateStepSchema: z.ZodObject<{
4783
5198
  label: z.ZodString;
@@ -5169,6 +5584,8 @@ declare const ProcessingStageStatusSchema: z.ZodEnum<{
5169
5584
  no_result: "no_result";
5170
5585
  skipped: "skipped";
5171
5586
  }>;
5587
+ declare const CrmStageKeySchema: z.ZodString;
5588
+ declare const CrmStateKeySchema: z.ZodString;
5172
5589
  declare const DealSchemas: {
5173
5590
  CrmStageKey: z.ZodString;
5174
5591
  CrmStateKey: z.ZodString;
@@ -5578,6 +5995,8 @@ declare const DealSchemas: {
5578
5995
  createdByUserId: z.ZodNullable<z.ZodString>;
5579
5996
  }, z.core.$strip>>;
5580
5997
  };
5998
+ type CrmStageKey = z.infer<typeof CrmStageKeySchema>;
5999
+ type CrmStateKey = z.infer<typeof CrmStateKeySchema>;
5581
6000
  /**
5582
6001
  * One stage entry in a list's `pipeline_config.stages[]`.
5583
6002
  *
@@ -5669,6 +6088,31 @@ declare const BuildPlanSnapshotStepSchema: z.ZodObject<{
5669
6088
  verifyOnRun: z.ZodOptional<z.ZodBoolean>;
5670
6089
  }, z.core.$strip>>>;
5671
6090
  }, z.core.$strip>;
6091
+ declare const AcqArtifactOwnerKindSchema: z.ZodEnum<{
6092
+ company: "company";
6093
+ contact: "contact";
6094
+ list: "list";
6095
+ organization: "organization";
6096
+ deal: "deal";
6097
+ list_member: "list_member";
6098
+ }>;
6099
+ declare const AcqArtifactResponseSchema: z.ZodObject<{
6100
+ id: z.ZodString;
6101
+ organizationId: z.ZodString;
6102
+ ownerKind: z.ZodString;
6103
+ ownerId: z.ZodNullable<z.ZodString>;
6104
+ kind: z.ZodString;
6105
+ pipelineId: z.ZodNullable<z.ZodString>;
6106
+ content: z.ZodRecord<z.ZodString, z.ZodUnknown>;
6107
+ sourceExecutionId: z.ZodNullable<z.ZodString>;
6108
+ createdBy: z.ZodNullable<z.ZodString>;
6109
+ createdAt: z.ZodString;
6110
+ updatedAt: z.ZodString;
6111
+ isActive: z.ZodBoolean;
6112
+ version: z.ZodNumber;
6113
+ }, z.core.$strip>;
6114
+ type AcqArtifactOwnerKind = z.infer<typeof AcqArtifactOwnerKindSchema>;
6115
+ type AcqArtifactResponse = z.infer<typeof AcqArtifactResponseSchema>;
5672
6116
  type PipelineStage = z.infer<typeof PipelineStageSchema>;
5673
6117
  type DataMode = z.infer<typeof DataModeSchema>;
5674
6118
  type ProcessingStageStatus = z.infer<typeof ProcessingStageStatusSchema>;
@@ -6605,7 +7049,7 @@ declare const ActivityEventSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
6605
7049
  }, z.core.$strip>], "type">;
6606
7050
  type ActivityEvent = z.infer<typeof ActivityEventSchema>;
6607
7051
 
6608
- interface Action$1 {
7052
+ interface Action {
6609
7053
  key: string;
6610
7054
  label: string;
6611
7055
  payloadSchema?: z.ZodTypeAny;
@@ -6621,7 +7065,7 @@ type DealActionInput = AcqDealRow & {
6621
7065
  ownership?: 'us' | 'them' | null;
6622
7066
  nextAction?: string | null;
6623
7067
  };
6624
- declare function deriveActions(deal: DealActionInput, actions?: ActionDef[]): Action$1[];
7068
+ declare function deriveActions(deal: DealActionInput, actions?: ActionDef[]): Action[];
6625
7069
 
6626
7070
  declare const OntologyIdSchema: z.ZodString;
6627
7071
  type OntologyId = z.infer<typeof OntologyIdSchema>;
@@ -6841,6 +7285,23 @@ type ResolvedOntologyRecord<TRecord> = TRecord & {
6841
7285
  origin: OntologyRecordOrigin;
6842
7286
  };
6843
7287
 
7288
+ /**
7289
+ * Tenant-authorable readiness requirements for a system's API interface.
7290
+ *
7291
+ * Built-in profiles (`sales.lead-gen.api`, `sales.crm.api`,
7292
+ * `sales.lead-gen.crm-handoff`) derive their requirements from platform code
7293
+ * and do not need a `readinessContract`. Custom systems (any profile id not in
7294
+ * the built-in registry) MUST declare a contract so structural readiness
7295
+ * validation can proceed without platform hardcoding.
7296
+ *
7297
+ * Each field is an array of ontology IDs that this system must satisfy:
7298
+ * - `requiredObjects` – ontology object types the interface depends on
7299
+ * - `requiredCatalogs` – catalog types the interface requires (must be non-empty)
7300
+ */
7301
+ declare const SystemApiInterfaceReadinessContractSchema: z.ZodObject<{
7302
+ requiredObjects: z.ZodDefault<z.ZodArray<z.ZodString>>;
7303
+ requiredCatalogs: z.ZodArray<z.ZodString>;
7304
+ }, z.core.$strict>;
6844
7305
  declare const SystemApiInterfaceSchema: z.ZodObject<{
6845
7306
  lifecycle: z.ZodDefault<z.ZodEnum<{
6846
7307
  active: "active";
@@ -6853,10 +7314,44 @@ declare const SystemApiInterfaceSchema: z.ZodObject<{
6853
7314
  resourceIds: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodString>>>;
6854
7315
  readinessContract: z.ZodOptional<z.ZodObject<{
6855
7316
  requiredObjects: z.ZodDefault<z.ZodArray<z.ZodString>>;
6856
- requiredCatalogs: z.ZodDefault<z.ZodArray<z.ZodString>>;
6857
- requiredKinds: z.ZodOptional<z.ZodArray<z.ZodString>>;
7317
+ requiredCatalogs: z.ZodArray<z.ZodString>;
6858
7318
  }, z.core.$strict>>;
6859
7319
  }, z.core.$strict>;
7320
+ type ReadinessProfileKind = 'built-in' | 'custom';
7321
+ interface ReadinessProfileEntry {
7322
+ readonly profileId: string;
7323
+ readonly kind: ReadinessProfileKind;
7324
+ }
7325
+ /**
7326
+ * Look up a readiness profile entry by id.
7327
+ *
7328
+ * `kind: 'built-in'` reflects either a platform-reserved id or a registered
7329
+ * validator (`registerBuiltInReadinessProfile`) — the single source of truth
7330
+ * for anything beyond the reserved 3 this can never disagree with. `kind:
7331
+ * 'custom'` reflects an id acknowledged via `registerReadinessProfile` below.
7332
+ * Returns `undefined` for ids that are neither; unknown profiles are
7333
+ * validated structurally through the system's `readinessContract` —
7334
+ * unknown-profile is NOT a schema-layer rejection.
7335
+ */
7336
+ declare function lookupReadinessProfile(profileId: string): ReadinessProfileEntry | undefined;
7337
+ /**
7338
+ * Acknowledge a custom (non-built-in) readiness profile id.
7339
+ *
7340
+ * This does NOT register validation logic. Tenant tooling or SDK extensions
7341
+ * that want real structural readiness checks must call
7342
+ * `registerBuiltInReadinessProfile` (from `../readiness`) instead — that is
7343
+ * the actual extension point this function was previously, incorrectly,
7344
+ * documented as an alternative to. Built-in profile ids cannot be
7345
+ * overwritten: calling this with an id that already has a registered
7346
+ * validator returns the existing built-in entry unchanged.
7347
+ */
7348
+ declare function registerReadinessProfile(profileId: string): ReadinessProfileEntry;
7349
+ /**
7350
+ * Return true if the given profile id is a platform-reserved preset or has a
7351
+ * registered built-in validator (`registerBuiltInReadinessProfile`). See
7352
+ * `isReservedPlatformProfileId` and the module note above.
7353
+ */
7354
+ declare function isBuiltInReadinessProfile(profileId: string): boolean;
6860
7355
  type JsonPrimitive = string | number | boolean | null;
6861
7356
  type JsonValue = JsonPrimitive | JsonValue[] | {
6862
7357
  [key: string]: JsonValue;
@@ -6873,7 +7368,6 @@ interface SystemEntry {
6873
7368
  path: string;
6874
7369
  surfaces: string[];
6875
7370
  icon?: string;
6876
- order?: number;
6877
7371
  };
6878
7372
  lifecycle?: 'draft' | 'beta' | 'active' | 'deprecated' | 'archived';
6879
7373
  responsibleRoleId?: string;
@@ -6883,23 +7377,19 @@ interface SystemEntry {
6883
7377
  intent: 'exposes' | 'consumes';
6884
7378
  invocation?: unknown;
6885
7379
  }[];
6886
- policies?: string[];
6887
7380
  drivesGoals?: string[];
6888
7381
  apiInterface?: z.infer<typeof SystemApiInterfaceSchema>;
6889
- /** @deprecated Use lifecycle. Accepted for one publish cycle. */
6890
- status?: 'active' | 'deprecated' | 'archived';
6891
7382
  path?: string;
6892
7383
  icon?: string;
6893
7384
  uiPosition?: 'sidebar-primary' | 'sidebar-bottom';
6894
7385
  enabled?: boolean;
6895
- devOnly?: boolean;
6896
- requiresAdmin?: boolean;
6897
7386
  order: number;
6898
7387
  config?: Record<string, JsonValue>;
6899
7388
  ontology?: OntologyScope;
6900
7389
  systems?: Record<string, SystemEntry>;
6901
7390
  subsystems?: Record<string, SystemEntry>;
6902
7391
  }
7392
+ type SystemApiInterfaceReadinessContract = z.infer<typeof SystemApiInterfaceReadinessContractSchema>;
6903
7393
 
6904
7394
  declare const SurfaceTypeSchema: z.ZodEnum<{
6905
7395
  dashboard: "dashboard";
@@ -6923,18 +7413,626 @@ interface SidebarSurfaceNode {
6923
7413
  resources?: string[];
6924
7414
  actions?: string[];
6925
7415
  };
6926
- devOnly?: boolean;
6927
- requiresAdmin?: boolean;
6928
- }
6929
- interface SidebarGroupNode {
6930
- type: 'group';
6931
- label: string;
6932
- description?: string;
6933
- icon?: string;
6934
- order?: number;
6935
- children: Record<string, SidebarNode>;
6936
- }
6937
- type SidebarNode = SidebarSurfaceNode | SidebarGroupNode;
7416
+ devOnly?: boolean;
7417
+ requiresAdmin?: boolean;
7418
+ }
7419
+ interface SidebarGroupNode {
7420
+ type: 'group';
7421
+ label: string;
7422
+ description?: string;
7423
+ icon?: string;
7424
+ order?: number;
7425
+ children: Record<string, SidebarNode>;
7426
+ }
7427
+ type SidebarNode = SidebarSurfaceNode | SidebarGroupNode;
7428
+
7429
+ declare const OmTopologyNodeRefSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
7430
+ kind: z.ZodLiteral<"system">;
7431
+ id: z.ZodString;
7432
+ }, z.core.$strip>, z.ZodObject<{
7433
+ kind: z.ZodLiteral<"resource">;
7434
+ id: z.ZodString;
7435
+ }, z.core.$strip>, z.ZodObject<{
7436
+ kind: z.ZodLiteral<"ontology">;
7437
+ id: z.ZodString;
7438
+ }, z.core.$strip>, z.ZodObject<{
7439
+ kind: z.ZodLiteral<"role">;
7440
+ id: z.ZodString;
7441
+ }, z.core.$strip>, z.ZodObject<{
7442
+ kind: z.ZodLiteral<"trigger">;
7443
+ id: z.ZodString;
7444
+ }, z.core.$strip>, z.ZodObject<{
7445
+ kind: z.ZodLiteral<"humanCheckpoint">;
7446
+ id: z.ZodString;
7447
+ }, z.core.$strip>, z.ZodObject<{
7448
+ kind: z.ZodLiteral<"externalResource">;
7449
+ id: z.ZodString;
7450
+ }, z.core.$strip>], "kind">;
7451
+ declare const OmTopologyRelationshipSchema: z.ZodObject<{
7452
+ from: z.ZodDiscriminatedUnion<[z.ZodObject<{
7453
+ kind: z.ZodLiteral<"system">;
7454
+ id: z.ZodString;
7455
+ }, z.core.$strip>, z.ZodObject<{
7456
+ kind: z.ZodLiteral<"resource">;
7457
+ id: z.ZodString;
7458
+ }, z.core.$strip>, z.ZodObject<{
7459
+ kind: z.ZodLiteral<"ontology">;
7460
+ id: z.ZodString;
7461
+ }, z.core.$strip>, z.ZodObject<{
7462
+ kind: z.ZodLiteral<"role">;
7463
+ id: z.ZodString;
7464
+ }, z.core.$strip>, z.ZodObject<{
7465
+ kind: z.ZodLiteral<"trigger">;
7466
+ id: z.ZodString;
7467
+ }, z.core.$strip>, z.ZodObject<{
7468
+ kind: z.ZodLiteral<"humanCheckpoint">;
7469
+ id: z.ZodString;
7470
+ }, z.core.$strip>, z.ZodObject<{
7471
+ kind: z.ZodLiteral<"externalResource">;
7472
+ id: z.ZodString;
7473
+ }, z.core.$strip>], "kind">;
7474
+ kind: z.ZodEnum<{
7475
+ triggers: "triggers";
7476
+ uses: "uses";
7477
+ approval: "approval";
7478
+ }>;
7479
+ to: z.ZodDiscriminatedUnion<[z.ZodObject<{
7480
+ kind: z.ZodLiteral<"system">;
7481
+ id: z.ZodString;
7482
+ }, z.core.$strip>, z.ZodObject<{
7483
+ kind: z.ZodLiteral<"resource">;
7484
+ id: z.ZodString;
7485
+ }, z.core.$strip>, z.ZodObject<{
7486
+ kind: z.ZodLiteral<"ontology">;
7487
+ id: z.ZodString;
7488
+ }, z.core.$strip>, z.ZodObject<{
7489
+ kind: z.ZodLiteral<"role">;
7490
+ id: z.ZodString;
7491
+ }, z.core.$strip>, z.ZodObject<{
7492
+ kind: z.ZodLiteral<"trigger">;
7493
+ id: z.ZodString;
7494
+ }, z.core.$strip>, z.ZodObject<{
7495
+ kind: z.ZodLiteral<"humanCheckpoint">;
7496
+ id: z.ZodString;
7497
+ }, z.core.$strip>, z.ZodObject<{
7498
+ kind: z.ZodLiteral<"externalResource">;
7499
+ id: z.ZodString;
7500
+ }, z.core.$strip>], "kind">;
7501
+ systemPath: z.ZodOptional<z.ZodString>;
7502
+ required: z.ZodOptional<z.ZodBoolean>;
7503
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>>;
7504
+ }, z.core.$strip>;
7505
+ declare const OmTopologyDomainSchema: z.ZodDefault<z.ZodObject<{
7506
+ version: z.ZodDefault<z.ZodLiteral<1>>;
7507
+ relationships: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
7508
+ from: z.ZodDiscriminatedUnion<[z.ZodObject<{
7509
+ kind: z.ZodLiteral<"system">;
7510
+ id: z.ZodString;
7511
+ }, z.core.$strip>, z.ZodObject<{
7512
+ kind: z.ZodLiteral<"resource">;
7513
+ id: z.ZodString;
7514
+ }, z.core.$strip>, z.ZodObject<{
7515
+ kind: z.ZodLiteral<"ontology">;
7516
+ id: z.ZodString;
7517
+ }, z.core.$strip>, z.ZodObject<{
7518
+ kind: z.ZodLiteral<"role">;
7519
+ id: z.ZodString;
7520
+ }, z.core.$strip>, z.ZodObject<{
7521
+ kind: z.ZodLiteral<"trigger">;
7522
+ id: z.ZodString;
7523
+ }, z.core.$strip>, z.ZodObject<{
7524
+ kind: z.ZodLiteral<"humanCheckpoint">;
7525
+ id: z.ZodString;
7526
+ }, z.core.$strip>, z.ZodObject<{
7527
+ kind: z.ZodLiteral<"externalResource">;
7528
+ id: z.ZodString;
7529
+ }, z.core.$strip>], "kind">;
7530
+ kind: z.ZodEnum<{
7531
+ triggers: "triggers";
7532
+ uses: "uses";
7533
+ approval: "approval";
7534
+ }>;
7535
+ to: z.ZodDiscriminatedUnion<[z.ZodObject<{
7536
+ kind: z.ZodLiteral<"system">;
7537
+ id: z.ZodString;
7538
+ }, z.core.$strip>, z.ZodObject<{
7539
+ kind: z.ZodLiteral<"resource">;
7540
+ id: z.ZodString;
7541
+ }, z.core.$strip>, z.ZodObject<{
7542
+ kind: z.ZodLiteral<"ontology">;
7543
+ id: z.ZodString;
7544
+ }, z.core.$strip>, z.ZodObject<{
7545
+ kind: z.ZodLiteral<"role">;
7546
+ id: z.ZodString;
7547
+ }, z.core.$strip>, z.ZodObject<{
7548
+ kind: z.ZodLiteral<"trigger">;
7549
+ id: z.ZodString;
7550
+ }, z.core.$strip>, z.ZodObject<{
7551
+ kind: z.ZodLiteral<"humanCheckpoint">;
7552
+ id: z.ZodString;
7553
+ }, z.core.$strip>, z.ZodObject<{
7554
+ kind: z.ZodLiteral<"externalResource">;
7555
+ id: z.ZodString;
7556
+ }, z.core.$strip>], "kind">;
7557
+ systemPath: z.ZodOptional<z.ZodString>;
7558
+ required: z.ZodOptional<z.ZodBoolean>;
7559
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>>;
7560
+ }, z.core.$strip>>>;
7561
+ }, z.core.$strip>>;
7562
+ type OmTopologyNodeRef = z.infer<typeof OmTopologyNodeRefSchema>;
7563
+ type OmTopologyRelationship = z.infer<typeof OmTopologyRelationshipSchema>;
7564
+ type OmTopologyDomain = z.infer<typeof OmTopologyDomainSchema>;
7565
+ type TypedIdObject = {
7566
+ id: string;
7567
+ };
7568
+ type TopologyRefFactoryInput = string | TypedIdObject;
7569
+ type TopologyRelationshipInput = Omit<OmTopologyRelationship, 'from' | 'to'> & {
7570
+ from: OmTopologyNodeInput;
7571
+ to: OmTopologyNodeInput;
7572
+ };
7573
+ type TopologyRelationshipOptions = Omit<Partial<OmTopologyRelationship>, 'from' | 'kind' | 'to'>;
7574
+ type OmTopologyNodeInput = OmTopologyNodeRef | ResourceEntry;
7575
+ declare const topologyRef: {
7576
+ readonly system: (system: TopologyRefFactoryInput) => {
7577
+ kind: "system";
7578
+ id: string;
7579
+ } | {
7580
+ kind: "resource";
7581
+ id: string;
7582
+ } | {
7583
+ kind: "ontology";
7584
+ id: string;
7585
+ } | {
7586
+ kind: "role";
7587
+ id: string;
7588
+ } | {
7589
+ kind: "trigger";
7590
+ id: string;
7591
+ } | {
7592
+ kind: "humanCheckpoint";
7593
+ id: string;
7594
+ } | {
7595
+ kind: "externalResource";
7596
+ id: string;
7597
+ };
7598
+ readonly resource: (resource: TopologyRefFactoryInput) => {
7599
+ kind: "system";
7600
+ id: string;
7601
+ } | {
7602
+ kind: "resource";
7603
+ id: string;
7604
+ } | {
7605
+ kind: "ontology";
7606
+ id: string;
7607
+ } | {
7608
+ kind: "role";
7609
+ id: string;
7610
+ } | {
7611
+ kind: "trigger";
7612
+ id: string;
7613
+ } | {
7614
+ kind: "humanCheckpoint";
7615
+ id: string;
7616
+ } | {
7617
+ kind: "externalResource";
7618
+ id: string;
7619
+ };
7620
+ readonly ontology: (record: TopologyRefFactoryInput) => {
7621
+ kind: "system";
7622
+ id: string;
7623
+ } | {
7624
+ kind: "resource";
7625
+ id: string;
7626
+ } | {
7627
+ kind: "ontology";
7628
+ id: string;
7629
+ } | {
7630
+ kind: "role";
7631
+ id: string;
7632
+ } | {
7633
+ kind: "trigger";
7634
+ id: string;
7635
+ } | {
7636
+ kind: "humanCheckpoint";
7637
+ id: string;
7638
+ } | {
7639
+ kind: "externalResource";
7640
+ id: string;
7641
+ };
7642
+ readonly role: (role: TopologyRefFactoryInput) => {
7643
+ kind: "system";
7644
+ id: string;
7645
+ } | {
7646
+ kind: "resource";
7647
+ id: string;
7648
+ } | {
7649
+ kind: "ontology";
7650
+ id: string;
7651
+ } | {
7652
+ kind: "role";
7653
+ id: string;
7654
+ } | {
7655
+ kind: "trigger";
7656
+ id: string;
7657
+ } | {
7658
+ kind: "humanCheckpoint";
7659
+ id: string;
7660
+ } | {
7661
+ kind: "externalResource";
7662
+ id: string;
7663
+ };
7664
+ readonly trigger: (trigger: TopologyRefFactoryInput) => {
7665
+ kind: "system";
7666
+ id: string;
7667
+ } | {
7668
+ kind: "resource";
7669
+ id: string;
7670
+ } | {
7671
+ kind: "ontology";
7672
+ id: string;
7673
+ } | {
7674
+ kind: "role";
7675
+ id: string;
7676
+ } | {
7677
+ kind: "trigger";
7678
+ id: string;
7679
+ } | {
7680
+ kind: "humanCheckpoint";
7681
+ id: string;
7682
+ } | {
7683
+ kind: "externalResource";
7684
+ id: string;
7685
+ };
7686
+ readonly humanCheckpoint: (checkpoint: TopologyRefFactoryInput) => {
7687
+ kind: "system";
7688
+ id: string;
7689
+ } | {
7690
+ kind: "resource";
7691
+ id: string;
7692
+ } | {
7693
+ kind: "ontology";
7694
+ id: string;
7695
+ } | {
7696
+ kind: "role";
7697
+ id: string;
7698
+ } | {
7699
+ kind: "trigger";
7700
+ id: string;
7701
+ } | {
7702
+ kind: "humanCheckpoint";
7703
+ id: string;
7704
+ } | {
7705
+ kind: "externalResource";
7706
+ id: string;
7707
+ };
7708
+ readonly externalResource: (externalResource: TopologyRefFactoryInput) => {
7709
+ kind: "system";
7710
+ id: string;
7711
+ } | {
7712
+ kind: "resource";
7713
+ id: string;
7714
+ } | {
7715
+ kind: "ontology";
7716
+ id: string;
7717
+ } | {
7718
+ kind: "role";
7719
+ id: string;
7720
+ } | {
7721
+ kind: "trigger";
7722
+ id: string;
7723
+ } | {
7724
+ kind: "humanCheckpoint";
7725
+ id: string;
7726
+ } | {
7727
+ kind: "externalResource";
7728
+ id: string;
7729
+ };
7730
+ };
7731
+ declare const topologyRelationship: {
7732
+ readonly triggers: (from: OmTopologyNodeInput, to: OmTopologyNodeInput, options?: TopologyRelationshipOptions) => {
7733
+ from: {
7734
+ kind: "system";
7735
+ id: string;
7736
+ } | {
7737
+ kind: "resource";
7738
+ id: string;
7739
+ } | {
7740
+ kind: "ontology";
7741
+ id: string;
7742
+ } | {
7743
+ kind: "role";
7744
+ id: string;
7745
+ } | {
7746
+ kind: "trigger";
7747
+ id: string;
7748
+ } | {
7749
+ kind: "humanCheckpoint";
7750
+ id: string;
7751
+ } | {
7752
+ kind: "externalResource";
7753
+ id: string;
7754
+ };
7755
+ kind: "triggers" | "uses" | "approval";
7756
+ to: {
7757
+ kind: "system";
7758
+ id: string;
7759
+ } | {
7760
+ kind: "resource";
7761
+ id: string;
7762
+ } | {
7763
+ kind: "ontology";
7764
+ id: string;
7765
+ } | {
7766
+ kind: "role";
7767
+ id: string;
7768
+ } | {
7769
+ kind: "trigger";
7770
+ id: string;
7771
+ } | {
7772
+ kind: "humanCheckpoint";
7773
+ id: string;
7774
+ } | {
7775
+ kind: "externalResource";
7776
+ id: string;
7777
+ };
7778
+ systemPath?: string | undefined;
7779
+ required?: boolean | undefined;
7780
+ metadata?: Record<string, JsonValue> | undefined;
7781
+ };
7782
+ readonly uses: (from: OmTopologyNodeInput, to: OmTopologyNodeInput, options?: TopologyRelationshipOptions) => {
7783
+ from: {
7784
+ kind: "system";
7785
+ id: string;
7786
+ } | {
7787
+ kind: "resource";
7788
+ id: string;
7789
+ } | {
7790
+ kind: "ontology";
7791
+ id: string;
7792
+ } | {
7793
+ kind: "role";
7794
+ id: string;
7795
+ } | {
7796
+ kind: "trigger";
7797
+ id: string;
7798
+ } | {
7799
+ kind: "humanCheckpoint";
7800
+ id: string;
7801
+ } | {
7802
+ kind: "externalResource";
7803
+ id: string;
7804
+ };
7805
+ kind: "triggers" | "uses" | "approval";
7806
+ to: {
7807
+ kind: "system";
7808
+ id: string;
7809
+ } | {
7810
+ kind: "resource";
7811
+ id: string;
7812
+ } | {
7813
+ kind: "ontology";
7814
+ id: string;
7815
+ } | {
7816
+ kind: "role";
7817
+ id: string;
7818
+ } | {
7819
+ kind: "trigger";
7820
+ id: string;
7821
+ } | {
7822
+ kind: "humanCheckpoint";
7823
+ id: string;
7824
+ } | {
7825
+ kind: "externalResource";
7826
+ id: string;
7827
+ };
7828
+ systemPath?: string | undefined;
7829
+ required?: boolean | undefined;
7830
+ metadata?: Record<string, JsonValue> | undefined;
7831
+ };
7832
+ readonly approval: (from: OmTopologyNodeInput, to: OmTopologyNodeInput, options?: TopologyRelationshipOptions) => {
7833
+ from: {
7834
+ kind: "system";
7835
+ id: string;
7836
+ } | {
7837
+ kind: "resource";
7838
+ id: string;
7839
+ } | {
7840
+ kind: "ontology";
7841
+ id: string;
7842
+ } | {
7843
+ kind: "role";
7844
+ id: string;
7845
+ } | {
7846
+ kind: "trigger";
7847
+ id: string;
7848
+ } | {
7849
+ kind: "humanCheckpoint";
7850
+ id: string;
7851
+ } | {
7852
+ kind: "externalResource";
7853
+ id: string;
7854
+ };
7855
+ kind: "triggers" | "uses" | "approval";
7856
+ to: {
7857
+ kind: "system";
7858
+ id: string;
7859
+ } | {
7860
+ kind: "resource";
7861
+ id: string;
7862
+ } | {
7863
+ kind: "ontology";
7864
+ id: string;
7865
+ } | {
7866
+ kind: "role";
7867
+ id: string;
7868
+ } | {
7869
+ kind: "trigger";
7870
+ id: string;
7871
+ } | {
7872
+ kind: "humanCheckpoint";
7873
+ id: string;
7874
+ } | {
7875
+ kind: "externalResource";
7876
+ id: string;
7877
+ };
7878
+ systemPath?: string | undefined;
7879
+ required?: boolean | undefined;
7880
+ metadata?: Record<string, JsonValue> | undefined;
7881
+ };
7882
+ readonly usesIntegration: (from: OmTopologyNodeInput, integration: OmTopologyNodeInput, options?: TopologyRelationshipOptions) => {
7883
+ from: {
7884
+ kind: "system";
7885
+ id: string;
7886
+ } | {
7887
+ kind: "resource";
7888
+ id: string;
7889
+ } | {
7890
+ kind: "ontology";
7891
+ id: string;
7892
+ } | {
7893
+ kind: "role";
7894
+ id: string;
7895
+ } | {
7896
+ kind: "trigger";
7897
+ id: string;
7898
+ } | {
7899
+ kind: "humanCheckpoint";
7900
+ id: string;
7901
+ } | {
7902
+ kind: "externalResource";
7903
+ id: string;
7904
+ };
7905
+ kind: "triggers" | "uses" | "approval";
7906
+ to: {
7907
+ kind: "system";
7908
+ id: string;
7909
+ } | {
7910
+ kind: "resource";
7911
+ id: string;
7912
+ } | {
7913
+ kind: "ontology";
7914
+ id: string;
7915
+ } | {
7916
+ kind: "role";
7917
+ id: string;
7918
+ } | {
7919
+ kind: "trigger";
7920
+ id: string;
7921
+ } | {
7922
+ kind: "humanCheckpoint";
7923
+ id: string;
7924
+ } | {
7925
+ kind: "externalResource";
7926
+ id: string;
7927
+ };
7928
+ systemPath?: string | undefined;
7929
+ required?: boolean | undefined;
7930
+ metadata?: Record<string, JsonValue> | undefined;
7931
+ };
7932
+ readonly requestsApproval: (from: OmTopologyNodeInput, checkpoint: TopologyRefFactoryInput, options?: TopologyRelationshipOptions) => {
7933
+ from: {
7934
+ kind: "system";
7935
+ id: string;
7936
+ } | {
7937
+ kind: "resource";
7938
+ id: string;
7939
+ } | {
7940
+ kind: "ontology";
7941
+ id: string;
7942
+ } | {
7943
+ kind: "role";
7944
+ id: string;
7945
+ } | {
7946
+ kind: "trigger";
7947
+ id: string;
7948
+ } | {
7949
+ kind: "humanCheckpoint";
7950
+ id: string;
7951
+ } | {
7952
+ kind: "externalResource";
7953
+ id: string;
7954
+ };
7955
+ kind: "triggers" | "uses" | "approval";
7956
+ to: {
7957
+ kind: "system";
7958
+ id: string;
7959
+ } | {
7960
+ kind: "resource";
7961
+ id: string;
7962
+ } | {
7963
+ kind: "ontology";
7964
+ id: string;
7965
+ } | {
7966
+ kind: "role";
7967
+ id: string;
7968
+ } | {
7969
+ kind: "trigger";
7970
+ id: string;
7971
+ } | {
7972
+ kind: "humanCheckpoint";
7973
+ id: string;
7974
+ } | {
7975
+ kind: "externalResource";
7976
+ id: string;
7977
+ };
7978
+ systemPath?: string | undefined;
7979
+ required?: boolean | undefined;
7980
+ metadata?: Record<string, JsonValue> | undefined;
7981
+ };
7982
+ readonly checkpointRoutesTo: (checkpoint: TopologyRefFactoryInput, to: OmTopologyNodeInput, options?: TopologyRelationshipOptions) => {
7983
+ from: {
7984
+ kind: "system";
7985
+ id: string;
7986
+ } | {
7987
+ kind: "resource";
7988
+ id: string;
7989
+ } | {
7990
+ kind: "ontology";
7991
+ id: string;
7992
+ } | {
7993
+ kind: "role";
7994
+ id: string;
7995
+ } | {
7996
+ kind: "trigger";
7997
+ id: string;
7998
+ } | {
7999
+ kind: "humanCheckpoint";
8000
+ id: string;
8001
+ } | {
8002
+ kind: "externalResource";
8003
+ id: string;
8004
+ };
8005
+ kind: "triggers" | "uses" | "approval";
8006
+ to: {
8007
+ kind: "system";
8008
+ id: string;
8009
+ } | {
8010
+ kind: "resource";
8011
+ id: string;
8012
+ } | {
8013
+ kind: "ontology";
8014
+ id: string;
8015
+ } | {
8016
+ kind: "role";
8017
+ id: string;
8018
+ } | {
8019
+ kind: "trigger";
8020
+ id: string;
8021
+ } | {
8022
+ kind: "humanCheckpoint";
8023
+ id: string;
8024
+ } | {
8025
+ kind: "externalResource";
8026
+ id: string;
8027
+ };
8028
+ systemPath?: string | undefined;
8029
+ required?: boolean | undefined;
8030
+ metadata?: Record<string, JsonValue> | undefined;
8031
+ };
8032
+ };
8033
+ declare function parseTopologyNodeRef(input: string | OmTopologyNodeRef): OmTopologyNodeRef;
8034
+ declare function defineTopologyRelationship(input: TopologyRelationshipInput): OmTopologyRelationship;
8035
+ declare function defineTopology(relationships: Record<string, TopologyRelationshipInput> | TopologyRelationshipInput[]): OmTopologyDomain;
6938
8036
 
6939
8037
  declare const LinkSchema: z.ZodObject<{
6940
8038
  nodeId: z.ZodString;
@@ -6960,7 +8058,39 @@ declare const LinkSchema: z.ZodObject<{
6960
8058
  }, z.core.$strip>;
6961
8059
  type Link = z.infer<typeof LinkSchema>;
6962
8060
 
6963
- declare const OrganizationModelSchema$1: z.ZodObject<{
8061
+ /**
8062
+ * Registration surface for the generic readiness engine (`./engine`).
8063
+ *
8064
+ * This module owns two independent extension points so `./engine` never has
8065
+ * to import anything from `business/**`:
8066
+ *
8067
+ * - `registerBuiltInReadinessProfile` — a profile id (e.g. `sales.lead-gen.api`)
8068
+ * maps to structural validation logic plus an optional model-preparation
8069
+ * hook run before ontology compilation (e.g. injecting a derived catalog).
8070
+ * This is the ONE readiness-profile registry (`_builtInProfileValidators`
8071
+ * below) — `../domains/systems`'s `isBuiltInReadinessProfile` /
8072
+ * `lookupReadinessProfile` read it directly via `getBuiltInReadinessProfile`
8073
+ * rather than mirroring registrations into a second map, so a profile id
8074
+ * can never read as built-in without an actual registered validator.
8075
+ * - `registerReadinessInterfaceMarker` — a `(systemPath, interfaceKey)` pair
8076
+ * maps to a synthesized interface marker for interfaces that are not
8077
+ * authored on `system.apiInterface` (e.g. the lead-gen/CRM handoff bridge,
8078
+ * which is derived from scoped resources rather than declared directly).
8079
+ *
8080
+ * `business/acquisition/ontology-validation.ts` calls both at module load to
8081
+ * register its three built-in profiles. Both registries are module-level
8082
+ * mutable maps with no reset function. Reachable by a tenant via the
8083
+ * `./organization-model/readiness` subpath (see `./index`).
8084
+ */
8085
+
8086
+ type SystemInterfaceReadinessIssueFamily = 'SYSTEM_INTERFACE_MISSING' | 'SYSTEM_INTERFACE_DISABLED' | 'SYSTEM_INTERFACE_INVALID' | 'SYSTEM_INTERFACE_NOT_READY' | 'SYSTEM_BRIDGE_NOT_READY'
8087
+ /**
8088
+ * The deployed OM snapshot hash does not match the canonical source hash.
8089
+ * Redeploy with `pnpm operations:deploy` to refresh the snapshot.
8090
+ */
8091
+ | 'STALE_OM_SNAPSHOT';
8092
+
8093
+ declare const OrganizationModelSchema: z.ZodObject<{
6964
8094
  version: z.ZodDefault<z.ZodLiteral<1>>;
6965
8095
  snapshotHash: z.ZodOptional<z.ZodString>;
6966
8096
  domainMetadata: z.ZodPipe<z.ZodDefault<z.ZodObject<{
@@ -7016,10 +8146,6 @@ declare const OrganizationModelSchema$1: z.ZodObject<{
7016
8146
  version: z.ZodDefault<z.ZodLiteral<1>>;
7017
8147
  lastModified: z.ZodString;
7018
8148
  }, z.core.$strip>>;
7019
- policies: z.ZodOptional<z.ZodObject<{
7020
- version: z.ZodDefault<z.ZodLiteral<1>>;
7021
- lastModified: z.ZodString;
7022
- }, z.core.$strip>>;
7023
8149
  knowledge: z.ZodOptional<z.ZodObject<{
7024
8150
  version: z.ZodDefault<z.ZodLiteral<1>>;
7025
8151
  lastModified: z.ZodString;
@@ -7077,10 +8203,6 @@ declare const OrganizationModelSchema$1: z.ZodObject<{
7077
8203
  version: 1;
7078
8204
  lastModified: string;
7079
8205
  };
7080
- policies: {
7081
- version: 1;
7082
- lastModified: string;
7083
- };
7084
8206
  knowledge: {
7085
8207
  version: 1;
7086
8208
  lastModified: string;
@@ -7138,10 +8260,6 @@ declare const OrganizationModelSchema$1: z.ZodObject<{
7138
8260
  version: 1;
7139
8261
  lastModified: string;
7140
8262
  } | undefined;
7141
- policies?: {
7142
- version: 1;
7143
- lastModified: string;
7144
- } | undefined;
7145
8263
  knowledge?: {
7146
8264
  version: 1;
7147
8265
  lastModified: string;
@@ -7735,9 +8853,6 @@ declare const OrganizationModelSchema$1: z.ZodObject<{
7735
8853
  }, z.core.$strip>, z.ZodObject<{
7736
8854
  kind: z.ZodLiteral<"ontology">;
7737
8855
  id: z.ZodString;
7738
- }, z.core.$strip>, z.ZodObject<{
7739
- kind: z.ZodLiteral<"policy">;
7740
- id: z.ZodString;
7741
8856
  }, z.core.$strip>, z.ZodObject<{
7742
8857
  kind: z.ZodLiteral<"role">;
7743
8858
  id: z.ZodString;
@@ -7765,9 +8880,6 @@ declare const OrganizationModelSchema$1: z.ZodObject<{
7765
8880
  }, z.core.$strip>, z.ZodObject<{
7766
8881
  kind: z.ZodLiteral<"ontology">;
7767
8882
  id: z.ZodString;
7768
- }, z.core.$strip>, z.ZodObject<{
7769
- kind: z.ZodLiteral<"policy">;
7770
- id: z.ZodString;
7771
8883
  }, z.core.$strip>, z.ZodObject<{
7772
8884
  kind: z.ZodLiteral<"role">;
7773
8885
  id: z.ZodString;
@@ -7849,66 +8961,6 @@ declare const OrganizationModelSchema$1: z.ZodObject<{
7849
8961
  label: z.ZodOptional<z.ZodString>;
7850
8962
  }, z.core.$strip>>>;
7851
8963
  }, z.core.$strip>>>>;
7852
- policies: z.ZodDefault<z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
7853
- id: z.ZodString;
7854
- order: z.ZodNumber;
7855
- label: z.ZodString;
7856
- description: z.ZodOptional<z.ZodString>;
7857
- trigger: z.ZodDiscriminatedUnion<[z.ZodObject<{
7858
- kind: z.ZodLiteral<"event">;
7859
- eventId: z.ZodString;
7860
- }, z.core.$strip>, z.ZodObject<{
7861
- kind: z.ZodLiteral<"action-invocation">;
7862
- actionId: z.ZodString;
7863
- }, z.core.$strip>, z.ZodObject<{
7864
- kind: z.ZodLiteral<"schedule">;
7865
- cron: z.ZodString;
7866
- }, z.core.$strip>, z.ZodObject<{
7867
- kind: z.ZodLiteral<"manual">;
7868
- }, z.core.$strip>], "kind">;
7869
- predicate: z.ZodDefault<z.ZodDiscriminatedUnion<[z.ZodObject<{
7870
- kind: z.ZodLiteral<"always">;
7871
- }, z.core.$strip>, z.ZodObject<{
7872
- kind: z.ZodLiteral<"expression">;
7873
- expression: z.ZodString;
7874
- }, z.core.$strip>, z.ZodObject<{
7875
- kind: z.ZodLiteral<"threshold">;
7876
- metric: z.ZodString;
7877
- operator: z.ZodEnum<{
7878
- lt: "lt";
7879
- lte: "lte";
7880
- eq: "eq";
7881
- gte: "gte";
7882
- gt: "gt";
7883
- }>;
7884
- value: z.ZodNumber;
7885
- }, z.core.$strip>], "kind">>;
7886
- actions: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
7887
- kind: z.ZodLiteral<"require-approval">;
7888
- roleId: z.ZodOptional<z.ZodString>;
7889
- }, z.core.$strip>, z.ZodObject<{
7890
- kind: z.ZodLiteral<"invoke-action">;
7891
- actionId: z.ZodString;
7892
- }, z.core.$strip>, z.ZodObject<{
7893
- kind: z.ZodLiteral<"notify-role">;
7894
- roleId: z.ZodString;
7895
- }, z.core.$strip>, z.ZodObject<{
7896
- kind: z.ZodLiteral<"block">;
7897
- }, z.core.$strip>], "kind">>;
7898
- appliesTo: z.ZodDefault<z.ZodObject<{
7899
- systemIds: z.ZodDefault<z.ZodArray<z.ZodString>>;
7900
- actionIds: z.ZodDefault<z.ZodArray<z.ZodString>>;
7901
- resourceIds: z.ZodDefault<z.ZodArray<z.ZodString>>;
7902
- roleIds: z.ZodDefault<z.ZodArray<z.ZodString>>;
7903
- }, z.core.$strip>>;
7904
- lifecycle: z.ZodDefault<z.ZodEnum<{
7905
- active: "active";
7906
- deprecated: "deprecated";
7907
- draft: "draft";
7908
- beta: "beta";
7909
- archived: "archived";
7910
- }>>;
7911
- }, z.core.$strip>>>>;
7912
8964
  knowledge: z.ZodDefault<z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
7913
8965
  id: z.ZodString;
7914
8966
  kind: z.ZodEnum<{
@@ -8022,7 +9074,15 @@ declare const OrganizationModelSchema$1: z.ZodObject<{
8022
9074
  }, z.core.$strip>>>>;
8023
9075
  }, z.core.$strip>;
8024
9076
 
8025
- type OrganizationModel$1 = z.infer<typeof OrganizationModelSchema$1>;
9077
+ type OrganizationModel = z.infer<typeof OrganizationModelSchema>;
9078
+ type OrganizationModelResourceEntry = z.infer<typeof ResourceEntrySchema>;
9079
+ type OrganizationModelResourceOntologyBinding = z.infer<typeof ResourceOntologyBindingSchema>;
9080
+ type OrganizationModelWorkflowResourceEntry = z.infer<typeof WorkflowResourceEntrySchema>;
9081
+ type OrganizationModelAgentResourceEntry = z.infer<typeof AgentResourceEntrySchema>;
9082
+ type OrganizationModelIntegrationResourceEntry = z.infer<typeof IntegrationResourceEntrySchema>;
9083
+ type OrganizationModelTopology = z.infer<typeof OmTopologyDomainSchema>;
9084
+ type OrganizationModelTopologyNodeRef = z.infer<typeof OmTopologyNodeRefSchema>;
9085
+ type OrganizationModelTopologyRelationship = z.infer<typeof OmTopologyRelationshipSchema>;
8026
9086
 
8027
9087
  type BusinessOntologyValidationIndexBase = {
8028
9088
  ontology: ResolvedOntologyIndex;
@@ -8035,12 +9095,6 @@ type CrmApiOntologyValidationIndex = BusinessOntologyValidationIndexBase & {
8035
9095
  crmPipelineCatalog: OntologyCatalogType;
8036
9096
  };
8037
9097
  type BusinessOntologyValidationIndex = LeadGenApiOntologyValidationIndex & CrmApiOntologyValidationIndex;
8038
- type SystemInterfaceReadinessIssueFamily = 'SYSTEM_INTERFACE_MISSING' | 'SYSTEM_INTERFACE_DISABLED' | 'SYSTEM_INTERFACE_INVALID' | 'SYSTEM_INTERFACE_NOT_READY' | 'SYSTEM_BRIDGE_NOT_READY'
8039
- /**
8040
- * The deployed OM snapshot hash does not match the canonical source hash.
8041
- * Redeploy with `pnpm operations:deploy` to refresh the snapshot.
8042
- */
8043
- | 'STALE_OM_SNAPSHOT';
8044
9098
  /**
8045
9099
  * Legacy mixed acquisition index.
8046
9100
  *
@@ -8049,7 +9103,7 @@ type SystemInterfaceReadinessIssueFamily = 'SYSTEM_INTERFACE_MISSING' | 'SYSTEM_
8049
9103
  * `compileLeadGenApiOntologyValidationIndex()`; CRM-aware paths should call the
8050
9104
  * CRM or bridge helpers above.
8051
9105
  */
8052
- declare function compileBusinessOntologyValidationIndex(model: OrganizationModel$1): BusinessOntologyValidationIndex;
9106
+ declare function compileBusinessOntologyValidationIndex(model: OrganizationModel): BusinessOntologyValidationIndex;
8053
9107
  /**
8054
9108
  * Lead-gen stage validators bound to a specific resolved validation index.
8055
9109
  *
@@ -10100,6 +11154,154 @@ declare const ProjectSchemas: {
10100
11154
  }, z.core.$strip>;
10101
11155
  };
10102
11156
 
11157
+ /** D18: `pipeline_id` is an OM ontology id (free text), not a UUID. */
11158
+ declare const ContentPipelineIdSchema: z.ZodString;
11159
+ /** `content:catalog/status` entries. Free text, model-owned. */
11160
+ declare const ContentItemStatusSchema: z.ZodString;
11161
+ /** `content:catalog/pillar` entries. */
11162
+ declare const ContentPillarSchema: z.ZodString;
11163
+ /** `content:catalog/platform` entries, applied to `content_distributions.platform` / `.format`. */
11164
+ declare const ContentDistributionPlatformSchema: z.ZodString;
11165
+ declare const ContentDistributionFormatSchema: z.ZodString;
11166
+ declare const ContentDistributionStatusSchema: z.ZodString;
11167
+ /**
11168
+ * D12: the payload gets its own column (`content_items.payload` /
11169
+ * `content_item_attempts.payload`). This is the producer's immutable
11170
+ * emission — never edited; `body` is the human's canonical text and
11171
+ * diverges from it on first edit. The field list within the envelope is
11172
+ * declared per-step by the (not-yet-authored) step catalog; this transport
11173
+ * schema validates JSON-object shape and size only, not field membership.
11174
+ */
11175
+ declare const ContentPayloadEnvelopeSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
11176
+ declare const ContentItemResponseSchema: z.ZodObject<{
11177
+ id: z.ZodString;
11178
+ organizationId: z.ZodString;
11179
+ title: z.ZodString;
11180
+ body: z.ZodNullable<z.ZodString>;
11181
+ payload: z.ZodUnknown;
11182
+ status: z.ZodString;
11183
+ pillar: z.ZodNullable<z.ZodString>;
11184
+ pipelineId: z.ZodNullable<z.ZodString>;
11185
+ clientId: z.ZodNullable<z.ZodString>;
11186
+ sourceAssetId: z.ZodNullable<z.ZodString>;
11187
+ processingState: z.ZodRecord<z.ZodString, z.ZodObject<{
11188
+ status: z.ZodEnum<{
11189
+ error: "error";
11190
+ success: "success";
11191
+ no_result: "no_result";
11192
+ skipped: "skipped";
11193
+ }>;
11194
+ data: z.ZodOptional<z.ZodUnknown>;
11195
+ }, z.core.$loose>>;
11196
+ reviewedAt: z.ZodNullable<z.ZodString>;
11197
+ reviewedBy: z.ZodNullable<z.ZodString>;
11198
+ reviewerFeedback: z.ZodNullable<z.ZodString>;
11199
+ rejectReason: z.ZodNullable<z.ZodString>;
11200
+ createdBy: z.ZodNullable<z.ZodString>;
11201
+ updatedBy: z.ZodNullable<z.ZodString>;
11202
+ createdAt: z.ZodString;
11203
+ updatedAt: z.ZodString;
11204
+ }, z.core.$strip>;
11205
+ declare const ContentItemListResponseSchema: z.ZodObject<{
11206
+ data: z.ZodArray<z.ZodObject<{
11207
+ id: z.ZodString;
11208
+ organizationId: z.ZodString;
11209
+ title: z.ZodString;
11210
+ body: z.ZodNullable<z.ZodString>;
11211
+ payload: z.ZodUnknown;
11212
+ status: z.ZodString;
11213
+ pillar: z.ZodNullable<z.ZodString>;
11214
+ pipelineId: z.ZodNullable<z.ZodString>;
11215
+ clientId: z.ZodNullable<z.ZodString>;
11216
+ sourceAssetId: z.ZodNullable<z.ZodString>;
11217
+ processingState: z.ZodRecord<z.ZodString, z.ZodObject<{
11218
+ status: z.ZodEnum<{
11219
+ error: "error";
11220
+ success: "success";
11221
+ no_result: "no_result";
11222
+ skipped: "skipped";
11223
+ }>;
11224
+ data: z.ZodOptional<z.ZodUnknown>;
11225
+ }, z.core.$loose>>;
11226
+ reviewedAt: z.ZodNullable<z.ZodString>;
11227
+ reviewedBy: z.ZodNullable<z.ZodString>;
11228
+ reviewerFeedback: z.ZodNullable<z.ZodString>;
11229
+ rejectReason: z.ZodNullable<z.ZodString>;
11230
+ createdBy: z.ZodNullable<z.ZodString>;
11231
+ updatedBy: z.ZodNullable<z.ZodString>;
11232
+ createdAt: z.ZodString;
11233
+ updatedAt: z.ZodString;
11234
+ }, z.core.$strip>>;
11235
+ total: z.ZodNumber;
11236
+ limit: z.ZodNumber;
11237
+ offset: z.ZodNumber;
11238
+ }, z.core.$strip>;
11239
+ declare const ContentItemAttemptResponseSchema: z.ZodObject<{
11240
+ id: z.ZodString;
11241
+ organizationId: z.ZodString;
11242
+ contentItemId: z.ZodString;
11243
+ attemptNumber: z.ZodNumber;
11244
+ stepKey: z.ZodNullable<z.ZodString>;
11245
+ payload: z.ZodUnknown;
11246
+ sourceExecutionId: z.ZodNullable<z.ZodString>;
11247
+ createdBy: z.ZodNullable<z.ZodString>;
11248
+ createdAt: z.ZodString;
11249
+ }, z.core.$strip>;
11250
+ declare const ContentItemAttemptListResponseSchema: z.ZodObject<{
11251
+ data: z.ZodArray<z.ZodObject<{
11252
+ id: z.ZodString;
11253
+ organizationId: z.ZodString;
11254
+ contentItemId: z.ZodString;
11255
+ attemptNumber: z.ZodNumber;
11256
+ stepKey: z.ZodNullable<z.ZodString>;
11257
+ payload: z.ZodUnknown;
11258
+ sourceExecutionId: z.ZodNullable<z.ZodString>;
11259
+ createdBy: z.ZodNullable<z.ZodString>;
11260
+ createdAt: z.ZodString;
11261
+ }, z.core.$strip>>;
11262
+ }, z.core.$strip>;
11263
+ declare const ContentDistributionResponseSchema: z.ZodObject<{
11264
+ id: z.ZodString;
11265
+ organizationId: z.ZodString;
11266
+ contentItemId: z.ZodString;
11267
+ platform: z.ZodString;
11268
+ format: z.ZodString;
11269
+ status: z.ZodString;
11270
+ adaptedBody: z.ZodNullable<z.ZodString>;
11271
+ platformContent: z.ZodNullable<z.ZodUnknown>;
11272
+ checklist: z.ZodNullable<z.ZodUnknown>;
11273
+ mediaUrls: z.ZodArray<z.ZodUnknown>;
11274
+ processingState: z.ZodRecord<z.ZodString, z.ZodObject<{
11275
+ status: z.ZodEnum<{
11276
+ error: "error";
11277
+ success: "success";
11278
+ no_result: "no_result";
11279
+ skipped: "skipped";
11280
+ }>;
11281
+ data: z.ZodOptional<z.ZodUnknown>;
11282
+ }, z.core.$loose>>;
11283
+ publishMethod: z.ZodNullable<z.ZodString>;
11284
+ publishedAt: z.ZodNullable<z.ZodString>;
11285
+ platformPostId: z.ZodNullable<z.ZodString>;
11286
+ platformUrl: z.ZodNullable<z.ZodString>;
11287
+ metrics: z.ZodUnknown;
11288
+ metricsUpdatedAt: z.ZodNullable<z.ZodString>;
11289
+ createdAt: z.ZodString;
11290
+ updatedAt: z.ZodString;
11291
+ }, z.core.$strip>;
11292
+ type ContentPipelineId = z.infer<typeof ContentPipelineIdSchema>;
11293
+ type ContentItemStatus = z.infer<typeof ContentItemStatusSchema>;
11294
+ type ContentPillar = z.infer<typeof ContentPillarSchema>;
11295
+ type ContentDistributionPlatform = z.infer<typeof ContentDistributionPlatformSchema>;
11296
+ type ContentDistributionFormat = z.infer<typeof ContentDistributionFormatSchema>;
11297
+ type ContentDistributionStatus = z.infer<typeof ContentDistributionStatusSchema>;
11298
+ type ContentPayloadEnvelope = z.infer<typeof ContentPayloadEnvelopeSchema>;
11299
+ type ContentItemResponse = z.infer<typeof ContentItemResponseSchema>;
11300
+ type ContentItemListResponse = z.infer<typeof ContentItemListResponseSchema>;
11301
+ type ContentItemAttemptResponse = z.infer<typeof ContentItemAttemptResponseSchema>;
11302
+ type ContentItemAttemptListResponse = z.infer<typeof ContentItemAttemptListResponseSchema>;
11303
+ type ContentDistributionResponse = z.infer<typeof ContentDistributionResponseSchema>;
11304
+
10103
11305
  /**
10104
11306
  * Tool Method Maps
10105
11307
  *
@@ -11037,6 +12239,149 @@ type ListToolMap = {
11037
12239
  result: string[];
11038
12240
  };
11039
12241
  };
12242
+ type ArtifactsToolMap = {
12243
+ listArtifacts: {
12244
+ params: {
12245
+ ownerKind: AcqArtifactOwnerKind;
12246
+ ownerId?: string | null;
12247
+ };
12248
+ result: {
12249
+ artifacts: AcqArtifactResponse[];
12250
+ };
12251
+ };
12252
+ createArtifact: {
12253
+ params: {
12254
+ ownerKind: AcqArtifactOwnerKind;
12255
+ ownerId?: string | null;
12256
+ kind: string;
12257
+ content: Record<string, unknown>;
12258
+ sourceExecutionId?: string;
12259
+ pipelineId?: string | null;
12260
+ };
12261
+ result: AcqArtifactResponse;
12262
+ };
12263
+ /**
12264
+ * The active governing document for a given pipeline and kind -- the
12265
+ * two-key lookup (pipeline_id, kind) every producer would otherwise
12266
+ * re-implement. Scoped per (organization, pipelineId, kind); a tenant runs
12267
+ * many pipelines at once, so this is never "the active artifact for the org."
12268
+ */
12269
+ getActive: {
12270
+ params: {
12271
+ pipelineId: string;
12272
+ kind: string;
12273
+ };
12274
+ result: {
12275
+ artifact: AcqArtifactResponse | null;
12276
+ };
12277
+ };
12278
+ };
12279
+ type ContentToolMap = {
12280
+ /** Insert a new `content_items` row -- a producer's entry point for a new piece. */
12281
+ createItem: {
12282
+ params: {
12283
+ title: string;
12284
+ body?: string | null;
12285
+ payload?: ContentPayloadEnvelope;
12286
+ status?: ContentItemStatus;
12287
+ pillar?: ContentPillar | null;
12288
+ pipelineId?: ContentPipelineId | null;
12289
+ clientId?: string | null;
12290
+ sourceAssetId?: string | null;
12291
+ };
12292
+ result: ContentItemResponse;
12293
+ };
12294
+ /** Fetch a single item by id, org-scoped -- read before advancing or reviewing a piece. */
12295
+ getItem: {
12296
+ params: {
12297
+ itemId: string;
12298
+ };
12299
+ result: ContentItemResponse | null;
12300
+ };
12301
+ /** Query items -- how a producer finds pieces awaiting a given step or status. */
12302
+ listItems: {
12303
+ params: {
12304
+ status?: ContentItemStatus;
12305
+ pillar?: ContentPillar;
12306
+ pipelineId?: ContentPipelineId;
12307
+ clientId?: string;
12308
+ limit?: number;
12309
+ offset?: number;
12310
+ };
12311
+ result: ContentItemListResponse;
12312
+ };
12313
+ /**
12314
+ * Update an item's mutable fields as it advances through the pipeline.
12315
+ * Does NOT accept a `processingState` field -- see Decision 4 above.
12316
+ */
12317
+ updateItem: {
12318
+ params: {
12319
+ itemId: string;
12320
+ title?: string;
12321
+ body?: string | null;
12322
+ status?: ContentItemStatus;
12323
+ pillar?: ContentPillar | null;
12324
+ pipelineId?: ContentPipelineId | null;
12325
+ clientId?: string | null;
12326
+ sourceAssetId?: string | null;
12327
+ };
12328
+ result: ContentItemResponse;
12329
+ };
12330
+ /**
12331
+ * Record a pipeline-step attempt against an item. `attemptNumber` is
12332
+ * assigned server-side inside the write (Decision 6) -- never
12333
+ * client-supplied, and never accepted here.
12334
+ */
12335
+ createAttempt: {
12336
+ params: {
12337
+ contentItemId: string;
12338
+ payload: ContentPayloadEnvelope;
12339
+ /** Which step this attempt implements. Stored as-is; NULL when omitted. */
12340
+ stepKey?: string | null;
12341
+ sourceExecutionId?: string | null;
12342
+ };
12343
+ result: ContentItemAttemptResponse;
12344
+ };
12345
+ /** List attempt history for an item -- a producer checks this before retrying a step. */
12346
+ listAttempts: {
12347
+ params: {
12348
+ contentItemId: string;
12349
+ };
12350
+ result: ContentItemAttemptListResponse;
12351
+ };
12352
+ /** Insert a `content_distributions` row for one platform/format target. */
12353
+ createDistribution: {
12354
+ params: {
12355
+ contentItemId: string;
12356
+ platform: ContentDistributionPlatform;
12357
+ format: ContentDistributionFormat;
12358
+ status?: ContentDistributionStatus;
12359
+ adaptedBody?: string | null;
12360
+ platformContent?: unknown;
12361
+ checklist?: unknown;
12362
+ mediaUrls?: unknown[];
12363
+ };
12364
+ result: ContentDistributionResponse;
12365
+ };
12366
+ /** Update a distribution's status, adapted content, or publish metadata. */
12367
+ updateDistribution: {
12368
+ params: {
12369
+ distributionId: string;
12370
+ status?: ContentDistributionStatus;
12371
+ adaptedBody?: string | null;
12372
+ platformContent?: unknown;
12373
+ checklist?: unknown;
12374
+ mediaUrls?: unknown[];
12375
+ publishMethod?: string | null;
12376
+ publishedAt?: string | null;
12377
+ platformPostId?: string | null;
12378
+ platformUrl?: string | null;
12379
+ metrics?: unknown;
12380
+ metricsUpdatedAt?: string | null;
12381
+ };
12382
+ result: ContentDistributionResponse;
12383
+ };
12384
+ };
11040
12385
  type PdfToolMap = {
11041
12386
  render: {
11042
12387
  params: {
@@ -11431,10 +12776,15 @@ interface ResourceMetricsConfig {
11431
12776
  * - API process: provides createLLMAdapter (real SDKs + process.env API keys)
11432
12777
  * - SDK worker: provides PostMessageLLMAdapter (proxies via platform.call)
11433
12778
  *
11434
- * Uses `any` for optional params so both the real createLLMAdapter (with typed
11435
- * AIUsageCollector/AICallContext) and the worker proxy (which ignores them) satisfy the type.
11436
- */
11437
- type LLMAdapterFactory = (config: ModelConfig, ...args: any[]) => LLMAdapter;
12779
+ * Signature mirrors `createLLMAdapter`'s real parameter list. `context` is narrowed to the two
12780
+ * shapes an agent ever actually builds (`processReasoning` passes `AgentReasoningContext`,
12781
+ * `Agent.callLLMForOutput` passes `AgentCompletionContext`) rather than the full `AICallContext`
12782
+ * union `createLLMAdapter` accepts -- a narrower optional param here is still assignable to the
12783
+ * wider one there. `createPostMessageAdapterFactory()`'s worker proxy ignores every param past
12784
+ * `config`; a shorter-arity function remains assignable to a longer optional-param function type,
12785
+ * so it still satisfies this type unchanged.
12786
+ */
12787
+ type LLMAdapterFactory = (config: ModelConfig, aiUsageCollector?: AIUsageCollector, callType?: BaseAICall['callType'], context?: AgentReasoningContext | AgentCompletionContext, organizationId?: string) => LLMAdapter;
11438
12788
  type AgentKind = 'orchestrator' | 'specialist' | 'utility' | 'platform';
11439
12789
  interface AgentConfig extends ResourceDefinition {
11440
12790
  type: 'agent';
@@ -11902,7 +13252,7 @@ interface ResourceDefinition {
11902
13252
  /** Whether this resource is archived and should be excluded from registration and deployment */
11903
13253
  archived?: boolean;
11904
13254
  }
11905
- type RuntimeResourceDescriptor = Extract<ResourceEntry$1, {
13255
+ type RuntimeResourceDescriptor = Extract<ResourceEntry, {
11906
13256
  kind: 'workflow' | 'agent' | 'integration';
11907
13257
  }>;
11908
13258
  type DescriptorBackedResourceDefinition<TResource extends RuntimeResourceDescriptor = RuntimeResourceDescriptor> = Omit<ResourceDefinition, 'resourceId' | 'type'> & {
@@ -12031,7 +13381,7 @@ interface IntegrationDefinition extends ResourceDefinition {
12031
13381
  /** Resource type discriminator (narrowed from base union) */
12032
13382
  type: 'integration';
12033
13383
  /** OM descriptor that owns canonical identity and governance metadata. */
12034
- resource?: Extract<ResourceEntry$1, {
13384
+ resource?: Extract<ResourceEntry, {
12035
13385
  kind: 'integration';
12036
13386
  }>;
12037
13387
  /** Integration provider type */
@@ -12308,7 +13658,7 @@ interface DeploymentSpec {
12308
13658
  /** Deployment version (semver) */
12309
13659
  version: string;
12310
13660
  /** Optional full Organization Model snapshot used for OM-code validation and deployment persistence */
12311
- organizationModel?: OrganizationModel$1;
13661
+ organizationModel?: OrganizationModel;
12312
13662
  /** Workflow definitions */
12313
13663
  workflows?: WorkflowDefinition[];
12314
13664
  /** Agent definitions */
@@ -12620,13 +13970,12 @@ type ResourceValidatorMode = 'strict' | 'warn-only';
12620
13970
  type ResourceGovernanceValidationIssueType = 'missing-code-resource' | 'missing-om-resource' | 'type-mismatch' | 'system-mismatch' | 'missing-om-system' | 'raw-resource-id' | 'descriptor-mismatch' | 'missing-ontology-actions' | 'ontology-reference-missing' | 'ontology-topology-grant-missing' | 'primary-action-mismatch' | 'topology-reference-missing';
12621
13971
  interface ResourceGovernanceModel {
12622
13972
  systems?: Record<string, SystemEntry>;
12623
- resources?: Record<string, ResourceEntry$1>;
12624
- ontology?: OrganizationModel$1['ontology'];
12625
- topology?: OrganizationModel$1['topology'];
12626
- roles?: OrganizationModel$1['roles'];
12627
- policies?: OrganizationModel$1['policies'];
12628
- entities?: OrganizationModel$1['entities'];
12629
- actions?: OrganizationModel$1['actions'];
13973
+ resources?: Record<string, ResourceEntry>;
13974
+ ontology?: OrganizationModel['ontology'];
13975
+ topology?: OrganizationModel['topology'];
13976
+ roles?: OrganizationModel['roles'];
13977
+ entities?: OrganizationModel['entities'];
13978
+ actions?: OrganizationModel['actions'];
12630
13979
  }
12631
13980
  interface ResourceGovernanceValidationIssue {
12632
13981
  type: ResourceGovernanceValidationIssueType;
@@ -12822,377 +14171,6 @@ declare class ToolingError extends ExecutionError {
12822
14171
  constructor(errorType: string, message: string, details?: unknown);
12823
14172
  }
12824
14173
 
12825
- /**
12826
- * Tenant-authorable readiness requirements for a system's API interface.
12827
- *
12828
- * Built-in profiles (`sales.lead-gen.api`, `sales.crm.api`,
12829
- * `sales.lead-gen.crm-handoff`) derive their requirements from platform code
12830
- * and do not need a `readinessContract`. Custom systems (any profile id not in
12831
- * the built-in registry) MUST declare a contract so structural readiness
12832
- * validation can proceed without platform hardcoding.
12833
- *
12834
- * Each field is an array of ontology IDs that this system must satisfy:
12835
- * - `requiredObjects` – ontology object types the interface depends on
12836
- * - `requiredCatalogs` – catalog types the interface requires (non-empty)
12837
- * - `requiredKinds` – (optional) ontology kind filters for future use
12838
- */
12839
- declare const SystemApiInterfaceReadinessContractSchema = z
12840
- .object({
12841
- /** Ontology IDs of object types the interface depends on. */
12842
- requiredObjects: z.array(z.string().trim().min(1)).default([]),
12843
- /** Ontology IDs of catalog types the interface requires (must be non-empty). */
12844
- requiredCatalogs: z.array(z.string().trim().min(1)).default([]),
12845
- /** Optional ontology kind filters (reserved for future profile extensions). */
12846
- requiredKinds: z.array(z.string().trim().min(1)).optional()
12847
- })
12848
- .strict()
12849
-
12850
- // ---------------------------------------------------------------------------
12851
- // Profile registry
12852
- //
12853
- // Maps a readiness profile id to a lookup result. Built-in presets are
12854
- // registered at module load; callers may register additional presets via
12855
- // `registerReadinessProfile`. Unknown ids resolve to `undefined` — validated
12856
- // structurally through the system's declared `readinessContract`.
12857
- // ---------------------------------------------------------------------------
12858
-
12859
- type ReadinessProfileKind = 'built-in' | 'custom'
12860
-
12861
- interface ReadinessProfileEntry {
12862
- readonly profileId: string
12863
- readonly kind: ReadinessProfileKind
12864
- }
12865
-
12866
- /**
12867
- * Look up a readiness profile entry by id.
12868
- *
12869
- * Returns `undefined` for unknown ids (not in the built-in list and not
12870
- * registered via `registerReadinessProfile`). Unknown profiles are validated
12871
- * structurally through the system's `readinessContract` — unknown-profile is
12872
- * NOT a schema-layer rejection.
12873
- */
12874
- declare function lookupReadinessProfile(profileId: string): ReadinessProfileEntry | undefined {
12875
- return _profileRegistry.get(profileId)
12876
- }
12877
-
12878
- /**
12879
- * Register a custom readiness profile preset.
12880
- *
12881
- * Tenant tooling or SDK extensions may call this during startup to register
12882
- * named presets. Registered presets are then resolvable via `lookupReadinessProfile`.
12883
- * Built-in profile ids cannot be overwritten.
12884
- */
12885
- declare function registerReadinessProfile(profileId: string): ReadinessProfileEntry {
12886
- const existing = _profileRegistry.get(profileId)
12887
- if (existing !== undefined) return existing
12888
- const entry: ReadinessProfileEntry = { profileId, kind: 'custom' }
12889
- _profileRegistry.set(profileId, entry)
12890
- return entry
12891
- }
12892
-
12893
- /**
12894
- * Return the effective readiness profile id for a system interface.
12895
- * Falls back to `systemPath.interfaceKey` when `readinessProfile` is omitted.
12896
- * This is the canonical profile-resolution function used by validation code.
12897
- */
12898
- declare function profileForInterface(systemPath: string, interfaceKey: string, readinessProfile?: string): string {
12899
- return readinessProfile ?? `${systemPath}.${interfaceKey}`
12900
- }
12901
-
12902
- /**
12903
- * Return true if the given profile id is a built-in platform preset.
12904
- */
12905
- declare function isBuiltInReadinessProfile(profileId: string): boolean {
12906
- return _profileRegistry.get(profileId)?.kind === 'built-in'
12907
- }
12908
- type SystemApiInterfaceReadinessContract = z.infer<typeof SystemApiInterfaceReadinessContractSchema>
12909
-
12910
- declare const ResourceOntologyBindingSchema = z
12911
- .object({
12912
- actions: z.array(OntologyIdSchema).optional(),
12913
- primaryAction: OntologyIdSchema.optional(),
12914
- reads: z.array(OntologyIdSchema).optional(),
12915
- writes: z.array(OntologyIdSchema).optional(),
12916
- usesCatalogs: z.array(OntologyIdSchema).optional(),
12917
- emits: z.array(OntologyIdSchema).optional(),
12918
- /**
12919
- * Optional typed contract binding for this resource's workflow I/O.
12920
- * Each ref is a `package/subpath#ExportName` string that resolves to a
12921
- * Zod schema in the tenant-owned organization model package.
12922
- *
12923
- * Absence of this field preserves all existing behavior — it is additive + optional.
12924
- * Tier-1 validation (schema.ts): ref-string shape only (browser-safe, no imports).
12925
- * Tier-2 validation (om:verify): intra-package typed-map resolution asserts ZodType.
12926
- */
12927
- contract: z
12928
- .object({
12929
- input: ContractRefSchema.optional(),
12930
- output: ContractRefSchema.optional()
12931
- })
12932
- .optional()
12933
- })
12934
- .superRefine((binding, ctx) => {
12935
- if (binding.primaryAction === undefined) return
12936
- if (binding.actions?.includes(binding.primaryAction)) return
12937
-
12938
- ctx.addIssue({
12939
- code: z.ZodIssueCode.custom,
12940
- path: ['primaryAction'],
12941
- message: 'Resource ontology primaryAction must be included in actions'
12942
- })
12943
- })
12944
-
12945
- type OntologyRefInput = string | { id: string }
12946
- type ResourceOntologyBindingInput = {
12947
- actions?: OntologyRefInput[]
12948
- primaryAction?: OntologyRefInput
12949
- reads?: OntologyRefInput[]
12950
- writes?: OntologyRefInput[]
12951
- usesCatalogs?: OntologyRefInput[]
12952
- emits?: OntologyRefInput[]
12953
- }
12954
-
12955
- declare const WorkflowResourceEntrySchema = ResourceEntryBaseSchema.extend({
12956
- kind: z.literal('workflow'),
12957
- emits: z.array(EventEmissionDescriptorSchema).optional()
12958
- })
12959
-
12960
- declare const AgentResourceEntrySchema = ResourceEntryBaseSchema.extend({
12961
- kind: z.literal('agent'),
12962
- /** Mirrors code-side AgentConfig.kind. */
12963
- agentKind: AgentKindSchema,
12964
- /** Role this agent embodies, if any. */
12965
- actsAsRoleId: ModelIdSchema.meta({ ref: 'role' }).optional(),
12966
- /** Mirrors AgentConfig.sessionCapable. */
12967
- sessionCapable: z.boolean(),
12968
- /** Broad/composite callable entry points orchestrated by this agent. */
12969
- invocations: z.array(ActionInvocationSchema).default([]),
12970
- emits: z.array(EventEmissionDescriptorSchema).optional()
12971
- })
12972
-
12973
- declare const IntegrationResourceEntrySchema = ResourceEntryBaseSchema.extend({
12974
- kind: z.literal('integration'),
12975
- provider: z.string().trim().min(1).max(100)
12976
- })
12977
-
12978
- declare const ResourceEntrySchema = z.discriminatedUnion('kind', [
12979
- WorkflowResourceEntrySchema,
12980
- AgentResourceEntrySchema,
12981
- IntegrationResourceEntrySchema,
12982
- ScriptResourceEntrySchema
12983
- ])
12984
-
12985
- declare function defineResource<const TResource extends ResourceEntry>(resource: TResource): TResource {
12986
- return ResourceEntrySchema.parse(resource) as TResource
12987
- }
12988
-
12989
- declare function defineResources<const TResources extends Record<string, ResourceEntry>>(
12990
- resources: TResources
12991
- ): TResources {
12992
- return Object.fromEntries(
12993
- Object.entries(resources).map(([key, resource]) => [key, ResourceEntrySchema.parse(resource)])
12994
- ) as TResources
12995
- }
12996
-
12997
- declare function defineResourceOntology(input: ResourceOntologyBindingInput): ResourceOntologyBinding {
12998
- return ResourceOntologyBindingSchema.parse({
12999
- actions: ontologyIdArrayFrom(input.actions),
13000
- primaryAction: input.primaryAction === undefined ? undefined : ontologyIdFrom(input.primaryAction),
13001
- reads: ontologyIdArrayFrom(input.reads),
13002
- writes: ontologyIdArrayFrom(input.writes),
13003
- usesCatalogs: ontologyIdArrayFrom(input.usesCatalogs),
13004
- emits: ontologyIdArrayFrom(input.emits)
13005
- })
13006
- }
13007
- type ResourceOntologyBinding = z.infer<typeof ResourceOntologyBindingSchema>
13008
- type ResourceEntry = z.infer<typeof ResourceEntrySchema>
13009
-
13010
- declare const OmTopologyNodeRefSchema = z.discriminatedUnion('kind', [
13011
- z.object({ kind: z.literal('system'), id: ModelIdSchema }),
13012
- z.object({ kind: z.literal('resource'), id: ResourceIdSchema }),
13013
- z.object({ kind: z.literal('ontology'), id: OntologyIdSchema }),
13014
- z.object({ kind: z.literal('policy'), id: ModelIdSchema }),
13015
- z.object({ kind: z.literal('role'), id: ModelIdSchema }),
13016
- z.object({ kind: z.literal('trigger'), id: ResourceIdSchema }),
13017
- z.object({ kind: z.literal('humanCheckpoint'), id: ResourceIdSchema }),
13018
- z.object({ kind: z.literal('externalResource'), id: ResourceIdSchema })
13019
- ])
13020
-
13021
- declare const OmTopologyRelationshipSchema = z.object({
13022
- from: OmTopologyNodeRefSchema,
13023
- kind: OmTopologyRelationshipKindSchema,
13024
- to: OmTopologyNodeRefSchema,
13025
- systemPath: SystemPathSchema.optional(),
13026
- required: z.boolean().optional(),
13027
- metadata: OmTopologyMetadataSchema.optional()
13028
- })
13029
-
13030
- declare const OmTopologyDomainSchema = z
13031
- .object({
13032
- version: z.literal(1).default(1),
13033
- relationships: z.record(z.string().trim().min(1).max(255), OmTopologyRelationshipSchema).default({})
13034
- })
13035
- .default({ version: 1, relationships: {} })
13036
- type OmTopologyNodeRef = z.infer<typeof OmTopologyNodeRefSchema>
13037
- type OmTopologyRelationship = z.infer<typeof OmTopologyRelationshipSchema>
13038
- type OmTopologyDomain = z.infer<typeof OmTopologyDomainSchema>
13039
- type TopologyRelationshipInput = Omit<OmTopologyRelationship, 'from' | 'to'> & {
13040
- from: OmTopologyNodeInput
13041
- to: OmTopologyNodeInput
13042
- }
13043
- type OmTopologyNodeInput = OmTopologyNodeRef | ResourceEntry
13044
-
13045
- declare const topologyRef = {
13046
- system: (system: TopologyRefFactoryInput) => parseRef('system', idFrom(system)),
13047
- resource: (resource: TopologyRefFactoryInput) => parseRef('resource', idFrom(resource)),
13048
- ontology: (record: TopologyRefFactoryInput) => parseRef('ontology', idFrom(record)),
13049
- policy: (policy: TopologyRefFactoryInput) => parseRef('policy', idFrom(policy)),
13050
- role: (role: TopologyRefFactoryInput) => parseRef('role', idFrom(role)),
13051
- trigger: (trigger: TopologyRefFactoryInput) => parseRef('trigger', idFrom(trigger)),
13052
- humanCheckpoint: (checkpoint: TopologyRefFactoryInput) => parseRef('humanCheckpoint', idFrom(checkpoint)),
13053
- externalResource: (externalResource: TopologyRefFactoryInput) => parseRef('externalResource', idFrom(externalResource))
13054
- } as const
13055
-
13056
- declare const topologyRelationship = {
13057
- triggers: (from: OmTopologyNodeInput, to: OmTopologyNodeInput, options: TopologyRelationshipOptions = {}) =>
13058
- defineTopologyRelationship({
13059
- ...options,
13060
- from,
13061
- kind: 'triggers',
13062
- to
13063
- }),
13064
- uses: (from: OmTopologyNodeInput, to: OmTopologyNodeInput, options: TopologyRelationshipOptions = {}) =>
13065
- defineTopologyRelationship({
13066
- ...options,
13067
- from,
13068
- kind: 'uses',
13069
- to
13070
- }),
13071
- approval: (from: OmTopologyNodeInput, to: OmTopologyNodeInput, options: TopologyRelationshipOptions = {}) =>
13072
- defineTopologyRelationship({
13073
- ...options,
13074
- from,
13075
- kind: 'approval',
13076
- to
13077
- }),
13078
- usesIntegration: (
13079
- from: OmTopologyNodeInput,
13080
- integration: OmTopologyNodeInput,
13081
- options: TopologyRelationshipOptions = {}
13082
- ) =>
13083
- defineTopologyRelationship({
13084
- required: true,
13085
- ...options,
13086
- from,
13087
- kind: 'uses',
13088
- to: integration
13089
- }),
13090
- requestsApproval: (
13091
- from: OmTopologyNodeInput,
13092
- checkpoint: TopologyRefFactoryInput,
13093
- options: TopologyRelationshipOptions = {}
13094
- ) =>
13095
- defineTopologyRelationship({
13096
- required: true,
13097
- ...options,
13098
- from,
13099
- kind: 'approval',
13100
- to: topologyRef.humanCheckpoint(checkpoint)
13101
- }),
13102
- checkpointRoutesTo: (
13103
- checkpoint: TopologyRefFactoryInput,
13104
- to: OmTopologyNodeInput,
13105
- options: TopologyRelationshipOptions = {}
13106
- ) =>
13107
- defineTopologyRelationship({
13108
- required: true,
13109
- ...options,
13110
- from: topologyRef.humanCheckpoint(checkpoint),
13111
- kind: 'triggers',
13112
- to
13113
- })
13114
- } as const
13115
-
13116
- declare function parseTopologyNodeRef(input: string | OmTopologyNodeRef): OmTopologyNodeRef {
13117
- if (typeof input !== 'string') return OmTopologyNodeRefSchema.parse(input)
13118
-
13119
- const separatorIndex = input.indexOf(':')
13120
- if (separatorIndex === -1) {
13121
- throw new Error(`Topology node ref "${input}" must use <kind>:<id>`)
13122
- }
13123
-
13124
- const kind = input.slice(0, separatorIndex)
13125
- const id = input.slice(separatorIndex + 1)
13126
- if (!OmTopologyNodeKindSchema.safeParse(kind).success) {
13127
- throw new Error(`Topology node ref "${input}" has unsupported kind "${kind}"`)
13128
- }
13129
-
13130
- return OmTopologyNodeRefSchema.parse({ kind, id })
13131
- }
13132
-
13133
- declare function defineTopologyRelationship(input: TopologyRelationshipInput): OmTopologyRelationship {
13134
- return OmTopologyRelationshipSchema.parse({
13135
- ...input,
13136
- from: compileTopologyNodeRef(input.from),
13137
- to: compileTopologyNodeRef(input.to)
13138
- })
13139
- }
13140
-
13141
- declare function defineTopology(
13142
- relationships: Record<string, TopologyRelationshipInput> | TopologyRelationshipInput[]
13143
- ): OmTopologyDomain {
13144
- const entries = Array.isArray(relationships)
13145
- ? relationships.map((relationship, index) => [`relationship-${index + 1}`, relationship] as const)
13146
- : Object.entries(relationships)
13147
-
13148
- return OmTopologyDomainSchema.parse({
13149
- version: 1,
13150
- relationships: Object.fromEntries(entries.map(([key, relationship]) => [key, defineTopologyRelationship(relationship)]))
13151
- })
13152
- }
13153
-
13154
- declare const OrganizationModelSchema = OrganizationModelSchemaBase.superRefine(refineOrganizationModel)
13155
-
13156
- type OrganizationModel = z.infer<typeof OrganizationModelSchema>
13157
- type OrganizationModelResourceEntry = z.infer<typeof ResourceEntrySchema>
13158
- type OrganizationModelResourceOntologyBinding = z.infer<typeof ResourceOntologyBindingSchema>
13159
- type OrganizationModelWorkflowResourceEntry = z.infer<typeof WorkflowResourceEntrySchema>
13160
- type OrganizationModelAgentResourceEntry = z.infer<typeof AgentResourceEntrySchema>
13161
- type OrganizationModelIntegrationResourceEntry = z.infer<typeof IntegrationResourceEntrySchema>
13162
- type OrganizationModelTopology = z.infer<typeof OmTopologyDomainSchema>
13163
- type OrganizationModelTopologyNodeRef = z.infer<typeof OmTopologyNodeRefSchema>
13164
- type OrganizationModelTopologyRelationship = z.infer<typeof OmTopologyRelationshipSchema>
13165
-
13166
- declare const ActionSchema = z.object({
13167
- id: ActionIdSchema,
13168
- /** Domain-map iteration order. Convention: multiples of 10 (10, 20, 30, ...) to allow easy insertion. */
13169
- order: z.number(),
13170
- label: LabelSchema,
13171
- description: DescriptionSchema.optional(),
13172
- scope: ActionScopeSchema.default('global'),
13173
- resourceId: ActionResourceIdSchema.optional(),
13174
- affects: z.array(EntityIdSchema.meta({ ref: 'entity' })).optional(),
13175
- invocations: z.array(ActionInvocationSchema).default([]),
13176
- knowledge: z
13177
- .array(ModelIdSchema.meta({ ref: 'knowledge' }))
13178
- .default([])
13179
- .optional(),
13180
- lifecycle: z
13181
- .enum(['draft', 'beta', 'active', 'deprecated', 'archived'])
13182
- .meta({ label: 'Lifecycle', color: 'teal' })
13183
- .default('active')
13184
- })
13185
- type Action = z.infer<typeof ActionSchema>
13186
-
13187
- // CRM stage/state catalogs are model-owned (authored in the tenant-owned organization model package
13188
- // canonicalOrganizationModel). The published core schema validates only the
13189
- // transport shape; closed-catalog membership is enforced by the caller/API
13190
- // layer via model-injected validators (mirrors LeadGenStageKeySchema).
13191
- declare const CrmStageKeySchema = z.string().trim().min(1)
13192
- declare const CrmStateKeySchema = z.string().trim().min(1)
13193
- type CrmStageKey = z.infer<typeof CrmStageKeySchema>
13194
- type CrmStateKey = z.infer<typeof CrmStateKeySchema>
13195
-
13196
14174
  type ResourceOntologyBindingResolver = (resourceId: string) => OrganizationModelResourceOntologyBinding | undefined;
13197
14175
  type WorkflowResourceDescriptorResolver = (resourceId: string) => OrganizationModelWorkflowResourceEntry;
13198
14176
  type AgentResourceDescriptorResolver = (resourceId: string) => OrganizationModelAgentResourceEntry;
@@ -13238,7 +14216,7 @@ declare function projectDeploymentSpec(options: ProjectDeploymentSpecOptions): D
13238
14216
  */
13239
14217
 
13240
14218
  type WorkflowResourceDescriptorMap = Record<string, OrganizationModelResourceEntry>;
13241
- type WorkflowConfigActionRegistry = readonly Pick<Action, 'id' | 'resourceId'>[];
14219
+ type WorkflowConfigActionRegistry = readonly Pick<Action$1, 'id' | 'resourceId'>[];
13242
14220
  declare function defineWorkflowConfig<const TResourceId extends string>(resourceId: TResourceId, descriptors: WorkflowResourceDescriptorMap, actionRegistry?: WorkflowConfigActionRegistry): {
13243
14221
  readonly name: string;
13244
14222
  readonly description: string;
@@ -13258,5 +14236,5 @@ declare function defineWorkflowConfig<const TResourceId extends string>(resource
13258
14236
  declare const ListBuilderStageKeySchema: z.ZodString;
13259
14237
  type ListBuilderStageKey = z.infer<typeof ListBuilderStageKeySchema>;
13260
14238
 
13261
- export { ActivityEventSchema, BuildPlanSnapshotStepSchema, ProspectingBuildTemplateSchema as BuildTemplateSchema, ContractRefResolutionError, CrmStageKeySchema, CrmStateKeySchema, EmailSchema, ExecutionError, ListBuilderStageKeySchema, ProcessingStageStatusSchema, RegistryValidationError, ResourceRegistry, StepType, ToolingError, bindResourceDescriptor, compileBusinessOntologyValidationIndex, concurrentPool, createLeadGenStageValidators, defineContract, defineResource, defineResourceOntology, defineResources, defineStep, defineTopology, defineTopologyRelationship, defineWorkflow, defineWorkflowConfig, deriveActions, diagnosticOutput, integrationInput, isBuiltInReadinessProfile, isZodType, lookupReadinessProfile, parseTopologyNodeRef, profileForInterface, projectDeploymentSpec, projectTopologyRelationships, registerReadinessProfile, resolveContractRef, runDiagnostic, splitName, toSdkResourceDescriptor, topologyRef, topologyRelationship, validateDeclaredSystemInterfaceReadiness, validateResourceGovernance, withPlatformAgentResourceDescriptor, withPlatformAgentResourceDescriptors, withPlatformIntegrationResourceDescriptor, withPlatformIntegrationResourceDescriptors, withPlatformResourceDescriptor, withPlatformResourceDescriptors };
13262
- export type { AbsoluteScheduleConfig, AcqCompany, AcqContact, AcqDeal, AcqDealRow, AcqList, Action$1 as Action, ActionDef, ActivityEvent, AddToCampaignLead, AddToCampaignParams, AddToCampaignResult, AgentConfig, AgentConstraints, AgentDefinition, AgentMemory, AgentResourceDescriptorResolver, FindCompanyEmailParams as AnymailfinderFindCompanyEmailParams, FindCompanyEmailResult as AnymailfinderFindCompanyEmailResult, FindDecisionMakerEmailParams as AnymailfinderFindDecisionMakerEmailParams, FindDecisionMakerEmailResult as AnymailfinderFindDecisionMakerEmailResult, FindPersonEmailParams as AnymailfinderFindPersonEmailParams, FindPersonEmailResult as AnymailfinderFindPersonEmailResult, AnymailfinderToolMap, VerifyEmailParams as AnymailfinderVerifyEmailParams, VerifyEmailResult as AnymailfinderVerifyEmailResult, ApifyToolMap, ApifyWebhookConfig, AppendRowsParams, AppendRowsResult, ApprovalToolMap, AttioToolMap, BatchUpdateParams, BatchUpdateResult, BuildPlanSnapshotStep, BulkDeleteLeadsParams, BulkDeleteLeadsResult, BulkImportParams, BulkImportResult, BusinessOntologyValidationIndex, CancelHitlByDealIdParams, CancelSchedulesAndHitlByEmailParams, ClearDealFieldsParams, ClearRangeParams, ClearRangeResult, ClickUpToolMap, CompanyFilters, ConcurrentPoolOptions, ConcurrentPoolResult, ConditionalNext, ContactFilters, Contract, ContractRefResolutionErrorCode, ContractRegistry, CreateAttributeParams, CreateAttributeResult, CreateAutoPaymentLinkParams, CreateAutoPaymentLinkResult, CreateCheckoutSessionParams, CreateCheckoutSessionResult, CreateCompanyParams, CreateContactParams, CreateEnvelopeParams, CreateEnvelopeResult, CreateFolderParams, CreateFolderResult, CreateListParams, CreateNoteParams, CreateNoteResult, CreatePaymentLinkParams, CreatePaymentLinkResult, CreateRecordParams, CreateRecordResult, CreateScheduleInput, CrmStageKey, CrmStateKey, CrmToolMap, DeleteDealParams, DeleteNoteParams, DeleteNoteResult, DeleteRecordParams, DeleteRecordResult, DeleteRowByValueParams, DeleteRowByValueResult, DeploymentSpec, DiagnosticOutput, DownloadDocumentParams, DownloadDocumentResult, DropboxToolMap, ElevasConfig, EmailToolMap, EnvelopeDocument, EventTriggerConfig, ExecutionContext, ExecutionInterface, ExecutionMetadata, ExecutionToolMap, FilterExpression, FilterRowsParams, FilterRowsResult, FormField, FormFieldType, FormSchema, GetDailyCampaignAnalyticsParams, GetDailyCampaignAnalyticsResult, GetEmailsParams, GetEmailsResult, GetEnvelopeParams, GetEnvelopeResult, GetHeadersParams, GetHeadersResult, GetLastRowParams, GetLastRowResult, GetPaymentLinkParams, GetPaymentLinkResult, GetRecordParams, GetRecordResult, GetRowByValueParams, GetRowByValueResult, GetSpreadsheetMetadataParams, GetSpreadsheetMetadataResult, GmailSendEmailParams, GmailSendEmailResult, GmailToolMap, GoogleSheetsToolMap, HumanCheckpointDefinition, InstantlyToolMap, IntegrationDefinition, IntegrationResourceDescriptorResolver, JsonSchema, LLMAdapterFactory, LLMGenerateRequest, LLMGenerateResponse, LLMMessage, LLMModel, LeadGenStageValidators, LeadToolMap, LinearNext, ListAttributesParams, ListAttributesResult, ListBuilderStageKey, ListBuilderStep, ListLeadsParams, ListLeadsResult, ListNotesParams, ListNotesResult, ListObjectsResult, ListPaymentLinksParams, ListPaymentLinksResult, ListToolMap, MarkProposalReviewedParams, MarkProposalSentParams, MethodEntry, MillionVerifierToolMap, ModelConfig, NextConfig, NotificationSDKInput, NotificationToolMap, OrganizationModelAgentResourceEntry, OrganizationModelIntegrationResourceEntry, OrganizationModelResourceEntry, OrganizationModelResourceOntologyBinding, OrganizationModelTopology, OrganizationModelTopologyNodeRef, OrganizationModelTopologyRelationship, OrganizationModelWorkflowResourceEntry, PaginatedResult, PaginationParams, PdfToolMap, ProcessingStageStatus, ProjectDeploymentSpecOptions, ProjectsToolMap, QueryRecordsParams, QueryRecordsResult, ReadSheetParams, ReadSheetResult, ReadinessProfileEntry, ReadinessProfileKind, Recipient, RecurringScheduleConfig, RelationshipDeclaration, RelativeScheduleConfig, RemoveFromSubsequenceParams, RemoveFromSubsequenceResult, ResendGetEmailParams, ResendGetEmailResult, ResendSendEmailParams, ResendSendEmailResult, ResendToolMap, ResolvedContractRef, ResourceCategory, ResourceDefinition, ResourceLink, ResourceMetricsConfig, ResourceOntologyBindingResolver, ResourceRelationships, ResourceStatus$1 as ResourceStatus, ResourceType, RunActorParams, RunActorResult, SDKLLMGenerateParams, ScheduleOriginTracking, ScheduleTarget, ScheduleTriggerConfig, SchedulerToolMap, SendReplyParams, SendReplyResult, SetContactNurtureParams, SheetInfo, SignatureApiFieldType, SignatureApiToolMap, SigningPlace, SortCriteria, StartActorParams, StartActorResult, StepHandler, StorageDeleteInput, StorageDeleteOutput, StorageDownloadInput, StorageDownloadOutput, StorageListInput, StorageListOutput, StorageSignedUrlInput, StorageSignedUrlOutput, StorageToolMap, StorageUploadInput, StorageUploadOutput, StripeToolMap, SystemApiInterfaceReadinessContract, TaskSchedule, TaskScheduleConfig, TombaToolMap, Tool, ToolExecutionOptions, ToolMethodMap, ToolingErrorType, TransitionItemParams, TriggerConfig, TriggerDefinition, UpdateAttributeParams, UpdateAttributeResult, UpdateCloseLostReasonParams, UpdateCompanyParams, UpdateContactParams, UpdateDiscoveryDataParams, UpdateFeesParams, UpdateInterestStatusParams, UpdateInterestStatusResult, UpdateListParams, UpdatePaymentLinkParams, UpdatePaymentLinkResult, UpdateProposalDataParams, UpdateRecordParams, UpdateRecordResult, UpdateRowByValueParams, UpdateRowByValueResult, UploadFileParams, UploadFileResult, UpsertCompanyParams, UpsertContactParams, UpsertDealParams, UpsertRowParams, UpsertRowResult, VoidEnvelopeParams, VoidEnvelopeResult, WebhookProviderType, WebhookTriggerConfig, WorkflowConfig, WorkflowConfigActionRegistry, WorkflowDefinition, WorkflowLogger, WorkflowResourceDescriptorMap, WorkflowResourceDescriptorResolver, WorkflowStep, WriteSheetParams, WriteSheetResult };
14239
+ export { ActivityEventSchema, BuildPlanSnapshotStepSchema, ProspectingBuildTemplateSchema as BuildTemplateSchema, ContractRefResolutionError, CrmStageKeySchema, CrmStateKeySchema, EmailSchema, ExecutionError, ListBuilderStageKeySchema, ProcessingStageStatusSchema, RegistryValidationError, ResourceRegistry, StepType, ToolingError, bindResourceDescriptor, compileBusinessOntologyValidationIndex, concurrentPool, createLeadGenStageValidators, defineContract, defineResource, defineResourceOntology, defineResources, defineStep, defineTopology, defineTopologyRelationship, defineWorkflow, defineWorkflowConfig, deriveActions, diagnosticOutput, integrationInput, isBuiltInReadinessProfile, isZodType, lookupReadinessProfile, parseTopologyNodeRef, projectDeploymentSpec, projectTopologyRelationships, registerReadinessProfile, resolveContractRef, runDiagnostic, splitName, toSdkResourceDescriptor, topologyRef, topologyRelationship, validateDeclaredSystemInterfaceReadiness, validateResourceGovernance, withPlatformAgentResourceDescriptor, withPlatformAgentResourceDescriptors, withPlatformIntegrationResourceDescriptor, withPlatformIntegrationResourceDescriptors, withPlatformResourceDescriptor, withPlatformResourceDescriptors };
14240
+ export type { AbsoluteScheduleConfig, AcqCompany, AcqContact, AcqDeal, AcqDealRow, AcqList, Action, ActionDef, ActivityEvent, AddToCampaignLead, AddToCampaignParams, AddToCampaignResult, AgentConfig, AgentConstraints, AgentDefinition, AgentMemory, AgentResourceDescriptorResolver, FindCompanyEmailParams as AnymailfinderFindCompanyEmailParams, FindCompanyEmailResult as AnymailfinderFindCompanyEmailResult, FindDecisionMakerEmailParams as AnymailfinderFindDecisionMakerEmailParams, FindDecisionMakerEmailResult as AnymailfinderFindDecisionMakerEmailResult, FindPersonEmailParams as AnymailfinderFindPersonEmailParams, FindPersonEmailResult as AnymailfinderFindPersonEmailResult, AnymailfinderToolMap, VerifyEmailParams as AnymailfinderVerifyEmailParams, VerifyEmailResult as AnymailfinderVerifyEmailResult, ApifyToolMap, ApifyWebhookConfig, AppendRowsParams, AppendRowsResult, ApprovalToolMap, ArtifactsToolMap, AttioToolMap, BatchUpdateParams, BatchUpdateResult, BuildPlanSnapshotStep, BulkDeleteLeadsParams, BulkDeleteLeadsResult, BulkImportParams, BulkImportResult, BusinessOntologyValidationIndex, CancelHitlByDealIdParams, CancelSchedulesAndHitlByEmailParams, ClearDealFieldsParams, ClearRangeParams, ClearRangeResult, ClickUpToolMap, CompanyFilters, ConcurrentPoolOptions, ConcurrentPoolResult, ConditionalNext, ContactFilters, ContentToolMap, Contract, ContractRefResolutionErrorCode, ContractRegistry, CreateAttributeParams, CreateAttributeResult, CreateAutoPaymentLinkParams, CreateAutoPaymentLinkResult, CreateCheckoutSessionParams, CreateCheckoutSessionResult, CreateCompanyParams, CreateContactParams, CreateEnvelopeParams, CreateEnvelopeResult, CreateFolderParams, CreateFolderResult, CreateListParams, CreateNoteParams, CreateNoteResult, CreatePaymentLinkParams, CreatePaymentLinkResult, CreateRecordParams, CreateRecordResult, CreateScheduleInput, CrmStageKey, CrmStateKey, CrmToolMap, DeleteDealParams, DeleteNoteParams, DeleteNoteResult, DeleteRecordParams, DeleteRecordResult, DeleteRowByValueParams, DeleteRowByValueResult, DeploymentSpec, DiagnosticOutput, DownloadDocumentParams, DownloadDocumentResult, DropboxToolMap, ElevasConfig, EmailToolMap, EnvelopeDocument, EventTriggerConfig, ExecutionContext, ExecutionInterface, ExecutionMetadata, ExecutionToolMap, FilterExpression, FilterRowsParams, FilterRowsResult, FormField, FormFieldType, FormSchema, GetDailyCampaignAnalyticsParams, GetDailyCampaignAnalyticsResult, GetEmailsParams, GetEmailsResult, GetEnvelopeParams, GetEnvelopeResult, GetHeadersParams, GetHeadersResult, GetLastRowParams, GetLastRowResult, GetPaymentLinkParams, GetPaymentLinkResult, GetRecordParams, GetRecordResult, GetRowByValueParams, GetRowByValueResult, GetSpreadsheetMetadataParams, GetSpreadsheetMetadataResult, GmailSendEmailParams, GmailSendEmailResult, GmailToolMap, GoogleSheetsToolMap, HumanCheckpointDefinition, InstantlyToolMap, IntegrationDefinition, IntegrationResourceDescriptorResolver, JsonSchema, LLMAdapterFactory, LLMGenerateRequest, LLMGenerateResponse, LLMMessage, LLMModel, LeadGenStageValidators, LeadToolMap, LinearNext, ListAttributesParams, ListAttributesResult, ListBuilderStageKey, ListBuilderStep, ListLeadsParams, ListLeadsResult, ListNotesParams, ListNotesResult, ListObjectsResult, ListPaymentLinksParams, ListPaymentLinksResult, ListToolMap, MarkProposalReviewedParams, MarkProposalSentParams, MethodEntry, MillionVerifierToolMap, ModelConfig, NextConfig, NotificationSDKInput, NotificationToolMap, OrganizationModelAgentResourceEntry, OrganizationModelIntegrationResourceEntry, OrganizationModelResourceEntry, OrganizationModelResourceOntologyBinding, OrganizationModelTopology, OrganizationModelTopologyNodeRef, OrganizationModelTopologyRelationship, OrganizationModelWorkflowResourceEntry, PaginatedResult, PaginationParams, PdfToolMap, ProcessingStageStatus, ProjectDeploymentSpecOptions, ProjectsToolMap, QueryRecordsParams, QueryRecordsResult, ReadSheetParams, ReadSheetResult, ReadinessProfileEntry, ReadinessProfileKind, Recipient, RecurringScheduleConfig, RelationshipDeclaration, RelativeScheduleConfig, RemoveFromSubsequenceParams, RemoveFromSubsequenceResult, ResendGetEmailParams, ResendGetEmailResult, ResendSendEmailParams, ResendSendEmailResult, ResendToolMap, ResolvedContractRef, ResourceCategory, ResourceDefinition, ResourceLink, ResourceMetricsConfig, ResourceOntologyBindingResolver, ResourceRelationships, ResourceStatus$1 as ResourceStatus, ResourceType, RunActorParams, RunActorResult, SDKLLMGenerateParams, ScheduleOriginTracking, ScheduleTarget, ScheduleTriggerConfig, SchedulerToolMap, SendReplyParams, SendReplyResult, SetContactNurtureParams, SheetInfo, SignatureApiFieldType, SignatureApiToolMap, SigningPlace, SortCriteria, StartActorParams, StartActorResult, StepHandler, StorageDeleteInput, StorageDeleteOutput, StorageDownloadInput, StorageDownloadOutput, StorageListInput, StorageListOutput, StorageSignedUrlInput, StorageSignedUrlOutput, StorageToolMap, StorageUploadInput, StorageUploadOutput, StripeToolMap, SystemApiInterfaceReadinessContract, TaskSchedule, TaskScheduleConfig, TombaToolMap, Tool, ToolExecutionOptions, ToolMethodMap, ToolingErrorType, TransitionItemParams, TriggerConfig, TriggerDefinition, UpdateAttributeParams, UpdateAttributeResult, UpdateCloseLostReasonParams, UpdateCompanyParams, UpdateContactParams, UpdateDiscoveryDataParams, UpdateFeesParams, UpdateInterestStatusParams, UpdateInterestStatusResult, UpdateListParams, UpdatePaymentLinkParams, UpdatePaymentLinkResult, UpdateProposalDataParams, UpdateRecordParams, UpdateRecordResult, UpdateRowByValueParams, UpdateRowByValueResult, UploadFileParams, UploadFileResult, UpsertCompanyParams, UpsertContactParams, UpsertDealParams, UpsertRowParams, UpsertRowResult, VoidEnvelopeParams, VoidEnvelopeResult, WebhookProviderType, WebhookTriggerConfig, WorkflowConfig, WorkflowConfigActionRegistry, WorkflowDefinition, WorkflowLogger, WorkflowResourceDescriptorMap, WorkflowResourceDescriptorResolver, WorkflowStep, WriteSheetParams, WriteSheetResult };