@vertesia/common 1.6.0-dev.20260923.085325Z → 1.6.0-dev.20261008.064737Z

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 (421) hide show
  1. package/lib/access-control-values.d.ts +2 -2
  2. package/lib/access-control-values.d.ts.map +1 -1
  3. package/lib/access-control-values.js +2 -2
  4. package/lib/access-control-values.js.map +1 -1
  5. package/lib/access-control.d.ts +7 -8
  6. package/lib/access-control.d.ts.map +1 -1
  7. package/lib/access-control.js +5 -0
  8. package/lib/access-control.js.map +1 -1
  9. package/lib/analytics.d.ts +6 -7
  10. package/lib/analytics.d.ts.map +1 -1
  11. package/lib/api-contract/components.generated.json +2553 -1046
  12. package/lib/api-contract/engine.d.ts +65 -0
  13. package/lib/api-contract/engine.d.ts.map +1 -0
  14. package/lib/api-contract/engine.js +569 -0
  15. package/lib/api-contract/engine.js.map +1 -0
  16. package/lib/api-contract/index.d.ts +21 -182
  17. package/lib/api-contract/index.d.ts.map +1 -1
  18. package/lib/api-contract/index.js +13 -551
  19. package/lib/api-contract/index.js.map +1 -1
  20. package/lib/api-schemas/access-control.d.ts +33 -10
  21. package/lib/api-schemas/access-control.d.ts.map +1 -1
  22. package/lib/api-schemas/access-control.js +7 -6
  23. package/lib/api-schemas/access-control.js.map +1 -1
  24. package/lib/api-schemas/account.d.ts +5 -9
  25. package/lib/api-schemas/account.d.ts.map +1 -1
  26. package/lib/api-schemas/account.js +0 -7
  27. package/lib/api-schemas/account.js.map +1 -1
  28. package/lib/api-schemas/agent-budget.d.ts +15 -0
  29. package/lib/api-schemas/agent-budget.d.ts.map +1 -0
  30. package/lib/api-schemas/agent-budget.js +55 -0
  31. package/lib/api-schemas/agent-budget.js.map +1 -0
  32. package/lib/api-schemas/agent-runs.d.ts +1525 -100
  33. package/lib/api-schemas/agent-runs.d.ts.map +1 -1
  34. package/lib/api-schemas/agent-runs.js +60 -28
  35. package/lib/api-schemas/agent-runs.js.map +1 -1
  36. package/lib/api-schemas/apikey.d.ts +11 -10
  37. package/lib/api-schemas/apikey.d.ts.map +1 -1
  38. package/lib/api-schemas/apikey.js.map +1 -1
  39. package/lib/api-schemas/app-lifecycle.d.ts +13 -0
  40. package/lib/api-schemas/app-lifecycle.d.ts.map +1 -1
  41. package/lib/api-schemas/app-lifecycle.js +4 -0
  42. package/lib/api-schemas/app-lifecycle.js.map +1 -1
  43. package/lib/api-schemas/app-runtime.d.ts +1821 -108
  44. package/lib/api-schemas/app-runtime.d.ts.map +1 -1
  45. package/lib/api-schemas/audit-trail.d.ts +275 -0
  46. package/lib/api-schemas/audit-trail.d.ts.map +1 -1
  47. package/lib/api-schemas/audit-trail.js +156 -1
  48. package/lib/api-schemas/audit-trail.js.map +1 -1
  49. package/lib/api-schemas/content.d.ts +665 -30
  50. package/lib/api-schemas/content.d.ts.map +1 -1
  51. package/lib/api-schemas/content.js +47 -0
  52. package/lib/api-schemas/content.js.map +1 -1
  53. package/lib/api-schemas/cost-analytics.d.ts +19 -0
  54. package/lib/api-schemas/cost-analytics.d.ts.map +1 -1
  55. package/lib/api-schemas/cost-analytics.js +38 -2
  56. package/lib/api-schemas/cost-analytics.js.map +1 -1
  57. package/lib/api-schemas/document-processing.d.ts +381 -18
  58. package/lib/api-schemas/document-processing.d.ts.map +1 -1
  59. package/lib/api-schemas/environment.d.ts +0 -5
  60. package/lib/api-schemas/environment.d.ts.map +1 -1
  61. package/lib/api-schemas/environment.js +0 -1
  62. package/lib/api-schemas/environment.js.map +1 -1
  63. package/lib/api-schemas/events.d.ts +1143 -54
  64. package/lib/api-schemas/events.d.ts.map +1 -1
  65. package/lib/api-schemas/group.d.ts +2 -1
  66. package/lib/api-schemas/group.d.ts.map +1 -1
  67. package/lib/api-schemas/group.js.map +1 -1
  68. package/lib/api-schemas/index.d.ts +2 -0
  69. package/lib/api-schemas/index.d.ts.map +1 -1
  70. package/lib/api-schemas/index.js +2 -0
  71. package/lib/api-schemas/index.js.map +1 -1
  72. package/lib/api-schemas/inference-profile.d.ts +5017 -0
  73. package/lib/api-schemas/inference-profile.d.ts.map +1 -0
  74. package/lib/api-schemas/inference-profile.js +135 -0
  75. package/lib/api-schemas/inference-profile.js.map +1 -0
  76. package/lib/api-schemas/integrations.d.ts +6 -6
  77. package/lib/api-schemas/interaction.d.ts +34391 -703
  78. package/lib/api-schemas/interaction.d.ts.map +1 -1
  79. package/lib/api-schemas/interaction.js +34 -1
  80. package/lib/api-schemas/interaction.js.map +1 -1
  81. package/lib/api-schemas/invites.d.ts +10 -9
  82. package/lib/api-schemas/invites.d.ts.map +1 -1
  83. package/lib/api-schemas/invites.js.map +1 -1
  84. package/lib/api-schemas/process.d.ts +653 -34
  85. package/lib/api-schemas/process.d.ts.map +1 -1
  86. package/lib/api-schemas/process.js +66 -0
  87. package/lib/api-schemas/process.js.map +1 -1
  88. package/lib/api-schemas/project-configuration.d.ts +1323 -62
  89. package/lib/api-schemas/project-configuration.d.ts.map +1 -1
  90. package/lib/api-schemas/project-configuration.js +15 -1
  91. package/lib/api-schemas/project-configuration.js.map +1 -1
  92. package/lib/api-schemas/project.d.ts +2031 -116
  93. package/lib/api-schemas/project.d.ts.map +1 -1
  94. package/lib/api-schemas/project.js +9 -1
  95. package/lib/api-schemas/project.js.map +1 -1
  96. package/lib/api-schemas/quota.d.ts +7 -6
  97. package/lib/api-schemas/quota.d.ts.map +1 -1
  98. package/lib/api-schemas/quota.js.map +1 -1
  99. package/lib/api-schemas/registry.d.ts +28171 -36096
  100. package/lib/api-schemas/registry.d.ts.map +1 -1
  101. package/lib/api-schemas/registry.js +77 -30
  102. package/lib/api-schemas/registry.js.map +1 -1
  103. package/lib/api-schemas/run-budget.d.ts +16 -0
  104. package/lib/api-schemas/run-budget.d.ts.map +1 -0
  105. package/lib/api-schemas/run-budget.js +22 -0
  106. package/lib/api-schemas/run-budget.js.map +1 -0
  107. package/lib/api-schemas/secrets.d.ts +0 -71
  108. package/lib/api-schemas/secrets.d.ts.map +1 -1
  109. package/lib/api-schemas/secrets.js +0 -73
  110. package/lib/api-schemas/secrets.js.map +1 -1
  111. package/lib/api-schemas/store.d.ts +6388 -338
  112. package/lib/api-schemas/store.d.ts.map +1 -1
  113. package/lib/api-schemas/store.js +11 -0
  114. package/lib/api-schemas/store.js.map +1 -1
  115. package/lib/api-schemas/user.d.ts +9 -8
  116. package/lib/api-schemas/user.d.ts.map +1 -1
  117. package/lib/api-schemas/user.js.map +1 -1
  118. package/lib/api-schemas/view-execution.d.ts +8 -0
  119. package/lib/api-schemas/view-execution.d.ts.map +1 -1
  120. package/lib/api-schemas/views.d.ts +14 -0
  121. package/lib/api-schemas/views.d.ts.map +1 -1
  122. package/lib/api-schemas/workflow-runs.d.ts +335 -12
  123. package/lib/api-schemas/workflow-runs.d.ts.map +1 -1
  124. package/lib/api-schemas/workflow-runs.js +2 -0
  125. package/lib/api-schemas/workflow-runs.js.map +1 -1
  126. package/lib/apikey.d.ts +30 -25
  127. package/lib/apikey.d.ts.map +1 -1
  128. package/lib/apikey.js.map +1 -1
  129. package/lib/apps.d.ts +116 -121
  130. package/lib/apps.d.ts.map +1 -1
  131. package/lib/apps.js.map +1 -1
  132. package/lib/audit-trail.d.ts +30 -19
  133. package/lib/audit-trail.d.ts.map +1 -1
  134. package/lib/audit-trail.js +6 -0
  135. package/lib/audit-trail.js.map +1 -1
  136. package/lib/browser-credentials.d.ts +11 -12
  137. package/lib/browser-credentials.d.ts.map +1 -1
  138. package/lib/common.d.ts +17 -24
  139. package/lib/common.d.ts.map +1 -1
  140. package/lib/content-query.d.ts +3 -4
  141. package/lib/content-query.d.ts.map +1 -1
  142. package/lib/cost-analytics.d.ts +13 -21
  143. package/lib/cost-analytics.d.ts.map +1 -1
  144. package/lib/cost-analytics.js +0 -7
  145. package/lib/cost-analytics.js.map +1 -1
  146. package/lib/data-platform.d.ts +79 -88
  147. package/lib/data-platform.d.ts.map +1 -1
  148. package/lib/data-platform.js.map +1 -1
  149. package/lib/delegation.d.ts +4 -5
  150. package/lib/delegation.d.ts.map +1 -1
  151. package/lib/email.d.ts +15 -17
  152. package/lib/email.d.ts.map +1 -1
  153. package/lib/email.js.map +1 -1
  154. package/lib/embeddings.d.ts +25 -26
  155. package/lib/embeddings.d.ts.map +1 -1
  156. package/lib/environment.d.ts +16 -17
  157. package/lib/environment.d.ts.map +1 -1
  158. package/lib/environment.js.map +1 -1
  159. package/lib/facets.d.ts +3 -4
  160. package/lib/facets.d.ts.map +1 -1
  161. package/lib/group.d.ts +6 -7
  162. package/lib/group.d.ts.map +1 -1
  163. package/lib/group.js.map +1 -1
  164. package/lib/index.d.ts +3 -1
  165. package/lib/index.d.ts.map +1 -1
  166. package/lib/index.js.map +1 -1
  167. package/lib/inference-profile.d.ts +17 -0
  168. package/lib/inference-profile.d.ts.map +1 -0
  169. package/lib/inference-profile.js +2 -0
  170. package/lib/inference-profile.js.map +1 -0
  171. package/lib/integrations.d.ts +19 -20
  172. package/lib/integrations.d.ts.map +1 -1
  173. package/lib/integrations.js.map +1 -1
  174. package/lib/interaction.d.ts +68 -73
  175. package/lib/interaction.d.ts.map +1 -1
  176. package/lib/interaction.js.map +1 -1
  177. package/lib/meters.d.ts +4 -5
  178. package/lib/meters.d.ts.map +1 -1
  179. package/lib/oauth-server.d.ts +40 -41
  180. package/lib/oauth-server.d.ts.map +1 -1
  181. package/lib/oauth.d.ts +9 -10
  182. package/lib/oauth.d.ts.map +1 -1
  183. package/lib/payload.d.ts +11 -14
  184. package/lib/payload.d.ts.map +1 -1
  185. package/lib/pending-asks.d.ts +8 -13
  186. package/lib/pending-asks.d.ts.map +1 -1
  187. package/lib/pending-asks.js +0 -4
  188. package/lib/pending-asks.js.map +1 -1
  189. package/lib/platform-event.d.ts +48 -71
  190. package/lib/platform-event.d.ts.map +1 -1
  191. package/lib/platform-event.js.map +1 -1
  192. package/lib/principal-context.d.ts +3 -3
  193. package/lib/principal-context.d.ts.map +1 -1
  194. package/lib/project.d.ts +42 -43
  195. package/lib/project.d.ts.map +1 -1
  196. package/lib/project.js.map +1 -1
  197. package/lib/prompt.d.ts +14 -16
  198. package/lib/prompt.d.ts.map +1 -1
  199. package/lib/prompt.js.map +1 -1
  200. package/lib/query.d.ts +10 -13
  201. package/lib/query.d.ts.map +1 -1
  202. package/lib/rate-limiter.d.ts +7 -11
  203. package/lib/rate-limiter.d.ts.map +1 -1
  204. package/lib/refs.d.ts +2 -3
  205. package/lib/refs.d.ts.map +1 -1
  206. package/lib/refs.js.map +1 -1
  207. package/lib/roles/types.d.ts +5 -6
  208. package/lib/roles/types.d.ts.map +1 -1
  209. package/lib/roles/types.js.map +1 -1
  210. package/lib/run-budget.d.ts +4 -0
  211. package/lib/run-budget.d.ts.map +1 -0
  212. package/lib/run-budget.js +2 -0
  213. package/lib/run-budget.js.map +1 -0
  214. package/lib/runs.d.ts +9 -10
  215. package/lib/runs.d.ts.map +1 -1
  216. package/lib/secrets.d.ts +10 -21
  217. package/lib/secrets.d.ts.map +1 -1
  218. package/lib/store/agent-approval.d.ts +4 -5
  219. package/lib/store/agent-approval.d.ts.map +1 -1
  220. package/lib/store/agent-approval.js.map +1 -1
  221. package/lib/store/agent-run.d.ts +50 -52
  222. package/lib/store/agent-run.d.ts.map +1 -1
  223. package/lib/store/agent-run.js.map +1 -1
  224. package/lib/store/collections.d.ts +11 -12
  225. package/lib/store/collections.d.ts.map +1 -1
  226. package/lib/store/collections.js.map +1 -1
  227. package/lib/store/conversation-state.d.ts +14 -8
  228. package/lib/store/conversation-state.d.ts.map +1 -1
  229. package/lib/store/doc-analyzer.d.ts +7 -8
  230. package/lib/store/doc-analyzer.d.ts.map +1 -1
  231. package/lib/store/dsl-workflow.d.ts +10 -12
  232. package/lib/store/dsl-workflow.d.ts.map +1 -1
  233. package/lib/store/dsl-workflow.js.map +1 -1
  234. package/lib/store/duration.d.ts +12 -0
  235. package/lib/store/duration.d.ts.map +1 -0
  236. package/lib/store/duration.js +2 -0
  237. package/lib/store/duration.js.map +1 -0
  238. package/lib/store/grounded-extraction.d.ts +6 -7
  239. package/lib/store/grounded-extraction.d.ts.map +1 -1
  240. package/lib/store/intake-policy-schema.generated.d.ts.map +1 -1
  241. package/lib/store/intake-policy-schema.generated.js +143 -2
  242. package/lib/store/intake-policy-schema.generated.js.map +1 -1
  243. package/lib/store/process.d.ts +70 -69
  244. package/lib/store/process.d.ts.map +1 -1
  245. package/lib/store/process.js.map +1 -1
  246. package/lib/store/rendering.d.ts +6 -12
  247. package/lib/store/rendering.d.ts.map +1 -1
  248. package/lib/store/rendering.js +0 -5
  249. package/lib/store/rendering.js.map +1 -1
  250. package/lib/store/signals.d.ts +43 -0
  251. package/lib/store/signals.d.ts.map +1 -1
  252. package/lib/store/signals.js +6 -1
  253. package/lib/store/signals.js.map +1 -1
  254. package/lib/store/store.d.ts +92 -91
  255. package/lib/store/store.d.ts.map +1 -1
  256. package/lib/store/store.js.map +1 -1
  257. package/lib/store/task.d.ts +10 -14
  258. package/lib/store/task.d.ts.map +1 -1
  259. package/lib/store/workflow.d.ts +35 -41
  260. package/lib/store/workflow.d.ts.map +1 -1
  261. package/lib/store/workflow.js.map +1 -1
  262. package/lib/sts-token-types.d.ts +14 -19
  263. package/lib/sts-token-types.d.ts.map +1 -1
  264. package/lib/tools.d.ts +12 -13
  265. package/lib/tools.d.ts.map +1 -1
  266. package/lib/transient-tokens.d.ts +3 -3
  267. package/lib/transient-tokens.d.ts.map +1 -1
  268. package/lib/user.d.ts +16 -20
  269. package/lib/user.d.ts.map +1 -1
  270. package/lib/user.js.map +1 -1
  271. package/lib/vertesia-common.js +2 -2
  272. package/lib/vertesia-common.js.map +1 -1
  273. package/lib/views.d.ts +61 -64
  274. package/lib/views.d.ts.map +1 -1
  275. package/lib/views.js.map +1 -1
  276. package/lib/wire-types.generated.d.ts +11227 -0
  277. package/lib/wire-types.generated.d.ts.map +1 -0
  278. package/lib/wire-types.generated.js +4 -0
  279. package/lib/wire-types.generated.js.map +1 -0
  280. package/lib/workflow-analytics.d.ts +21 -19
  281. package/lib/workflow-analytics.d.ts.map +1 -1
  282. package/lib/workflow-analytics.js +2 -2
  283. package/lib/workflow-analytics.js.map +1 -1
  284. package/package.json +16 -11
  285. package/src/access-control-values.ts +2 -2
  286. package/src/access-control.ts +7 -15
  287. package/src/analytics.ts +6 -13
  288. package/src/api-contract/components.generated.json +2553 -1046
  289. package/src/api-contract/engine.ts +641 -0
  290. package/src/api-contract/index.ts +30 -661
  291. package/src/api-schemas/access-control.ts +18 -16
  292. package/src/api-schemas/account.ts +5 -12
  293. package/src/api-schemas/agent-budget.ts +60 -0
  294. package/src/api-schemas/agent-runs.ts +63 -27
  295. package/src/api-schemas/apikey.ts +11 -10
  296. package/src/api-schemas/app-lifecycle.ts +5 -0
  297. package/src/api-schemas/audit-trail.ts +175 -1
  298. package/src/api-schemas/content.ts +55 -0
  299. package/src/api-schemas/cost-analytics.ts +42 -2
  300. package/src/api-schemas/environment.ts +0 -1
  301. package/src/api-schemas/group.ts +2 -1
  302. package/src/api-schemas/index.ts +2 -0
  303. package/src/api-schemas/inference-profile.ts +151 -0
  304. package/src/api-schemas/interaction.ts +40 -1
  305. package/src/api-schemas/invites.ts +10 -9
  306. package/src/api-schemas/process.ts +78 -2
  307. package/src/api-schemas/project-configuration.ts +19 -1
  308. package/src/api-schemas/project.ts +19 -10
  309. package/src/api-schemas/quota.ts +7 -6
  310. package/src/api-schemas/registry.ts +164 -62
  311. package/src/api-schemas/run-budget.ts +23 -0
  312. package/src/api-schemas/secrets.ts +0 -84
  313. package/src/api-schemas/store.ts +12 -0
  314. package/src/api-schemas/user.ts +9 -8
  315. package/src/api-schemas/workflow-runs.ts +2 -0
  316. package/src/apikey.ts +30 -39
  317. package/src/apps.ts +116 -239
  318. package/src/audit-trail.ts +37 -35
  319. package/src/browser-credentials.ts +11 -23
  320. package/src/common.ts +17 -37
  321. package/src/content-query.ts +3 -4
  322. package/src/cost-analytics.ts +13 -35
  323. package/src/data-platform.ts +79 -168
  324. package/src/delegation.ts +4 -9
  325. package/src/email.ts +15 -29
  326. package/src/embeddings.ts +25 -51
  327. package/src/environment.ts +16 -33
  328. package/src/facets.ts +3 -4
  329. package/src/group.ts +6 -13
  330. package/src/index.ts +23 -0
  331. package/src/inference-profile.ts +20 -0
  332. package/src/integrations.ts +21 -41
  333. package/src/interaction.ts +68 -137
  334. package/src/meters.ts +4 -9
  335. package/src/oauth-server.ts +40 -81
  336. package/src/oauth.ts +9 -19
  337. package/src/payload.ts +11 -25
  338. package/src/pending-asks.ts +8 -22
  339. package/src/platform-event.ts +48 -122
  340. package/src/principal-context.ts +3 -3
  341. package/src/project.ts +43 -86
  342. package/src/prompt.ts +14 -31
  343. package/src/query.ts +10 -20
  344. package/src/rate-limiter.ts +7 -19
  345. package/src/refs.ts +2 -3
  346. package/src/roles/types.ts +5 -11
  347. package/src/run-budget.ts +4 -0
  348. package/src/runs.ts +9 -19
  349. package/src/secrets.ts +10 -42
  350. package/src/store/agent-approval.ts +4 -9
  351. package/src/store/agent-run.ts +53 -99
  352. package/src/store/collections.ts +11 -23
  353. package/src/store/conversation-state.ts +15 -15
  354. package/src/store/doc-analyzer.ts +7 -15
  355. package/src/store/dsl-workflow.ts +10 -23
  356. package/src/store/duration.ts +45 -0
  357. package/src/store/grounded-extraction.ts +6 -13
  358. package/src/store/intake-policy-schema.generated.ts +148 -2
  359. package/src/store/process.ts +70 -140
  360. package/src/store/rendering.ts +6 -19
  361. package/src/store/signals.ts +48 -0
  362. package/src/store/store.ts +92 -181
  363. package/src/store/task.ts +10 -24
  364. package/src/store/workflow.ts +35 -71
  365. package/src/sts-token-types.ts +14 -33
  366. package/src/tools.ts +12 -25
  367. package/src/transient-tokens.ts +3 -3
  368. package/src/user.ts +16 -40
  369. package/src/views.ts +61 -125
  370. package/src/wire-types.generated.ts +11888 -0
  371. package/src/workflow-analytics.ts +21 -19
  372. package/src/agent-resources.test.ts +0 -89
  373. package/src/api-contract/components.contract.test.ts +0 -99
  374. package/src/api-schemas/access-control.contract.test.ts +0 -209
  375. package/src/api-schemas/account-apikey.test.ts +0 -60
  376. package/src/api-schemas/account.contract.test.ts +0 -319
  377. package/src/api-schemas/adapter-edge-cases.test.ts +0 -499
  378. package/src/api-schemas/agent-communication.contract.test.ts +0 -90
  379. package/src/api-schemas/agent-history.contract.test.ts +0 -42
  380. package/src/api-schemas/agent-runs.contract.test.ts +0 -240
  381. package/src/api-schemas/api-discriminators.test.ts +0 -185
  382. package/src/api-schemas/apikey.contract.test.ts +0 -270
  383. package/src/api-schemas/app-delete-summary.contract.test.ts +0 -67
  384. package/src/api-schemas/bulk-operation.contract.test.ts +0 -39
  385. package/src/api-schemas/bundle-isolation.test.ts +0 -44
  386. package/src/api-schemas/commands.contract.test.ts +0 -51
  387. package/src/api-schemas/cost-analytics.contract.test.ts +0 -64
  388. package/src/api-schemas/dashboard.contract.test.ts +0 -138
  389. package/src/api-schemas/data-store.contract.test.ts +0 -97
  390. package/src/api-schemas/document-processing.contract.test.ts +0 -76
  391. package/src/api-schemas/emit-json-schema.test.ts +0 -36
  392. package/src/api-schemas/environment.contract.test.ts +0 -202
  393. package/src/api-schemas/group.contract.test.ts +0 -205
  394. package/src/api-schemas/indexing.contract.test.ts +0 -122
  395. package/src/api-schemas/interaction.contract.test.ts +0 -307
  396. package/src/api-schemas/invites.contract.test.ts +0 -268
  397. package/src/api-schemas/llumiverse.contract.test.ts +0 -179
  398. package/src/api-schemas/mcp-api-key.contract.test.ts +0 -125
  399. package/src/api-schemas/oauth.contract.test.ts +0 -181
  400. package/src/api-schemas/parameters.test.ts +0 -402
  401. package/src/api-schemas/process.contract.test.ts +0 -115
  402. package/src/api-schemas/project.contract.test.ts +0 -472
  403. package/src/api-schemas/pruning-limits.test.ts +0 -189
  404. package/src/api-schemas/quota.contract.test.ts +0 -147
  405. package/src/api-schemas/registry-groups.test.ts +0 -99
  406. package/src/api-schemas/response-pruning.test.ts +0 -260
  407. package/src/api-schemas/store.contract.test.ts +0 -378
  408. package/src/api-schemas/sts.contract.test.ts +0 -112
  409. package/src/api-schemas/user.contract.test.ts +0 -197
  410. package/src/api-schemas/views.contract.test.ts +0 -112
  411. package/src/api-schemas/zeno-response-contracts.test.ts +0 -380
  412. package/src/apps.test.ts +0 -89
  413. package/src/oauth-scopes.test.ts +0 -15
  414. package/src/roles.test.ts +0 -33
  415. package/src/schema-for-extraction.test.ts +0 -191
  416. package/src/store/agent-approval.test.ts +0 -18
  417. package/src/store/content-type-editing.test.ts +0 -17
  418. package/src/store/ms.d.ts +0 -42
  419. package/src/store/schedule.test.ts +0 -59
  420. package/src/store/workflow.test.ts +0 -640
  421. package/src/versions.test.ts +0 -13
@@ -8,6 +8,7 @@ import {
8
8
  Permission,
9
9
  RoleDomains,
10
10
  } from '../access-control-values.js';
11
+ import type * as Wire from '../wire-types.generated.js';
11
12
 
12
13
  /**
13
14
  * Runtime API schemas for IAM roles and access-control entries.
@@ -34,8 +35,9 @@ export const RoleDomainSchema = z.enum(RoleDomains).meta({
34
35
  description:
35
36
  'Logical grouping of roles by the service area that owns them. One domain may declare roles ' +
36
37
  'applicable to multiple scopes (e.g. the `content` domain owns roles applicable to both `document` ' +
37
- 'and `collection` scopes). The `system` domain owns the built-in foundational roles (currently ' +
38
- 'exposed as `SystemRoles`) — registered first so domain partitions cannot shadow them.',
38
+ 'and `collection` scopes, while `agent_runs` owns the `agent_run` scope). The `system` domain ' +
39
+ 'owns the built-in foundational roles (currently exposed as `SystemRoles`) — registered first so ' +
40
+ 'domain partitions cannot shadow them.',
39
41
  });
40
42
 
41
43
  /**
@@ -72,7 +74,7 @@ export const AceConditionsSchema = z
72
74
  scope: AbacScopeSchema.meta({
73
75
  description:
74
76
  "Kind of object the `resource_props` matches. Used to disambiguate which partition's roles " +
75
- 'apply (e.g. content roles vs task roles) and to form the JWT `content_security` key prefix ' +
77
+ 'apply (e.g. content roles vs agent-run roles) and to form the JWT `content_security` key prefix ' +
76
78
  "(`{scope}:{verb}`). Absent → `'document'` (default; emits bare `read`/`write`/`delete` keys " +
77
79
  'for backward compatibility).',
78
80
  }).optional(),
@@ -104,9 +106,9 @@ export const AccessControlEntrySchema = z
104
106
  role: z.string().meta({
105
107
  description:
106
108
  'Role name. Typed as `string` because role names now span multiple partitions: `SystemRoles` ' +
107
- "enum values for system-domain roles, and bare strings for ABAC-domain roles (e.g. `'content:reader'`, " +
108
- "`'content:writer'`, `'content:manager'`). Mongoose schema validates the value against the " +
109
- 'registered role catalog via `getAllRoleNames()`.',
109
+ 'enum values for system-domain roles, and bare strings for ABAC-domain roles (e.g. ' +
110
+ "`'content:reader'`, `'content:writer'`, `'content:manager'`, `'agent_runs:reader'`). Mongoose " +
111
+ 'schema validates the value against the registered role catalog via `getAllRoleNames()`.',
110
112
  }),
111
113
  resource_type: AccessControlResourceTypeSchema,
112
114
  resource: z.string(),
@@ -196,13 +198,13 @@ export const SystemRoleDefinitionArraySchema = z
196
198
  * The public access-control types, inferred rather than written. `../access-control.ts` and
197
199
  * `../roles/types.ts` re-export these under their public names.
198
200
  */
199
- export type PropertyConditionsFromSchema = z.infer<typeof PropertyConditionsSchema>;
200
- export type AceConditionsFromSchema = z.infer<typeof AceConditionsSchema>;
201
- export type AccessControlEntryFromSchema = z.infer<typeof AccessControlEntrySchema>;
202
- export type AccessControlEntryArrayFromSchema = z.infer<typeof AccessControlEntryArraySchema>;
203
- export type ACECreatePayloadFromSchema = z.infer<typeof ACECreatePayloadSchema>;
204
- export type ACEUpdatePayloadFromSchema = z.infer<typeof ACEUpdatePayloadSchema>;
205
- export type RoleDefinitionFromSchema = z.infer<typeof RoleDefinitionSchema>;
206
- export type RoleDefinitionArrayFromSchema = z.infer<typeof RoleDefinitionArraySchema>;
207
- export type SystemRoleDefinitionFromSchema = z.infer<typeof SystemRoleDefinitionSchema>;
208
- export type SystemRoleDefinitionArrayFromSchema = z.infer<typeof SystemRoleDefinitionArraySchema>;
201
+ export type PropertyConditionsFromSchema = Wire.PropertyConditionsFromSchema;
202
+ export type AceConditionsFromSchema = Wire.AceConditionsFromSchema;
203
+ export type AccessControlEntryFromSchema = Wire.AccessControlEntryFromSchema;
204
+ export type AccessControlEntryArrayFromSchema = Wire.AccessControlEntryArrayFromSchema;
205
+ export type ACECreatePayloadFromSchema = Wire.ACECreatePayloadFromSchema;
206
+ export type ACEUpdatePayloadFromSchema = Wire.ACEUpdatePayloadFromSchema;
207
+ export type RoleDefinitionFromSchema = Wire.RoleDefinitionFromSchema;
208
+ export type RoleDefinitionArrayFromSchema = Wire.RoleDefinitionArrayFromSchema;
209
+ export type SystemRoleDefinitionFromSchema = Wire.SystemRoleDefinitionFromSchema;
210
+ export type SystemRoleDefinitionArrayFromSchema = Wire.SystemRoleDefinitionArrayFromSchema;
@@ -2,7 +2,7 @@ import { z } from 'zod';
2
2
  // From the values module, never from `user.ts`: `user.ts` derives its public types from the schemas
3
3
  // below, so importing it here would invert the dependency and make the source of truth circular.
4
4
  import { ACCOUNT_APP_ACCESS_MESSAGE_MAX_LENGTH, AccountType, BillingMethod, QuotaTier } from '../account-values.js';
5
- import { ApiVersions } from '../versions.js';
5
+ import type * as Wire from '../wire-types.generated.js';
6
6
 
7
7
  /**
8
8
  * Runtime API schemas for the Accounts endpoints.
@@ -141,14 +141,7 @@ export const StripeBillingStatusResponseSchema = z
141
141
  .discriminatedUnion('status', [StripeBillingEnabledSchema, StripeBillingDisabledSchema])
142
142
  .meta({ id: 'StripeBillingStatusResponse' });
143
143
 
144
- export type AccountBillingFromSchema = z.infer<typeof AccountBillingSchema>;
145
- export type AccountFromSchema = z.infer<typeof AccountSchema>;
146
- export type UpdateAccountPayloadFromSchema = z.infer<typeof UpdateAccountPayloadSchema>;
147
- export type StripeBillingStatusResponseFromSchema = z.infer<typeof StripeBillingStatusResponseSchema>;
148
-
149
- /** Account-wide defaults for request API version negotiation. */
150
- export const AccountApiVersionPolicySchema = z
151
- .strictObject({
152
- default_api_version: z.enum(ApiVersions).optional(),
153
- })
154
- .meta({ id: 'AccountApiVersionPolicy' });
144
+ export type AccountBillingFromSchema = Wire.AccountBillingFromSchema;
145
+ export type AccountFromSchema = Wire.AccountFromSchema;
146
+ export type UpdateAccountPayloadFromSchema = Wire.UpdateAccountPayloadFromSchema;
147
+ export type StripeBillingStatusResponseFromSchema = Wire.StripeBillingStatusResponseFromSchema;
@@ -0,0 +1,60 @@
1
+ import { z } from 'zod';
2
+
3
+ export const AgentBudgetConfigurationSchema = z
4
+ .strictObject({
5
+ mode: z.enum(['token', 'dollar']).optional().meta({
6
+ description: 'Run budget mode. An omitted mode preserves weighted-token budgeting.',
7
+ }),
8
+ limit_usd: z
9
+ .number()
10
+ .positive()
11
+ .max(Number.MAX_SAFE_INTEGER / 1e9)
12
+ .optional()
13
+ .meta({
14
+ description:
15
+ 'Soft USD allowance for priced model calls; dollar mode also requires limit_tokens for unpriced calls.',
16
+ }),
17
+ reminder_at_remaining_fractions: z.array(z.number().positive().lt(1)).optional(),
18
+ limit_tokens: z
19
+ .number()
20
+ .optional()
21
+ .meta({
22
+ description:
23
+ 'Weighted token budget shared by the run and every subagent workstream it launches. When the ' +
24
+ 'run and its workstreams together use this many weighted tokens, the agent gets one final ' +
25
+ 'turn without tools to summarize its work, and the run ends. This is a soft limit, not a ' +
26
+ 'spending cap: workstreams running concurrently and the final summary turns can go over ' +
27
+ 'it. Unset or <=0 means no budget.',
28
+ }),
29
+ reminder_at_remaining_tokens: z
30
+ .array(z.number())
31
+ .optional()
32
+ .meta({
33
+ description:
34
+ 'Remaining-budget thresholds, in weighted tokens, at which the agent is told how much budget ' +
35
+ 'is left. Each threshold is delivered once per context window (again after a checkpoint). ' +
36
+ 'Values outside (0, limit_tokens) are ignored. Unset means reminders at 25% and 10% remaining.',
37
+ }),
38
+ output_token_weight: z.number().min(0).optional().meta({
39
+ description: 'Weight applied to output tokens, reasoning included, when charging the budget. Default 5.',
40
+ }),
41
+ input_token_weight: z.number().min(0).optional().meta({
42
+ description: 'Weight applied to input tokens not read from the prompt cache. Default 1.',
43
+ }),
44
+ cached_input_token_weight: z
45
+ .number()
46
+ .min(0)
47
+ .optional()
48
+ .meta({
49
+ description:
50
+ 'Weight applied to input tokens read from the prompt cache. Default 0.1, so a long conversation ' +
51
+ 'that mostly re-reads cached context is charged a tenth of the uncached rate for it.',
52
+ }),
53
+ })
54
+ .meta({
55
+ id: 'AgentBudgetConfiguration',
56
+ description:
57
+ 'Weighted token budget for an agent run and its subagent workstreams. A call is charged ' +
58
+ 'output × output_token_weight + uncached input × input_token_weight + cached input × ' +
59
+ 'cached_input_token_weight.',
60
+ });
@@ -16,6 +16,7 @@ import {
16
16
  RunTypeSchema,
17
17
  } from './app-lifecycle.js';
18
18
  import {
19
+ AgentEvaluateRequestSchema,
19
20
  AgentResourceReferenceSchema,
20
21
  AgentSearchScopeSchema,
21
22
  AgentToolApprovalModeSchema,
@@ -34,7 +35,7 @@ import {
34
35
  ProcessStateSchema,
35
36
  RecordProcessRunPayloadSchema,
36
37
  } from './process.js';
37
- import { AgentCheckpointConfigurationSchema } from './project-configuration.js';
38
+ import { AgentBudgetConfigurationSchema, AgentCheckpointConfigurationSchema } from './project-configuration.js';
38
39
  import { nullableStringSchema } from './schema-primitives.js';
39
40
  import { InteractionExecutionConfigurationSchema } from './store.js';
40
41
 
@@ -91,17 +92,17 @@ const TelemetryProducerSchema = z.strictObject({
91
92
  version: z.string(),
92
93
  });
93
94
 
94
- export const JudgeGateReasonSchema = z
95
- .enum(['signal', 'sample'])
96
- .meta({ id: 'JudgeGateReason', description: 'Why the judge looked at a run.' });
95
+ export const EvaluationGateReasonSchema = z
96
+ .enum(['signal', 'sample', 'opt_in', 'always_on'])
97
+ .meta({ id: 'EvaluationGateReason', description: 'Why a run was selected for LLM evaluation.' });
97
98
 
98
- export const JudgeOutcomeSchema = z
99
- .enum(['judged', 'skipped_unarchived', 'failed'])
100
- .meta({ id: 'JudgeOutcome', description: 'What a judge run produced.' });
99
+ export const EvaluationOutcomeSchema = z
100
+ .enum(['evaluated', 'skipped_unarchived', 'failed'])
101
+ .meta({ id: 'EvaluationOutcome', description: 'Outcome of an LLM evaluation run.' });
101
102
 
102
- export const JudgeVerdictSchema = z
103
+ export const EvaluationVerdictSchema = z
103
104
  .enum(['success', 'partial', 'failure'])
104
- .meta({ id: 'JudgeVerdict', description: "The judge's reading of a turn." });
105
+ .meta({ id: 'EvaluationVerdict', description: 'LLM evaluation verdict for a turn.' });
105
106
 
106
107
  // ----------------------------------------------------------------------------
107
108
  // User feedback
@@ -225,7 +226,7 @@ const AgentRunEvaluationTotalsSchema = z.strictObject({
225
226
 
226
227
  /**
227
228
  * What the workflow reports about a run: the fold of its turn evaluations. Owned by the workflow;
228
- * it never carries feedback or judge fields, which the server owns.
229
+ * it never carries feedback or evaluator fields, which the server owns.
229
230
  */
230
231
  export const AgentRunEvaluationRollupSchema = z
231
232
  .strictObject({
@@ -245,36 +246,36 @@ export const AgentRunEvaluationRollupSchema = z
245
246
  })
246
247
  .meta({ id: 'AgentRunEvaluationRollup', description: 'Fold of the turn evaluations of a run.' });
247
248
 
248
- export const AgentRunJudgeResultSchema = z
249
+ export const AgentRunLlmEvaluationResultSchema = z
249
250
  .strictObject({
250
251
  rev: z.number().int(),
251
- gate: JudgeGateReasonSchema,
252
+ gate: EvaluationGateReasonSchema,
252
253
  sample_rate: z.number(),
253
254
  selected_probability: z.number(),
254
- outcome: JudgeOutcomeSchema,
255
- verdict: JudgeVerdictSchema.optional(),
255
+ outcome: EvaluationOutcomeSchema,
256
+ verdict: EvaluationVerdictSchema.optional(),
256
257
  score: z.number().optional(),
257
258
  model: z.string().optional(),
258
259
  prompt_version: z.string(),
259
- turns_judged: z.array(z.number().int()).optional(),
260
- judged_at: z.string().meta({ format: 'date-time' }),
260
+ turns_evaluated: z.array(z.number().int()).optional(),
261
+ evaluated_at: z.string().meta({ format: 'date-time' }),
261
262
  })
262
- .meta({ id: 'AgentRunJudgeResult', description: 'Latest judge result for a run.' });
263
+ .meta({ id: 'AgentRunLlmEvaluationResult', description: 'Latest LLM evaluation result for a run.' });
263
264
 
264
265
  export const AgentRunContradictionReasonSchema = z
265
- .enum(['feedback_down_on_clean_run', 'judge_failure_on_clean_run'])
266
+ .enum(['feedback_down_on_clean_run', 'evaluation_failure_on_clean_run'])
266
267
  .meta({ id: 'AgentRunContradictionReason' });
267
268
 
268
269
  /**
269
270
  * The server-owned evaluation summary of a run: the workflow rollup, the feedback counts and the
270
- * judge result, plus the derived severity, flags and contradiction the run list filters on.
271
+ * evaluator result, plus the derived severity, flags and contradiction the run list filters on.
271
272
  */
272
273
  export const AgentRunEvaluationSchema = z
273
274
  .strictObject({
274
275
  rev: z.number().int().meta({ description: 'Bumped on every change to any part of the summary.' }),
275
276
  rollup: AgentRunEvaluationRollupSchema.optional(),
276
277
  feedback_counts: AgentRunFeedbackCountsSchema.optional(),
277
- judge: AgentRunJudgeResultSchema.optional(),
278
+ llm_evaluation: AgentRunLlmEvaluationResultSchema.optional(),
278
279
  severity: EvaluationSeveritySchema,
279
280
  flags: z.array(TurnEvaluationFlagSchema),
280
281
  contradicted: z.boolean(),
@@ -350,6 +351,7 @@ const LlmCallEventSchema = z.strictObject({
350
351
  callType: z.enum(LlmCallType),
351
352
  attemptNumber: z.number().optional(),
352
353
  errorType: z.string().optional(),
354
+ executionRunId: z.string().optional(),
353
355
  // `NestedInteractionEvent` — an interaction executed from inside a tool — is an `LlmCallEvent`
354
356
  // with three more fields and the same `eventType`, so it cannot be a branch of its own and has to
355
357
  // widen this one. They are optional because a plain LLM call carries none of them; the three
@@ -452,17 +454,17 @@ const FeedbackEventSchema = z.strictObject({
452
454
  replaced: z.boolean(),
453
455
  });
454
456
 
455
- const TurnJudgementEventSchema = z.strictObject({
457
+ const TurnLlmEvaluationEventSchema = z.strictObject({
456
458
  ...agentEventBase,
457
- eventType: z.literal(AgentEventType.TurnJudgement),
459
+ eventType: z.literal(AgentEventType.TurnLlmEvaluation),
458
460
  evaluationRev: z.number().int(),
459
461
  workstreamId: z.string(),
460
462
  turnSeq: z.number().int().min(0),
461
- gate: JudgeGateReasonSchema,
463
+ gate: EvaluationGateReasonSchema,
462
464
  sampleRate: z.number(),
463
465
  selectedProbability: z.number(),
464
- outcome: JudgeOutcomeSchema,
465
- verdict: JudgeVerdictSchema.optional(),
466
+ outcome: EvaluationOutcomeSchema,
467
+ verdict: EvaluationVerdictSchema.optional(),
466
468
  score: z.number().optional(),
467
469
  reasons: z.array(z.string()).optional(),
468
470
  promptVersion: z.string(),
@@ -490,7 +492,7 @@ export const AgentEventSchema: z.ZodType<AgentEvent> = z
490
492
  ToolCallEventSchema,
491
493
  TurnEvaluationEventSchema,
492
494
  FeedbackEventSchema,
493
- TurnJudgementEventSchema,
495
+ TurnLlmEvaluationEventSchema,
494
496
  StallBreakerEventSchema,
495
497
  ])
496
498
  .meta({ id: 'AgentEvent' });
@@ -614,6 +616,25 @@ export const AgentArtifactUrlResponseSchema = z
614
616
  })
615
617
  .meta({ id: 'AgentArtifactUrlResponse', description: 'Signed artifact URL response for agent artifacts.' });
616
618
 
619
+ export const AllocateAgentRunBudgetPayloadSchema = z
620
+ .union([
621
+ z.strictObject({
622
+ additional_tokens: z
623
+ .number()
624
+ .int()
625
+ .positive()
626
+ .meta({ description: 'Weighted tokens to add to the run allowance.' }),
627
+ }),
628
+ z.strictObject({
629
+ additional_usd: z
630
+ .number()
631
+ .positive()
632
+ .max(Number.MAX_SAFE_INTEGER / 1e9)
633
+ .meta({ description: 'USD to add to the dollar allowance.' }),
634
+ }),
635
+ ])
636
+ .meta({ id: 'AllocateAgentRunBudgetPayload', description: 'Add exactly one allowance: weighted tokens or USD.' });
637
+
617
638
  export const SignalAgentResponseSchema = z
618
639
  .strictObject({
619
640
  status: z.string(),
@@ -781,6 +802,7 @@ export const AutonomousRunResponseSchema = z
781
802
  .array(z.string())
782
803
  .meta({ description: 'Lessons learned from the conversation (extracted at completion)' })
783
804
  .optional(),
805
+ evaluate: AgentEvaluateRequestSchema,
784
806
  evaluation: AgentRunEvaluationSchema.meta({ description: 'Evaluation summary of the run.' }).optional(),
785
807
  feedback: z
786
808
  .array(AgentRunFeedbackEntrySchema)
@@ -934,6 +956,7 @@ export const AgentRunSchema = z
934
956
  .array(z.string())
935
957
  .meta({ description: 'Lessons learned from the conversation (extracted at completion)' })
936
958
  .optional(),
959
+ evaluate: AgentEvaluateRequestSchema,
937
960
  evaluation: AgentRunEvaluationSchema.meta({ description: 'Evaluation summary of the run.' }).optional(),
938
961
  feedback: z
939
962
  .array(AgentRunFeedbackEntrySchema)
@@ -966,6 +989,7 @@ export const CreateAgentRunPayloadSchema = z
966
989
  .strictObject({
967
990
  interaction: z.string().meta({ description: 'Interaction ID or code (e.g. "sys:generic_question").' }),
968
991
  ...ConversationEnrichmentFields,
992
+ evaluate: AgentEvaluateRequestSchema,
969
993
  data: z.looseObject({}).meta({ description: 'Input parameters, typed per interaction' }).optional(),
970
994
  config: InteractionExecutionConfigurationSchema.meta({
971
995
  description: 'Execution configuration (environment, model, model_options, etc.)',
@@ -1040,7 +1064,18 @@ export const CreateAgentRunPayloadSchema = z
1040
1064
  description:
1041
1065
  "Structured checkpoint override for this run. Field-wise it takes precedence over the interaction's `agent_runner_options.checkpoint` and the project's `configuration.agent.checkpoint`; the legacy `checkpoint_tokens` above still wins over everything when set.",
1042
1066
  }).optional(),
1067
+ budget: AgentBudgetConfigurationSchema.meta({
1068
+ description:
1069
+ "Token budget for this run and its subagent workstreams. Field-wise it takes precedence over the interaction's `agent_runner_options.budget` and the project's `configuration.agent.budget`.",
1070
+ }).optional(),
1043
1071
  max_iterations: z.number().meta({ description: 'Maximum conversation iterations (default: 20)' }).optional(),
1072
+ final_verification: z
1073
+ .boolean()
1074
+ .meta({
1075
+ description:
1076
+ 'When true, a non-interactive free-form run takes one extra turn after its answer to check that the task is complete. Off by default. Not kept on restart or fork.',
1077
+ })
1078
+ .optional(),
1044
1079
  notify_endpoints: z.array(z.string()).meta({ description: 'Webhook URLs to notify on completion' }).optional(),
1045
1080
  debug_mode: z.boolean().meta({ description: 'Enable debug mode for verbose logging' }).optional(),
1046
1081
  started_by: z
@@ -1418,7 +1453,7 @@ export const ListAgentRunsQuerySchema = z
1418
1453
  }).optional(),
1419
1454
  contradicted: z
1420
1455
  .boolean()
1421
- .meta({ description: 'Only runs whose feedback or judge contradicts the detectors' })
1456
+ .meta({ description: 'Only runs whose feedback or LLM evaluation contradicts the detectors' })
1422
1457
  .optional(),
1423
1458
  })
1424
1459
  .meta({ id: 'ListAgentRunsQuery' });
@@ -1473,6 +1508,7 @@ export const RecordAgentRunPayloadSchema = z
1473
1508
  run_kind: z.literal('agent').optional(),
1474
1509
  interaction: z.string(),
1475
1510
  ...ConversationEnrichmentFields,
1511
+ evaluate: AgentEvaluateRequestSchema,
1476
1512
  parent_run_id: z.string().optional(),
1477
1513
  workstream_id: z.string().optional(),
1478
1514
  schedule_id: z.string().optional(),
@@ -3,6 +3,7 @@ import { z } from 'zod';
3
3
  // types from the schemas below, so importing them here would invert the dependency.
4
4
  import { ApiKeyTypes } from '../apikey-values.js';
5
5
  import { SystemRoles } from '../project-values.js';
6
+ import type * as Wire from '../wire-types.generated.js';
6
7
  import { ProjectSchema } from './project.js';
7
8
 
8
9
  /**
@@ -197,16 +198,16 @@ export const DeleteOperationResultSchema = z
197
198
  })
198
199
  .meta({ id: 'DeleteOperationResult' });
199
200
 
200
- export type ApiKeyListQueryFromSchema = z.infer<typeof ApiKeyListQuerySchema>;
201
- export type ApiKeyReadQueryFromSchema = z.infer<typeof ApiKeyReadQuerySchema>;
202
- export type ProjectRefArrayFromSchema = z.infer<typeof ProjectRefArraySchema>;
203
- export type ApiKeyFromSchema = z.infer<typeof ApiKeySchema>;
204
- export type ApiKeyArrayFromSchema = z.infer<typeof ApiKeyArraySchema>;
205
- export type ApiKeyWithValueFromSchema = z.infer<typeof ApiKeyWithValueSchema>;
206
- export type ApiKeyReadResponseFromSchema = z.infer<typeof ApiKeyReadResponseSchema>;
207
- export type CreateApiKeyPayloadFromSchema = z.infer<typeof CreateApiKeyPayloadSchema>;
208
- export type UpdateApiKeyPayloadFromSchema = z.infer<typeof UpdateApiKeyPayloadSchema>;
209
- export type AuthTokenResponseFromSchema = z.infer<typeof AuthTokenResponseSchema>;
201
+ export type ApiKeyListQueryFromSchema = Wire.ApiKeyListQueryFromSchema;
202
+ export type ApiKeyReadQueryFromSchema = Wire.ApiKeyReadQueryFromSchema;
203
+ export type ProjectRefArrayFromSchema = Wire.ProjectRefArrayFromSchema;
204
+ export type ApiKeyFromSchema = Wire.ApiKeyFromSchema;
205
+ export type ApiKeyArrayFromSchema = Wire.ApiKeyArrayFromSchema;
206
+ export type ApiKeyWithValueFromSchema = Wire.ApiKeyWithValueFromSchema;
207
+ export type ApiKeyReadResponseFromSchema = Wire.ApiKeyReadResponseFromSchema;
208
+ export type CreateApiKeyPayloadFromSchema = Wire.CreateApiKeyPayloadFromSchema;
209
+ export type UpdateApiKeyPayloadFromSchema = Wire.UpdateApiKeyPayloadFromSchema;
210
+ export type AuthTokenResponseFromSchema = Wire.AuthTokenResponseFromSchema;
210
211
 
211
212
  /** Project-independent organization credentials, managed only by interactive administrators. */
212
213
  export const AccountApiKeySchema = ApiKeySchema.pick({
@@ -2,6 +2,7 @@ import { z } from 'zod';
2
2
  import { APPGEN_PACKAGE_SPEC_PATTERN } from '../appgen.js';
3
3
  import { AppAccessControlSchema, AppAvailableInSchema, MCPToolAnnotationsSchema } from './apps.js';
4
4
  import { EventCategorySchema } from './audit-trail.js';
5
+ import { AgentBudgetConfigurationSchema } from './project-configuration.js';
5
6
 
6
7
  // The app lifecycle contracts: versions, builds, scaffolds, git repositories, development tasks,
7
8
  // installations and inspection. `./apps.js` holds the manifest itself and the tool-collection
@@ -442,6 +443,10 @@ export const StartAppDevelopmentTaskRequestSchema = z
442
443
  .boolean()
443
444
  .meta({ description: 'Create one immutable app version after validation. Defaults to false.' })
444
445
  .optional(),
446
+ budget: AgentBudgetConfigurationSchema.meta({
447
+ description:
448
+ "Token budget for the whole task, shared by the App Builder run and every step of its development process. Field-wise it overrides the project's `configuration.agent.budget`; `limit_tokens` <= 0 runs the task without a budget.",
449
+ }).optional(),
445
450
  })
446
451
  .meta({ id: 'StartAppDevelopmentTaskRequest' });
447
452
 
@@ -39,6 +39,12 @@ export const AuditAggregationDimensionMapSchema = z
39
39
  event_category: z.string().nullable().optional(),
40
40
  provider: z.string().nullable().optional(),
41
41
  project_id: z.string().nullable().optional(),
42
+ principal_id: z.string().nullable().optional(),
43
+ actor_id: z.string().nullable().optional(),
44
+ user_id: z.string().nullable().optional().meta({
45
+ description:
46
+ 'Originating user identity, including delegated and scheduled activity with a recorded user owner. Non-user principals without a user origin are excluded.',
47
+ }),
42
48
  'details.pipeline': z.string().nullable().optional(),
43
49
  'details.verdict': z.string().nullable().optional(),
44
50
  'details.workflow_type': z.string().nullable().optional(),
@@ -48,7 +54,7 @@ export const AuditAggregationDimensionMapSchema = z
48
54
  .meta({ id: 'AuditAggregationDimensionMap' });
49
55
 
50
56
  export const AuditAggregationDistinctFieldSchema = z
51
- .enum(['resource_id', 'request_id'])
57
+ .enum(['resource_id', 'request_id', 'principal_id', 'actor_id', 'user_id'])
52
58
  .meta({ id: 'AuditAggregationDistinctField' });
53
59
 
54
60
  export const AuditAggregationOperationSchema = z
@@ -164,6 +170,10 @@ export const AuditAggregationFilterSchema = z
164
170
  resourceTypes: z.array(z.string()).optional(),
165
171
  eventCategories: z.array(EventCategorySchema).optional(),
166
172
  providers: z.array(z.string()).optional(),
173
+ principalTypes: z
174
+ .array(z.string())
175
+ .meta({ description: 'Restrict events to top-level actor categories such as user or apikey.' })
176
+ .optional(),
167
177
  success: z.boolean().optional(),
168
178
  details: z.array(AuditAggregationDetailFilterSchema).optional(),
169
179
  })
@@ -241,3 +251,167 @@ export const AuditTrailQuerySchema = z
241
251
  offset: z.number().meta({ description: 'Pagination: offset' }).optional(),
242
252
  })
243
253
  .meta({ id: 'AuditTrailQuery' });
254
+
255
+ export const AuditAdoptionFilterSchema = z
256
+ .strictObject({
257
+ actions: z.array(AuditActionSchema).max(32).optional(),
258
+ resourceTypes: z.array(z.string().max(128)).max(16).optional(),
259
+ eventCategories: z.array(EventCategorySchema).max(6).optional(),
260
+ })
261
+ .meta({ id: 'AuditAdoptionFilter' });
262
+
263
+ export const AuditAdoptionQuerySchema = z
264
+ .strictObject({
265
+ projectId: z.string().optional(),
266
+ from: z
267
+ .string()
268
+ .meta({ format: 'date-time', description: 'Inclusive start; defaults to 30 days before to.' })
269
+ .optional(),
270
+ to: z
271
+ .string()
272
+ .meta({ format: 'date-time', description: 'Exclusive end; defaults to now. Maximum duration: 366 days.' })
273
+ .optional(),
274
+ filter: AuditAdoptionFilterSchema.optional(),
275
+ })
276
+ .meta({
277
+ id: 'AuditAdoptionQuery',
278
+ description:
279
+ 'Productive direct authenticated user activity, including user OAuth/MCP calls. Scope is enforced by the server.',
280
+ });
281
+
282
+ export const AuditAdoptionPeriodSchema = z
283
+ .strictObject({
284
+ from: z.string().meta({ format: 'date-time' }),
285
+ to: z.string().meta({ format: 'date-time' }),
286
+ })
287
+ .meta({ id: 'AuditAdoptionPeriod' });
288
+
289
+ export const AuditAdoptionBucketSchema = z
290
+ .strictObject({
291
+ from: z.string().meta({ format: 'date-time' }),
292
+ to: z.string().meta({ format: 'date-time' }),
293
+ partial: z.boolean(),
294
+ active_users: z.number().int().nonnegative(),
295
+ })
296
+ .meta({ id: 'AuditAdoptionBucket' });
297
+
298
+ export const AuditAdoptionActiveDaysSchema = z
299
+ .strictObject({
300
+ days: z.number().int().min(1).max(367),
301
+ users: z.number().int().nonnegative(),
302
+ })
303
+ .meta({ id: 'AuditAdoptionActiveDays' });
304
+
305
+ export const AuditAdoptionProjectSchema = z
306
+ .strictObject({
307
+ project_id: z.string(),
308
+ project_name: z.string().nullable(),
309
+ active_users: z.number().int().nonnegative(),
310
+ active_user_days: z.number().int().nonnegative(),
311
+ })
312
+ .meta({ id: 'AuditAdoptionProject' });
313
+
314
+ export const AuditAdoptionHistorySchema = z
315
+ .strictObject({
316
+ earliest_observed_at: z.string().meta({ format: 'date-time' }).nullable(),
317
+ coverage_from: z
318
+ .string()
319
+ .meta({
320
+ format: 'date-time',
321
+ description:
322
+ 'Authoritative complete-history boundary, if known. Earliest observation is not a coverage boundary.',
323
+ })
324
+ .nullable(),
325
+ completeness: z.enum(['unknown', 'insufficient', 'verified']),
326
+ retention_unavailable_reason: z.enum(['no_previous_users', 'insufficient_history']).nullable(),
327
+ })
328
+ .meta({ id: 'AuditAdoptionHistory' });
329
+
330
+ export const AuditAdoptionResponseSchema = z
331
+ .strictObject({
332
+ period: AuditAdoptionPeriodSchema,
333
+ previous_period: AuditAdoptionPeriodSchema,
334
+ resolution: z.enum(['day', 'week']),
335
+ active_users: z.number().int().nonnegative(),
336
+ previous_active_users: z.number().int().nonnegative(),
337
+ retained_users: z.number().int().nonnegative(),
338
+ observed_retention: z.number().min(0).max(1).nullable(),
339
+ returning_user_share: z.number().min(0).max(1).nullable(),
340
+ repeat_user_share: z.number().min(0).max(1).nullable(),
341
+ median_active_days: z.number().nonnegative().nullable(),
342
+ active_projects: z.number().int().nonnegative().nullable(),
343
+ timeline: z.array(AuditAdoptionBucketSchema),
344
+ active_day_distribution: z.array(AuditAdoptionActiveDaysSchema),
345
+ top_projects: z.array(AuditAdoptionProjectSchema).max(10),
346
+ history: AuditAdoptionHistorySchema,
347
+ })
348
+ .meta({
349
+ id: 'AuditAdoptionResponse',
350
+ description:
351
+ 'Distinct user adoption sets over two equal-duration half-open periods. Ratios use available audit history, not guaranteed historical coverage. No user identities are returned.',
352
+ });
353
+
354
+ export const AuditUsageQuerySchema = AuditAdoptionQuerySchema.omit({ filter: true })
355
+ .extend({
356
+ resolution: z.enum(['day', 'week', 'month']).optional().meta({
357
+ description: 'UTC calendar buckets. Weeks start Monday. Omitted: daily up to 200 dates, otherwise weekly.',
358
+ }),
359
+ })
360
+ .meta({
361
+ id: 'AuditUsageQuery',
362
+ description: 'Usage trends for an authorized account or project over a half-open interval of at most 366 days.',
363
+ });
364
+
365
+ export const AuditUsageCountsSchema = z
366
+ .strictObject({
367
+ active_users: z.number().int().nonnegative(),
368
+ agent_runs: z
369
+ .number()
370
+ .int()
371
+ .nonnegative()
372
+ .meta({ description: 'All audited run creations and marked restarts, including automated runs.' }),
373
+ user_agent_runs: z
374
+ .number()
375
+ .int()
376
+ .nonnegative()
377
+ .meta({ description: 'Run operations initiated directly by authenticated users, including OAuth/MCP.' }),
378
+ automated_agent_runs: z.number().int().nonnegative().meta({
379
+ description: 'Other run operations, including schedules, delegated agents, services and API keys.',
380
+ }),
381
+ agent_users: z.number().int().nonnegative().meta({
382
+ description:
383
+ 'Distinct identifiable user initiators or owners of run operations, including scheduled and delegated runs.',
384
+ }),
385
+ direct_calls: z.number().int().nonnegative(),
386
+ direct_call_users: z.number().int().nonnegative(),
387
+ content_objects: z.number().int().nonnegative(),
388
+ user_content_objects: z.number().int().nonnegative(),
389
+ other_content_objects: z.number().int().nonnegative(),
390
+ })
391
+ .meta({
392
+ id: 'AuditUsageCounts',
393
+ description:
394
+ 'Direct productive users, run initiators/owners, all run operations and standalone inference audit events.',
395
+ });
396
+
397
+ export const AuditUsageBucketSchema = z
398
+ .strictObject({
399
+ from: z.string().meta({ format: 'date-time' }),
400
+ to: z.string().meta({ format: 'date-time' }),
401
+ partial: z.boolean(),
402
+ counts: AuditUsageCountsSchema,
403
+ })
404
+ .meta({ id: 'AuditUsageBucket' });
405
+
406
+ export const AuditUsageResponseSchema = z
407
+ .strictObject({
408
+ period: AuditAdoptionPeriodSchema,
409
+ resolution: z.enum(['day', 'week', 'month']),
410
+ totals: AuditUsageCountsSchema,
411
+ timeline: z.array(AuditUsageBucketSchema),
412
+ })
413
+ .meta({
414
+ id: 'AuditUsageResponse',
415
+ description:
416
+ 'UTC usage trends. Period-wide distinct users are not sums of bucket populations. No user identities are returned.',
417
+ });