@objectstack/spec 3.0.8 → 3.0.9

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 (1760) hide show
  1. package/dist/api/index.d.mts +3 -2
  2. package/dist/api/index.d.ts +3 -2
  3. package/dist/api/index.js +2027 -51
  4. package/dist/api/index.js.map +1 -1
  5. package/dist/api/index.mjs +1943 -52
  6. package/dist/api/index.mjs.map +1 -1
  7. package/dist/automation/index.d.mts +2 -1
  8. package/dist/automation/index.d.ts +2 -1
  9. package/dist/automation/index.js +408 -4
  10. package/dist/automation/index.js.map +1 -1
  11. package/dist/automation/index.mjs +386 -5
  12. package/dist/automation/index.mjs.map +1 -1
  13. package/dist/cloud/index.d.mts +1 -1
  14. package/dist/cloud/index.d.ts +1 -1
  15. package/dist/cloud/index.js +87 -57
  16. package/dist/cloud/index.js.map +1 -1
  17. package/dist/cloud/index.mjs +86 -58
  18. package/dist/cloud/index.mjs.map +1 -1
  19. package/dist/contracts/index.d.mts +6 -3
  20. package/dist/contracts/index.d.ts +6 -3
  21. package/dist/data/index.d.mts +2 -2
  22. package/dist/data/index.d.ts +2 -2
  23. package/dist/data/index.js +6 -0
  24. package/dist/data/index.js.map +1 -1
  25. package/dist/data/index.mjs +6 -0
  26. package/dist/data/index.mjs.map +1 -1
  27. package/dist/execution.zod-CNIVLUlM.d.mts +753 -0
  28. package/dist/execution.zod-CNIVLUlM.d.ts +753 -0
  29. package/dist/export.zod-JY1n479p.d.mts +868 -0
  30. package/dist/export.zod-JY1n479p.d.ts +868 -0
  31. package/dist/{index-D2Ax_A0R.d.mts → index-BPPEvklW.d.mts} +17177 -6700
  32. package/dist/{index-BROcs0kJ.d.mts → index-Bkf-4Hgd.d.mts} +1 -1
  33. package/dist/{index-Clv7cLYS.d.ts → index-C6lkTV3q.d.ts} +281 -237
  34. package/dist/{index-B1AZWWcE.d.ts → index-CEqhxDGw.d.ts} +625 -1930
  35. package/dist/{index-C7sOJ4RJ.d.mts → index-CsQmxhEF.d.mts} +246 -2
  36. package/dist/{index-C7sOJ4RJ.d.ts → index-CsQmxhEF.d.ts} +246 -2
  37. package/dist/{index-Bh-dF2Ju.d.ts → index-D0K6e9cT.d.ts} +1 -1
  38. package/dist/{index-Ci0RXmHz.d.mts → index-D7IVfhww.d.mts} +625 -1930
  39. package/dist/{index-DYNhHUVz.d.mts → index-DXGnzTsY.d.mts} +484 -4
  40. package/dist/{index-JCZedZdf.d.mts → index-DcxXBkSo.d.mts} +70 -2
  41. package/dist/{index-JCZedZdf.d.ts → index-DcxXBkSo.d.ts} +70 -2
  42. package/dist/{index-BRuf4O2a.d.ts → index-KZbFyT_N.d.ts} +484 -4
  43. package/dist/{index-DIaB52-2.d.mts → index-RL3hxi-b.d.mts} +281 -237
  44. package/dist/{index-CzktECeu.d.ts → index-zkXIOLcm.d.ts} +17177 -6700
  45. package/dist/index.d.mts +142 -10
  46. package/dist/index.d.ts +142 -10
  47. package/dist/index.js +2150 -197
  48. package/dist/index.js.map +1 -1
  49. package/dist/index.mjs +2150 -197
  50. package/dist/index.mjs.map +1 -1
  51. package/dist/kernel/index.d.mts +3 -3
  52. package/dist/kernel/index.d.ts +3 -3
  53. package/dist/kernel/index.js +421 -65
  54. package/dist/kernel/index.js.map +1 -1
  55. package/dist/kernel/index.mjs +402 -66
  56. package/dist/kernel/index.mjs.map +1 -1
  57. package/dist/{package-registry.zod-CO7_ejFC.d.mts → package-registry.zod-DeXhB8jL.d.mts} +149 -1
  58. package/dist/{package-registry.zod-CO7_ejFC.d.ts → package-registry.zod-DeXhB8jL.d.ts} +149 -1
  59. package/dist/package-upgrade.zod-CDgftw9z.d.mts +2686 -0
  60. package/dist/package-upgrade.zod-CDgftw9z.d.ts +2686 -0
  61. package/dist/studio/index.d.mts +1 -1
  62. package/dist/studio/index.d.ts +1 -1
  63. package/dist/studio/index.js +173 -0
  64. package/dist/studio/index.js.map +1 -1
  65. package/dist/studio/index.mjs +164 -1
  66. package/dist/studio/index.mjs.map +1 -1
  67. package/dist/{subscription.zod-DCztHI1t.d.ts → subscription.zod-CJ4JWmNt.d.ts} +5 -0
  68. package/dist/{subscription.zod-DwAnxzbq.d.mts → subscription.zod-D5j365Fg.d.mts} +5 -0
  69. package/dist/ui/index.js +6 -0
  70. package/dist/ui/index.js.map +1 -1
  71. package/dist/ui/index.mjs +6 -0
  72. package/dist/ui/index.mjs.map +1 -1
  73. package/json-schema/ai/AICodeReviewResult.json +2 -2
  74. package/json-schema/ai/AIKnowledge.json +2 -2
  75. package/json-schema/ai/AIModelConfig.json +2 -2
  76. package/json-schema/ai/AIOperationCost.json +2 -2
  77. package/json-schema/ai/AIOpsAgentConfig.json +2 -2
  78. package/json-schema/ai/AIOrchestration.json +2 -2
  79. package/json-schema/ai/AIOrchestrationExecutionResult.json +2 -2
  80. package/json-schema/ai/AIOrchestrationTrigger.json +2 -2
  81. package/json-schema/ai/AITask.json +2 -2
  82. package/json-schema/ai/AITaskType.json +2 -2
  83. package/json-schema/ai/AITool.json +2 -2
  84. package/json-schema/ai/Agent.json +2 -2
  85. package/json-schema/ai/AgentAction.json +2 -2
  86. package/json-schema/ai/AgentActionResult.json +2 -2
  87. package/json-schema/ai/AgentActionSequence.json +2 -2
  88. package/json-schema/ai/AgentActionSequenceResult.json +2 -2
  89. package/json-schema/ai/AgentCommunicationProtocol.json +2 -2
  90. package/json-schema/ai/AgentGroupMember.json +2 -2
  91. package/json-schema/ai/AgentGroupRole.json +2 -2
  92. package/json-schema/ai/AnomalyDetectionConfig.json +2 -2
  93. package/json-schema/ai/AutoScalingPolicy.json +2 -2
  94. package/json-schema/ai/BatchAIOrchestrationExecution.json +2 -2
  95. package/json-schema/ai/BillingPeriod.json +2 -2
  96. package/json-schema/ai/BudgetLimit.json +2 -2
  97. package/json-schema/ai/BudgetStatus.json +2 -2
  98. package/json-schema/ai/BudgetType.json +2 -2
  99. package/json-schema/ai/CICDPipelineConfig.json +2 -2
  100. package/json-schema/ai/ChunkingStrategy.json +2 -2
  101. package/json-schema/ai/CodeContent.json +2 -2
  102. package/json-schema/ai/CodeGenerationConfig.json +2 -2
  103. package/json-schema/ai/CodeGenerationRequest.json +2 -2
  104. package/json-schema/ai/CodeGenerationTarget.json +2 -2
  105. package/json-schema/ai/ComponentActionParams.json +2 -2
  106. package/json-schema/ai/ComponentActionType.json +2 -2
  107. package/json-schema/ai/ComponentAgentAction.json +2 -2
  108. package/json-schema/ai/ConversationAnalytics.json +2 -2
  109. package/json-schema/ai/ConversationContext.json +2 -2
  110. package/json-schema/ai/ConversationMessage.json +2 -2
  111. package/json-schema/ai/ConversationSession.json +2 -2
  112. package/json-schema/ai/ConversationSummary.json +2 -2
  113. package/json-schema/ai/CostAlert.json +2 -2
  114. package/json-schema/ai/CostAlertType.json +2 -2
  115. package/json-schema/ai/CostAnalytics.json +2 -2
  116. package/json-schema/ai/CostBreakdownDimension.json +2 -2
  117. package/json-schema/ai/CostBreakdownEntry.json +2 -2
  118. package/json-schema/ai/CostEntry.json +2 -2
  119. package/json-schema/ai/CostMetricType.json +2 -2
  120. package/json-schema/ai/CostOptimizationRecommendation.json +2 -2
  121. package/json-schema/ai/CostQueryFilters.json +2 -2
  122. package/json-schema/ai/CostReport.json +2 -2
  123. package/json-schema/ai/DataActionParams.json +2 -2
  124. package/json-schema/ai/DataActionType.json +2 -2
  125. package/json-schema/ai/DataAgentAction.json +2 -2
  126. package/json-schema/ai/DeploymentStrategy.json +2 -2
  127. package/json-schema/ai/DevOpsAgent.json +2 -2
  128. package/json-schema/ai/DevOpsTool.json +2 -2
  129. package/json-schema/ai/DevelopmentConfig.json +2 -2
  130. package/json-schema/ai/DocumentChunk.json +2 -2
  131. package/json-schema/ai/DocumentLoaderConfig.json +2 -2
  132. package/json-schema/ai/DocumentMetadata.json +2 -2
  133. package/json-schema/ai/EmbeddingModel.json +2 -2
  134. package/json-schema/ai/Entity.json +2 -2
  135. package/json-schema/ai/EvaluationMetrics.json +2 -2
  136. package/json-schema/ai/FeedbackLoop.json +2 -2
  137. package/json-schema/ai/FieldSynonymConfig.json +2 -2
  138. package/json-schema/ai/FileContent.json +2 -2
  139. package/json-schema/ai/FilterExpression.json +2 -2
  140. package/json-schema/ai/FilterGroup.json +2 -2
  141. package/json-schema/ai/FormActionParams.json +2 -2
  142. package/json-schema/ai/FormActionType.json +2 -2
  143. package/json-schema/ai/FormAgentAction.json +2 -2
  144. package/json-schema/ai/FunctionCall.json +2 -2
  145. package/json-schema/ai/GeneratedCode.json +2 -2
  146. package/json-schema/ai/GitHubIntegration.json +2 -2
  147. package/json-schema/ai/Hyperparameters.json +2 -2
  148. package/json-schema/ai/ImageContent.json +2 -2
  149. package/json-schema/ai/IntegrationConfig.json +2 -2
  150. package/json-schema/ai/IntentActionMapping.json +2 -2
  151. package/json-schema/ai/Issue.json +2 -2
  152. package/json-schema/ai/MCPCapability.json +2 -2
  153. package/json-schema/ai/MCPClientConfig.json +2 -2
  154. package/json-schema/ai/MCPPrompt.json +2 -2
  155. package/json-schema/ai/MCPPromptArgument.json +2 -2
  156. package/json-schema/ai/MCPPromptMessage.json +2 -2
  157. package/json-schema/ai/MCPPromptRequest.json +2 -2
  158. package/json-schema/ai/MCPPromptResponse.json +2 -2
  159. package/json-schema/ai/MCPResource.json +2 -2
  160. package/json-schema/ai/MCPResourceRequest.json +2 -2
  161. package/json-schema/ai/MCPResourceResponse.json +2 -2
  162. package/json-schema/ai/MCPResourceTemplate.json +2 -2
  163. package/json-schema/ai/MCPResourceType.json +2 -2
  164. package/json-schema/ai/MCPRootEntry.json +2 -2
  165. package/json-schema/ai/MCPRootsConfig.json +2 -2
  166. package/json-schema/ai/MCPSamplingConfig.json +2 -2
  167. package/json-schema/ai/MCPServerConfig.json +2 -2
  168. package/json-schema/ai/MCPServerInfo.json +2 -2
  169. package/json-schema/ai/MCPStreamingConfig.json +2 -2
  170. package/json-schema/ai/MCPTool.json +2 -2
  171. package/json-schema/ai/MCPToolApproval.json +2 -2
  172. package/json-schema/ai/MCPToolCallRequest.json +2 -2
  173. package/json-schema/ai/MCPToolCallResponse.json +2 -2
  174. package/json-schema/ai/MCPToolParameter.json +2 -2
  175. package/json-schema/ai/MCPTransportConfig.json +2 -2
  176. package/json-schema/ai/MCPTransportType.json +2 -2
  177. package/json-schema/ai/MessageContent.json +2 -2
  178. package/json-schema/ai/MessageContentType.json +2 -2
  179. package/json-schema/ai/MessagePruningEvent.json +2 -2
  180. package/json-schema/ai/MessageRole.json +2 -2
  181. package/json-schema/ai/MetadataFilter.json +2 -2
  182. package/json-schema/ai/MetadataSource.json +2 -2
  183. package/json-schema/ai/ModelCapability.json +2 -2
  184. package/json-schema/ai/ModelConfig.json +2 -2
  185. package/json-schema/ai/ModelDrift.json +2 -2
  186. package/json-schema/ai/ModelFeature.json +2 -2
  187. package/json-schema/ai/ModelLimits.json +2 -2
  188. package/json-schema/ai/ModelPricing.json +2 -2
  189. package/json-schema/ai/ModelProvider.json +2 -2
  190. package/json-schema/ai/ModelRegistry.json +2 -2
  191. package/json-schema/ai/ModelRegistryEntry.json +2 -2
  192. package/json-schema/ai/ModelSelectionCriteria.json +2 -2
  193. package/json-schema/ai/MonitoringConfig.json +2 -2
  194. package/json-schema/ai/MultiAgentGroup.json +2 -2
  195. package/json-schema/ai/NLQAnalytics.json +2 -2
  196. package/json-schema/ai/NLQFieldMapping.json +2 -2
  197. package/json-schema/ai/NLQModelConfig.json +2 -2
  198. package/json-schema/ai/NLQParseResult.json +2 -2
  199. package/json-schema/ai/NLQRequest.json +2 -2
  200. package/json-schema/ai/NLQResponse.json +2 -2
  201. package/json-schema/ai/NLQTrainingExample.json +2 -2
  202. package/json-schema/ai/NavigationActionParams.json +2 -2
  203. package/json-schema/ai/NavigationActionType.json +2 -2
  204. package/json-schema/ai/NavigationAgentAction.json +2 -2
  205. package/json-schema/ai/PerformanceOptimization.json +2 -2
  206. package/json-schema/ai/PipelineStage.json +2 -2
  207. package/json-schema/ai/PluginCompositionRequest.json +2 -2
  208. package/json-schema/ai/PluginCompositionResult.json +2 -2
  209. package/json-schema/ai/PluginRecommendation.json +2 -2
  210. package/json-schema/ai/PluginRecommendationRequest.json +2 -2
  211. package/json-schema/ai/PluginScaffoldingTemplate.json +2 -2
  212. package/json-schema/ai/PostProcessingAction.json +2 -2
  213. package/json-schema/ai/PredictionRequest.json +2 -2
  214. package/json-schema/ai/PredictionResult.json +2 -2
  215. package/json-schema/ai/PredictiveModel.json +2 -2
  216. package/json-schema/ai/PredictiveModelType.json +2 -2
  217. package/json-schema/ai/PromptTemplate.json +2 -2
  218. package/json-schema/ai/PromptVariable.json +2 -2
  219. package/json-schema/ai/QueryContext.json +2 -2
  220. package/json-schema/ai/QueryIntent.json +2 -2
  221. package/json-schema/ai/QueryTemplate.json +2 -2
  222. package/json-schema/ai/RAGPipelineConfig.json +2 -2
  223. package/json-schema/ai/RAGPipelineStatus.json +2 -2
  224. package/json-schema/ai/RAGQueryRequest.json +2 -2
  225. package/json-schema/ai/RAGQueryResponse.json +2 -2
  226. package/json-schema/ai/RerankingConfig.json +2 -2
  227. package/json-schema/ai/Resolution.json +2 -2
  228. package/json-schema/ai/RetrievalStrategy.json +2 -2
  229. package/json-schema/ai/RootCauseAnalysisRequest.json +2 -2
  230. package/json-schema/ai/RootCauseAnalysisResult.json +2 -2
  231. package/json-schema/ai/SelfHealingAction.json +2 -2
  232. package/json-schema/ai/SelfHealingConfig.json +2 -2
  233. package/json-schema/ai/StructuredOutputConfig.json +2 -2
  234. package/json-schema/ai/StructuredOutputFormat.json +2 -2
  235. package/json-schema/ai/TestingConfig.json +2 -2
  236. package/json-schema/ai/TextContent.json +2 -2
  237. package/json-schema/ai/Timeframe.json +2 -2
  238. package/json-schema/ai/TokenBudgetConfig.json +2 -2
  239. package/json-schema/ai/TokenBudgetStrategy.json +2 -2
  240. package/json-schema/ai/TokenUsage.json +2 -2
  241. package/json-schema/ai/TokenUsageStats.json +2 -2
  242. package/json-schema/ai/ToolCall.json +2 -2
  243. package/json-schema/ai/TrainingConfig.json +2 -2
  244. package/json-schema/ai/TransformPipelineStep.json +2 -2
  245. package/json-schema/ai/TypedAgentAction.json +2 -2
  246. package/json-schema/ai/UIActionType.json +2 -2
  247. package/json-schema/ai/VectorStoreConfig.json +2 -2
  248. package/json-schema/ai/VectorStoreProvider.json +2 -2
  249. package/json-schema/ai/VercelIntegration.json +2 -2
  250. package/json-schema/ai/VersionManagement.json +2 -2
  251. package/json-schema/ai/ViewActionParams.json +2 -2
  252. package/json-schema/ai/ViewActionType.json +2 -2
  253. package/json-schema/ai/ViewAgentAction.json +2 -2
  254. package/json-schema/ai/WorkflowActionParams.json +2 -2
  255. package/json-schema/ai/WorkflowActionType.json +2 -2
  256. package/json-schema/ai/WorkflowAgentAction.json +2 -2
  257. package/json-schema/ai/WorkflowFieldCondition.json +2 -2
  258. package/json-schema/ai/WorkflowSchedule.json +2 -2
  259. package/json-schema/api/AckMessage.json +2 -2
  260. package/json-schema/api/AddReactionRequest.json +2 -2
  261. package/json-schema/api/AddReactionResponse.json +2 -2
  262. package/json-schema/api/AiChatRequest.json +2 -2
  263. package/json-schema/api/AiChatResponse.json +2 -2
  264. package/json-schema/api/AiInsightsRequest.json +2 -2
  265. package/json-schema/api/AiInsightsResponse.json +2 -2
  266. package/json-schema/api/AiNlqRequest.json +2 -2
  267. package/json-schema/api/AiNlqResponse.json +2 -2
  268. package/json-schema/api/AiSuggestRequest.json +2 -2
  269. package/json-schema/api/AiSuggestResponse.json +2 -2
  270. package/json-schema/api/AnalyticsEndpoint.json +2 -2
  271. package/json-schema/api/AnalyticsMetadataResponse.json +2 -2
  272. package/json-schema/api/AnalyticsQueryRequest.json +2 -2
  273. package/json-schema/api/AnalyticsResultResponse.json +2 -2
  274. package/json-schema/api/AnalyticsSqlResponse.json +2 -2
  275. package/json-schema/api/ApiChangelogEntry.json +2 -2
  276. package/json-schema/api/ApiDiscoveryQuery.json +2 -2
  277. package/json-schema/api/ApiDiscoveryResponse.json +2 -2
  278. package/json-schema/api/ApiDocumentationConfig.json +2 -2
  279. package/json-schema/api/ApiEndpoint.json +2 -2
  280. package/json-schema/api/ApiEndpointRegistration.json +2 -2
  281. package/json-schema/api/ApiError.json +2 -2
  282. package/json-schema/api/ApiMapping.json +2 -2
  283. package/json-schema/api/ApiMetadata.json +2 -2
  284. package/json-schema/api/ApiParameter.json +2 -2
  285. package/json-schema/api/ApiProtocolType.json +2 -2
  286. package/json-schema/api/ApiRegistry.json +2 -2
  287. package/json-schema/api/ApiRegistryEntry.json +2 -2
  288. package/json-schema/api/ApiResponse.json +2 -2
  289. package/json-schema/api/ApiRoutes.json +2 -2
  290. package/json-schema/api/ApiTestCollection.json +2 -2
  291. package/json-schema/api/ApiTestRequest.json +2 -2
  292. package/json-schema/api/ApiTestingUiConfig.json +2 -2
  293. package/json-schema/api/ApiTestingUiType.json +2 -2
  294. package/json-schema/api/AppDefinitionResponse.json +2 -2
  295. package/json-schema/api/AuthEndpoint.json +2 -2
  296. package/json-schema/api/AuthProvider.json +2 -2
  297. package/json-schema/api/AutomationApiErrorCode.json +17 -0
  298. package/json-schema/api/AutomationFlowPathParams.json +16 -0
  299. package/json-schema/api/AutomationRunPathParams.json +21 -0
  300. package/json-schema/api/AutomationTriggerRequest.json +2 -2
  301. package/json-schema/api/AutomationTriggerResponse.json +2 -2
  302. package/json-schema/api/BasePresence.json +2 -2
  303. package/json-schema/api/BaseResponse.json +2 -2
  304. package/json-schema/api/BatchConfig.json +2 -2
  305. package/json-schema/api/BatchDataRequest.json +2 -2
  306. package/json-schema/api/BatchDataResponse.json +2 -2
  307. package/json-schema/api/BatchEndpointsConfig.json +2 -2
  308. package/json-schema/api/BatchLoadingStrategy.json +2 -2
  309. package/json-schema/api/BatchOperationResult.json +2 -2
  310. package/json-schema/api/BatchOperationType.json +2 -2
  311. package/json-schema/api/BatchOptions.json +2 -2
  312. package/json-schema/api/BatchRecord.json +2 -2
  313. package/json-schema/api/BatchUpdateRequest.json +2 -2
  314. package/json-schema/api/BatchUpdateResponse.json +2 -2
  315. package/json-schema/api/BulkRequest.json +2 -2
  316. package/json-schema/api/BulkResponse.json +2 -2
  317. package/json-schema/api/CacheControl.json +2 -2
  318. package/json-schema/api/CacheDirective.json +2 -2
  319. package/json-schema/api/CacheInvalidationRequest.json +2 -2
  320. package/json-schema/api/CacheInvalidationResponse.json +2 -2
  321. package/json-schema/api/CacheInvalidationTarget.json +2 -2
  322. package/json-schema/api/Callback.json +2 -2
  323. package/json-schema/api/ChangelogEntry.json +104 -0
  324. package/json-schema/api/CheckPermissionRequest.json +2 -2
  325. package/json-schema/api/CheckPermissionResponse.json +2 -2
  326. package/json-schema/api/CodeGenerationTemplate.json +2 -2
  327. package/json-schema/api/CompleteChunkedUploadRequest.json +42 -0
  328. package/json-schema/api/CompleteChunkedUploadResponse.json +107 -0
  329. package/json-schema/api/CompleteUploadRequest.json +2 -2
  330. package/json-schema/api/ConceptListResponse.json +2 -2
  331. package/json-schema/api/ConflictResolutionStrategy.json +2 -2
  332. package/json-schema/api/CreateDataRequest.json +2 -2
  333. package/json-schema/api/CreateDataResponse.json +2 -2
  334. package/json-schema/api/CreateExportJobRequest.json +93 -0
  335. package/json-schema/api/CreateExportJobResponse.json +108 -0
  336. package/json-schema/api/CreateFeedItemRequest.json +2 -2
  337. package/json-schema/api/CreateFeedItemResponse.json +30 -2
  338. package/json-schema/api/CreateFlowRequest.json +486 -0
  339. package/json-schema/api/CreateFlowResponse.json +553 -0
  340. package/json-schema/api/CreateManyDataRequest.json +2 -2
  341. package/json-schema/api/CreateManyDataResponse.json +2 -2
  342. package/json-schema/api/CreateRequest.json +2 -2
  343. package/json-schema/api/CrudEndpointPattern.json +2 -2
  344. package/json-schema/api/CrudEndpointsConfig.json +2 -2
  345. package/json-schema/api/CrudOperation.json +2 -2
  346. package/json-schema/api/CursorMessage.json +2 -2
  347. package/json-schema/api/CursorPosition.json +2 -2
  348. package/json-schema/api/DataLoaderConfig.json +2 -2
  349. package/json-schema/api/DeduplicationStrategy.json +12 -0
  350. package/json-schema/api/DeleteDataRequest.json +2 -2
  351. package/json-schema/api/DeleteDataResponse.json +2 -2
  352. package/json-schema/api/DeleteFeedItemRequest.json +2 -2
  353. package/json-schema/api/DeleteFeedItemResponse.json +2 -2
  354. package/json-schema/api/DeleteFlowRequest.json +16 -0
  355. package/json-schema/api/DeleteFlowResponse.json +87 -0
  356. package/json-schema/api/DeleteManyDataRequest.json +2 -2
  357. package/json-schema/api/DeleteManyDataResponse.json +2 -2
  358. package/json-schema/api/DeleteManyRequest.json +2 -2
  359. package/json-schema/api/DeleteResponse.json +2 -2
  360. package/json-schema/api/DeleteViewRequest.json +2 -2
  361. package/json-schema/api/DeleteViewResponse.json +2 -2
  362. package/json-schema/api/DisablePackageRequest.json +5 -3
  363. package/json-schema/api/DisablePackageResponse.json +83 -4
  364. package/json-schema/api/Discovery.json +90 -2
  365. package/json-schema/api/DispatcherConfig.json +2 -2
  366. package/json-schema/api/DispatcherRoute.json +2 -2
  367. package/json-schema/api/DocumentState.json +2 -2
  368. package/json-schema/api/ETag.json +2 -2
  369. package/json-schema/api/EditMessage.json +2 -2
  370. package/json-schema/api/EditOperation.json +2 -2
  371. package/json-schema/api/EditOperationType.json +2 -2
  372. package/json-schema/api/EnablePackageRequest.json +5 -3
  373. package/json-schema/api/EnablePackageResponse.json +83 -4
  374. package/json-schema/api/EndpointRegistry.json +2 -2
  375. package/json-schema/api/EnhancedApiError.json +2 -2
  376. package/json-schema/api/ErrorCategory.json +2 -2
  377. package/json-schema/api/ErrorHandlingConfig.json +2 -2
  378. package/json-schema/api/ErrorMessage.json +2 -2
  379. package/json-schema/api/ErrorResponse.json +2 -2
  380. package/json-schema/api/EventFilter.json +2 -2
  381. package/json-schema/api/EventFilterCondition.json +2 -2
  382. package/json-schema/api/EventMessage.json +2 -2
  383. package/json-schema/api/EventPattern.json +2 -2
  384. package/json-schema/api/EventSubscription.json +2 -2
  385. package/json-schema/api/ExportFormat.json +13 -0
  386. package/json-schema/api/ExportImportTemplate.json +123 -0
  387. package/json-schema/api/ExportJobProgress.json +174 -0
  388. package/json-schema/api/ExportJobStatus.json +14 -0
  389. package/json-schema/api/ExportJobSummary.json +75 -0
  390. package/json-schema/api/ExportRequest.json +2 -2
  391. package/json-schema/api/FederationEntity.json +2 -2
  392. package/json-schema/api/FederationEntityKey.json +2 -2
  393. package/json-schema/api/FederationExternalField.json +2 -2
  394. package/json-schema/api/FederationGateway.json +2 -2
  395. package/json-schema/api/FederationProvides.json +2 -2
  396. package/json-schema/api/FederationRequires.json +2 -2
  397. package/json-schema/api/FeedApiErrorCode.json +8 -3
  398. package/json-schema/api/FeedItemPathParams.json +2 -2
  399. package/json-schema/api/FeedListFilterType.json +2 -2
  400. package/json-schema/api/FeedPathParams.json +2 -2
  401. package/json-schema/api/FeedUnsubscribeRequest.json +2 -2
  402. package/json-schema/api/FieldError.json +2 -2
  403. package/json-schema/api/FieldMappingEntry.json +48 -0
  404. package/json-schema/api/FileTypeValidation.json +48 -0
  405. package/json-schema/api/FileUploadResponse.json +2 -2
  406. package/json-schema/api/FilterOperator.json +2 -2
  407. package/json-schema/api/FindDataRequest.json +2 -2
  408. package/json-schema/api/FindDataResponse.json +6 -2
  409. package/json-schema/api/FlowSummary.json +55 -0
  410. package/json-schema/api/GeneratedApiDocumentation.json +2 -2
  411. package/json-schema/api/GeneratedEndpoint.json +2 -2
  412. package/json-schema/api/GetAnalyticsMetaRequest.json +2 -2
  413. package/json-schema/api/GetChangelogRequest.json +53 -0
  414. package/json-schema/api/GetChangelogResponse.json +198 -0
  415. package/json-schema/api/GetDataRequest.json +2 -2
  416. package/json-schema/api/GetDataResponse.json +2 -2
  417. package/json-schema/api/GetDiscoveryRequest.json +2 -2
  418. package/json-schema/api/GetDiscoveryResponse.json +81 -2
  419. package/json-schema/api/GetEffectivePermissionsRequest.json +2 -2
  420. package/json-schema/api/GetEffectivePermissionsResponse.json +2 -2
  421. package/json-schema/api/GetExportJobDownloadRequest.json +16 -0
  422. package/json-schema/api/GetExportJobDownloadResponse.json +122 -0
  423. package/json-schema/api/GetFeedRequest.json +2 -2
  424. package/json-schema/api/GetFeedResponse.json +30 -2
  425. package/json-schema/api/GetFieldLabelsRequest.json +2 -2
  426. package/json-schema/api/GetFieldLabelsResponse.json +2 -2
  427. package/json-schema/api/GetFlowRequest.json +16 -0
  428. package/json-schema/api/GetFlowResponse.json +553 -0
  429. package/json-schema/api/GetInstalledPackageRequest.json +16 -0
  430. package/json-schema/api/GetInstalledPackageResponse.json +1992 -0
  431. package/json-schema/api/GetLocalesRequest.json +2 -2
  432. package/json-schema/api/GetLocalesResponse.json +2 -2
  433. package/json-schema/api/GetMetaItemCachedRequest.json +2 -2
  434. package/json-schema/api/GetMetaItemCachedResponse.json +2 -2
  435. package/json-schema/api/GetMetaItemRequest.json +2 -2
  436. package/json-schema/api/GetMetaItemResponse.json +2 -2
  437. package/json-schema/api/GetMetaItemsRequest.json +2 -2
  438. package/json-schema/api/GetMetaItemsResponse.json +2 -2
  439. package/json-schema/api/GetMetaTypesRequest.json +2 -2
  440. package/json-schema/api/GetMetaTypesResponse.json +2 -2
  441. package/json-schema/api/GetNotificationPreferencesRequest.json +2 -2
  442. package/json-schema/api/GetNotificationPreferencesResponse.json +2 -2
  443. package/json-schema/api/GetObjectPermissionsRequest.json +2 -2
  444. package/json-schema/api/GetObjectPermissionsResponse.json +2 -2
  445. package/json-schema/api/GetPackageRequest.json +5 -3
  446. package/json-schema/api/GetPackageResponse.json +82 -4
  447. package/json-schema/api/GetPresenceRequest.json +2 -2
  448. package/json-schema/api/GetPresenceResponse.json +2 -2
  449. package/json-schema/api/GetPresignedUrlRequest.json +2 -2
  450. package/json-schema/api/GetRunRequest.json +21 -0
  451. package/json-schema/api/GetRunResponse.json +284 -0
  452. package/json-schema/api/GetTranslationsRequest.json +2 -2
  453. package/json-schema/api/GetTranslationsResponse.json +2 -2
  454. package/json-schema/api/GetUiViewRequest.json +2 -2
  455. package/json-schema/api/GetViewRequest.json +2 -2
  456. package/json-schema/api/GetWorkflowConfigRequest.json +2 -2
  457. package/json-schema/api/GetWorkflowConfigResponse.json +2 -2
  458. package/json-schema/api/GetWorkflowStateRequest.json +2 -2
  459. package/json-schema/api/GetWorkflowStateResponse.json +2 -2
  460. package/json-schema/api/GraphQLConfig.json +2 -2
  461. package/json-schema/api/GraphQLDataLoaderConfig.json +2 -2
  462. package/json-schema/api/GraphQLDirectiveConfig.json +2 -2
  463. package/json-schema/api/GraphQLDirectiveLocation.json +2 -2
  464. package/json-schema/api/GraphQLMutationConfig.json +2 -2
  465. package/json-schema/api/GraphQLPersistedQuery.json +2 -2
  466. package/json-schema/api/GraphQLQueryAdapter.json +2 -2
  467. package/json-schema/api/GraphQLQueryComplexity.json +2 -2
  468. package/json-schema/api/GraphQLQueryConfig.json +2 -2
  469. package/json-schema/api/GraphQLQueryDepthLimit.json +2 -2
  470. package/json-schema/api/GraphQLRateLimit.json +2 -2
  471. package/json-schema/api/GraphQLResolverConfig.json +2 -2
  472. package/json-schema/api/GraphQLScalarType.json +2 -2
  473. package/json-schema/api/GraphQLSubscriptionConfig.json +2 -2
  474. package/json-schema/api/GraphQLTypeConfig.json +2 -2
  475. package/json-schema/api/HttpMethod.json +2 -2
  476. package/json-schema/api/HttpStatusCode.json +2 -2
  477. package/json-schema/api/IdRequest.json +2 -2
  478. package/json-schema/api/ImportValidationConfig.json +77 -0
  479. package/json-schema/api/ImportValidationMode.json +11 -0
  480. package/json-schema/api/ImportValidationResult.json +150 -0
  481. package/json-schema/api/InitiateChunkedUploadRequest.json +56 -0
  482. package/json-schema/api/InitiateChunkedUploadResponse.json +113 -0
  483. package/json-schema/api/InstallPackageRequest.json +26 -3
  484. package/json-schema/api/InstallPackageResponse.json +196 -4
  485. package/json-schema/api/ListExportJobsRequest.json +39 -0
  486. package/json-schema/api/ListExportJobsResponse.json +163 -0
  487. package/json-schema/api/ListFlowsRequest.json +44 -0
  488. package/json-schema/api/ListFlowsResponse.json +149 -0
  489. package/json-schema/api/ListInstalledPackagesRequest.json +40 -0
  490. package/json-schema/api/ListInstalledPackagesResponse.json +2020 -0
  491. package/json-schema/api/ListNotificationsRequest.json +2 -2
  492. package/json-schema/api/ListNotificationsResponse.json +2 -2
  493. package/json-schema/api/ListPackagesRequest.json +7 -4
  494. package/json-schema/api/ListPackagesResponse.json +86 -6
  495. package/json-schema/api/ListRecordResponse.json +2 -2
  496. package/json-schema/api/ListRunsRequest.json +42 -0
  497. package/json-schema/api/ListRunsResponse.json +311 -0
  498. package/json-schema/api/ListViewsRequest.json +2 -2
  499. package/json-schema/api/LoginRequest.json +2 -2
  500. package/json-schema/api/LoginType.json +2 -2
  501. package/json-schema/api/MarkAllNotificationsReadRequest.json +2 -2
  502. package/json-schema/api/MarkAllNotificationsReadResponse.json +2 -2
  503. package/json-schema/api/MarkNotificationsReadRequest.json +2 -2
  504. package/json-schema/api/MarkNotificationsReadResponse.json +2 -2
  505. package/json-schema/api/MetadataBulkRegisterRequest.json +2 -2
  506. package/json-schema/api/MetadataBulkResponse.json +2 -2
  507. package/json-schema/api/MetadataBulkUnregisterRequest.json +2 -2
  508. package/json-schema/api/MetadataCacheRequest.json +2 -2
  509. package/json-schema/api/MetadataCacheResponse.json +2 -2
  510. package/json-schema/api/MetadataDeleteResponse.json +2 -2
  511. package/json-schema/api/MetadataDependenciesResponse.json +2 -2
  512. package/json-schema/api/MetadataDependentsResponse.json +2 -2
  513. package/json-schema/api/MetadataEffectiveResponse.json +2 -2
  514. package/json-schema/api/MetadataEndpointsConfig.json +2 -2
  515. package/json-schema/api/MetadataExistsResponse.json +2 -2
  516. package/json-schema/api/MetadataExportRequest.json +2 -2
  517. package/json-schema/api/MetadataExportResponse.json +2 -2
  518. package/json-schema/api/MetadataImportRequest.json +2 -2
  519. package/json-schema/api/MetadataImportResponse.json +2 -2
  520. package/json-schema/api/MetadataItemResponse.json +2 -2
  521. package/json-schema/api/MetadataListResponse.json +2 -2
  522. package/json-schema/api/MetadataNamesResponse.json +2 -2
  523. package/json-schema/api/MetadataOverlayResponse.json +2 -2
  524. package/json-schema/api/MetadataOverlaySaveRequest.json +2 -2
  525. package/json-schema/api/MetadataQueryRequest.json +2 -2
  526. package/json-schema/api/MetadataQueryResponse.json +2 -2
  527. package/json-schema/api/MetadataRegisterRequest.json +2 -2
  528. package/json-schema/api/MetadataTypeInfoResponse.json +2 -2
  529. package/json-schema/api/MetadataTypesResponse.json +2 -2
  530. package/json-schema/api/MetadataValidateRequest.json +2 -2
  531. package/json-schema/api/MetadataValidateResponse.json +2 -2
  532. package/json-schema/api/ModificationResult.json +2 -2
  533. package/json-schema/api/Notification.json +2 -2
  534. package/json-schema/api/NotificationPreferences.json +2 -2
  535. package/json-schema/api/ODataConfig.json +2 -2
  536. package/json-schema/api/ODataError.json +2 -2
  537. package/json-schema/api/ODataFilterFunction.json +2 -2
  538. package/json-schema/api/ODataFilterOperator.json +2 -2
  539. package/json-schema/api/ODataMetadata.json +2 -2
  540. package/json-schema/api/ODataQuery.json +2 -2
  541. package/json-schema/api/ODataQueryAdapter.json +2 -2
  542. package/json-schema/api/ODataResponse.json +2 -2
  543. package/json-schema/api/ObjectDefinitionResponse.json +2 -2
  544. package/json-schema/api/ObjectQLReference.json +2 -2
  545. package/json-schema/api/OpenApi31Extensions.json +2 -2
  546. package/json-schema/api/OpenApiGenerationConfig.json +2 -2
  547. package/json-schema/api/OpenApiSecurityScheme.json +2 -2
  548. package/json-schema/api/OpenApiServer.json +2 -2
  549. package/json-schema/api/OpenApiSpec.json +2 -2
  550. package/json-schema/api/OperatorMapping.json +2 -2
  551. package/json-schema/api/PackageApiErrorCode.json +21 -0
  552. package/json-schema/api/PackageInstallRequest.json +1877 -0
  553. package/json-schema/api/PackageInstallResponse.json +2155 -0
  554. package/json-schema/api/PackagePathParams.json +16 -0
  555. package/json-schema/api/PackageRollbackRequest.json +28 -0
  556. package/json-schema/api/PackageRollbackResponse.json +91 -0
  557. package/json-schema/api/PackageUpgradeRequest.json +1851 -0
  558. package/json-schema/api/PackageUpgradeResponse.json +269 -0
  559. package/json-schema/api/PinFeedItemRequest.json +26 -0
  560. package/json-schema/api/PinFeedItemResponse.json +94 -0
  561. package/json-schema/api/PingMessage.json +2 -2
  562. package/json-schema/api/PongMessage.json +2 -2
  563. package/json-schema/api/PresenceMessage.json +2 -2
  564. package/json-schema/api/PresenceState.json +2 -2
  565. package/json-schema/api/PresenceStatus.json +2 -2
  566. package/json-schema/api/PresenceUpdate.json +2 -2
  567. package/json-schema/api/PresignedUrlResponse.json +2 -2
  568. package/json-schema/api/QueryAdapterConfig.json +2 -2
  569. package/json-schema/api/QueryAdapterTarget.json +2 -2
  570. package/json-schema/api/QueryOptimizationConfig.json +2 -2
  571. package/json-schema/api/RealtimeConfig.json +2 -2
  572. package/json-schema/api/RealtimeConnectRequest.json +2 -2
  573. package/json-schema/api/RealtimeConnectResponse.json +2 -2
  574. package/json-schema/api/RealtimeDisconnectRequest.json +2 -2
  575. package/json-schema/api/RealtimeDisconnectResponse.json +2 -2
  576. package/json-schema/api/RealtimeEvent.json +2 -2
  577. package/json-schema/api/RealtimeEventType.json +2 -2
  578. package/json-schema/api/RealtimePresence.json +2 -2
  579. package/json-schema/api/RealtimeRecordAction.json +2 -2
  580. package/json-schema/api/RealtimeSubscribeRequest.json +2 -2
  581. package/json-schema/api/RealtimeSubscribeResponse.json +2 -2
  582. package/json-schema/api/RealtimeUnsubscribeRequest.json +2 -2
  583. package/json-schema/api/RealtimeUnsubscribeResponse.json +2 -2
  584. package/json-schema/api/RecordData.json +2 -2
  585. package/json-schema/api/RefreshTokenRequest.json +2 -2
  586. package/json-schema/api/RegisterDeviceRequest.json +2 -2
  587. package/json-schema/api/RegisterDeviceResponse.json +2 -2
  588. package/json-schema/api/RegisterRequest.json +2 -2
  589. package/json-schema/api/RemoveReactionRequest.json +2 -2
  590. package/json-schema/api/RemoveReactionResponse.json +2 -2
  591. package/json-schema/api/RequestValidationConfig.json +2 -2
  592. package/json-schema/api/ResolveDependenciesRequest.json +1818 -0
  593. package/json-schema/api/ResolveDependenciesResponse.json +183 -0
  594. package/json-schema/api/ResponseEnvelopeConfig.json +2 -2
  595. package/json-schema/api/RestApiConfig.json +2 -2
  596. package/json-schema/api/RestApiEndpoint.json +2 -2
  597. package/json-schema/api/RestApiPluginConfig.json +2 -2
  598. package/json-schema/api/RestApiRouteCategory.json +2 -2
  599. package/json-schema/api/RestApiRouteRegistration.json +2 -2
  600. package/json-schema/api/RestQueryAdapter.json +2 -2
  601. package/json-schema/api/RestServerConfig.json +2 -2
  602. package/json-schema/api/RetryStrategy.json +2 -2
  603. package/json-schema/api/RouteCategory.json +2 -2
  604. package/json-schema/api/RouteDefinition.json +2 -2
  605. package/json-schema/api/RouteGenerationConfig.json +2 -2
  606. package/json-schema/api/RouterConfig.json +2 -2
  607. package/json-schema/api/SaveMetaItemRequest.json +2 -2
  608. package/json-schema/api/SaveMetaItemResponse.json +2 -2
  609. package/json-schema/api/ScheduleExportRequest.json +114 -0
  610. package/json-schema/api/ScheduleExportResponse.json +105 -0
  611. package/json-schema/api/ScheduledExport.json +146 -0
  612. package/json-schema/api/SchemaDefinition.json +2 -2
  613. package/json-schema/api/SearchFeedRequest.json +77 -0
  614. package/json-schema/api/SearchFeedResponse.json +372 -0
  615. package/json-schema/api/ServiceInfo.json +37 -2
  616. package/json-schema/api/Session.json +2 -2
  617. package/json-schema/api/SessionResponse.json +2 -2
  618. package/json-schema/api/SessionUser.json +2 -2
  619. package/json-schema/api/SetPresenceRequest.json +2 -2
  620. package/json-schema/api/SetPresenceResponse.json +2 -2
  621. package/json-schema/api/SimpleCursorPosition.json +2 -2
  622. package/json-schema/api/SimplePresenceState.json +2 -2
  623. package/json-schema/api/SingleRecordResponse.json +2 -2
  624. package/json-schema/api/StandardErrorCode.json +2 -2
  625. package/json-schema/api/StarFeedItemRequest.json +26 -0
  626. package/json-schema/api/StarFeedItemResponse.json +94 -0
  627. package/json-schema/api/SubgraphConfig.json +2 -2
  628. package/json-schema/api/SubscribeMessage.json +2 -2
  629. package/json-schema/api/SubscribeRequest.json +2 -2
  630. package/json-schema/api/SubscribeResponse.json +2 -2
  631. package/json-schema/api/Subscription.json +2 -2
  632. package/json-schema/api/SubscriptionEvent.json +2 -2
  633. package/json-schema/api/ToggleFlowRequest.json +21 -0
  634. package/json-schema/api/ToggleFlowResponse.json +87 -0
  635. package/json-schema/api/TransportProtocol.json +2 -2
  636. package/json-schema/api/TriggerFlowRequest.json +44 -0
  637. package/json-schema/api/TriggerFlowResponse.json +93 -0
  638. package/json-schema/api/UninstallPackageApiRequest.json +16 -0
  639. package/json-schema/api/UninstallPackageApiResponse.json +92 -0
  640. package/json-schema/api/UninstallPackageRequest.json +5 -3
  641. package/json-schema/api/UninstallPackageResponse.json +8 -4
  642. package/json-schema/api/UnpinFeedItemRequest.json +26 -0
  643. package/json-schema/api/UnpinFeedItemResponse.json +87 -0
  644. package/json-schema/api/UnregisterDeviceRequest.json +2 -2
  645. package/json-schema/api/UnregisterDeviceResponse.json +2 -2
  646. package/json-schema/api/UnstarFeedItemRequest.json +26 -0
  647. package/json-schema/api/UnstarFeedItemResponse.json +87 -0
  648. package/json-schema/api/UnsubscribeMessage.json +2 -2
  649. package/json-schema/api/UnsubscribeRequest.json +2 -2
  650. package/json-schema/api/UnsubscribeResponse.json +2 -2
  651. package/json-schema/api/UpdateDataRequest.json +2 -2
  652. package/json-schema/api/UpdateDataResponse.json +2 -2
  653. package/json-schema/api/UpdateFeedItemRequest.json +2 -2
  654. package/json-schema/api/UpdateFeedItemResponse.json +30 -2
  655. package/json-schema/api/UpdateFlowRequest.json +489 -0
  656. package/json-schema/api/UpdateFlowResponse.json +553 -0
  657. package/json-schema/api/UpdateManyDataRequest.json +2 -2
  658. package/json-schema/api/UpdateManyDataResponse.json +2 -2
  659. package/json-schema/api/UpdateManyRequest.json +2 -2
  660. package/json-schema/api/UpdateNotificationPreferencesRequest.json +2 -2
  661. package/json-schema/api/UpdateNotificationPreferencesResponse.json +2 -2
  662. package/json-schema/api/UpdateRequest.json +2 -2
  663. package/json-schema/api/UploadArtifactRequest.json +223 -0
  664. package/json-schema/api/UploadArtifactResponse.json +136 -0
  665. package/json-schema/api/UploadChunkRequest.json +28 -0
  666. package/json-schema/api/UploadChunkResponse.json +96 -0
  667. package/json-schema/api/UploadProgress.json +153 -0
  668. package/json-schema/api/UserProfileResponse.json +2 -2
  669. package/json-schema/api/ValidationMode.json +2 -2
  670. package/json-schema/api/VersionDefinition.json +2 -2
  671. package/json-schema/api/VersionNegotiationResponse.json +2 -2
  672. package/json-schema/api/VersionStatus.json +2 -2
  673. package/json-schema/api/VersioningConfig.json +2 -2
  674. package/json-schema/api/VersioningStrategy.json +2 -2
  675. package/json-schema/api/WebSocketConfig.json +2 -2
  676. package/json-schema/api/WebSocketEvent.json +2 -2
  677. package/json-schema/api/WebSocketMessage.json +2 -2
  678. package/json-schema/api/WebSocketMessageType.json +2 -2
  679. package/json-schema/api/WebSocketPresenceStatus.json +2 -2
  680. package/json-schema/api/WebSocketServerConfig.json +2 -2
  681. package/json-schema/api/WebhookConfig.json +2 -2
  682. package/json-schema/api/WebhookEvent.json +2 -2
  683. package/json-schema/api/WellKnownCapabilities.json +47 -0
  684. package/json-schema/api/WorkflowApproveRequest.json +2 -2
  685. package/json-schema/api/WorkflowApproveResponse.json +2 -2
  686. package/json-schema/api/WorkflowRejectRequest.json +2 -2
  687. package/json-schema/api/WorkflowRejectResponse.json +2 -2
  688. package/json-schema/api/WorkflowState.json +2 -2
  689. package/json-schema/api/WorkflowTransitionRequest.json +2 -2
  690. package/json-schema/api/WorkflowTransitionResponse.json +2 -2
  691. package/json-schema/automation/ActionRef.json +2 -2
  692. package/json-schema/automation/ApprovalAction.json +2 -2
  693. package/json-schema/automation/ApprovalActionType.json +2 -2
  694. package/json-schema/automation/ApprovalProcess.json +2 -2
  695. package/json-schema/automation/ApprovalStep.json +2 -2
  696. package/json-schema/automation/ApproverType.json +2 -2
  697. package/json-schema/automation/AuthField.json +2 -2
  698. package/json-schema/automation/Authentication.json +2 -2
  699. package/json-schema/automation/AuthenticationType.json +2 -2
  700. package/json-schema/automation/BpmnDiagnostic.json +35 -0
  701. package/json-schema/automation/BpmnElementMapping.json +32 -0
  702. package/json-schema/automation/BpmnExportOptions.json +79 -0
  703. package/json-schema/automation/BpmnImportOptions.json +79 -0
  704. package/json-schema/automation/BpmnInteropResult.json +71 -0
  705. package/json-schema/automation/BpmnUnmappedStrategy.json +13 -0
  706. package/json-schema/automation/BpmnVersion.json +11 -0
  707. package/json-schema/automation/Checkpoint.json +75 -0
  708. package/json-schema/automation/ConcurrencyPolicy.json +47 -0
  709. package/json-schema/automation/ConflictResolution.json +2 -2
  710. package/json-schema/automation/Connector.json +2 -2
  711. package/json-schema/automation/ConnectorActionRef.json +2 -2
  712. package/json-schema/automation/ConnectorCategory.json +2 -2
  713. package/json-schema/automation/ConnectorInstance.json +2 -2
  714. package/json-schema/automation/ConnectorOperation.json +2 -2
  715. package/json-schema/automation/ConnectorTrigger.json +2 -2
  716. package/json-schema/automation/CustomScriptAction.json +2 -2
  717. package/json-schema/automation/DataDestinationConfig.json +2 -2
  718. package/json-schema/automation/DataSourceConfig.json +2 -2
  719. package/json-schema/automation/DataSyncConfig.json +2 -2
  720. package/json-schema/automation/ETLDestination.json +2 -2
  721. package/json-schema/automation/ETLEndpointType.json +2 -2
  722. package/json-schema/automation/ETLPipeline.json +2 -2
  723. package/json-schema/automation/ETLPipelineRun.json +2 -2
  724. package/json-schema/automation/ETLRunStatus.json +2 -2
  725. package/json-schema/automation/ETLSource.json +2 -2
  726. package/json-schema/automation/ETLSyncMode.json +2 -2
  727. package/json-schema/automation/ETLTransformation.json +2 -2
  728. package/json-schema/automation/ETLTransformationType.json +2 -2
  729. package/json-schema/automation/EmailAlertAction.json +2 -2
  730. package/json-schema/automation/Event.json +2 -2
  731. package/json-schema/automation/ExecutionError.json +76 -0
  732. package/json-schema/automation/ExecutionErrorSeverity.json +11 -0
  733. package/json-schema/automation/ExecutionLog.json +217 -0
  734. package/json-schema/automation/ExecutionStatus.json +16 -0
  735. package/json-schema/automation/ExecutionStepLog.json +99 -0
  736. package/json-schema/automation/FieldUpdateAction.json +2 -2
  737. package/json-schema/automation/Flow.json +200 -7
  738. package/json-schema/automation/FlowEdge.json +12 -5
  739. package/json-schema/automation/FlowNode.json +168 -3
  740. package/json-schema/automation/FlowNodeAction.json +6 -3
  741. package/json-schema/automation/FlowVariable.json +2 -2
  742. package/json-schema/automation/FlowVersionHistory.json +523 -0
  743. package/json-schema/automation/GuardRef.json +2 -2
  744. package/json-schema/automation/HttpCallAction.json +2 -2
  745. package/json-schema/automation/NodeExecutorDescriptor.json +62 -0
  746. package/json-schema/automation/OAuth2Config.json +2 -2
  747. package/json-schema/automation/OperationParameter.json +2 -2
  748. package/json-schema/automation/OperationType.json +2 -2
  749. package/json-schema/automation/PushNotificationAction.json +2 -2
  750. package/json-schema/automation/ScheduleState.json +125 -0
  751. package/json-schema/automation/StateMachine.json +2 -2
  752. package/json-schema/automation/StateNode.json +2 -2
  753. package/json-schema/automation/SyncDirection.json +2 -2
  754. package/json-schema/automation/SyncExecutionResult.json +2 -2
  755. package/json-schema/automation/SyncExecutionStatus.json +2 -2
  756. package/json-schema/automation/SyncMode.json +2 -2
  757. package/json-schema/automation/TaskCreationAction.json +2 -2
  758. package/json-schema/automation/TimeTrigger.json +2 -2
  759. package/json-schema/automation/Transition.json +2 -2
  760. package/json-schema/automation/WaitEventType.json +14 -0
  761. package/json-schema/automation/WaitExecutorConfig.json +67 -0
  762. package/json-schema/automation/WaitResumePayload.json +70 -0
  763. package/json-schema/automation/WaitTimeoutBehavior.json +12 -0
  764. package/json-schema/automation/Webhook.json +2 -2
  765. package/json-schema/automation/WebhookReceiver.json +2 -2
  766. package/json-schema/automation/WebhookTriggerType.json +2 -2
  767. package/json-schema/automation/WorkflowAction.json +2 -2
  768. package/json-schema/automation/WorkflowRule.json +2 -2
  769. package/json-schema/automation/WorkflowTriggerType.json +2 -2
  770. package/json-schema/cloud/AnalyticsTimeRange.json +2 -2
  771. package/json-schema/cloud/AppDiscoveryRequest.json +4 -3
  772. package/json-schema/cloud/AppDiscoveryResponse.json +22 -12
  773. package/json-schema/cloud/AppSubscription.json +2 -2
  774. package/json-schema/cloud/ArtifactDownloadResponse.json +46 -0
  775. package/json-schema/cloud/ArtifactReference.json +48 -0
  776. package/json-schema/cloud/CreateListingRequest.json +2 -2
  777. package/json-schema/cloud/CuratedCollection.json +2 -2
  778. package/json-schema/cloud/FeaturedListing.json +2 -2
  779. package/json-schema/cloud/InstalledAppSummary.json +2 -2
  780. package/json-schema/cloud/ListInstalledAppsRequest.json +2 -2
  781. package/json-schema/cloud/ListInstalledAppsResponse.json +2 -2
  782. package/json-schema/cloud/ListReviewsRequest.json +2 -2
  783. package/json-schema/cloud/ListReviewsResponse.json +2 -2
  784. package/json-schema/cloud/ListingActionRequest.json +2 -2
  785. package/json-schema/cloud/ListingStatus.json +3 -2
  786. package/json-schema/cloud/MarketplaceCategory.json +3 -2
  787. package/json-schema/cloud/MarketplaceHealthMetrics.json +2 -2
  788. package/json-schema/cloud/MarketplaceInstallRequest.json +51 -2
  789. package/json-schema/cloud/MarketplaceInstallResponse.json +8 -3
  790. package/json-schema/cloud/MarketplaceListing.json +69 -5
  791. package/json-schema/cloud/MarketplaceSearchRequest.json +11 -2
  792. package/json-schema/cloud/MarketplaceSearchResponse.json +84 -12
  793. package/json-schema/cloud/PackageSubmission.json +9 -2
  794. package/json-schema/cloud/PolicyAction.json +2 -2
  795. package/json-schema/cloud/PolicyViolationType.json +2 -2
  796. package/json-schema/cloud/PricingModel.json +3 -2
  797. package/json-schema/cloud/Publisher.json +5 -2
  798. package/json-schema/cloud/PublisherProfile.json +4 -3
  799. package/json-schema/cloud/PublisherVerification.json +3 -2
  800. package/json-schema/cloud/PublishingAnalyticsRequest.json +2 -2
  801. package/json-schema/cloud/PublishingAnalyticsResponse.json +2 -2
  802. package/json-schema/cloud/RecommendationReason.json +2 -2
  803. package/json-schema/cloud/RecommendedApp.json +6 -4
  804. package/json-schema/cloud/RejectionReason.json +2 -2
  805. package/json-schema/cloud/ReleaseChannel.json +2 -2
  806. package/json-schema/cloud/ReviewCriterion.json +2 -2
  807. package/json-schema/cloud/ReviewDecision.json +2 -2
  808. package/json-schema/cloud/ReviewModerationStatus.json +2 -2
  809. package/json-schema/cloud/SubmissionReview.json +2 -2
  810. package/json-schema/cloud/SubmitReviewRequest.json +2 -2
  811. package/json-schema/cloud/SubscriptionStatus.json +2 -2
  812. package/json-schema/cloud/TimeSeriesPoint.json +2 -2
  813. package/json-schema/cloud/TrendingListing.json +2 -2
  814. package/json-schema/cloud/UpdateListingRequest.json +2 -2
  815. package/json-schema/cloud/UserReview.json +2 -2
  816. package/json-schema/cloud/VersionRelease.json +2 -2
  817. package/json-schema/data/Address.json +2 -2
  818. package/json-schema/data/AggregationFunction.json +2 -2
  819. package/json-schema/data/AggregationMetricType.json +2 -2
  820. package/json-schema/data/AggregationNode.json +2 -2
  821. package/json-schema/data/AggregationPipeline.json +2 -2
  822. package/json-schema/data/AggregationStage.json +2 -2
  823. package/json-schema/data/AnalyticsQuery.json +2 -2
  824. package/json-schema/data/ApiMethod.json +2 -2
  825. package/json-schema/data/AsyncValidation.json +2 -2
  826. package/json-schema/data/BaseEngineOptions.json +2 -2
  827. package/json-schema/data/CDCConfig.json +2 -2
  828. package/json-schema/data/ComputedFieldCache.json +2 -2
  829. package/json-schema/data/ConditionalValidation.json +2 -2
  830. package/json-schema/data/ConsistencyLevel.json +2 -2
  831. package/json-schema/data/CrossFieldValidation.json +2 -2
  832. package/json-schema/data/Cube.json +2 -2
  833. package/json-schema/data/CubeJoin.json +2 -2
  834. package/json-schema/data/CurrencyConfig.json +2 -2
  835. package/json-schema/data/CurrencyValue.json +2 -2
  836. package/json-schema/data/CustomValidator.json +2 -2
  837. package/json-schema/data/DataEngineAggregateOptions.json +2 -2
  838. package/json-schema/data/DataEngineAggregateRequest.json +2 -2
  839. package/json-schema/data/DataEngineBatchRequest.json +2 -2
  840. package/json-schema/data/DataEngineCountOptions.json +2 -2
  841. package/json-schema/data/DataEngineCountRequest.json +2 -2
  842. package/json-schema/data/DataEngineDeleteOptions.json +2 -2
  843. package/json-schema/data/DataEngineDeleteRequest.json +2 -2
  844. package/json-schema/data/DataEngineExecuteRequest.json +2 -2
  845. package/json-schema/data/DataEngineFilter.json +2 -2
  846. package/json-schema/data/DataEngineFindOneRequest.json +2 -2
  847. package/json-schema/data/DataEngineFindRequest.json +2 -2
  848. package/json-schema/data/DataEngineInsertOptions.json +2 -2
  849. package/json-schema/data/DataEngineInsertRequest.json +2 -2
  850. package/json-schema/data/DataEngineQueryOptions.json +2 -2
  851. package/json-schema/data/DataEngineRequest.json +2 -2
  852. package/json-schema/data/DataEngineSort.json +2 -2
  853. package/json-schema/data/DataEngineUpdateOptions.json +2 -2
  854. package/json-schema/data/DataEngineUpdateRequest.json +2 -2
  855. package/json-schema/data/DataEngineVectorFindRequest.json +2 -2
  856. package/json-schema/data/DataQualityRules.json +2 -2
  857. package/json-schema/data/DataTypeMapping.json +2 -2
  858. package/json-schema/data/Dataset.json +2 -2
  859. package/json-schema/data/DatasetMode.json +2 -2
  860. package/json-schema/data/Datasource.json +2 -2
  861. package/json-schema/data/DatasourceCapabilities.json +2 -2
  862. package/json-schema/data/Dimension.json +2 -2
  863. package/json-schema/data/DimensionType.json +2 -2
  864. package/json-schema/data/Document.json +2 -2
  865. package/json-schema/data/DocumentTemplate.json +2 -2
  866. package/json-schema/data/DocumentValidationSchema.json +2 -2
  867. package/json-schema/data/DocumentVersion.json +2 -2
  868. package/json-schema/data/DriverCapabilities.json +2 -2
  869. package/json-schema/data/DriverConfig.json +2 -2
  870. package/json-schema/data/DriverDefinition.json +2 -2
  871. package/json-schema/data/DriverOptions.json +2 -2
  872. package/json-schema/data/DriverType.json +2 -2
  873. package/json-schema/data/ESignatureConfig.json +2 -2
  874. package/json-schema/data/EqualityOperator.json +2 -2
  875. package/json-schema/data/ExternalDataSource.json +2 -2
  876. package/json-schema/data/ExternalFieldMapping.json +2 -2
  877. package/json-schema/data/ExternalLookup.json +2 -2
  878. package/json-schema/data/FeedActor.json +2 -2
  879. package/json-schema/data/FeedFilterMode.json +2 -2
  880. package/json-schema/data/FeedItem.json +30 -2
  881. package/json-schema/data/FeedItemType.json +2 -2
  882. package/json-schema/data/FeedVisibility.json +2 -2
  883. package/json-schema/data/Field.json +2 -2
  884. package/json-schema/data/FieldChangeEntry.json +2 -2
  885. package/json-schema/data/FieldMapping.json +2 -2
  886. package/json-schema/data/FieldNode.json +2 -2
  887. package/json-schema/data/FieldReference.json +2 -2
  888. package/json-schema/data/FieldType.json +2 -2
  889. package/json-schema/data/FileAttachmentConfig.json +2 -2
  890. package/json-schema/data/FilterCondition.json +2 -2
  891. package/json-schema/data/FormatValidation.json +2 -2
  892. package/json-schema/data/FullTextSearch.json +2 -2
  893. package/json-schema/data/HookContext.json +2 -2
  894. package/json-schema/data/HookEvent.json +2 -2
  895. package/json-schema/data/Index.json +2 -2
  896. package/json-schema/data/JSONValidation.json +2 -2
  897. package/json-schema/data/JoinNode.json +2 -2
  898. package/json-schema/data/JoinStrategy.json +2 -2
  899. package/json-schema/data/JoinType.json +2 -2
  900. package/json-schema/data/LocationCoordinates.json +2 -2
  901. package/json-schema/data/Mapping.json +2 -2
  902. package/json-schema/data/Mention.json +2 -2
  903. package/json-schema/data/Metric.json +2 -2
  904. package/json-schema/data/NoSQLDataTypeMapping.json +2 -2
  905. package/json-schema/data/NoSQLDatabaseType.json +2 -2
  906. package/json-schema/data/NoSQLDriverConfig.json +2 -2
  907. package/json-schema/data/NoSQLIndex.json +2 -2
  908. package/json-schema/data/NoSQLIndexType.json +2 -2
  909. package/json-schema/data/NoSQLOperationType.json +2 -2
  910. package/json-schema/data/NoSQLQueryOptions.json +2 -2
  911. package/json-schema/data/NoSQLTransactionOptions.json +2 -2
  912. package/json-schema/data/NotificationChannel.json +2 -2
  913. package/json-schema/data/Object.json +2 -2
  914. package/json-schema/data/ObjectCapabilities.json +2 -2
  915. package/json-schema/data/ObjectExtension.json +2 -2
  916. package/json-schema/data/ObjectOwnershipEnum.json +2 -2
  917. package/json-schema/data/PartitioningConfig.json +2 -2
  918. package/json-schema/data/PoolConfig.json +2 -2
  919. package/json-schema/data/Query.json +2 -2
  920. package/json-schema/data/QueryFilter.json +2 -2
  921. package/json-schema/data/Reaction.json +2 -2
  922. package/json-schema/data/RecordSubscription.json +2 -2
  923. package/json-schema/data/ReplicationConfig.json +2 -2
  924. package/json-schema/data/SQLDialect.json +2 -2
  925. package/json-schema/data/SQLDriverConfig.json +2 -2
  926. package/json-schema/data/SSLConfig.json +2 -2
  927. package/json-schema/data/ScriptValidation.json +2 -2
  928. package/json-schema/data/SearchConfig.json +2 -2
  929. package/json-schema/data/SelectOption.json +2 -2
  930. package/json-schema/data/SetOperator.json +2 -2
  931. package/json-schema/data/ShardingConfig.json +2 -2
  932. package/json-schema/data/SoftDeleteConfig.json +2 -2
  933. package/json-schema/data/SortNode.json +2 -2
  934. package/json-schema/data/SpecialOperator.json +2 -2
  935. package/json-schema/data/StateMachineValidation.json +2 -2
  936. package/json-schema/data/StringOperator.json +2 -2
  937. package/json-schema/data/SubscriptionEventType.json +2 -2
  938. package/json-schema/data/TenancyConfig.json +2 -2
  939. package/json-schema/data/TimeUpdateInterval.json +2 -2
  940. package/json-schema/data/TransformType.json +2 -2
  941. package/json-schema/data/UniquenessValidation.json +2 -2
  942. package/json-schema/data/ValidationRule.json +2 -2
  943. package/json-schema/data/VectorConfig.json +2 -2
  944. package/json-schema/data/VersioningConfig.json +2 -2
  945. package/json-schema/data/WindowFunction.json +2 -2
  946. package/json-schema/data/WindowFunctionNode.json +2 -2
  947. package/json-schema/data/WindowSpec.json +2 -2
  948. package/json-schema/identity/Account.json +2 -2
  949. package/json-schema/identity/ApiKey.json +2 -2
  950. package/json-schema/identity/Invitation.json +2 -2
  951. package/json-schema/identity/InvitationStatus.json +2 -2
  952. package/json-schema/identity/Member.json +2 -2
  953. package/json-schema/identity/Organization.json +2 -2
  954. package/json-schema/identity/Role.json +2 -2
  955. package/json-schema/identity/SCIMAddress.json +2 -2
  956. package/json-schema/identity/SCIMBulkOperation.json +2 -2
  957. package/json-schema/identity/SCIMBulkRequest.json +2 -2
  958. package/json-schema/identity/SCIMBulkResponse.json +2 -2
  959. package/json-schema/identity/SCIMBulkResponseOperation.json +2 -2
  960. package/json-schema/identity/SCIMEmail.json +2 -2
  961. package/json-schema/identity/SCIMEnterpriseUser.json +2 -2
  962. package/json-schema/identity/SCIMError.json +2 -2
  963. package/json-schema/identity/SCIMGroup.json +2 -2
  964. package/json-schema/identity/SCIMGroupReference.json +2 -2
  965. package/json-schema/identity/SCIMListResponse.json +2 -2
  966. package/json-schema/identity/SCIMMemberReference.json +2 -2
  967. package/json-schema/identity/SCIMMeta.json +2 -2
  968. package/json-schema/identity/SCIMName.json +2 -2
  969. package/json-schema/identity/SCIMPatchOperation.json +2 -2
  970. package/json-schema/identity/SCIMPatchRequest.json +2 -2
  971. package/json-schema/identity/SCIMPhoneNumber.json +2 -2
  972. package/json-schema/identity/SCIMUser.json +2 -2
  973. package/json-schema/identity/Session.json +2 -2
  974. package/json-schema/identity/User.json +2 -2
  975. package/json-schema/identity/VerificationToken.json +2 -2
  976. package/json-schema/integration/AckMode.json +2 -2
  977. package/json-schema/integration/ApiVersionConfig.json +2 -2
  978. package/json-schema/integration/BuildConfig.json +2 -2
  979. package/json-schema/integration/CdcConfig.json +2 -2
  980. package/json-schema/integration/CircuitBreakerConfig.json +2 -2
  981. package/json-schema/integration/ConflictResolution.json +2 -2
  982. package/json-schema/integration/Connector.json +2 -2
  983. package/json-schema/integration/ConnectorAction.json +2 -2
  984. package/json-schema/integration/ConnectorHealth.json +2 -2
  985. package/json-schema/integration/ConnectorStatus.json +2 -2
  986. package/json-schema/integration/ConnectorTrigger.json +2 -2
  987. package/json-schema/integration/ConnectorType.json +2 -2
  988. package/json-schema/integration/ConsumerConfig.json +2 -2
  989. package/json-schema/integration/DataSyncConfig.json +2 -2
  990. package/json-schema/integration/DatabaseConnector.json +2 -2
  991. package/json-schema/integration/DatabasePoolConfig.json +2 -2
  992. package/json-schema/integration/DatabaseProvider.json +2 -2
  993. package/json-schema/integration/DatabaseTable.json +2 -2
  994. package/json-schema/integration/DeliveryGuarantee.json +2 -2
  995. package/json-schema/integration/DeploymentConfig.json +2 -2
  996. package/json-schema/integration/DlqConfig.json +2 -2
  997. package/json-schema/integration/DomainConfig.json +2 -2
  998. package/json-schema/integration/EdgeFunctionConfig.json +2 -2
  999. package/json-schema/integration/EnvironmentVariables.json +2 -2
  1000. package/json-schema/integration/ErrorCategory.json +2 -2
  1001. package/json-schema/integration/ErrorMappingConfig.json +2 -2
  1002. package/json-schema/integration/ErrorMappingRule.json +2 -2
  1003. package/json-schema/integration/FieldMapping.json +2 -2
  1004. package/json-schema/integration/FileAccessPattern.json +2 -2
  1005. package/json-schema/integration/FileFilterConfig.json +2 -2
  1006. package/json-schema/integration/FileMetadataConfig.json +2 -2
  1007. package/json-schema/integration/FileStorageConnector.json +2 -2
  1008. package/json-schema/integration/FileStorageProvider.json +2 -2
  1009. package/json-schema/integration/FileVersioningConfig.json +2 -2
  1010. package/json-schema/integration/GitHubActionsWorkflow.json +2 -2
  1011. package/json-schema/integration/GitHubCommitConfig.json +2 -2
  1012. package/json-schema/integration/GitHubConnector.json +2 -2
  1013. package/json-schema/integration/GitHubIssueTracking.json +2 -2
  1014. package/json-schema/integration/GitHubProvider.json +2 -2
  1015. package/json-schema/integration/GitHubPullRequestConfig.json +2 -2
  1016. package/json-schema/integration/GitHubReleaseConfig.json +2 -2
  1017. package/json-schema/integration/GitHubRepository.json +2 -2
  1018. package/json-schema/integration/GitRepositoryConfig.json +2 -2
  1019. package/json-schema/integration/HealthCheckConfig.json +2 -2
  1020. package/json-schema/integration/MessageFormat.json +2 -2
  1021. package/json-schema/integration/MessageQueueConnector.json +2 -2
  1022. package/json-schema/integration/MessageQueueProvider.json +2 -2
  1023. package/json-schema/integration/MultipartUploadConfig.json +2 -2
  1024. package/json-schema/integration/ProducerConfig.json +2 -2
  1025. package/json-schema/integration/RateLimitConfig.json +2 -2
  1026. package/json-schema/integration/RateLimitStrategy.json +2 -2
  1027. package/json-schema/integration/RetryConfig.json +2 -2
  1028. package/json-schema/integration/RetryStrategy.json +2 -2
  1029. package/json-schema/integration/SaasConnector.json +2 -2
  1030. package/json-schema/integration/SaasObjectType.json +2 -2
  1031. package/json-schema/integration/SaasProvider.json +2 -2
  1032. package/json-schema/integration/SslConfig.json +2 -2
  1033. package/json-schema/integration/StorageBucket.json +2 -2
  1034. package/json-schema/integration/SyncStrategy.json +2 -2
  1035. package/json-schema/integration/TopicQueue.json +2 -2
  1036. package/json-schema/integration/VercelConnector.json +2 -2
  1037. package/json-schema/integration/VercelFramework.json +2 -2
  1038. package/json-schema/integration/VercelMonitoring.json +2 -2
  1039. package/json-schema/integration/VercelProject.json +2 -2
  1040. package/json-schema/integration/VercelProvider.json +2 -2
  1041. package/json-schema/integration/VercelTeam.json +2 -2
  1042. package/json-schema/integration/WebhookConfig.json +2 -2
  1043. package/json-schema/integration/WebhookEvent.json +2 -2
  1044. package/json-schema/integration/WebhookSignatureAlgorithm.json +2 -2
  1045. package/json-schema/kernel/ActivationEvent.json +2 -2
  1046. package/json-schema/kernel/AdvancedPluginLifecycleConfig.json +2 -2
  1047. package/json-schema/kernel/ArtifactChecksum.json +35 -0
  1048. package/json-schema/kernel/ArtifactFileEntry.json +45 -0
  1049. package/json-schema/kernel/ArtifactSignature.json +44 -0
  1050. package/json-schema/kernel/BreakingChange.json +2 -2
  1051. package/json-schema/kernel/CLICommandContribution.json +2 -2
  1052. package/json-schema/kernel/CapabilityConformanceLevel.json +2 -2
  1053. package/json-schema/kernel/CompatibilityLevel.json +2 -2
  1054. package/json-schema/kernel/CompatibilityMatrixEntry.json +2 -2
  1055. package/json-schema/kernel/CustomizationOrigin.json +2 -2
  1056. package/json-schema/kernel/CustomizationPolicy.json +2 -2
  1057. package/json-schema/kernel/DeadLetterQueueEntry.json +2 -2
  1058. package/json-schema/kernel/DependencyConflict.json +2 -2
  1059. package/json-schema/kernel/DependencyGraph.json +2 -2
  1060. package/json-schema/kernel/DependencyGraphNode.json +2 -2
  1061. package/json-schema/kernel/DependencyResolutionResult.json +64 -112
  1062. package/json-schema/kernel/DependencyStatusEnum.json +13 -0
  1063. package/json-schema/kernel/DeprecationNotice.json +2 -2
  1064. package/json-schema/kernel/DevFixtureConfig.json +2 -2
  1065. package/json-schema/kernel/DevPluginConfig.json +2 -2
  1066. package/json-schema/kernel/DevPluginPreset.json +2 -2
  1067. package/json-schema/kernel/DevServiceOverride.json +2 -2
  1068. package/json-schema/kernel/DevToolsConfig.json +2 -2
  1069. package/json-schema/kernel/DisablePackageRequest.json +5 -3
  1070. package/json-schema/kernel/DisablePackageResponse.json +83 -4
  1071. package/json-schema/kernel/DistributedStateConfig.json +2 -2
  1072. package/json-schema/kernel/DynamicLoadRequest.json +2 -2
  1073. package/json-schema/kernel/DynamicLoadingConfig.json +2 -2
  1074. package/json-schema/kernel/DynamicPluginOperation.json +2 -2
  1075. package/json-schema/kernel/DynamicPluginResult.json +2 -2
  1076. package/json-schema/kernel/DynamicUnloadRequest.json +2 -2
  1077. package/json-schema/kernel/EnablePackageRequest.json +5 -3
  1078. package/json-schema/kernel/EnablePackageResponse.json +83 -4
  1079. package/json-schema/kernel/Event.json +2 -2
  1080. package/json-schema/kernel/EventBusConfig.json +2 -2
  1081. package/json-schema/kernel/EventHandler.json +2 -2
  1082. package/json-schema/kernel/EventLogEntry.json +2 -2
  1083. package/json-schema/kernel/EventMessageQueueConfig.json +2 -2
  1084. package/json-schema/kernel/EventMetadata.json +2 -2
  1085. package/json-schema/kernel/EventPersistence.json +2 -2
  1086. package/json-schema/kernel/EventPhase.json +2 -2
  1087. package/json-schema/kernel/EventPriority.json +2 -2
  1088. package/json-schema/kernel/EventQueueConfig.json +2 -2
  1089. package/json-schema/kernel/EventReplayConfig.json +2 -2
  1090. package/json-schema/kernel/EventRoute.json +2 -2
  1091. package/json-schema/kernel/EventSourcingConfig.json +2 -2
  1092. package/json-schema/kernel/EventTypeDefinition.json +2 -2
  1093. package/json-schema/kernel/EventWebhookConfig.json +2 -2
  1094. package/json-schema/kernel/ExecutionContext.json +2 -2
  1095. package/json-schema/kernel/ExtensionPoint.json +2 -2
  1096. package/json-schema/kernel/FeatureFlag.json +2 -2
  1097. package/json-schema/kernel/FeatureStrategy.json +2 -2
  1098. package/json-schema/kernel/FieldChange.json +2 -2
  1099. package/json-schema/kernel/GetPackageRequest.json +5 -3
  1100. package/json-schema/kernel/GetPackageResponse.json +82 -4
  1101. package/json-schema/kernel/GracefulDegradation.json +2 -2
  1102. package/json-schema/kernel/HealthStatus.json +2 -2
  1103. package/json-schema/kernel/HookRegisteredEvent.json +2 -2
  1104. package/json-schema/kernel/HookTriggeredEvent.json +2 -2
  1105. package/json-schema/kernel/HotReloadConfig.json +2 -2
  1106. package/json-schema/kernel/InstallPackageRequest.json +26 -3
  1107. package/json-schema/kernel/InstallPackageResponse.json +196 -4
  1108. package/json-schema/kernel/InstalledPackage.json +80 -3
  1109. package/json-schema/kernel/KernelContext.json +2 -2
  1110. package/json-schema/kernel/KernelEventBase.json +2 -2
  1111. package/json-schema/kernel/KernelReadyEvent.json +2 -2
  1112. package/json-schema/kernel/KernelSecurityPolicy.json +2 -2
  1113. package/json-schema/kernel/KernelSecurityScanResult.json +2 -2
  1114. package/json-schema/kernel/KernelSecurityVulnerability.json +2 -2
  1115. package/json-schema/kernel/KernelShutdownEvent.json +2 -2
  1116. package/json-schema/kernel/ListPackagesRequest.json +7 -4
  1117. package/json-schema/kernel/ListPackagesResponse.json +86 -6
  1118. package/json-schema/kernel/Manifest.json +17 -2
  1119. package/json-schema/kernel/MergeConflict.json +2 -2
  1120. package/json-schema/kernel/MergeResult.json +2 -2
  1121. package/json-schema/kernel/MergeStrategyConfig.json +2 -2
  1122. package/json-schema/kernel/MetadataBulkRegisterRequest.json +2 -2
  1123. package/json-schema/kernel/MetadataBulkResult.json +2 -2
  1124. package/json-schema/kernel/MetadataCategoryEnum.json +24 -0
  1125. package/json-schema/kernel/MetadataChangeType.json +3 -2
  1126. package/json-schema/kernel/MetadataCollectionInfo.json +2 -2
  1127. package/json-schema/kernel/MetadataDependency.json +2 -2
  1128. package/json-schema/kernel/MetadataDiffItem.json +5 -3
  1129. package/json-schema/kernel/MetadataEvent.json +2 -2
  1130. package/json-schema/kernel/MetadataExportOptions.json +2 -2
  1131. package/json-schema/kernel/MetadataFallbackStrategy.json +2 -2
  1132. package/json-schema/kernel/MetadataFormat.json +2 -2
  1133. package/json-schema/kernel/MetadataImportOptions.json +2 -2
  1134. package/json-schema/kernel/MetadataLoadOptions.json +2 -2
  1135. package/json-schema/kernel/MetadataLoadResult.json +2 -2
  1136. package/json-schema/kernel/MetadataLoaderContract.json +2 -2
  1137. package/json-schema/kernel/MetadataManagerConfig.json +2 -2
  1138. package/json-schema/kernel/MetadataOverlay.json +2 -2
  1139. package/json-schema/kernel/MetadataPluginConfig.json +2 -2
  1140. package/json-schema/kernel/MetadataPluginManifest.json +2 -2
  1141. package/json-schema/kernel/MetadataQuery.json +2 -2
  1142. package/json-schema/kernel/MetadataQueryResult.json +2 -2
  1143. package/json-schema/kernel/MetadataSaveOptions.json +2 -2
  1144. package/json-schema/kernel/MetadataSaveResult.json +2 -2
  1145. package/json-schema/kernel/MetadataStats.json +2 -2
  1146. package/json-schema/kernel/MetadataType.json +2 -2
  1147. package/json-schema/kernel/MetadataTypeRegistryEntry.json +2 -2
  1148. package/json-schema/kernel/MetadataValidationResult.json +2 -2
  1149. package/json-schema/kernel/MetadataWatchEvent.json +2 -2
  1150. package/json-schema/kernel/MultiVersionSupport.json +2 -2
  1151. package/json-schema/kernel/NamespaceConflictError.json +37 -0
  1152. package/json-schema/kernel/NamespaceRegistryEntry.json +39 -0
  1153. package/json-schema/kernel/OclifPluginConfig.json +2 -2
  1154. package/json-schema/kernel/OpsDomainModule.json +2 -2
  1155. package/json-schema/kernel/OpsFilePath.json +2 -2
  1156. package/json-schema/kernel/OpsPluginStructure.json +2 -2
  1157. package/json-schema/kernel/PackageArtifact.json +200 -0
  1158. package/json-schema/kernel/PackageDependency.json +2 -2
  1159. package/json-schema/kernel/PackageDependencyConflict.json +2 -2
  1160. package/json-schema/kernel/PackageDependencyResolutionResult.json +2 -2
  1161. package/json-schema/kernel/PackageStatusEnum.json +3 -2
  1162. package/json-schema/kernel/Permission.json +2 -2
  1163. package/json-schema/kernel/PermissionAction.json +2 -2
  1164. package/json-schema/kernel/PermissionScope.json +2 -2
  1165. package/json-schema/kernel/PermissionSet.json +2 -2
  1166. package/json-schema/kernel/PluginBuildOptions.json +73 -0
  1167. package/json-schema/kernel/PluginBuildResult.json +245 -0
  1168. package/json-schema/kernel/PluginCaching.json +2 -2
  1169. package/json-schema/kernel/PluginCapability.json +2 -2
  1170. package/json-schema/kernel/PluginCapabilityManifest.json +2 -2
  1171. package/json-schema/kernel/PluginCodeSplitting.json +2 -2
  1172. package/json-schema/kernel/PluginCompatibilityMatrix.json +2 -2
  1173. package/json-schema/kernel/PluginDependency.json +2 -2
  1174. package/json-schema/kernel/PluginDependencyResolution.json +2 -2
  1175. package/json-schema/kernel/PluginDependencyResolutionResult.json +164 -0
  1176. package/json-schema/kernel/PluginDiscoveryConfig.json +2 -2
  1177. package/json-schema/kernel/PluginDiscoverySource.json +2 -2
  1178. package/json-schema/kernel/PluginDynamicImport.json +2 -2
  1179. package/json-schema/kernel/PluginErrorEvent.json +2 -2
  1180. package/json-schema/kernel/PluginEventBase.json +2 -2
  1181. package/json-schema/kernel/PluginHealthCheck.json +2 -2
  1182. package/json-schema/kernel/PluginHealthReport.json +2 -2
  1183. package/json-schema/kernel/PluginHealthStatus.json +2 -2
  1184. package/json-schema/kernel/PluginHotReload.json +2 -2
  1185. package/json-schema/kernel/PluginInitialization.json +2 -2
  1186. package/json-schema/kernel/PluginInstallConfig.json +2 -2
  1187. package/json-schema/kernel/PluginInterface.json +2 -2
  1188. package/json-schema/kernel/PluginLifecycleEventType.json +2 -2
  1189. package/json-schema/kernel/PluginLifecyclePhaseEvent.json +2 -2
  1190. package/json-schema/kernel/PluginLoadingConfig.json +2 -2
  1191. package/json-schema/kernel/PluginLoadingEvent.json +2 -2
  1192. package/json-schema/kernel/PluginLoadingState.json +2 -2
  1193. package/json-schema/kernel/PluginLoadingStrategy.json +2 -2
  1194. package/json-schema/kernel/PluginMetadata.json +2 -2
  1195. package/json-schema/kernel/PluginPerformanceMonitoring.json +2 -2
  1196. package/json-schema/kernel/PluginPreloadConfig.json +2 -2
  1197. package/json-schema/kernel/PluginProvenance.json +2 -2
  1198. package/json-schema/kernel/PluginPublishOptions.json +59 -0
  1199. package/json-schema/kernel/PluginPublishResult.json +46 -0
  1200. package/json-schema/kernel/PluginQualityMetrics.json +2 -2
  1201. package/json-schema/kernel/PluginRegisteredEvent.json +2 -2
  1202. package/json-schema/kernel/PluginRegistryEntry.json +2 -2
  1203. package/json-schema/kernel/PluginSandboxing.json +2 -2
  1204. package/json-schema/kernel/PluginSearchFilters.json +2 -2
  1205. package/json-schema/kernel/PluginSecurityManifest.json +2 -2
  1206. package/json-schema/kernel/PluginSource.json +2 -2
  1207. package/json-schema/kernel/PluginStartupResult.json +2 -2
  1208. package/json-schema/kernel/PluginStateSnapshot.json +2 -2
  1209. package/json-schema/kernel/PluginStatistics.json +2 -2
  1210. package/json-schema/kernel/PluginTrustLevel.json +2 -2
  1211. package/json-schema/kernel/PluginTrustScore.json +2 -2
  1212. package/json-schema/kernel/PluginUpdateStrategy.json +2 -2
  1213. package/json-schema/kernel/PluginValidateOptions.json +43 -0
  1214. package/json-schema/kernel/PluginValidateResult.json +416 -0
  1215. package/json-schema/kernel/PluginVendor.json +2 -2
  1216. package/json-schema/kernel/PluginVersionMetadata.json +2 -2
  1217. package/json-schema/kernel/PreviewModeConfig.json +2 -2
  1218. package/json-schema/kernel/ProtocolFeature.json +2 -2
  1219. package/json-schema/kernel/ProtocolReference.json +2 -2
  1220. package/json-schema/kernel/ProtocolVersion.json +2 -2
  1221. package/json-schema/kernel/RealTimeNotificationConfig.json +2 -2
  1222. package/json-schema/kernel/RequiredAction.json +32 -0
  1223. package/json-schema/kernel/ResolvedDependency.json +45 -0
  1224. package/json-schema/kernel/ResourceType.json +2 -2
  1225. package/json-schema/kernel/RollbackPackageRequest.json +3 -2
  1226. package/json-schema/kernel/RollbackPackageResponse.json +6 -3
  1227. package/json-schema/kernel/RuntimeConfig.json +2 -2
  1228. package/json-schema/kernel/RuntimeMode.json +2 -2
  1229. package/json-schema/kernel/SBOM.json +2 -2
  1230. package/json-schema/kernel/SBOMEntry.json +2 -2
  1231. package/json-schema/kernel/SandboxConfig.json +2 -2
  1232. package/json-schema/kernel/ScopeConfig.json +2 -2
  1233. package/json-schema/kernel/ScopeInfo.json +2 -2
  1234. package/json-schema/kernel/SecurityPolicy.json +2 -2
  1235. package/json-schema/kernel/SecurityScanResult.json +2 -2
  1236. package/json-schema/kernel/SecurityVulnerability.json +2 -2
  1237. package/json-schema/kernel/SemanticVersion.json +2 -2
  1238. package/json-schema/kernel/ServiceFactoryRegistration.json +2 -2
  1239. package/json-schema/kernel/ServiceMetadata.json +2 -2
  1240. package/json-schema/kernel/ServiceRegisteredEvent.json +2 -2
  1241. package/json-schema/kernel/ServiceRegistryConfig.json +2 -2
  1242. package/json-schema/kernel/ServiceScopeType.json +2 -2
  1243. package/json-schema/kernel/ServiceUnregisteredEvent.json +2 -2
  1244. package/json-schema/kernel/StartupOptions.json +2 -2
  1245. package/json-schema/kernel/StartupOrchestrationResult.json +2 -2
  1246. package/json-schema/kernel/UninstallPackageRequest.json +5 -3
  1247. package/json-schema/kernel/UninstallPackageResponse.json +8 -4
  1248. package/json-schema/kernel/UpgradeContext.json +35 -0
  1249. package/json-schema/kernel/UpgradeImpactLevel.json +3 -2
  1250. package/json-schema/kernel/UpgradePackageRequest.json +18 -2
  1251. package/json-schema/kernel/UpgradePackageResponse.json +13 -6
  1252. package/json-schema/kernel/UpgradePhase.json +3 -2
  1253. package/json-schema/kernel/UpgradePlan.json +9 -5
  1254. package/json-schema/kernel/UpgradeSnapshot.json +20 -3
  1255. package/json-schema/kernel/ValidationError.json +2 -2
  1256. package/json-schema/kernel/ValidationFinding.json +36 -0
  1257. package/json-schema/kernel/ValidationResult.json +2 -2
  1258. package/json-schema/kernel/ValidationSeverityEnum.json +12 -0
  1259. package/json-schema/kernel/ValidationWarning.json +2 -2
  1260. package/json-schema/kernel/VersionConstraint.json +2 -2
  1261. package/json-schema/kernel/VulnerabilitySeverity.json +2 -2
  1262. package/json-schema/objectstack.json +48338 -21882
  1263. package/json-schema/openapi.json +1 -1
  1264. package/json-schema/qa/TestAction.json +2 -2
  1265. package/json-schema/qa/TestActionType.json +2 -2
  1266. package/json-schema/qa/TestAssertion.json +2 -2
  1267. package/json-schema/qa/TestAssertionType.json +2 -2
  1268. package/json-schema/qa/TestContext.json +2 -2
  1269. package/json-schema/qa/TestScenario.json +2 -2
  1270. package/json-schema/qa/TestStep.json +2 -2
  1271. package/json-schema/qa/TestSuite.json +2 -2
  1272. package/json-schema/security/AuditPolicy.json +2 -2
  1273. package/json-schema/security/CriteriaSharingRule.json +2 -2
  1274. package/json-schema/security/FieldPermission.json +2 -2
  1275. package/json-schema/security/NetworkPolicy.json +2 -2
  1276. package/json-schema/security/OWDModel.json +2 -2
  1277. package/json-schema/security/ObjectPermission.json +2 -2
  1278. package/json-schema/security/OwnerSharingRule.json +2 -2
  1279. package/json-schema/security/PasswordPolicy.json +2 -2
  1280. package/json-schema/security/PermissionSet.json +2 -2
  1281. package/json-schema/security/Policy.json +2 -2
  1282. package/json-schema/security/RLSAuditConfig.json +2 -2
  1283. package/json-schema/security/RLSAuditEvent.json +2 -2
  1284. package/json-schema/security/RLSConfig.json +2 -2
  1285. package/json-schema/security/RLSEvaluationResult.json +2 -2
  1286. package/json-schema/security/RLSOperation.json +2 -2
  1287. package/json-schema/security/RLSUserContext.json +2 -2
  1288. package/json-schema/security/RowLevelSecurityPolicy.json +2 -2
  1289. package/json-schema/security/SessionPolicy.json +2 -2
  1290. package/json-schema/security/ShareRecipientType.json +2 -2
  1291. package/json-schema/security/SharingLevel.json +2 -2
  1292. package/json-schema/security/SharingRule.json +2 -2
  1293. package/json-schema/security/SharingRuleType.json +2 -2
  1294. package/json-schema/security/Territory.json +2 -2
  1295. package/json-schema/security/TerritoryModel.json +2 -2
  1296. package/json-schema/security/TerritoryType.json +2 -2
  1297. package/json-schema/shared/AggregationFunctionEnum.json +2 -2
  1298. package/json-schema/shared/AppName.json +2 -2
  1299. package/json-schema/shared/BaseMetadataRecord.json +2 -2
  1300. package/json-schema/shared/CacheStrategyEnum.json +2 -2
  1301. package/json-schema/shared/CorsConfig.json +2 -2
  1302. package/json-schema/shared/EventName.json +2 -2
  1303. package/json-schema/shared/FieldMapping.json +2 -2
  1304. package/json-schema/shared/FieldName.json +2 -2
  1305. package/json-schema/shared/FlowName.json +2 -2
  1306. package/json-schema/shared/HttpMethod.json +2 -2
  1307. package/json-schema/shared/IsolationLevelEnum.json +2 -2
  1308. package/json-schema/shared/MetadataFormat.json +2 -2
  1309. package/json-schema/shared/MutationEventEnum.json +2 -2
  1310. package/json-schema/shared/ObjectName.json +2 -2
  1311. package/json-schema/shared/RateLimitConfig.json +2 -2
  1312. package/json-schema/shared/RoleName.json +2 -2
  1313. package/json-schema/shared/SnakeCaseIdentifier.json +2 -2
  1314. package/json-schema/shared/SortDirectionEnum.json +2 -2
  1315. package/json-schema/shared/SortItem.json +2 -2
  1316. package/json-schema/shared/StaticMount.json +2 -2
  1317. package/json-schema/shared/SystemIdentifier.json +2 -2
  1318. package/json-schema/shared/TransformType.json +2 -2
  1319. package/json-schema/shared/ViewName.json +2 -2
  1320. package/json-schema/studio/ActionContribution.json +2 -2
  1321. package/json-schema/studio/ActionLocation.json +2 -2
  1322. package/json-schema/studio/ActivationEvent.json +2 -2
  1323. package/json-schema/studio/CanvasSnapSettings.json +2 -2
  1324. package/json-schema/studio/CanvasZoomSettings.json +2 -2
  1325. package/json-schema/studio/CommandContribution.json +2 -2
  1326. package/json-schema/studio/ERDiagramConfig.json +2 -2
  1327. package/json-schema/studio/ERLayoutAlgorithm.json +2 -2
  1328. package/json-schema/studio/ERNodeDisplay.json +2 -2
  1329. package/json-schema/studio/ElementPaletteItem.json +2 -2
  1330. package/json-schema/studio/FieldEditorConfig.json +2 -2
  1331. package/json-schema/studio/FieldGroup.json +2 -2
  1332. package/json-schema/studio/FieldPropertySection.json +2 -2
  1333. package/json-schema/studio/FlowBuilderConfig.json +240 -0
  1334. package/json-schema/studio/FlowCanvasEdge.json +71 -0
  1335. package/json-schema/studio/FlowCanvasEdgeStyle.json +13 -0
  1336. package/json-schema/studio/FlowCanvasNode.json +57 -0
  1337. package/json-schema/studio/FlowLayoutAlgorithm.json +13 -0
  1338. package/json-schema/studio/FlowLayoutDirection.json +13 -0
  1339. package/json-schema/studio/FlowNodeRenderDescriptor.json +88 -0
  1340. package/json-schema/studio/FlowNodeShape.json +17 -0
  1341. package/json-schema/studio/InterfaceBuilderConfig.json +2 -2
  1342. package/json-schema/studio/MetadataIconContribution.json +2 -2
  1343. package/json-schema/studio/MetadataViewerContribution.json +2 -2
  1344. package/json-schema/studio/ObjectDesignerConfig.json +2 -2
  1345. package/json-schema/studio/ObjectDesignerDefaultView.json +2 -2
  1346. package/json-schema/studio/ObjectFilter.json +2 -2
  1347. package/json-schema/studio/ObjectListDisplayMode.json +2 -2
  1348. package/json-schema/studio/ObjectManagerConfig.json +2 -2
  1349. package/json-schema/studio/ObjectPreviewConfig.json +2 -2
  1350. package/json-schema/studio/ObjectPreviewTab.json +2 -2
  1351. package/json-schema/studio/ObjectSortField.json +2 -2
  1352. package/json-schema/studio/PageBuilderConfig.json +2 -2
  1353. package/json-schema/studio/PanelContribution.json +2 -2
  1354. package/json-schema/studio/PanelLocation.json +2 -2
  1355. package/json-schema/studio/RelationshipDisplay.json +2 -2
  1356. package/json-schema/studio/RelationshipMapperConfig.json +2 -2
  1357. package/json-schema/studio/SidebarGroupContribution.json +2 -2
  1358. package/json-schema/studio/StudioPluginContributions.json +2 -2
  1359. package/json-schema/studio/StudioPluginManifest.json +2 -2
  1360. package/json-schema/studio/ViewMode.json +2 -2
  1361. package/json-schema/system/AccessControlConfig.json +2 -2
  1362. package/json-schema/system/AddFieldOperation.json +2 -2
  1363. package/json-schema/system/AnalyzerConfig.json +2 -2
  1364. package/json-schema/system/AuditConfig.json +2 -2
  1365. package/json-schema/system/AuditEvent.json +2 -2
  1366. package/json-schema/system/AuditEventActor.json +2 -2
  1367. package/json-schema/system/AuditEventChange.json +2 -2
  1368. package/json-schema/system/AuditEventFilter.json +2 -2
  1369. package/json-schema/system/AuditEventSeverity.json +2 -2
  1370. package/json-schema/system/AuditEventTarget.json +2 -2
  1371. package/json-schema/system/AuditEventType.json +2 -2
  1372. package/json-schema/system/AuditLogConfig.json +2 -2
  1373. package/json-schema/system/AuditRetentionPolicy.json +2 -2
  1374. package/json-schema/system/AuditStorageConfig.json +2 -2
  1375. package/json-schema/system/AuthConfig.json +2 -2
  1376. package/json-schema/system/AuthPluginConfig.json +2 -2
  1377. package/json-schema/system/AuthProviderConfig.json +2 -2
  1378. package/json-schema/system/AwarenessEvent.json +2 -2
  1379. package/json-schema/system/AwarenessSession.json +2 -2
  1380. package/json-schema/system/AwarenessUpdate.json +2 -2
  1381. package/json-schema/system/AwarenessUserState.json +2 -2
  1382. package/json-schema/system/BackupConfig.json +2 -2
  1383. package/json-schema/system/BackupRetention.json +2 -2
  1384. package/json-schema/system/BackupStrategy.json +2 -2
  1385. package/json-schema/system/BatchProgress.json +2 -2
  1386. package/json-schema/system/BucketConfig.json +2 -2
  1387. package/json-schema/system/CRDTMergeResult.json +2 -2
  1388. package/json-schema/system/CRDTState.json +2 -2
  1389. package/json-schema/system/CRDTType.json +2 -2
  1390. package/json-schema/system/CacheAvalanchePrevention.json +2 -2
  1391. package/json-schema/system/CacheConfig.json +2 -2
  1392. package/json-schema/system/CacheConsistency.json +2 -2
  1393. package/json-schema/system/CacheInvalidation.json +2 -2
  1394. package/json-schema/system/CacheStrategy.json +2 -2
  1395. package/json-schema/system/CacheTier.json +2 -2
  1396. package/json-schema/system/CacheWarmup.json +2 -2
  1397. package/json-schema/system/ChangeImpact.json +2 -2
  1398. package/json-schema/system/ChangePriority.json +2 -2
  1399. package/json-schema/system/ChangeRequest.json +2 -2
  1400. package/json-schema/system/ChangeSet.json +2 -2
  1401. package/json-schema/system/ChangeStatus.json +2 -2
  1402. package/json-schema/system/ChangeType.json +2 -2
  1403. package/json-schema/system/CollaborationMode.json +2 -2
  1404. package/json-schema/system/CollaborationSession.json +2 -2
  1405. package/json-schema/system/CollaborationSessionConfig.json +2 -2
  1406. package/json-schema/system/CollaborativeCursor.json +2 -2
  1407. package/json-schema/system/ComplianceAuditRequirement.json +2 -2
  1408. package/json-schema/system/ComplianceConfig.json +2 -2
  1409. package/json-schema/system/ComplianceEncryptionRequirement.json +2 -2
  1410. package/json-schema/system/ConsoleDestinationConfig.json +2 -2
  1411. package/json-schema/system/ConsumerConfig.json +2 -2
  1412. package/json-schema/system/CoreServiceName.json +2 -2
  1413. package/json-schema/system/CounterOperation.json +2 -2
  1414. package/json-schema/system/CreateObjectOperation.json +2 -2
  1415. package/json-schema/system/CronSchedule.json +2 -2
  1416. package/json-schema/system/CursorColorPreset.json +2 -2
  1417. package/json-schema/system/CursorSelection.json +2 -2
  1418. package/json-schema/system/CursorStyle.json +2 -2
  1419. package/json-schema/system/CursorUpdate.json +2 -2
  1420. package/json-schema/system/DataClassificationPolicy.json +2 -2
  1421. package/json-schema/system/DatabaseLevelIsolationStrategy.json +2 -2
  1422. package/json-schema/system/DeadLetterQueue.json +2 -2
  1423. package/json-schema/system/DeleteObjectOperation.json +2 -2
  1424. package/json-schema/system/DisasterRecoveryPlan.json +2 -2
  1425. package/json-schema/system/DistributedCacheConfig.json +2 -2
  1426. package/json-schema/system/EmailTemplate.json +2 -2
  1427. package/json-schema/system/EncryptionAlgorithm.json +2 -2
  1428. package/json-schema/system/EncryptionConfig.json +2 -2
  1429. package/json-schema/system/ExecuteSqlOperation.json +2 -2
  1430. package/json-schema/system/ExtendedLogLevel.json +2 -2
  1431. package/json-schema/system/ExternalServiceDestinationConfig.json +2 -2
  1432. package/json-schema/system/FacetConfig.json +2 -2
  1433. package/json-schema/system/FailoverConfig.json +2 -2
  1434. package/json-schema/system/FailoverMode.json +2 -2
  1435. package/json-schema/system/Feature.json +2 -2
  1436. package/json-schema/system/FieldEncryption.json +2 -2
  1437. package/json-schema/system/FieldTranslation.json +2 -2
  1438. package/json-schema/system/FileDestinationConfig.json +2 -2
  1439. package/json-schema/system/FileMetadata.json +2 -2
  1440. package/json-schema/system/GCounter.json +2 -2
  1441. package/json-schema/system/GDPRConfig.json +2 -2
  1442. package/json-schema/system/HIPAAConfig.json +2 -2
  1443. package/json-schema/system/HistogramBucketConfig.json +2 -2
  1444. package/json-schema/system/HttpDestinationConfig.json +2 -2
  1445. package/json-schema/system/HttpServerConfig.json +2 -2
  1446. package/json-schema/system/InAppNotification.json +2 -2
  1447. package/json-schema/system/IntervalSchedule.json +2 -2
  1448. package/json-schema/system/Job.json +2 -2
  1449. package/json-schema/system/JobExecution.json +2 -2
  1450. package/json-schema/system/JobExecutionStatus.json +2 -2
  1451. package/json-schema/system/KernelServiceMap.json +2 -2
  1452. package/json-schema/system/KeyManagementProvider.json +2 -2
  1453. package/json-schema/system/KeyRotationPolicy.json +2 -2
  1454. package/json-schema/system/LWWRegister.json +2 -2
  1455. package/json-schema/system/LevelIsolationStrategySchema.json +2 -2
  1456. package/json-schema/system/License.json +2 -2
  1457. package/json-schema/system/LicenseMetricType.json +2 -2
  1458. package/json-schema/system/LifecycleAction.json +2 -2
  1459. package/json-schema/system/LifecyclePolicyConfig.json +2 -2
  1460. package/json-schema/system/LifecyclePolicyRule.json +2 -2
  1461. package/json-schema/system/Locale.json +2 -2
  1462. package/json-schema/system/LogDestination.json +2 -2
  1463. package/json-schema/system/LogDestinationType.json +2 -2
  1464. package/json-schema/system/LogEnrichmentConfig.json +2 -2
  1465. package/json-schema/system/LogEntry.json +2 -2
  1466. package/json-schema/system/LogFormat.json +2 -2
  1467. package/json-schema/system/LogLevel.json +2 -2
  1468. package/json-schema/system/LoggerConfig.json +2 -2
  1469. package/json-schema/system/LoggingConfig.json +2 -2
  1470. package/json-schema/system/MaskingConfig.json +2 -2
  1471. package/json-schema/system/MaskingRule.json +2 -2
  1472. package/json-schema/system/MaskingStrategy.json +2 -2
  1473. package/json-schema/system/MaskingVisibilityRule.json +2 -2
  1474. package/json-schema/system/MessageQueueConfig.json +2 -2
  1475. package/json-schema/system/MessageQueueProvider.json +2 -2
  1476. package/json-schema/system/MetadataCollectionInfo.json +2 -2
  1477. package/json-schema/system/MetadataExportOptions.json +2 -2
  1478. package/json-schema/system/MetadataFallbackStrategy.json +2 -2
  1479. package/json-schema/system/MetadataFormat.json +2 -2
  1480. package/json-schema/system/MetadataImportOptions.json +2 -2
  1481. package/json-schema/system/MetadataLoadOptions.json +2 -2
  1482. package/json-schema/system/MetadataLoadResult.json +2 -2
  1483. package/json-schema/system/MetadataLoaderContract.json +2 -2
  1484. package/json-schema/system/MetadataManagerConfig.json +2 -2
  1485. package/json-schema/system/MetadataRecord.json +2 -2
  1486. package/json-schema/system/MetadataSaveOptions.json +2 -2
  1487. package/json-schema/system/MetadataSaveResult.json +2 -2
  1488. package/json-schema/system/MetadataScope.json +2 -2
  1489. package/json-schema/system/MetadataSource.json +2 -2
  1490. package/json-schema/system/MetadataState.json +2 -2
  1491. package/json-schema/system/MetadataStats.json +2 -2
  1492. package/json-schema/system/MetadataWatchEvent.json +2 -2
  1493. package/json-schema/system/MetricAggregationConfig.json +2 -2
  1494. package/json-schema/system/MetricAggregationType.json +2 -2
  1495. package/json-schema/system/MetricDataPoint.json +2 -2
  1496. package/json-schema/system/MetricDefinition.json +2 -2
  1497. package/json-schema/system/MetricExportConfig.json +2 -2
  1498. package/json-schema/system/MetricLabels.json +2 -2
  1499. package/json-schema/system/MetricType.json +2 -2
  1500. package/json-schema/system/MetricUnit.json +2 -2
  1501. package/json-schema/system/MetricsConfig.json +2 -2
  1502. package/json-schema/system/MiddlewareConfig.json +2 -2
  1503. package/json-schema/system/MiddlewareType.json +2 -2
  1504. package/json-schema/system/MigrationDependency.json +2 -2
  1505. package/json-schema/system/MigrationOperation.json +2 -2
  1506. package/json-schema/system/ModifyFieldOperation.json +2 -2
  1507. package/json-schema/system/MultipartUploadConfig.json +2 -2
  1508. package/json-schema/system/MutualTLSConfig.json +2 -2
  1509. package/json-schema/system/NotificationChannel.json +2 -2
  1510. package/json-schema/system/NotificationConfig.json +2 -2
  1511. package/json-schema/system/ORSet.json +2 -2
  1512. package/json-schema/system/ORSetElement.json +2 -2
  1513. package/json-schema/system/OTComponent.json +2 -2
  1514. package/json-schema/system/OTOperation.json +2 -2
  1515. package/json-schema/system/OTOperationType.json +2 -2
  1516. package/json-schema/system/OTTransformResult.json +2 -2
  1517. package/json-schema/system/ObjectMetadata.json +2 -2
  1518. package/json-schema/system/ObjectStorageConfig.json +2 -2
  1519. package/json-schema/system/ObjectTranslationData.json +2 -2
  1520. package/json-schema/system/OnceSchedule.json +2 -2
  1521. package/json-schema/system/OpenTelemetryCompatibility.json +2 -2
  1522. package/json-schema/system/OtelExporterType.json +2 -2
  1523. package/json-schema/system/PCIDSSConfig.json +2 -2
  1524. package/json-schema/system/PNCounter.json +2 -2
  1525. package/json-schema/system/Plan.json +2 -2
  1526. package/json-schema/system/PresignedUrlConfig.json +2 -2
  1527. package/json-schema/system/PushNotification.json +2 -2
  1528. package/json-schema/system/QueueConfig.json +2 -2
  1529. package/json-schema/system/RPO.json +2 -2
  1530. package/json-schema/system/RTO.json +2 -2
  1531. package/json-schema/system/RegistryConfig.json +2 -2
  1532. package/json-schema/system/RegistrySyncPolicy.json +2 -2
  1533. package/json-schema/system/RegistryUpstream.json +2 -2
  1534. package/json-schema/system/RemoveFieldOperation.json +2 -2
  1535. package/json-schema/system/RenameObjectOperation.json +2 -2
  1536. package/json-schema/system/RetryPolicy.json +2 -2
  1537. package/json-schema/system/RollbackPlan.json +2 -2
  1538. package/json-schema/system/RouteHandlerMetadata.json +2 -2
  1539. package/json-schema/system/RowLevelIsolationStrategy.json +2 -2
  1540. package/json-schema/system/SMSTemplate.json +2 -2
  1541. package/json-schema/system/SamplingDecision.json +2 -2
  1542. package/json-schema/system/SamplingStrategyType.json +2 -2
  1543. package/json-schema/system/Schedule.json +2 -2
  1544. package/json-schema/system/SearchConfig.json +2 -2
  1545. package/json-schema/system/SearchIndexConfig.json +2 -2
  1546. package/json-schema/system/SearchProvider.json +2 -2
  1547. package/json-schema/system/SecurityContextConfig.json +2 -2
  1548. package/json-schema/system/SecurityEventCorrelation.json +2 -2
  1549. package/json-schema/system/ServerCapabilities.json +2 -2
  1550. package/json-schema/system/ServerEvent.json +2 -2
  1551. package/json-schema/system/ServerEventType.json +2 -2
  1552. package/json-schema/system/ServerStatus.json +2 -2
  1553. package/json-schema/system/ServiceConfig.json +2 -2
  1554. package/json-schema/system/ServiceCriticality.json +2 -2
  1555. package/json-schema/system/ServiceLevelIndicator.json +2 -2
  1556. package/json-schema/system/ServiceLevelObjective.json +2 -2
  1557. package/json-schema/system/ServiceStatus.json +2 -2
  1558. package/json-schema/system/Span.json +2 -2
  1559. package/json-schema/system/SpanAttributeValue.json +2 -2
  1560. package/json-schema/system/SpanAttributes.json +2 -2
  1561. package/json-schema/system/SpanEvent.json +2 -2
  1562. package/json-schema/system/SpanKind.json +2 -2
  1563. package/json-schema/system/SpanLink.json +2 -2
  1564. package/json-schema/system/SpanStatus.json +2 -2
  1565. package/json-schema/system/StorageAcl.json +2 -2
  1566. package/json-schema/system/StorageClass.json +2 -2
  1567. package/json-schema/system/StorageConnection.json +2 -2
  1568. package/json-schema/system/StorageProvider.json +2 -2
  1569. package/json-schema/system/StorageScope.json +2 -2
  1570. package/json-schema/system/StructuredLogEntry.json +2 -2
  1571. package/json-schema/system/SuspiciousActivityRule.json +2 -2
  1572. package/json-schema/system/Task.json +2 -2
  1573. package/json-schema/system/TaskExecutionResult.json +2 -2
  1574. package/json-schema/system/TaskPriority.json +2 -2
  1575. package/json-schema/system/TaskRetryPolicy.json +2 -2
  1576. package/json-schema/system/TaskStatus.json +2 -2
  1577. package/json-schema/system/Tenant.json +2 -2
  1578. package/json-schema/system/TenantIsolationConfig.json +2 -2
  1579. package/json-schema/system/TenantIsolationLevel.json +2 -2
  1580. package/json-schema/system/TenantQuota.json +2 -2
  1581. package/json-schema/system/TenantSecurityPolicy.json +2 -2
  1582. package/json-schema/system/TextCRDTOperation.json +2 -2
  1583. package/json-schema/system/TextCRDTState.json +2 -2
  1584. package/json-schema/system/TimeSeries.json +2 -2
  1585. package/json-schema/system/TimeSeriesDataPoint.json +2 -2
  1586. package/json-schema/system/TopicConfig.json +2 -2
  1587. package/json-schema/system/TraceContext.json +2 -2
  1588. package/json-schema/system/TraceContextPropagation.json +2 -2
  1589. package/json-schema/system/TraceFlags.json +2 -2
  1590. package/json-schema/system/TracePropagationFormat.json +2 -2
  1591. package/json-schema/system/TraceSamplingConfig.json +2 -2
  1592. package/json-schema/system/TraceState.json +2 -2
  1593. package/json-schema/system/TracingConfig.json +2 -2
  1594. package/json-schema/system/TranslationBundle.json +2 -2
  1595. package/json-schema/system/TranslationConfig.json +2 -2
  1596. package/json-schema/system/TranslationData.json +2 -2
  1597. package/json-schema/system/TranslationFileOrganization.json +2 -2
  1598. package/json-schema/system/UserActivityStatus.json +2 -2
  1599. package/json-schema/system/VectorClock.json +2 -2
  1600. package/json-schema/system/WorkerStats.json +2 -2
  1601. package/json-schema/ui/AIChatWindowProps.json +2 -2
  1602. package/json-schema/ui/Action.json +2 -2
  1603. package/json-schema/ui/ActionNavItem.json +2 -2
  1604. package/json-schema/ui/ActionParam.json +2 -2
  1605. package/json-schema/ui/AddRecordConfig.json +2 -2
  1606. package/json-schema/ui/Animation.json +2 -2
  1607. package/json-schema/ui/AnimationTrigger.json +2 -2
  1608. package/json-schema/ui/App.json +2 -2
  1609. package/json-schema/ui/AppBranding.json +2 -2
  1610. package/json-schema/ui/AppearanceConfig.json +2 -2
  1611. package/json-schema/ui/AriaProps.json +2 -2
  1612. package/json-schema/ui/BlankPageLayout.json +2 -2
  1613. package/json-schema/ui/BlankPageLayoutItem.json +2 -2
  1614. package/json-schema/ui/BorderRadius.json +2 -2
  1615. package/json-schema/ui/BreakpointColumnMap.json +2 -2
  1616. package/json-schema/ui/BreakpointName.json +2 -2
  1617. package/json-schema/ui/BreakpointOrderMap.json +2 -2
  1618. package/json-schema/ui/Breakpoints.json +2 -2
  1619. package/json-schema/ui/CalendarConfig.json +2 -2
  1620. package/json-schema/ui/ChartAnnotation.json +2 -2
  1621. package/json-schema/ui/ChartAxis.json +2 -2
  1622. package/json-schema/ui/ChartConfig.json +2 -2
  1623. package/json-schema/ui/ChartInteraction.json +2 -2
  1624. package/json-schema/ui/ChartSeries.json +2 -2
  1625. package/json-schema/ui/ChartType.json +2 -2
  1626. package/json-schema/ui/ColorPalette.json +2 -2
  1627. package/json-schema/ui/ColumnSummary.json +2 -2
  1628. package/json-schema/ui/ComponentAnimation.json +2 -2
  1629. package/json-schema/ui/ConflictResolution.json +2 -2
  1630. package/json-schema/ui/Dashboard.json +2 -2
  1631. package/json-schema/ui/DashboardHeader.json +2 -2
  1632. package/json-schema/ui/DashboardHeaderAction.json +2 -2
  1633. package/json-schema/ui/DashboardNavItem.json +2 -2
  1634. package/json-schema/ui/DashboardWidget.json +2 -2
  1635. package/json-schema/ui/DateFormat.json +2 -2
  1636. package/json-schema/ui/DensityMode.json +2 -2
  1637. package/json-schema/ui/DndConfig.json +2 -2
  1638. package/json-schema/ui/DragConstraint.json +2 -2
  1639. package/json-schema/ui/DragHandle.json +2 -2
  1640. package/json-schema/ui/DragItem.json +2 -2
  1641. package/json-schema/ui/DropEffect.json +2 -2
  1642. package/json-schema/ui/DropZone.json +2 -2
  1643. package/json-schema/ui/EasingFunction.json +2 -2
  1644. package/json-schema/ui/ElementButtonProps.json +2 -2
  1645. package/json-schema/ui/ElementDataSource.json +2 -2
  1646. package/json-schema/ui/ElementFilterProps.json +2 -2
  1647. package/json-schema/ui/ElementFormProps.json +2 -2
  1648. package/json-schema/ui/ElementImageProps.json +2 -2
  1649. package/json-schema/ui/ElementNumberProps.json +2 -2
  1650. package/json-schema/ui/ElementRecordPickerProps.json +2 -2
  1651. package/json-schema/ui/ElementTextProps.json +2 -2
  1652. package/json-schema/ui/EmbedConfig.json +2 -2
  1653. package/json-schema/ui/EvictionPolicy.json +2 -2
  1654. package/json-schema/ui/FocusManagement.json +2 -2
  1655. package/json-schema/ui/FocusTrapConfig.json +2 -2
  1656. package/json-schema/ui/FormField.json +2 -2
  1657. package/json-schema/ui/GalleryConfig.json +2 -2
  1658. package/json-schema/ui/GanttConfig.json +2 -2
  1659. package/json-schema/ui/GestureConfig.json +2 -2
  1660. package/json-schema/ui/GestureType.json +2 -2
  1661. package/json-schema/ui/GlobalFilter.json +2 -2
  1662. package/json-schema/ui/GlobalFilterOptionsFrom.json +2 -2
  1663. package/json-schema/ui/GroupNavItem.json +2 -2
  1664. package/json-schema/ui/GroupingConfig.json +2 -2
  1665. package/json-schema/ui/GroupingField.json +2 -2
  1666. package/json-schema/ui/HttpMethod.json +2 -2
  1667. package/json-schema/ui/HttpRequest.json +2 -2
  1668. package/json-schema/ui/I18nLabel.json +2 -2
  1669. package/json-schema/ui/I18nObject.json +2 -2
  1670. package/json-schema/ui/InterfacePageConfig.json +2 -2
  1671. package/json-schema/ui/KanbanConfig.json +2 -2
  1672. package/json-schema/ui/KeyboardNavigationConfig.json +2 -2
  1673. package/json-schema/ui/KeyboardShortcut.json +2 -2
  1674. package/json-schema/ui/ListColumn.json +2 -2
  1675. package/json-schema/ui/ListView.json +2 -2
  1676. package/json-schema/ui/LocaleConfig.json +2 -2
  1677. package/json-schema/ui/LongPressGestureConfig.json +2 -2
  1678. package/json-schema/ui/MotionConfig.json +2 -2
  1679. package/json-schema/ui/NavigationArea.json +2 -2
  1680. package/json-schema/ui/NavigationConfig.json +2 -2
  1681. package/json-schema/ui/NavigationItem.json +2 -2
  1682. package/json-schema/ui/NavigationMode.json +2 -2
  1683. package/json-schema/ui/Notification.json +2 -2
  1684. package/json-schema/ui/NotificationAction.json +2 -2
  1685. package/json-schema/ui/NotificationConfig.json +2 -2
  1686. package/json-schema/ui/NotificationPosition.json +2 -2
  1687. package/json-schema/ui/NotificationSeverity.json +2 -2
  1688. package/json-schema/ui/NotificationType.json +2 -2
  1689. package/json-schema/ui/NumberFormat.json +2 -2
  1690. package/json-schema/ui/ObjectNavItem.json +2 -2
  1691. package/json-schema/ui/OfflineCacheConfig.json +2 -2
  1692. package/json-schema/ui/OfflineConfig.json +2 -2
  1693. package/json-schema/ui/OfflineStrategy.json +2 -2
  1694. package/json-schema/ui/Page.json +2 -2
  1695. package/json-schema/ui/PageAccordionProps.json +2 -2
  1696. package/json-schema/ui/PageCardProps.json +2 -2
  1697. package/json-schema/ui/PageComponent.json +2 -2
  1698. package/json-schema/ui/PageComponentType.json +2 -2
  1699. package/json-schema/ui/PageHeaderProps.json +2 -2
  1700. package/json-schema/ui/PageNavItem.json +2 -2
  1701. package/json-schema/ui/PageRegion.json +2 -2
  1702. package/json-schema/ui/PageTabsProps.json +2 -2
  1703. package/json-schema/ui/PageTransition.json +2 -2
  1704. package/json-schema/ui/PageType.json +2 -2
  1705. package/json-schema/ui/PageVariable.json +2 -2
  1706. package/json-schema/ui/PaginationConfig.json +2 -2
  1707. package/json-schema/ui/PerformanceConfig.json +2 -2
  1708. package/json-schema/ui/PersistStorage.json +2 -2
  1709. package/json-schema/ui/PinchGestureConfig.json +2 -2
  1710. package/json-schema/ui/PluralRule.json +2 -2
  1711. package/json-schema/ui/RecordActivityProps.json +2 -2
  1712. package/json-schema/ui/RecordChatterProps.json +2 -2
  1713. package/json-schema/ui/RecordDetailsProps.json +2 -2
  1714. package/json-schema/ui/RecordHighlightsProps.json +2 -2
  1715. package/json-schema/ui/RecordPathProps.json +2 -2
  1716. package/json-schema/ui/RecordRelatedListProps.json +2 -2
  1717. package/json-schema/ui/RecordReviewConfig.json +2 -2
  1718. package/json-schema/ui/Report.json +2 -2
  1719. package/json-schema/ui/ReportChart.json +2 -2
  1720. package/json-schema/ui/ReportColumn.json +2 -2
  1721. package/json-schema/ui/ReportGrouping.json +2 -2
  1722. package/json-schema/ui/ReportNavItem.json +2 -2
  1723. package/json-schema/ui/ReportType.json +2 -2
  1724. package/json-schema/ui/ResponsiveConfig.json +2 -2
  1725. package/json-schema/ui/RowColorConfig.json +2 -2
  1726. package/json-schema/ui/RowHeight.json +2 -2
  1727. package/json-schema/ui/SelectionConfig.json +2 -2
  1728. package/json-schema/ui/Shadow.json +2 -2
  1729. package/json-schema/ui/SharingConfig.json +2 -2
  1730. package/json-schema/ui/Spacing.json +2 -2
  1731. package/json-schema/ui/SwipeDirection.json +2 -2
  1732. package/json-schema/ui/SwipeGestureConfig.json +2 -2
  1733. package/json-schema/ui/SyncConfig.json +2 -2
  1734. package/json-schema/ui/Theme.json +2 -2
  1735. package/json-schema/ui/ThemeMode.json +2 -2
  1736. package/json-schema/ui/TimelineConfig.json +2 -2
  1737. package/json-schema/ui/TouchInteraction.json +2 -2
  1738. package/json-schema/ui/TouchTargetConfig.json +2 -2
  1739. package/json-schema/ui/TransitionConfig.json +2 -2
  1740. package/json-schema/ui/TransitionPreset.json +2 -2
  1741. package/json-schema/ui/Typography.json +2 -2
  1742. package/json-schema/ui/UrlNavItem.json +2 -2
  1743. package/json-schema/ui/UserActionsConfig.json +2 -2
  1744. package/json-schema/ui/ViewData.json +2 -2
  1745. package/json-schema/ui/ViewSharing.json +2 -2
  1746. package/json-schema/ui/ViewTab.json +2 -2
  1747. package/json-schema/ui/VisualizationType.json +2 -2
  1748. package/json-schema/ui/WcagContrastLevel.json +2 -2
  1749. package/json-schema/ui/WidgetActionType.json +2 -2
  1750. package/json-schema/ui/WidgetColorVariant.json +2 -2
  1751. package/json-schema/ui/WidgetEvent.json +2 -2
  1752. package/json-schema/ui/WidgetLifecycle.json +2 -2
  1753. package/json-schema/ui/WidgetManifest.json +2 -2
  1754. package/json-schema/ui/WidgetMeasure.json +2 -2
  1755. package/json-schema/ui/WidgetProperty.json +2 -2
  1756. package/json-schema/ui/WidgetSource.json +2 -2
  1757. package/json-schema/ui/ZIndex.json +2 -2
  1758. package/package.json +1 -1
  1759. package/dist/metadata-plugin.zod-Cjm0qlEF.d.mts +0 -703
  1760. package/dist/metadata-plugin.zod-Cjm0qlEF.d.ts +0 -703
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/shared/identifiers.zod.ts","../../src/automation/workflow.zod.ts","../../src/automation/flow.zod.ts","../../src/automation/webhook.zod.ts","../../src/automation/approval.zod.ts","../../src/automation/etl.zod.ts","../../src/automation/trigger-registry.zod.ts","../../src/shared/mapping.zod.ts","../../src/automation/sync.zod.ts","../../src/automation/state-machine.zod.ts"],"names":["z"],"mappings":"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","file":"index.mjs","sourcesContent":["// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.\n\nimport { z } from 'zod';\n\n/**\n * System Identifier Schema\n * \n * Universal naming convention for all machine identifiers (API Names) in ObjectStack.\n * Enforces lowercase with underscores or dots to ensure:\n * - Cross-platform compatibility (case-insensitive filesystems)\n * - URL-friendliness (no encoding needed)\n * - Database consistency (no collation issues)\n * - Security (no case-sensitivity bugs in permission checks)\n * \n * **Applies to all metadata that acts as a machine identifier:**\n * - Object names (tables/collections)\n * - Field names\n * - Role names\n * - Permission set names\n * - Action/trigger names\n * - Event keys\n * - App IDs\n * - Menu/page IDs\n * - Select option values\n * - Workflow names\n * - Webhook names\n * \n * **Naming Convention Summary:**\n * | Type | Pattern | Example |\n * |------|---------|---------|\n * | Machine ID | snake_case | `crm_account`, `btn_submit`, `role_admin` |\n * | Event keys | dot.notation | `user.login`, `order.created` |\n * | Labels | Any case | `Client Account`, `Submit Form` |\n * \n * @example Valid identifiers\n * - 'account'\n * - 'crm_account'\n * - 'user_profile'\n * - 'order.created' (for events)\n * - 'api_v2_endpoint'\n * \n * @example Invalid identifiers (will be rejected)\n * - 'Account' (uppercase)\n * - 'CrmAccount' (camelCase)\n * - 'crm-account' (kebab-case - use underscore instead)\n * - 'user profile' (spaces)\n */\nexport const SystemIdentifierSchema = z\n .string()\n .min(2, { message: 'System identifier must be at least 2 characters' })\n .regex(/^[a-z][a-z0-9_.]*$/, {\n message:\n 'System identifier must be lowercase, starting with a letter, and may contain letters, numbers, underscores, or dots (e.g., \"user_profile\" or \"order.created\")',\n })\n .describe('System identifier (lowercase with underscores or dots)');\n\n/**\n * Strict Snake Case Identifier\n * \n * More restrictive than SystemIdentifierSchema - only allows underscores (no dots).\n * Use this for identifiers that should NOT contain dots (e.g., database table/column names).\n * \n * @example Valid\n * - 'account'\n * - 'crm_account'\n * - 'user_profile'\n * \n * @example Invalid\n * - 'user.profile' (dots not allowed)\n * - 'UserProfile' (uppercase)\n */\nexport const SnakeCaseIdentifierSchema = z\n .string()\n .min(2, { message: 'Identifier must be at least 2 characters' })\n .regex(/^[a-z][a-z0-9_]*$/, {\n message:\n 'Identifier must be lowercase snake_case, starting with a letter, and may contain only letters, numbers, and underscores (e.g., \"user_profile\")',\n })\n .describe('Snake case identifier (lowercase with underscores only)');\n\n/**\n * Event Name Identifier\n * \n * Specialized identifier for event names that encourages dot notation.\n * Used in event-driven systems, message queues, and webhooks.\n * \n * Pattern: `namespace.action` or `entity.event_type`\n * \n * @example Valid\n * - 'user.created'\n * - 'order.paid'\n * - 'user.login_success'\n * - 'alarm.high_cpu'\n * \n * @example Invalid\n * - 'UserCreated' (camelCase)\n * - 'user_created' (should use dots for namespacing)\n */\nexport const EventNameSchema = z\n .string()\n .min(3, { message: 'Event name must be at least 3 characters' })\n .regex(/^[a-z][a-z0-9_.]*$/, {\n message:\n 'Event name must be lowercase with dots for namespacing (e.g., \"user.created\", \"order.paid\")',\n })\n .describe('Event name (lowercase with dot notation for namespacing)');\n\n/**\n * Type Exports\n */\nexport type SystemIdentifier = z.infer<typeof SystemIdentifierSchema>;\nexport type SnakeCaseIdentifier = z.infer<typeof SnakeCaseIdentifierSchema>;\nexport type EventName = z.infer<typeof EventNameSchema>;\n","// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.\n\nimport { z } from 'zod';\nimport { SnakeCaseIdentifierSchema } from '../shared/identifiers.zod';\n\n/**\n * Trigger events for workflow automation\n */\nexport const WorkflowTriggerType = z.enum([\n 'on_create', // When record is created\n 'on_update', // When record is updated\n 'on_create_or_update', // Both\n 'on_delete', // When record is deleted\n 'schedule' // Time-based (cron)\n]);\n\n/**\n * Schema for Workflow Field Update Action\n * @example\n * {\n * name: \"update_status\",\n * type: \"field_update\",\n * field: \"status\",\n * value: \"approved\"\n * }\n */\nexport const FieldUpdateActionSchema = z.object({\n name: z.string().describe('Action name'),\n type: z.literal('field_update'),\n field: z.string().describe('Field to update'),\n value: z.unknown().describe('Value or Formula to set'),\n});\n\n/**\n * Schema for Workflow Email Alert Action\n * @example\n * {\n * name: \"send_approval_email\",\n * type: \"email_alert\",\n * template: \"approval_request_email\",\n * recipients: [\"user_id_123\", \"manager_field\"]\n * }\n */\nexport const EmailAlertActionSchema = z.object({\n name: z.string().describe('Action name'),\n type: z.literal('email_alert'),\n template: z.string().describe('Email template ID/DevName'),\n recipients: z.array(z.string()).describe('List of recipient emails or user IDs'),\n});\n\n/**\n * Schema for Connector Action Reference\n * Executes a capability defined in an integration connector.\n * Replaces hardcoded vendor actions (Slack, Twilio, etc).\n * \n * @example Send Slack Message\n * {\n * name: \"notify_slack\",\n * type: \"connector_action\",\n * connectorId: \"slack\",\n * actionId: \"post_message\",\n * input: {\n * channel: \"#general\",\n * text: \"New deal closed: {name}\"\n * }\n * }\n */\nexport const ConnectorActionRefSchema = z.object({\n name: z.string().describe('Action name'),\n type: z.literal('connector_action'),\n connectorId: z.string().describe('Target Connector ID (e.g. slack, twilio)'),\n actionId: z.string().describe('Target Action ID (e.g. send_message)'),\n input: z.record(z.string(), z.unknown()).describe('Input parameters matching the action schema'),\n});\n\n/**\n * Schema for HTTP Callout Action\n * Makes a REST API call to an external service.\n * @example\n * {\n * name: \"sync_to_erp\",\n * type: \"http_call\",\n * url: \"https://erp.api/orders\",\n * method: \"POST\",\n * headers: { \"Authorization\": \"Bearer {token}\" },\n * body: \"{ ... }\"\n * }\n */\nexport const HttpCallActionSchema = z.object({\n name: z.string().describe('Action name'),\n type: z.literal('http_call'),\n url: z.string().describe('Target URL'),\n method: z.enum(['GET', 'POST', 'PUT', 'DELETE', 'PATCH']).default('POST').describe('HTTP Method'),\n headers: z.record(z.string(), z.string()).optional().describe('HTTP Headers'),\n body: z.string().optional().describe('Request body (JSON or text)'),\n});\n\n/**\n * Schema for Workflow Task Creation Action\n * @example\n * {\n * name: \"create_followup_task\",\n * type: \"task_creation\",\n * taskObject: \"tasks\",\n * subject: \"Follow up with client\",\n * dueDate: \"TODAY() + 3\"\n * }\n */\nexport const TaskCreationActionSchema = z.object({\n name: z.string().describe('Action name'),\n type: z.literal('task_creation'),\n taskObject: z.string().describe('Task object name (e.g., \"task\", \"project_task\")'),\n subject: z.string().describe('Task subject/title'),\n description: z.string().optional().describe('Task description'),\n assignedTo: z.string().optional().describe('User ID or field reference for assignee'),\n dueDate: z.string().optional().describe('Due date (ISO string or formula)'),\n priority: z.string().optional().describe('Task priority'),\n relatedTo: z.string().optional().describe('Related record ID or field reference'),\n additionalFields: z.record(z.string(), z.unknown()).optional().describe('Additional custom fields'),\n});\n\n/**\n * Schema for Workflow Push Notification Action\n */\nexport const PushNotificationActionSchema = z.object({\n name: z.string().describe('Action name'),\n type: z.literal('push_notification'),\n title: z.string().describe('Notification title'),\n body: z.string().describe('Notification body text'),\n recipients: z.array(z.string()).describe('User IDs or device tokens'),\n data: z.record(z.string(), z.unknown()).optional().describe('Additional data payload'),\n badge: z.number().optional().describe('Badge count (iOS)'),\n sound: z.string().optional().describe('Notification sound'),\n clickAction: z.string().optional().describe('Action/URL when notification is clicked'),\n});\n\n/**\n * Schema for Workflow Custom Script Action\n */\nexport const CustomScriptActionSchema = z.object({\n name: z.string().describe('Action name'),\n type: z.literal('custom_script'),\n language: z.enum(['javascript', 'typescript', 'python']).default('javascript').describe('Script language'),\n code: z.string().describe('Script code to execute'),\n timeout: z.number().default(30000).describe('Execution timeout in milliseconds'),\n context: z.record(z.string(), z.unknown()).optional().describe('Additional context variables'),\n});\n\n/**\n * Universal Workflow Action Schema\n * Union of all supported action types.\n */\nexport const WorkflowActionSchema = z.discriminatedUnion('type', [\n FieldUpdateActionSchema,\n EmailAlertActionSchema,\n HttpCallActionSchema,\n ConnectorActionRefSchema,\n TaskCreationActionSchema,\n PushNotificationActionSchema,\n CustomScriptActionSchema,\n]);\n\nexport type WorkflowAction = z.infer<typeof WorkflowActionSchema>;\n\n/**\n * Time Trigger Definition\n * Schedules actions to run relative to a specific time or date field.\n */\nexport const TimeTriggerSchema = z.object({\n id: z.string().optional().describe('Unique identifier'),\n \n /** Timing Logic */\n timeLength: z.number().int().describe('Duration amount (e.g. 1, 30)'),\n timeUnit: z.enum(['minutes', 'hours', 'days']).describe('Unit of time'),\n \n /** Reference Point */\n offsetDirection: z.enum(['before', 'after']).describe('Before or After the reference date'),\n offsetFrom: z.enum(['trigger_date', 'date_field']).describe('Basis for calculation'),\n dateField: z.string().optional().describe('Date field to calculate from (required if offsetFrom is date_field)'),\n \n /** Actions */\n actions: z.array(WorkflowActionSchema).describe('Actions to execute at the scheduled time'),\n});\n\n/**\n * Schema for Workflow Rules (Automation)\n * \n * **NAMING CONVENTION:**\n * Workflow names are machine identifiers and must be lowercase snake_case.\n * \n * @example Good workflow names\n * - 'send_welcome_email'\n * - 'update_lead_status'\n * - 'notify_manager_on_close'\n * - 'calculate_discount'\n * \n * @example Bad workflow names (will be rejected)\n * - 'SendWelcomeEmail' (PascalCase)\n * - 'updateLeadStatus' (camelCase)\n * - 'Send Welcome Email' (spaces)\n * \n * @example Complete Workflow\n * {\n * name: \"new_lead_process\",\n * objectName: \"lead\",\n * triggerType: \"on_create\",\n * criteria: \"amount > 1000\",\n * active: true,\n * actions: [\n * {\n * name: \"set_status\",\n * type: \"field_update\",\n * field: \"status\",\n * value: \"new\"\n * },\n * {\n * name: \"notify_team\",\n * type: \"connector_action\",\n * connectorId: \"slack\",\n * actionId: \"post_message\",\n * input: { channel: \"#sales\", text: \"New high value lead!\" }\n * }\n * ],\n * timeTriggers: [\n * {\n * timeLength: 2,\n * timeUnit: \"days\",\n * offsetDirection: \"after\",\n * offsetFrom: \"trigger_date\",\n * actions: [\n * {\n * name: \"followup_check\",\n * type: \"task_creation\",\n * taskObject: \"task\",\n * subject: \"Follow up lead\",\n * dueDate: \"TODAY()\"\n * }\n * ]\n * }\n * ]\n * }\n */\nexport const WorkflowRuleSchema = z.object({\n /** Machine name */\n name: SnakeCaseIdentifierSchema.describe('Unique workflow name (lowercase snake_case)'),\n \n /** Target Object */\n objectName: z.string().describe('Target Object'),\n \n /** When to evaluate the rule */\n triggerType: WorkflowTriggerType.describe('When to evaluate'),\n \n /** \n * Condition to start the workflow.\n * If empty, runs on every trigger event.\n */\n criteria: z.string().optional().describe('Formula condition. If TRUE, actions execute.'),\n \n /** Actions to execute immediately */\n actions: z.array(WorkflowActionSchema).optional().describe('Immediate actions'),\n \n /** \n * Time-Dependent Actions \n * Actions scheduled to run in the future.\n */\n timeTriggers: z.array(TimeTriggerSchema).optional().describe('Scheduled actions relative to trigger or date field'),\n \n /** Active status */\n active: z.boolean().default(true).describe('Whether this workflow is active'),\n\n /** Execution Order */\n executionOrder: z.number().int().min(0).default(100).describe('Deterministic execution order when multiple workflows match (lower runs first)'),\n \n /** Recursion Control */\n reevaluateOnChange: z.boolean().default(false).describe('Re-evaluate rule if field updates change the record validity'),\n});\n\nexport type WorkflowRule = z.infer<typeof WorkflowRuleSchema>;\nexport type TimeTrigger = z.infer<typeof TimeTriggerSchema>;\n","// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.\n\nimport { z } from 'zod';\n\n/**\n * Flow Node Types\n */\nexport const FlowNodeAction = z.enum([\n 'start', // Trigger\n 'end', // Return/Stop\n 'decision', // If/Else logic\n 'assignment', // Set Variable\n 'loop', // For Each\n 'create_record', // CRUD: Create\n 'update_record', // CRUD: Update\n 'delete_record', // CRUD: Delete\n 'get_record', // CRUD: Get/Query\n 'http_request', // Webhook/API Call\n 'script', // Custom Script (JS/TS)\n 'screen', // Screen / User-Input Element\n 'wait', // Delay/Sleep\n 'subflow', // Call another flow\n 'connector_action', // Zapier-style integration action\n]);\n\n/**\n * Flow Variable Schema\n * Variables available within the flow execution context.\n */\nexport const FlowVariableSchema = z.object({\n name: z.string().describe('Variable name'),\n type: z.string().describe('Data type (text, number, boolean, object, list)'),\n isInput: z.boolean().default(false).describe('Is input parameter'),\n isOutput: z.boolean().default(false).describe('Is output parameter'),\n});\n\n/**\n * Flow Node Schema\n * A single step in the visual logic graph.\n * \n * @example Decision Node\n * {\n * id: \"dec_1\",\n * type: \"decision\",\n * label: \"Is High Value?\",\n * config: {\n * conditions: [\n * { label: \"Yes\", expression: \"{amount} > 10000\" },\n * { label: \"No\", expression: \"true\" } // default\n * ]\n * },\n * position: { x: 300, y: 200 }\n * }\n */\nexport const FlowNodeSchema = z.object({\n id: z.string().describe('Node unique ID'),\n type: FlowNodeAction.describe('Action type'),\n label: z.string().describe('Node label'),\n \n /** Node Configuration Options (Specific to type) */\n config: z.record(z.string(), z.unknown()).optional().describe('Node configuration'),\n \n /** \n * Connector Action Configuration\n * Used when type is 'connector_action'\n */\n connectorConfig: z.object({\n connectorId: z.string(),\n actionId: z.string(),\n input: z.record(z.string(), z.unknown()).describe('Mapped inputs for the action'),\n }).optional(),\n\n /** UI Position (for the canvas) */\n position: z.object({ x: z.number(), y: z.number() }).optional(),\n});\n\n/**\n * Flow Edge Schema\n * Connections between nodes.\n */\nexport const FlowEdgeSchema = z.object({\n id: z.string().describe('Edge unique ID'),\n source: z.string().describe('Source Node ID'),\n target: z.string().describe('Target Node ID'),\n \n /** Condition for this path (only for decision/branch nodes) */\n condition: z.string().optional().describe('Expression returning boolean used for branching'),\n \n type: z.enum(['default', 'fault']).default('default').describe('Connection type: Standard (Success) or Fault (Error) path'),\n label: z.string().optional().describe('Label on the connector'),\n});\n\n/**\n * Flow Schema\n * Visual Business Logic Orchestration.\n * \n * @example Simple Approval Logic\n * {\n * name: \"approve_order_flow\",\n * label: \"Approve Large Orders\",\n * type: \"record_change\",\n * status: \"active\",\n * nodes: [\n * { id: \"start\", type: \"start\", label: \"Start\", position: {x: 0, y: 0} },\n * { id: \"check_amount\", type: \"decision\", label: \"Check Amount\", position: {x: 0, y: 100} },\n * { id: \"auto_approve\", type: \"update_record\", label: \"Auto Approve\", position: {x: -100, y: 200} },\n * { id: \"submit_for_approval\", type: \"connector_action\", label: \"Submit\", position: {x: 100, y: 200} }\n * ],\n * edges: [\n * { id: \"e1\", source: \"start\", target: \"check_amount\" },\n * { id: \"e2\", source: \"check_amount\", target: \"auto_approve\", condition: \"{amount} < 500\" },\n * { id: \"e3\", source: \"check_amount\", target: \"submit_for_approval\", condition: \"{amount} >= 500\" }\n * ]\n * }\n */\nexport const FlowSchema = z.object({\n /** Identity */\n name: z.string().regex(/^[a-z_][a-z0-9_]*$/).describe('Machine name'),\n label: z.string().describe('Flow label'),\n description: z.string().optional(),\n \n /** Metadata & Versioning */\n version: z.number().int().default(1).describe('Version number'),\n status: z.enum(['draft', 'active', 'obsolete', 'invalid']).default('draft').describe('Deployment status'),\n template: z.boolean().default(false).describe('Is logic template (Subflow)'),\n\n /** Trigger Type */\n type: z.enum(['autolaunched', 'record_change', 'schedule', 'screen', 'api']).describe('Flow type'),\n \n /** Configuration Variables */\n variables: z.array(FlowVariableSchema).optional().describe('Flow variables'),\n \n /** Graph Definition */\n nodes: z.array(FlowNodeSchema).describe('Flow nodes'),\n edges: z.array(FlowEdgeSchema).describe('Flow connections'),\n \n /** Execution Config */\n active: z.boolean().default(false).describe('Is active (Deprecated: use status)'),\n runAs: z.enum(['system', 'user']).default('user').describe('Execution context'),\n\n /** Error Handling Strategy */\n errorHandling: z.object({\n strategy: z.enum(['fail', 'retry', 'continue']).default('fail').describe('How to handle node execution errors'),\n maxRetries: z.number().int().min(0).max(10).default(0).describe('Number of retry attempts (only for retry strategy)'),\n retryDelayMs: z.number().int().min(0).default(1000).describe('Delay between retries in milliseconds'),\n fallbackNodeId: z.string().optional().describe('Node ID to jump to on unrecoverable error'),\n }).optional().describe('Flow-level error handling configuration'),\n});\n\n/**\n * Type-safe factory for creating flow definitions.\n *\n * Validates the config at creation time using Zod `.parse()`.\n *\n * @example\n * ```ts\n * const onCreateFlow = defineFlow({\n * name: 'on_task_create',\n * label: 'On Task Create',\n * type: 'record_change',\n * nodes: [\n * { id: 'start', type: 'start', label: 'Start' },\n * { id: 'end', type: 'end', label: 'End' },\n * ],\n * edges: [{ id: 'e1', source: 'start', target: 'end' }],\n * });\n * ```\n */\nexport function defineFlow(config: z.input<typeof FlowSchema>): FlowParsed {\n return FlowSchema.parse(config);\n}\n\nexport type Flow = z.input<typeof FlowSchema>;\nexport type FlowParsed = z.infer<typeof FlowSchema>;\nexport type FlowNode = z.input<typeof FlowNodeSchema>;\nexport type FlowNodeParsed = z.infer<typeof FlowNodeSchema>;\nexport type FlowEdge = z.input<typeof FlowEdgeSchema>;\nexport type FlowEdgeParsed = z.infer<typeof FlowEdgeSchema>;\n","// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.\n\nimport { z } from 'zod';\nimport { SnakeCaseIdentifierSchema } from '../shared/identifiers.zod';\n\n/**\n * Webhook Trigger Event\n * When should this webhook fire?\n */\nexport const WebhookTriggerType = z.enum([\n 'create', \n 'update', \n 'delete', \n 'undelete',\n 'api' // Manually triggered\n]);\n\n/**\n * CANONICAL WEBHOOK DEFINITION\n * \n * This is the single source of truth for webhook configuration across ObjectStack.\n * All other protocols (workflow, connector, etc.) should import and reference this schema.\n * \n * Webhook Protocol - Outbound HTTP Integration\n * Push data to external URLs when events occur in the system.\n * \n * **NAMING CONVENTION:**\n * Webhook names are machine identifiers and must be lowercase snake_case.\n * \n * @example Good webhook names\n * - 'stripe_payment_sync'\n * - 'slack_notification'\n * - 'crm_lead_export'\n * \n * @example Bad webhook names (will be rejected)\n * - 'StripePaymentSync' (PascalCase)\n * - 'slackNotification' (camelCase)\n * \n * @example Basic webhook configuration\n * ```typescript\n * const webhook: Webhook = {\n * name: 'slack_notification',\n * label: 'Slack Order Notification',\n * object: 'order',\n * triggers: ['create', 'update'],\n * url: 'https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXX',\n * method: 'POST',\n * headers: { 'Content-Type': 'application/json' },\n * authentication: {\n * type: 'bearer',\n * credentials: { token: process.env.SLACK_TOKEN }\n * },\n * retryPolicy: {\n * maxRetries: 3,\n * backoffStrategy: 'exponential'\n * }\n * }\n * ```\n */\nexport const WebhookSchema = z.object({\n name: SnakeCaseIdentifierSchema.describe('Webhook unique name (lowercase snake_case)'),\n label: z.string().optional().describe('Human-readable webhook label'),\n \n /** Scope */\n object: z.string().optional().describe('Object to listen to (optional for manual webhooks)'),\n triggers: z.array(WebhookTriggerType).optional().describe('Events that trigger execution'),\n \n /** Target */\n url: z.string().url().describe('External webhook endpoint URL'),\n method: z.enum(['GET', 'POST', 'PUT', 'PATCH', 'DELETE']).default('POST').describe('HTTP method'),\n \n /** Headers */\n headers: z.record(z.string(), z.string()).optional().describe('Custom HTTP headers'),\n \n /** Body/Payload */\n body: z.unknown().optional().describe('Request body payload (if not using default record data)'),\n \n /** Payload Configuration */\n payloadFields: z.array(z.string()).optional().describe('Fields to include. Empty = All'),\n includeSession: z.boolean().default(false).describe('Include user session info'),\n \n /** Authentication */\n authentication: z.object({\n type: z.enum(['none', 'bearer', 'basic', 'api-key']).describe('Authentication type'),\n credentials: z.record(z.string(), z.string()).optional().describe('Authentication credentials'),\n }).optional().describe('Authentication configuration'),\n \n /** Retry Policy */\n retryPolicy: z.object({\n maxRetries: z.number().int().min(0).max(10).default(3).describe('Maximum retry attempts'),\n backoffStrategy: z.enum(['exponential', 'linear', 'fixed']).default('exponential').describe('Backoff strategy'),\n initialDelayMs: z.number().int().min(100).default(1000).describe('Initial retry delay in milliseconds'),\n maxDelayMs: z.number().int().min(1000).default(60000).describe('Maximum retry delay in milliseconds'),\n }).optional().describe('Retry policy configuration'),\n \n /** Timeout */\n timeoutMs: z.number().int().min(1000).max(300000).default(30000).describe('Request timeout in milliseconds'),\n \n /** Security */\n secret: z.string().optional().describe('Signing secret for HMAC signature verification'),\n \n /** Status */\n isActive: z.boolean().default(true).describe('Whether webhook is active'),\n \n /** Metadata */\n description: z.string().optional().describe('Webhook description'),\n tags: z.array(z.string()).optional().describe('Tags for organization'),\n});\n\n/**\n * Webhook Receiver Schema (Inbound)\n * Handling incoming HTTP hooks from Stripe, Slack, etc.\n * \n * **NAMING CONVENTION:**\n * Webhook receiver names are machine identifiers and must be lowercase snake_case.\n * \n * @example Good names\n * - 'stripe_webhook_handler'\n * - 'github_events'\n * - 'twilio_status_callback'\n * \n * @example Bad names (will be rejected)\n * - 'StripeWebhookHandler' (PascalCase)\n */\nexport const WebhookReceiverSchema = z.object({\n name: SnakeCaseIdentifierSchema.describe('Webhook receiver unique name (lowercase snake_case)'),\n path: z.string().describe('URL Path (e.g. /webhooks/stripe)'),\n \n /** Verification */\n verificationType: z.enum(['none', 'header_token', 'hmac', 'ip_whitelist']).default('none'),\n verificationParams: z.object({\n header: z.string().optional(),\n secret: z.string().optional(),\n ips: z.array(z.string()).optional()\n }).optional(),\n \n /** Action */\n action: z.enum(['trigger_flow', 'script', 'upsert_record']).default('trigger_flow'),\n target: z.string().describe('Flow ID or Script name'),\n});\n\nexport type Webhook = z.infer<typeof WebhookSchema>;\nexport type WebhookReceiver = z.infer<typeof WebhookReceiverSchema>;\n","// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.\n\nimport { z } from 'zod';\nimport { SnakeCaseIdentifierSchema } from '../shared/identifiers.zod';\n\n/**\n * Approval Step Approver Type\n */\nexport const ApproverType = z.enum([\n 'user', // Specific user(s)\n 'role', // Users with specific role\n 'manager', // Submitter's manager\n 'field', // User ID defined in a record field\n 'queue' // Data ownership queue\n]);\n\n/**\n * Approval Action Type\n * Actions to execute on transition\n */\nexport const ApprovalActionType = z.enum([\n 'field_update',\n 'email_alert',\n 'webhook',\n 'script',\n 'connector_action' // Added for Zapier-style integrations\n]);\n\n/**\n * definition of an action to perform\n */\nexport const ApprovalActionSchema = z.object({\n type: ApprovalActionType,\n name: z.string().describe('Action name'),\n config: z.record(z.string(), z.unknown()).describe('Action configuration'),\n \n /** For connector actions */\n connectorId: z.string().optional(),\n actionId: z.string().optional(),\n});\n\n/**\n * Approval Process Step\n */\nexport const ApprovalStepSchema = z.object({\n name: SnakeCaseIdentifierSchema.describe('Step machine name'),\n label: z.string().describe('Step display label'),\n description: z.string().optional(),\n \n /** Entry criteria for this step */\n entryCriteria: z.string().optional().describe('Formula expression to enter this step'),\n \n /** Who can approve */\n approvers: z.array(z.object({\n type: ApproverType,\n value: z.string().describe('User ID, Role Name, or Field Name')\n })).min(1).describe('List of allowed approvers'),\n \n /** Approval Logic */\n behavior: z.enum(['first_response', 'unanimous']).default('first_response')\n .describe('How to handle multiple approvers'),\n \n /** Rejection behavior */\n rejectionBehavior: z.enum(['reject_process', 'back_to_previous'])\n .default('reject_process').describe('What happens if rejected'),\n\n /** Actions */\n onApprove: z.array(ApprovalActionSchema).optional().describe('Actions on step approval'),\n onReject: z.array(ApprovalActionSchema).optional().describe('Actions on step rejection'),\n});\n\n/**\n * Approval Process Protocol\n * \n * Defines a complex review and approval cycle for a record.\n * Manages state locking, notifications, and transition logic.\n */\nexport const ApprovalProcessSchema = z.object({\n name: SnakeCaseIdentifierSchema.describe('Unique process name'),\n label: z.string().describe('Human readable label'),\n object: z.string().describe('Target Object Name'),\n \n active: z.boolean().default(false),\n description: z.string().optional(),\n \n /** Entry Criteria for the entire process */\n entryCriteria: z.string().optional().describe('Formula to allow submission'),\n \n /** Record Locking */\n lockRecord: z.boolean().default(true).describe('Lock record from editing during approval'),\n \n /** Steps */\n steps: z.array(ApprovalStepSchema).min(1).describe('Sequence of approval steps'),\n\n /** Escalation Configuration (SLA-based auto-escalation) */\n escalation: z.object({\n enabled: z.boolean().default(false).describe('Enable SLA-based escalation'),\n timeoutHours: z.number().min(1).describe('Hours before escalation triggers'),\n action: z.enum(['reassign', 'auto_approve', 'auto_reject', 'notify']).default('notify').describe('Action to take on escalation timeout'),\n escalateTo: z.string().optional().describe('User ID, role, or manager level to escalate to'),\n notifySubmitter: z.boolean().default(true).describe('Notify the original submitter on escalation'),\n }).optional().describe('SLA escalation configuration for pending approval steps'),\n \n /** Global Actions */\n onSubmit: z.array(ApprovalActionSchema).optional().describe('Actions on initial submission'),\n onFinalApprove: z.array(ApprovalActionSchema).optional().describe('Actions on final approval'),\n onFinalReject: z.array(ApprovalActionSchema).optional().describe('Actions on final rejection'),\n onRecall: z.array(ApprovalActionSchema).optional().describe('Actions on recall'),\n});\n\nexport const ApprovalProcess = Object.assign(ApprovalProcessSchema, {\n create: <T extends z.input<typeof ApprovalProcessSchema>>(config: T) => config,\n});\n\nexport type ApprovalProcess = z.infer<typeof ApprovalProcessSchema>;\nexport type ApprovalStep = z.infer<typeof ApprovalStepSchema>;\n","// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.\n\nimport { z } from 'zod';\n\n/**\n * ETL (Extract, Transform, Load) Pipeline Protocol - LEVEL 2: Data Engineering\n * \n * Inspired by modern data integration platforms like Airbyte, Fivetran, and Apache NiFi.\n * \n * **Positioning in 3-Layer Architecture:**\n * - **L1: Simple Sync** (automation/sync.zod.ts) - Business users - Sync Salesforce to Sheets\n * - **L2: ETL Pipeline** (THIS FILE) - Data engineers - Aggregate 10 sources to warehouse\n * - **L3: Enterprise Connector** (integration/connector.zod.ts) - System integrators - Full SAP integration\n * \n * ETL pipelines enable automated data synchronization between systems, transforming\n * data as it moves from source to destination.\n * \n * **SCOPE: Advanced multi-source, multi-stage transformations.**\n * Supports complex operations: joins, aggregations, filtering, custom SQL.\n * \n * ## When to Use This Layer\n * \n * **Use ETL Pipeline when:**\n * - Combining data from multiple sources\n * - Need aggregations, joins, transformations\n * - Building data warehouses or analytics platforms\n * - Complex data transformations required\n * \n * **Examples:**\n * - Sales data from Salesforce + Marketing from HubSpot → Data Warehouse\n * - Multi-region databases → Consolidated reporting\n * - Legacy system migration with transformation\n * \n * **When to downgrade:**\n * - Simple 1:1 sync → Use {@link file://./sync.zod.ts | Simple Sync}\n * \n * **When to upgrade:**\n * - Need full connector lifecycle (auth, webhooks, rate limits) → Use {@link file://../integration/connector.zod.ts | Enterprise Connector}\n * \n * @see {@link file://./sync.zod.ts} for Level 1 (simple sync)\n * @see {@link file://../integration/connector.zod.ts} for Level 3 (enterprise integration)\n * \n * ## Use Cases\n * \n * 1. **Data Warehouse Population**\n * - Extract from multiple operational systems\n * - Transform to analytical schema\n * - Load into data warehouse\n * \n * 2. **System Integration**\n * - Sync data between CRM and Marketing Automation\n * - Keep product catalog synchronized across e-commerce platforms\n * - Replicate data for backup/disaster recovery\n * \n * 3. **Data Migration**\n * - Move data from legacy systems to modern platforms\n * - Consolidate data from multiple sources\n * - Split monolithic databases into microservices\n * \n * @see https://airbyte.com/\n * @see https://docs.fivetran.com/\n * @see https://nifi.apache.org/\n * \n * @example\n * ```typescript\n * const salesforceToDB: ETLPipeline = {\n * name: 'salesforce_to_postgres',\n * label: 'Salesforce Accounts to PostgreSQL',\n * source: {\n * type: 'api',\n * connector: 'salesforce',\n * config: { object: 'Account' }\n * },\n * destination: {\n * type: 'database',\n * connector: 'postgres',\n * config: { table: 'accounts' }\n * },\n * transformations: [\n * { type: 'map', config: { 'Name': 'account_name' } }\n * ],\n * schedule: '0 2 * * *' // Daily at 2 AM\n * }\n * ```\n */\n\n/**\n * ETL Source/Destination Type\n */\nexport const ETLEndpointTypeSchema = z.enum([\n 'database', // SQL/NoSQL databases\n 'api', // REST/GraphQL APIs\n 'file', // CSV, JSON, XML, Excel files\n 'stream', // Kafka, RabbitMQ, Kinesis\n 'object', // ObjectStack object\n 'warehouse', // Data warehouse (Snowflake, BigQuery, Redshift)\n 'storage', // S3, Azure Blob, Google Cloud Storage\n 'spreadsheet', // Google Sheets, Excel Online\n]);\n\nexport type ETLEndpointType = z.infer<typeof ETLEndpointTypeSchema>;\n\n/**\n * ETL Source Configuration\n */\nexport const ETLSourceSchema = z.object({\n /**\n * Source type\n */\n type: ETLEndpointTypeSchema.describe('Source type'),\n\n /**\n * Connector identifier\n * References a registered connector\n * \n * @example \"salesforce\", \"postgres\", \"mysql\", \"s3\"\n */\n connector: z.string().optional().describe('Connector ID'),\n\n /**\n * Source-specific configuration\n * Structure varies by source type\n * \n * @example For database: { table: 'customers', schema: 'public' }\n * @example For API: { endpoint: '/api/users', method: 'GET' }\n * @example For file: { path: 's3://bucket/data.csv', format: 'csv' }\n */\n config: z.record(z.string(), z.unknown()).describe('Source configuration'),\n\n /**\n * Incremental sync configuration\n * Allows extracting only changed data\n */\n incremental: z.object({\n enabled: z.boolean().default(false),\n cursorField: z.string().describe('Field to track progress (e.g., updated_at)'),\n cursorValue: z.unknown().optional().describe('Last processed value'),\n }).optional().describe('Incremental extraction config'),\n});\n\nexport type ETLSource = z.infer<typeof ETLSourceSchema>;\n\n/**\n * ETL Destination Configuration\n */\nexport const ETLDestinationSchema = z.object({\n /**\n * Destination type\n */\n type: ETLEndpointTypeSchema.describe('Destination type'),\n\n /**\n * Connector identifier\n */\n connector: z.string().optional().describe('Connector ID'),\n\n /**\n * Destination-specific configuration\n */\n config: z.record(z.string(), z.unknown()).describe('Destination configuration'),\n\n /**\n * Write mode\n */\n writeMode: z.enum([\n 'append', // Add new records\n 'overwrite', // Replace all data\n 'upsert', // Insert or update based on key\n 'merge', // Smart merge based on business rules\n ]).default('append').describe('How to write data'),\n\n /**\n * Primary key fields for upsert/merge\n */\n primaryKey: z.array(z.string()).optional().describe('Primary key fields'),\n});\n\nexport type ETLDestination = z.infer<typeof ETLDestinationSchema>;\n\n/**\n * ETL Transformation Type\n */\nexport const ETLTransformationTypeSchema = z.enum([\n 'map', // Field mapping/renaming\n 'filter', // Row filtering\n 'aggregate', // Aggregation/grouping\n 'join', // Joining with other data\n 'script', // Custom JavaScript/Python script\n 'lookup', // Enrich with lookup data\n 'split', // Split one record into multiple\n 'merge', // Merge multiple records into one\n 'normalize', // Data normalization\n 'deduplicate', // Remove duplicates\n]);\n\nexport type ETLTransformationType = z.infer<typeof ETLTransformationTypeSchema>;\n\n/**\n * ETL Transformation Configuration\n */\nexport const ETLTransformationSchema = z.object({\n /**\n * Transformation name\n */\n name: z.string().optional().describe('Transformation name'),\n\n /**\n * Transformation type\n */\n type: ETLTransformationTypeSchema.describe('Transformation type'),\n\n /**\n * Transformation-specific configuration\n * \n * @example For map: { oldField: 'newField' }\n * @example For filter: { condition: 'status == \"active\"' }\n * @example For script: { language: 'javascript', code: '...' }\n */\n config: z.record(z.string(), z.unknown()).describe('Transformation config'),\n\n /**\n * Whether to continue on error\n */\n continueOnError: z.boolean().default(false).describe('Continue on error'),\n});\n\nexport type ETLTransformation = z.infer<typeof ETLTransformationSchema>;\n\n/**\n * ETL Sync Mode\n */\nexport const ETLSyncModeSchema = z.enum([\n 'full', // Full refresh - extract all data every time\n 'incremental', // Only extract changed data\n 'cdc', // Change Data Capture - real-time streaming\n]);\n\nexport type ETLSyncMode = z.infer<typeof ETLSyncModeSchema>;\n\n/**\n * ETL Pipeline Schema\n * \n * Complete definition of a data pipeline from source to destination with transformations.\n */\nexport const ETLPipelineSchema = z.object({\n /**\n * Pipeline identifier (snake_case)\n */\n name: z.string()\n .regex(/^[a-z_][a-z0-9_]*$/)\n .describe('Pipeline identifier (snake_case)'),\n\n /**\n * Human-readable pipeline name\n */\n label: z.string().optional().describe('Pipeline display name'),\n\n /**\n * Pipeline description\n */\n description: z.string().optional().describe('Pipeline description'),\n\n /**\n * Data source configuration\n */\n source: ETLSourceSchema.describe('Data source'),\n\n /**\n * Data destination configuration\n */\n destination: ETLDestinationSchema.describe('Data destination'),\n\n /**\n * Transformation steps\n * Applied in order from source to destination\n */\n transformations: z.array(ETLTransformationSchema)\n .optional()\n .describe('Transformation pipeline'),\n\n /**\n * Sync mode\n */\n syncMode: ETLSyncModeSchema.default('full').describe('Sync mode'),\n\n /**\n * Execution schedule (cron expression)\n * \n * @example \"0 2 * * *\" - Daily at 2 AM\n * @example \"0 *\\/4 * * *\" - Every 4 hours\n * @example \"0 0 * * 0\" - Weekly on Sunday\n */\n schedule: z.string().optional().describe('Cron schedule expression'),\n\n /**\n * Whether pipeline is enabled\n */\n enabled: z.boolean().default(true).describe('Pipeline enabled status'),\n\n /**\n * Retry configuration for failed runs\n */\n retry: z.object({\n maxAttempts: z.number().int().min(0).default(3).describe('Max retry attempts'),\n backoffMs: z.number().int().min(0).default(60000).describe('Backoff in milliseconds'),\n }).optional().describe('Retry configuration'),\n\n /**\n * Notification configuration\n */\n notifications: z.object({\n onSuccess: z.array(z.string()).optional().describe('Email addresses for success notifications'),\n onFailure: z.array(z.string()).optional().describe('Email addresses for failure notifications'),\n }).optional().describe('Notification settings'),\n\n /**\n * Pipeline tags for organization\n */\n tags: z.array(z.string()).optional().describe('Pipeline tags'),\n\n /**\n * Custom metadata\n */\n metadata: z.record(z.string(), z.unknown()).optional().describe('Custom metadata'),\n});\n\nexport type ETLPipeline = z.infer<typeof ETLPipelineSchema>;\n\n/**\n * ETL Run Status\n */\nexport const ETLRunStatusSchema = z.enum([\n 'pending', // Queued for execution\n 'running', // Currently executing\n 'succeeded', // Completed successfully\n 'failed', // Failed with errors\n 'cancelled', // Manually cancelled\n 'timeout', // Timed out\n]);\n\nexport type ETLRunStatus = z.infer<typeof ETLRunStatusSchema>;\n\n/**\n * ETL Pipeline Run Result\n * \n * Result of a pipeline execution\n */\nexport const ETLPipelineRunSchema = z.object({\n /**\n * Run ID\n */\n id: z.string().describe('Run identifier'),\n\n /**\n * Pipeline name\n */\n pipelineName: z.string().describe('Pipeline name'),\n\n /**\n * Run status\n */\n status: ETLRunStatusSchema.describe('Run status'),\n\n /**\n * Start timestamp\n */\n startedAt: z.string().datetime().describe('Start time'),\n\n /**\n * End timestamp\n */\n completedAt: z.string().datetime().optional().describe('Completion time'),\n\n /**\n * Duration in milliseconds\n */\n durationMs: z.number().optional().describe('Duration in ms'),\n\n /**\n * Statistics\n */\n stats: z.object({\n recordsRead: z.number().int().default(0).describe('Records extracted'),\n recordsWritten: z.number().int().default(0).describe('Records loaded'),\n recordsErrored: z.number().int().default(0).describe('Records with errors'),\n bytesProcessed: z.number().int().default(0).describe('Bytes processed'),\n }).optional().describe('Run statistics'),\n\n /**\n * Error information\n */\n error: z.object({\n message: z.string().describe('Error message'),\n code: z.string().optional().describe('Error code'),\n details: z.unknown().optional().describe('Error details'),\n }).optional().describe('Error information'),\n\n /**\n * Execution logs\n */\n logs: z.array(z.string()).optional().describe('Execution logs'),\n});\n\nexport type ETLPipelineRun = z.infer<typeof ETLPipelineRunSchema>;\n\n/**\n * Helper factory for creating ETL pipelines\n */\nexport const ETL = {\n /**\n * Create a simple database-to-database pipeline\n */\n databaseSync: (params: {\n name: string;\n sourceTable: string;\n destTable: string;\n schedule?: string;\n }): ETLPipeline => ({\n name: params.name,\n source: {\n type: 'database',\n config: { table: params.sourceTable },\n },\n destination: {\n type: 'database',\n config: { table: params.destTable },\n writeMode: 'upsert',\n },\n syncMode: 'incremental',\n schedule: params.schedule,\n enabled: true,\n }),\n\n /**\n * Create an API to database pipeline\n */\n apiToDatabase: (params: {\n name: string;\n apiConnector: string;\n destTable: string;\n schedule?: string;\n }): ETLPipeline => ({\n name: params.name,\n source: {\n type: 'api',\n connector: params.apiConnector,\n config: {},\n },\n destination: {\n type: 'database',\n config: { table: params.destTable },\n writeMode: 'append',\n },\n syncMode: 'full',\n schedule: params.schedule,\n enabled: true,\n }),\n} as const;\n","// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.\n\nimport { z } from 'zod';\n\n/**\n * Trigger Registry Protocol\n * \n * Lightweight automation triggers for simple integrations.\n * Inspired by Zapier, n8n, and Workato connector architectures.\n * \n * ## When to use Trigger Registry vs. Integration Connector?\n * \n * **Use `automation/trigger-registry.zod.ts` when:**\n * - Building simple automation triggers (e.g., \"when Slack message received, create task\")\n * - No complex authentication needed (simple API keys, basic auth)\n * - Lightweight, single-purpose integrations\n * - Quick setup with minimal configuration\n * - Webhook-based or polling triggers for automation workflows\n * \n * **Use `integration/connector.zod.ts` when:**\n * - Building enterprise-grade connectors (e.g., Salesforce, SAP, Oracle)\n * - Complex OAuth2/SAML authentication required\n * - Bidirectional sync with field mapping and transformations\n * - Webhook management and rate limiting required\n * - Full CRUD operations and data synchronization\n * \n * ## Use Cases\n * \n * 1. **Simple Automation Triggers**\n * - Slack notifications on record updates\n * - Twilio SMS on workflow events\n * - SendGrid email templates\n * \n * 2. **Lightweight Operations**\n * - Single-action integrations (send, notify, log)\n * - No bidirectional sync required\n * - Webhook receivers for incoming events\n * \n * 3. **Quick Integrations**\n * - Payment webhooks (Stripe, PayPal)\n * - Communication triggers (Twilio, SendGrid, Slack)\n * - Simple API calls to third-party services\n * \n * @see https://zapier.com/developer/documentation/v2/\n * @see https://docs.n8n.io/integrations/creating-nodes/\n * @see ../../integration/connector.zod.ts for enterprise connectors\n * \n * @example\n * ```typescript\n * const slackNotifier: Connector = {\n * id: 'slack_notify',\n * name: 'Slack Notification',\n * category: 'communication',\n * authentication: {\n * type: 'apiKey',\n * fields: [{ name: 'webhook_url', label: 'Webhook URL', type: 'url' }]\n * },\n * operations: [\n * { id: 'send_message', name: 'Send Message', type: 'action' }\n * ]\n * }\n * ```\n */\n\n/**\n * Connector Category\n */\nexport const ConnectorCategorySchema = z.enum([\n 'crm', // Customer Relationship Management\n 'payment', // Payment processors\n 'communication', // Email, SMS, Chat\n 'storage', // File storage\n 'analytics', // Analytics platforms\n 'database', // Databases\n 'marketing', // Marketing automation\n 'accounting', // Accounting software\n 'hr', // Human resources\n 'productivity', // Productivity tools\n 'ecommerce', // E-commerce platforms\n 'support', // Customer support\n 'devtools', // Developer tools\n 'social', // Social media\n 'other', // Other category\n]);\n\nexport type ConnectorCategory = z.infer<typeof ConnectorCategorySchema>;\n\n/**\n * Authentication Type\n */\nexport const AuthenticationTypeSchema = z.enum([\n 'none', // No authentication\n 'apiKey', // API key\n 'basic', // Basic auth (username/password)\n 'bearer', // Bearer token\n 'oauth1', // OAuth 1.0\n 'oauth2', // OAuth 2.0\n 'custom', // Custom authentication\n]);\n\nexport type AuthenticationType = z.infer<typeof AuthenticationTypeSchema>;\n\n/**\n * Authentication Field Schema\n */\nexport const AuthFieldSchema = z.object({\n /**\n * Field name (machine name)\n */\n name: z.string()\n .regex(/^[a-z_][a-z0-9_]*$/)\n .describe('Field name (snake_case)'),\n\n /**\n * Field label\n */\n label: z.string().describe('Field label'),\n\n /**\n * Field type\n */\n type: z.enum(['text', 'password', 'url', 'select'])\n .default('text')\n .describe('Field type'),\n\n /**\n * Field description\n */\n description: z.string().optional().describe('Field description'),\n\n /**\n * Whether field is required\n */\n required: z.boolean().default(true).describe('Required field'),\n\n /**\n * Default value\n */\n default: z.string().optional().describe('Default value'),\n\n /**\n * Options for select fields\n */\n options: z.array(z.object({\n label: z.string(),\n value: z.string(),\n })).optional().describe('Select field options'),\n\n /**\n * Placeholder text\n */\n placeholder: z.string().optional().describe('Placeholder text'),\n});\n\nexport type AuthField = z.infer<typeof AuthFieldSchema>;\n\n/**\n * OAuth 2.0 Configuration\n */\nexport const OAuth2ConfigSchema = z.object({\n /**\n * Authorization URL\n */\n authorizationUrl: z.string().url().describe('Authorization endpoint URL'),\n\n /**\n * Token URL\n */\n tokenUrl: z.string().url().describe('Token endpoint URL'),\n\n /**\n * Scopes to request\n */\n scopes: z.array(z.string()).optional().describe('OAuth scopes'),\n\n /**\n * Client ID field name\n */\n clientIdField: z.string().default('client_id').describe('Client ID field name'),\n\n /**\n * Client secret field name\n */\n clientSecretField: z.string().default('client_secret').describe('Client secret field name'),\n});\n\nexport type OAuth2Config = z.infer<typeof OAuth2ConfigSchema>;\n\n/**\n * Authentication Configuration\n */\nexport const AuthenticationSchema = z.object({\n /**\n * Authentication type\n */\n type: AuthenticationTypeSchema.describe('Authentication type'),\n\n /**\n * Authentication fields\n * Configuration fields needed for this auth type\n */\n fields: z.array(AuthFieldSchema).optional().describe('Authentication fields'),\n\n /**\n * OAuth 2.0 configuration (when type is oauth2)\n */\n oauth2: OAuth2ConfigSchema.optional().describe('OAuth 2.0 configuration'),\n\n /**\n * Test authentication instructions\n */\n test: z.object({\n url: z.string().optional().describe('Test endpoint URL'),\n method: z.enum(['GET', 'POST', 'PUT', 'DELETE']).default('GET').describe('HTTP method'),\n }).optional().describe('Authentication test configuration'),\n});\n\nexport type Authentication = z.infer<typeof AuthenticationSchema>;\n\n/**\n * Connector Operation Type\n */\nexport const OperationTypeSchema = z.enum([\n 'read', // Read/query data\n 'write', // Create/update data\n 'delete', // Delete data\n 'search', // Search operation\n 'trigger', // Webhook/polling trigger\n 'action', // Custom action\n]);\n\nexport type OperationType = z.infer<typeof OperationTypeSchema>;\n\n/**\n * Operation Parameter Schema\n */\nexport const OperationParameterSchema = z.object({\n /**\n * Parameter name\n */\n name: z.string().describe('Parameter name'),\n\n /**\n * Parameter label\n */\n label: z.string().describe('Parameter label'),\n\n /**\n * Parameter description\n */\n description: z.string().optional().describe('Parameter description'),\n\n /**\n * Parameter type\n */\n type: z.enum(['string', 'number', 'boolean', 'array', 'object', 'date', 'file'])\n .describe('Parameter type'),\n\n /**\n * Whether parameter is required\n */\n required: z.boolean().default(false).describe('Required parameter'),\n\n /**\n * Default value\n */\n default: z.unknown().optional().describe('Default value'),\n\n /**\n * Validation schema\n */\n validation: z.record(z.string(), z.unknown()).optional().describe('Validation rules'),\n\n /**\n * Dynamic options function\n */\n dynamicOptions: z.string().optional().describe('Function to load dynamic options'),\n});\n\nexport type OperationParameter = z.infer<typeof OperationParameterSchema>;\n\n/**\n * Connector Operation Schema\n */\nexport const ConnectorOperationSchema = z.object({\n /**\n * Operation identifier\n */\n id: z.string()\n .regex(/^[a-z_][a-z0-9_]*$/)\n .describe('Operation ID (snake_case)'),\n\n /**\n * Operation name\n */\n name: z.string().describe('Operation name'),\n\n /**\n * Operation description\n */\n description: z.string().optional().describe('Operation description'),\n\n /**\n * Operation type\n */\n type: OperationTypeSchema.describe('Operation type'),\n\n /**\n * Input parameters\n */\n inputSchema: z.array(OperationParameterSchema)\n .optional()\n .describe('Input parameters'),\n\n /**\n * Output schema\n */\n outputSchema: z.record(z.string(), z.unknown())\n .optional()\n .describe('Output schema'),\n\n /**\n * Sample output for documentation\n */\n sampleOutput: z.unknown().optional().describe('Sample output'),\n\n /**\n * Whether operation supports pagination\n */\n supportsPagination: z.boolean().default(false).describe('Supports pagination'),\n\n /**\n * Whether operation supports filtering\n */\n supportsFiltering: z.boolean().default(false).describe('Supports filtering'),\n});\n\nexport type ConnectorOperation = z.infer<typeof ConnectorOperationSchema>;\n\n/**\n * Connector Trigger Schema\n * \n * Triggers are special operations that watch for events and initiate workflows.\n */\nexport const ConnectorTriggerSchema = z.object({\n /**\n * Trigger identifier\n */\n id: z.string()\n .regex(/^[a-z_][a-z0-9_]*$/)\n .describe('Trigger ID (snake_case)'),\n\n /**\n * Trigger name\n */\n name: z.string().describe('Trigger name'),\n\n /**\n * Trigger description\n */\n description: z.string().optional().describe('Trigger description'),\n\n /**\n * Trigger type\n */\n type: z.enum(['webhook', 'polling', 'stream'])\n .describe('Trigger mechanism'),\n\n /**\n * Trigger configuration\n */\n config: z.record(z.string(), z.unknown())\n .optional()\n .describe('Trigger configuration'),\n\n /**\n * Output schema\n */\n outputSchema: z.record(z.string(), z.unknown())\n .optional()\n .describe('Event payload schema'),\n\n /**\n * Polling interval (for polling triggers)\n * In milliseconds\n */\n pollingIntervalMs: z.number().int().min(1000)\n .optional()\n .describe('Polling interval in ms'),\n});\n\nexport type ConnectorTrigger = z.infer<typeof ConnectorTriggerSchema>;\n\n/**\n * Connector Schema\n * \n * Complete definition of a connector to an external system.\n */\nexport const ConnectorSchema = z.object({\n /**\n * Connector identifier\n * Must be globally unique\n */\n id: z.string()\n .regex(/^[a-z_][a-z0-9_]*$/)\n .describe('Connector ID (snake_case)'),\n\n /**\n * Connector name\n */\n name: z.string().describe('Connector name'),\n\n /**\n * Connector description\n */\n description: z.string().optional().describe('Connector description'),\n\n /**\n * Connector version (semver)\n */\n version: z.string().optional().describe('Connector version'),\n\n /**\n * Connector icon URL or name\n */\n icon: z.string().optional().describe('Connector icon'),\n\n /**\n * Connector category\n */\n category: ConnectorCategorySchema.describe('Connector category'),\n\n /**\n * Base URL for API calls\n */\n baseUrl: z.string().url().optional().describe('API base URL'),\n\n /**\n * Authentication configuration\n */\n authentication: AuthenticationSchema.describe('Authentication config'),\n\n /**\n * Available operations\n */\n operations: z.array(ConnectorOperationSchema)\n .optional()\n .describe('Connector operations'),\n\n /**\n * Available triggers\n */\n triggers: z.array(ConnectorTriggerSchema)\n .optional()\n .describe('Connector triggers'),\n\n /**\n * Rate limiting information\n */\n rateLimit: z.object({\n requestsPerSecond: z.number().optional().describe('Max requests per second'),\n requestsPerMinute: z.number().optional().describe('Max requests per minute'),\n requestsPerHour: z.number().optional().describe('Max requests per hour'),\n }).optional().describe('Rate limiting'),\n\n /**\n * Connector author\n */\n author: z.string().optional().describe('Connector author'),\n\n /**\n * Documentation URL\n */\n documentation: z.string().url().optional().describe('Documentation URL'),\n\n /**\n * Homepage URL\n */\n homepage: z.string().url().optional().describe('Homepage URL'),\n\n /**\n * License\n */\n license: z.string().optional().describe('License (SPDX identifier)'),\n\n /**\n * Tags for discovery\n */\n tags: z.array(z.string()).optional().describe('Connector tags'),\n\n /**\n * Whether connector is verified/certified\n */\n verified: z.boolean().default(false).describe('Verified connector'),\n\n /**\n * Custom metadata\n */\n metadata: z.record(z.string(), z.unknown()).optional().describe('Custom metadata'),\n});\n\nexport type Connector = z.infer<typeof ConnectorSchema>;\n\n/**\n * Connector Instance Schema\n * \n * A configured instance of a connector with credentials.\n */\nexport const ConnectorInstanceSchema = z.object({\n /**\n * Instance ID\n */\n id: z.string().describe('Instance ID'),\n\n /**\n * Connector ID this instance uses\n */\n connectorId: z.string().describe('Connector ID'),\n\n /**\n * Instance name\n */\n name: z.string().describe('Instance name'),\n\n /**\n * Instance description\n */\n description: z.string().optional().describe('Instance description'),\n\n /**\n * Authentication credentials (encrypted)\n */\n credentials: z.record(z.string(), z.unknown()).describe('Encrypted credentials'),\n\n /**\n * Additional configuration\n */\n config: z.record(z.string(), z.unknown()).optional().describe('Additional config'),\n\n /**\n * Whether instance is active\n */\n active: z.boolean().default(true).describe('Instance active status'),\n\n /**\n * Created timestamp\n */\n createdAt: z.string().datetime().optional().describe('Creation time'),\n\n /**\n * Last tested timestamp\n */\n lastTestedAt: z.string().datetime().optional().describe('Last test time'),\n\n /**\n * Test status\n */\n testStatus: z.enum(['unknown', 'success', 'failed'])\n .default('unknown')\n .describe('Connection test status'),\n});\n\nexport type ConnectorInstance = z.infer<typeof ConnectorInstanceSchema>;\n\n/**\n * Helper factory for creating connectors\n */\nexport const Connector = {\n /**\n * Create a basic API key connector\n */\n apiKey: (params: {\n id: string;\n name: string;\n category: ConnectorCategory;\n baseUrl: string;\n }): Connector => ({\n id: params.id,\n name: params.name,\n category: params.category,\n baseUrl: params.baseUrl,\n authentication: {\n type: 'apiKey',\n fields: [\n {\n name: 'api_key',\n label: 'API Key',\n type: 'password',\n required: true,\n },\n ],\n },\n verified: false,\n }),\n\n /**\n * Create an OAuth 2.0 connector\n */\n oauth2: (params: {\n id: string;\n name: string;\n category: ConnectorCategory;\n baseUrl: string;\n authUrl: string;\n tokenUrl: string;\n scopes?: string[];\n }): Connector => ({\n id: params.id,\n name: params.name,\n category: params.category,\n baseUrl: params.baseUrl,\n authentication: {\n type: 'oauth2',\n oauth2: {\n authorizationUrl: params.authUrl,\n tokenUrl: params.tokenUrl,\n clientIdField: 'client_id',\n clientSecretField: 'client_secret',\n scopes: params.scopes,\n },\n },\n verified: false,\n }),\n} as const;\n","// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.\n\nimport { z } from 'zod';\n\n/**\n * Base Field Mapping Protocol\n * \n * Shared by: ETL, Sync, Connector, External Lookup\n * \n * This module provides the canonical field mapping schema used across\n * ObjectStack for data transformation and synchronization.\n * \n * **Use Cases:**\n * - ETL pipelines (data/mapping.zod.ts)\n * - Data synchronization (automation/sync.zod.ts)\n * - Integration connectors (integration/connector.zod.ts)\n * - External lookups (data/external-lookup.zod.ts)\n * \n * @example Basic field mapping\n * ```typescript\n * const mapping: FieldMapping = {\n * source: 'external_user_id',\n * target: 'user_id',\n * };\n * ```\n * \n * @example With transformation\n * ```typescript\n * const mapping: FieldMapping = {\n * source: 'user_name',\n * target: 'name',\n * transform: { type: 'cast', targetType: 'string' },\n * defaultValue: 'Unknown'\n * };\n * ```\n */\n\n/**\n * Transform Type Schema\n * \n * Defines the type of transformation to apply to a field value.\n * Implementations can extend this for domain-specific transforms.\n */\nexport const TransformTypeSchema = z.discriminatedUnion('type', [\n z.object({\n type: z.literal('constant'),\n value: z.unknown().describe('Constant value to use'),\n }).describe('Set a constant value'),\n \n z.object({\n type: z.literal('cast'),\n targetType: z.enum(['string', 'number', 'boolean', 'date']).describe('Target data type'),\n }).describe('Cast to a specific data type'),\n \n z.object({\n type: z.literal('lookup'),\n table: z.string().describe('Lookup table name'),\n keyField: z.string().describe('Field to match on'),\n valueField: z.string().describe('Field to retrieve'),\n }).describe('Lookup value from another table'),\n \n z.object({\n type: z.literal('javascript'),\n expression: z.string().describe('JavaScript expression (e.g., \"value.toUpperCase()\")'),\n }).describe('Custom JavaScript transformation'),\n \n z.object({\n type: z.literal('map'),\n mappings: z.record(z.string(), z.unknown()).describe('Value mappings (e.g., {\"Active\": \"active\"})'),\n }).describe('Map values using a dictionary'),\n]);\n\nexport type TransformType = z.infer<typeof TransformTypeSchema>;\n\n/**\n * Field Mapping Schema\n * \n * Base schema for mapping fields between source and target systems.\n * \n * **NAMING CONVENTION:**\n * - source: Field name in the source system\n * - target: Field name in the target system (should be snake_case for ObjectStack)\n * \n * @example\n * ```typescript\n * {\n * source: 'FirstName',\n * target: 'first_name',\n * transform: { type: 'cast', targetType: 'string' },\n * defaultValue: ''\n * }\n * ```\n */\nexport const FieldMappingSchema = z.object({\n /**\n * Source field name\n */\n source: z.string().describe('Source field name'),\n \n /**\n * Target field name (should be snake_case for ObjectStack)\n */\n target: z.string().describe('Target field name'),\n \n /**\n * Transformation to apply\n */\n transform: TransformTypeSchema.optional().describe('Transformation to apply'),\n \n /**\n * Default value if source is null/undefined\n */\n defaultValue: z.unknown().optional().describe('Default if source is null/undefined'),\n});\n\nexport type FieldMapping = z.infer<typeof FieldMappingSchema>;\n","// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.\n\nimport { z } from 'zod';\nimport { FieldMappingSchema } from '../shared/mapping.zod';\n\n/**\n * Data Sync Protocol - LEVEL 1: Simple Synchronization\n * \n * Inspired by Salesforce Connect, Segment Sync, and Census Reverse ETL.\n * \n * **Positioning in 3-Layer Architecture:**\n * - **L1: Simple Sync** (THIS FILE) - Business users - Sync Salesforce to Sheets\n * - **L2: ETL Pipeline** (automation/etl.zod.ts) - Data engineers - Aggregate 10 sources to warehouse\n * - **L3: Enterprise Connector** (integration/connector.zod.ts) - System integrators - Full SAP integration\n * \n * Data sync provides bidirectional or unidirectional data synchronization\n * between ObjectStack and external systems, maintaining data consistency\n * across platforms.\n * \n * **SCOPE: Simple field mappings only. NO complex transformations.**\n * For complex transformations (joins, aggregates, custom SQL), use ETL Pipeline (Level 2).\n * \n * ## When to Use This Layer\n * \n * **Use Simple Sync when:**\n * - Syncing 1:1 fields between two systems\n * - Simple field transformations (uppercase, cast, etc.)\n * - No complex logic required\n * - Business users need to configure integrations\n * \n * **Examples:**\n * - Salesforce Contact ↔ Google Sheets\n * - HubSpot Company ↔ CRM Account\n * - Shopify Orders → Accounting System\n * \n * **When to upgrade:**\n * - Need multi-source joins → Use {@link file://./etl.zod.ts | ETL Pipeline}\n * - Need complex authentication/webhooks → Use {@link file://../integration/connector.zod.ts | Enterprise Connector}\n * - Need aggregations or data warehousing → Use {@link file://./etl.zod.ts | ETL Pipeline}\n * \n * @see {@link file://./etl.zod.ts} for Level 2 (data engineering)\n * @see {@link file://../integration/connector.zod.ts} for Level 3 (enterprise integration)\n * \n * ## Use Cases\n * \n * 1. **CRM Integration**\n * - Sync contacts between ObjectStack and Salesforce\n * - Keep opportunity data synchronized\n * - Bidirectional updates\n * \n * 2. **Customer Data Platform (CDP)**\n * - Sync user profiles to Segment\n * - Enrichment data from Clearbit\n * - Marketing automation sync\n * \n * 3. **Operational Analytics**\n * - Sync production data to analytics warehouse\n * - Real-time dashboards\n * - Business intelligence\n * \n * @see https://help.salesforce.com/s/articleView?id=sf.platform_connect_about.htm\n * @see https://segment.com/docs/connections/sync/\n * @see https://www.getcensus.com/\n * \n * @example\n * ```typescript\n * const contactSync: DataSyncConfig = {\n * name: 'salesforce_contact_sync',\n * label: 'Salesforce Contact Sync',\n * source: {\n * object: 'contact',\n * filters: { status: 'active' }\n * },\n * destination: {\n * connector: 'salesforce',\n * operation: 'upsert_contact',\n * mapping: {\n * first_name: 'FirstName',\n * last_name: 'LastName',\n * email: 'Email'\n * }\n * },\n * syncMode: 'incremental',\n * schedule: '0 * * * *' // Hourly\n * }\n * ```\n */\n\n/**\n * Sync Direction\n */\nexport const SyncDirectionSchema = z.enum([\n 'push', // ObjectStack -> External (one-way)\n 'pull', // External -> ObjectStack (one-way)\n 'bidirectional', // Both directions\n]);\n\nexport type SyncDirection = z.infer<typeof SyncDirectionSchema>;\n\n/**\n * Sync Mode\n */\nexport const SyncModeSchema = z.enum([\n 'full', // Full refresh every time\n 'incremental', // Only sync changed records\n 'realtime', // Real-time streaming sync\n]);\n\nexport type SyncMode = z.infer<typeof SyncModeSchema>;\n\n/**\n * Conflict Resolution Strategy\n */\nexport const ConflictResolutionSchema = z.enum([\n 'source_wins', // Source system always wins\n 'destination_wins', // Destination system always wins\n 'latest_wins', // Most recently modified wins\n 'manual', // Flag for manual resolution\n 'merge', // Smart merge (custom logic)\n]);\n\nexport type ConflictResolution = z.infer<typeof ConflictResolutionSchema>;\n\n/**\n * Field Mapping for Data Sync\n * \n * Uses the canonical field mapping protocol from shared/mapping.zod.ts\n * for simple 1:1 field transformations.\n * \n * @see {@link FieldMappingSchema} for the base field mapping schema\n */\n\n/**\n * Data Source Configuration\n */\nexport const DataSourceConfigSchema = z.object({\n /**\n * Source object name\n * For ObjectStack objects\n */\n object: z.string().optional().describe('ObjectStack object name'),\n\n /**\n * Filter conditions\n * Only sync records matching these filters\n */\n filters: z.unknown().optional().describe('Filter conditions'),\n\n /**\n * Fields to include\n * If not specified, all fields are synced\n */\n fields: z.array(z.string()).optional().describe('Fields to sync'),\n\n /**\n * External connector instance ID\n * For external data sources\n */\n connectorInstanceId: z.string().optional().describe('Connector instance ID'),\n\n /**\n * External resource identifier\n * e.g., Salesforce object name, database table, API endpoint\n */\n externalResource: z.string().optional().describe('External resource ID'),\n});\n\nexport type DataSourceConfig = z.infer<typeof DataSourceConfigSchema>;\n\n/**\n * Data Destination Configuration\n */\nexport const DataDestinationConfigSchema = z.object({\n /**\n * Destination object name\n * For ObjectStack objects\n */\n object: z.string().optional().describe('ObjectStack object name'),\n\n /**\n * Connector instance ID\n * For external destinations\n */\n connectorInstanceId: z.string().optional().describe('Connector instance ID'),\n\n /**\n * Operation to perform\n */\n operation: z.enum([\n 'insert', // Create new records only\n 'update', // Update existing records only\n 'upsert', // Insert or update based on key\n 'delete', // Delete records\n 'sync', // Full synchronization\n ]).describe('Sync operation'),\n\n /**\n * Field mappings\n * Maps source fields to destination fields\n */\n mapping: z.union([\n z.record(z.string(), z.string()), // Simple mapping: { sourceField: 'destField' }\n z.array(FieldMappingSchema), // Advanced mapping with transformations\n ]).optional().describe('Field mappings'),\n\n /**\n * External resource identifier\n */\n externalResource: z.string().optional().describe('External resource ID'),\n\n /**\n * Match key for upsert operations\n * Fields to use for matching existing records\n */\n matchKey: z.array(z.string()).optional().describe('Match key fields'),\n});\n\nexport type DataDestinationConfig = z.infer<typeof DataDestinationConfigSchema>;\n\n/**\n * Data Sync Configuration Schema\n * \n * Complete definition of a data synchronization between systems.\n */\nexport const DataSyncConfigSchema = z.object({\n /**\n * Sync configuration name (snake_case)\n */\n name: z.string()\n .regex(/^[a-z_][a-z0-9_]*$/)\n .describe('Sync configuration name (snake_case)'),\n\n /**\n * Human-readable label\n */\n label: z.string().optional().describe('Sync display name'),\n\n /**\n * Description\n */\n description: z.string().optional().describe('Sync description'),\n\n /**\n * Source configuration\n */\n source: DataSourceConfigSchema.describe('Data source'),\n\n /**\n * Destination configuration\n */\n destination: DataDestinationConfigSchema.describe('Data destination'),\n\n /**\n * Sync direction\n */\n direction: SyncDirectionSchema.default('push').describe('Sync direction'),\n\n /**\n * Sync mode\n */\n syncMode: SyncModeSchema.default('incremental').describe('Sync mode'),\n\n /**\n * Conflict resolution strategy\n */\n conflictResolution: ConflictResolutionSchema\n .default('latest_wins')\n .describe('Conflict resolution'),\n\n /**\n * Execution schedule (cron expression)\n * For scheduled syncs\n * \n * @example \"0 * * * *\" - Hourly\n * @example \"*\\/15 * * * *\" - Every 15 minutes\n */\n schedule: z.string().optional().describe('Cron schedule'),\n\n /**\n * Whether sync is enabled\n */\n enabled: z.boolean().default(true).describe('Sync enabled'),\n\n /**\n * Change tracking field\n * Field to track when records were last modified\n * Used for incremental sync\n * \n * @example \"updated_at\", \"modified_date\"\n */\n changeTrackingField: z.string()\n .optional()\n .describe('Field for change tracking'),\n\n /**\n * Batch size\n * Number of records to process per batch\n */\n batchSize: z.number().int().min(1).max(10000)\n .default(100)\n .describe('Batch size for processing'),\n\n /**\n * Retry configuration\n */\n retry: z.object({\n maxAttempts: z.number().int().min(0).default(3).describe('Max retries'),\n backoffMs: z.number().int().min(0).default(30000).describe('Backoff duration'),\n }).optional().describe('Retry configuration'),\n\n /**\n * Pre-sync validation rules\n */\n validation: z.object({\n required: z.array(z.string()).optional().describe('Required fields'),\n unique: z.array(z.string()).optional().describe('Unique constraint fields'),\n custom: z.array(z.object({\n name: z.string(),\n condition: z.string().describe('Validation condition'),\n message: z.string().describe('Error message'),\n })).optional().describe('Custom validation rules'),\n }).optional().describe('Validation rules'),\n\n /**\n * Error handling configuration\n */\n errorHandling: z.object({\n onValidationError: z.enum(['skip', 'fail', 'log']).default('skip'),\n onSyncError: z.enum(['skip', 'fail', 'retry']).default('retry'),\n notifyOnError: z.array(z.string()).optional().describe('Email notifications'),\n }).optional().describe('Error handling'),\n\n /**\n * Performance optimization\n */\n optimization: z.object({\n parallelBatches: z.boolean().default(false).describe('Process batches in parallel'),\n cacheEnabled: z.boolean().default(true).describe('Enable caching'),\n compressionEnabled: z.boolean().default(false).describe('Enable compression'),\n }).optional().describe('Performance optimization'),\n\n /**\n * Audit and logging\n */\n audit: z.object({\n logLevel: z.enum(['none', 'error', 'warn', 'info', 'debug']).default('info'),\n retainLogsForDays: z.number().int().min(1).default(30),\n trackChanges: z.boolean().default(true).describe('Track all changes'),\n }).optional().describe('Audit configuration'),\n\n /**\n * Tags for organization\n */\n tags: z.array(z.string()).optional().describe('Sync tags'),\n\n /**\n * Custom metadata\n */\n metadata: z.record(z.string(), z.unknown()).optional().describe('Custom metadata'),\n});\n\nexport type DataSyncConfig = z.infer<typeof DataSyncConfigSchema>;\n\n/**\n * Sync Execution Status\n */\nexport const SyncExecutionStatusSchema = z.enum([\n 'pending', // Queued\n 'running', // Currently executing\n 'completed', // Successfully completed\n 'partial', // Completed with some errors\n 'failed', // Failed\n 'cancelled', // Manually cancelled\n]);\n\nexport type SyncExecutionStatus = z.infer<typeof SyncExecutionStatusSchema>;\n\n/**\n * Sync Execution Result Schema\n * \n * Result of a sync execution.\n */\nexport const SyncExecutionResultSchema = z.object({\n /**\n * Execution ID\n */\n id: z.string().describe('Execution ID'),\n\n /**\n * Sync configuration name\n */\n syncName: z.string().describe('Sync name'),\n\n /**\n * Execution status\n */\n status: SyncExecutionStatusSchema.describe('Execution status'),\n\n /**\n * Start timestamp\n */\n startedAt: z.string().datetime().describe('Start time'),\n\n /**\n * End timestamp\n */\n completedAt: z.string().datetime().optional().describe('Completion time'),\n\n /**\n * Duration in milliseconds\n */\n durationMs: z.number().optional().describe('Duration in ms'),\n\n /**\n * Statistics\n */\n stats: z.object({\n recordsProcessed: z.number().int().default(0).describe('Total records processed'),\n recordsInserted: z.number().int().default(0).describe('Records inserted'),\n recordsUpdated: z.number().int().default(0).describe('Records updated'),\n recordsDeleted: z.number().int().default(0).describe('Records deleted'),\n recordsSkipped: z.number().int().default(0).describe('Records skipped'),\n recordsErrored: z.number().int().default(0).describe('Records with errors'),\n conflictsDetected: z.number().int().default(0).describe('Conflicts detected'),\n conflictsResolved: z.number().int().default(0).describe('Conflicts resolved'),\n }).optional().describe('Execution statistics'),\n\n /**\n * Errors encountered\n */\n errors: z.array(z.object({\n recordId: z.string().optional().describe('Record ID'),\n field: z.string().optional().describe('Field name'),\n message: z.string().describe('Error message'),\n code: z.string().optional().describe('Error code'),\n })).optional().describe('Errors'),\n\n /**\n * Execution logs\n */\n logs: z.array(z.string()).optional().describe('Execution logs'),\n});\n\nexport type SyncExecutionResult = z.infer<typeof SyncExecutionResultSchema>;\n\n/**\n * Helper factory for creating sync configurations\n */\nexport const Sync = {\n /**\n * Create a simple object-to-object sync\n */\n objectSync: (params: {\n name: string;\n sourceObject: string;\n destObject: string;\n mapping: Record<string, string>;\n schedule?: string;\n }): DataSyncConfig => ({\n name: params.name,\n source: {\n object: params.sourceObject,\n },\n destination: {\n object: params.destObject,\n operation: 'upsert',\n mapping: params.mapping,\n },\n direction: 'push',\n syncMode: 'incremental',\n conflictResolution: 'latest_wins',\n batchSize: 100,\n schedule: params.schedule,\n enabled: true,\n }),\n\n /**\n * Create a connector sync\n */\n connectorSync: (params: {\n name: string;\n sourceObject: string;\n connectorInstanceId: string;\n externalResource: string;\n mapping: Record<string, string>;\n schedule?: string;\n }): DataSyncConfig => ({\n name: params.name,\n source: {\n object: params.sourceObject,\n },\n destination: {\n connectorInstanceId: params.connectorInstanceId,\n externalResource: params.externalResource,\n operation: 'upsert',\n mapping: params.mapping,\n },\n direction: 'push',\n syncMode: 'incremental',\n conflictResolution: 'latest_wins',\n batchSize: 100,\n schedule: params.schedule,\n enabled: true,\n }),\n\n /**\n * Create a bidirectional sync\n */\n bidirectionalSync: (params: {\n name: string;\n object: string;\n connectorInstanceId: string;\n externalResource: string;\n mapping: Record<string, string>;\n schedule?: string;\n }): DataSyncConfig => ({\n name: params.name,\n source: {\n object: params.object,\n },\n destination: {\n connectorInstanceId: params.connectorInstanceId,\n externalResource: params.externalResource,\n operation: 'sync',\n mapping: params.mapping,\n },\n direction: 'bidirectional',\n syncMode: 'incremental',\n conflictResolution: 'latest_wins',\n batchSize: 100,\n schedule: params.schedule,\n enabled: true,\n }),\n} as const;\n","// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.\n\nimport { z } from 'zod';\nimport { SnakeCaseIdentifierSchema } from '../shared/identifiers.zod';\n\n/**\n * XState-inspired State Machine Protocol\n * Used to define strict business logic constraints and lifecycle management.\n * Prevent AI \"hallucinations\" by enforcing valid valid transitions.\n */\n\n// --- Primitives ---\n\n/**\n * References a named action (side effect)\n * Can be a script, a webhook, or a field update.\n */\nexport const ActionRefSchema = z.union([\n z.string().describe('Action Name'),\n z.object({\n type: z.string(), // e.g., 'xstate.assign', 'log', 'email'\n params: z.record(z.string(), z.unknown()).optional()\n })\n]);\n\n/**\n * References a named condition (guard)\n * Must evaluate to true for the transition to occur.\n */\nexport const GuardRefSchema = z.union([\n z.string().describe('Guard Name (e.g., \"isManager\", \"amountGT1000\")'),\n z.object({\n type: z.string(),\n params: z.record(z.string(), z.unknown()).optional()\n })\n]);\n\n// --- Core Structure ---\n\n/**\n * State Transition Definition\n * \"When EVENT happens, if GUARD is true, go to TARGET and run ACTIONS\"\n */\nexport const TransitionSchema = z.object({\n target: z.string().optional().describe('Target State ID'),\n cond: GuardRefSchema.optional().describe('Condition (Guard) required to take this path'),\n actions: z.array(ActionRefSchema).optional().describe('Actions to execute during transition'),\n description: z.string().optional().describe('Human readable description of this rule'),\n});\n\n/**\n * Event Definition (Signals)\n */\nexport const EventSchema = z.object({\n type: z.string().describe('Event Type (e.g. \"APPROVE\", \"REJECT\", \"Submit\")'),\n // Payload validation schema could go here if we want deep validation\n schema: z.record(z.string(), z.unknown()).optional().describe('Expected event payload structure'),\n});\n\nexport type ActionRef = z.infer<typeof ActionRefSchema>;\nexport type Transition = z.infer<typeof TransitionSchema>;\n\nexport type StateNodeConfig = {\n type?: 'atomic' | 'compound' | 'parallel' | 'final' | 'history';\n entry?: ActionRef[];\n exit?: ActionRef[];\n on?: Record<string, string | Transition | Transition[]>;\n always?: Transition[];\n initial?: string;\n states?: Record<string, StateNodeConfig>;\n meta?: {\n label?: string;\n description?: string;\n color?: string;\n aiInstructions?: string;\n };\n};\n\n/**\n * State Node Definition\n */\nexport const StateNodeSchema: z.ZodType<StateNodeConfig> = z.lazy(() => z.object({\n /** Type of state */\n type: z.enum(['atomic', 'compound', 'parallel', 'final', 'history']).default('atomic'),\n \n /** Entry/Exit Actions */\n entry: z.array(ActionRefSchema).optional().describe('Actions to run when entering this state'),\n exit: z.array(ActionRefSchema).optional().describe('Actions to run when leaving this state'),\n \n /** Transitions (Events) */\n on: z.record(z.string(), z.union([\n z.string(), // Shorthand target\n TransitionSchema, \n z.array(TransitionSchema)\n ])).optional().describe('Map of Event Type -> Transition Definition'),\n \n /** Always Transitions (Eventless) */\n always: z.array(TransitionSchema).optional(),\n\n /** Nesting (Hierarchical States) */\n initial: z.string().optional().describe('Initial child state (if compound)'),\n states: z.record(z.string(), StateNodeSchema).optional(),\n \n /** Metadata for UI/AI */\n meta: z.object({\n label: z.string().optional(),\n description: z.string().optional(),\n color: z.string().optional(), // For UI diagrams\n // Instructions for AI Agent when in this state\n aiInstructions: z.string().optional().describe('Specific instructions for AI when in this state'),\n }).optional(),\n}));\n\n/**\n * Top-Level State Machine Definition\n */\nexport const StateMachineSchema = z.object({\n id: SnakeCaseIdentifierSchema.describe('Unique Machine ID'),\n description: z.string().optional(),\n \n /** Context (Memory) Schema */\n contextSchema: z.record(z.string(), z.unknown()).optional().describe('Zod Schema for the machine context/memory'),\n \n /** Initial State */\n initial: z.string().describe('Initial State ID'),\n \n /** State Definitions */\n states: z.record(z.string(), StateNodeSchema).describe('State Nodes'),\n \n /** Global Listeners */\n on: z.record(z.string(), z.union([z.string(), TransitionSchema, z.array(TransitionSchema)])).optional(),\n});\n\nexport type StateMachineConfig = z.infer<typeof StateMachineSchema>;\n"]}
1
+ {"version":3,"sources":["../../src/shared/identifiers.zod.ts","../../src/automation/workflow.zod.ts","../../src/automation/flow.zod.ts","../../src/automation/execution.zod.ts","../../src/automation/webhook.zod.ts","../../src/automation/approval.zod.ts","../../src/automation/etl.zod.ts","../../src/automation/trigger-registry.zod.ts","../../src/shared/mapping.zod.ts","../../src/automation/sync.zod.ts","../../src/automation/state-machine.zod.ts","../../src/automation/node-executor.zod.ts","../../src/automation/bpmn-interop.zod.ts"],"names":["z"],"mappings":"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","file":"index.mjs","sourcesContent":["// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.\n\nimport { z } from 'zod';\n\n/**\n * System Identifier Schema\n * \n * Universal naming convention for all machine identifiers (API Names) in ObjectStack.\n * Enforces lowercase with underscores or dots to ensure:\n * - Cross-platform compatibility (case-insensitive filesystems)\n * - URL-friendliness (no encoding needed)\n * - Database consistency (no collation issues)\n * - Security (no case-sensitivity bugs in permission checks)\n * \n * **Applies to all metadata that acts as a machine identifier:**\n * - Object names (tables/collections)\n * - Field names\n * - Role names\n * - Permission set names\n * - Action/trigger names\n * - Event keys\n * - App IDs\n * - Menu/page IDs\n * - Select option values\n * - Workflow names\n * - Webhook names\n * \n * **Naming Convention Summary:**\n * | Type | Pattern | Example |\n * |------|---------|---------|\n * | Machine ID | snake_case | `crm_account`, `btn_submit`, `role_admin` |\n * | Event keys | dot.notation | `user.login`, `order.created` |\n * | Labels | Any case | `Client Account`, `Submit Form` |\n * \n * @example Valid identifiers\n * - 'account'\n * - 'crm_account'\n * - 'user_profile'\n * - 'order.created' (for events)\n * - 'api_v2_endpoint'\n * \n * @example Invalid identifiers (will be rejected)\n * - 'Account' (uppercase)\n * - 'CrmAccount' (camelCase)\n * - 'crm-account' (kebab-case - use underscore instead)\n * - 'user profile' (spaces)\n */\nexport const SystemIdentifierSchema = z\n .string()\n .min(2, { message: 'System identifier must be at least 2 characters' })\n .regex(/^[a-z][a-z0-9_.]*$/, {\n message:\n 'System identifier must be lowercase, starting with a letter, and may contain letters, numbers, underscores, or dots (e.g., \"user_profile\" or \"order.created\")',\n })\n .describe('System identifier (lowercase with underscores or dots)');\n\n/**\n * Strict Snake Case Identifier\n * \n * More restrictive than SystemIdentifierSchema - only allows underscores (no dots).\n * Use this for identifiers that should NOT contain dots (e.g., database table/column names).\n * \n * @example Valid\n * - 'account'\n * - 'crm_account'\n * - 'user_profile'\n * \n * @example Invalid\n * - 'user.profile' (dots not allowed)\n * - 'UserProfile' (uppercase)\n */\nexport const SnakeCaseIdentifierSchema = z\n .string()\n .min(2, { message: 'Identifier must be at least 2 characters' })\n .regex(/^[a-z][a-z0-9_]*$/, {\n message:\n 'Identifier must be lowercase snake_case, starting with a letter, and may contain only letters, numbers, and underscores (e.g., \"user_profile\")',\n })\n .describe('Snake case identifier (lowercase with underscores only)');\n\n/**\n * Event Name Identifier\n * \n * Specialized identifier for event names that encourages dot notation.\n * Used in event-driven systems, message queues, and webhooks.\n * \n * Pattern: `namespace.action` or `entity.event_type`\n * \n * @example Valid\n * - 'user.created'\n * - 'order.paid'\n * - 'user.login_success'\n * - 'alarm.high_cpu'\n * \n * @example Invalid\n * - 'UserCreated' (camelCase)\n * - 'user_created' (should use dots for namespacing)\n */\nexport const EventNameSchema = z\n .string()\n .min(3, { message: 'Event name must be at least 3 characters' })\n .regex(/^[a-z][a-z0-9_.]*$/, {\n message:\n 'Event name must be lowercase with dots for namespacing (e.g., \"user.created\", \"order.paid\")',\n })\n .describe('Event name (lowercase with dot notation for namespacing)');\n\n/**\n * Type Exports\n */\nexport type SystemIdentifier = z.infer<typeof SystemIdentifierSchema>;\nexport type SnakeCaseIdentifier = z.infer<typeof SnakeCaseIdentifierSchema>;\nexport type EventName = z.infer<typeof EventNameSchema>;\n","// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.\n\nimport { z } from 'zod';\nimport { SnakeCaseIdentifierSchema } from '../shared/identifiers.zod';\n\n/**\n * Trigger events for workflow automation\n */\nexport const WorkflowTriggerType = z.enum([\n 'on_create', // When record is created\n 'on_update', // When record is updated\n 'on_create_or_update', // Both\n 'on_delete', // When record is deleted\n 'schedule' // Time-based (cron)\n]);\n\n/**\n * Schema for Workflow Field Update Action\n * @example\n * {\n * name: \"update_status\",\n * type: \"field_update\",\n * field: \"status\",\n * value: \"approved\"\n * }\n */\nexport const FieldUpdateActionSchema = z.object({\n name: z.string().describe('Action name'),\n type: z.literal('field_update'),\n field: z.string().describe('Field to update'),\n value: z.unknown().describe('Value or Formula to set'),\n});\n\n/**\n * Schema for Workflow Email Alert Action\n * @example\n * {\n * name: \"send_approval_email\",\n * type: \"email_alert\",\n * template: \"approval_request_email\",\n * recipients: [\"user_id_123\", \"manager_field\"]\n * }\n */\nexport const EmailAlertActionSchema = z.object({\n name: z.string().describe('Action name'),\n type: z.literal('email_alert'),\n template: z.string().describe('Email template ID/DevName'),\n recipients: z.array(z.string()).describe('List of recipient emails or user IDs'),\n});\n\n/**\n * Schema for Connector Action Reference\n * Executes a capability defined in an integration connector.\n * Replaces hardcoded vendor actions (Slack, Twilio, etc).\n * \n * @example Send Slack Message\n * {\n * name: \"notify_slack\",\n * type: \"connector_action\",\n * connectorId: \"slack\",\n * actionId: \"post_message\",\n * input: {\n * channel: \"#general\",\n * text: \"New deal closed: {name}\"\n * }\n * }\n */\nexport const ConnectorActionRefSchema = z.object({\n name: z.string().describe('Action name'),\n type: z.literal('connector_action'),\n connectorId: z.string().describe('Target Connector ID (e.g. slack, twilio)'),\n actionId: z.string().describe('Target Action ID (e.g. send_message)'),\n input: z.record(z.string(), z.unknown()).describe('Input parameters matching the action schema'),\n});\n\n/**\n * Schema for HTTP Callout Action\n * Makes a REST API call to an external service.\n * @example\n * {\n * name: \"sync_to_erp\",\n * type: \"http_call\",\n * url: \"https://erp.api/orders\",\n * method: \"POST\",\n * headers: { \"Authorization\": \"Bearer {token}\" },\n * body: \"{ ... }\"\n * }\n */\nexport const HttpCallActionSchema = z.object({\n name: z.string().describe('Action name'),\n type: z.literal('http_call'),\n url: z.string().describe('Target URL'),\n method: z.enum(['GET', 'POST', 'PUT', 'DELETE', 'PATCH']).default('POST').describe('HTTP Method'),\n headers: z.record(z.string(), z.string()).optional().describe('HTTP Headers'),\n body: z.string().optional().describe('Request body (JSON or text)'),\n});\n\n/**\n * Schema for Workflow Task Creation Action\n * @example\n * {\n * name: \"create_followup_task\",\n * type: \"task_creation\",\n * taskObject: \"tasks\",\n * subject: \"Follow up with client\",\n * dueDate: \"TODAY() + 3\"\n * }\n */\nexport const TaskCreationActionSchema = z.object({\n name: z.string().describe('Action name'),\n type: z.literal('task_creation'),\n taskObject: z.string().describe('Task object name (e.g., \"task\", \"project_task\")'),\n subject: z.string().describe('Task subject/title'),\n description: z.string().optional().describe('Task description'),\n assignedTo: z.string().optional().describe('User ID or field reference for assignee'),\n dueDate: z.string().optional().describe('Due date (ISO string or formula)'),\n priority: z.string().optional().describe('Task priority'),\n relatedTo: z.string().optional().describe('Related record ID or field reference'),\n additionalFields: z.record(z.string(), z.unknown()).optional().describe('Additional custom fields'),\n});\n\n/**\n * Schema for Workflow Push Notification Action\n */\nexport const PushNotificationActionSchema = z.object({\n name: z.string().describe('Action name'),\n type: z.literal('push_notification'),\n title: z.string().describe('Notification title'),\n body: z.string().describe('Notification body text'),\n recipients: z.array(z.string()).describe('User IDs or device tokens'),\n data: z.record(z.string(), z.unknown()).optional().describe('Additional data payload'),\n badge: z.number().optional().describe('Badge count (iOS)'),\n sound: z.string().optional().describe('Notification sound'),\n clickAction: z.string().optional().describe('Action/URL when notification is clicked'),\n});\n\n/**\n * Schema for Workflow Custom Script Action\n */\nexport const CustomScriptActionSchema = z.object({\n name: z.string().describe('Action name'),\n type: z.literal('custom_script'),\n language: z.enum(['javascript', 'typescript', 'python']).default('javascript').describe('Script language'),\n code: z.string().describe('Script code to execute'),\n timeout: z.number().default(30000).describe('Execution timeout in milliseconds'),\n context: z.record(z.string(), z.unknown()).optional().describe('Additional context variables'),\n});\n\n/**\n * Universal Workflow Action Schema\n * Union of all supported action types.\n */\nexport const WorkflowActionSchema = z.discriminatedUnion('type', [\n FieldUpdateActionSchema,\n EmailAlertActionSchema,\n HttpCallActionSchema,\n ConnectorActionRefSchema,\n TaskCreationActionSchema,\n PushNotificationActionSchema,\n CustomScriptActionSchema,\n]);\n\nexport type WorkflowAction = z.infer<typeof WorkflowActionSchema>;\n\n/**\n * Time Trigger Definition\n * Schedules actions to run relative to a specific time or date field.\n */\nexport const TimeTriggerSchema = z.object({\n id: z.string().optional().describe('Unique identifier'),\n \n /** Timing Logic */\n timeLength: z.number().int().describe('Duration amount (e.g. 1, 30)'),\n timeUnit: z.enum(['minutes', 'hours', 'days']).describe('Unit of time'),\n \n /** Reference Point */\n offsetDirection: z.enum(['before', 'after']).describe('Before or After the reference date'),\n offsetFrom: z.enum(['trigger_date', 'date_field']).describe('Basis for calculation'),\n dateField: z.string().optional().describe('Date field to calculate from (required if offsetFrom is date_field)'),\n \n /** Actions */\n actions: z.array(WorkflowActionSchema).describe('Actions to execute at the scheduled time'),\n});\n\n/**\n * Schema for Workflow Rules (Automation)\n * \n * **NAMING CONVENTION:**\n * Workflow names are machine identifiers and must be lowercase snake_case.\n * \n * @example Good workflow names\n * - 'send_welcome_email'\n * - 'update_lead_status'\n * - 'notify_manager_on_close'\n * - 'calculate_discount'\n * \n * @example Bad workflow names (will be rejected)\n * - 'SendWelcomeEmail' (PascalCase)\n * - 'updateLeadStatus' (camelCase)\n * - 'Send Welcome Email' (spaces)\n * \n * @example Complete Workflow\n * {\n * name: \"new_lead_process\",\n * objectName: \"lead\",\n * triggerType: \"on_create\",\n * criteria: \"amount > 1000\",\n * active: true,\n * actions: [\n * {\n * name: \"set_status\",\n * type: \"field_update\",\n * field: \"status\",\n * value: \"new\"\n * },\n * {\n * name: \"notify_team\",\n * type: \"connector_action\",\n * connectorId: \"slack\",\n * actionId: \"post_message\",\n * input: { channel: \"#sales\", text: \"New high value lead!\" }\n * }\n * ],\n * timeTriggers: [\n * {\n * timeLength: 2,\n * timeUnit: \"days\",\n * offsetDirection: \"after\",\n * offsetFrom: \"trigger_date\",\n * actions: [\n * {\n * name: \"followup_check\",\n * type: \"task_creation\",\n * taskObject: \"task\",\n * subject: \"Follow up lead\",\n * dueDate: \"TODAY()\"\n * }\n * ]\n * }\n * ]\n * }\n */\nexport const WorkflowRuleSchema = z.object({\n /** Machine name */\n name: SnakeCaseIdentifierSchema.describe('Unique workflow name (lowercase snake_case)'),\n \n /** Target Object */\n objectName: z.string().describe('Target Object'),\n \n /** When to evaluate the rule */\n triggerType: WorkflowTriggerType.describe('When to evaluate'),\n \n /** \n * Condition to start the workflow.\n * If empty, runs on every trigger event.\n */\n criteria: z.string().optional().describe('Formula condition. If TRUE, actions execute.'),\n \n /** Actions to execute immediately */\n actions: z.array(WorkflowActionSchema).optional().describe('Immediate actions'),\n \n /** \n * Time-Dependent Actions \n * Actions scheduled to run in the future.\n */\n timeTriggers: z.array(TimeTriggerSchema).optional().describe('Scheduled actions relative to trigger or date field'),\n \n /** Active status */\n active: z.boolean().default(true).describe('Whether this workflow is active'),\n\n /** Execution Order */\n executionOrder: z.number().int().min(0).default(100).describe('Deterministic execution order when multiple workflows match (lower runs first)'),\n \n /** Recursion Control */\n reevaluateOnChange: z.boolean().default(false).describe('Re-evaluate rule if field updates change the record validity'),\n});\n\nexport type WorkflowRule = z.infer<typeof WorkflowRuleSchema>;\nexport type TimeTrigger = z.infer<typeof TimeTriggerSchema>;\n","// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.\n\nimport { z } from 'zod';\n\n/**\n * Flow Node Types\n */\nexport const FlowNodeAction = z.enum([\n 'start', // Trigger\n 'end', // Return/Stop\n 'decision', // If/Else logic\n 'assignment', // Set Variable\n 'loop', // For Each\n 'create_record', // CRUD: Create\n 'update_record', // CRUD: Update\n 'delete_record', // CRUD: Delete\n 'get_record', // CRUD: Get/Query\n 'http_request', // Webhook/API Call\n 'script', // Custom Script (JS/TS)\n 'screen', // Screen / User-Input Element\n 'wait', // Delay/Sleep\n 'subflow', // Call another flow\n 'connector_action', // Zapier-style integration action\n 'parallel_gateway', // BPMN Parallel Gateway — AND-split (all outgoing branches execute concurrently)\n 'join_gateway', // BPMN Join Gateway — AND-join (waits for all incoming branches to complete)\n 'boundary_event', // BPMN Boundary Event — attached to a host node for timer/error/signal interrupts\n]);\n\n/**\n * Flow Variable Schema\n * Variables available within the flow execution context.\n */\nexport const FlowVariableSchema = z.object({\n name: z.string().describe('Variable name'),\n type: z.string().describe('Data type (text, number, boolean, object, list)'),\n isInput: z.boolean().default(false).describe('Is input parameter'),\n isOutput: z.boolean().default(false).describe('Is output parameter'),\n});\n\n/**\n * Flow Node Schema\n * A single step in the visual logic graph.\n * \n * @example Decision Node\n * {\n * id: \"dec_1\",\n * type: \"decision\",\n * label: \"Is High Value?\",\n * config: {\n * conditions: [\n * { label: \"Yes\", expression: \"{amount} > 10000\" },\n * { label: \"No\", expression: \"true\" } // default\n * ]\n * },\n * position: { x: 300, y: 200 }\n * }\n */\nexport const FlowNodeSchema = z.object({\n id: z.string().describe('Node unique ID'),\n type: FlowNodeAction.describe('Action type'),\n label: z.string().describe('Node label'),\n \n /** Node Configuration Options (Specific to type) */\n config: z.record(z.string(), z.unknown()).optional().describe('Node configuration'),\n \n /** \n * Connector Action Configuration\n * Used when type is 'connector_action'\n */\n connectorConfig: z.object({\n connectorId: z.string(),\n actionId: z.string(),\n input: z.record(z.string(), z.unknown()).describe('Mapped inputs for the action'),\n }).optional(),\n\n /** UI Position (for the canvas) */\n position: z.object({ x: z.number(), y: z.number() }).optional(),\n\n /** Node-level execution timeout */\n timeoutMs: z.number().int().min(0).optional().describe('Maximum execution time for this node in milliseconds'),\n\n /** Node input schema declaration for Studio form generation and runtime validation */\n inputSchema: z.record(z.string(), z.object({\n type: z.enum(['string', 'number', 'boolean', 'object', 'array']).describe('Parameter type'),\n required: z.boolean().default(false).describe('Whether the parameter is required'),\n description: z.string().optional().describe('Parameter description'),\n })).optional().describe('Input parameter schema for this node'),\n\n /** Node output schema declaration */\n outputSchema: z.record(z.string(), z.object({\n type: z.enum(['string', 'number', 'boolean', 'object', 'array']).describe('Output type'),\n description: z.string().optional().describe('Output description'),\n })).optional().describe('Output schema declaration for this node'),\n\n /**\n * Wait Event Configuration (for 'wait' nodes)\n * Defines what external event or condition should resume the paused execution.\n * Industry alignment: BPMN Intermediate Catch Events, Temporal Signals.\n */\n waitEventConfig: z.object({\n /** Type of event to wait for */\n eventType: z.enum(['timer', 'signal', 'webhook', 'manual', 'condition'])\n .describe('What kind of event resumes the execution'),\n /** Duration to wait (ISO 8601 duration or milliseconds) — for timer events */\n timerDuration: z.string().optional().describe('ISO 8601 duration (e.g., \"PT1H\") or wait time for timer events'),\n /** Signal name to listen for — for signal/webhook events */\n signalName: z.string().optional().describe('Named signal or webhook event to wait for'),\n /** Timeout before auto-failing or continuing — optional guard */\n timeoutMs: z.number().int().min(0).optional().describe('Maximum wait time before timeout (ms)'),\n /** Action to take on timeout */\n onTimeout: z.enum(['fail', 'continue']).default('fail').describe('Behavior when the wait times out'),\n }).optional().describe('Configuration for wait node event resumption'),\n\n /**\n * Boundary Event Configuration (for 'boundary_event' nodes)\n * Attaches an event handler to a host activity node (BPMN Boundary Event pattern).\n * Industry alignment: BPMN Boundary Error/Timer/Signal Events.\n */\n boundaryConfig: z.object({\n /** ID of the host node this boundary event is attached to */\n attachedToNodeId: z.string().describe('Host node ID this boundary event monitors'),\n /** Type of boundary event */\n eventType: z.enum(['error', 'timer', 'signal', 'cancel'])\n .describe('Boundary event trigger type'),\n /** Whether the boundary event interrupts the host activity */\n interrupting: z.boolean().default(true)\n .describe('If true, the host activity is cancelled when this event fires'),\n /** Error code filter — only for error boundary events */\n errorCode: z.string().optional().describe('Specific error code to catch (empty = catch all errors)'),\n /** Timer duration — only for timer boundary events */\n timerDuration: z.string().optional().describe('ISO 8601 duration for timer boundary events'),\n /** Signal name — only for signal boundary events */\n signalName: z.string().optional().describe('Named signal to catch'),\n }).optional().describe('Configuration for boundary events attached to host nodes'),\n});\n\n/**\n * Flow Edge Schema\n * Connections between nodes.\n */\nexport const FlowEdgeSchema = z.object({\n id: z.string().describe('Edge unique ID'),\n source: z.string().describe('Source Node ID'),\n target: z.string().describe('Target Node ID'),\n \n /** Condition for this path (only for decision/branch nodes) */\n condition: z.string().optional().describe('Expression returning boolean used for branching'),\n \n type: z.enum(['default', 'fault', 'conditional']).default('default')\n .describe('Connection type: default (normal flow), fault (error path), or conditional (expression-guarded)'),\n label: z.string().optional().describe('Label on the connector'),\n\n /**\n * Default Sequence Flow marker (BPMN Default Flow semantics).\n * When true, this edge is taken when no sibling conditional edges match.\n * Only meaningful on outgoing edges of decision/gateway nodes.\n */\n isDefault: z.boolean().default(false)\n .describe('Marks this edge as the default path when no other conditions match'),\n});\n\n/**\n * Flow Schema\n * Visual Business Logic Orchestration.\n * \n * @example Simple Approval Logic\n * {\n * name: \"approve_order_flow\",\n * label: \"Approve Large Orders\",\n * type: \"record_change\",\n * status: \"active\",\n * nodes: [\n * { id: \"start\", type: \"start\", label: \"Start\", position: {x: 0, y: 0} },\n * { id: \"check_amount\", type: \"decision\", label: \"Check Amount\", position: {x: 0, y: 100} },\n * { id: \"auto_approve\", type: \"update_record\", label: \"Auto Approve\", position: {x: -100, y: 200} },\n * { id: \"submit_for_approval\", type: \"connector_action\", label: \"Submit\", position: {x: 100, y: 200} }\n * ],\n * edges: [\n * { id: \"e1\", source: \"start\", target: \"check_amount\" },\n * { id: \"e2\", source: \"check_amount\", target: \"auto_approve\", condition: \"{amount} < 500\" },\n * { id: \"e3\", source: \"check_amount\", target: \"submit_for_approval\", condition: \"{amount} >= 500\" }\n * ]\n * }\n */\nexport const FlowSchema = z.object({\n /** Identity */\n name: z.string().regex(/^[a-z_][a-z0-9_]*$/).describe('Machine name'),\n label: z.string().describe('Flow label'),\n description: z.string().optional(),\n \n /** Metadata & Versioning */\n version: z.number().int().default(1).describe('Version number'),\n status: z.enum(['draft', 'active', 'obsolete', 'invalid']).default('draft').describe('Deployment status'),\n template: z.boolean().default(false).describe('Is logic template (Subflow)'),\n\n /** Trigger Type */\n type: z.enum(['autolaunched', 'record_change', 'schedule', 'screen', 'api']).describe('Flow type'),\n \n /** Configuration Variables */\n variables: z.array(FlowVariableSchema).optional().describe('Flow variables'),\n \n /** Graph Definition */\n nodes: z.array(FlowNodeSchema).describe('Flow nodes'),\n edges: z.array(FlowEdgeSchema).describe('Flow connections'),\n \n /** Execution Config */\n active: z.boolean().default(false).describe('Is active (Deprecated: use status)'),\n runAs: z.enum(['system', 'user']).default('user').describe('Execution context'),\n\n /** Error Handling Strategy */\n errorHandling: z.object({\n strategy: z.enum(['fail', 'retry', 'continue']).default('fail').describe('How to handle node execution errors'),\n maxRetries: z.number().int().min(0).max(10).default(0).describe('Number of retry attempts (only for retry strategy)'),\n retryDelayMs: z.number().int().min(0).default(1000).describe('Delay between retries in milliseconds'),\n backoffMultiplier: z.number().min(1).default(1).describe('Multiplier for exponential backoff between retries'),\n maxRetryDelayMs: z.number().int().min(0).default(30000).describe('Maximum delay between retries in milliseconds'),\n jitter: z.boolean().default(false).describe('Add random jitter to retry delay to avoid thundering herd'),\n fallbackNodeId: z.string().optional().describe('Node ID to jump to on unrecoverable error'),\n }).optional().describe('Flow-level error handling configuration'),\n});\n\n/**\n * Type-safe factory for creating flow definitions.\n *\n * Validates the config at creation time using Zod `.parse()`.\n *\n * @example\n * ```ts\n * const onCreateFlow = defineFlow({\n * name: 'on_task_create',\n * label: 'On Task Create',\n * type: 'record_change',\n * nodes: [\n * { id: 'start', type: 'start', label: 'Start' },\n * { id: 'end', type: 'end', label: 'End' },\n * ],\n * edges: [{ id: 'e1', source: 'start', target: 'end' }],\n * });\n * ```\n */\nexport function defineFlow(config: z.input<typeof FlowSchema>): FlowParsed {\n return FlowSchema.parse(config);\n}\n\nexport type Flow = z.input<typeof FlowSchema>;\nexport type FlowParsed = z.infer<typeof FlowSchema>;\nexport type FlowNode = z.input<typeof FlowNodeSchema>;\nexport type FlowNodeParsed = z.infer<typeof FlowNodeSchema>;\nexport type FlowEdge = z.input<typeof FlowEdgeSchema>;\nexport type FlowEdgeParsed = z.infer<typeof FlowEdgeSchema>;\n\n/**\n * Flow Version History Schema\n * Tracks historical versions of flow definitions for rollback support.\n *\n * Industry alignment: Salesforce Flow Versions, n8n Workflow History.\n */\nexport const FlowVersionHistorySchema = z.object({\n flowName: z.string().describe('Flow machine name'),\n version: z.number().int().min(1).describe('Version number'),\n definition: FlowSchema.describe('Complete flow definition snapshot'),\n createdAt: z.string().datetime().describe('When this version was created'),\n createdBy: z.string().optional().describe('User who created this version'),\n changeNote: z.string().optional().describe('Description of what changed in this version'),\n});\n\nexport type FlowVersionHistory = z.input<typeof FlowVersionHistorySchema>;\nexport type FlowVersionHistoryParsed = z.infer<typeof FlowVersionHistorySchema>;\n","// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.\n\nimport { z } from 'zod';\n\n/**\n * Automation Execution Protocol\n *\n * Defines schemas for execution logging, error tracking, checkpointing,\n * concurrency control, and scheduled execution persistence.\n *\n * Industry alignment: Salesforce Flow Interviews, Temporal Workflow History,\n * AWS Step Functions execution logs.\n */\n\n// ==========================================\n// 1. Execution Status\n// ==========================================\n\n/**\n * Execution Status Enum\n * Tracks the lifecycle of a flow execution instance.\n */\nexport const ExecutionStatus = z.enum([\n 'pending', // Queued, not yet started\n 'running', // Currently executing\n 'paused', // Paused at a wait/checkpoint node\n 'completed', // Successfully finished\n 'failed', // Terminated with error\n 'cancelled', // Manually cancelled\n 'timed_out', // Exceeded max execution time\n 'retrying', // Failed and retrying\n]);\nexport type ExecutionStatus = z.infer<typeof ExecutionStatus>;\n\n// ==========================================\n// 2. Execution Log\n// ==========================================\n\n/**\n * Execution Step Log Entry\n * Records the result of executing a single node in the flow graph.\n */\nexport const ExecutionStepLogSchema = z.object({\n nodeId: z.string().describe('Node ID that was executed'),\n nodeType: z.string().describe('Node action type (e.g., \"decision\", \"http_request\")'),\n nodeLabel: z.string().optional().describe('Human-readable node label'),\n status: z.enum(['success', 'failure', 'skipped']).describe('Step execution result'),\n startedAt: z.string().datetime().describe('When the step started'),\n completedAt: z.string().datetime().optional().describe('When the step completed'),\n durationMs: z.number().int().min(0).optional().describe('Step execution duration in milliseconds'),\n input: z.record(z.string(), z.unknown()).optional().describe('Input data passed to the node'),\n output: z.record(z.string(), z.unknown()).optional().describe('Output data produced by the node'),\n error: z.object({\n code: z.string().describe('Error code'),\n message: z.string().describe('Error message'),\n stack: z.string().optional().describe('Stack trace'),\n }).optional().describe('Error details if step failed'),\n retryAttempt: z.number().int().min(0).optional().describe('Retry attempt number (0 = first try)'),\n});\nexport type ExecutionStepLog = z.infer<typeof ExecutionStepLogSchema>;\n\n/**\n * Execution Log Schema\n * Full execution history for a single flow run.\n *\n * @example\n * {\n * id: 'exec_001',\n * flowName: 'approve_order_flow',\n * flowVersion: 1,\n * status: 'completed',\n * trigger: { type: 'record_change', recordId: 'rec_123', object: 'order' },\n * steps: [\n * { nodeId: 'start', nodeType: 'start', status: 'success', startedAt: '...', durationMs: 1 },\n * { nodeId: 'check_amount', nodeType: 'decision', status: 'success', startedAt: '...', durationMs: 5 },\n * ],\n * startedAt: '2026-02-01T10:00:00Z',\n * completedAt: '2026-02-01T10:00:01Z',\n * durationMs: 1050,\n * }\n */\nexport const ExecutionLogSchema = z.object({\n /** Unique execution ID */\n id: z.string().describe('Execution instance ID'),\n\n /** Flow reference */\n flowName: z.string().describe('Machine name of the executed flow'),\n flowVersion: z.number().int().optional().describe('Version of the flow that was executed'),\n\n /** Execution status */\n status: ExecutionStatus.describe('Current execution status'),\n\n /** Trigger context */\n trigger: z.object({\n type: z.string().describe('Trigger type (e.g., \"record_change\", \"schedule\", \"api\", \"manual\")'),\n recordId: z.string().optional().describe('Triggering record ID'),\n object: z.string().optional().describe('Triggering object name'),\n userId: z.string().optional().describe('User who triggered the execution'),\n metadata: z.record(z.string(), z.unknown()).optional().describe('Additional trigger context'),\n }).describe('What triggered this execution'),\n\n /** Step-by-step execution history */\n steps: z.array(ExecutionStepLogSchema).describe('Ordered list of executed steps'),\n\n /** Execution variables snapshot */\n variables: z.record(z.string(), z.unknown()).optional().describe('Final state of flow variables'),\n\n /** Timing */\n startedAt: z.string().datetime().describe('Execution start timestamp'),\n completedAt: z.string().datetime().optional().describe('Execution completion timestamp'),\n durationMs: z.number().int().min(0).optional().describe('Total execution duration in milliseconds'),\n\n /** Context */\n runAs: z.enum(['system', 'user']).optional().describe('Execution context identity'),\n tenantId: z.string().optional().describe('Tenant ID for multi-tenant isolation'),\n});\nexport type ExecutionLog = z.infer<typeof ExecutionLogSchema>;\n\n// ==========================================\n// 3. Execution Error Tracking & Diagnostics\n// ==========================================\n\n/**\n * Execution Error Severity\n */\nexport const ExecutionErrorSeverity = z.enum([\n 'warning', // Non-fatal issue (e.g., deprecated node type)\n 'error', // Node-level failure (may be retried)\n 'critical', // Flow-level failure (execution terminated)\n]);\nexport type ExecutionErrorSeverity = z.infer<typeof ExecutionErrorSeverity>;\n\n/**\n * Execution Error Schema\n * Detailed error record for diagnostics and troubleshooting.\n */\nexport const ExecutionErrorSchema = z.object({\n id: z.string().describe('Error record ID'),\n executionId: z.string().describe('Parent execution ID'),\n nodeId: z.string().optional().describe('Node where the error occurred'),\n severity: ExecutionErrorSeverity.describe('Error severity level'),\n code: z.string().describe('Machine-readable error code'),\n message: z.string().describe('Human-readable error message'),\n stack: z.string().optional().describe('Stack trace for debugging'),\n context: z.record(z.string(), z.unknown()).optional()\n .describe('Additional diagnostic context (input data, config snapshot)'),\n timestamp: z.string().datetime().describe('When the error occurred'),\n retryable: z.boolean().default(false).describe('Whether this error can be retried'),\n resolvedAt: z.string().datetime().optional().describe('When the error was resolved (e.g., after successful retry)'),\n});\nexport type ExecutionError = z.infer<typeof ExecutionErrorSchema>;\n\n// ==========================================\n// 4. Checkpointing / Resume\n// ==========================================\n\n/**\n * Checkpoint Schema\n * Captures the execution state at a specific node for pause/resume.\n *\n * Used by wait nodes, user-input screens, and crash recovery.\n */\nexport const CheckpointSchema = z.object({\n /** Unique checkpoint ID */\n id: z.string().describe('Checkpoint ID'),\n\n /** Execution reference */\n executionId: z.string().describe('Parent execution ID'),\n flowName: z.string().describe('Flow machine name'),\n\n /** State snapshot */\n currentNodeId: z.string().describe('Node ID where execution is paused'),\n variables: z.record(z.string(), z.unknown()).describe('Flow variable state at checkpoint'),\n completedNodeIds: z.array(z.string()).describe('List of node IDs already executed'),\n\n /** Timing */\n createdAt: z.string().datetime().describe('Checkpoint creation timestamp'),\n expiresAt: z.string().datetime().optional().describe('Checkpoint expiration (auto-cleanup)'),\n\n /** Reason */\n reason: z.enum(['wait', 'screen_input', 'approval', 'error', 'manual_pause', 'parallel_join', 'boundary_event'])\n .describe('Why the execution was checkpointed'),\n});\nexport type Checkpoint = z.infer<typeof CheckpointSchema>;\n\n// ==========================================\n// 5. Concurrency Control\n// ==========================================\n\n/**\n * Concurrency Policy Schema\n * Controls how concurrent executions of the same flow are handled.\n *\n * Industry alignment: Salesforce \"Allow multiple instances\", Temporal \"Workflow ID reuse policy\"\n */\nexport const ConcurrencyPolicySchema = z.object({\n /** Maximum concurrent executions of this flow */\n maxConcurrent: z.number().int().min(1).default(1)\n .describe('Maximum number of concurrent executions allowed'),\n\n /** What to do when max concurrency is reached */\n onConflict: z.enum(['queue', 'reject', 'cancel_existing'])\n .default('queue')\n .describe('queue = enqueue for later, reject = fail immediately, cancel_existing = stop running instance'),\n\n /** Lock scope for concurrency */\n lockScope: z.enum(['global', 'per_record', 'per_user'])\n .default('global')\n .describe('Scope of the concurrency lock'),\n\n /** Queue timeout (only when onConflict is \"queue\") */\n queueTimeoutMs: z.number().int().min(0).optional()\n .describe('Maximum time to wait in queue before timing out (ms)'),\n});\nexport type ConcurrencyPolicy = z.infer<typeof ConcurrencyPolicySchema>;\n\n// ==========================================\n// 6. Scheduled Execution Persistence\n// ==========================================\n\n/**\n * Schedule State Schema\n * Tracks the runtime state of scheduled flow executions.\n *\n * Persists next-run times, pause/resume state, and execution history references.\n */\nexport const ScheduleStateSchema = z.object({\n /** Unique schedule ID */\n id: z.string().describe('Schedule instance ID'),\n\n /** Flow reference */\n flowName: z.string().describe('Flow machine name'),\n\n /** Schedule configuration */\n cronExpression: z.string().describe('Cron expression (e.g., \"0 9 * * MON-FRI\")'),\n timezone: z.string().default('UTC').describe('IANA timezone for cron evaluation'),\n\n /** Runtime state */\n status: z.enum(['active', 'paused', 'disabled', 'expired'])\n .default('active')\n .describe('Current schedule status'),\n nextRunAt: z.string().datetime().optional().describe('Next scheduled execution timestamp'),\n lastRunAt: z.string().datetime().optional().describe('Last execution timestamp'),\n lastExecutionId: z.string().optional().describe('Execution ID of the last run'),\n lastRunStatus: ExecutionStatus.optional().describe('Status of the last run'),\n\n /** Execution tracking */\n totalRuns: z.number().int().min(0).default(0).describe('Total number of executions'),\n consecutiveFailures: z.number().int().min(0).default(0).describe('Consecutive failed executions'),\n\n /** Bounds */\n startDate: z.string().datetime().optional().describe('Schedule effective start date'),\n endDate: z.string().datetime().optional().describe('Schedule expiration date'),\n maxRuns: z.number().int().min(1).optional().describe('Maximum total executions before auto-disable'),\n\n /** Metadata */\n createdAt: z.string().datetime().describe('Schedule creation timestamp'),\n updatedAt: z.string().datetime().optional().describe('Last update timestamp'),\n createdBy: z.string().optional().describe('User who created the schedule'),\n});\nexport type ScheduleState = z.infer<typeof ScheduleStateSchema>;\n\n// ==========================================\n// Type Exports\n// ==========================================\n\nexport type ExecutionStepLogParsed = z.infer<typeof ExecutionStepLogSchema>;\nexport type ExecutionLogParsed = z.infer<typeof ExecutionLogSchema>;\nexport type ExecutionErrorParsed = z.infer<typeof ExecutionErrorSchema>;\nexport type CheckpointParsed = z.infer<typeof CheckpointSchema>;\nexport type ConcurrencyPolicyParsed = z.infer<typeof ConcurrencyPolicySchema>;\nexport type ScheduleStateParsed = z.infer<typeof ScheduleStateSchema>;\n","// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.\n\nimport { z } from 'zod';\nimport { SnakeCaseIdentifierSchema } from '../shared/identifiers.zod';\n\n/**\n * Webhook Trigger Event\n * When should this webhook fire?\n */\nexport const WebhookTriggerType = z.enum([\n 'create', \n 'update', \n 'delete', \n 'undelete',\n 'api' // Manually triggered\n]);\n\n/**\n * CANONICAL WEBHOOK DEFINITION\n * \n * This is the single source of truth for webhook configuration across ObjectStack.\n * All other protocols (workflow, connector, etc.) should import and reference this schema.\n * \n * Webhook Protocol - Outbound HTTP Integration\n * Push data to external URLs when events occur in the system.\n * \n * **NAMING CONVENTION:**\n * Webhook names are machine identifiers and must be lowercase snake_case.\n * \n * @example Good webhook names\n * - 'stripe_payment_sync'\n * - 'slack_notification'\n * - 'crm_lead_export'\n * \n * @example Bad webhook names (will be rejected)\n * - 'StripePaymentSync' (PascalCase)\n * - 'slackNotification' (camelCase)\n * \n * @example Basic webhook configuration\n * ```typescript\n * const webhook: Webhook = {\n * name: 'slack_notification',\n * label: 'Slack Order Notification',\n * object: 'order',\n * triggers: ['create', 'update'],\n * url: 'https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXX',\n * method: 'POST',\n * headers: { 'Content-Type': 'application/json' },\n * authentication: {\n * type: 'bearer',\n * credentials: { token: process.env.SLACK_TOKEN }\n * },\n * retryPolicy: {\n * maxRetries: 3,\n * backoffStrategy: 'exponential'\n * }\n * }\n * ```\n */\nexport const WebhookSchema = z.object({\n name: SnakeCaseIdentifierSchema.describe('Webhook unique name (lowercase snake_case)'),\n label: z.string().optional().describe('Human-readable webhook label'),\n \n /** Scope */\n object: z.string().optional().describe('Object to listen to (optional for manual webhooks)'),\n triggers: z.array(WebhookTriggerType).optional().describe('Events that trigger execution'),\n \n /** Target */\n url: z.string().url().describe('External webhook endpoint URL'),\n method: z.enum(['GET', 'POST', 'PUT', 'PATCH', 'DELETE']).default('POST').describe('HTTP method'),\n \n /** Headers */\n headers: z.record(z.string(), z.string()).optional().describe('Custom HTTP headers'),\n \n /** Body/Payload */\n body: z.unknown().optional().describe('Request body payload (if not using default record data)'),\n \n /** Payload Configuration */\n payloadFields: z.array(z.string()).optional().describe('Fields to include. Empty = All'),\n includeSession: z.boolean().default(false).describe('Include user session info'),\n \n /** Authentication */\n authentication: z.object({\n type: z.enum(['none', 'bearer', 'basic', 'api-key']).describe('Authentication type'),\n credentials: z.record(z.string(), z.string()).optional().describe('Authentication credentials'),\n }).optional().describe('Authentication configuration'),\n \n /** Retry Policy */\n retryPolicy: z.object({\n maxRetries: z.number().int().min(0).max(10).default(3).describe('Maximum retry attempts'),\n backoffStrategy: z.enum(['exponential', 'linear', 'fixed']).default('exponential').describe('Backoff strategy'),\n initialDelayMs: z.number().int().min(100).default(1000).describe('Initial retry delay in milliseconds'),\n maxDelayMs: z.number().int().min(1000).default(60000).describe('Maximum retry delay in milliseconds'),\n }).optional().describe('Retry policy configuration'),\n \n /** Timeout */\n timeoutMs: z.number().int().min(1000).max(300000).default(30000).describe('Request timeout in milliseconds'),\n \n /** Security */\n secret: z.string().optional().describe('Signing secret for HMAC signature verification'),\n \n /** Status */\n isActive: z.boolean().default(true).describe('Whether webhook is active'),\n \n /** Metadata */\n description: z.string().optional().describe('Webhook description'),\n tags: z.array(z.string()).optional().describe('Tags for organization'),\n});\n\n/**\n * Webhook Receiver Schema (Inbound)\n * Handling incoming HTTP hooks from Stripe, Slack, etc.\n * \n * **NAMING CONVENTION:**\n * Webhook receiver names are machine identifiers and must be lowercase snake_case.\n * \n * @example Good names\n * - 'stripe_webhook_handler'\n * - 'github_events'\n * - 'twilio_status_callback'\n * \n * @example Bad names (will be rejected)\n * - 'StripeWebhookHandler' (PascalCase)\n */\nexport const WebhookReceiverSchema = z.object({\n name: SnakeCaseIdentifierSchema.describe('Webhook receiver unique name (lowercase snake_case)'),\n path: z.string().describe('URL Path (e.g. /webhooks/stripe)'),\n \n /** Verification */\n verificationType: z.enum(['none', 'header_token', 'hmac', 'ip_whitelist']).default('none'),\n verificationParams: z.object({\n header: z.string().optional(),\n secret: z.string().optional(),\n ips: z.array(z.string()).optional()\n }).optional(),\n \n /** Action */\n action: z.enum(['trigger_flow', 'script', 'upsert_record']).default('trigger_flow'),\n target: z.string().describe('Flow ID or Script name'),\n});\n\nexport type Webhook = z.infer<typeof WebhookSchema>;\nexport type WebhookReceiver = z.infer<typeof WebhookReceiverSchema>;\n","// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.\n\nimport { z } from 'zod';\nimport { SnakeCaseIdentifierSchema } from '../shared/identifiers.zod';\n\n/**\n * Approval Step Approver Type\n */\nexport const ApproverType = z.enum([\n 'user', // Specific user(s)\n 'role', // Users with specific role\n 'manager', // Submitter's manager\n 'field', // User ID defined in a record field\n 'queue' // Data ownership queue\n]);\n\n/**\n * Approval Action Type\n * Actions to execute on transition\n */\nexport const ApprovalActionType = z.enum([\n 'field_update',\n 'email_alert',\n 'webhook',\n 'script',\n 'connector_action' // Added for Zapier-style integrations\n]);\n\n/**\n * definition of an action to perform\n */\nexport const ApprovalActionSchema = z.object({\n type: ApprovalActionType,\n name: z.string().describe('Action name'),\n config: z.record(z.string(), z.unknown()).describe('Action configuration'),\n \n /** For connector actions */\n connectorId: z.string().optional(),\n actionId: z.string().optional(),\n});\n\n/**\n * Approval Process Step\n */\nexport const ApprovalStepSchema = z.object({\n name: SnakeCaseIdentifierSchema.describe('Step machine name'),\n label: z.string().describe('Step display label'),\n description: z.string().optional(),\n \n /** Entry criteria for this step */\n entryCriteria: z.string().optional().describe('Formula expression to enter this step'),\n \n /** Who can approve */\n approvers: z.array(z.object({\n type: ApproverType,\n value: z.string().describe('User ID, Role Name, or Field Name')\n })).min(1).describe('List of allowed approvers'),\n \n /** Approval Logic */\n behavior: z.enum(['first_response', 'unanimous']).default('first_response')\n .describe('How to handle multiple approvers'),\n \n /** Rejection behavior */\n rejectionBehavior: z.enum(['reject_process', 'back_to_previous'])\n .default('reject_process').describe('What happens if rejected'),\n\n /** Actions */\n onApprove: z.array(ApprovalActionSchema).optional().describe('Actions on step approval'),\n onReject: z.array(ApprovalActionSchema).optional().describe('Actions on step rejection'),\n});\n\n/**\n * Approval Process Protocol\n * \n * Defines a complex review and approval cycle for a record.\n * Manages state locking, notifications, and transition logic.\n */\nexport const ApprovalProcessSchema = z.object({\n name: SnakeCaseIdentifierSchema.describe('Unique process name'),\n label: z.string().describe('Human readable label'),\n object: z.string().describe('Target Object Name'),\n \n active: z.boolean().default(false),\n description: z.string().optional(),\n \n /** Entry Criteria for the entire process */\n entryCriteria: z.string().optional().describe('Formula to allow submission'),\n \n /** Record Locking */\n lockRecord: z.boolean().default(true).describe('Lock record from editing during approval'),\n \n /** Steps */\n steps: z.array(ApprovalStepSchema).min(1).describe('Sequence of approval steps'),\n\n /** Escalation Configuration (SLA-based auto-escalation) */\n escalation: z.object({\n enabled: z.boolean().default(false).describe('Enable SLA-based escalation'),\n timeoutHours: z.number().min(1).describe('Hours before escalation triggers'),\n action: z.enum(['reassign', 'auto_approve', 'auto_reject', 'notify']).default('notify').describe('Action to take on escalation timeout'),\n escalateTo: z.string().optional().describe('User ID, role, or manager level to escalate to'),\n notifySubmitter: z.boolean().default(true).describe('Notify the original submitter on escalation'),\n }).optional().describe('SLA escalation configuration for pending approval steps'),\n \n /** Global Actions */\n onSubmit: z.array(ApprovalActionSchema).optional().describe('Actions on initial submission'),\n onFinalApprove: z.array(ApprovalActionSchema).optional().describe('Actions on final approval'),\n onFinalReject: z.array(ApprovalActionSchema).optional().describe('Actions on final rejection'),\n onRecall: z.array(ApprovalActionSchema).optional().describe('Actions on recall'),\n});\n\nexport const ApprovalProcess = Object.assign(ApprovalProcessSchema, {\n create: <T extends z.input<typeof ApprovalProcessSchema>>(config: T) => config,\n});\n\nexport type ApprovalProcess = z.infer<typeof ApprovalProcessSchema>;\nexport type ApprovalStep = z.infer<typeof ApprovalStepSchema>;\n","// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.\n\nimport { z } from 'zod';\n\n/**\n * ETL (Extract, Transform, Load) Pipeline Protocol - LEVEL 2: Data Engineering\n * \n * Inspired by modern data integration platforms like Airbyte, Fivetran, and Apache NiFi.\n * \n * **Positioning in 3-Layer Architecture:**\n * - **L1: Simple Sync** (automation/sync.zod.ts) - Business users - Sync Salesforce to Sheets\n * - **L2: ETL Pipeline** (THIS FILE) - Data engineers - Aggregate 10 sources to warehouse\n * - **L3: Enterprise Connector** (integration/connector.zod.ts) - System integrators - Full SAP integration\n * \n * ETL pipelines enable automated data synchronization between systems, transforming\n * data as it moves from source to destination.\n * \n * **SCOPE: Advanced multi-source, multi-stage transformations.**\n * Supports complex operations: joins, aggregations, filtering, custom SQL.\n * \n * ## When to Use This Layer\n * \n * **Use ETL Pipeline when:**\n * - Combining data from multiple sources\n * - Need aggregations, joins, transformations\n * - Building data warehouses or analytics platforms\n * - Complex data transformations required\n * \n * **Examples:**\n * - Sales data from Salesforce + Marketing from HubSpot → Data Warehouse\n * - Multi-region databases → Consolidated reporting\n * - Legacy system migration with transformation\n * \n * **When to downgrade:**\n * - Simple 1:1 sync → Use {@link file://./sync.zod.ts | Simple Sync}\n * \n * **When to upgrade:**\n * - Need full connector lifecycle (auth, webhooks, rate limits) → Use {@link file://../integration/connector.zod.ts | Enterprise Connector}\n * \n * @see {@link file://./sync.zod.ts} for Level 1 (simple sync)\n * @see {@link file://../integration/connector.zod.ts} for Level 3 (enterprise integration)\n * \n * ## Use Cases\n * \n * 1. **Data Warehouse Population**\n * - Extract from multiple operational systems\n * - Transform to analytical schema\n * - Load into data warehouse\n * \n * 2. **System Integration**\n * - Sync data between CRM and Marketing Automation\n * - Keep product catalog synchronized across e-commerce platforms\n * - Replicate data for backup/disaster recovery\n * \n * 3. **Data Migration**\n * - Move data from legacy systems to modern platforms\n * - Consolidate data from multiple sources\n * - Split monolithic databases into microservices\n * \n * @see https://airbyte.com/\n * @see https://docs.fivetran.com/\n * @see https://nifi.apache.org/\n * \n * @example\n * ```typescript\n * const salesforceToDB: ETLPipeline = {\n * name: 'salesforce_to_postgres',\n * label: 'Salesforce Accounts to PostgreSQL',\n * source: {\n * type: 'api',\n * connector: 'salesforce',\n * config: { object: 'Account' }\n * },\n * destination: {\n * type: 'database',\n * connector: 'postgres',\n * config: { table: 'accounts' }\n * },\n * transformations: [\n * { type: 'map', config: { 'Name': 'account_name' } }\n * ],\n * schedule: '0 2 * * *' // Daily at 2 AM\n * }\n * ```\n */\n\n/**\n * ETL Source/Destination Type\n */\nexport const ETLEndpointTypeSchema = z.enum([\n 'database', // SQL/NoSQL databases\n 'api', // REST/GraphQL APIs\n 'file', // CSV, JSON, XML, Excel files\n 'stream', // Kafka, RabbitMQ, Kinesis\n 'object', // ObjectStack object\n 'warehouse', // Data warehouse (Snowflake, BigQuery, Redshift)\n 'storage', // S3, Azure Blob, Google Cloud Storage\n 'spreadsheet', // Google Sheets, Excel Online\n]);\n\nexport type ETLEndpointType = z.infer<typeof ETLEndpointTypeSchema>;\n\n/**\n * ETL Source Configuration\n */\nexport const ETLSourceSchema = z.object({\n /**\n * Source type\n */\n type: ETLEndpointTypeSchema.describe('Source type'),\n\n /**\n * Connector identifier\n * References a registered connector\n * \n * @example \"salesforce\", \"postgres\", \"mysql\", \"s3\"\n */\n connector: z.string().optional().describe('Connector ID'),\n\n /**\n * Source-specific configuration\n * Structure varies by source type\n * \n * @example For database: { table: 'customers', schema: 'public' }\n * @example For API: { endpoint: '/api/users', method: 'GET' }\n * @example For file: { path: 's3://bucket/data.csv', format: 'csv' }\n */\n config: z.record(z.string(), z.unknown()).describe('Source configuration'),\n\n /**\n * Incremental sync configuration\n * Allows extracting only changed data\n */\n incremental: z.object({\n enabled: z.boolean().default(false),\n cursorField: z.string().describe('Field to track progress (e.g., updated_at)'),\n cursorValue: z.unknown().optional().describe('Last processed value'),\n }).optional().describe('Incremental extraction config'),\n});\n\nexport type ETLSource = z.infer<typeof ETLSourceSchema>;\n\n/**\n * ETL Destination Configuration\n */\nexport const ETLDestinationSchema = z.object({\n /**\n * Destination type\n */\n type: ETLEndpointTypeSchema.describe('Destination type'),\n\n /**\n * Connector identifier\n */\n connector: z.string().optional().describe('Connector ID'),\n\n /**\n * Destination-specific configuration\n */\n config: z.record(z.string(), z.unknown()).describe('Destination configuration'),\n\n /**\n * Write mode\n */\n writeMode: z.enum([\n 'append', // Add new records\n 'overwrite', // Replace all data\n 'upsert', // Insert or update based on key\n 'merge', // Smart merge based on business rules\n ]).default('append').describe('How to write data'),\n\n /**\n * Primary key fields for upsert/merge\n */\n primaryKey: z.array(z.string()).optional().describe('Primary key fields'),\n});\n\nexport type ETLDestination = z.infer<typeof ETLDestinationSchema>;\n\n/**\n * ETL Transformation Type\n */\nexport const ETLTransformationTypeSchema = z.enum([\n 'map', // Field mapping/renaming\n 'filter', // Row filtering\n 'aggregate', // Aggregation/grouping\n 'join', // Joining with other data\n 'script', // Custom JavaScript/Python script\n 'lookup', // Enrich with lookup data\n 'split', // Split one record into multiple\n 'merge', // Merge multiple records into one\n 'normalize', // Data normalization\n 'deduplicate', // Remove duplicates\n]);\n\nexport type ETLTransformationType = z.infer<typeof ETLTransformationTypeSchema>;\n\n/**\n * ETL Transformation Configuration\n */\nexport const ETLTransformationSchema = z.object({\n /**\n * Transformation name\n */\n name: z.string().optional().describe('Transformation name'),\n\n /**\n * Transformation type\n */\n type: ETLTransformationTypeSchema.describe('Transformation type'),\n\n /**\n * Transformation-specific configuration\n * \n * @example For map: { oldField: 'newField' }\n * @example For filter: { condition: 'status == \"active\"' }\n * @example For script: { language: 'javascript', code: '...' }\n */\n config: z.record(z.string(), z.unknown()).describe('Transformation config'),\n\n /**\n * Whether to continue on error\n */\n continueOnError: z.boolean().default(false).describe('Continue on error'),\n});\n\nexport type ETLTransformation = z.infer<typeof ETLTransformationSchema>;\n\n/**\n * ETL Sync Mode\n */\nexport const ETLSyncModeSchema = z.enum([\n 'full', // Full refresh - extract all data every time\n 'incremental', // Only extract changed data\n 'cdc', // Change Data Capture - real-time streaming\n]);\n\nexport type ETLSyncMode = z.infer<typeof ETLSyncModeSchema>;\n\n/**\n * ETL Pipeline Schema\n * \n * Complete definition of a data pipeline from source to destination with transformations.\n */\nexport const ETLPipelineSchema = z.object({\n /**\n * Pipeline identifier (snake_case)\n */\n name: z.string()\n .regex(/^[a-z_][a-z0-9_]*$/)\n .describe('Pipeline identifier (snake_case)'),\n\n /**\n * Human-readable pipeline name\n */\n label: z.string().optional().describe('Pipeline display name'),\n\n /**\n * Pipeline description\n */\n description: z.string().optional().describe('Pipeline description'),\n\n /**\n * Data source configuration\n */\n source: ETLSourceSchema.describe('Data source'),\n\n /**\n * Data destination configuration\n */\n destination: ETLDestinationSchema.describe('Data destination'),\n\n /**\n * Transformation steps\n * Applied in order from source to destination\n */\n transformations: z.array(ETLTransformationSchema)\n .optional()\n .describe('Transformation pipeline'),\n\n /**\n * Sync mode\n */\n syncMode: ETLSyncModeSchema.default('full').describe('Sync mode'),\n\n /**\n * Execution schedule (cron expression)\n * \n * @example \"0 2 * * *\" - Daily at 2 AM\n * @example \"0 *\\/4 * * *\" - Every 4 hours\n * @example \"0 0 * * 0\" - Weekly on Sunday\n */\n schedule: z.string().optional().describe('Cron schedule expression'),\n\n /**\n * Whether pipeline is enabled\n */\n enabled: z.boolean().default(true).describe('Pipeline enabled status'),\n\n /**\n * Retry configuration for failed runs\n */\n retry: z.object({\n maxAttempts: z.number().int().min(0).default(3).describe('Max retry attempts'),\n backoffMs: z.number().int().min(0).default(60000).describe('Backoff in milliseconds'),\n }).optional().describe('Retry configuration'),\n\n /**\n * Notification configuration\n */\n notifications: z.object({\n onSuccess: z.array(z.string()).optional().describe('Email addresses for success notifications'),\n onFailure: z.array(z.string()).optional().describe('Email addresses for failure notifications'),\n }).optional().describe('Notification settings'),\n\n /**\n * Pipeline tags for organization\n */\n tags: z.array(z.string()).optional().describe('Pipeline tags'),\n\n /**\n * Custom metadata\n */\n metadata: z.record(z.string(), z.unknown()).optional().describe('Custom metadata'),\n});\n\nexport type ETLPipeline = z.infer<typeof ETLPipelineSchema>;\n\n/**\n * ETL Run Status\n */\nexport const ETLRunStatusSchema = z.enum([\n 'pending', // Queued for execution\n 'running', // Currently executing\n 'succeeded', // Completed successfully\n 'failed', // Failed with errors\n 'cancelled', // Manually cancelled\n 'timeout', // Timed out\n]);\n\nexport type ETLRunStatus = z.infer<typeof ETLRunStatusSchema>;\n\n/**\n * ETL Pipeline Run Result\n * \n * Result of a pipeline execution\n */\nexport const ETLPipelineRunSchema = z.object({\n /**\n * Run ID\n */\n id: z.string().describe('Run identifier'),\n\n /**\n * Pipeline name\n */\n pipelineName: z.string().describe('Pipeline name'),\n\n /**\n * Run status\n */\n status: ETLRunStatusSchema.describe('Run status'),\n\n /**\n * Start timestamp\n */\n startedAt: z.string().datetime().describe('Start time'),\n\n /**\n * End timestamp\n */\n completedAt: z.string().datetime().optional().describe('Completion time'),\n\n /**\n * Duration in milliseconds\n */\n durationMs: z.number().optional().describe('Duration in ms'),\n\n /**\n * Statistics\n */\n stats: z.object({\n recordsRead: z.number().int().default(0).describe('Records extracted'),\n recordsWritten: z.number().int().default(0).describe('Records loaded'),\n recordsErrored: z.number().int().default(0).describe('Records with errors'),\n bytesProcessed: z.number().int().default(0).describe('Bytes processed'),\n }).optional().describe('Run statistics'),\n\n /**\n * Error information\n */\n error: z.object({\n message: z.string().describe('Error message'),\n code: z.string().optional().describe('Error code'),\n details: z.unknown().optional().describe('Error details'),\n }).optional().describe('Error information'),\n\n /**\n * Execution logs\n */\n logs: z.array(z.string()).optional().describe('Execution logs'),\n});\n\nexport type ETLPipelineRun = z.infer<typeof ETLPipelineRunSchema>;\n\n/**\n * Helper factory for creating ETL pipelines\n */\nexport const ETL = {\n /**\n * Create a simple database-to-database pipeline\n */\n databaseSync: (params: {\n name: string;\n sourceTable: string;\n destTable: string;\n schedule?: string;\n }): ETLPipeline => ({\n name: params.name,\n source: {\n type: 'database',\n config: { table: params.sourceTable },\n },\n destination: {\n type: 'database',\n config: { table: params.destTable },\n writeMode: 'upsert',\n },\n syncMode: 'incremental',\n schedule: params.schedule,\n enabled: true,\n }),\n\n /**\n * Create an API to database pipeline\n */\n apiToDatabase: (params: {\n name: string;\n apiConnector: string;\n destTable: string;\n schedule?: string;\n }): ETLPipeline => ({\n name: params.name,\n source: {\n type: 'api',\n connector: params.apiConnector,\n config: {},\n },\n destination: {\n type: 'database',\n config: { table: params.destTable },\n writeMode: 'append',\n },\n syncMode: 'full',\n schedule: params.schedule,\n enabled: true,\n }),\n} as const;\n","// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.\n\nimport { z } from 'zod';\n\n/**\n * Trigger Registry Protocol\n * \n * Lightweight automation triggers for simple integrations.\n * Inspired by Zapier, n8n, and Workato connector architectures.\n * \n * ## When to use Trigger Registry vs. Integration Connector?\n * \n * **Use `automation/trigger-registry.zod.ts` when:**\n * - Building simple automation triggers (e.g., \"when Slack message received, create task\")\n * - No complex authentication needed (simple API keys, basic auth)\n * - Lightweight, single-purpose integrations\n * - Quick setup with minimal configuration\n * - Webhook-based or polling triggers for automation workflows\n * \n * **Use `integration/connector.zod.ts` when:**\n * - Building enterprise-grade connectors (e.g., Salesforce, SAP, Oracle)\n * - Complex OAuth2/SAML authentication required\n * - Bidirectional sync with field mapping and transformations\n * - Webhook management and rate limiting required\n * - Full CRUD operations and data synchronization\n * \n * ## Use Cases\n * \n * 1. **Simple Automation Triggers**\n * - Slack notifications on record updates\n * - Twilio SMS on workflow events\n * - SendGrid email templates\n * \n * 2. **Lightweight Operations**\n * - Single-action integrations (send, notify, log)\n * - No bidirectional sync required\n * - Webhook receivers for incoming events\n * \n * 3. **Quick Integrations**\n * - Payment webhooks (Stripe, PayPal)\n * - Communication triggers (Twilio, SendGrid, Slack)\n * - Simple API calls to third-party services\n * \n * @see https://zapier.com/developer/documentation/v2/\n * @see https://docs.n8n.io/integrations/creating-nodes/\n * @see ../../integration/connector.zod.ts for enterprise connectors\n * \n * @example\n * ```typescript\n * const slackNotifier: Connector = {\n * id: 'slack_notify',\n * name: 'Slack Notification',\n * category: 'communication',\n * authentication: {\n * type: 'apiKey',\n * fields: [{ name: 'webhook_url', label: 'Webhook URL', type: 'url' }]\n * },\n * operations: [\n * { id: 'send_message', name: 'Send Message', type: 'action' }\n * ]\n * }\n * ```\n */\n\n/**\n * Connector Category\n */\nexport const ConnectorCategorySchema = z.enum([\n 'crm', // Customer Relationship Management\n 'payment', // Payment processors\n 'communication', // Email, SMS, Chat\n 'storage', // File storage\n 'analytics', // Analytics platforms\n 'database', // Databases\n 'marketing', // Marketing automation\n 'accounting', // Accounting software\n 'hr', // Human resources\n 'productivity', // Productivity tools\n 'ecommerce', // E-commerce platforms\n 'support', // Customer support\n 'devtools', // Developer tools\n 'social', // Social media\n 'other', // Other category\n]);\n\nexport type ConnectorCategory = z.infer<typeof ConnectorCategorySchema>;\n\n/**\n * Authentication Type\n */\nexport const AuthenticationTypeSchema = z.enum([\n 'none', // No authentication\n 'apiKey', // API key\n 'basic', // Basic auth (username/password)\n 'bearer', // Bearer token\n 'oauth1', // OAuth 1.0\n 'oauth2', // OAuth 2.0\n 'custom', // Custom authentication\n]);\n\nexport type AuthenticationType = z.infer<typeof AuthenticationTypeSchema>;\n\n/**\n * Authentication Field Schema\n */\nexport const AuthFieldSchema = z.object({\n /**\n * Field name (machine name)\n */\n name: z.string()\n .regex(/^[a-z_][a-z0-9_]*$/)\n .describe('Field name (snake_case)'),\n\n /**\n * Field label\n */\n label: z.string().describe('Field label'),\n\n /**\n * Field type\n */\n type: z.enum(['text', 'password', 'url', 'select'])\n .default('text')\n .describe('Field type'),\n\n /**\n * Field description\n */\n description: z.string().optional().describe('Field description'),\n\n /**\n * Whether field is required\n */\n required: z.boolean().default(true).describe('Required field'),\n\n /**\n * Default value\n */\n default: z.string().optional().describe('Default value'),\n\n /**\n * Options for select fields\n */\n options: z.array(z.object({\n label: z.string(),\n value: z.string(),\n })).optional().describe('Select field options'),\n\n /**\n * Placeholder text\n */\n placeholder: z.string().optional().describe('Placeholder text'),\n});\n\nexport type AuthField = z.infer<typeof AuthFieldSchema>;\n\n/**\n * OAuth 2.0 Configuration\n */\nexport const OAuth2ConfigSchema = z.object({\n /**\n * Authorization URL\n */\n authorizationUrl: z.string().url().describe('Authorization endpoint URL'),\n\n /**\n * Token URL\n */\n tokenUrl: z.string().url().describe('Token endpoint URL'),\n\n /**\n * Scopes to request\n */\n scopes: z.array(z.string()).optional().describe('OAuth scopes'),\n\n /**\n * Client ID field name\n */\n clientIdField: z.string().default('client_id').describe('Client ID field name'),\n\n /**\n * Client secret field name\n */\n clientSecretField: z.string().default('client_secret').describe('Client secret field name'),\n});\n\nexport type OAuth2Config = z.infer<typeof OAuth2ConfigSchema>;\n\n/**\n * Authentication Configuration\n */\nexport const AuthenticationSchema = z.object({\n /**\n * Authentication type\n */\n type: AuthenticationTypeSchema.describe('Authentication type'),\n\n /**\n * Authentication fields\n * Configuration fields needed for this auth type\n */\n fields: z.array(AuthFieldSchema).optional().describe('Authentication fields'),\n\n /**\n * OAuth 2.0 configuration (when type is oauth2)\n */\n oauth2: OAuth2ConfigSchema.optional().describe('OAuth 2.0 configuration'),\n\n /**\n * Test authentication instructions\n */\n test: z.object({\n url: z.string().optional().describe('Test endpoint URL'),\n method: z.enum(['GET', 'POST', 'PUT', 'DELETE']).default('GET').describe('HTTP method'),\n }).optional().describe('Authentication test configuration'),\n});\n\nexport type Authentication = z.infer<typeof AuthenticationSchema>;\n\n/**\n * Connector Operation Type\n */\nexport const OperationTypeSchema = z.enum([\n 'read', // Read/query data\n 'write', // Create/update data\n 'delete', // Delete data\n 'search', // Search operation\n 'trigger', // Webhook/polling trigger\n 'action', // Custom action\n]);\n\nexport type OperationType = z.infer<typeof OperationTypeSchema>;\n\n/**\n * Operation Parameter Schema\n */\nexport const OperationParameterSchema = z.object({\n /**\n * Parameter name\n */\n name: z.string().describe('Parameter name'),\n\n /**\n * Parameter label\n */\n label: z.string().describe('Parameter label'),\n\n /**\n * Parameter description\n */\n description: z.string().optional().describe('Parameter description'),\n\n /**\n * Parameter type\n */\n type: z.enum(['string', 'number', 'boolean', 'array', 'object', 'date', 'file'])\n .describe('Parameter type'),\n\n /**\n * Whether parameter is required\n */\n required: z.boolean().default(false).describe('Required parameter'),\n\n /**\n * Default value\n */\n default: z.unknown().optional().describe('Default value'),\n\n /**\n * Validation schema\n */\n validation: z.record(z.string(), z.unknown()).optional().describe('Validation rules'),\n\n /**\n * Dynamic options function\n */\n dynamicOptions: z.string().optional().describe('Function to load dynamic options'),\n});\n\nexport type OperationParameter = z.infer<typeof OperationParameterSchema>;\n\n/**\n * Connector Operation Schema\n */\nexport const ConnectorOperationSchema = z.object({\n /**\n * Operation identifier\n */\n id: z.string()\n .regex(/^[a-z_][a-z0-9_]*$/)\n .describe('Operation ID (snake_case)'),\n\n /**\n * Operation name\n */\n name: z.string().describe('Operation name'),\n\n /**\n * Operation description\n */\n description: z.string().optional().describe('Operation description'),\n\n /**\n * Operation type\n */\n type: OperationTypeSchema.describe('Operation type'),\n\n /**\n * Input parameters\n */\n inputSchema: z.array(OperationParameterSchema)\n .optional()\n .describe('Input parameters'),\n\n /**\n * Output schema\n */\n outputSchema: z.record(z.string(), z.unknown())\n .optional()\n .describe('Output schema'),\n\n /**\n * Sample output for documentation\n */\n sampleOutput: z.unknown().optional().describe('Sample output'),\n\n /**\n * Whether operation supports pagination\n */\n supportsPagination: z.boolean().default(false).describe('Supports pagination'),\n\n /**\n * Whether operation supports filtering\n */\n supportsFiltering: z.boolean().default(false).describe('Supports filtering'),\n});\n\nexport type ConnectorOperation = z.infer<typeof ConnectorOperationSchema>;\n\n/**\n * Connector Trigger Schema\n * \n * Triggers are special operations that watch for events and initiate workflows.\n */\nexport const ConnectorTriggerSchema = z.object({\n /**\n * Trigger identifier\n */\n id: z.string()\n .regex(/^[a-z_][a-z0-9_]*$/)\n .describe('Trigger ID (snake_case)'),\n\n /**\n * Trigger name\n */\n name: z.string().describe('Trigger name'),\n\n /**\n * Trigger description\n */\n description: z.string().optional().describe('Trigger description'),\n\n /**\n * Trigger type\n */\n type: z.enum(['webhook', 'polling', 'stream'])\n .describe('Trigger mechanism'),\n\n /**\n * Trigger configuration\n */\n config: z.record(z.string(), z.unknown())\n .optional()\n .describe('Trigger configuration'),\n\n /**\n * Output schema\n */\n outputSchema: z.record(z.string(), z.unknown())\n .optional()\n .describe('Event payload schema'),\n\n /**\n * Polling interval (for polling triggers)\n * In milliseconds\n */\n pollingIntervalMs: z.number().int().min(1000)\n .optional()\n .describe('Polling interval in ms'),\n});\n\nexport type ConnectorTrigger = z.infer<typeof ConnectorTriggerSchema>;\n\n/**\n * Connector Schema\n * \n * Complete definition of a connector to an external system.\n */\nexport const ConnectorSchema = z.object({\n /**\n * Connector identifier\n * Must be globally unique\n */\n id: z.string()\n .regex(/^[a-z_][a-z0-9_]*$/)\n .describe('Connector ID (snake_case)'),\n\n /**\n * Connector name\n */\n name: z.string().describe('Connector name'),\n\n /**\n * Connector description\n */\n description: z.string().optional().describe('Connector description'),\n\n /**\n * Connector version (semver)\n */\n version: z.string().optional().describe('Connector version'),\n\n /**\n * Connector icon URL or name\n */\n icon: z.string().optional().describe('Connector icon'),\n\n /**\n * Connector category\n */\n category: ConnectorCategorySchema.describe('Connector category'),\n\n /**\n * Base URL for API calls\n */\n baseUrl: z.string().url().optional().describe('API base URL'),\n\n /**\n * Authentication configuration\n */\n authentication: AuthenticationSchema.describe('Authentication config'),\n\n /**\n * Available operations\n */\n operations: z.array(ConnectorOperationSchema)\n .optional()\n .describe('Connector operations'),\n\n /**\n * Available triggers\n */\n triggers: z.array(ConnectorTriggerSchema)\n .optional()\n .describe('Connector triggers'),\n\n /**\n * Rate limiting information\n */\n rateLimit: z.object({\n requestsPerSecond: z.number().optional().describe('Max requests per second'),\n requestsPerMinute: z.number().optional().describe('Max requests per minute'),\n requestsPerHour: z.number().optional().describe('Max requests per hour'),\n }).optional().describe('Rate limiting'),\n\n /**\n * Connector author\n */\n author: z.string().optional().describe('Connector author'),\n\n /**\n * Documentation URL\n */\n documentation: z.string().url().optional().describe('Documentation URL'),\n\n /**\n * Homepage URL\n */\n homepage: z.string().url().optional().describe('Homepage URL'),\n\n /**\n * License\n */\n license: z.string().optional().describe('License (SPDX identifier)'),\n\n /**\n * Tags for discovery\n */\n tags: z.array(z.string()).optional().describe('Connector tags'),\n\n /**\n * Whether connector is verified/certified\n */\n verified: z.boolean().default(false).describe('Verified connector'),\n\n /**\n * Custom metadata\n */\n metadata: z.record(z.string(), z.unknown()).optional().describe('Custom metadata'),\n});\n\nexport type Connector = z.infer<typeof ConnectorSchema>;\n\n/**\n * Connector Instance Schema\n * \n * A configured instance of a connector with credentials.\n */\nexport const ConnectorInstanceSchema = z.object({\n /**\n * Instance ID\n */\n id: z.string().describe('Instance ID'),\n\n /**\n * Connector ID this instance uses\n */\n connectorId: z.string().describe('Connector ID'),\n\n /**\n * Instance name\n */\n name: z.string().describe('Instance name'),\n\n /**\n * Instance description\n */\n description: z.string().optional().describe('Instance description'),\n\n /**\n * Authentication credentials (encrypted)\n */\n credentials: z.record(z.string(), z.unknown()).describe('Encrypted credentials'),\n\n /**\n * Additional configuration\n */\n config: z.record(z.string(), z.unknown()).optional().describe('Additional config'),\n\n /**\n * Whether instance is active\n */\n active: z.boolean().default(true).describe('Instance active status'),\n\n /**\n * Created timestamp\n */\n createdAt: z.string().datetime().optional().describe('Creation time'),\n\n /**\n * Last tested timestamp\n */\n lastTestedAt: z.string().datetime().optional().describe('Last test time'),\n\n /**\n * Test status\n */\n testStatus: z.enum(['unknown', 'success', 'failed'])\n .default('unknown')\n .describe('Connection test status'),\n});\n\nexport type ConnectorInstance = z.infer<typeof ConnectorInstanceSchema>;\n\n/**\n * Helper factory for creating connectors\n */\nexport const Connector = {\n /**\n * Create a basic API key connector\n */\n apiKey: (params: {\n id: string;\n name: string;\n category: ConnectorCategory;\n baseUrl: string;\n }): Connector => ({\n id: params.id,\n name: params.name,\n category: params.category,\n baseUrl: params.baseUrl,\n authentication: {\n type: 'apiKey',\n fields: [\n {\n name: 'api_key',\n label: 'API Key',\n type: 'password',\n required: true,\n },\n ],\n },\n verified: false,\n }),\n\n /**\n * Create an OAuth 2.0 connector\n */\n oauth2: (params: {\n id: string;\n name: string;\n category: ConnectorCategory;\n baseUrl: string;\n authUrl: string;\n tokenUrl: string;\n scopes?: string[];\n }): Connector => ({\n id: params.id,\n name: params.name,\n category: params.category,\n baseUrl: params.baseUrl,\n authentication: {\n type: 'oauth2',\n oauth2: {\n authorizationUrl: params.authUrl,\n tokenUrl: params.tokenUrl,\n clientIdField: 'client_id',\n clientSecretField: 'client_secret',\n scopes: params.scopes,\n },\n },\n verified: false,\n }),\n} as const;\n","// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.\n\nimport { z } from 'zod';\n\n/**\n * Base Field Mapping Protocol\n * \n * Shared by: ETL, Sync, Connector, External Lookup\n * \n * This module provides the canonical field mapping schema used across\n * ObjectStack for data transformation and synchronization.\n * \n * **Use Cases:**\n * - ETL pipelines (data/mapping.zod.ts)\n * - Data synchronization (automation/sync.zod.ts)\n * - Integration connectors (integration/connector.zod.ts)\n * - External lookups (data/external-lookup.zod.ts)\n * \n * @example Basic field mapping\n * ```typescript\n * const mapping: FieldMapping = {\n * source: 'external_user_id',\n * target: 'user_id',\n * };\n * ```\n * \n * @example With transformation\n * ```typescript\n * const mapping: FieldMapping = {\n * source: 'user_name',\n * target: 'name',\n * transform: { type: 'cast', targetType: 'string' },\n * defaultValue: 'Unknown'\n * };\n * ```\n */\n\n/**\n * Transform Type Schema\n * \n * Defines the type of transformation to apply to a field value.\n * Implementations can extend this for domain-specific transforms.\n */\nexport const TransformTypeSchema = z.discriminatedUnion('type', [\n z.object({\n type: z.literal('constant'),\n value: z.unknown().describe('Constant value to use'),\n }).describe('Set a constant value'),\n \n z.object({\n type: z.literal('cast'),\n targetType: z.enum(['string', 'number', 'boolean', 'date']).describe('Target data type'),\n }).describe('Cast to a specific data type'),\n \n z.object({\n type: z.literal('lookup'),\n table: z.string().describe('Lookup table name'),\n keyField: z.string().describe('Field to match on'),\n valueField: z.string().describe('Field to retrieve'),\n }).describe('Lookup value from another table'),\n \n z.object({\n type: z.literal('javascript'),\n expression: z.string().describe('JavaScript expression (e.g., \"value.toUpperCase()\")'),\n }).describe('Custom JavaScript transformation'),\n \n z.object({\n type: z.literal('map'),\n mappings: z.record(z.string(), z.unknown()).describe('Value mappings (e.g., {\"Active\": \"active\"})'),\n }).describe('Map values using a dictionary'),\n]);\n\nexport type TransformType = z.infer<typeof TransformTypeSchema>;\n\n/**\n * Field Mapping Schema\n * \n * Base schema for mapping fields between source and target systems.\n * \n * **NAMING CONVENTION:**\n * - source: Field name in the source system\n * - target: Field name in the target system (should be snake_case for ObjectStack)\n * \n * @example\n * ```typescript\n * {\n * source: 'FirstName',\n * target: 'first_name',\n * transform: { type: 'cast', targetType: 'string' },\n * defaultValue: ''\n * }\n * ```\n */\nexport const FieldMappingSchema = z.object({\n /**\n * Source field name\n */\n source: z.string().describe('Source field name'),\n \n /**\n * Target field name (should be snake_case for ObjectStack)\n */\n target: z.string().describe('Target field name'),\n \n /**\n * Transformation to apply\n */\n transform: TransformTypeSchema.optional().describe('Transformation to apply'),\n \n /**\n * Default value if source is null/undefined\n */\n defaultValue: z.unknown().optional().describe('Default if source is null/undefined'),\n});\n\nexport type FieldMapping = z.infer<typeof FieldMappingSchema>;\n","// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.\n\nimport { z } from 'zod';\nimport { FieldMappingSchema } from '../shared/mapping.zod';\n\n/**\n * Data Sync Protocol - LEVEL 1: Simple Synchronization\n * \n * Inspired by Salesforce Connect, Segment Sync, and Census Reverse ETL.\n * \n * **Positioning in 3-Layer Architecture:**\n * - **L1: Simple Sync** (THIS FILE) - Business users - Sync Salesforce to Sheets\n * - **L2: ETL Pipeline** (automation/etl.zod.ts) - Data engineers - Aggregate 10 sources to warehouse\n * - **L3: Enterprise Connector** (integration/connector.zod.ts) - System integrators - Full SAP integration\n * \n * Data sync provides bidirectional or unidirectional data synchronization\n * between ObjectStack and external systems, maintaining data consistency\n * across platforms.\n * \n * **SCOPE: Simple field mappings only. NO complex transformations.**\n * For complex transformations (joins, aggregates, custom SQL), use ETL Pipeline (Level 2).\n * \n * ## When to Use This Layer\n * \n * **Use Simple Sync when:**\n * - Syncing 1:1 fields between two systems\n * - Simple field transformations (uppercase, cast, etc.)\n * - No complex logic required\n * - Business users need to configure integrations\n * \n * **Examples:**\n * - Salesforce Contact ↔ Google Sheets\n * - HubSpot Company ↔ CRM Account\n * - Shopify Orders → Accounting System\n * \n * **When to upgrade:**\n * - Need multi-source joins → Use {@link file://./etl.zod.ts | ETL Pipeline}\n * - Need complex authentication/webhooks → Use {@link file://../integration/connector.zod.ts | Enterprise Connector}\n * - Need aggregations or data warehousing → Use {@link file://./etl.zod.ts | ETL Pipeline}\n * \n * @see {@link file://./etl.zod.ts} for Level 2 (data engineering)\n * @see {@link file://../integration/connector.zod.ts} for Level 3 (enterprise integration)\n * \n * ## Use Cases\n * \n * 1. **CRM Integration**\n * - Sync contacts between ObjectStack and Salesforce\n * - Keep opportunity data synchronized\n * - Bidirectional updates\n * \n * 2. **Customer Data Platform (CDP)**\n * - Sync user profiles to Segment\n * - Enrichment data from Clearbit\n * - Marketing automation sync\n * \n * 3. **Operational Analytics**\n * - Sync production data to analytics warehouse\n * - Real-time dashboards\n * - Business intelligence\n * \n * @see https://help.salesforce.com/s/articleView?id=sf.platform_connect_about.htm\n * @see https://segment.com/docs/connections/sync/\n * @see https://www.getcensus.com/\n * \n * @example\n * ```typescript\n * const contactSync: DataSyncConfig = {\n * name: 'salesforce_contact_sync',\n * label: 'Salesforce Contact Sync',\n * source: {\n * object: 'contact',\n * filters: { status: 'active' }\n * },\n * destination: {\n * connector: 'salesforce',\n * operation: 'upsert_contact',\n * mapping: {\n * first_name: 'FirstName',\n * last_name: 'LastName',\n * email: 'Email'\n * }\n * },\n * syncMode: 'incremental',\n * schedule: '0 * * * *' // Hourly\n * }\n * ```\n */\n\n/**\n * Sync Direction\n */\nexport const SyncDirectionSchema = z.enum([\n 'push', // ObjectStack -> External (one-way)\n 'pull', // External -> ObjectStack (one-way)\n 'bidirectional', // Both directions\n]);\n\nexport type SyncDirection = z.infer<typeof SyncDirectionSchema>;\n\n/**\n * Sync Mode\n */\nexport const SyncModeSchema = z.enum([\n 'full', // Full refresh every time\n 'incremental', // Only sync changed records\n 'realtime', // Real-time streaming sync\n]);\n\nexport type SyncMode = z.infer<typeof SyncModeSchema>;\n\n/**\n * Conflict Resolution Strategy\n */\nexport const ConflictResolutionSchema = z.enum([\n 'source_wins', // Source system always wins\n 'destination_wins', // Destination system always wins\n 'latest_wins', // Most recently modified wins\n 'manual', // Flag for manual resolution\n 'merge', // Smart merge (custom logic)\n]);\n\nexport type ConflictResolution = z.infer<typeof ConflictResolutionSchema>;\n\n/**\n * Field Mapping for Data Sync\n * \n * Uses the canonical field mapping protocol from shared/mapping.zod.ts\n * for simple 1:1 field transformations.\n * \n * @see {@link FieldMappingSchema} for the base field mapping schema\n */\n\n/**\n * Data Source Configuration\n */\nexport const DataSourceConfigSchema = z.object({\n /**\n * Source object name\n * For ObjectStack objects\n */\n object: z.string().optional().describe('ObjectStack object name'),\n\n /**\n * Filter conditions\n * Only sync records matching these filters\n */\n filters: z.unknown().optional().describe('Filter conditions'),\n\n /**\n * Fields to include\n * If not specified, all fields are synced\n */\n fields: z.array(z.string()).optional().describe('Fields to sync'),\n\n /**\n * External connector instance ID\n * For external data sources\n */\n connectorInstanceId: z.string().optional().describe('Connector instance ID'),\n\n /**\n * External resource identifier\n * e.g., Salesforce object name, database table, API endpoint\n */\n externalResource: z.string().optional().describe('External resource ID'),\n});\n\nexport type DataSourceConfig = z.infer<typeof DataSourceConfigSchema>;\n\n/**\n * Data Destination Configuration\n */\nexport const DataDestinationConfigSchema = z.object({\n /**\n * Destination object name\n * For ObjectStack objects\n */\n object: z.string().optional().describe('ObjectStack object name'),\n\n /**\n * Connector instance ID\n * For external destinations\n */\n connectorInstanceId: z.string().optional().describe('Connector instance ID'),\n\n /**\n * Operation to perform\n */\n operation: z.enum([\n 'insert', // Create new records only\n 'update', // Update existing records only\n 'upsert', // Insert or update based on key\n 'delete', // Delete records\n 'sync', // Full synchronization\n ]).describe('Sync operation'),\n\n /**\n * Field mappings\n * Maps source fields to destination fields\n */\n mapping: z.union([\n z.record(z.string(), z.string()), // Simple mapping: { sourceField: 'destField' }\n z.array(FieldMappingSchema), // Advanced mapping with transformations\n ]).optional().describe('Field mappings'),\n\n /**\n * External resource identifier\n */\n externalResource: z.string().optional().describe('External resource ID'),\n\n /**\n * Match key for upsert operations\n * Fields to use for matching existing records\n */\n matchKey: z.array(z.string()).optional().describe('Match key fields'),\n});\n\nexport type DataDestinationConfig = z.infer<typeof DataDestinationConfigSchema>;\n\n/**\n * Data Sync Configuration Schema\n * \n * Complete definition of a data synchronization between systems.\n */\nexport const DataSyncConfigSchema = z.object({\n /**\n * Sync configuration name (snake_case)\n */\n name: z.string()\n .regex(/^[a-z_][a-z0-9_]*$/)\n .describe('Sync configuration name (snake_case)'),\n\n /**\n * Human-readable label\n */\n label: z.string().optional().describe('Sync display name'),\n\n /**\n * Description\n */\n description: z.string().optional().describe('Sync description'),\n\n /**\n * Source configuration\n */\n source: DataSourceConfigSchema.describe('Data source'),\n\n /**\n * Destination configuration\n */\n destination: DataDestinationConfigSchema.describe('Data destination'),\n\n /**\n * Sync direction\n */\n direction: SyncDirectionSchema.default('push').describe('Sync direction'),\n\n /**\n * Sync mode\n */\n syncMode: SyncModeSchema.default('incremental').describe('Sync mode'),\n\n /**\n * Conflict resolution strategy\n */\n conflictResolution: ConflictResolutionSchema\n .default('latest_wins')\n .describe('Conflict resolution'),\n\n /**\n * Execution schedule (cron expression)\n * For scheduled syncs\n * \n * @example \"0 * * * *\" - Hourly\n * @example \"*\\/15 * * * *\" - Every 15 minutes\n */\n schedule: z.string().optional().describe('Cron schedule'),\n\n /**\n * Whether sync is enabled\n */\n enabled: z.boolean().default(true).describe('Sync enabled'),\n\n /**\n * Change tracking field\n * Field to track when records were last modified\n * Used for incremental sync\n * \n * @example \"updated_at\", \"modified_date\"\n */\n changeTrackingField: z.string()\n .optional()\n .describe('Field for change tracking'),\n\n /**\n * Batch size\n * Number of records to process per batch\n */\n batchSize: z.number().int().min(1).max(10000)\n .default(100)\n .describe('Batch size for processing'),\n\n /**\n * Retry configuration\n */\n retry: z.object({\n maxAttempts: z.number().int().min(0).default(3).describe('Max retries'),\n backoffMs: z.number().int().min(0).default(30000).describe('Backoff duration'),\n }).optional().describe('Retry configuration'),\n\n /**\n * Pre-sync validation rules\n */\n validation: z.object({\n required: z.array(z.string()).optional().describe('Required fields'),\n unique: z.array(z.string()).optional().describe('Unique constraint fields'),\n custom: z.array(z.object({\n name: z.string(),\n condition: z.string().describe('Validation condition'),\n message: z.string().describe('Error message'),\n })).optional().describe('Custom validation rules'),\n }).optional().describe('Validation rules'),\n\n /**\n * Error handling configuration\n */\n errorHandling: z.object({\n onValidationError: z.enum(['skip', 'fail', 'log']).default('skip'),\n onSyncError: z.enum(['skip', 'fail', 'retry']).default('retry'),\n notifyOnError: z.array(z.string()).optional().describe('Email notifications'),\n }).optional().describe('Error handling'),\n\n /**\n * Performance optimization\n */\n optimization: z.object({\n parallelBatches: z.boolean().default(false).describe('Process batches in parallel'),\n cacheEnabled: z.boolean().default(true).describe('Enable caching'),\n compressionEnabled: z.boolean().default(false).describe('Enable compression'),\n }).optional().describe('Performance optimization'),\n\n /**\n * Audit and logging\n */\n audit: z.object({\n logLevel: z.enum(['none', 'error', 'warn', 'info', 'debug']).default('info'),\n retainLogsForDays: z.number().int().min(1).default(30),\n trackChanges: z.boolean().default(true).describe('Track all changes'),\n }).optional().describe('Audit configuration'),\n\n /**\n * Tags for organization\n */\n tags: z.array(z.string()).optional().describe('Sync tags'),\n\n /**\n * Custom metadata\n */\n metadata: z.record(z.string(), z.unknown()).optional().describe('Custom metadata'),\n});\n\nexport type DataSyncConfig = z.infer<typeof DataSyncConfigSchema>;\n\n/**\n * Sync Execution Status\n */\nexport const SyncExecutionStatusSchema = z.enum([\n 'pending', // Queued\n 'running', // Currently executing\n 'completed', // Successfully completed\n 'partial', // Completed with some errors\n 'failed', // Failed\n 'cancelled', // Manually cancelled\n]);\n\nexport type SyncExecutionStatus = z.infer<typeof SyncExecutionStatusSchema>;\n\n/**\n * Sync Execution Result Schema\n * \n * Result of a sync execution.\n */\nexport const SyncExecutionResultSchema = z.object({\n /**\n * Execution ID\n */\n id: z.string().describe('Execution ID'),\n\n /**\n * Sync configuration name\n */\n syncName: z.string().describe('Sync name'),\n\n /**\n * Execution status\n */\n status: SyncExecutionStatusSchema.describe('Execution status'),\n\n /**\n * Start timestamp\n */\n startedAt: z.string().datetime().describe('Start time'),\n\n /**\n * End timestamp\n */\n completedAt: z.string().datetime().optional().describe('Completion time'),\n\n /**\n * Duration in milliseconds\n */\n durationMs: z.number().optional().describe('Duration in ms'),\n\n /**\n * Statistics\n */\n stats: z.object({\n recordsProcessed: z.number().int().default(0).describe('Total records processed'),\n recordsInserted: z.number().int().default(0).describe('Records inserted'),\n recordsUpdated: z.number().int().default(0).describe('Records updated'),\n recordsDeleted: z.number().int().default(0).describe('Records deleted'),\n recordsSkipped: z.number().int().default(0).describe('Records skipped'),\n recordsErrored: z.number().int().default(0).describe('Records with errors'),\n conflictsDetected: z.number().int().default(0).describe('Conflicts detected'),\n conflictsResolved: z.number().int().default(0).describe('Conflicts resolved'),\n }).optional().describe('Execution statistics'),\n\n /**\n * Errors encountered\n */\n errors: z.array(z.object({\n recordId: z.string().optional().describe('Record ID'),\n field: z.string().optional().describe('Field name'),\n message: z.string().describe('Error message'),\n code: z.string().optional().describe('Error code'),\n })).optional().describe('Errors'),\n\n /**\n * Execution logs\n */\n logs: z.array(z.string()).optional().describe('Execution logs'),\n});\n\nexport type SyncExecutionResult = z.infer<typeof SyncExecutionResultSchema>;\n\n/**\n * Helper factory for creating sync configurations\n */\nexport const Sync = {\n /**\n * Create a simple object-to-object sync\n */\n objectSync: (params: {\n name: string;\n sourceObject: string;\n destObject: string;\n mapping: Record<string, string>;\n schedule?: string;\n }): DataSyncConfig => ({\n name: params.name,\n source: {\n object: params.sourceObject,\n },\n destination: {\n object: params.destObject,\n operation: 'upsert',\n mapping: params.mapping,\n },\n direction: 'push',\n syncMode: 'incremental',\n conflictResolution: 'latest_wins',\n batchSize: 100,\n schedule: params.schedule,\n enabled: true,\n }),\n\n /**\n * Create a connector sync\n */\n connectorSync: (params: {\n name: string;\n sourceObject: string;\n connectorInstanceId: string;\n externalResource: string;\n mapping: Record<string, string>;\n schedule?: string;\n }): DataSyncConfig => ({\n name: params.name,\n source: {\n object: params.sourceObject,\n },\n destination: {\n connectorInstanceId: params.connectorInstanceId,\n externalResource: params.externalResource,\n operation: 'upsert',\n mapping: params.mapping,\n },\n direction: 'push',\n syncMode: 'incremental',\n conflictResolution: 'latest_wins',\n batchSize: 100,\n schedule: params.schedule,\n enabled: true,\n }),\n\n /**\n * Create a bidirectional sync\n */\n bidirectionalSync: (params: {\n name: string;\n object: string;\n connectorInstanceId: string;\n externalResource: string;\n mapping: Record<string, string>;\n schedule?: string;\n }): DataSyncConfig => ({\n name: params.name,\n source: {\n object: params.object,\n },\n destination: {\n connectorInstanceId: params.connectorInstanceId,\n externalResource: params.externalResource,\n operation: 'sync',\n mapping: params.mapping,\n },\n direction: 'bidirectional',\n syncMode: 'incremental',\n conflictResolution: 'latest_wins',\n batchSize: 100,\n schedule: params.schedule,\n enabled: true,\n }),\n} as const;\n","// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.\n\nimport { z } from 'zod';\nimport { SnakeCaseIdentifierSchema } from '../shared/identifiers.zod';\n\n/**\n * XState-inspired State Machine Protocol\n * Used to define strict business logic constraints and lifecycle management.\n * Prevent AI \"hallucinations\" by enforcing valid valid transitions.\n */\n\n// --- Primitives ---\n\n/**\n * References a named action (side effect)\n * Can be a script, a webhook, or a field update.\n */\nexport const ActionRefSchema = z.union([\n z.string().describe('Action Name'),\n z.object({\n type: z.string(), // e.g., 'xstate.assign', 'log', 'email'\n params: z.record(z.string(), z.unknown()).optional()\n })\n]);\n\n/**\n * References a named condition (guard)\n * Must evaluate to true for the transition to occur.\n */\nexport const GuardRefSchema = z.union([\n z.string().describe('Guard Name (e.g., \"isManager\", \"amountGT1000\")'),\n z.object({\n type: z.string(),\n params: z.record(z.string(), z.unknown()).optional()\n })\n]);\n\n// --- Core Structure ---\n\n/**\n * State Transition Definition\n * \"When EVENT happens, if GUARD is true, go to TARGET and run ACTIONS\"\n */\nexport const TransitionSchema = z.object({\n target: z.string().optional().describe('Target State ID'),\n cond: GuardRefSchema.optional().describe('Condition (Guard) required to take this path'),\n actions: z.array(ActionRefSchema).optional().describe('Actions to execute during transition'),\n description: z.string().optional().describe('Human readable description of this rule'),\n});\n\n/**\n * Event Definition (Signals)\n */\nexport const EventSchema = z.object({\n type: z.string().describe('Event Type (e.g. \"APPROVE\", \"REJECT\", \"Submit\")'),\n // Payload validation schema could go here if we want deep validation\n schema: z.record(z.string(), z.unknown()).optional().describe('Expected event payload structure'),\n});\n\nexport type ActionRef = z.infer<typeof ActionRefSchema>;\nexport type Transition = z.infer<typeof TransitionSchema>;\n\nexport type StateNodeConfig = {\n type?: 'atomic' | 'compound' | 'parallel' | 'final' | 'history';\n entry?: ActionRef[];\n exit?: ActionRef[];\n on?: Record<string, string | Transition | Transition[]>;\n always?: Transition[];\n initial?: string;\n states?: Record<string, StateNodeConfig>;\n meta?: {\n label?: string;\n description?: string;\n color?: string;\n aiInstructions?: string;\n };\n};\n\n/**\n * State Node Definition\n */\nexport const StateNodeSchema: z.ZodType<StateNodeConfig> = z.lazy(() => z.object({\n /** Type of state */\n type: z.enum(['atomic', 'compound', 'parallel', 'final', 'history']).default('atomic'),\n \n /** Entry/Exit Actions */\n entry: z.array(ActionRefSchema).optional().describe('Actions to run when entering this state'),\n exit: z.array(ActionRefSchema).optional().describe('Actions to run when leaving this state'),\n \n /** Transitions (Events) */\n on: z.record(z.string(), z.union([\n z.string(), // Shorthand target\n TransitionSchema, \n z.array(TransitionSchema)\n ])).optional().describe('Map of Event Type -> Transition Definition'),\n \n /** Always Transitions (Eventless) */\n always: z.array(TransitionSchema).optional(),\n\n /** Nesting (Hierarchical States) */\n initial: z.string().optional().describe('Initial child state (if compound)'),\n states: z.record(z.string(), StateNodeSchema).optional(),\n \n /** Metadata for UI/AI */\n meta: z.object({\n label: z.string().optional(),\n description: z.string().optional(),\n color: z.string().optional(), // For UI diagrams\n // Instructions for AI Agent when in this state\n aiInstructions: z.string().optional().describe('Specific instructions for AI when in this state'),\n }).optional(),\n}));\n\n/**\n * Top-Level State Machine Definition\n */\nexport const StateMachineSchema = z.object({\n id: SnakeCaseIdentifierSchema.describe('Unique Machine ID'),\n description: z.string().optional(),\n \n /** Context (Memory) Schema */\n contextSchema: z.record(z.string(), z.unknown()).optional().describe('Zod Schema for the machine context/memory'),\n \n /** Initial State */\n initial: z.string().describe('Initial State ID'),\n \n /** State Definitions */\n states: z.record(z.string(), StateNodeSchema).describe('State Nodes'),\n \n /** Global Listeners */\n on: z.record(z.string(), z.union([z.string(), TransitionSchema, z.array(TransitionSchema)])).optional(),\n});\n\nexport type StateMachineConfig = z.infer<typeof StateMachineSchema>;\n","// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.\n\n/**\n * @module automation/node-executor\n *\n * Node Executor Plugin Protocol — Wait Node Pause/Resume\n *\n * Defines the specification for node executor plugins, with a focus on\n * the `wait` node executor that supports flow pause and external-event\n * resume (signal, manual, webhook, condition).\n *\n * The protocol covers:\n * - **WaitResumePayload**: The payload delivered when a paused flow is resumed\n * - **WaitExecutorConfig**: Configuration for the wait executor plugin\n * - **NodeExecutorDescriptor**: Generic node executor plugin descriptor\n */\n\nimport { z } from 'zod';\n\n// ─── Wait Event Types ────────────────────────────────────────────────\n\n/**\n * Wait event type — determines how a wait node is resumed.\n * Mirrors the `waitEventConfig.eventType` in flow.zod.ts.\n */\nexport const WaitEventTypeSchema = z.enum([\n 'timer', // Resume after duration/datetime\n 'signal', // Resume on named signal dispatch\n 'webhook', // Resume on incoming webhook call\n 'manual', // Resume by manual operator action\n 'condition', // Resume when a data condition is met (polling)\n]).describe('Wait event type determining how a paused flow is resumed');\n\nexport type WaitEventType = z.infer<typeof WaitEventTypeSchema>;\n\n// ─── Wait Resume Payload ─────────────────────────────────────────────\n\n/**\n * Payload delivered when a paused wait node is resumed by an external event.\n * The runtime engine passes this to the flow executor to continue execution.\n */\nexport const WaitResumePayloadSchema = z.object({\n /** The execution id of the paused flow */\n executionId: z.string().describe('Execution ID of the paused flow'),\n\n /** The checkpoint id being resumed */\n checkpointId: z.string().describe('Checkpoint ID to resume from'),\n\n /** The node id of the wait node being resumed */\n nodeId: z.string().describe('Wait node ID being resumed'),\n\n /** The event type that triggered the resume */\n eventType: WaitEventTypeSchema.describe('Event type that triggered resume'),\n\n /** Signal name (for signal events) */\n signalName: z.string().optional().describe('Signal name (when eventType is signal)'),\n\n /** Webhook payload data (for webhook events) */\n webhookPayload: z.record(z.string(), z.unknown()).optional()\n .describe('Webhook request payload (when eventType is webhook)'),\n\n /** Who/what triggered the resume */\n resumedBy: z.string().optional().describe('User ID or system identifier that triggered resume'),\n\n /** Timestamp of the resume event */\n resumedAt: z.string().datetime().describe('ISO 8601 timestamp of the resume event'),\n\n /** Additional variables to merge into flow context on resume */\n variables: z.record(z.string(), z.unknown()).optional()\n .describe('Variables to merge into flow context upon resume'),\n}).describe('Payload for resuming a paused wait node');\n\nexport type WaitResumePayload = z.infer<typeof WaitResumePayloadSchema>;\n\n// ─── Wait Executor Config ────────────────────────────────────────────\n\n/**\n * Timeout behavior when a wait node exceeds its timeout.\n */\nexport const WaitTimeoutBehaviorSchema = z.enum([\n 'fail', // Mark execution as failed\n 'continue', // Continue to next node (skip wait)\n 'fallback', // Execute a fallback edge\n]).describe('Behavior when a wait node exceeds its timeout');\n\nexport type WaitTimeoutBehavior = z.infer<typeof WaitTimeoutBehaviorSchema>;\n\n/**\n * Configuration for the wait node executor plugin.\n * Controls polling intervals, webhook endpoint patterns, and timeout behavior.\n */\nexport const WaitExecutorConfigSchema = z.object({\n /** Default timeout for wait nodes without explicit timeout (ms) */\n defaultTimeoutMs: z.number().int().min(0).default(86400000)\n .describe('Default timeout in ms (default: 24 hours)'),\n\n /** Default timeout behavior */\n defaultTimeoutBehavior: WaitTimeoutBehaviorSchema.default('fail')\n .describe('Default behavior when wait timeout is exceeded'),\n\n /** Polling interval for condition-based waits (ms) */\n conditionPollIntervalMs: z.number().int().min(1000).default(30000)\n .describe('Polling interval for condition waits in ms (default: 30s)'),\n\n /** Maximum polling attempts for condition waits (0 = unlimited until timeout) */\n conditionMaxPolls: z.number().int().min(0).default(0)\n .describe('Max polling attempts for condition waits (0 = unlimited)'),\n\n /** Webhook endpoint URL pattern (runtime fills in execution/node ids) */\n webhookUrlPattern: z.string().default('/api/v1/automation/resume/{executionId}/{nodeId}')\n .describe('URL pattern for webhook resume endpoints'),\n\n /** Whether to persist checkpoints to durable storage */\n persistCheckpoints: z.boolean().default(true)\n .describe('Persist wait checkpoints to durable storage'),\n\n /** Maximum concurrent paused executions (0 = unlimited) */\n maxPausedExecutions: z.number().int().min(0).default(0)\n .describe('Max concurrent paused executions (0 = unlimited)'),\n}).describe('Wait node executor plugin configuration');\n\nexport type WaitExecutorConfig = z.infer<typeof WaitExecutorConfigSchema>;\n\n// ─── Node Executor Descriptor ────────────────────────────────────────\n\n/**\n * Generic node executor plugin descriptor.\n * Each node type (wait, script, http_request, etc.) can register\n * a custom executor via this descriptor.\n */\nexport const NodeExecutorDescriptorSchema = z.object({\n /** Unique executor identifier */\n id: z.string().describe('Unique executor plugin identifier'),\n\n /** Human-readable name */\n name: z.string().describe('Display name'),\n\n /** The FlowNodeAction types this executor handles */\n nodeTypes: z.array(z.string()).min(1)\n .describe('FlowNodeAction types this executor handles'),\n\n /** Executor plugin version (semver) */\n version: z.string().describe('Plugin version (semver)'),\n\n /** Description of the executor */\n description: z.string().optional().describe('Executor description'),\n\n /** Whether this executor supports async pause/resume */\n supportsPause: z.boolean().default(false)\n .describe('Whether the executor supports async pause/resume'),\n\n /** Whether this executor supports cancellation mid-execution */\n supportsCancellation: z.boolean().default(false)\n .describe('Whether the executor supports mid-execution cancellation'),\n\n /** Whether this executor supports retry on failure */\n supportsRetry: z.boolean().default(true)\n .describe('Whether the executor supports retry on failure'),\n\n /** Executor-specific configuration schema (JSON Schema reference) */\n configSchemaRef: z.string().optional()\n .describe('JSON Schema $ref for executor-specific config'),\n}).describe('Node executor plugin descriptor');\n\nexport type NodeExecutorDescriptor = z.infer<typeof NodeExecutorDescriptorSchema>;\n\n// ─── Built-in Wait Executor Descriptor ───────────────────────────────\n\n/**\n * Built-in descriptor for the wait node executor.\n * Runtime implementations should register this or a compatible executor.\n */\nexport const WAIT_EXECUTOR_DESCRIPTOR: NodeExecutorDescriptor = {\n id: 'objectstack:wait-executor',\n name: 'Wait Node Executor',\n nodeTypes: ['wait'],\n version: '1.0.0',\n description: 'Pauses flow execution and resumes on timer, signal, webhook, manual action, or condition events.',\n supportsPause: true,\n supportsCancellation: true,\n supportsRetry: true,\n};\n","// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.\n\n/**\n * @module automation/bpmn-interop\n *\n * BPMN XML Interoperability Protocol\n *\n * Defines the specification for importing and exporting BPMN 2.0 XML\n * process definitions. This enables interoperability with external BPM\n * tools (Camunda, Activiti, jBPM, etc.) via a plugin-based approach.\n *\n * **Priority:** Low — long-term planning, not a core requirement.\n */\n\nimport { z } from 'zod';\n\n// ─── BPMN Element Mapping ────────────────────────────────────────────\n\n/**\n * Mapping between a BPMN XML element type and an ObjectStack FlowNodeAction.\n * Used during import/export to translate between the two models.\n */\nexport const BpmnElementMappingSchema = z.object({\n /** BPMN XML element type (e.g., \"bpmn:parallelGateway\", \"bpmn:serviceTask\") */\n bpmnType: z.string().describe('BPMN XML element type (e.g., \"bpmn:parallelGateway\")'),\n\n /** Corresponding ObjectStack FlowNodeAction */\n flowNodeAction: z.string().describe('ObjectStack FlowNodeAction value'),\n\n /** Whether this mapping is bidirectional (supports both import and export) */\n bidirectional: z.boolean().default(true).describe('Whether the mapping supports both import and export'),\n\n /** Notes about mapping limitations or special handling */\n notes: z.string().optional().describe('Notes about mapping limitations'),\n}).describe('Mapping between BPMN XML element and ObjectStack FlowNodeAction');\n\nexport type BpmnElementMapping = z.infer<typeof BpmnElementMappingSchema>;\n\n// ─── BPMN Import Options ─────────────────────────────────────────────\n\n/**\n * Strategy for handling BPMN elements that have no direct ObjectStack mapping.\n */\nexport const BpmnUnmappedStrategySchema = z.enum([\n 'skip', // Skip unmapped elements silently\n 'warn', // Import with warnings\n 'error', // Fail on unmapped elements\n 'comment', // Import as annotation/comment nodes\n]).describe('Strategy for unmapped BPMN elements during import');\n\nexport type BpmnUnmappedStrategy = z.infer<typeof BpmnUnmappedStrategySchema>;\n\n/**\n * Options for importing a BPMN 2.0 XML process definition into an ObjectStack flow.\n */\nexport const BpmnImportOptionsSchema = z.object({\n /** Strategy for unmapped BPMN elements */\n unmappedStrategy: BpmnUnmappedStrategySchema.default('warn')\n .describe('How to handle unmapped BPMN elements'),\n\n /** Custom element mappings (override or extend built-in mappings) */\n customMappings: z.array(BpmnElementMappingSchema).optional()\n .describe('Custom element mappings to override or extend defaults'),\n\n /** Whether to import BPMN DI (diagram interchange) layout positions */\n importLayout: z.boolean().default(true)\n .describe('Import BPMN DI layout positions into canvas node coordinates'),\n\n /** Whether to import BPMN documentation as node descriptions */\n importDocumentation: z.boolean().default(true)\n .describe('Import BPMN documentation elements as node descriptions'),\n\n /** Target flow name (if not derived from BPMN process name) */\n flowName: z.string().optional()\n .describe('Override flow name (defaults to BPMN process name)'),\n\n /** Whether to validate the imported flow against ObjectStack schema */\n validateAfterImport: z.boolean().default(true)\n .describe('Validate imported flow against FlowSchema after import'),\n}).describe('Options for importing BPMN 2.0 XML into an ObjectStack flow');\n\nexport type BpmnImportOptions = z.infer<typeof BpmnImportOptionsSchema>;\n\n// ─── BPMN Export Options ─────────────────────────────────────────────\n\n/**\n * BPMN XML target version for export.\n */\nexport const BpmnVersionSchema = z.enum([\n '2.0', // BPMN 2.0 (most common, default)\n '2.0.2', // BPMN 2.0.2 (latest revision)\n]).describe('BPMN specification version for export');\n\nexport type BpmnVersion = z.infer<typeof BpmnVersionSchema>;\n\n/**\n * Options for exporting an ObjectStack flow as BPMN 2.0 XML.\n */\nexport const BpmnExportOptionsSchema = z.object({\n /** Target BPMN version */\n version: BpmnVersionSchema.default('2.0')\n .describe('Target BPMN specification version'),\n\n /** Whether to include BPMN DI (diagram interchange) layout data */\n includeLayout: z.boolean().default(true)\n .describe('Include BPMN DI layout data from canvas positions'),\n\n /** Whether to include ObjectStack-specific extensions as BPMN extension elements */\n includeExtensions: z.boolean().default(false)\n .describe('Include ObjectStack extensions in BPMN extensionElements'),\n\n /** Custom element mappings (override built-in for export) */\n customMappings: z.array(BpmnElementMappingSchema).optional()\n .describe('Custom element mappings for export'),\n\n /** Whether to pretty-print the XML output */\n prettyPrint: z.boolean().default(true)\n .describe('Pretty-print XML output with indentation'),\n\n /** XML namespace prefix for BPMN elements */\n namespacePrefix: z.string().default('bpmn')\n .describe('XML namespace prefix for BPMN elements'),\n}).describe('Options for exporting an ObjectStack flow as BPMN 2.0 XML');\n\nexport type BpmnExportOptions = z.infer<typeof BpmnExportOptionsSchema>;\n\n// ─── BPMN Import/Export Result ───────────────────────────────────────\n\n/**\n * Diagnostic message from BPMN import/export operations.\n */\nexport const BpmnDiagnosticSchema = z.object({\n /** Severity level */\n severity: z.enum(['info', 'warning', 'error']).describe('Diagnostic severity'),\n\n /** Human-readable message */\n message: z.string().describe('Diagnostic message'),\n\n /** BPMN element ID (if applicable) */\n bpmnElementId: z.string().optional().describe('BPMN element ID related to this diagnostic'),\n\n /** ObjectStack node ID (if applicable) */\n nodeId: z.string().optional().describe('ObjectStack node ID related to this diagnostic'),\n}).describe('Diagnostic message from BPMN import/export');\n\nexport type BpmnDiagnostic = z.infer<typeof BpmnDiagnosticSchema>;\n\n/**\n * Result of a BPMN import or export operation.\n */\nexport const BpmnInteropResultSchema = z.object({\n /** Whether the operation completed successfully */\n success: z.boolean().describe('Whether the operation completed successfully'),\n\n /** Diagnostic messages (warnings, errors, info) */\n diagnostics: z.array(BpmnDiagnosticSchema).default([])\n .describe('Diagnostic messages from the operation'),\n\n /** Number of elements successfully mapped */\n mappedCount: z.number().int().min(0).default(0)\n .describe('Number of elements successfully mapped'),\n\n /** Number of elements skipped or unmapped */\n unmappedCount: z.number().int().min(0).default(0)\n .describe('Number of elements that could not be mapped'),\n}).describe('Result of a BPMN import/export operation');\n\nexport type BpmnInteropResult = z.infer<typeof BpmnInteropResultSchema>;\n\n// ─── Built-in Element Mappings ───────────────────────────────────────\n\n/**\n * Built-in element mappings between BPMN 2.0 XML types and ObjectStack FlowNodeAction.\n * Import/export plugins should use these as defaults, with user overrides applied on top.\n */\nexport const BUILT_IN_BPMN_MAPPINGS: BpmnElementMapping[] = [\n { bpmnType: 'bpmn:startEvent', flowNodeAction: 'start', bidirectional: true },\n { bpmnType: 'bpmn:endEvent', flowNodeAction: 'end', bidirectional: true },\n { bpmnType: 'bpmn:exclusiveGateway', flowNodeAction: 'decision', bidirectional: true },\n { bpmnType: 'bpmn:parallelGateway', flowNodeAction: 'parallel_gateway', bidirectional: true },\n { bpmnType: 'bpmn:serviceTask', flowNodeAction: 'http_request', bidirectional: true, notes: 'Maps HTTP/connector tasks' },\n { bpmnType: 'bpmn:scriptTask', flowNodeAction: 'script', bidirectional: true },\n { bpmnType: 'bpmn:userTask', flowNodeAction: 'screen', bidirectional: true },\n { bpmnType: 'bpmn:callActivity', flowNodeAction: 'subflow', bidirectional: true },\n { bpmnType: 'bpmn:intermediateCatchEvent', flowNodeAction: 'wait', bidirectional: true, notes: 'Timer/signal/message catch events' },\n { bpmnType: 'bpmn:boundaryEvent', flowNodeAction: 'boundary_event', bidirectional: true },\n { bpmnType: 'bpmn:task', flowNodeAction: 'assignment', bidirectional: true, notes: 'Generic BPMN task maps to assignment' },\n];\n"]}