@sixb/core 0.1.6 → 0.1.8

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 (909) hide show
  1. package/dist/actions/delegated-admission.d.ts +24 -0
  2. package/dist/actions/delegated-admission.d.ts.map +1 -0
  3. package/dist/actions/descriptor.d.ts +29 -0
  4. package/dist/actions/descriptor.d.ts.map +1 -0
  5. package/dist/actions/execution.d.ts +5 -5
  6. package/dist/actions/execution.d.ts.map +1 -1
  7. package/dist/actions/index.js +50 -40
  8. package/dist/actions/index.js.map +1 -1
  9. package/dist/actions/request.d.ts.map +1 -1
  10. package/dist/actions/run-authorization.d.ts +20 -0
  11. package/dist/actions/run-authorization.d.ts.map +1 -0
  12. package/dist/actions/run-dispatch.d.ts +3 -1
  13. package/dist/actions/run-dispatch.d.ts.map +1 -1
  14. package/dist/actions/worker.js +5 -5
  15. package/dist/actions/worker.js.map +1 -1
  16. package/dist/agents/adapters.d.ts +6 -166
  17. package/dist/agents/adapters.d.ts.map +1 -1
  18. package/dist/agents/authority.d.ts +22 -6
  19. package/dist/agents/authority.d.ts.map +1 -1
  20. package/dist/agents/builders.d.ts +3 -11
  21. package/dist/agents/builders.d.ts.map +1 -1
  22. package/dist/agents/context-resolution.d.ts.map +1 -1
  23. package/dist/agents/context.js +2 -2
  24. package/dist/agents/dispatch.d.ts +9 -1
  25. package/dist/agents/dispatch.d.ts.map +1 -1
  26. package/dist/agents/errors.d.ts +1 -10
  27. package/dist/agents/errors.d.ts.map +1 -1
  28. package/dist/agents/execution.d.ts +9 -10
  29. package/dist/agents/execution.d.ts.map +1 -1
  30. package/dist/agents/identity.d.ts +3 -0
  31. package/dist/agents/identity.d.ts.map +1 -0
  32. package/dist/agents/ids.d.ts +4 -0
  33. package/dist/agents/ids.d.ts.map +1 -1
  34. package/dist/agents/index.d.ts +15 -11
  35. package/dist/agents/index.d.ts.map +1 -1
  36. package/dist/agents/index.js +90 -78
  37. package/dist/agents/index.js.map +1 -1
  38. package/dist/agents/message.d.ts +19 -13
  39. package/dist/agents/message.d.ts.map +1 -1
  40. package/dist/agents/model-loop.d.ts +58 -0
  41. package/dist/agents/model-loop.d.ts.map +1 -0
  42. package/dist/agents/reference.d.ts +4 -0
  43. package/dist/agents/reference.d.ts.map +1 -0
  44. package/dist/agents/request.d.ts +10 -8
  45. package/dist/agents/request.d.ts.map +1 -1
  46. package/dist/agents/retired-config.d.ts +4 -0
  47. package/dist/agents/retired-config.d.ts.map +1 -0
  48. package/dist/agents/streams.d.ts +13 -8
  49. package/dist/agents/streams.d.ts.map +1 -1
  50. package/dist/agents/streams.js +7 -5
  51. package/dist/agents/streams.js.map +1 -1
  52. package/dist/agents/tool-catalog.d.ts +9 -0
  53. package/dist/agents/tool-catalog.d.ts.map +1 -0
  54. package/dist/agents/tool-definition.d.ts +1 -1
  55. package/dist/agents/tool-definition.d.ts.map +1 -1
  56. package/dist/agents/types.d.ts +31 -68
  57. package/dist/agents/types.d.ts.map +1 -1
  58. package/dist/agents/validation.d.ts +3 -13
  59. package/dist/agents/validation.d.ts.map +1 -1
  60. package/dist/ai-usage/execution.d.ts +53 -0
  61. package/dist/ai-usage/execution.d.ts.map +1 -0
  62. package/dist/ai-usage/index.d.ts +3 -0
  63. package/dist/ai-usage/index.d.ts.map +1 -0
  64. package/dist/auth/index.js +12 -9
  65. package/dist/auth/index.js.map +1 -1
  66. package/dist/authorization/decision.d.ts +14 -3
  67. package/dist/authorization/decision.d.ts.map +1 -1
  68. package/dist/authorization/grant-kinds.d.ts +25 -8
  69. package/dist/authorization/grant-kinds.d.ts.map +1 -1
  70. package/dist/authorization/index.d.ts +1 -1
  71. package/dist/authorization/index.d.ts.map +1 -1
  72. package/dist/authorization/index.js +12 -7
  73. package/dist/authorization/index.js.map +1 -1
  74. package/dist/authorization/resolve.d.ts +3 -3
  75. package/dist/authorization/resolve.d.ts.map +1 -1
  76. package/dist/authorization/types.d.ts +7 -5
  77. package/dist/authorization/types.d.ts.map +1 -1
  78. package/dist/blob-storage/browser.js +2 -2
  79. package/dist/blob-storage/index.js +3 -3
  80. package/dist/bootstrap/discovery.d.ts +6 -6
  81. package/dist/bootstrap/discovery.d.ts.map +1 -1
  82. package/dist/bootstrap/index.js +62 -51
  83. package/dist/bootstrap/index.js.map +1 -1
  84. package/dist/bootstrap/ontology-type-manifest.d.ts.map +1 -1
  85. package/dist/broker/index.js +2 -2
  86. package/dist/{chunk-zqysyfjt.js → chunk-08m3b6w8.js} +1 -1
  87. package/dist/chunk-19jp6g9d.js +131 -0
  88. package/dist/chunk-19jp6g9d.js.map +11 -0
  89. package/dist/{chunk-3j7573mj.js → chunk-2dw777qw.js} +50 -5
  90. package/dist/{chunk-3j7573mj.js.map → chunk-2dw777qw.js.map} +4 -3
  91. package/dist/{chunk-0172wgm9.js → chunk-2xns679x.js} +10 -2
  92. package/dist/{chunk-0172wgm9.js.map → chunk-2xns679x.js.map} +3 -3
  93. package/dist/chunk-359jm1jw.js +147 -0
  94. package/dist/chunk-359jm1jw.js.map +10 -0
  95. package/dist/{chunk-dy311asx.js → chunk-3xep5cjx.js} +58 -23
  96. package/dist/chunk-3xep5cjx.js.map +15 -0
  97. package/dist/{chunk-n4spznws.js → chunk-3z1qec12.js} +83 -12
  98. package/dist/chunk-3z1qec12.js.map +12 -0
  99. package/dist/{chunk-z3zp0bj1.js → chunk-407j3msh.js} +1 -1
  100. package/dist/{chunk-rhrbz7d4.js → chunk-4a849fr1.js} +1 -1
  101. package/dist/{chunk-cy0n5dms.js → chunk-4jjp5k14.js} +1 -1
  102. package/dist/chunk-4qfkag59.js +1568 -0
  103. package/dist/chunk-4qfkag59.js.map +20 -0
  104. package/dist/{chunk-1e8m6yn3.js → chunk-4sm0aznx.js} +685 -86
  105. package/dist/chunk-4sm0aznx.js.map +43 -0
  106. package/dist/chunk-4yqmp43v.js +159 -0
  107. package/dist/chunk-4yqmp43v.js.map +11 -0
  108. package/dist/{chunk-rdeagz6b.js → chunk-5e3pq99w.js} +3 -7
  109. package/dist/{chunk-rdeagz6b.js.map → chunk-5e3pq99w.js.map} +3 -3
  110. package/dist/{chunk-ezake7g1.js → chunk-5ntny1qx.js} +1 -1
  111. package/dist/{chunk-dm72y8wt.js → chunk-7y0f6rf1.js} +29 -16
  112. package/dist/chunk-7y0f6rf1.js.map +10 -0
  113. package/dist/{chunk-72q2y8hn.js → chunk-8tsf6dmc.js} +2 -2
  114. package/dist/{chunk-qewtks41.js → chunk-9nbmsvn5.js} +123 -20
  115. package/dist/chunk-9nbmsvn5.js.map +11 -0
  116. package/dist/{chunk-5sxb1168.js → chunk-aa2pen2v.js} +256 -82
  117. package/dist/chunk-aa2pen2v.js.map +34 -0
  118. package/dist/{chunk-819wnjz8.js → chunk-ajnan18g.js} +13 -10
  119. package/dist/chunk-ajnan18g.js.map +12 -0
  120. package/dist/chunk-c15dr03f.js +43 -0
  121. package/dist/chunk-c15dr03f.js.map +10 -0
  122. package/dist/{chunk-t0jjkep3.js → chunk-d8qkxt2v.js} +4 -2
  123. package/dist/chunk-d8qkxt2v.js.map +10 -0
  124. package/dist/{chunk-vybf6pkp.js → chunk-dbc80ad7.js} +1 -1
  125. package/dist/{chunk-nkbfrt0c.js → chunk-f26bck4t.js} +7 -7
  126. package/dist/{chunk-x2yw73hy.js → chunk-fvt9rjsa.js} +23 -7
  127. package/dist/chunk-fvt9rjsa.js.map +10 -0
  128. package/dist/{chunk-znagycq7.js → chunk-gbejpkex.js} +5 -5
  129. package/dist/{chunk-znagycq7.js.map → chunk-gbejpkex.js.map} +1 -1
  130. package/dist/{chunk-e42bc6m3.js → chunk-gzasd5b6.js} +5 -5
  131. package/dist/{chunk-e42bc6m3.js.map → chunk-gzasd5b6.js.map} +3 -3
  132. package/dist/{chunk-rnshztfq.js → chunk-h0k55pc7.js} +6 -6
  133. package/dist/{chunk-rnshztfq.js.map → chunk-h0k55pc7.js.map} +1 -1
  134. package/dist/chunk-h5vqbfmd.js +1537 -0
  135. package/dist/chunk-h5vqbfmd.js.map +19 -0
  136. package/dist/chunk-j1sbhm7p.js +45 -0
  137. package/dist/chunk-j1sbhm7p.js.map +10 -0
  138. package/dist/chunk-jecn6t54.js +307 -0
  139. package/dist/chunk-jecn6t54.js.map +12 -0
  140. package/dist/{chunk-dsrkgtnh.js → chunk-jq43kdvk.js} +1 -1
  141. package/dist/{chunk-wtmzkcht.js → chunk-k34z5rvh.js} +1 -1
  142. package/dist/{chunk-f6erf2vv.js → chunk-k522z7v6.js} +10 -5
  143. package/dist/chunk-k522z7v6.js.map +10 -0
  144. package/dist/{chunk-htq0qh7z.js → chunk-ka3a2ft3.js} +2 -2
  145. package/dist/{chunk-ckxfnx7f.js → chunk-mth82m8t.js} +129 -95
  146. package/dist/chunk-mth82m8t.js.map +14 -0
  147. package/dist/{chunk-5gynx4xn.js → chunk-mwsxn98e.js} +79 -77
  148. package/dist/{chunk-5gynx4xn.js.map → chunk-mwsxn98e.js.map} +8 -8
  149. package/dist/{chunk-f2rt4vkh.js → chunk-n2w475r0.js} +3 -3
  150. package/dist/chunk-n4khvw9n.js +111 -0
  151. package/dist/chunk-n4khvw9n.js.map +11 -0
  152. package/dist/{chunk-t8t39h7v.js → chunk-n6jxh8sw.js} +10 -2
  153. package/dist/chunk-n6jxh8sw.js.map +10 -0
  154. package/dist/chunk-nn0tekr1.js +284 -0
  155. package/dist/chunk-nn0tekr1.js.map +12 -0
  156. package/dist/chunk-nx7k8tpr.js +436 -0
  157. package/dist/chunk-nx7k8tpr.js.map +12 -0
  158. package/dist/{chunk-drjqm1aa.js → chunk-p03r0h5s.js} +310 -28
  159. package/dist/chunk-p03r0h5s.js.map +16 -0
  160. package/dist/{chunk-1g8negke.js → chunk-p1rzczbt.js} +93 -8
  161. package/dist/chunk-p1rzczbt.js.map +12 -0
  162. package/dist/{chunk-f83ka50g.js → chunk-p1x242ad.js} +652 -77
  163. package/dist/chunk-p1x242ad.js.map +25 -0
  164. package/dist/chunk-p2vqaxkc.js +528 -0
  165. package/dist/chunk-p2vqaxkc.js.map +15 -0
  166. package/dist/{chunk-a31h57d5.js → chunk-pc7ys28c.js} +70 -7
  167. package/dist/chunk-pc7ys28c.js.map +14 -0
  168. package/dist/{chunk-md8k0r54.js → chunk-q0k9nc5a.js} +281 -89
  169. package/dist/chunk-q0k9nc5a.js.map +14 -0
  170. package/dist/{chunk-bhxaq2nn.js → chunk-qw9gvjv5.js} +1 -1
  171. package/dist/chunk-r8jrnexe.js +403 -0
  172. package/dist/chunk-r8jrnexe.js.map +10 -0
  173. package/dist/{chunk-h9kxd41f.js → chunk-rafagrwr.js} +48 -7
  174. package/dist/chunk-rafagrwr.js.map +11 -0
  175. package/dist/{chunk-dysw7nsm.js → chunk-rv2hkwwa.js} +2 -2
  176. package/dist/{chunk-ghteq96b.js → chunk-s5y30bc9.js} +2 -2
  177. package/dist/{chunk-t624af60.js → chunk-sbzzr4kx.js} +1848 -757
  178. package/dist/chunk-sbzzr4kx.js.map +63 -0
  179. package/dist/{chunk-6gjqgd3d.js → chunk-tpnd31c1.js} +2 -1
  180. package/dist/chunk-tpnd31c1.js.map +11 -0
  181. package/dist/chunk-trxxmgnf.js +68 -0
  182. package/dist/chunk-trxxmgnf.js.map +11 -0
  183. package/dist/{chunk-0hc5j867.js → chunk-v1xppd0y.js} +17 -13
  184. package/dist/{chunk-0hc5j867.js.map → chunk-v1xppd0y.js.map} +2 -2
  185. package/dist/chunk-v4en4jc2.js +252 -0
  186. package/dist/chunk-v4en4jc2.js.map +10 -0
  187. package/dist/{chunk-xkthy56g.js → chunk-w1tvjszy.js} +1 -1
  188. package/dist/{chunk-8b55ygje.js → chunk-w3e09qqk.js} +1 -1
  189. package/dist/{chunk-8gv5z0zm.js → chunk-w9tg6yyb.js} +13 -8
  190. package/dist/{chunk-8gv5z0zm.js.map → chunk-w9tg6yyb.js.map} +3 -3
  191. package/dist/{chunk-62c7t4jc.js → chunk-wdage1eb.js} +1 -1
  192. package/dist/{chunk-tg5mee00.js → chunk-wtf06et8.js} +11 -7
  193. package/dist/{chunk-tg5mee00.js.map → chunk-wtf06et8.js.map} +3 -3
  194. package/dist/{chunk-nva1xkjz.js → chunk-xajtptbw.js} +1237 -1434
  195. package/dist/chunk-xajtptbw.js.map +40 -0
  196. package/dist/{chunk-xc7hq65b.js → chunk-yp8ee62z.js} +49 -2
  197. package/dist/chunk-yp8ee62z.js.map +11 -0
  198. package/dist/chunk-z4ccwbkz.js +139 -0
  199. package/dist/chunk-z4ccwbkz.js.map +10 -0
  200. package/dist/datasets/builders.d.ts +11 -2
  201. package/dist/datasets/builders.d.ts.map +1 -1
  202. package/dist/datasets/changes.d.ts +14 -4
  203. package/dist/datasets/changes.d.ts.map +1 -1
  204. package/dist/datasets/execution.d.ts +15 -1
  205. package/dist/datasets/execution.d.ts.map +1 -1
  206. package/dist/datasets/index.d.ts +1 -0
  207. package/dist/datasets/index.d.ts.map +1 -1
  208. package/dist/datasets/sequence.d.ts +7 -0
  209. package/dist/datasets/sequence.d.ts.map +1 -0
  210. package/dist/datasets/types.d.ts +1 -0
  211. package/dist/datasets/types.d.ts.map +1 -1
  212. package/dist/datasets/validation.d.ts.map +1 -1
  213. package/dist/datasets/write.d.ts +37 -0
  214. package/dist/datasets/write.d.ts.map +1 -0
  215. package/dist/datasets/write.js +17 -0
  216. package/dist/datasets/write.js.map +9 -0
  217. package/dist/error-reporting/internal.js +4 -4
  218. package/dist/error-reporting/types.d.ts +7 -2
  219. package/dist/error-reporting/types.d.ts.map +1 -1
  220. package/dist/errors/catalog.d.ts +8 -0
  221. package/dist/errors/catalog.d.ts.map +1 -1
  222. package/dist/errors/internal.js +2 -2
  223. package/dist/events/execution.d.ts.map +1 -1
  224. package/dist/events/index.js +4 -4
  225. package/dist/events/types/datasets.d.ts +2 -6
  226. package/dist/events/types/datasets.d.ts.map +1 -1
  227. package/dist/execution/agent.d.ts +18 -9
  228. package/dist/execution/agent.d.ts.map +1 -1
  229. package/dist/execution/agent.js +62 -46
  230. package/dist/execution/agent.js.map +1 -1
  231. package/dist/execution/authorization.d.ts +68 -20
  232. package/dist/execution/authorization.d.ts.map +1 -1
  233. package/dist/execution/authorized-object-reader.d.ts +69 -0
  234. package/dist/execution/authorized-object-reader.d.ts.map +1 -0
  235. package/dist/execution/durable.d.ts.map +1 -1
  236. package/dist/execution/index.d.ts +1 -1
  237. package/dist/execution/index.d.ts.map +1 -1
  238. package/dist/execution/primitive.js +55 -46
  239. package/dist/execution/primitive.js.map +2 -2
  240. package/dist/execution/request.d.ts +14 -1
  241. package/dist/execution/request.d.ts.map +1 -1
  242. package/dist/execution/request.js +92 -54
  243. package/dist/execution/request.js.map +3 -3
  244. package/dist/execution/scopes.d.ts +16 -0
  245. package/dist/execution/scopes.d.ts.map +1 -1
  246. package/dist/execution/types.d.ts +10 -1
  247. package/dist/execution/types.d.ts.map +1 -1
  248. package/dist/http/api-routes.d.ts +2 -0
  249. package/dist/http/api-routes.d.ts.map +1 -1
  250. package/dist/http/index.js +1 -1
  251. package/dist/index.d.ts +15 -9
  252. package/dist/index.d.ts.map +1 -1
  253. package/dist/index.js +128 -109
  254. package/dist/index.js.map +1 -1
  255. package/dist/json.d.ts +2 -0
  256. package/dist/json.d.ts.map +1 -1
  257. package/dist/lake-storage/definition-updates.d.ts.map +1 -1
  258. package/dist/lake-storage/errors.d.ts +5 -1
  259. package/dist/lake-storage/errors.d.ts.map +1 -1
  260. package/dist/lake-storage/in-memory.d.ts +1 -0
  261. package/dist/lake-storage/in-memory.d.ts.map +1 -1
  262. package/dist/lake-storage/index.d.ts +6 -1
  263. package/dist/lake-storage/index.d.ts.map +1 -1
  264. package/dist/lake-storage/index.js +27 -10
  265. package/dist/lake-storage/index.js.map +1 -1
  266. package/dist/lake-storage/merge-validation.d.ts.map +1 -1
  267. package/dist/lake-storage/merge.d.ts +13 -2
  268. package/dist/lake-storage/merge.d.ts.map +1 -1
  269. package/dist/lake-storage/source-ordering.d.ts +19 -0
  270. package/dist/lake-storage/source-ordering.d.ts.map +1 -0
  271. package/dist/lake-storage/sql-transforms.d.ts +2 -1
  272. package/dist/lake-storage/sql-transforms.d.ts.map +1 -1
  273. package/dist/lake-storage/types.d.ts +10 -5
  274. package/dist/lake-storage/types.d.ts.map +1 -1
  275. package/dist/lake-storage/version-inputs.d.ts +4 -0
  276. package/dist/lake-storage/version-inputs.d.ts.map +1 -0
  277. package/dist/logging/index.js +3 -3
  278. package/dist/logging/types.js +2 -2
  279. package/dist/materialization/index.js +2 -2
  280. package/dist/materializer/index.js +38 -31
  281. package/dist/materializer/index.js.map +1 -1
  282. package/dist/models/catalog.d.ts +40 -0
  283. package/dist/models/catalog.d.ts.map +1 -0
  284. package/dist/models/definitions.d.ts +25 -0
  285. package/dist/models/definitions.d.ts.map +1 -0
  286. package/dist/models/errors.d.ts +52 -0
  287. package/dist/models/errors.d.ts.map +1 -0
  288. package/dist/models/events.d.ts +192 -0
  289. package/dist/models/events.d.ts.map +1 -0
  290. package/dist/models/index.d.ts +17 -39
  291. package/dist/models/index.d.ts.map +1 -1
  292. package/dist/models/index.js +50 -0
  293. package/dist/models/index.js.map +9 -0
  294. package/dist/models/language-model.d.ts +90 -0
  295. package/dist/models/language-model.d.ts.map +1 -0
  296. package/dist/models/messages.d.ts +74 -0
  297. package/dist/models/messages.d.ts.map +1 -0
  298. package/dist/models/pricing.d.ts +69 -0
  299. package/dist/models/pricing.d.ts.map +1 -0
  300. package/dist/models/rate-card.d.ts +24 -0
  301. package/dist/models/rate-card.d.ts.map +1 -0
  302. package/dist/models/tools.d.ts +24 -0
  303. package/dist/models/tools.d.ts.map +1 -0
  304. package/dist/objects/authorized-ontology-view.d.ts +25 -0
  305. package/dist/objects/authorized-ontology-view.d.ts.map +1 -0
  306. package/dist/objects/execution.d.ts +1 -1
  307. package/dist/objects/execution.d.ts.map +1 -1
  308. package/dist/objects/index.js +43 -36
  309. package/dist/objects/index.js.map +1 -1
  310. package/dist/objects/link/authorization.d.ts +2 -7
  311. package/dist/objects/link/authorization.d.ts.map +1 -1
  312. package/dist/objects/query/executor.d.ts +4 -2
  313. package/dist/objects/query/executor.d.ts.map +1 -1
  314. package/dist/objects/query/index.js +36 -29
  315. package/dist/objects/query/index.js.map +1 -1
  316. package/dist/objects/query/links.d.ts +22 -1
  317. package/dist/objects/query/links.d.ts.map +1 -1
  318. package/dist/objects/query/selected-read-admission.d.ts +27 -0
  319. package/dist/objects/query/selected-read-admission.d.ts.map +1 -0
  320. package/dist/objects/query/validate.d.ts +60 -2
  321. package/dist/objects/query/validate.d.ts.map +1 -1
  322. package/dist/objects/sdk/object-handle.d.ts.map +1 -1
  323. package/dist/objects/sdk/object-set.d.ts.map +1 -1
  324. package/dist/objects/sdk/runtime-query-executor.d.ts +2 -7
  325. package/dist/objects/sdk/runtime-query-executor.d.ts.map +1 -1
  326. package/dist/objects/sdk/telemetry-channel.d.ts.map +1 -1
  327. package/dist/objects/service/list-service.d.ts +2 -3
  328. package/dist/objects/service/list-service.d.ts.map +1 -1
  329. package/dist/objects/telemetry/history.d.ts +8 -6
  330. package/dist/objects/telemetry/history.d.ts.map +1 -1
  331. package/dist/objects/telemetry/index.d.ts +2 -2
  332. package/dist/objects/telemetry/index.d.ts.map +1 -1
  333. package/dist/objects/telemetry/workload.d.ts +11 -0
  334. package/dist/objects/telemetry/workload.d.ts.map +1 -0
  335. package/dist/ontology/index.d.ts +2 -1
  336. package/dist/ontology/index.d.ts.map +1 -1
  337. package/dist/ontology/index.js +15 -14
  338. package/dist/ontology/index.js.map +1 -1
  339. package/dist/ontology/inference/index.d.ts +2 -1
  340. package/dist/ontology/inference/index.d.ts.map +1 -1
  341. package/dist/ontology/internal.d.ts +0 -1
  342. package/dist/ontology/internal.d.ts.map +1 -1
  343. package/dist/ontology/internal.js +5 -10
  344. package/dist/ontology/internal.js.map +3 -3
  345. package/dist/ontology/json-schema.d.ts +10 -6
  346. package/dist/ontology/json-schema.d.ts.map +1 -1
  347. package/dist/ontology/link-path-selection.d.ts +35 -0
  348. package/dist/ontology/link-path-selection.d.ts.map +1 -0
  349. package/dist/ontology/refs.d.ts +2 -0
  350. package/dist/ontology/refs.d.ts.map +1 -1
  351. package/dist/ontology/tokens.d.ts +2 -1
  352. package/dist/ontology/tokens.d.ts.map +1 -1
  353. package/dist/pipelines/execution.d.ts.map +1 -1
  354. package/dist/pipelines/index.js +41 -36
  355. package/dist/pipelines/index.js.map +1 -1
  356. package/dist/pipelines/request.d.ts.map +1 -1
  357. package/dist/projections/execution.d.ts.map +1 -1
  358. package/dist/projections/internal.js +39 -32
  359. package/dist/projections/internal.js.map +1 -1
  360. package/dist/projections/run-dispatch.d.ts.map +1 -1
  361. package/dist/queues/in-memory.d.ts +3 -2
  362. package/dist/queues/in-memory.d.ts.map +1 -1
  363. package/dist/queues/index.d.ts +3 -1
  364. package/dist/queues/index.d.ts.map +1 -1
  365. package/dist/queues/index.js +1 -1
  366. package/dist/queues/types.d.ts +15 -3
  367. package/dist/queues/types.d.ts.map +1 -1
  368. package/dist/rules/execution.d.ts.map +1 -1
  369. package/dist/runtime/create.d.ts +7 -4
  370. package/dist/runtime/create.d.ts.map +1 -1
  371. package/dist/runtime/definitions.d.ts +4 -2
  372. package/dist/runtime/definitions.d.ts.map +1 -1
  373. package/dist/runtime/host.d.ts +5 -2
  374. package/dist/runtime/host.d.ts.map +1 -1
  375. package/dist/runtime/internal.d.ts +1 -0
  376. package/dist/runtime/internal.d.ts.map +1 -1
  377. package/dist/runtime/resolve-definitions.d.ts +4 -2
  378. package/dist/runtime/resolve-definitions.d.ts.map +1 -1
  379. package/dist/runtime/sixb.d.ts +8 -2
  380. package/dist/runtime/sixb.d.ts.map +1 -1
  381. package/dist/runtime/types.d.ts +3 -0
  382. package/dist/runtime/types.d.ts.map +1 -1
  383. package/dist/schedules/execution.d.ts +2 -1
  384. package/dist/schedules/execution.d.ts.map +1 -1
  385. package/dist/security/every.d.ts +4 -4
  386. package/dist/security/every.d.ts.map +1 -1
  387. package/dist/security/grants.d.ts +12 -6
  388. package/dist/security/grants.d.ts.map +1 -1
  389. package/dist/security/index.d.ts +1 -1
  390. package/dist/security/index.d.ts.map +1 -1
  391. package/dist/security/registry.d.ts +2 -1
  392. package/dist/security/registry.d.ts.map +1 -1
  393. package/dist/security/types.d.ts +19 -5
  394. package/dist/security/types.d.ts.map +1 -1
  395. package/dist/security/validation.d.ts +6 -2
  396. package/dist/security/validation.d.ts.map +1 -1
  397. package/dist/shares/access-plan.d.ts +22 -0
  398. package/dist/shares/access-plan.d.ts.map +1 -0
  399. package/dist/shares/builders.d.ts +14 -0
  400. package/dist/shares/builders.d.ts.map +1 -0
  401. package/dist/shares/compiler.d.ts +14 -0
  402. package/dist/shares/compiler.d.ts.map +1 -0
  403. package/dist/shares/errors.d.ts +4 -0
  404. package/dist/shares/errors.d.ts.map +1 -0
  405. package/dist/shares/execution.d.ts +57 -0
  406. package/dist/shares/execution.d.ts.map +1 -0
  407. package/dist/shares/index.d.ts +10 -0
  408. package/dist/shares/index.d.ts.map +1 -0
  409. package/dist/shares/internal.d.ts +3 -0
  410. package/dist/shares/internal.d.ts.map +1 -0
  411. package/dist/shares/internal.js +239 -0
  412. package/dist/shares/internal.js.map +10 -0
  413. package/dist/shares/intersection.d.ts +9 -0
  414. package/dist/shares/intersection.d.ts.map +1 -0
  415. package/dist/shares/session-protocol.d.ts +41 -0
  416. package/dist/shares/session-protocol.d.ts.map +1 -0
  417. package/dist/shares/types.d.ts +51 -0
  418. package/dist/shares/types.d.ts.map +1 -0
  419. package/dist/shares/validation.d.ts +11 -0
  420. package/dist/shares/validation.d.ts.map +1 -0
  421. package/dist/storage/action-runs/failure.js +3 -3
  422. package/dist/storage/action-runs/provider.js +2 -2
  423. package/dist/storage/agents/errors.d.ts +1 -1
  424. package/dist/storage/agents/errors.d.ts.map +1 -1
  425. package/dist/storage/agents/in-memory.d.ts +3 -2
  426. package/dist/storage/agents/in-memory.d.ts.map +1 -1
  427. package/dist/storage/agents/index.d.ts +1 -1
  428. package/dist/storage/agents/index.d.ts.map +1 -1
  429. package/dist/storage/agents/provider.d.ts +11 -4
  430. package/dist/storage/agents/provider.d.ts.map +1 -1
  431. package/dist/storage/agents/provider.js +18 -15
  432. package/dist/storage/agents/provider.js.map +1 -1
  433. package/dist/storage/agents/types.d.ts +65 -17
  434. package/dist/storage/agents/types.d.ts.map +1 -1
  435. package/dist/storage/ai-cost/analytics.d.ts +2 -1
  436. package/dist/storage/ai-cost/analytics.d.ts.map +1 -1
  437. package/dist/storage/ai-cost/codec.d.ts +3 -2
  438. package/dist/storage/ai-cost/codec.d.ts.map +1 -1
  439. package/dist/storage/ai-cost/groups.d.ts +51 -0
  440. package/dist/storage/ai-cost/groups.d.ts.map +1 -0
  441. package/dist/storage/ai-cost/in-memory.d.ts +11 -1
  442. package/dist/storage/ai-cost/in-memory.d.ts.map +1 -1
  443. package/dist/storage/ai-cost/index.d.ts +1 -1
  444. package/dist/storage/ai-cost/index.d.ts.map +1 -1
  445. package/dist/storage/ai-cost/provider.d.ts +2 -0
  446. package/dist/storage/ai-cost/provider.d.ts.map +1 -1
  447. package/dist/storage/ai-cost/provider.js +29 -13
  448. package/dist/storage/ai-cost/provider.js.map +3 -3
  449. package/dist/storage/ai-cost/types.d.ts +64 -15
  450. package/dist/storage/ai-cost/types.d.ts.map +1 -1
  451. package/dist/storage/ai-cost/validation.d.ts +2 -1
  452. package/dist/storage/ai-cost/validation.d.ts.map +1 -1
  453. package/dist/storage/ai-limits/enforcement.d.ts +14 -0
  454. package/dist/storage/ai-limits/enforcement.d.ts.map +1 -0
  455. package/dist/storage/ai-limits/enforcement.js +21 -0
  456. package/dist/storage/ai-limits/enforcement.js.map +9 -0
  457. package/dist/storage/ai-limits/errors.d.ts +8 -0
  458. package/dist/storage/ai-limits/errors.d.ts.map +1 -0
  459. package/dist/storage/ai-limits/in-memory.d.ts +78 -0
  460. package/dist/storage/ai-limits/in-memory.d.ts.map +1 -0
  461. package/dist/storage/ai-limits/index.d.ts +7 -0
  462. package/dist/storage/ai-limits/index.d.ts.map +1 -0
  463. package/dist/storage/ai-limits/period.d.ts +4 -0
  464. package/dist/storage/ai-limits/period.d.ts.map +1 -0
  465. package/dist/storage/ai-limits/provider.d.ts +85 -0
  466. package/dist/storage/ai-limits/provider.d.ts.map +1 -0
  467. package/dist/storage/ai-limits/provider.js +62 -0
  468. package/dist/storage/ai-limits/provider.js.map +9 -0
  469. package/dist/storage/ai-limits/types.d.ts +175 -0
  470. package/dist/storage/ai-limits/types.d.ts.map +1 -0
  471. package/dist/storage/ai-usage/in-memory.d.ts +4 -0
  472. package/dist/storage/ai-usage/in-memory.d.ts.map +1 -1
  473. package/dist/storage/ai-usage/record.d.ts.map +1 -1
  474. package/dist/storage/ai-usage/types.d.ts +6 -2
  475. package/dist/storage/ai-usage/types.d.ts.map +1 -1
  476. package/dist/storage/auth/errors.d.ts +1 -1
  477. package/dist/storage/auth/errors.d.ts.map +1 -1
  478. package/dist/storage/auth/in-memory/auth-storage.d.ts +4 -1
  479. package/dist/storage/auth/in-memory/auth-storage.d.ts.map +1 -1
  480. package/dist/storage/auth/in-memory/device-authorizations.d.ts +29 -0
  481. package/dist/storage/auth/in-memory/device-authorizations.d.ts.map +1 -0
  482. package/dist/storage/auth/in-memory/shared.d.ts +3 -1
  483. package/dist/storage/auth/in-memory/shared.d.ts.map +1 -1
  484. package/dist/storage/auth/index.d.ts +2 -1
  485. package/dist/storage/auth/index.d.ts.map +1 -1
  486. package/dist/storage/auth/types.d.ts +66 -0
  487. package/dist/storage/auth/types.d.ts.map +1 -1
  488. package/dist/storage/connector-connections/provider.js +2 -2
  489. package/dist/storage/executions/in-memory.d.ts +3 -0
  490. package/dist/storage/executions/in-memory.d.ts.map +1 -1
  491. package/dist/storage/executions/provider.d.ts +4 -1
  492. package/dist/storage/executions/provider.d.ts.map +1 -1
  493. package/dist/storage/executions/provider.js +23 -3
  494. package/dist/storage/executions/provider.js.map +3 -3
  495. package/dist/storage/executions/run-link.d.ts +14 -2
  496. package/dist/storage/executions/run-link.d.ts.map +1 -1
  497. package/dist/storage/executions/validation.d.ts +6 -0
  498. package/dist/storage/executions/validation.d.ts.map +1 -1
  499. package/dist/storage/in-memory/index.d.ts +12 -0
  500. package/dist/storage/in-memory/index.d.ts.map +1 -1
  501. package/dist/storage/index.d.ts +15 -6
  502. package/dist/storage/index.d.ts.map +1 -1
  503. package/dist/storage/index.js +78 -36
  504. package/dist/storage/index.js.map +1 -1
  505. package/dist/storage/objects/execution-limits.d.ts +25 -0
  506. package/dist/storage/objects/execution-limits.d.ts.map +1 -0
  507. package/dist/storage/objects/guard.d.ts +16 -0
  508. package/dist/storage/objects/guard.d.ts.map +1 -0
  509. package/dist/storage/objects/in-memory/index.d.ts +3 -0
  510. package/dist/storage/objects/in-memory/index.d.ts.map +1 -0
  511. package/dist/storage/objects/in-memory/keys.d.ts +10 -0
  512. package/dist/storage/objects/in-memory/keys.d.ts.map +1 -0
  513. package/dist/storage/objects/in-memory/query.d.ts +31 -0
  514. package/dist/storage/objects/in-memory/query.d.ts.map +1 -0
  515. package/dist/storage/objects/in-memory/read-scope.d.ts +18 -0
  516. package/dist/storage/objects/in-memory/read-scope.d.ts.map +1 -0
  517. package/dist/storage/objects/in-memory/read-source.d.ts +10 -0
  518. package/dist/storage/objects/in-memory/read-source.d.ts.map +1 -0
  519. package/dist/storage/objects/in-memory/selected-reader.d.ts +9 -0
  520. package/dist/storage/objects/in-memory/selected-reader.d.ts.map +1 -0
  521. package/dist/storage/objects/{in-memory.d.ts → in-memory/storage.d.ts} +13 -10
  522. package/dist/storage/objects/in-memory/storage.d.ts.map +1 -0
  523. package/dist/storage/objects/index.d.ts +4 -1
  524. package/dist/storage/objects/index.d.ts.map +1 -1
  525. package/dist/storage/objects/keys.d.ts +1 -1
  526. package/dist/storage/objects/keys.d.ts.map +1 -1
  527. package/dist/storage/objects/read-scope.d.ts +25 -0
  528. package/dist/storage/objects/read-scope.d.ts.map +1 -0
  529. package/dist/storage/objects/types.d.ts +114 -22
  530. package/dist/storage/objects/types.d.ts.map +1 -1
  531. package/dist/storage/ontology/provider.js +3 -3
  532. package/dist/storage/operation-scope.d.ts +3 -0
  533. package/dist/storage/operation-scope.d.ts.map +1 -1
  534. package/dist/storage/operation-scope.js +4 -2
  535. package/dist/storage/operation-scope.js.map +1 -1
  536. package/dist/storage/pipeline-runs/provider.js +2 -2
  537. package/dist/storage/projection-runs/provider.js +4 -4
  538. package/dist/storage/share-grants/errors.d.ts +8 -0
  539. package/dist/storage/share-grants/errors.d.ts.map +1 -0
  540. package/dist/storage/share-grants/in-memory.d.ts +11 -0
  541. package/dist/storage/share-grants/in-memory.d.ts.map +1 -0
  542. package/dist/storage/share-grants/index.d.ts +5 -0
  543. package/dist/storage/share-grants/index.d.ts.map +1 -0
  544. package/dist/storage/share-grants/provider.d.ts +4 -0
  545. package/dist/storage/share-grants/provider.d.ts.map +1 -0
  546. package/dist/storage/share-grants/provider.js +24 -0
  547. package/dist/storage/share-grants/provider.js.map +9 -0
  548. package/dist/storage/share-grants/record.d.ts +11 -0
  549. package/dist/storage/share-grants/record.d.ts.map +1 -0
  550. package/dist/storage/share-grants/types.d.ts +97 -0
  551. package/dist/storage/share-grants/types.d.ts.map +1 -0
  552. package/dist/storage/share-sessions/errors.d.ts +8 -0
  553. package/dist/storage/share-sessions/errors.d.ts.map +1 -0
  554. package/dist/storage/share-sessions/in-memory.d.ts +14 -0
  555. package/dist/storage/share-sessions/in-memory.d.ts.map +1 -0
  556. package/dist/storage/share-sessions/index.d.ts +5 -0
  557. package/dist/storage/share-sessions/index.d.ts.map +1 -0
  558. package/dist/storage/share-sessions/provider.d.ts +3 -0
  559. package/dist/storage/share-sessions/provider.d.ts.map +1 -0
  560. package/dist/storage/share-sessions/provider.js +20 -0
  561. package/dist/storage/share-sessions/provider.js.map +9 -0
  562. package/dist/storage/share-sessions/record.d.ts +8 -0
  563. package/dist/storage/share-sessions/record.d.ts.map +1 -0
  564. package/dist/storage/share-sessions/types.d.ts +50 -0
  565. package/dist/storage/share-sessions/types.d.ts.map +1 -0
  566. package/dist/storage/sync-runs/provider.js +2 -2
  567. package/dist/storage/transaction.d.ts +2 -1
  568. package/dist/storage/transaction.d.ts.map +1 -1
  569. package/dist/storage/types.d.ts +13 -1
  570. package/dist/storage/types.d.ts.map +1 -1
  571. package/dist/storage/webhook-runs/provider.js +2 -2
  572. package/dist/storage/workflow-runs/provider.d.ts +1 -1
  573. package/dist/storage/workflow-runs/provider.js +14 -12
  574. package/dist/storage/workflow-runs/provider.js.map +1 -1
  575. package/dist/storage/workflow-runs/types.d.ts +5 -4
  576. package/dist/storage/workflow-runs/types.d.ts.map +1 -1
  577. package/dist/syncs/execution.d.ts.map +1 -1
  578. package/dist/syncs/index.js +41 -36
  579. package/dist/syncs/index.js.map +1 -1
  580. package/dist/syncs/request.d.ts.map +1 -1
  581. package/dist/testing/agent-execution.d.ts +3 -1
  582. package/dist/testing/agent-execution.d.ts.map +1 -1
  583. package/dist/testing/agent-storage-contract.d.ts.map +1 -1
  584. package/dist/testing/ai-cost-storage-contract.d.ts.map +1 -1
  585. package/dist/testing/ai-limit-storage-contract.d.ts +18 -0
  586. package/dist/testing/ai-limit-storage-contract.d.ts.map +1 -0
  587. package/dist/testing/ai-model-call-groups-contract.d.ts +6 -0
  588. package/dist/testing/ai-model-call-groups-contract.d.ts.map +1 -0
  589. package/dist/testing/ai-usage-storage-contract.d.ts.map +1 -1
  590. package/dist/testing/auth-storage-contract.d.ts.map +1 -1
  591. package/dist/testing/dataset-sequence-contract.d.ts +4 -0
  592. package/dist/testing/dataset-sequence-contract.d.ts.map +1 -0
  593. package/dist/testing/effective-storage-contract.d.ts.map +1 -1
  594. package/dist/testing/execution-storage-contract.d.ts +4 -0
  595. package/dist/testing/execution-storage-contract.d.ts.map +1 -1
  596. package/dist/testing/index.d.ts +5 -0
  597. package/dist/testing/index.d.ts.map +1 -1
  598. package/dist/testing/index.js +5392 -2070
  599. package/dist/testing/index.js.map +21 -15
  600. package/dist/testing/lake-merge-storage-contract.d.ts +1 -0
  601. package/dist/testing/lake-merge-storage-contract.d.ts.map +1 -1
  602. package/dist/testing/lake-storage-contract.d.ts.map +1 -1
  603. package/dist/testing/object-read-scope-contract.d.ts +22 -0
  604. package/dist/testing/object-read-scope-contract.d.ts.map +1 -0
  605. package/dist/testing/queues-contract.d.ts.map +1 -1
  606. package/dist/testing/share-grant-storage-contract.d.ts +10 -0
  607. package/dist/testing/share-grant-storage-contract.d.ts.map +1 -0
  608. package/dist/testing/share-session-storage-contract.d.ts +9 -0
  609. package/dist/testing/share-session-storage-contract.d.ts.map +1 -0
  610. package/dist/webhooks/internal.js +36 -29
  611. package/dist/webhooks/internal.js.map +2 -2
  612. package/dist/workers/index.js +2 -2
  613. package/dist/workflows/agent-step-identity.d.ts +3 -0
  614. package/dist/workflows/agent-step-identity.d.ts.map +1 -0
  615. package/dist/workflows/builders.d.ts +2 -3
  616. package/dist/workflows/builders.d.ts.map +1 -1
  617. package/dist/workflows/execution.d.ts +1 -1
  618. package/dist/workflows/execution.d.ts.map +1 -1
  619. package/dist/workflows/failure.d.ts +1 -1
  620. package/dist/workflows/failure.d.ts.map +1 -1
  621. package/dist/workflows/index.d.ts +3 -2
  622. package/dist/workflows/index.d.ts.map +1 -1
  623. package/dist/workflows/index.js +63 -48
  624. package/dist/workflows/index.js.map +1 -1
  625. package/dist/workflows/request.d.ts.map +1 -1
  626. package/dist/workflows/types.d.ts +26 -11
  627. package/dist/workflows/types.d.ts.map +1 -1
  628. package/dist/workflows/validation.d.ts +7 -1
  629. package/dist/workflows/validation.d.ts.map +1 -1
  630. package/package.json +43 -4
  631. package/src/actions/delegated-admission.ts +72 -0
  632. package/src/actions/descriptor.ts +58 -0
  633. package/src/actions/execution.ts +99 -24
  634. package/src/actions/request.ts +136 -19
  635. package/src/actions/run-authorization.ts +53 -0
  636. package/src/actions/run-dispatch.ts +8 -1
  637. package/src/agents/adapters.ts +60 -456
  638. package/src/agents/authority.ts +215 -34
  639. package/src/agents/builders.ts +3 -50
  640. package/src/agents/context-compaction.ts +4 -0
  641. package/src/agents/context-resolution.ts +1 -4
  642. package/src/agents/dispatch.ts +59 -2
  643. package/src/agents/errors.ts +4 -11
  644. package/src/agents/execution.ts +65 -56
  645. package/src/agents/identity.ts +4 -0
  646. package/src/agents/ids.ts +16 -1
  647. package/src/agents/index.ts +23 -30
  648. package/src/agents/message.ts +20 -12
  649. package/src/agents/model-loop.ts +1071 -0
  650. package/src/agents/reference.ts +7 -0
  651. package/src/agents/request.ts +157 -77
  652. package/src/agents/retired-config.ts +20 -0
  653. package/src/agents/streams.ts +45 -19
  654. package/src/agents/tool-catalog.ts +21 -0
  655. package/src/agents/tool-definition.ts +9 -5
  656. package/src/agents/types.ts +39 -81
  657. package/src/agents/validation.ts +11 -216
  658. package/src/ai-usage/execution.ts +189 -0
  659. package/src/ai-usage/index.ts +15 -0
  660. package/src/authorization/decision.ts +54 -22
  661. package/src/authorization/grant-kinds.ts +72 -15
  662. package/src/authorization/index.ts +2 -0
  663. package/src/authorization/resolve.ts +12 -5
  664. package/src/authorization/types.ts +7 -5
  665. package/src/bootstrap/discovery.ts +3 -3
  666. package/src/bootstrap/ontology-type-manifest.ts +12 -6
  667. package/src/datasets/builders.ts +23 -2
  668. package/src/datasets/changes.ts +16 -4
  669. package/src/datasets/execution.ts +76 -5
  670. package/src/datasets/index.ts +1 -0
  671. package/src/datasets/sequence.ts +77 -0
  672. package/src/datasets/types.ts +1 -0
  673. package/src/datasets/validation.ts +26 -0
  674. package/src/datasets/write.ts +240 -0
  675. package/src/error-reporting/types.ts +4 -2
  676. package/src/errors/catalog.ts +8 -0
  677. package/src/events/execution.ts +57 -7
  678. package/src/events/types/datasets.ts +2 -6
  679. package/src/execution/agent.ts +129 -25
  680. package/src/execution/authorization.ts +493 -83
  681. package/src/execution/authorized-object-reader.ts +695 -0
  682. package/src/execution/durable.ts +10 -2
  683. package/src/execution/index.ts +1 -0
  684. package/src/execution/request.ts +67 -14
  685. package/src/execution/scopes.ts +36 -6
  686. package/src/execution/types.ts +9 -1
  687. package/src/http/api-routes.ts +108 -0
  688. package/src/index.ts +72 -22
  689. package/src/json.ts +9 -0
  690. package/src/lake-storage/definition-updates.ts +9 -0
  691. package/src/lake-storage/errors.ts +6 -1
  692. package/src/lake-storage/in-memory.ts +53 -17
  693. package/src/lake-storage/index.ts +10 -1
  694. package/src/lake-storage/merge-validation.ts +12 -2
  695. package/src/lake-storage/merge.ts +40 -2
  696. package/src/lake-storage/source-ordering.ts +95 -0
  697. package/src/lake-storage/sql-transforms.ts +2 -1
  698. package/src/lake-storage/types.ts +10 -5
  699. package/src/lake-storage/version-inputs.ts +14 -0
  700. package/src/models/catalog.ts +137 -0
  701. package/src/models/definitions.ts +202 -0
  702. package/src/models/errors.ts +83 -0
  703. package/src/models/events.ts +198 -0
  704. package/src/models/index.ts +89 -71
  705. package/src/models/language-model.ts +143 -0
  706. package/src/models/messages.ts +78 -0
  707. package/src/models/pricing.ts +390 -0
  708. package/src/models/rate-card.ts +101 -0
  709. package/src/models/tools.ts +29 -0
  710. package/src/objects/authorized-ontology-view.ts +512 -0
  711. package/src/objects/execution.ts +98 -143
  712. package/src/objects/link/authorization.ts +3 -2
  713. package/src/objects/query/executor.ts +45 -34
  714. package/src/objects/query/links.ts +84 -25
  715. package/src/objects/query/selected-read-admission.ts +310 -0
  716. package/src/objects/query/validate.ts +353 -36
  717. package/src/objects/sdk/object-handle.ts +2 -8
  718. package/src/objects/sdk/object-set.ts +10 -11
  719. package/src/objects/sdk/runtime-query-executor.ts +8 -28
  720. package/src/objects/sdk/telemetry-channel.ts +11 -7
  721. package/src/objects/service/list-service.ts +15 -29
  722. package/src/objects/telemetry/history.ts +297 -17
  723. package/src/objects/telemetry/index.ts +2 -2
  724. package/src/objects/telemetry/workload.ts +79 -0
  725. package/src/ontology/index.ts +7 -1
  726. package/src/ontology/inference/index.ts +4 -1
  727. package/src/ontology/internal.ts +0 -1
  728. package/src/ontology/json-schema.ts +13 -12
  729. package/src/ontology/link-path-selection.ts +193 -0
  730. package/src/ontology/refs.ts +19 -0
  731. package/src/ontology/tokens.ts +15 -8
  732. package/src/pipelines/execution.ts +30 -7
  733. package/src/pipelines/request.ts +5 -0
  734. package/src/projections/execution.ts +72 -11
  735. package/src/projections/run-dispatch.ts +6 -12
  736. package/src/queues/in-memory.ts +5 -0
  737. package/src/queues/index.ts +11 -0
  738. package/src/queues/types.ts +20 -3
  739. package/src/rules/execution.ts +20 -8
  740. package/src/runtime/create.ts +11 -5
  741. package/src/runtime/definitions.ts +4 -2
  742. package/src/runtime/host.ts +28 -8
  743. package/src/runtime/internal.ts +1 -0
  744. package/src/runtime/resolve-definitions.ts +22 -36
  745. package/src/runtime/sixb.ts +29 -10
  746. package/src/runtime/types.ts +3 -0
  747. package/src/schedules/execution.ts +24 -2
  748. package/src/security/every.ts +4 -4
  749. package/src/security/grants.ts +100 -14
  750. package/src/security/index.ts +3 -0
  751. package/src/security/registry.ts +9 -5
  752. package/src/security/types.ts +23 -4
  753. package/src/security/validation.ts +33 -9
  754. package/src/shares/access-plan.ts +225 -0
  755. package/src/shares/builders.ts +381 -0
  756. package/src/shares/compiler.ts +359 -0
  757. package/src/shares/errors.ts +3 -0
  758. package/src/shares/execution.ts +394 -0
  759. package/src/shares/index.ts +28 -0
  760. package/src/shares/internal.ts +9 -0
  761. package/src/shares/intersection.ts +178 -0
  762. package/src/shares/session-protocol.ts +258 -0
  763. package/src/shares/types.ts +76 -0
  764. package/src/shares/validation.ts +40 -0
  765. package/src/storage/agents/errors.ts +1 -0
  766. package/src/storage/agents/in-memory.ts +121 -11
  767. package/src/storage/agents/index.ts +7 -0
  768. package/src/storage/agents/provider.ts +150 -6
  769. package/src/storage/agents/types.ts +73 -16
  770. package/src/storage/ai-cost/analytics.ts +63 -6
  771. package/src/storage/ai-cost/codec.ts +37 -12
  772. package/src/storage/ai-cost/groups.ts +248 -0
  773. package/src/storage/ai-cost/in-memory.ts +42 -0
  774. package/src/storage/ai-cost/index.ts +6 -0
  775. package/src/storage/ai-cost/provider.ts +7 -0
  776. package/src/storage/ai-cost/types.ts +76 -14
  777. package/src/storage/ai-cost/validation.ts +147 -17
  778. package/src/storage/ai-limits/enforcement.ts +68 -0
  779. package/src/storage/ai-limits/errors.ts +23 -0
  780. package/src/storage/ai-limits/in-memory.ts +671 -0
  781. package/src/storage/ai-limits/index.ts +31 -0
  782. package/src/storage/ai-limits/period.ts +11 -0
  783. package/src/storage/ai-limits/provider.ts +430 -0
  784. package/src/storage/ai-limits/types.ts +195 -0
  785. package/src/storage/ai-usage/in-memory.ts +13 -0
  786. package/src/storage/ai-usage/record.ts +17 -0
  787. package/src/storage/ai-usage/types.ts +6 -2
  788. package/src/storage/auth/errors.ts +6 -0
  789. package/src/storage/auth/in-memory/auth-storage.ts +69 -0
  790. package/src/storage/auth/in-memory/device-authorizations.ts +145 -0
  791. package/src/storage/auth/in-memory/shared.ts +7 -0
  792. package/src/storage/auth/index.ts +7 -0
  793. package/src/storage/auth/types.ts +73 -0
  794. package/src/storage/executions/in-memory.ts +9 -1
  795. package/src/storage/executions/provider.ts +30 -1
  796. package/src/storage/executions/run-link.ts +45 -6
  797. package/src/storage/executions/validation.ts +82 -7
  798. package/src/storage/in-memory/index.ts +69 -6
  799. package/src/storage/index.ts +102 -1
  800. package/src/storage/objects/execution-limits.ts +283 -0
  801. package/src/storage/objects/guard.ts +55 -0
  802. package/src/storage/objects/in-memory/index.ts +2 -0
  803. package/src/storage/objects/in-memory/keys.ts +46 -0
  804. package/src/storage/objects/in-memory/query.ts +754 -0
  805. package/src/storage/objects/in-memory/read-scope.ts +211 -0
  806. package/src/storage/objects/in-memory/read-source.ts +10 -0
  807. package/src/storage/objects/in-memory/selected-reader.ts +252 -0
  808. package/src/storage/objects/in-memory/storage.ts +589 -0
  809. package/src/storage/objects/index.ts +21 -0
  810. package/src/storage/objects/keys.ts +1 -1
  811. package/src/storage/objects/read-scope.ts +672 -0
  812. package/src/storage/objects/types.ts +123 -19
  813. package/src/storage/operation-scope.ts +16 -0
  814. package/src/storage/share-grants/errors.ts +14 -0
  815. package/src/storage/share-grants/in-memory.ts +107 -0
  816. package/src/storage/share-grants/index.ts +14 -0
  817. package/src/storage/share-grants/provider.ts +11 -0
  818. package/src/storage/share-grants/record.ts +347 -0
  819. package/src/storage/share-grants/types.ts +112 -0
  820. package/src/storage/share-sessions/errors.ts +14 -0
  821. package/src/storage/share-sessions/in-memory.ts +105 -0
  822. package/src/storage/share-sessions/index.ts +11 -0
  823. package/src/storage/share-sessions/provider.ts +9 -0
  824. package/src/storage/share-sessions/record.ts +176 -0
  825. package/src/storage/share-sessions/types.ts +57 -0
  826. package/src/storage/transaction.ts +14 -2
  827. package/src/storage/types.ts +64 -0
  828. package/src/storage/workflow-runs/in-memory.ts +3 -3
  829. package/src/storage/workflow-runs/provider.ts +2 -2
  830. package/src/storage/workflow-runs/types.ts +6 -3
  831. package/src/syncs/execution.ts +25 -5
  832. package/src/syncs/request.ts +5 -0
  833. package/src/testing/agent-execution.ts +40 -28
  834. package/src/testing/agent-storage-contract.ts +249 -28
  835. package/src/testing/ai-cost-storage-contract.ts +96 -8
  836. package/src/testing/ai-limit-storage-contract.ts +1134 -0
  837. package/src/testing/ai-model-call-groups-contract.ts +353 -0
  838. package/src/testing/ai-usage-storage-contract.ts +31 -0
  839. package/src/testing/auth-storage-contract.ts +85 -0
  840. package/src/testing/dataset-sequence-contract.ts +373 -0
  841. package/src/testing/effective-storage-contract.ts +34 -0
  842. package/src/testing/execution-storage-contract.ts +81 -2
  843. package/src/testing/index.ts +26 -0
  844. package/src/testing/lake-merge-storage-contract.ts +3 -0
  845. package/src/testing/lake-storage-contract.ts +58 -0
  846. package/src/testing/object-read-scope-contract.ts +939 -0
  847. package/src/testing/queues-contract.ts +36 -1
  848. package/src/testing/share-grant-storage-contract.ts +325 -0
  849. package/src/testing/share-session-storage-contract.ts +235 -0
  850. package/src/workflows/agent-step-identity.ts +4 -0
  851. package/src/workflows/builders.ts +95 -9
  852. package/src/workflows/execution.ts +55 -16
  853. package/src/workflows/failure.ts +2 -2
  854. package/src/workflows/index.ts +3 -0
  855. package/src/workflows/request.ts +5 -0
  856. package/src/workflows/types.ts +23 -11
  857. package/src/workflows/validation.ts +100 -7
  858. package/dist/chunk-1e8m6yn3.js.map +0 -37
  859. package/dist/chunk-1g8negke.js.map +0 -11
  860. package/dist/chunk-4gz41why.js +0 -72
  861. package/dist/chunk-4gz41why.js.map +0 -11
  862. package/dist/chunk-5sxb1168.js.map +0 -34
  863. package/dist/chunk-6gjqgd3d.js.map +0 -11
  864. package/dist/chunk-819wnjz8.js.map +0 -12
  865. package/dist/chunk-a31h57d5.js.map +0 -13
  866. package/dist/chunk-a44d5zgd.js +0 -556
  867. package/dist/chunk-a44d5zgd.js.map +0 -16
  868. package/dist/chunk-ckxfnx7f.js.map +0 -13
  869. package/dist/chunk-dm72y8wt.js.map +0 -10
  870. package/dist/chunk-drjqm1aa.js.map +0 -15
  871. package/dist/chunk-dy311asx.js.map +0 -14
  872. package/dist/chunk-f6erf2vv.js.map +0 -10
  873. package/dist/chunk-f83ka50g.js.map +0 -23
  874. package/dist/chunk-fe5ev6mr.js +0 -55
  875. package/dist/chunk-fe5ev6mr.js.map +0 -11
  876. package/dist/chunk-h9kxd41f.js.map +0 -11
  877. package/dist/chunk-hceck7dq.js +0 -137
  878. package/dist/chunk-hceck7dq.js.map +0 -10
  879. package/dist/chunk-md8k0r54.js.map +0 -14
  880. package/dist/chunk-n4spznws.js.map +0 -11
  881. package/dist/chunk-nva1xkjz.js.map +0 -46
  882. package/dist/chunk-qewtks41.js.map +0 -11
  883. package/dist/chunk-t0jjkep3.js.map +0 -10
  884. package/dist/chunk-t624af60.js.map +0 -56
  885. package/dist/chunk-t8t39h7v.js.map +0 -10
  886. package/dist/chunk-t9xghkva.js +0 -28
  887. package/dist/chunk-t9xghkva.js.map +0 -10
  888. package/dist/chunk-x2yw73hy.js.map +0 -10
  889. package/dist/chunk-xc7hq65b.js.map +0 -10
  890. package/dist/storage/objects/in-memory.d.ts.map +0 -1
  891. package/src/storage/objects/in-memory.ts +0 -1241
  892. /package/dist/{chunk-zqysyfjt.js.map → chunk-08m3b6w8.js.map} +0 -0
  893. /package/dist/{chunk-z3zp0bj1.js.map → chunk-407j3msh.js.map} +0 -0
  894. /package/dist/{chunk-rhrbz7d4.js.map → chunk-4a849fr1.js.map} +0 -0
  895. /package/dist/{chunk-cy0n5dms.js.map → chunk-4jjp5k14.js.map} +0 -0
  896. /package/dist/{chunk-ezake7g1.js.map → chunk-5ntny1qx.js.map} +0 -0
  897. /package/dist/{chunk-72q2y8hn.js.map → chunk-8tsf6dmc.js.map} +0 -0
  898. /package/dist/{chunk-vybf6pkp.js.map → chunk-dbc80ad7.js.map} +0 -0
  899. /package/dist/{chunk-nkbfrt0c.js.map → chunk-f26bck4t.js.map} +0 -0
  900. /package/dist/{chunk-dsrkgtnh.js.map → chunk-jq43kdvk.js.map} +0 -0
  901. /package/dist/{chunk-wtmzkcht.js.map → chunk-k34z5rvh.js.map} +0 -0
  902. /package/dist/{chunk-htq0qh7z.js.map → chunk-ka3a2ft3.js.map} +0 -0
  903. /package/dist/{chunk-f2rt4vkh.js.map → chunk-n2w475r0.js.map} +0 -0
  904. /package/dist/{chunk-bhxaq2nn.js.map → chunk-qw9gvjv5.js.map} +0 -0
  905. /package/dist/{chunk-dysw7nsm.js.map → chunk-rv2hkwwa.js.map} +0 -0
  906. /package/dist/{chunk-ghteq96b.js.map → chunk-s5y30bc9.js.map} +0 -0
  907. /package/dist/{chunk-xkthy56g.js.map → chunk-w1tvjszy.js.map} +0 -0
  908. /package/dist/{chunk-8b55ygje.js.map → chunk-w3e09qqk.js.map} +0 -0
  909. /package/dist/{chunk-62c7t4jc.js.map → chunk-wdage1eb.js.map} +0 -0
@@ -1,14 +1,16 @@
1
1
  import type { ActionDefinition } from "../actions"
2
2
  import { isActionDefinition } from "../actions"
3
- import type { AgentDefinition } from "../agents"
4
- import { isAgentDefinition } from "../agents"
3
+ import { AGENT_REASONING_LEVELS, isAgentToolDefinition } from "../agents"
4
+ import { isModelReasoning } from "../models/language-model"
5
5
  import type { SchemaOrRef } from "../ontology"
6
6
  import type { ScheduleDefinition, ScheduleDefinitionForEvent } from "../schedules"
7
7
  import { isScheduleDefinition } from "../schedules"
8
+ import { isGroupDefinition } from "../security"
8
9
  import { WorkflowDefinitionError } from "./errors"
9
10
  import type {
10
11
  AgentStepBuilder,
11
12
  AgentStepDefinition,
13
+ DefineAgentStepConfig,
12
14
  InterventionBuilder,
13
15
  InterventionDefaultsRuntimeHandler,
14
16
  InterventionDefinition,
@@ -115,14 +117,25 @@ export function defineWorkflowStep<const TId extends string>(id: TId): StepBuild
115
117
  } as unknown as StepBuilder<TId>
116
118
  }
117
119
 
118
- export function defineAgentStep<const TId extends string, const TAgent extends AgentDefinition>(
120
+ export function defineAgentStep<const TId extends string>(
119
121
  id: TId,
120
- agent: TAgent
121
- ): AgentStepBuilder<TId, TAgent> {
122
+ config: DefineAgentStepConfig
123
+ ): AgentStepBuilder<TId> {
122
124
  assertNonEmpty(id, "Agent step", "id")
123
- if (!isAgentDefinition(agent)) {
124
- throw new WorkflowDefinitionError(`Agent step "${id}" references an invalid agent.`)
125
+ if (!isRecord(config)) {
126
+ throw new WorkflowDefinitionError(`Agent step "${id}" config must be an object.`)
125
127
  }
128
+ if (typeof config.instructions !== "string" || !config.instructions.trim()) {
129
+ throw new WorkflowDefinitionError(`Agent step "${id}" instructions must not be empty.`)
130
+ }
131
+ if (config.reasoning !== undefined && !isModelReasoning(config.reasoning)) {
132
+ throw new WorkflowDefinitionError(
133
+ `Agent step "${id}" reasoning must be one of: ${AGENT_REASONING_LEVELS.join(", ")}, or a nonnegative budgetTokens object.`
134
+ )
135
+ }
136
+ const { model, reasoning, instructions } = config
137
+ const groupIds = groupIdsFromAgentStepConfig(id, config)
138
+ const toolNames = toolNamesFromAgentStepConfig(id, config)
126
139
 
127
140
  return {
128
141
  input(input: RuntimeWorkflowInput): unknown {
@@ -133,13 +146,82 @@ export function defineAgentStep<const TId extends string, const TAgent extends A
133
146
  if (typeof prompt !== "function") {
134
147
  throw new WorkflowDefinitionError(`Agent step "${id}" prompt must be a function.`)
135
148
  }
136
- return { kind: "agentStep", id, agent, input, output, prompt }
149
+ return {
150
+ kind: "agentStep",
151
+ id,
152
+ ...(model === undefined ? {} : { model }),
153
+ ...(reasoning === undefined ? {} : { reasoning }),
154
+ instructions,
155
+ groupIds,
156
+ toolNames,
157
+ input,
158
+ output,
159
+ prompt,
160
+ }
137
161
  },
138
162
  }
139
163
  },
140
164
  }
141
165
  },
142
- } as unknown as AgentStepBuilder<TId, TAgent>
166
+ } as unknown as AgentStepBuilder<TId>
167
+ }
168
+
169
+ function groupIdsFromAgentStepConfig(
170
+ stepId: string,
171
+ config: DefineAgentStepConfig
172
+ ): readonly string[] {
173
+ if (config.groups !== undefined && !Array.isArray(config.groups)) {
174
+ throw new WorkflowDefinitionError(
175
+ `Agent step "${stepId}" groups must be an array of group definitions.`
176
+ )
177
+ }
178
+ const groupIds = Array.from(config.groups ?? [], (group) => {
179
+ if (!isGroupDefinition(group)) {
180
+ throw new WorkflowDefinitionError(
181
+ `Agent step "${stepId}" groups must contain only group definitions.`
182
+ )
183
+ }
184
+ return group.id
185
+ })
186
+ assertUniqueAgentStepValues(stepId, "group", groupIds)
187
+ return Object.freeze(groupIds)
188
+ }
189
+
190
+ function toolNamesFromAgentStepConfig(
191
+ stepId: string,
192
+ config: DefineAgentStepConfig
193
+ ): readonly string[] {
194
+ if (config.tools !== undefined && !Array.isArray(config.tools)) {
195
+ throw new WorkflowDefinitionError(
196
+ `Agent step "${stepId}" tools must be an array of agent tool definitions.`
197
+ )
198
+ }
199
+ const toolNames = Array.from(config.tools ?? [], (tool) => {
200
+ if (!isAgentToolDefinition(tool)) {
201
+ throw new WorkflowDefinitionError(
202
+ `Agent step "${stepId}" tools must contain only agent tool definitions.`
203
+ )
204
+ }
205
+ return tool.name
206
+ })
207
+ assertUniqueAgentStepValues(stepId, "tool", toolNames)
208
+ return Object.freeze(toolNames)
209
+ }
210
+
211
+ function assertUniqueAgentStepValues(
212
+ stepId: string,
213
+ kind: "group" | "tool",
214
+ values: readonly string[]
215
+ ): void {
216
+ const seen = new Set<string>()
217
+ for (const value of values) {
218
+ if (seen.has(value)) {
219
+ throw new WorkflowDefinitionError(
220
+ `Agent step "${stepId}" ${kind}s contains duplicate ${kind} '${value}'.`
221
+ )
222
+ }
223
+ seen.add(value)
224
+ }
143
225
  }
144
226
 
145
227
  export function defineIntervention<const TId extends string>(
@@ -469,3 +551,7 @@ function isRuntimeWorkflowMapper(value: unknown): value is RuntimeWorkflowMapper
469
551
  function isRuntimeWorkflowScheduleMapper(value: unknown): value is RuntimeWorkflowScheduleMapper {
470
552
  return typeof value === "function"
471
553
  }
554
+
555
+ function isRecord(value: unknown): value is Readonly<Record<string, unknown>> {
556
+ return typeof value === "object" && value !== null && !Array.isArray(value)
557
+ }
@@ -1,5 +1,11 @@
1
- import { canViewWorkflowIntervention, canViewWorkflowRun, isAllowed } from "../authorization"
1
+ import {
2
+ assertAuthorized,
3
+ canViewWorkflowIntervention,
4
+ canViewWorkflowRun,
5
+ isRuntimeAllowed,
6
+ } from "../authorization"
2
7
  import type { AuthorizablePrincipal, ExecutionContext } from "../execution"
8
+ import { resolveRuntimeAuthorizationForProject } from "../execution/authorization"
3
9
  import { resolveExecutionCosts } from "../runtime/ai-cost"
4
10
  import { resolveExecutionUsage } from "../runtime/ai-usage"
5
11
  import type { SixbRuntimeContext } from "../runtime/types"
@@ -61,7 +67,8 @@ export type ListWorkflowRunNodesInput = Omit<
61
67
  >
62
68
 
63
69
  /** Execution-facing Agent node view derived from its run row and model-call ledger. */
64
- export interface WorkflowAgentNodeRunView extends Omit<WorkflowAgentNodeRunRecord, "execution"> {
70
+ export interface WorkflowAgentNodeRunView
71
+ extends Omit<WorkflowAgentNodeRunRecord, "execution" | "actorId"> {
65
72
  readonly usage?: AiModelCallUsage
66
73
  /** Preferred valuation; omitted when there are no calls or cost storage is unavailable. */
67
74
  readonly cost?: AiCostSummary
@@ -100,22 +107,40 @@ export function createWorkflowsRuntime(
100
107
  execution: ExecutionContext,
101
108
  source: Pick<WorkflowsRuntime, "list" | "getById">
102
109
  ): WorkflowsRuntime {
110
+ const authority = resolveRuntimeAuthorizationForProject(runtime)
103
111
  const allowed = (workflowId: string) =>
104
- isAllowed(runtime.authorization, { kind: "workflow.run", workflowId })
105
- const canAccessHistory = (workflowId: string) =>
106
- allowed(workflowId) && (!runtime.authorization || source.getById(workflowId) !== null)
112
+ isRuntimeAllowed(runtime, { kind: "workflow.run", workflowId })
113
+ const canAccessHistory = (workflowId: string) => {
114
+ switch (authority.type) {
115
+ case "denied":
116
+ case "delegated":
117
+ return false
118
+ case "unrestricted":
119
+ return true
120
+ case "principal":
121
+ return allowed(workflowId) && source.getById(workflowId) !== null
122
+ }
123
+ }
107
124
  const visibleIds = () =>
108
125
  source
109
126
  .list()
110
127
  .filter((workflow) => allowed(workflow.id))
111
128
  .map((workflow) => workflow.id)
129
+ const historyFilterIds = () =>
130
+ authority.type === "unrestricted"
131
+ ? undefined
132
+ : authority.type === "principal"
133
+ ? visibleIds()
134
+ : []
112
135
  const getVisibleRunRecord = async (runId: string): Promise<WorkflowRunRecord | null> => {
136
+ if (authority.type === "denied" || authority.type === "delegated") return null
113
137
  const run =
114
138
  (await runtime.storage.workflowRuns?.getById({
115
139
  projectId: runtime.projectId,
116
140
  id: runId,
117
141
  })) ?? null
118
- return run && canViewWorkflowRun(runtime.authorization, run) && canAccessHistory(run.workflowId)
142
+ if (!run || !canAccessHistory(run.workflowId)) return null
143
+ return authority.type === "unrestricted" || canViewWorkflowRun(authority.context, run)
119
144
  ? run
120
145
  : null
121
146
  }
@@ -130,9 +155,9 @@ export function createWorkflowsRuntime(
130
155
  const storage = runtime.storage.workflowRuns
131
156
  if (!storage || !(await getVisibleRunRecord(runId))) return null
132
157
  const result = await storage.nodes.list({
133
- projectId: runtime.projectId,
134
158
  ...input,
135
159
  workflowRunId: runId,
160
+ projectId: runtime.projectId,
136
161
  })
137
162
  return {
138
163
  ...result,
@@ -141,13 +166,18 @@ export function createWorkflowsRuntime(
141
166
  }
142
167
 
143
168
  return {
144
- list: () => source.list().filter((workflow) => allowed(workflow.id)),
169
+ list: () =>
170
+ authority.type === "denied" || authority.type === "delegated"
171
+ ? []
172
+ : source.list().filter((workflow) => allowed(workflow.id)),
145
173
  getById: (workflowId) => {
174
+ if (authority.type === "denied" || authority.type === "delegated") return null
146
175
  const workflow = source.getById(workflowId)
147
176
  return workflow && allowed(workflowId) ? workflow : null
148
177
  },
149
178
  request: (workflow, options) => requestWorkflowRun(runtime, execution, workflow, options),
150
179
  requestById: async (input) => {
180
+ assertAuthorized(runtime, { kind: "workflow.run", workflowId: input.workflowId })
151
181
  const workflow = source.getById(input.workflowId)
152
182
  if (!workflow) {
153
183
  throw new WorkflowValidationError(`[Sixb] Unknown workflow '${input.workflowId}'`)
@@ -157,12 +187,15 @@ export function createWorkflowsRuntime(
157
187
  runs: {
158
188
  getById: getRun,
159
189
  list: async (input = {}) => {
190
+ if (authority.type === "denied" || authority.type === "delegated") {
191
+ return { runs: [], hasMore: false, total: 0 }
192
+ }
160
193
  const storage = runtime.storage.workflowRuns
161
194
  if (!storage) return { runs: [], hasMore: false, total: 0 }
162
195
  const result = await storage.list({
163
- projectId: runtime.projectId,
164
196
  ...input,
165
- workflowIds: runtime.authorization ? visibleIds() : undefined,
197
+ workflowIds: historyFilterIds(),
198
+ projectId: runtime.projectId,
166
199
  })
167
200
  return {
168
201
  ...result,
@@ -170,6 +203,9 @@ export function createWorkflowsRuntime(
170
203
  }
171
204
  },
172
205
  listLatest: async (workflowIds) => {
206
+ if (authority.type === "denied" || authority.type === "delegated") {
207
+ return { runs: [] }
208
+ }
173
209
  const storage = runtime.storage.workflowRuns
174
210
  if (!storage || workflowIds.length === 0) return { runs: [] }
175
211
  const allowedIds = workflowIds.filter(canAccessHistory)
@@ -186,24 +222,28 @@ export function createWorkflowsRuntime(
186
222
  },
187
223
  interventions: {
188
224
  getById: async (interventionId) => {
225
+ if (authority.type === "denied" || authority.type === "delegated") return null
189
226
  const intervention =
190
227
  (await runtime.storage.workflowInterventions?.getById({
191
228
  projectId: runtime.projectId,
192
229
  id: interventionId,
193
230
  })) ?? null
194
- return intervention &&
195
- canViewWorkflowIntervention(runtime.authorization, intervention) &&
196
- canAccessHistory(intervention.workflowId)
231
+ if (!intervention || !canAccessHistory(intervention.workflowId)) return null
232
+ return authority.type === "unrestricted" ||
233
+ canViewWorkflowIntervention(authority.context, intervention)
197
234
  ? intervention
198
235
  : null
199
236
  },
200
237
  list: (input = {}) => {
238
+ if (authority.type === "denied" || authority.type === "delegated") {
239
+ return Promise.resolve({ interventions: [], hasMore: false, total: 0 })
240
+ }
201
241
  const storage = runtime.storage.workflowInterventions
202
242
  if (!storage) return Promise.resolve({ interventions: [], hasMore: false, total: 0 })
203
243
  return storage.list({
204
- projectId: runtime.projectId,
205
244
  ...input,
206
- workflowIds: runtime.authorization ? visibleIds() : undefined,
245
+ workflowIds: historyFilterIds(),
246
+ projectId: runtime.projectId,
207
247
  })
208
248
  },
209
249
  },
@@ -274,7 +314,6 @@ function toWorkflowAgentNodeRunView(
274
314
  projectId: execution.projectId,
275
315
  nodeRunId: execution.nodeRunId,
276
316
  executionId: execution.executionId,
277
- agentId: execution.agentId,
278
317
  status: execution.status,
279
318
  prompt: execution.prompt,
280
319
  modelId: execution.modelId,
@@ -15,7 +15,7 @@ export interface WorkflowNodeFailureIdentity extends WorkflowNodeFailureIdentity
15
15
  readonly actionId: string
16
16
  readonly actionRunId?: string
17
17
  }
18
- | { readonly type: "agent"; readonly agentId: string }
18
+ | { readonly type: "agent"; readonly agentStepId: string }
19
19
  | { readonly type: "intervention"; readonly interventionId: string }
20
20
  }
21
21
 
@@ -56,7 +56,7 @@ function workflowNodeFailureDetails(identity: WorkflowNodeFailureIdentity) {
56
56
  ...(identity.child.actionRunId ? { actionRunId: identity.child.actionRunId } : {}),
57
57
  }
58
58
  case "agent":
59
- return { ...base, agentId: identity.child.agentId }
59
+ return { ...base, agentStepId: identity.child.agentStepId }
60
60
  case "intervention":
61
61
  return { ...base, interventionId: identity.child.interventionId }
62
62
  }
@@ -1,3 +1,4 @@
1
+ export { workflowAgentStepActorId } from "./agent-step-identity"
1
2
  export {
2
3
  defineAgentStep,
3
4
  defineIntervention,
@@ -39,6 +40,7 @@ export type {
39
40
  AgentStepPrompt,
40
41
  AgentStepPromptBuilder,
41
42
  AgentStepPromptContext,
43
+ DefineAgentStepConfig,
42
44
  DerivedWorkflowNodeKey,
43
45
  InferAgentStepInput,
44
46
  InferAgentStepOutput,
@@ -90,6 +92,7 @@ export {
90
92
  isInterventionDefinition,
91
93
  isStepDefinition,
92
94
  isWorkflowDefinition,
95
+ validateWorkflowAgentStepGroupReferences,
93
96
  validateWorkflowAgentStepInput,
94
97
  validateWorkflowAgentStepOutput,
95
98
  validateWorkflowDefinition,
@@ -1,5 +1,6 @@
1
1
  import { snapshotRequesterGroupIds } from "../auth/attribution"
2
2
  import { assertAuthorized } from "../authorization"
3
+ import { resolveExecutionScopeAuthorization } from "../execution/authorization"
3
4
  import {
4
5
  createPrimitiveExecutionRecord,
5
6
  ensureExecutionRecord,
@@ -44,6 +45,10 @@ export async function requestWorkflowRun(
44
45
  workflow: WorkflowDefinition,
45
46
  options: WorkflowRunRequestOptions = {}
46
47
  ): Promise<WorkflowRunRequestResult> {
48
+ resolveExecutionScopeAuthorization(runtime.projectId, {
49
+ execution,
50
+ authorization: runtime.runtimeAuthorization,
51
+ })
47
52
  assertAuthorized(runtime, { kind: "workflow.run", workflowId: workflow.id })
48
53
  const requesterGroupIds = execution.requestedBy
49
54
  ? await snapshotRequesterGroupIds({
@@ -5,8 +5,8 @@ import type {
5
5
  ObjectActionDefinition,
6
6
  } from "../actions"
7
7
  import type { ActionsRuntime } from "../actions/execution"
8
- import type { AgentsRuntime } from "../agents/execution"
9
- import type { AgentDefinition } from "../agents/types"
8
+ import type { AgentRuntime } from "../agents/execution"
9
+ import type { AgentReasoningLevel, AgentToolDefinition } from "../agents/types"
10
10
  import type { Principal } from "../auth"
11
11
  import type { BlobsRuntime } from "../blob-storage/execution"
12
12
  import type { ConnectorRuntime } from "../connectors/execution"
@@ -15,6 +15,7 @@ import type { EventsRuntime } from "../events/execution"
15
15
  import type { JsonValue } from "../json"
16
16
  import type { Logger } from "../logging"
17
17
  import type { LogsRuntime } from "../logging/execution"
18
+ import type { LanguageModel } from "../models/language-model"
18
19
  import type { ObjectsRuntime } from "../objects/execution"
19
20
  import type { InferSchemaOrRef, ObjectRef, OntologySource, SchemaOrRef } from "../ontology"
20
21
  import type { PipelinesRuntime } from "../pipelines/execution"
@@ -22,6 +23,7 @@ import type { ProjectionsRuntime } from "../projections/execution"
22
23
  import type { RulesRuntime } from "../rules/execution"
23
24
  import type { ScheduleDefinition, ScheduleDefinitionForEvent } from "../schedules"
24
25
  import type { SchedulesRuntime } from "../schedules/execution"
26
+ import type { GroupDefinition } from "../security"
25
27
  import type { SyncsRuntime } from "../syncs/execution"
26
28
  import type { WorkflowsRuntime } from "./execution"
27
29
 
@@ -60,7 +62,7 @@ export interface StepRunContext<TInput extends Record<string, unknown>> {
60
62
  export interface WorkflowRuntimeFacade {
61
63
  readonly objects: ObjectsRuntime<readonly OntologySource[]>
62
64
  readonly actions: ActionsRuntime
63
- readonly agents: AgentsRuntime
65
+ readonly agent: AgentRuntime
64
66
  readonly datasets: DatasetsRuntime
65
67
  readonly workflows: WorkflowsRuntime
66
68
  readonly syncs: SyncsRuntime
@@ -133,9 +135,18 @@ export type AgentStepPrompt<TInput extends Record<string, unknown>> = (
133
135
  ctx: AgentStepPromptContext<TInput>
134
136
  ) => string | Promise<string>
135
137
 
138
+ /** Runtime configuration owned directly by a workflow Agent step. */
139
+ export interface DefineAgentStepConfig {
140
+ readonly model?: LanguageModel
141
+ readonly reasoning?: AgentReasoningLevel
142
+ readonly instructions: string
143
+ readonly groups?: readonly GroupDefinition[]
144
+ /** Project tools this workflow task may call. Defaults to none. */
145
+ readonly tools?: readonly AgentToolDefinition[]
146
+ }
147
+
136
148
  export interface AgentStepDefinition<
137
149
  TId extends string = string,
138
- TAgent extends AgentDefinition = AgentDefinition,
139
150
  TInput extends Record<string, unknown> = Record<string, unknown>,
140
151
  TOutput extends Record<string, unknown> = Record<string, unknown>,
141
152
  TInputValue extends Record<string, unknown> = Record<string, unknown>,
@@ -143,7 +154,11 @@ export interface AgentStepDefinition<
143
154
  > {
144
155
  readonly kind: "agentStep"
145
156
  readonly id: TId
146
- readonly agent: TAgent
157
+ readonly model?: LanguageModel
158
+ readonly reasoning?: AgentReasoningLevel
159
+ readonly instructions: string
160
+ readonly groupIds: readonly string[]
161
+ readonly toolNames: readonly string[]
147
162
  readonly input: TInput
148
163
  readonly output: TOutput
149
164
  readonly prompt: AgentStepPrompt<Record<string, unknown>>
@@ -153,7 +168,6 @@ export interface AgentStepDefinition<
153
168
 
154
169
  export interface AgentStepPromptBuilder<
155
170
  TId extends string,
156
- TAgent extends AgentDefinition,
157
171
  TInput extends Record<string, unknown>,
158
172
  TOutput extends Record<string, unknown>,
159
173
  > {
@@ -161,7 +175,6 @@ export interface AgentStepPromptBuilder<
161
175
  prompt: AgentStepPrompt<InferSchemaOrRefRecord<TInput>>
162
176
  ): AgentStepDefinition<
163
177
  TId,
164
- TAgent,
165
178
  TInput,
166
179
  TOutput,
167
180
  InferSchemaOrRefRecord<TInput>,
@@ -171,18 +184,17 @@ export interface AgentStepPromptBuilder<
171
184
 
172
185
  export interface AgentStepOutputBuilder<
173
186
  TId extends string,
174
- TAgent extends AgentDefinition,
175
187
  TInput extends Record<string, unknown>,
176
188
  > {
177
189
  output<const TOutput extends Record<string, unknown>>(
178
190
  output: TOutput & SchemaOrRefInput<TOutput>
179
- ): AgentStepPromptBuilder<TId, TAgent, TInput, TOutput>
191
+ ): AgentStepPromptBuilder<TId, TInput, TOutput>
180
192
  }
181
193
 
182
- export interface AgentStepBuilder<TId extends string, TAgent extends AgentDefinition> {
194
+ export interface AgentStepBuilder<TId extends string> {
183
195
  input<const TInput extends Record<string, unknown>>(
184
196
  input: TInput & SchemaOrRefInput<TInput>
185
- ): AgentStepOutputBuilder<TId, TAgent, TInput>
197
+ ): AgentStepOutputBuilder<TId, TInput>
186
198
  }
187
199
 
188
200
  export type InferAgentStepInput<TStep extends AgentStepDefinition> = TStep extends {
@@ -1,8 +1,11 @@
1
1
  import { isActionDefinition } from "../actions"
2
- import { isAgentDefinition } from "../agents"
2
+ import type { AgentToolCatalog } from "../agents"
3
+ import type { ModelCatalog } from "../models"
4
+ import { isModelReasoning } from "../models/language-model"
3
5
  import type { SchemaOrRef, ValueType } from "../ontology"
4
6
  import { validateSchemaOrRefValue } from "../ontology"
5
7
  import type { ScheduleDefinition } from "../schedules"
8
+ import type { SecurityDefinitionCatalog } from "../security"
6
9
  import { WorkflowDefinitionError, WorkflowValidationError } from "./errors"
7
10
  import type {
8
11
  AgentStepDefinition,
@@ -45,7 +48,11 @@ export function isAgentStepDefinition(value: unknown): value is AgentStepDefinit
45
48
  isRecord(value) &&
46
49
  value.kind === "agentStep" &&
47
50
  typeof value.id === "string" &&
48
- isAgentDefinition(value.agent) &&
51
+ (value.model === undefined || isLanguageModel(value.model)) &&
52
+ (value.reasoning === undefined || isModelReasoning(value.reasoning)) &&
53
+ typeof value.instructions === "string" &&
54
+ isStringArray(value.groupIds) &&
55
+ isStringArray(value.toolNames) &&
49
56
  isRecord(value.input) &&
50
57
  isRecord(value.output) &&
51
58
  typeof value.prompt === "function"
@@ -111,7 +118,8 @@ export function validateWorkflowsAtStartup(options: {
111
118
  workflows: readonly WorkflowDefinition[]
112
119
  registeredSchedules: ReadonlyMap<string, ScheduleDefinition>
113
120
  registeredActionIds: ReadonlySet<string>
114
- registeredAgentIds: ReadonlySet<string>
121
+ models?: ModelCatalog
122
+ tools: AgentToolCatalog
115
123
  }): readonly WorkflowDefinition[] {
116
124
  for (const workflow of options.workflows) {
117
125
  validateWorkflowDefinition(workflow)
@@ -131,10 +139,8 @@ export function validateWorkflowsAtStartup(options: {
131
139
  `Workflow "${workflow.id}" references unknown action "${node.action.id}". Add it to 'actions' in createSixb() or export it from 'actions/'.`
132
140
  )
133
141
  }
134
- if (node.type === "agent" && !options.registeredAgentIds.has(node.agentStep.agent.id)) {
135
- throw new WorkflowDefinitionError(
136
- `Workflow "${workflow.id}" references unknown agent "${node.agentStep.agent.id}". Add it to 'agents' in createSixb() or export it from 'agents/'.`
137
- )
142
+ if (node.type === "agent") {
143
+ validateWorkflowAgentStepRuntimeReferences(workflow.id, node.agentStep, options)
138
144
  }
139
145
  }
140
146
  }
@@ -142,6 +148,52 @@ export function validateWorkflowsAtStartup(options: {
142
148
  return options.workflows
143
149
  }
144
150
 
151
+ /** Validate workflow task memberships once the security catalog has been composed. */
152
+ export function validateWorkflowAgentStepGroupReferences(
153
+ workflows: readonly WorkflowDefinition[],
154
+ security: SecurityDefinitionCatalog
155
+ ): void {
156
+ for (const workflow of workflows) {
157
+ for (const node of workflow.nodes) {
158
+ if (node.type !== "agent") continue
159
+ for (const groupId of node.agentStep.groupIds) {
160
+ if (!security.getGroupById(groupId)) {
161
+ throw new WorkflowDefinitionError(
162
+ `Workflow "${workflow.id}" agent step "${node.id}" references unknown group "${groupId}". Add it to 'security/groups/' or pass it to createSixb({ groups }).`
163
+ )
164
+ }
165
+ }
166
+ }
167
+ }
168
+ }
169
+
170
+ function validateWorkflowAgentStepRuntimeReferences(
171
+ workflowId: string,
172
+ step: AgentStepDefinition,
173
+ options: { readonly models?: ModelCatalog; readonly tools: AgentToolCatalog }
174
+ ): void {
175
+ if (step.model === undefined && options.models === undefined) {
176
+ throw new WorkflowDefinitionError(
177
+ `Workflow "${workflowId}" agent step "${step.id}" needs a model. Configure 'models.language' or pass 'model' to defineAgentStep().`
178
+ )
179
+ }
180
+ if (step.model !== undefined && options.models !== undefined) {
181
+ const ref = { provider: step.model.providerId, modelId: step.model.modelId }
182
+ if (options.models.language.getByRef(ref) === null) {
183
+ throw new WorkflowDefinitionError(
184
+ `Workflow "${workflowId}" agent step "${step.id}" uses unknown language model "${ref.provider}/${ref.modelId}". Add it to 'models.language' in createSixb().`
185
+ )
186
+ }
187
+ }
188
+ for (const toolName of step.toolNames) {
189
+ if (options.tools.getByName(toolName) === null) {
190
+ throw new WorkflowDefinitionError(
191
+ `Workflow "${workflowId}" agent step "${step.id}" uses unknown project tool "${toolName}". Add it to 'tools' in createSixb().`
192
+ )
193
+ }
194
+ }
195
+ }
196
+
145
197
  export function validateWorkflowInput(params: {
146
198
  readonly workflow: WorkflowDefinition
147
199
  readonly value: unknown
@@ -326,6 +378,13 @@ function validateAgentNodeDefinition(workflowId: string, node: WorkflowAgentNode
326
378
  `Workflow "${workflowId}" agent node id "${node.id}" does not match agent step definition id "${node.agentStep.id}".`
327
379
  )
328
380
  }
381
+ if (!node.agentStep.instructions.trim()) {
382
+ throw new WorkflowDefinitionError(
383
+ `Workflow "${workflowId}" agent step "${node.id}" instructions must not be empty.`
384
+ )
385
+ }
386
+ assertUniqueNonEmptyAgentStepValues(workflowId, node.id, "group", node.agentStep.groupIds)
387
+ assertUniqueNonEmptyAgentStepValues(workflowId, node.id, "tool", node.agentStep.toolNames)
329
388
  if (node.mapper !== undefined && typeof node.mapper !== "function") {
330
389
  throw new WorkflowDefinitionError(
331
390
  `Workflow "${workflowId}" agent node "${node.id}" mapper must be a function.`
@@ -333,6 +392,40 @@ function validateAgentNodeDefinition(workflowId: string, node: WorkflowAgentNode
333
392
  }
334
393
  }
335
394
 
395
+ function assertUniqueNonEmptyAgentStepValues(
396
+ workflowId: string,
397
+ stepId: string,
398
+ kind: "group" | "tool",
399
+ values: readonly string[]
400
+ ): void {
401
+ const seen = new Set<string>()
402
+ for (const value of values) {
403
+ if (!value.trim()) {
404
+ throw new WorkflowDefinitionError(
405
+ `Workflow "${workflowId}" agent step "${stepId}" has an empty ${kind} id.`
406
+ )
407
+ }
408
+ if (seen.has(value)) {
409
+ throw new WorkflowDefinitionError(
410
+ `Workflow "${workflowId}" agent step "${stepId}" has duplicate ${kind} '${value}'.`
411
+ )
412
+ }
413
+ seen.add(value)
414
+ }
415
+ }
416
+
417
+ function isLanguageModel(value: unknown): boolean {
418
+ return (typeof value === "object" || typeof value === "function") && value !== null
419
+ }
420
+
421
+ function isStringArray(value: unknown): value is readonly string[] {
422
+ if (!Array.isArray(value)) return false
423
+ for (let index = 0; index < value.length; index += 1) {
424
+ if (!Object.hasOwn(value, index) || typeof value[index] !== "string") return false
425
+ }
426
+ return true
427
+ }
428
+
336
429
  export function validateWorkflowAgentStepInput(params: {
337
430
  readonly workflowId: string
338
431
  readonly agentStep: AgentStepDefinition