@vertesia/common 1.5.0-dev.20260722.120446Z → 1.5.0-dev.20260804.124748Z

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 (522) hide show
  1. package/lib/access-control-values.d.ts +98 -0
  2. package/lib/access-control-values.d.ts.map +1 -0
  3. package/lib/access-control-values.js +101 -0
  4. package/lib/access-control-values.js.map +1 -0
  5. package/lib/access-control.d.ts +22 -119
  6. package/lib/access-control.d.ts.map +1 -1
  7. package/lib/access-control.js +6 -78
  8. package/lib/access-control.js.map +1 -1
  9. package/lib/account-values.d.ts +53 -0
  10. package/lib/account-values.d.ts.map +1 -0
  11. package/lib/account-values.js +91 -0
  12. package/lib/account-values.js.map +1 -0
  13. package/lib/analytics.d.ts +12 -38
  14. package/lib/analytics.d.ts.map +1 -1
  15. package/lib/api-schemas/access-control.d.ts +215 -0
  16. package/lib/api-schemas/access-control.d.ts.map +1 -0
  17. package/lib/api-schemas/access-control.js +165 -0
  18. package/lib/api-schemas/access-control.js.map +1 -0
  19. package/lib/api-schemas/account.d.ts +101 -0
  20. package/lib/api-schemas/account.d.ts.map +1 -0
  21. package/lib/api-schemas/account.js +136 -0
  22. package/lib/api-schemas/account.js.map +1 -0
  23. package/lib/api-schemas/adapter.d.ts +80 -0
  24. package/lib/api-schemas/adapter.d.ts.map +1 -0
  25. package/lib/api-schemas/adapter.js +726 -0
  26. package/lib/api-schemas/adapter.js.map +1 -0
  27. package/lib/api-schemas/agent-runs.d.ts +3781 -0
  28. package/lib/api-schemas/agent-runs.d.ts.map +1 -0
  29. package/lib/api-schemas/agent-runs.js +991 -0
  30. package/lib/api-schemas/agent-runs.js.map +1 -0
  31. package/lib/api-schemas/analytics.d.ts +86 -0
  32. package/lib/api-schemas/analytics.d.ts.map +1 -0
  33. package/lib/api-schemas/analytics.js +58 -0
  34. package/lib/api-schemas/analytics.js.map +1 -0
  35. package/lib/api-schemas/apikey.d.ts +231 -0
  36. package/lib/api-schemas/apikey.d.ts.map +1 -0
  37. package/lib/api-schemas/apikey.js +172 -0
  38. package/lib/api-schemas/apikey.js.map +1 -0
  39. package/lib/api-schemas/app-lifecycle.d.ts +1114 -0
  40. package/lib/api-schemas/app-lifecycle.d.ts.map +1 -0
  41. package/lib/api-schemas/app-lifecycle.js +750 -0
  42. package/lib/api-schemas/app-lifecycle.js.map +1 -0
  43. package/lib/api-schemas/app-runtime.d.ts +9056 -0
  44. package/lib/api-schemas/app-runtime.d.ts.map +1 -0
  45. package/lib/api-schemas/app-runtime.js +782 -0
  46. package/lib/api-schemas/app-runtime.js.map +1 -0
  47. package/lib/api-schemas/apps.d.ts +247 -0
  48. package/lib/api-schemas/apps.d.ts.map +1 -0
  49. package/lib/api-schemas/apps.js +366 -0
  50. package/lib/api-schemas/apps.js.map +1 -0
  51. package/lib/api-schemas/audit-trail.d.ts +465 -0
  52. package/lib/api-schemas/audit-trail.d.ts.map +1 -0
  53. package/lib/api-schemas/audit-trail.js +218 -0
  54. package/lib/api-schemas/audit-trail.js.map +1 -0
  55. package/lib/api-schemas/bulk-operation.d.ts +104 -0
  56. package/lib/api-schemas/bulk-operation.d.ts.map +1 -0
  57. package/lib/api-schemas/bulk-operation.js +66 -0
  58. package/lib/api-schemas/bulk-operation.js.map +1 -0
  59. package/lib/api-schemas/commands.d.ts +50 -0
  60. package/lib/api-schemas/commands.d.ts.map +1 -0
  61. package/lib/api-schemas/commands.js +58 -0
  62. package/lib/api-schemas/commands.js.map +1 -0
  63. package/lib/api-schemas/content.d.ts +3561 -0
  64. package/lib/api-schemas/content.d.ts.map +1 -0
  65. package/lib/api-schemas/content.js +842 -0
  66. package/lib/api-schemas/content.js.map +1 -0
  67. package/lib/api-schemas/cost-analytics.d.ts +300 -0
  68. package/lib/api-schemas/cost-analytics.d.ts.map +1 -0
  69. package/lib/api-schemas/cost-analytics.js +218 -0
  70. package/lib/api-schemas/cost-analytics.js.map +1 -0
  71. package/lib/api-schemas/dashboard.d.ts +408 -0
  72. package/lib/api-schemas/dashboard.d.ts.map +1 -0
  73. package/lib/api-schemas/dashboard.js +311 -0
  74. package/lib/api-schemas/dashboard.js.map +1 -0
  75. package/lib/api-schemas/data-store.d.ts +1650 -0
  76. package/lib/api-schemas/data-store.d.ts.map +1 -0
  77. package/lib/api-schemas/data-store.js +504 -0
  78. package/lib/api-schemas/data-store.js.map +1 -0
  79. package/lib/api-schemas/document-processing.d.ts +1501 -0
  80. package/lib/api-schemas/document-processing.d.ts.map +1 -0
  81. package/lib/api-schemas/document-processing.js +312 -0
  82. package/lib/api-schemas/document-processing.js.map +1 -0
  83. package/lib/api-schemas/embeddings.d.ts +184 -0
  84. package/lib/api-schemas/embeddings.d.ts.map +1 -0
  85. package/lib/api-schemas/embeddings.js +102 -0
  86. package/lib/api-schemas/embeddings.js.map +1 -0
  87. package/lib/api-schemas/environment.d.ts +412 -0
  88. package/lib/api-schemas/environment.d.ts.map +1 -0
  89. package/lib/api-schemas/environment.js +170 -0
  90. package/lib/api-schemas/environment.js.map +1 -0
  91. package/lib/api-schemas/events.d.ts +4880 -0
  92. package/lib/api-schemas/events.d.ts.map +1 -0
  93. package/lib/api-schemas/events.js +832 -0
  94. package/lib/api-schemas/events.js.map +1 -0
  95. package/lib/api-schemas/files.d.ts +107 -0
  96. package/lib/api-schemas/files.d.ts.map +1 -0
  97. package/lib/api-schemas/files.js +137 -0
  98. package/lib/api-schemas/files.js.map +1 -0
  99. package/lib/api-schemas/group.d.ts +122 -0
  100. package/lib/api-schemas/group.d.ts.map +1 -0
  101. package/lib/api-schemas/group.js +142 -0
  102. package/lib/api-schemas/group.js.map +1 -0
  103. package/lib/api-schemas/index.d.ts +36 -0
  104. package/lib/api-schemas/index.d.ts.map +1 -0
  105. package/lib/api-schemas/index.js +36 -0
  106. package/lib/api-schemas/index.js.map +1 -0
  107. package/lib/api-schemas/indexing.d.ts +144 -0
  108. package/lib/api-schemas/indexing.d.ts.map +1 -0
  109. package/lib/api-schemas/indexing.js +217 -0
  110. package/lib/api-schemas/indexing.js.map +1 -0
  111. package/lib/api-schemas/integrations.d.ts +269 -0
  112. package/lib/api-schemas/integrations.d.ts.map +1 -0
  113. package/lib/api-schemas/integrations.js +335 -0
  114. package/lib/api-schemas/integrations.js.map +1 -0
  115. package/lib/api-schemas/interaction.d.ts +22454 -0
  116. package/lib/api-schemas/interaction.d.ts.map +1 -0
  117. package/lib/api-schemas/interaction.js +2065 -0
  118. package/lib/api-schemas/interaction.js.map +1 -0
  119. package/lib/api-schemas/invites.d.ts +162 -0
  120. package/lib/api-schemas/invites.d.ts.map +1 -0
  121. package/lib/api-schemas/invites.js +106 -0
  122. package/lib/api-schemas/invites.js.map +1 -0
  123. package/lib/api-schemas/oauth-server.d.ts +415 -0
  124. package/lib/api-schemas/oauth-server.d.ts.map +1 -0
  125. package/lib/api-schemas/oauth-server.js +193 -0
  126. package/lib/api-schemas/oauth-server.js.map +1 -0
  127. package/lib/api-schemas/oauth.d.ts +150 -0
  128. package/lib/api-schemas/oauth.d.ts.map +1 -0
  129. package/lib/api-schemas/oauth.js +148 -0
  130. package/lib/api-schemas/oauth.js.map +1 -0
  131. package/lib/api-schemas/parameters.d.ts +64 -0
  132. package/lib/api-schemas/parameters.d.ts.map +1 -0
  133. package/lib/api-schemas/parameters.js +246 -0
  134. package/lib/api-schemas/parameters.js.map +1 -0
  135. package/lib/api-schemas/process.d.ts +499 -0
  136. package/lib/api-schemas/process.d.ts.map +1 -0
  137. package/lib/api-schemas/process.js +817 -0
  138. package/lib/api-schemas/process.js.map +1 -0
  139. package/lib/api-schemas/project-configuration.d.ts +4900 -0
  140. package/lib/api-schemas/project-configuration.d.ts.map +1 -0
  141. package/lib/api-schemas/project-configuration.js +425 -0
  142. package/lib/api-schemas/project-configuration.js.map +1 -0
  143. package/lib/api-schemas/project.d.ts +7247 -0
  144. package/lib/api-schemas/project.d.ts.map +1 -0
  145. package/lib/api-schemas/project.js +185 -0
  146. package/lib/api-schemas/project.js.map +1 -0
  147. package/lib/api-schemas/prompt.d.ts +70 -0
  148. package/lib/api-schemas/prompt.d.ts.map +1 -0
  149. package/lib/api-schemas/prompt.js +77 -0
  150. package/lib/api-schemas/prompt.js.map +1 -0
  151. package/lib/api-schemas/quota.d.ts +90 -0
  152. package/lib/api-schemas/quota.d.ts.map +1 -0
  153. package/lib/api-schemas/quota.js +95 -0
  154. package/lib/api-schemas/quota.js.map +1 -0
  155. package/lib/api-schemas/registry.d.ts +97458 -0
  156. package/lib/api-schemas/registry.d.ts.map +1 -0
  157. package/lib/api-schemas/registry.js +2586 -0
  158. package/lib/api-schemas/registry.js.map +1 -0
  159. package/lib/api-schemas/schema-primitives.d.ts +5 -0
  160. package/lib/api-schemas/schema-primitives.d.ts.map +1 -0
  161. package/lib/api-schemas/schema-primitives.js +11 -0
  162. package/lib/api-schemas/schema-primitives.js.map +1 -0
  163. package/lib/api-schemas/secrets.d.ts +497 -0
  164. package/lib/api-schemas/secrets.d.ts.map +1 -0
  165. package/lib/api-schemas/secrets.js +298 -0
  166. package/lib/api-schemas/secrets.js.map +1 -0
  167. package/lib/api-schemas/store.d.ts +22140 -0
  168. package/lib/api-schemas/store.d.ts.map +1 -0
  169. package/lib/api-schemas/store.js +557 -0
  170. package/lib/api-schemas/store.js.map +1 -0
  171. package/lib/api-schemas/sts.d.ts +156 -0
  172. package/lib/api-schemas/sts.d.ts.map +1 -0
  173. package/lib/api-schemas/sts.js +96 -0
  174. package/lib/api-schemas/sts.js.map +1 -0
  175. package/lib/api-schemas/task.d.ts +215 -0
  176. package/lib/api-schemas/task.d.ts.map +1 -0
  177. package/lib/api-schemas/task.js +95 -0
  178. package/lib/api-schemas/task.js.map +1 -0
  179. package/lib/api-schemas/tools.d.ts +111 -0
  180. package/lib/api-schemas/tools.d.ts.map +1 -0
  181. package/lib/api-schemas/tools.js +122 -0
  182. package/lib/api-schemas/tools.js.map +1 -0
  183. package/lib/api-schemas/user.d.ts +208 -0
  184. package/lib/api-schemas/user.d.ts.map +1 -0
  185. package/lib/api-schemas/user.js +180 -0
  186. package/lib/api-schemas/user.js.map +1 -0
  187. package/lib/api-schemas/view-execution.d.ts +3163 -0
  188. package/lib/api-schemas/view-execution.d.ts.map +1 -0
  189. package/lib/api-schemas/view-execution.js +172 -0
  190. package/lib/api-schemas/view-execution.js.map +1 -0
  191. package/lib/api-schemas/views.d.ts +5990 -0
  192. package/lib/api-schemas/views.d.ts.map +1 -0
  193. package/lib/api-schemas/views.js +396 -0
  194. package/lib/api-schemas/views.js.map +1 -0
  195. package/lib/api-schemas/workflow-runs.d.ts +2209 -0
  196. package/lib/api-schemas/workflow-runs.d.ts.map +1 -0
  197. package/lib/api-schemas/workflow-runs.js +589 -0
  198. package/lib/api-schemas/workflow-runs.js.map +1 -0
  199. package/lib/apikey-values.d.ts +10 -0
  200. package/lib/apikey-values.d.ts.map +1 -0
  201. package/lib/apikey-values.js +11 -0
  202. package/lib/apikey-values.js.map +1 -0
  203. package/lib/apikey.d.ts +37 -36
  204. package/lib/apikey.d.ts.map +1 -1
  205. package/lib/apikey.js +5 -4
  206. package/lib/apikey.js.map +1 -1
  207. package/lib/apps.d.ts +116 -1121
  208. package/lib/apps.d.ts.map +1 -1
  209. package/lib/apps.js.map +1 -1
  210. package/lib/ask-user.d.ts +8 -1
  211. package/lib/ask-user.d.ts.map +1 -1
  212. package/lib/audit-trail.d.ts +17 -128
  213. package/lib/audit-trail.d.ts.map +1 -1
  214. package/lib/audit-trail.js.map +1 -1
  215. package/lib/browser-credentials.d.ts +11 -106
  216. package/lib/browser-credentials.d.ts.map +1 -1
  217. package/lib/common.d.ts +59 -81
  218. package/lib/common.d.ts.map +1 -1
  219. package/lib/cost-analytics.d.ts +14 -167
  220. package/lib/cost-analytics.d.ts.map +1 -1
  221. package/lib/cost-analytics.js.map +1 -1
  222. package/lib/data-platform.d.ts +122 -786
  223. package/lib/data-platform.d.ts.map +1 -1
  224. package/lib/data-platform.js +41 -61
  225. package/lib/data-platform.js.map +1 -1
  226. package/lib/email.d.ts +5 -17
  227. package/lib/email.d.ts.map +1 -1
  228. package/lib/email.js +0 -3
  229. package/lib/email.js.map +1 -1
  230. package/lib/embeddings.d.ts +14 -56
  231. package/lib/embeddings.d.ts.map +1 -1
  232. package/lib/environment.d.ts +19 -113
  233. package/lib/environment.d.ts.map +1 -1
  234. package/lib/environment.js +3 -0
  235. package/lib/environment.js.map +1 -1
  236. package/lib/facets.d.ts +4 -7
  237. package/lib/facets.d.ts.map +1 -1
  238. package/lib/group.d.ts +33 -39
  239. package/lib/group.d.ts.map +1 -1
  240. package/lib/group.js +0 -1
  241. package/lib/group.js.map +1 -1
  242. package/lib/index.d.ts +7 -0
  243. package/lib/index.d.ts.map +1 -1
  244. package/lib/index.js.map +1 -1
  245. package/lib/integrations.d.ts +20 -108
  246. package/lib/integrations.d.ts.map +1 -1
  247. package/lib/integrations.js.map +1 -1
  248. package/lib/interaction-values.d.ts +11 -0
  249. package/lib/interaction-values.d.ts.map +1 -0
  250. package/lib/interaction-values.js +24 -0
  251. package/lib/interaction-values.js.map +1 -0
  252. package/lib/interaction.d.ts +116 -734
  253. package/lib/interaction.d.ts.map +1 -1
  254. package/lib/interaction.js +56 -12
  255. package/lib/interaction.js.map +1 -1
  256. package/lib/meters.d.ts +11 -7
  257. package/lib/meters.d.ts.map +1 -1
  258. package/lib/meters.js.map +1 -1
  259. package/lib/oauth-server.d.ts +33 -119
  260. package/lib/oauth-server.d.ts.map +1 -1
  261. package/lib/oauth.d.ts +14 -96
  262. package/lib/oauth.d.ts.map +1 -1
  263. package/lib/oauth.js +0 -4
  264. package/lib/oauth.js.map +1 -1
  265. package/lib/payload.d.ts +15 -38
  266. package/lib/payload.d.ts.map +1 -1
  267. package/lib/platform-event.d.ts +49 -462
  268. package/lib/platform-event.d.ts.map +1 -1
  269. package/lib/platform-event.js.map +1 -1
  270. package/lib/principal-context.d.ts +10 -15
  271. package/lib/principal-context.d.ts.map +1 -1
  272. package/lib/project-values.d.ts +24 -0
  273. package/lib/project-values.d.ts.map +1 -0
  274. package/lib/project-values.js +42 -0
  275. package/lib/project-values.js.map +1 -0
  276. package/lib/project.d.ts +55 -503
  277. package/lib/project.d.ts.map +1 -1
  278. package/lib/project.js +6 -76
  279. package/lib/project.js.map +1 -1
  280. package/lib/prompt.d.ts +20 -51
  281. package/lib/prompt.d.ts.map +1 -1
  282. package/lib/prompt.js.map +1 -1
  283. package/lib/query.d.ts +27 -88
  284. package/lib/query.d.ts.map +1 -1
  285. package/lib/rate-limiter.d.ts +19 -70
  286. package/lib/rate-limiter.d.ts.map +1 -1
  287. package/lib/rate-limiter.js +0 -3
  288. package/lib/rate-limiter.js.map +1 -1
  289. package/lib/refs.d.ts +3 -11
  290. package/lib/refs.d.ts.map +1 -1
  291. package/lib/refs.js.map +1 -1
  292. package/lib/roles/types.d.ts +14 -20
  293. package/lib/roles/types.d.ts.map +1 -1
  294. package/lib/roles/types.js +5 -9
  295. package/lib/roles/types.js.map +1 -1
  296. package/lib/runs.d.ts +6 -25
  297. package/lib/runs.d.ts.map +1 -1
  298. package/lib/secrets.d.ts +20 -105
  299. package/lib/secrets.d.ts.map +1 -1
  300. package/lib/store/agent-approval.d.ts +5 -14
  301. package/lib/store/agent-approval.d.ts.map +1 -1
  302. package/lib/store/agent-approval.js.map +1 -1
  303. package/lib/store/agent-run.d.ts +63 -342
  304. package/lib/store/agent-run.d.ts.map +1 -1
  305. package/lib/store/collections.d.ts +11 -63
  306. package/lib/store/collections.d.ts.map +1 -1
  307. package/lib/store/collections.js.map +1 -1
  308. package/lib/store/conversation-state.d.ts +63 -61
  309. package/lib/store/conversation-state.d.ts.map +1 -1
  310. package/lib/store/conversation-state.js +2 -0
  311. package/lib/store/conversation-state.js.map +1 -1
  312. package/lib/store/doc-analyzer.d.ts +9 -32
  313. package/lib/store/doc-analyzer.d.ts.map +1 -1
  314. package/lib/store/dsl-workflow.d.ts +37 -151
  315. package/lib/store/dsl-workflow.d.ts.map +1 -1
  316. package/lib/store/dsl-workflow.js.map +1 -1
  317. package/lib/store/editing-policy-schema.generated.d.ts +3 -0
  318. package/lib/store/editing-policy-schema.generated.d.ts.map +1 -0
  319. package/lib/store/editing-policy-schema.generated.js +28 -0
  320. package/lib/store/editing-policy-schema.generated.js.map +1 -0
  321. package/lib/store/grounded-extraction.d.ts +7 -104
  322. package/lib/store/grounded-extraction.d.ts.map +1 -1
  323. package/lib/store/grounded-extraction.js.map +1 -1
  324. package/lib/store/index.d.ts +2 -0
  325. package/lib/store/index.d.ts.map +1 -1
  326. package/lib/store/index.js +3 -0
  327. package/lib/store/index.js.map +1 -1
  328. package/lib/store/intake-policy-schema.generated.d.ts +3 -0
  329. package/lib/store/intake-policy-schema.generated.d.ts.map +1 -0
  330. package/lib/store/intake-policy-schema.generated.js +1425 -0
  331. package/lib/store/intake-policy-schema.generated.js.map +1 -0
  332. package/lib/store/process-schema.d.ts +80 -0
  333. package/lib/store/process-schema.d.ts.map +1 -1
  334. package/lib/store/process-schema.js +79 -0
  335. package/lib/store/process-schema.js.map +1 -1
  336. package/lib/store/process-validation.d.ts.map +1 -1
  337. package/lib/store/process-validation.js +70 -2
  338. package/lib/store/process-validation.js.map +1 -1
  339. package/lib/store/process.d.ts +36 -125
  340. package/lib/store/process.d.ts.map +1 -1
  341. package/lib/store/process.js.map +1 -1
  342. package/lib/store/rendering.d.ts +9 -64
  343. package/lib/store/rendering.d.ts.map +1 -1
  344. package/lib/store/rendering.js.map +1 -1
  345. package/lib/store/store.d.ts +98 -693
  346. package/lib/store/store.d.ts.map +1 -1
  347. package/lib/store/store.js +4 -443
  348. package/lib/store/store.js.map +1 -1
  349. package/lib/store/task.d.ts +15 -59
  350. package/lib/store/task.d.ts.map +1 -1
  351. package/lib/store/task.js +0 -3
  352. package/lib/store/task.js.map +1 -1
  353. package/lib/store/workflow.d.ts +56 -516
  354. package/lib/store/workflow.d.ts.map +1 -1
  355. package/lib/store/workflow.js +28 -11
  356. package/lib/store/workflow.js.map +1 -1
  357. package/lib/sts-token-types.d.ts +12 -66
  358. package/lib/sts-token-types.d.ts.map +1 -1
  359. package/lib/sts-token-types.js.map +1 -1
  360. package/lib/tools.d.ts +8 -100
  361. package/lib/tools.d.ts.map +1 -1
  362. package/lib/transient-tokens-values.d.ts +11 -0
  363. package/lib/transient-tokens-values.d.ts.map +1 -0
  364. package/lib/transient-tokens-values.js +12 -0
  365. package/lib/transient-tokens-values.js.map +1 -0
  366. package/lib/transient-tokens.d.ts +15 -13
  367. package/lib/transient-tokens.d.ts.map +1 -1
  368. package/lib/transient-tokens.js +5 -5
  369. package/lib/transient-tokens.js.map +1 -1
  370. package/lib/user.d.ts +54 -155
  371. package/lib/user.d.ts.map +1 -1
  372. package/lib/user.js +1 -78
  373. package/lib/user.js.map +1 -1
  374. package/lib/versions.d.ts +24 -1
  375. package/lib/versions.d.ts.map +1 -1
  376. package/lib/versions.js +23 -0
  377. package/lib/versions.js.map +1 -1
  378. package/lib/vertesia-common.js +6 -2
  379. package/lib/vertesia-common.js.map +1 -1
  380. package/lib/views-schema.d.ts +4 -4
  381. package/lib/views.d.ts +56 -312
  382. package/lib/views.d.ts.map +1 -1
  383. package/lib/views.js.map +1 -1
  384. package/package.json +14 -5
  385. package/src/access-control-values.ts +113 -0
  386. package/src/access-control.ts +33 -138
  387. package/src/account-values.ts +95 -0
  388. package/src/agent-resources.test.ts +100 -0
  389. package/src/analytics.ts +18 -42
  390. package/src/api-schemas/access-control.contract.test.ts +209 -0
  391. package/src/api-schemas/access-control.ts +208 -0
  392. package/src/api-schemas/account.contract.test.ts +318 -0
  393. package/src/api-schemas/account.ts +150 -0
  394. package/src/api-schemas/adapter-edge-cases.test.ts +480 -0
  395. package/src/api-schemas/adapter.ts +778 -0
  396. package/src/api-schemas/agent-runs.ts +1081 -0
  397. package/src/api-schemas/analytics.ts +65 -0
  398. package/src/api-schemas/apikey.contract.test.ts +270 -0
  399. package/src/api-schemas/apikey.ts +199 -0
  400. package/src/api-schemas/app-lifecycle.ts +841 -0
  401. package/src/api-schemas/app-runtime.ts +919 -0
  402. package/src/api-schemas/apps.ts +415 -0
  403. package/src/api-schemas/audit-trail.ts +243 -0
  404. package/src/api-schemas/bulk-operation.contract.test.ts +39 -0
  405. package/src/api-schemas/bulk-operation.ts +75 -0
  406. package/src/api-schemas/bundle-isolation.test.ts +80 -0
  407. package/src/api-schemas/commands.contract.test.ts +51 -0
  408. package/src/api-schemas/commands.ts +62 -0
  409. package/src/api-schemas/content.ts +939 -0
  410. package/src/api-schemas/cost-analytics.contract.test.ts +64 -0
  411. package/src/api-schemas/cost-analytics.ts +235 -0
  412. package/src/api-schemas/dashboard.contract.test.ts +127 -0
  413. package/src/api-schemas/dashboard.ts +351 -0
  414. package/src/api-schemas/data-store.contract.test.ts +91 -0
  415. package/src/api-schemas/data-store.ts +571 -0
  416. package/src/api-schemas/document-processing.contract.test.ts +76 -0
  417. package/src/api-schemas/document-processing.ts +344 -0
  418. package/src/api-schemas/embeddings.ts +113 -0
  419. package/src/api-schemas/environment.contract.test.ts +184 -0
  420. package/src/api-schemas/environment.ts +190 -0
  421. package/src/api-schemas/events.ts +921 -0
  422. package/src/api-schemas/files.ts +159 -0
  423. package/src/api-schemas/group.contract.test.ts +205 -0
  424. package/src/api-schemas/group.ts +155 -0
  425. package/src/api-schemas/index.ts +35 -0
  426. package/src/api-schemas/indexing.contract.test.ts +83 -0
  427. package/src/api-schemas/indexing.ts +234 -0
  428. package/src/api-schemas/integrations.ts +369 -0
  429. package/src/api-schemas/interaction.ts +2357 -0
  430. package/src/api-schemas/invites.contract.test.ts +268 -0
  431. package/src/api-schemas/invites.ts +127 -0
  432. package/src/api-schemas/llumiverse.contract.test.ts +108 -0
  433. package/src/api-schemas/oauth-server.ts +219 -0
  434. package/src/api-schemas/oauth.contract.test.ts +118 -0
  435. package/src/api-schemas/oauth.ts +166 -0
  436. package/src/api-schemas/parameters.test.ts +402 -0
  437. package/src/api-schemas/parameters.ts +310 -0
  438. package/src/api-schemas/process.ts +929 -0
  439. package/src/api-schemas/project-configuration.ts +478 -0
  440. package/src/api-schemas/project.contract.test.ts +365 -0
  441. package/src/api-schemas/project.ts +214 -0
  442. package/src/api-schemas/prompt.ts +88 -0
  443. package/src/api-schemas/pruning-limits.test.ts +189 -0
  444. package/src/api-schemas/quota.contract.test.ts +147 -0
  445. package/src/api-schemas/quota.ts +122 -0
  446. package/src/api-schemas/registry-groups.test.ts +91 -0
  447. package/src/api-schemas/registry.ts +3487 -0
  448. package/src/api-schemas/response-pruning.test.ts +260 -0
  449. package/src/api-schemas/schema-primitives.ts +12 -0
  450. package/src/api-schemas/secrets.ts +332 -0
  451. package/src/api-schemas/store.contract.test.ts +450 -0
  452. package/src/api-schemas/store.ts +604 -0
  453. package/src/api-schemas/sts.contract.test.ts +80 -0
  454. package/src/api-schemas/sts.ts +110 -0
  455. package/src/api-schemas/task.ts +104 -0
  456. package/src/api-schemas/tools.ts +140 -0
  457. package/src/api-schemas/user.contract.test.ts +191 -0
  458. package/src/api-schemas/user.ts +204 -0
  459. package/src/api-schemas/view-execution.ts +200 -0
  460. package/src/api-schemas/views.ts +437 -0
  461. package/src/api-schemas/workflow-runs.ts +653 -0
  462. package/src/apikey-values.ts +10 -0
  463. package/src/apikey.ts +49 -40
  464. package/src/apps.ts +249 -1179
  465. package/src/ask-user.ts +9 -1
  466. package/src/audit-trail.ts +45 -137
  467. package/src/browser-credentials.ts +21 -106
  468. package/src/common.ts +67 -78
  469. package/src/cost-analytics.ts +37 -176
  470. package/src/data-platform.ts +205 -776
  471. package/src/email.ts +5 -17
  472. package/src/embeddings.ts +22 -60
  473. package/src/environment.ts +52 -124
  474. package/src/facets.ts +4 -7
  475. package/src/group.ts +38 -42
  476. package/src/index.ts +11 -0
  477. package/src/integrations.ts +39 -129
  478. package/src/interaction-values.ts +23 -0
  479. package/src/interaction.ts +231 -841
  480. package/src/meters.ts +11 -7
  481. package/src/oauth-server.ts +58 -127
  482. package/src/oauth.ts +24 -108
  483. package/src/payload.ts +25 -40
  484. package/src/platform-event.ts +98 -484
  485. package/src/principal-context.ts +11 -15
  486. package/src/project-values.ts +41 -0
  487. package/src/project.ts +116 -588
  488. package/src/prompt.ts +34 -61
  489. package/src/query.ts +34 -93
  490. package/src/rate-limiter.ts +27 -75
  491. package/src/refs.ts +4 -11
  492. package/src/roles/types.ts +20 -20
  493. package/src/runs.ts +11 -24
  494. package/src/secrets.ts +38 -117
  495. package/src/store/agent-approval.ts +9 -14
  496. package/src/store/agent-run.ts +106 -434
  497. package/src/store/collections.ts +21 -63
  498. package/src/store/content-type-editing.test.ts +17 -0
  499. package/src/store/conversation-state.ts +78 -64
  500. package/src/store/doc-analyzer.ts +17 -33
  501. package/src/store/dsl-workflow.ts +62 -158
  502. package/src/store/editing-policy-schema.generated.ts +30 -0
  503. package/src/store/grounded-extraction.ts +13 -104
  504. package/src/store/index.ts +3 -0
  505. package/src/store/intake-policy-schema.generated.ts +1442 -0
  506. package/src/store/process-schema.test.ts +43 -0
  507. package/src/store/process-schema.ts +79 -0
  508. package/src/store/process-validation.test.ts +141 -0
  509. package/src/store/process-validation.ts +82 -2
  510. package/src/store/process.ts +70 -146
  511. package/src/store/rendering.ts +15 -64
  512. package/src/store/store.ts +197 -1182
  513. package/src/store/task.ts +25 -59
  514. package/src/store/workflow.ts +103 -554
  515. package/src/sts-token-types.ts +24 -75
  516. package/src/tools.ts +18 -97
  517. package/src/transient-tokens-values.ts +11 -0
  518. package/src/transient-tokens.ts +16 -13
  519. package/src/user.ts +74 -214
  520. package/src/versions.ts +24 -0
  521. package/src/views-schema.test.ts +9 -1
  522. package/src/views.ts +106 -329
package/src/prompt.ts CHANGED
@@ -1,5 +1,19 @@
1
- import type { JSONObject, JSONSchema, PromptRole } from '@llumiverse/common';
2
- import type { ProjectRef } from './project.js';
1
+ import type { JSONSchema, PromptRole } from '@llumiverse/common';
2
+ import type { z } from 'zod';
3
+ import type {
4
+ PromptTemplateCreatePayloadSchema,
5
+ PromptTemplateRefSchema,
6
+ PromptTemplateSchema,
7
+ PromptTemplateUpdatePayloadSchema,
8
+ } from './api-schemas/interaction.js';
9
+ import type {
10
+ PromptTemplateForkPayloadSchema,
11
+ PromptTemplateInteractionsResponseSchema,
12
+ PromptTemplateInteractionUsageSchema,
13
+ PromptTemplateInteractionVersionSchema,
14
+ RenderPromptPayloadSchema,
15
+ RenderPromptResponseSchema,
16
+ } from './api-schemas/prompt.js';
3
17
 
4
18
  export interface ChatPromptSchema {
5
19
  role: PromptRole.user | PromptRole.assistant;
@@ -38,18 +52,7 @@ export interface ExecutablePromptSegmentDef extends Omit<PromptSegmentDef, 'temp
38
52
  template?: ExecutablePromptTemplate;
39
53
  }
40
54
 
41
- export interface PromptTemplateRef {
42
- id: string;
43
- name: string;
44
- description?: string;
45
- role: PromptRole;
46
- version: number;
47
- status: PromptStatus;
48
- content_type?: TemplateType;
49
- tags?: string[];
50
- created_at: Date;
51
- updated_at: Date;
52
- }
55
+ export type PromptTemplateRef = z.infer<typeof PromptTemplateRefSchema>;
53
56
 
54
57
  export interface PromptTemplateRefWithSchema extends PromptTemplateRef {
55
58
  inputSchema?: JSONSchema;
@@ -66,56 +69,26 @@ export interface ExecutablePromptTemplate {
66
69
  content_type: TemplateType;
67
70
  inputSchema?: JSONSchema;
68
71
  }
69
- export interface PromptTemplate extends ExecutablePromptTemplate {
70
- id: string;
71
- name: string;
72
- status: PromptStatus;
73
- version: number;
74
- // only to be used by published versions
75
- // the id draft version which is the source of this published version (only when published)
76
- parent?: string;
77
- description?: string;
78
- test_data?: JSONObject; // optional test data satisfying the schema
79
- script?: string; // cache the template output
80
- project: string | ProjectRef; // or projectRef? ObjectIdType;
81
- // The name of a field in the input data that is of the specified schema and on each the template will iterate.
82
- // If not specified then the schema will define the whole input data
83
- tags?: string[];
84
- // only for drafts - when it was last published
85
- last_published_at?: Date;
86
- created_by: string;
87
- updated_by: string;
88
- created_at: Date;
89
- updated_at: Date;
90
- }
72
+ export type PromptTemplate = z.infer<typeof PromptTemplateSchema>;
91
73
 
92
- export interface PromptTemplateForkPayload {
93
- keepTags?: boolean;
94
- targetProject?: string;
95
- }
74
+ export type PromptTemplateForkPayload = z.infer<typeof PromptTemplateForkPayloadSchema>;
96
75
 
97
- export interface PromptTemplateCreatePayload
98
- extends Omit<
99
- PromptTemplate,
100
- 'id' | 'created_at' | 'updated_at' | 'created_by' | 'updated_by' | 'project' | 'status' | 'version'
101
- > {}
76
+ export type PromptTemplateCreatePayload = z.infer<typeof PromptTemplateCreatePayloadSchema>;
102
77
 
103
- export interface PromptTemplateUpdatePayload
104
- extends Partial<
105
- Omit<PromptTemplate, 'id' | 'created_at' | 'updated_at' | 'created_by' | 'updated_by' | 'project'>
106
- > {}
78
+ export type PromptTemplateUpdatePayload = z.infer<typeof PromptTemplateUpdatePayloadSchema>;
107
79
 
108
- export interface PromptTemplateInteractionVersion {
109
- version: number;
110
- }
80
+ export type PromptTemplateInteractionVersion = z.infer<typeof PromptTemplateInteractionVersionSchema>;
111
81
 
112
- export interface PromptTemplateInteractionUsage {
113
- id: string;
114
- name: string;
115
- versions: PromptTemplateInteractionVersion[];
116
- }
82
+ export type PromptTemplateInteractionUsage = z.infer<typeof PromptTemplateInteractionUsageSchema>;
117
83
 
118
- export interface PromptTemplateInteractionsResponse {
119
- prompt: string;
120
- interactions: PromptTemplateInteractionUsage[];
121
- }
84
+ export type PromptTemplateInteractionsResponse = z.infer<typeof PromptTemplateInteractionsResponseSchema>;
85
+
86
+ export type RenderPromptPayload = z.infer<typeof RenderPromptPayloadSchema>;
87
+
88
+ /**
89
+ * What `POST /prompts/:id/render` answers with: the segment identity plus the rendered body.
90
+ *
91
+ * Stated here for the first time — the endpoint declared its response inline, so there has never
92
+ * been a name for it on either side of the wire.
93
+ */
94
+ export type RenderPromptResponse = z.infer<typeof RenderPromptResponseSchema>;
package/src/query.ts CHANGED
@@ -1,8 +1,17 @@
1
+ import type { z } from 'zod';
2
+ import type {
3
+ ComplexCollectionSearchQuerySchema,
4
+ ComplexSearchQuerySchema,
5
+ dynamicScalingTypesSchema,
6
+ EmbeddingSearchConfigSchema,
7
+ scoreAggregationTypesSchema,
8
+ VectorSearchQuerySchema,
9
+ } from './api-schemas/content.js';
10
+ import type { InteractionSearchQuerySchema, RunSearchQuerySchema } from './api-schemas/interaction.js';
11
+ import type { PromptSearchQuerySchema } from './api-schemas/prompt.js';
1
12
  import type { ExecutionRunStatus } from './interaction.js';
2
- import type { SearchTypes, SupportedEmbeddingTypes } from './project.js';
3
- import type { CollectionSearchPayload } from './store/collections.js';
4
13
 
5
- export type EmbeddingSearchConfig = Partial<Record<SupportedEmbeddingTypes, boolean>>;
14
+ export type EmbeddingSearchConfig = z.infer<typeof EmbeddingSearchConfigSchema>;
6
15
 
7
16
  export interface RunListingQueryOptions {
8
17
  project?: string;
@@ -12,29 +21,33 @@ export interface RunListingQueryOptions {
12
21
  filters?: RunListingFilters;
13
22
  }
14
23
 
24
+ /**
25
+ * The filters `RunsApi.list` puts on the query string of `GET /runs`.
26
+ *
27
+ * Kept as hand-written scalars-or-arrays rather than inferred from `RunListQuerySchema`: this is what
28
+ * a caller writes, and the published component is what goes over the wire after the client serializes
29
+ * it. A single value and a one-element array are the same request.
30
+ */
15
31
  export interface RunListingFilters {
16
32
  interaction?: string | string[];
17
- status?: ExecutionRunStatus;
18
- model?: string;
19
- environment?: string;
20
- tag?: string;
33
+ status?: ExecutionRunStatus | ExecutionRunStatus[];
34
+ model?: string | string[];
35
+ environment?: string | string[];
36
+ tag?: string | string[];
37
+ /** @deprecated Never applied by `GET /runs`. Sent and ignored; use `POST /runs/search` for a date range. */
21
38
  fromDate?: string;
39
+ /** @deprecated Never applied by `GET /runs`. Sent and ignored; use `POST /runs/search` for a date range. */
22
40
  toDate?: string;
23
41
  parent?: string | string[];
24
42
  is_root?: boolean;
25
43
  workflow_run_ids?: string[];
44
+ workflow_ids?: string[];
26
45
  }
27
46
 
28
- export type scoreAggregationTypes = 'rrf' | 'rsf' | 'smart';
29
- export type dynamicScalingTypes = 'off' | 'on';
47
+ export type scoreAggregationTypes = z.infer<typeof scoreAggregationTypesSchema>;
48
+ export type dynamicScalingTypes = z.infer<typeof dynamicScalingTypesSchema>;
30
49
 
31
- export interface VectorSearchQuery {
32
- objectId?: string;
33
- values?: number[];
34
- text?: string;
35
- image?: string;
36
- config?: EmbeddingSearchConfig;
37
- }
50
+ export type VectorSearchQuery = z.infer<typeof VectorSearchQuerySchema>;
38
51
 
39
52
  export interface SimpleSearchQuery {
40
53
  name?: string;
@@ -62,52 +75,11 @@ export interface ObjectTypeSearchQuery extends SimpleSearchQuery {
62
75
  chunkable?: boolean;
63
76
  }
64
77
 
65
- export interface PromptSearchQuery extends SimpleSearchQuery {
66
- role?: string;
67
- tags?: string[];
68
- matchInteractions?: boolean;
69
- }
78
+ export type PromptSearchQuery = z.infer<typeof PromptSearchQuerySchema>;
70
79
 
71
- export interface InteractionSearchQuery extends SimpleSearchQuery {
72
- prompt?: string;
73
- tags?: string[];
74
- version?: string;
75
- model?: string;
76
- environment?: string;
77
- is_agent?: boolean;
78
- is_tool?: boolean;
79
- is_skill?: boolean;
80
- is_basic?: boolean;
81
- is_sub_agent?: boolean;
82
- }
80
+ export type InteractionSearchQuery = z.infer<typeof InteractionSearchQuerySchema>;
83
81
 
84
- export interface RunSearchQuery extends SimpleSearchQuery {
85
- offset?: number;
86
- interaction?: string;
87
- environment?: string;
88
- model?: string;
89
- status?: ExecutionRunStatus;
90
- tags?: string[];
91
- /**
92
- * Tags to exclude. Runs carrying any of these tags are filtered out of the results,
93
- * counts, and facet buckets. Combined with `tags` (which requires all of the listed
94
- * tags) as an additional `$nin` constraint on the same field.
95
- */
96
- exclude_tags?: string[];
97
- query?: string;
98
- default_query_path?: string;
99
- parent?: string[];
100
- is_root?: boolean;
101
- object?: string;
102
- start?: string;
103
- end?: string;
104
- finish_reason?: string;
105
- created_by?: string;
106
- workflow_run_ids?: string[];
107
- workflow_ids?: string[];
108
- run_ids?: string[];
109
- is_agent?: boolean;
110
- }
82
+ export type RunSearchQuery = z.infer<typeof RunSearchQuerySchema>;
111
83
 
112
84
  export interface WorkflowExecutionSearchQuery extends SimpleSearchQuery {
113
85
  documentId?: string;
@@ -118,37 +90,6 @@ export interface WorkflowExecutionSearchQuery extends SimpleSearchQuery {
118
90
  status?: string;
119
91
  }
120
92
 
121
- /**
122
- * ComplexSearchQuery is used for full-text search and vector embedding search.
123
- */
124
- export interface ComplexSearchQuery extends ObjectSearchQuery {
125
- vector?: VectorSearchQuery;
126
-
127
- /**
128
- * If present, do a full text search (snake_case version).
129
- */
130
- full_text?: string;
131
-
132
- weights?: Record<SearchTypes, number>;
93
+ export type ComplexSearchQuery = z.infer<typeof ComplexSearchQuerySchema>;
133
94
 
134
- /**
135
- * dynamicScaling rescales the weights when a particular search type is not present in the results, per object.
136
- * e.g. Weights of 5,3,2 will be treated as 0,3,2 if the first search type is not present in the results.
137
- * Ignored when scoreAggregation is 'smart'
138
- * Default is 'on'
139
- */
140
- dynamic_scaling?: dynamicScalingTypes; // Move to top level
141
-
142
- /**
143
- * rrf: Reciprocal Rank Fusion
144
- * rsf: Reciprocal Score Fusion
145
- * smart: Our own algorithm (default and recommended)
146
- */
147
- score_aggregation?: scoreAggregationTypes;
148
-
149
- match?: Record<string, unknown>;
150
- }
151
-
152
- export interface ComplexCollectionSearchQuery extends CollectionSearchPayload {
153
- match?: Record<string, unknown>;
154
- }
95
+ export type ComplexCollectionSearchQuery = z.infer<typeof ComplexCollectionSearchQuerySchema>;
@@ -1,7 +1,17 @@
1
+ import type { z } from 'zod';
1
2
  /**
2
3
  * Rate Limiter Types
3
4
  */
4
5
 
6
+ import type {
7
+ QuotaEffectiveTierSchema,
8
+ QuotaStandingAdmissionClassSchema,
9
+ QuotaStandingResourceSchema,
10
+ QuotaStandingResponseSchema,
11
+ QuotaStandingWindowSchema,
12
+ QuotaTierResponseSchema,
13
+ } from './api-schemas/quota.js';
14
+
5
15
  export interface RateLimiterCapacity {
6
16
  current: number;
7
17
  base: number;
@@ -34,79 +44,21 @@ export interface RateLimiterStatus {
34
44
  export type RateLimiterStatusResponse = RateLimiterStatus[];
35
45
 
36
46
  /**
37
- * A caller's own quota standing (GET /api/v1/quota/standing) — "where am I".
38
- * API rate limits are genuinely per-tenant; workflow admission and the LLM limiter are
39
- * global/discovered, so they are reported as posture, not per-tenant numbers.
47
+ * The quota contract as it crosses the wire, served by `GET /api/v1/quota/standing` and
48
+ * `GET /api/v1/quota/tier`.
49
+ *
50
+ * Derived from the schemas in `./api-schemas/quota.js`, not written alongside them: those schemas
51
+ * are what OpenAPI publishes and what AJV compiles, so a hand-written twin here could only ever
52
+ * drift from the contract actually being enforced. The documentation lives with the schemas too —
53
+ * zod reads `.meta()`, not TSDoc, so a comment here would describe the type while the published
54
+ * description came from somewhere else.
55
+ *
56
+ * `import type` erases at compile time, so nothing here pulls zod into a browser or SDK bundle;
57
+ * runtime consumers reach the schemas through the `@vertesia/common/api-schemas` entry point.
40
58
  */
41
- export interface QuotaStandingWindow {
42
- /** Effective limit for this window (after effective account tier + per-tenant override). */
43
- limit: number;
44
- /** Requests used in the current window. */
45
- used: number;
46
- /** Requests remaining (max(0, limit - used)). */
47
- remaining: number;
48
- window_ms: number;
49
- }
50
-
51
- export interface QuotaStandingResource {
52
- resource: string;
53
- name: string;
54
- burst: QuotaStandingWindow;
55
- quota: QuotaStandingWindow;
56
- }
57
-
58
- export interface QuotaStandingAdmissionClass {
59
- /** Workflow class (e.g. ExecuteConversationWorkflow). */
60
- class: string;
61
- /** This tenant's currently active (leased) slots for the class. */
62
- tenant_active: number;
63
- }
64
-
65
- /**
66
- * Effective quota tier name after account-level overrides and account-type derivation.
67
- * Code-defined tier names are currently `QuotaTier`, but this remains a string because deployments
68
- * can introduce quota tiers through configuration.
69
- */
70
- export type QuotaEffectiveTier = string;
71
-
72
- export interface QuotaStandingResponse {
73
- tenant_id: string;
74
- /**
75
- * False when the limiter store (Redis) was unavailable, so `api`/`admission` are empty because
76
- * standing could not be read — NOT because there are no limits. Limiters fail open in this case.
77
- */
78
- available: boolean;
79
- /** Deployment base tier (env QUOTA_BASE_TIER); `default` = the static limits stand. */
80
- base_tier: string;
81
- /**
82
- * Tier used to compute the API limits below: explicit account `quota_tier`, else account_type
83
- * derived tier, else `base_tier` when the account tier could not be resolved.
84
- */
85
- effective_tier: QuotaEffectiveTier;
86
- /** Per-resource API rate-limit standing (effective limits + current usage). */
87
- api: QuotaStandingResource[];
88
- /**
89
- * Workflow admission: per-tenant active slots per probed class. The budget itself is global and
90
- * discovered (AIMD), not a per-tenant number — this is occupancy, not a limit.
91
- */
92
- admission: {
93
- classes: QuotaStandingAdmissionClass[];
94
- note: string;
95
- };
96
- /** The LLM interaction limiter is shared per environment/model, not per tenant. */
97
- llm: {
98
- note: string;
99
- };
100
- }
101
-
102
- /**
103
- * Lightweight per-account quota tier for the calling account — served by `GET /api/v1/quota/tier`.
104
- * A cheap, cacheable read that lets another service (e.g. zeno-server's API rate limiter) resolve
105
- * the caller's tier through studio-server instead of reaching into the account store directly.
106
- * `tier` is the SAME value {@link QuotaStandingResponse.effective_tier} reports: the account's
107
- * explicit `quota_tier`, else its account_type-derived tier, else the deployment base tier when the
108
- * account tier cannot be resolved.
109
- */
110
- export interface QuotaTierResponse {
111
- tier: QuotaEffectiveTier;
112
- }
59
+ export type QuotaStandingWindow = z.infer<typeof QuotaStandingWindowSchema>;
60
+ export type QuotaStandingResource = z.infer<typeof QuotaStandingResourceSchema>;
61
+ export type QuotaStandingAdmissionClass = z.infer<typeof QuotaStandingAdmissionClassSchema>;
62
+ export type QuotaEffectiveTier = z.infer<typeof QuotaEffectiveTierSchema>;
63
+ export type QuotaStandingResponse = z.infer<typeof QuotaStandingResponseSchema>;
64
+ export type QuotaTierResponse = z.infer<typeof QuotaTierResponseSchema>;
package/src/refs.ts CHANGED
@@ -1,3 +1,6 @@
1
+ import type { z } from 'zod';
2
+ import type { ResourceRefSchema } from './api-schemas/agent-runs.js';
3
+
1
4
  export enum ResolvableRefType {
2
5
  project = 'Project',
3
6
  projects = 'Projects',
@@ -17,14 +20,4 @@ export interface RefResolutionRequest {
17
20
  refs: ResolvableRef[];
18
21
  }
19
22
 
20
- export interface ResourceRef {
21
- id: string;
22
- name: string;
23
- type: string;
24
- email?: string;
25
- description?: string;
26
- version?: number;
27
- status?: string;
28
- tags?: string[];
29
- endpoint?: string;
30
- }
23
+ export type ResourceRef = z.infer<typeof ResourceRefSchema>;
@@ -1,23 +1,35 @@
1
- import type { Permission } from '../access-control.js';
1
+ import type { z } from 'zod';
2
+ import type {
3
+ AbacScopeSchema,
4
+ RoleDefinitionSchema,
5
+ RoleDomainSchema,
6
+ SystemRoleDefinitionSchema,
7
+ } from '../api-schemas/access-control.js';
2
8
 
3
9
  /**
4
10
  * Pure types & constants for the role system. This file is intentionally
5
11
  * `class`-free — it is what stays in `@vertesia/common` when the class
6
12
  * hierarchy (`classes.ts`) eventually moves to `studio-utils`. Client SDKs
7
13
  * depend ONLY on these types, never on the registry runtime.
14
+ *
15
+ * The wire shapes below are inferred from `../api-schemas/access-control.js`, which is what OpenAPI
16
+ * publishes and AJV compiles. `AbacScopes` and `RoleDomains` are the runtime lists those schemas
17
+ * enumerate; they live in `../access-control-values.js` so the schemas can read them without
18
+ * importing this module back.
8
19
  */
9
20
 
21
+ export { AbacScopes, RoleDomains } from '../access-control-values.js';
22
+
10
23
  /**
11
24
  * Kind of object a ResourceSet's `resource_props` matches at query time. Used
12
25
  * in `AceConditions.scope` (validated at runtime against this list) and as
13
26
  * the prefix in JWT `content_security` keys (e.g. `collection:read`).
14
27
  *
15
28
  * Each scope is owned by exactly one partition. When adding a new partition
16
- * (e.g. tasks), extend this list with the new scope(s) AND extend `RoleDomain`
17
- * with the new domain.
29
+ * (e.g. tasks), extend `AbacScopes` with the new scope(s) AND extend
30
+ * `RoleDomains` with the new domain.
18
31
  */
19
- export const AbacScopes = ['document', 'collection', 'task'] as const;
20
- export type AbacScope = (typeof AbacScopes)[number];
32
+ export type AbacScope = z.infer<typeof AbacScopeSchema>;
21
33
 
22
34
  /**
23
35
  * Logical grouping of roles by the service area that owns them. One domain may
@@ -26,7 +38,7 @@ export type AbacScope = (typeof AbacScopes)[number];
26
38
  * domain owns the built-in foundational roles (currently exposed as
27
39
  * `SystemRoles`) — registered first so domain partitions cannot shadow them.
28
40
  */
29
- export type RoleDomain = 'system' | 'content' | 'tasks';
41
+ export type RoleDomain = z.infer<typeof RoleDomainSchema>;
30
42
 
31
43
  /**
32
44
  * Wire shape of a role returned by the IAM `/roles` endpoint.
@@ -35,24 +47,12 @@ export type RoleDomain = 'system' | 'content' | 'tasks';
35
47
  * (system, content, future tasks/etc.) and each partition has its own
36
48
  * vocabulary. For the tightly-typed system-only view (with `permissions:
37
49
  * Permission[]`) use `SystemRoleDefinition` and the `/roles/system` endpoint.
38
- *
39
- * NOTE: this interface is intentionally non-generic. The OpenAPI generator
40
- * doesn't handle TypeScript generics cleanly in array response types and
41
- * produces a degenerate `RoleDefinitionArray` schema. Keeping the wire shapes
42
- * concrete avoids that. `SystemRoleDefinition` extends and narrows
43
- * `permissions` to `Permission[]`.
44
50
  */
45
- export interface RoleDefinition {
46
- name: string;
47
- permissions: string[];
48
- domain: RoleDomain;
49
- }
51
+ export type RoleDefinition = z.infer<typeof RoleDefinitionSchema>;
50
52
 
51
53
  /**
52
54
  * Tightly-typed view of a system-domain role: permissions are central
53
55
  * `Permission` enum values. Returned by `client.iam.roles.listSystem()` and
54
56
  * by the server's `/roles/system` endpoint.
55
57
  */
56
- export interface SystemRoleDefinition extends RoleDefinition {
57
- permissions: Permission[];
58
- }
58
+ export type SystemRoleDefinition = z.infer<typeof SystemRoleDefinitionSchema>;
package/src/runs.ts CHANGED
@@ -1,35 +1,28 @@
1
- import type { FacetResult } from './facets.js';
2
- import type { NamedInteractionExecutionPayload } from './interaction.js';
1
+ import type { z } from 'zod';
2
+ import type {
3
+ ExecutionRunDocRefSchema,
4
+ RunClonePayloadSchema,
5
+ RunCreatePayloadSchema,
6
+ RunSearchMetaResponseSchema,
7
+ } from './api-schemas/interaction.js';
3
8
 
4
9
  /**
5
10
  * The run ref is used to identify a run document in the storage
6
11
  */
7
- export interface ExecutionRunDocRef {
8
- id: string;
9
- account: string;
10
- project: string;
11
- }
12
+ export type ExecutionRunDocRef = z.infer<typeof ExecutionRunDocRefSchema>;
12
13
 
13
14
  /**
14
15
  * Interaction execution payload for creating a new run
15
16
  * It uses interaction field (from NamedInteractionExecutionPayload) to pass the interaction ID to run
16
17
  */
17
- export interface RunCreatePayload extends NamedInteractionExecutionPayload {}
18
+ export type RunCreatePayload = z.infer<typeof RunCreatePayloadSchema>;
18
19
 
19
20
  /**
20
21
  * Payload for cloning an existing ExecutionRun.
21
22
  * Creates a new run document with the same interaction/config but fresh status.
22
23
  * Used by fork flows to create a new ExecutionRun for the forked workflow.
23
24
  */
24
- export interface RunClonePayload {
25
- /** The _id of the source ExecutionRun to clone */
26
- source_run_id: string;
27
- /** Temporal workflow reference for the new run */
28
- workflow: {
29
- run_id: string;
30
- workflow_id: string;
31
- };
32
- }
25
+ export type RunClonePayload = z.infer<typeof RunClonePayloadSchema>;
33
26
 
34
27
  /**
35
28
  * To be used as a value for a numeric or date filters
@@ -41,10 +34,4 @@ export interface RangeValue {
41
34
  lte?: number | string;
42
35
  }
43
36
 
44
- export interface RunSearchMetaResponse {
45
- count: {
46
- lower_bound?: number;
47
- total?: number;
48
- };
49
- facet: Record<string, FacetResult>;
50
- }
37
+ export type RunSearchMetaResponse = z.infer<typeof RunSearchMetaResponseSchema>;