@sixb/core 0.1.7 → 0.1.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (999) 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 +78 -84
  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/types/context.d.ts +2 -0
  15. package/dist/actions/types/context.d.ts.map +1 -1
  16. package/dist/actions/validation.d.ts +1 -1
  17. package/dist/actions/validation.d.ts.map +1 -1
  18. package/dist/actions/worker.js +33 -37
  19. package/dist/actions/worker.js.map +2 -2
  20. package/dist/agents/adapters.d.ts +8 -125
  21. package/dist/agents/adapters.d.ts.map +1 -1
  22. package/dist/agents/authority.d.ts +1 -1
  23. package/dist/agents/authority.d.ts.map +1 -1
  24. package/dist/agents/{context.d.ts → context/entries.d.ts} +3 -3
  25. package/dist/agents/context/entries.d.ts.map +1 -0
  26. package/dist/agents/context/index.d.ts +4 -0
  27. package/dist/agents/context/index.d.ts.map +1 -0
  28. package/dist/agents/context/index.js +19 -0
  29. package/dist/agents/{streams.js.map → context/index.js.map} +1 -1
  30. package/dist/agents/context-model.d.ts +1 -1
  31. package/dist/agents/context-model.d.ts.map +1 -1
  32. package/dist/agents/context-resolution.d.ts +1 -1
  33. package/dist/agents/context-resolution.d.ts.map +1 -1
  34. package/dist/agents/errors.d.ts +0 -9
  35. package/dist/agents/errors.d.ts.map +1 -1
  36. package/dist/agents/execution.d.ts.map +1 -1
  37. package/dist/agents/identity.d.ts +3 -0
  38. package/dist/agents/identity.d.ts.map +1 -0
  39. package/dist/agents/index.d.ts +7 -7
  40. package/dist/agents/index.d.ts.map +1 -1
  41. package/dist/agents/index.js +193 -205
  42. package/dist/agents/index.js.map +1 -1
  43. package/dist/agents/message.d.ts +5 -6
  44. package/dist/agents/message.d.ts.map +1 -1
  45. package/dist/agents/model-loop.d.ts +4 -0
  46. package/dist/agents/model-loop.d.ts.map +1 -1
  47. package/dist/agents/request.d.ts +1 -1
  48. package/dist/agents/request.d.ts.map +1 -1
  49. package/dist/agents/streams/index.d.ts +4 -0
  50. package/dist/agents/streams/index.d.ts.map +1 -0
  51. package/dist/agents/streams/index.js +20 -0
  52. package/dist/{chunk-y64skrwp.js.map → agents/streams/index.js.map} +1 -1
  53. package/dist/agents/streams/internal.d.ts +3 -0
  54. package/dist/agents/streams/internal.d.ts.map +1 -0
  55. package/dist/agents/streams/internal.js +40 -0
  56. package/dist/agents/{context.js.map → streams/internal.js.map} +1 -1
  57. package/dist/agents/{streams.d.ts → streams/protocol.d.ts} +5 -5
  58. package/dist/agents/streams/protocol.d.ts.map +1 -0
  59. package/dist/agents/tool-definition.d.ts +0 -1
  60. package/dist/agents/tool-definition.d.ts.map +1 -1
  61. package/dist/agents/types.d.ts +1 -1
  62. package/dist/agents/types.d.ts.map +1 -1
  63. package/dist/agents/validation.d.ts +0 -4
  64. package/dist/agents/validation.d.ts.map +1 -1
  65. package/dist/ai-usage/execution.d.ts.map +1 -1
  66. package/dist/auth/index.d.ts +0 -1
  67. package/dist/auth/index.d.ts.map +1 -1
  68. package/dist/auth/index.js +96 -105
  69. package/dist/auth/index.js.map +1 -1
  70. package/dist/auth/strategy.js +8 -9
  71. package/dist/auth/strategy.js.map +1 -1
  72. package/dist/authorization/decision.d.ts +10 -2
  73. package/dist/authorization/decision.d.ts.map +1 -1
  74. package/dist/authorization/grant-kinds.d.ts +2 -1
  75. package/dist/authorization/grant-kinds.d.ts.map +1 -1
  76. package/dist/authorization/index.d.ts +1 -1
  77. package/dist/authorization/index.d.ts.map +1 -1
  78. package/dist/authorization/index.js +51 -53
  79. package/dist/authorization/index.js.map +1 -1
  80. package/dist/blob-storage/browser.js +15 -17
  81. package/dist/blob-storage/browser.js.map +1 -1
  82. package/dist/blob-storage/index.js +36 -38
  83. package/dist/blob-storage/index.js.map +1 -1
  84. package/dist/bootstrap/discovery.d.ts +20 -1
  85. package/dist/bootstrap/discovery.d.ts.map +1 -1
  86. package/dist/bootstrap/index.d.ts +2 -2
  87. package/dist/bootstrap/index.d.ts.map +1 -1
  88. package/dist/bootstrap/index.js +79 -81
  89. package/dist/bootstrap/index.js.map +1 -1
  90. package/dist/bootstrap/ontology-type-manifest.d.ts.map +1 -1
  91. package/dist/broker/index.js +8 -10
  92. package/dist/broker/index.js.map +1 -1
  93. package/dist/{chunk-k34z5rvh.js → chunk-0rdrecsb.js} +18 -18
  94. package/dist/{chunk-k34z5rvh.js.map → chunk-0rdrecsb.js.map} +2 -2
  95. package/dist/{chunk-3fqt22c4.js → chunk-0w35wavj.js} +360 -168
  96. package/dist/chunk-0w35wavj.js.map +14 -0
  97. package/dist/chunk-0y39rgsb.js +43 -0
  98. package/dist/{chunk-c15dr03f.js.map → chunk-0y39rgsb.js.map} +2 -2
  99. package/dist/{chunk-hdz94br2.js → chunk-17kfctj6.js} +23 -13
  100. package/dist/chunk-17kfctj6.js.map +10 -0
  101. package/dist/{chunk-e4rvtvpw.js → chunk-1enhpacz.js} +418 -233
  102. package/dist/chunk-1enhpacz.js.map +34 -0
  103. package/dist/{chunk-5gd7tpv6.js → chunk-2c4j899j.js} +4 -4
  104. package/dist/{chunk-5gd7tpv6.js.map → chunk-2c4j899j.js.map} +2 -2
  105. package/dist/{chunk-7ds9620f.js → chunk-38zv5rkr.js} +24 -8
  106. package/dist/chunk-38zv5rkr.js.map +10 -0
  107. package/dist/{chunk-w3e09qqk.js → chunk-39tqv9hz.js} +24 -24
  108. package/dist/{chunk-w3e09qqk.js.map → chunk-39tqv9hz.js.map} +2 -2
  109. package/dist/{chunk-04b07a9q.js → chunk-3bh94gbw.js} +13 -13
  110. package/dist/{chunk-04b07a9q.js.map → chunk-3bh94gbw.js.map} +2 -2
  111. package/dist/{chunk-8m5ejdpn.js → chunk-3f7veca0.js} +4 -4
  112. package/dist/{chunk-8m5ejdpn.js.map → chunk-3f7veca0.js.map} +2 -2
  113. package/dist/chunk-3frsnm7x.js +32 -0
  114. package/dist/chunk-3frsnm7x.js.map +11 -0
  115. package/dist/{chunk-n2w475r0.js → chunk-3tgwrcyh.js} +81 -81
  116. package/dist/{chunk-n2w475r0.js.map → chunk-3tgwrcyh.js.map} +2 -2
  117. package/dist/{chunk-qv38twt8.js → chunk-52hbv0ak.js} +192 -171
  118. package/dist/{chunk-qv38twt8.js.map → chunk-52hbv0ak.js.map} +6 -6
  119. package/dist/{chunk-nf4r78r4.js → chunk-5a4a52tq.js} +4 -4
  120. package/dist/{chunk-nf4r78r4.js.map → chunk-5a4a52tq.js.map} +2 -2
  121. package/dist/{chunk-rte5sm3z.js → chunk-5hz0fnca.js} +23 -23
  122. package/dist/{chunk-rte5sm3z.js.map → chunk-5hz0fnca.js.map} +2 -2
  123. package/dist/chunk-653vwrzr.js +39 -0
  124. package/dist/chunk-653vwrzr.js.map +10 -0
  125. package/dist/{chunk-qw9gvjv5.js → chunk-72w2pxk7.js} +13 -13
  126. package/dist/{chunk-qw9gvjv5.js.map → chunk-72w2pxk7.js.map} +2 -2
  127. package/dist/chunk-7apz6hg4.js +50 -0
  128. package/dist/{chunk-jq43kdvk.js.map → chunk-7apz6hg4.js.map} +2 -2
  129. package/dist/chunk-7bs40fe1.js +218 -0
  130. package/dist/{chunk-08twe8m6.js.map → chunk-7bs40fe1.js.map} +3 -3
  131. package/dist/chunk-7zgecwy1.js +113 -0
  132. package/dist/chunk-7zgecwy1.js.map +10 -0
  133. package/dist/{chunk-tn7xcs2n.js → chunk-860dwwy0.js} +93 -30
  134. package/dist/chunk-860dwwy0.js.map +14 -0
  135. package/dist/chunk-8vj0rjgs.js +165 -0
  136. package/dist/chunk-8vj0rjgs.js.map +15 -0
  137. package/dist/{chunk-7y0f6rf1.js → chunk-92vk7gta.js} +58 -58
  138. package/dist/chunk-92vk7gta.js.map +10 -0
  139. package/dist/{chunk-gbrpsx4m.js → chunk-93csa55g.js} +72 -16
  140. package/dist/chunk-93csa55g.js.map +11 -0
  141. package/dist/{chunk-d8qkxt2v.js → chunk-98cw09sw.js} +7 -7
  142. package/dist/chunk-98cw09sw.js.map +10 -0
  143. package/dist/chunk-9qsh3p5y.js +111 -0
  144. package/dist/chunk-9qsh3p5y.js.map +11 -0
  145. package/dist/{chunk-4a849fr1.js → chunk-9tc8dxmn.js} +1 -1
  146. package/dist/{chunk-z2sery1b.js → chunk-9vx5e9g1.js} +68 -28
  147. package/dist/chunk-9vx5e9g1.js.map +11 -0
  148. package/dist/{chunk-9aehf39w.js → chunk-an5tt9y0.js} +353 -353
  149. package/dist/{chunk-9aehf39w.js.map → chunk-an5tt9y0.js.map} +2 -2
  150. package/dist/{chunk-x0qhkqje.js → chunk-ap0g1g74.js} +37 -37
  151. package/dist/{chunk-x0qhkqje.js.map → chunk-ap0g1g74.js.map} +2 -2
  152. package/dist/chunk-awbhdqyc.js +252 -0
  153. package/dist/chunk-awbhdqyc.js.map +10 -0
  154. package/dist/{chunk-ka3a2ft3.js → chunk-b19g04jk.js} +12 -12
  155. package/dist/{chunk-ka3a2ft3.js.map → chunk-b19g04jk.js.map} +2 -2
  156. package/dist/chunk-br3k6qbf.js +436 -0
  157. package/dist/chunk-br3k6qbf.js.map +12 -0
  158. package/dist/{chunk-dbc80ad7.js → chunk-c5rkjrgp.js} +28 -28
  159. package/dist/{chunk-dbc80ad7.js.map → chunk-c5rkjrgp.js.map} +2 -2
  160. package/dist/{chunk-dktq02ne.js → chunk-cqr3acm1.js} +4 -4
  161. package/dist/{chunk-dktq02ne.js.map → chunk-cqr3acm1.js.map} +2 -2
  162. package/dist/chunk-d62kjtbg.js +7 -0
  163. package/dist/{chunk-zcnhxkvd.js.map → chunk-d62kjtbg.js.map} +2 -2
  164. package/dist/{chunk-74drx9gd.js → chunk-dfm066qg.js} +10 -10
  165. package/dist/{chunk-74drx9gd.js.map → chunk-dfm066qg.js.map} +2 -2
  166. package/dist/{chunk-atmkaf60.js → chunk-dmn70ztd.js} +30 -34
  167. package/dist/chunk-dmn70ztd.js.map +11 -0
  168. package/dist/chunk-dz5h08xv.js +1887 -0
  169. package/dist/chunk-dz5h08xv.js.map +25 -0
  170. package/dist/{chunk-p2vqaxkc.js → chunk-e0d1rzef.js} +27 -22
  171. package/dist/{chunk-p2vqaxkc.js.map → chunk-e0d1rzef.js.map} +3 -3
  172. package/dist/{chunk-5sz8ta9r.js → chunk-e1c18xjx.js} +52 -52
  173. package/dist/{chunk-5sz8ta9r.js.map → chunk-e1c18xjx.js.map} +2 -2
  174. package/dist/{chunk-ha58tjtt.js → chunk-emyyk7dx.js} +59 -55
  175. package/dist/{chunk-ha58tjtt.js.map → chunk-emyyk7dx.js.map} +3 -3
  176. package/dist/{chunk-3kv70xwp.js → chunk-ey1nk510.js} +18 -2
  177. package/dist/chunk-ey1nk510.js.map +10 -0
  178. package/dist/chunk-f0rwz2vh.js +152 -0
  179. package/dist/chunk-f0rwz2vh.js.map +11 -0
  180. package/dist/{chunk-2xns679x.js → chunk-f4w3yp4f.js} +171 -36
  181. package/dist/chunk-f4w3yp4f.js.map +12 -0
  182. package/dist/{chunk-979ww6b3.js → chunk-fb3feg1e.js} +29 -29
  183. package/dist/{chunk-979ww6b3.js.map → chunk-fb3feg1e.js.map} +2 -2
  184. package/dist/{chunk-rre42skh.js → chunk-g00bfdq6.js} +729 -296
  185. package/dist/{chunk-rre42skh.js.map → chunk-g00bfdq6.js.map} +11 -7
  186. package/dist/{chunk-p03r0h5s.js → chunk-g53f0e4j.js} +76 -202
  187. package/dist/chunk-g53f0e4j.js.map +15 -0
  188. package/dist/chunk-g6cke204.js +124 -0
  189. package/dist/chunk-g6cke204.js.map +10 -0
  190. package/dist/{chunk-51fjndv0.js → chunk-gfdh9kqa.js} +4 -4
  191. package/dist/{chunk-51fjndv0.js.map → chunk-gfdh9kqa.js.map} +2 -2
  192. package/dist/chunk-h1gfhhbh.js +602 -0
  193. package/dist/chunk-h1gfhhbh.js.map +18 -0
  194. package/dist/chunk-h3v76ams.js +32 -0
  195. package/dist/{chunk-08m3b6w8.js.map → chunk-h3v76ams.js.map} +2 -2
  196. package/dist/chunk-hpr1r6av.js +4006 -0
  197. package/dist/chunk-hpr1r6av.js.map +44 -0
  198. package/dist/{chunk-jecn6t54.js → chunk-jgwb25gc.js} +74 -74
  199. package/dist/{chunk-jecn6t54.js.map → chunk-jgwb25gc.js.map} +2 -2
  200. package/dist/{chunk-rp1mvzb4.js → chunk-jjy0fhrn.js} +40 -35
  201. package/dist/{chunk-rp1mvzb4.js.map → chunk-jjy0fhrn.js.map} +3 -3
  202. package/dist/{chunk-4nxeacx7.js → chunk-jmfet9r4.js} +6 -6
  203. package/dist/{chunk-4nxeacx7.js.map → chunk-jmfet9r4.js.map} +2 -2
  204. package/dist/{chunk-64sr682n.js → chunk-k3cqkkn2.js} +61 -55
  205. package/dist/chunk-k3cqkkn2.js.map +12 -0
  206. package/dist/{chunk-s5y30bc9.js → chunk-kxwa347f.js} +51 -49
  207. package/dist/{chunk-s5y30bc9.js.map → chunk-kxwa347f.js.map} +4 -4
  208. package/dist/{chunk-2ab72m2h.js → chunk-m2ca93my.js} +3 -3
  209. package/dist/{chunk-2ab72m2h.js.map → chunk-m2ca93my.js.map} +2 -2
  210. package/dist/{chunk-qjycjdj6.js → chunk-m3z3x9v0.js} +106 -65
  211. package/dist/{chunk-qjycjdj6.js.map → chunk-m3z3x9v0.js.map} +3 -3
  212. package/dist/{chunk-6ed5bwnd.js → chunk-mjbk2djy.js} +2092 -1714
  213. package/dist/chunk-mjbk2djy.js.map +57 -0
  214. package/dist/{chunk-5jcdmjam.js → chunk-mmagke4x.js} +6 -6
  215. package/dist/{chunk-5jcdmjam.js.map → chunk-mmagke4x.js.map} +2 -2
  216. package/dist/chunk-mrp7k0pw.js +147 -0
  217. package/dist/chunk-mrp7k0pw.js.map +10 -0
  218. package/dist/{chunk-d63tybny.js → chunk-ms2tmn1k.js} +139 -139
  219. package/dist/{chunk-d63tybny.js.map → chunk-ms2tmn1k.js.map} +2 -2
  220. package/dist/{chunk-xdpwpkha.js → chunk-ppytyr6w.js} +156 -179
  221. package/dist/{chunk-xdpwpkha.js.map → chunk-ppytyr6w.js.map} +3 -5
  222. package/dist/{chunk-trxxmgnf.js → chunk-pqajwytd.js} +10 -10
  223. package/dist/{chunk-trxxmgnf.js.map → chunk-pqajwytd.js.map} +3 -3
  224. package/dist/{chunk-qjzp9xyb.js → chunk-pr2h4bv4.js} +33 -35
  225. package/dist/chunk-pr2h4bv4.js.map +12 -0
  226. package/dist/{chunk-xwnf87e1.js → chunk-q5gz3g2j.js} +64 -64
  227. package/dist/{chunk-xwnf87e1.js.map → chunk-q5gz3g2j.js.map} +2 -2
  228. package/dist/{chunk-agsvg9ar.js → chunk-qf954wje.js} +6 -6
  229. package/dist/{chunk-agsvg9ar.js.map → chunk-qf954wje.js.map} +2 -2
  230. package/dist/{chunk-wjgm6jjt.js → chunk-qhcpj9wc.js} +166 -132
  231. package/dist/chunk-qhcpj9wc.js.map +14 -0
  232. package/dist/{chunk-tpnd31c1.js → chunk-r29fxdhn.js} +12 -12
  233. package/dist/{chunk-tpnd31c1.js.map → chunk-r29fxdhn.js.map} +2 -2
  234. package/dist/{chunk-b49dgvsj.js → chunk-r2y23egw.js} +3 -3
  235. package/dist/{chunk-b49dgvsj.js.map → chunk-r2y23egw.js.map} +2 -2
  236. package/dist/{chunk-2b5qtban.js → chunk-r4tfx1sf.js} +142 -89
  237. package/dist/chunk-r4tfx1sf.js.map +15 -0
  238. package/dist/{chunk-4rh2m6zg.js → chunk-rb1xx120.js} +13 -13
  239. package/dist/{chunk-4rh2m6zg.js.map → chunk-rb1xx120.js.map} +2 -2
  240. package/dist/chunk-s3csryxe.js +152 -0
  241. package/dist/chunk-s3csryxe.js.map +11 -0
  242. package/dist/chunk-s670k14v.js +60 -0
  243. package/dist/{chunk-407j3msh.js.map → chunk-s670k14v.js.map} +2 -2
  244. package/dist/chunk-skz0hst3.js +788 -0
  245. package/dist/chunk-skz0hst3.js.map +19 -0
  246. package/dist/chunk-v4jbb3rs.js +403 -0
  247. package/dist/chunk-v4jbb3rs.js.map +10 -0
  248. package/dist/{chunk-d2ndstdf.js → chunk-vf691g1r.js} +61 -59
  249. package/dist/{chunk-d2ndstdf.js.map → chunk-vf691g1r.js.map} +2 -2
  250. package/dist/{chunk-1kamz6j0.js → chunk-vsj3mdfj.js} +8 -8
  251. package/dist/{chunk-1kamz6j0.js.map → chunk-vsj3mdfj.js.map} +2 -2
  252. package/dist/{chunk-9dzba0f2.js → chunk-wjasrj67.js} +8 -8
  253. package/dist/{chunk-9dzba0f2.js.map → chunk-wjasrj67.js.map} +2 -2
  254. package/dist/{chunk-1evzqhks.js → chunk-wr8qp979.js} +6 -6
  255. package/dist/{chunk-1evzqhks.js.map → chunk-wr8qp979.js.map} +2 -2
  256. package/dist/{chunk-n6jxh8sw.js → chunk-wy0qdqfm.js} +18 -18
  257. package/dist/{chunk-n6jxh8sw.js.map → chunk-wy0qdqfm.js.map} +2 -2
  258. package/dist/{chunk-8tsf6dmc.js → chunk-x57ycxq0.js} +204 -204
  259. package/dist/{chunk-8tsf6dmc.js.map → chunk-x57ycxq0.js.map} +2 -2
  260. package/dist/chunk-x9v4cx1d.js +139 -0
  261. package/dist/chunk-x9v4cx1d.js.map +10 -0
  262. package/dist/{chunk-kt81c11h.js → chunk-xfbydgzy.js} +27 -27
  263. package/dist/{chunk-kt81c11h.js.map → chunk-xfbydgzy.js.map} +2 -2
  264. package/dist/{chunk-vjjv9mrb.js → chunk-xyr8kppc.js} +22 -22
  265. package/dist/{chunk-vjjv9mrb.js.map → chunk-xyr8kppc.js.map} +3 -3
  266. package/dist/chunk-ypbtykv6.js +1537 -0
  267. package/dist/chunk-ypbtykv6.js.map +19 -0
  268. package/dist/{chunk-ry24jbr1.js → chunk-yv79ncbv.js} +10 -10
  269. package/dist/{chunk-ry24jbr1.js.map → chunk-yv79ncbv.js.map} +2 -2
  270. package/dist/{chunk-xc7hq65b.js → chunk-z30bv4ga.js} +80 -33
  271. package/dist/chunk-z30bv4ga.js.map +11 -0
  272. package/dist/{chunk-8ydjhh27.js → chunk-z3y411fq.js} +11 -7
  273. package/dist/{chunk-8ydjhh27.js.map → chunk-z3y411fq.js.map} +3 -3
  274. package/dist/{chunk-9t8f5xfx.js → chunk-z5rnrmz1.js} +10 -10
  275. package/dist/{chunk-9t8f5xfx.js.map → chunk-z5rnrmz1.js.map} +2 -2
  276. package/dist/{chunk-96swp2wd.js → chunk-z667z3sg.js} +3 -3
  277. package/dist/{chunk-96swp2wd.js.map → chunk-z667z3sg.js.map} +2 -2
  278. package/dist/chunk-z8fx5cgb.js +159 -0
  279. package/dist/chunk-z8fx5cgb.js.map +11 -0
  280. package/dist/{chunk-xhy826cz.js → chunk-zcnq6105.js} +7 -7
  281. package/dist/{chunk-xhy826cz.js.map → chunk-zcnq6105.js.map} +2 -2
  282. package/dist/{chunk-yt8wphsx.js → chunk-zvx7h87b.js} +3 -3
  283. package/dist/{chunk-yt8wphsx.js.map → chunk-zvx7h87b.js.map} +2 -2
  284. package/dist/connectors/connections/internal.js +9 -10
  285. package/dist/connectors/connections/internal.js.map +1 -1
  286. package/dist/datasets/builders.d.ts +11 -2
  287. package/dist/datasets/builders.d.ts.map +1 -1
  288. package/dist/datasets/changes.d.ts +14 -4
  289. package/dist/datasets/changes.d.ts.map +1 -1
  290. package/dist/datasets/execution.d.ts +15 -1
  291. package/dist/datasets/execution.d.ts.map +1 -1
  292. package/dist/datasets/index.d.ts +1 -0
  293. package/dist/datasets/index.d.ts.map +1 -1
  294. package/dist/datasets/sequence.d.ts +7 -0
  295. package/dist/datasets/sequence.d.ts.map +1 -0
  296. package/dist/datasets/types.d.ts +1 -0
  297. package/dist/datasets/types.d.ts.map +1 -1
  298. package/dist/datasets/validation.d.ts.map +1 -1
  299. package/dist/datasets/write.d.ts +37 -0
  300. package/dist/datasets/write.d.ts.map +1 -0
  301. package/dist/datasets/write.js +13 -0
  302. package/dist/datasets/write.js.map +9 -0
  303. package/dist/edits/index.js +7 -8
  304. package/dist/edits/index.js.map +1 -1
  305. package/dist/error-reporting/internal.js +22 -24
  306. package/dist/error-reporting/internal.js.map +1 -1
  307. package/dist/errors/internal.d.ts +1 -1
  308. package/dist/errors/internal.d.ts.map +1 -1
  309. package/dist/errors/internal.js +22 -24
  310. package/dist/errors/internal.js.map +1 -1
  311. package/dist/errors/redaction.d.ts +8 -0
  312. package/dist/errors/redaction.d.ts.map +1 -0
  313. package/dist/errors/types.d.ts +4 -0
  314. package/dist/errors/types.d.ts.map +1 -1
  315. package/dist/events/execution.d.ts.map +1 -1
  316. package/dist/events/index.js +60 -63
  317. package/dist/events/index.js.map +1 -1
  318. package/dist/events/scope.js +4 -5
  319. package/dist/events/scope.js.map +1 -1
  320. package/dist/events/selectors/index.js +9 -10
  321. package/dist/events/selectors/index.js.map +1 -1
  322. package/dist/events/types/datasets.d.ts +2 -6
  323. package/dist/events/types/datasets.d.ts.map +1 -1
  324. package/dist/execution/agent.d.ts +3 -3
  325. package/dist/execution/agent.d.ts.map +1 -1
  326. package/dist/execution/agent.js +70 -75
  327. package/dist/execution/agent.js.map +1 -1
  328. package/dist/execution/authorization.d.ts +58 -20
  329. package/dist/execution/authorization.d.ts.map +1 -1
  330. package/dist/execution/authorized-object-reader.d.ts +69 -0
  331. package/dist/execution/authorized-object-reader.d.ts.map +1 -0
  332. package/dist/execution/durable.d.ts +1 -0
  333. package/dist/execution/durable.d.ts.map +1 -1
  334. package/dist/execution/index.d.ts +1 -1
  335. package/dist/execution/index.d.ts.map +1 -1
  336. package/dist/execution/primitive.d.ts +2 -0
  337. package/dist/execution/primitive.d.ts.map +1 -1
  338. package/dist/execution/primitive.js +63 -64
  339. package/dist/execution/primitive.js.map +3 -3
  340. package/dist/execution/request.d.ts +12 -0
  341. package/dist/execution/request.d.ts.map +1 -1
  342. package/dist/execution/request.js +97 -71
  343. package/dist/execution/request.js.map +3 -3
  344. package/dist/execution/scopes.d.ts +16 -0
  345. package/dist/execution/scopes.d.ts.map +1 -1
  346. package/dist/execution/types.d.ts +9 -0
  347. package/dist/execution/types.d.ts.map +1 -1
  348. package/dist/http/api-routes.d.ts +2 -0
  349. package/dist/http/api-routes.d.ts.map +1 -1
  350. package/dist/http/index.js +10 -11
  351. package/dist/http/index.js.map +1 -1
  352. package/dist/index.d.ts +21 -14
  353. package/dist/index.d.ts.map +1 -1
  354. package/dist/index.js +455 -463
  355. package/dist/index.js.map +1 -1
  356. package/dist/lake-storage/definition-updates.d.ts.map +1 -1
  357. package/dist/lake-storage/errors.d.ts +5 -1
  358. package/dist/lake-storage/errors.d.ts.map +1 -1
  359. package/dist/lake-storage/in-memory.d.ts +1 -0
  360. package/dist/lake-storage/in-memory.d.ts.map +1 -1
  361. package/dist/lake-storage/index.d.ts +6 -1
  362. package/dist/lake-storage/index.d.ts.map +1 -1
  363. package/dist/lake-storage/index.js +40 -27
  364. package/dist/lake-storage/index.js.map +1 -1
  365. package/dist/lake-storage/merge-validation.d.ts.map +1 -1
  366. package/dist/lake-storage/merge.d.ts +13 -2
  367. package/dist/lake-storage/merge.d.ts.map +1 -1
  368. package/dist/lake-storage/source-ordering.d.ts +19 -0
  369. package/dist/lake-storage/source-ordering.d.ts.map +1 -0
  370. package/dist/lake-storage/sql-transforms.d.ts +2 -1
  371. package/dist/lake-storage/sql-transforms.d.ts.map +1 -1
  372. package/dist/lake-storage/types.d.ts +10 -5
  373. package/dist/lake-storage/types.d.ts.map +1 -1
  374. package/dist/lake-storage/version-inputs.d.ts +4 -0
  375. package/dist/lake-storage/version-inputs.d.ts.map +1 -0
  376. package/dist/logging/index.d.ts +3 -4
  377. package/dist/logging/index.d.ts.map +1 -1
  378. package/dist/logging/index.js +18 -40
  379. package/dist/logging/index.js.map +1 -1
  380. package/dist/logging/internal.d.ts +5 -0
  381. package/dist/logging/internal.d.ts.map +1 -0
  382. package/dist/logging/internal.js +43 -0
  383. package/dist/logging/internal.js.map +9 -0
  384. package/dist/materialization/index.js +46 -49
  385. package/dist/materialization/index.js.map +1 -1
  386. package/dist/materializer/index.js +137 -142
  387. package/dist/materializer/index.js.map +1 -1
  388. package/dist/models/errors.d.ts +4 -0
  389. package/dist/models/errors.d.ts.map +1 -1
  390. package/dist/models/execution/binding.d.ts +9 -0
  391. package/dist/models/execution/binding.d.ts.map +1 -0
  392. package/dist/models/execution/errors.d.ts +9 -0
  393. package/dist/models/execution/errors.d.ts.map +1 -0
  394. package/dist/models/execution/index.d.ts +11 -0
  395. package/dist/models/execution/index.d.ts.map +1 -0
  396. package/dist/models/execution/index.js +55 -0
  397. package/dist/models/execution/index.js.map +9 -0
  398. package/dist/models/execution/model-call-accounting.d.ts +17 -0
  399. package/dist/models/execution/model-call-accounting.d.ts.map +1 -0
  400. package/dist/models/execution/model-call-admission.d.ts +47 -0
  401. package/dist/models/execution/model-call-admission.d.ts.map +1 -0
  402. package/dist/models/execution/model-call-limits.d.ts +15 -0
  403. package/dist/models/execution/model-call-limits.d.ts.map +1 -0
  404. package/dist/models/execution/model-call-recorder.d.ts +40 -0
  405. package/dist/models/execution/model-call-recorder.d.ts.map +1 -0
  406. package/dist/models/execution/model-call-recovery.d.ts +12 -0
  407. package/dist/models/execution/model-call-recovery.d.ts.map +1 -0
  408. package/dist/models/execution/recovery-queue.d.ts +5 -0
  409. package/dist/models/execution/recovery-queue.d.ts.map +1 -0
  410. package/dist/models/execution/types.d.ts +44 -0
  411. package/dist/models/execution/types.d.ts.map +1 -0
  412. package/dist/models/execution/usage.d.ts +5 -0
  413. package/dist/models/execution/usage.d.ts.map +1 -0
  414. package/dist/models/execution.d.ts +6 -0
  415. package/dist/models/execution.d.ts.map +1 -0
  416. package/dist/models/generation-types.d.ts +40 -0
  417. package/dist/models/generation-types.d.ts.map +1 -0
  418. package/dist/models/index.d.ts +1 -0
  419. package/dist/models/index.d.ts.map +1 -1
  420. package/dist/models/index.js +42 -43
  421. package/dist/models/index.js.map +1 -1
  422. package/dist/models/language-model.d.ts +3 -0
  423. package/dist/models/language-model.d.ts.map +1 -1
  424. package/dist/models/output.d.ts +5 -0
  425. package/dist/models/output.d.ts.map +1 -0
  426. package/dist/models/resolve.d.ts +4 -0
  427. package/dist/models/resolve.d.ts.map +1 -0
  428. package/dist/objects/authorized-ontology-view.d.ts +25 -0
  429. package/dist/objects/authorized-ontology-view.d.ts.map +1 -0
  430. package/dist/objects/execution.d.ts +1 -1
  431. package/dist/objects/execution.d.ts.map +1 -1
  432. package/dist/objects/index.js +75 -84
  433. package/dist/objects/index.js.map +1 -1
  434. package/dist/objects/link/authorization.d.ts +2 -7
  435. package/dist/objects/link/authorization.d.ts.map +1 -1
  436. package/dist/objects/query/executor.d.ts +4 -2
  437. package/dist/objects/query/executor.d.ts.map +1 -1
  438. package/dist/objects/query/index.js +67 -73
  439. package/dist/objects/query/index.js.map +1 -1
  440. package/dist/objects/query/links.d.ts +22 -1
  441. package/dist/objects/query/links.d.ts.map +1 -1
  442. package/dist/objects/query/selected-read-admission.d.ts +27 -0
  443. package/dist/objects/query/selected-read-admission.d.ts.map +1 -0
  444. package/dist/objects/query/validate.d.ts +60 -2
  445. package/dist/objects/query/validate.d.ts.map +1 -1
  446. package/dist/objects/sdk/object-handle.d.ts.map +1 -1
  447. package/dist/objects/sdk/object-set.d.ts.map +1 -1
  448. package/dist/objects/sdk/runtime-query-executor.d.ts +2 -7
  449. package/dist/objects/sdk/runtime-query-executor.d.ts.map +1 -1
  450. package/dist/objects/sdk/telemetry-channel.d.ts.map +1 -1
  451. package/dist/objects/service/list-service.d.ts +2 -3
  452. package/dist/objects/service/list-service.d.ts.map +1 -1
  453. package/dist/objects/telemetry/history.d.ts +8 -6
  454. package/dist/objects/telemetry/history.d.ts.map +1 -1
  455. package/dist/objects/telemetry/index.d.ts +2 -2
  456. package/dist/objects/telemetry/index.d.ts.map +1 -1
  457. package/dist/objects/telemetry/workload.d.ts +11 -0
  458. package/dist/objects/telemetry/workload.d.ts.map +1 -0
  459. package/dist/ontology/index.d.ts +2 -2
  460. package/dist/ontology/index.d.ts.map +1 -1
  461. package/dist/ontology/index.js +61 -111
  462. package/dist/ontology/index.js.map +1 -1
  463. package/dist/ontology/inference/index.d.ts +2 -1
  464. package/dist/ontology/inference/index.d.ts.map +1 -1
  465. package/dist/ontology/internal.d.ts +7 -1
  466. package/dist/ontology/internal.d.ts.map +1 -1
  467. package/dist/ontology/internal.js +65 -121
  468. package/dist/ontology/internal.js.map +3 -4
  469. package/dist/ontology/json-schema.d.ts +10 -6
  470. package/dist/ontology/json-schema.d.ts.map +1 -1
  471. package/dist/ontology/link-path-selection.d.ts +35 -0
  472. package/dist/ontology/link-path-selection.d.ts.map +1 -0
  473. package/dist/ontology/refs.d.ts +2 -0
  474. package/dist/ontology/refs.d.ts.map +1 -1
  475. package/dist/ontology/tokens.d.ts +2 -1
  476. package/dist/ontology/tokens.d.ts.map +1 -1
  477. package/dist/pipelines/execution.d.ts.map +1 -1
  478. package/dist/pipelines/index.js +57 -63
  479. package/dist/pipelines/index.js.map +1 -1
  480. package/dist/pipelines/request.d.ts.map +1 -1
  481. package/dist/projections/execution.d.ts.map +1 -1
  482. package/dist/projections/internal.js +58 -64
  483. package/dist/projections/internal.js.map +1 -1
  484. package/dist/projections/run-dispatch.d.ts.map +1 -1
  485. package/dist/query.d.ts +0 -1
  486. package/dist/query.d.ts.map +1 -1
  487. package/dist/query.js +11 -15
  488. package/dist/query.js.map +1 -1
  489. package/dist/queues/index.d.ts +2 -1
  490. package/dist/queues/index.d.ts.map +1 -1
  491. package/dist/queues/index.js +6 -7
  492. package/dist/queues/index.js.map +1 -1
  493. package/dist/queues/types.d.ts +3 -20
  494. package/dist/queues/types.d.ts.map +1 -1
  495. package/dist/rules/execution.d.ts.map +1 -1
  496. package/dist/rules/internal.js +4 -5
  497. package/dist/rules/internal.js.map +1 -1
  498. package/dist/runtime/create.d.ts +6 -2
  499. package/dist/runtime/create.d.ts.map +1 -1
  500. package/dist/runtime/definitions.d.ts +2 -0
  501. package/dist/runtime/definitions.d.ts.map +1 -1
  502. package/dist/runtime/host.d.ts +4 -1
  503. package/dist/runtime/host.d.ts.map +1 -1
  504. package/dist/runtime/internal.d.ts +1 -0
  505. package/dist/runtime/internal.d.ts.map +1 -1
  506. package/dist/runtime/internal.js +13 -14
  507. package/dist/runtime/internal.js.map +1 -1
  508. package/dist/runtime/resolve-definitions.d.ts +2 -0
  509. package/dist/runtime/resolve-definitions.d.ts.map +1 -1
  510. package/dist/runtime/sixb.d.ts +6 -0
  511. package/dist/runtime/sixb.d.ts.map +1 -1
  512. package/dist/runtime/types.d.ts +3 -0
  513. package/dist/runtime/types.d.ts.map +1 -1
  514. package/dist/sandboxes/errors.d.ts +4 -0
  515. package/dist/sandboxes/errors.d.ts.map +1 -1
  516. package/dist/sandboxes/index.d.ts +2 -2
  517. package/dist/sandboxes/index.d.ts.map +1 -1
  518. package/dist/sandboxes/index.js +14 -13
  519. package/dist/sandboxes/index.js.map +1 -1
  520. package/dist/sandboxes/sandbox.d.ts +35 -7
  521. package/dist/sandboxes/sandbox.d.ts.map +1 -1
  522. package/dist/scheduler/index.js +9 -10
  523. package/dist/scheduler/index.js.map +1 -1
  524. package/dist/schedules/execution.d.ts +2 -1
  525. package/dist/schedules/execution.d.ts.map +1 -1
  526. package/dist/schedules/index.js +31 -33
  527. package/dist/schedules/index.js.map +1 -1
  528. package/dist/security/every.d.ts +4 -1
  529. package/dist/security/every.d.ts.map +1 -1
  530. package/dist/security/grants.d.ts +7 -2
  531. package/dist/security/grants.d.ts.map +1 -1
  532. package/dist/security/index.d.ts +1 -1
  533. package/dist/security/index.d.ts.map +1 -1
  534. package/dist/security/registry.d.ts +1 -0
  535. package/dist/security/registry.d.ts.map +1 -1
  536. package/dist/security/types.d.ts +7 -1
  537. package/dist/security/types.d.ts.map +1 -1
  538. package/dist/security/validation.d.ts +2 -0
  539. package/dist/security/validation.d.ts.map +1 -1
  540. package/dist/shares/access-plan.d.ts +22 -0
  541. package/dist/shares/access-plan.d.ts.map +1 -0
  542. package/dist/shares/builders.d.ts +14 -0
  543. package/dist/shares/builders.d.ts.map +1 -0
  544. package/dist/shares/compiler.d.ts +14 -0
  545. package/dist/shares/compiler.d.ts.map +1 -0
  546. package/dist/shares/errors.d.ts +4 -0
  547. package/dist/shares/errors.d.ts.map +1 -0
  548. package/dist/shares/execution.d.ts +57 -0
  549. package/dist/shares/execution.d.ts.map +1 -0
  550. package/dist/shares/index.d.ts +10 -0
  551. package/dist/shares/index.d.ts.map +1 -0
  552. package/dist/shares/internal.d.ts +3 -0
  553. package/dist/shares/internal.d.ts.map +1 -0
  554. package/dist/shares/internal.js +231 -0
  555. package/dist/shares/internal.js.map +10 -0
  556. package/dist/shares/intersection.d.ts +9 -0
  557. package/dist/shares/intersection.d.ts.map +1 -0
  558. package/dist/shares/session-protocol.d.ts +41 -0
  559. package/dist/shares/session-protocol.d.ts.map +1 -0
  560. package/dist/shares/types.d.ts +51 -0
  561. package/dist/shares/types.d.ts.map +1 -0
  562. package/dist/shares/validation.d.ts +11 -0
  563. package/dist/shares/validation.d.ts.map +1 -0
  564. package/dist/storage/action-runs/failure.js +7 -9
  565. package/dist/storage/action-runs/failure.js.map +1 -1
  566. package/dist/storage/action-runs/provider.js +4 -8
  567. package/dist/storage/action-runs/provider.js.map +1 -1
  568. package/dist/storage/agents/in-memory.d.ts.map +1 -1
  569. package/dist/storage/agents/provider.js +26 -30
  570. package/dist/storage/agents/provider.js.map +1 -1
  571. package/dist/storage/agents/types.d.ts +0 -3
  572. package/dist/storage/agents/types.d.ts.map +1 -1
  573. package/dist/storage/ai-cost/attribution.d.ts +4 -0
  574. package/dist/storage/ai-cost/attribution.d.ts.map +1 -0
  575. package/dist/storage/ai-cost/groups.d.ts +3 -0
  576. package/dist/storage/ai-cost/groups.d.ts.map +1 -1
  577. package/dist/storage/ai-cost/provider.d.ts +1 -0
  578. package/dist/storage/ai-cost/provider.d.ts.map +1 -1
  579. package/dist/storage/ai-cost/provider.js +30 -143
  580. package/dist/storage/ai-cost/provider.js.map +3 -4
  581. package/dist/storage/ai-cost/types.d.ts +15 -0
  582. package/dist/storage/ai-cost/types.d.ts.map +1 -1
  583. package/dist/storage/ai-limits/enforcement.js +14 -16
  584. package/dist/storage/ai-limits/enforcement.js.map +1 -1
  585. package/dist/storage/ai-limits/provider.js +56 -57
  586. package/dist/storage/ai-limits/provider.js.map +1 -1
  587. package/dist/storage/auth/in-memory.d.ts +1 -1
  588. package/dist/storage/auth/in-memory.d.ts.map +1 -1
  589. package/dist/storage/connector-connections/provider.js +34 -36
  590. package/dist/storage/connector-connections/provider.js.map +2 -2
  591. package/dist/storage/executions/in-memory.d.ts +3 -0
  592. package/dist/storage/executions/in-memory.d.ts.map +1 -1
  593. package/dist/storage/executions/provider.d.ts +6 -2
  594. package/dist/storage/executions/provider.d.ts.map +1 -1
  595. package/dist/storage/executions/provider.js +35 -12
  596. package/dist/storage/executions/provider.js.map +3 -3
  597. package/dist/storage/executions/run-link.d.ts +7 -0
  598. package/dist/storage/executions/run-link.d.ts.map +1 -1
  599. package/dist/storage/executions/types.d.ts +6 -2
  600. package/dist/storage/executions/types.d.ts.map +1 -1
  601. package/dist/storage/executions/validation.d.ts +8 -0
  602. package/dist/storage/executions/validation.d.ts.map +1 -1
  603. package/dist/storage/in-memory/index.d.ts +8 -0
  604. package/dist/storage/in-memory/index.d.ts.map +1 -1
  605. package/dist/storage/index.d.ts +14 -9
  606. package/dist/storage/index.d.ts.map +1 -1
  607. package/dist/storage/index.js +221 -227
  608. package/dist/storage/index.js.map +1 -1
  609. package/dist/storage/internal.d.ts +10 -0
  610. package/dist/storage/internal.d.ts.map +1 -0
  611. package/dist/storage/internal.js +47 -0
  612. package/dist/storage/internal.js.map +9 -0
  613. package/dist/storage/objects/execution-limits.d.ts +25 -0
  614. package/dist/storage/objects/execution-limits.d.ts.map +1 -0
  615. package/dist/storage/objects/guard.d.ts +16 -0
  616. package/dist/storage/objects/guard.d.ts.map +1 -0
  617. package/dist/storage/objects/in-memory/index.d.ts +3 -0
  618. package/dist/storage/objects/in-memory/index.d.ts.map +1 -0
  619. package/dist/storage/objects/in-memory/keys.d.ts +10 -0
  620. package/dist/storage/objects/in-memory/keys.d.ts.map +1 -0
  621. package/dist/storage/objects/in-memory/query.d.ts +31 -0
  622. package/dist/storage/objects/in-memory/query.d.ts.map +1 -0
  623. package/dist/storage/objects/in-memory/read-scope.d.ts +18 -0
  624. package/dist/storage/objects/in-memory/read-scope.d.ts.map +1 -0
  625. package/dist/storage/objects/in-memory/read-source.d.ts +10 -0
  626. package/dist/storage/objects/in-memory/read-source.d.ts.map +1 -0
  627. package/dist/storage/objects/in-memory/selected-reader.d.ts +9 -0
  628. package/dist/storage/objects/in-memory/selected-reader.d.ts.map +1 -0
  629. package/dist/storage/objects/{in-memory.d.ts → in-memory/storage.d.ts} +13 -10
  630. package/dist/storage/objects/in-memory/storage.d.ts.map +1 -0
  631. package/dist/storage/objects/index.d.ts +4 -1
  632. package/dist/storage/objects/index.d.ts.map +1 -1
  633. package/dist/storage/objects/keys.d.ts +1 -1
  634. package/dist/storage/objects/keys.d.ts.map +1 -1
  635. package/dist/storage/objects/read-scope.d.ts +25 -0
  636. package/dist/storage/objects/read-scope.d.ts.map +1 -0
  637. package/dist/storage/objects/types.d.ts +114 -22
  638. package/dist/storage/objects/types.d.ts.map +1 -1
  639. package/dist/storage/ontology/provider.js +105 -109
  640. package/dist/storage/ontology/provider.js.map +1 -1
  641. package/dist/storage/operation-scope.d.ts +3 -0
  642. package/dist/storage/operation-scope.d.ts.map +1 -1
  643. package/dist/storage/operation-scope.js +18 -17
  644. package/dist/storage/operation-scope.js.map +1 -1
  645. package/dist/storage/pipeline-runs/provider.js +4 -6
  646. package/dist/storage/pipeline-runs/provider.js.map +1 -1
  647. package/dist/storage/projection-runs/provider.js +66 -70
  648. package/dist/storage/projection-runs/provider.js.map +1 -1
  649. package/dist/storage/share-grants/errors.d.ts +8 -0
  650. package/dist/storage/share-grants/errors.d.ts.map +1 -0
  651. package/dist/storage/share-grants/in-memory.d.ts +11 -0
  652. package/dist/storage/share-grants/in-memory.d.ts.map +1 -0
  653. package/dist/storage/share-grants/index.d.ts +5 -0
  654. package/dist/storage/share-grants/index.d.ts.map +1 -0
  655. package/dist/storage/share-grants/provider.d.ts +4 -0
  656. package/dist/storage/share-grants/provider.d.ts.map +1 -0
  657. package/dist/storage/share-grants/provider.js +22 -0
  658. package/dist/storage/share-grants/provider.js.map +9 -0
  659. package/dist/storage/share-grants/record.d.ts +11 -0
  660. package/dist/storage/share-grants/record.d.ts.map +1 -0
  661. package/dist/storage/share-grants/types.d.ts +97 -0
  662. package/dist/storage/share-grants/types.d.ts.map +1 -0
  663. package/dist/storage/share-sessions/errors.d.ts +8 -0
  664. package/dist/storage/share-sessions/errors.d.ts.map +1 -0
  665. package/dist/storage/share-sessions/in-memory.d.ts +14 -0
  666. package/dist/storage/share-sessions/in-memory.d.ts.map +1 -0
  667. package/dist/storage/share-sessions/index.d.ts +5 -0
  668. package/dist/storage/share-sessions/index.d.ts.map +1 -0
  669. package/dist/storage/share-sessions/provider.d.ts +3 -0
  670. package/dist/storage/share-sessions/provider.d.ts.map +1 -0
  671. package/dist/storage/share-sessions/provider.js +19 -0
  672. package/dist/storage/share-sessions/provider.js.map +9 -0
  673. package/dist/storage/share-sessions/record.d.ts +8 -0
  674. package/dist/storage/share-sessions/record.d.ts.map +1 -0
  675. package/dist/storage/share-sessions/types.d.ts +50 -0
  676. package/dist/storage/share-sessions/types.d.ts.map +1 -0
  677. package/dist/storage/sync-runs/provider.js +4 -6
  678. package/dist/storage/sync-runs/provider.js.map +1 -1
  679. package/dist/storage/transaction.d.ts +2 -1
  680. package/dist/storage/transaction.d.ts.map +1 -1
  681. package/dist/storage/types.d.ts +8 -0
  682. package/dist/storage/types.d.ts.map +1 -1
  683. package/dist/storage/webhook-runs/provider.js +4 -6
  684. package/dist/storage/webhook-runs/provider.js.map +1 -1
  685. package/dist/storage/workflow-runs/in-memory.d.ts.map +1 -1
  686. package/dist/storage/workflow-runs/provider.js +13 -18
  687. package/dist/storage/workflow-runs/provider.js.map +1 -1
  688. package/dist/storage/workflow-runs/types.d.ts +0 -3
  689. package/dist/storage/workflow-runs/types.d.ts.map +1 -1
  690. package/dist/syncs/execution.d.ts.map +1 -1
  691. package/dist/syncs/index.js +55 -62
  692. package/dist/syncs/index.js.map +1 -1
  693. package/dist/syncs/request.d.ts.map +1 -1
  694. package/dist/testing/action-execution.d.ts +4 -1
  695. package/dist/testing/action-execution.d.ts.map +1 -1
  696. package/dist/testing/agent-execution.d.ts +1 -0
  697. package/dist/testing/agent-execution.d.ts.map +1 -1
  698. package/dist/testing/agent-storage-contract.d.ts.map +1 -1
  699. package/dist/testing/ai-model-call-groups-contract.d.ts.map +1 -1
  700. package/dist/testing/dataset-sequence-contract.d.ts +4 -0
  701. package/dist/testing/dataset-sequence-contract.d.ts.map +1 -0
  702. package/dist/testing/effective-storage-contract.d.ts.map +1 -1
  703. package/dist/testing/execution-storage-contract.d.ts +4 -0
  704. package/dist/testing/execution-storage-contract.d.ts.map +1 -1
  705. package/dist/testing/execution.d.ts +1 -0
  706. package/dist/testing/execution.d.ts.map +1 -1
  707. package/dist/testing/index.d.ts +3 -0
  708. package/dist/testing/index.d.ts.map +1 -1
  709. package/dist/testing/index.js +3087 -1328
  710. package/dist/testing/index.js.map +17 -13
  711. package/dist/testing/lake-merge-storage-contract.d.ts +1 -0
  712. package/dist/testing/lake-merge-storage-contract.d.ts.map +1 -1
  713. package/dist/testing/lake-storage-contract.d.ts.map +1 -1
  714. package/dist/testing/object-read-scope-contract.d.ts +22 -0
  715. package/dist/testing/object-read-scope-contract.d.ts.map +1 -0
  716. package/dist/testing/share-grant-storage-contract.d.ts +10 -0
  717. package/dist/testing/share-grant-storage-contract.d.ts.map +1 -0
  718. package/dist/testing/share-session-storage-contract.d.ts +9 -0
  719. package/dist/testing/share-session-storage-contract.d.ts.map +1 -0
  720. package/dist/testing/workflow-execution.d.ts +1 -0
  721. package/dist/testing/workflow-execution.d.ts.map +1 -1
  722. package/dist/webhooks/internal.js +51 -56
  723. package/dist/webhooks/internal.js.map +2 -2
  724. package/dist/workers/index.js +11 -13
  725. package/dist/workers/index.js.map +2 -2
  726. package/dist/workflows/execution.d.ts.map +1 -1
  727. package/dist/workflows/failure.d.ts +2 -0
  728. package/dist/workflows/failure.d.ts.map +1 -1
  729. package/dist/workflows/index.js +135 -140
  730. package/dist/workflows/index.js.map +1 -1
  731. package/dist/workflows/request.d.ts.map +1 -1
  732. package/dist/workflows/run-dispatch.d.ts +0 -1
  733. package/dist/workflows/run-dispatch.d.ts.map +1 -1
  734. package/dist/workflows/types.d.ts +2 -0
  735. package/dist/workflows/types.d.ts.map +1 -1
  736. package/package.json +72 -30
  737. package/src/actions/delegated-admission.ts +72 -0
  738. package/src/actions/descriptor.ts +58 -0
  739. package/src/actions/execution.ts +99 -24
  740. package/src/actions/request.ts +136 -19
  741. package/src/actions/run-authorization.ts +53 -0
  742. package/src/actions/run-dispatch.ts +10 -7
  743. package/src/actions/types/context.ts +2 -0
  744. package/src/actions/validation.ts +2 -1
  745. package/src/agents/adapters.ts +34 -429
  746. package/src/agents/authority.ts +3 -4
  747. package/src/agents/{context.ts → context/entries.ts} +4 -4
  748. package/src/agents/context/index.ts +15 -0
  749. package/src/agents/context-model.ts +1 -1
  750. package/src/agents/context-resolution.ts +2 -5
  751. package/src/agents/errors.ts +0 -10
  752. package/src/agents/execution.ts +13 -5
  753. package/src/agents/identity.ts +4 -0
  754. package/src/agents/index.ts +5 -24
  755. package/src/agents/message.ts +5 -6
  756. package/src/agents/model-loop.ts +62 -6
  757. package/src/agents/request.ts +27 -29
  758. package/src/agents/streams/index.ts +18 -0
  759. package/src/agents/streams/internal.ts +19 -0
  760. package/src/agents/{streams.ts → streams/protocol.ts} +5 -5
  761. package/src/agents/tool-definition.ts +0 -19
  762. package/src/agents/types.ts +1 -1
  763. package/src/agents/validation.ts +9 -72
  764. package/src/ai-usage/execution.ts +4 -11
  765. package/src/auth/index.ts +0 -1
  766. package/src/authorization/decision.ts +29 -14
  767. package/src/authorization/grant-kinds.ts +10 -0
  768. package/src/authorization/index.ts +1 -0
  769. package/src/bootstrap/discovery.ts +84 -24
  770. package/src/bootstrap/index.ts +8 -1
  771. package/src/bootstrap/ontology-type-manifest.ts +12 -6
  772. package/src/datasets/builders.ts +23 -2
  773. package/src/datasets/changes.ts +16 -4
  774. package/src/datasets/execution.ts +76 -5
  775. package/src/datasets/index.ts +1 -0
  776. package/src/datasets/sequence.ts +77 -0
  777. package/src/datasets/types.ts +1 -0
  778. package/src/datasets/validation.ts +26 -0
  779. package/src/datasets/write.ts +240 -0
  780. package/src/errors/internal.ts +90 -10
  781. package/src/errors/redaction.ts +98 -0
  782. package/src/errors/types.ts +4 -0
  783. package/src/events/execution.ts +57 -7
  784. package/src/events/types/datasets.ts +2 -6
  785. package/src/execution/agent.ts +6 -7
  786. package/src/execution/authorization.ts +470 -90
  787. package/src/execution/authorized-object-reader.ts +695 -0
  788. package/src/execution/durable.ts +21 -3
  789. package/src/execution/index.ts +1 -0
  790. package/src/execution/primitive.ts +5 -1
  791. package/src/execution/request.ts +66 -13
  792. package/src/execution/scopes.ts +36 -6
  793. package/src/execution/types.ts +8 -0
  794. package/src/http/api-routes.ts +45 -0
  795. package/src/index.ts +56 -33
  796. package/src/lake-storage/definition-updates.ts +9 -0
  797. package/src/lake-storage/errors.ts +6 -1
  798. package/src/lake-storage/in-memory.ts +53 -17
  799. package/src/lake-storage/index.ts +10 -1
  800. package/src/lake-storage/merge-validation.ts +12 -2
  801. package/src/lake-storage/merge.ts +40 -2
  802. package/src/lake-storage/source-ordering.ts +95 -0
  803. package/src/lake-storage/sql-transforms.ts +2 -1
  804. package/src/lake-storage/types.ts +10 -5
  805. package/src/lake-storage/version-inputs.ts +14 -0
  806. package/src/logging/index.ts +2 -33
  807. package/src/logging/internal.ts +43 -0
  808. package/src/models/errors.ts +12 -0
  809. package/src/models/execution/binding.ts +29 -0
  810. package/src/models/execution/errors.ts +18 -0
  811. package/src/models/execution/index.ts +26 -0
  812. package/src/models/execution/model-call-accounting.ts +211 -0
  813. package/src/models/execution/model-call-admission.ts +127 -0
  814. package/src/models/execution/model-call-limits.ts +135 -0
  815. package/src/models/execution/model-call-recorder.ts +235 -0
  816. package/src/models/execution/model-call-recovery.ts +125 -0
  817. package/src/models/execution/recovery-queue.ts +31 -0
  818. package/src/models/execution/types.ts +58 -0
  819. package/src/models/execution/usage.ts +23 -0
  820. package/src/models/execution.ts +207 -0
  821. package/src/models/generation-types.ts +50 -0
  822. package/src/models/index.ts +8 -0
  823. package/src/models/language-model.ts +3 -0
  824. package/src/models/output.ts +45 -0
  825. package/src/models/resolve.ts +27 -0
  826. package/src/objects/authorized-ontology-view.ts +512 -0
  827. package/src/objects/execution.ts +99 -144
  828. package/src/objects/link/authorization.ts +3 -2
  829. package/src/objects/query/executor.ts +45 -34
  830. package/src/objects/query/links.ts +84 -25
  831. package/src/objects/query/selected-read-admission.ts +310 -0
  832. package/src/objects/query/validate.ts +353 -36
  833. package/src/objects/sdk/object-handle.ts +2 -8
  834. package/src/objects/sdk/object-set.ts +10 -11
  835. package/src/objects/sdk/runtime-query-executor.ts +8 -28
  836. package/src/objects/sdk/telemetry-channel.ts +11 -7
  837. package/src/objects/service/list-service.ts +15 -29
  838. package/src/objects/telemetry/history.ts +297 -17
  839. package/src/objects/telemetry/index.ts +2 -2
  840. package/src/objects/telemetry/workload.ts +79 -0
  841. package/src/ontology/index.ts +7 -2
  842. package/src/ontology/inference/index.ts +4 -1
  843. package/src/ontology/internal.ts +35 -1
  844. package/src/ontology/json-schema.ts +13 -12
  845. package/src/ontology/link-path-selection.ts +193 -0
  846. package/src/ontology/refs.ts +19 -0
  847. package/src/ontology/tokens.ts +15 -8
  848. package/src/pipelines/execution.ts +30 -7
  849. package/src/pipelines/request.ts +5 -0
  850. package/src/projections/execution.ts +72 -11
  851. package/src/projections/run-dispatch.ts +7 -12
  852. package/src/query.ts +0 -1
  853. package/src/queues/index.ts +4 -2
  854. package/src/queues/types.ts +6 -25
  855. package/src/rules/execution.ts +20 -8
  856. package/src/runtime/create.ts +7 -2
  857. package/src/runtime/definitions.ts +2 -0
  858. package/src/runtime/host.ts +27 -7
  859. package/src/runtime/internal.ts +1 -0
  860. package/src/runtime/resolve-definitions.ts +9 -0
  861. package/src/runtime/sixb.ts +27 -2
  862. package/src/runtime/types.ts +3 -0
  863. package/src/sandboxes/errors.ts +5 -0
  864. package/src/sandboxes/index.ts +3 -0
  865. package/src/sandboxes/sandbox.ts +35 -7
  866. package/src/schedules/execution.ts +24 -2
  867. package/src/security/every.ts +4 -0
  868. package/src/security/grants.ts +45 -3
  869. package/src/security/index.ts +1 -0
  870. package/src/security/registry.ts +3 -0
  871. package/src/security/types.ts +8 -0
  872. package/src/security/validation.ts +3 -0
  873. package/src/shares/access-plan.ts +225 -0
  874. package/src/shares/builders.ts +381 -0
  875. package/src/shares/compiler.ts +359 -0
  876. package/src/shares/errors.ts +3 -0
  877. package/src/shares/execution.ts +394 -0
  878. package/src/shares/index.ts +28 -0
  879. package/src/shares/internal.ts +9 -0
  880. package/src/shares/intersection.ts +178 -0
  881. package/src/shares/session-protocol.ts +258 -0
  882. package/src/shares/types.ts +76 -0
  883. package/src/shares/validation.ts +40 -0
  884. package/src/storage/agents/in-memory.ts +0 -3
  885. package/src/storage/agents/types.ts +0 -3
  886. package/src/storage/ai-cost/analytics.ts +1 -1
  887. package/src/storage/ai-cost/attribution.ts +15 -0
  888. package/src/storage/ai-cost/groups.ts +5 -1
  889. package/src/storage/ai-cost/provider.ts +1 -0
  890. package/src/storage/ai-cost/types.ts +7 -0
  891. package/src/storage/auth/in-memory.ts +1 -1
  892. package/src/storage/executions/in-memory.ts +13 -10
  893. package/src/storage/executions/provider.ts +34 -1
  894. package/src/storage/executions/run-link.ts +29 -0
  895. package/src/storage/executions/types.ts +6 -2
  896. package/src/storage/executions/validation.ts +78 -1
  897. package/src/storage/in-memory/index.ts +37 -3
  898. package/src/storage/index.ts +54 -29
  899. package/src/storage/internal.ts +20 -0
  900. package/src/storage/objects/execution-limits.ts +283 -0
  901. package/src/storage/objects/guard.ts +55 -0
  902. package/src/storage/objects/in-memory/index.ts +2 -0
  903. package/src/storage/objects/in-memory/keys.ts +46 -0
  904. package/src/storage/objects/in-memory/query.ts +754 -0
  905. package/src/storage/objects/in-memory/read-scope.ts +211 -0
  906. package/src/storage/objects/in-memory/read-source.ts +10 -0
  907. package/src/storage/objects/in-memory/selected-reader.ts +252 -0
  908. package/src/storage/objects/in-memory/storage.ts +589 -0
  909. package/src/storage/objects/index.ts +21 -0
  910. package/src/storage/objects/keys.ts +1 -1
  911. package/src/storage/objects/read-scope.ts +672 -0
  912. package/src/storage/objects/types.ts +123 -19
  913. package/src/storage/operation-scope.ts +16 -0
  914. package/src/storage/share-grants/errors.ts +14 -0
  915. package/src/storage/share-grants/in-memory.ts +107 -0
  916. package/src/storage/share-grants/index.ts +14 -0
  917. package/src/storage/share-grants/provider.ts +11 -0
  918. package/src/storage/share-grants/record.ts +347 -0
  919. package/src/storage/share-grants/types.ts +112 -0
  920. package/src/storage/share-sessions/errors.ts +14 -0
  921. package/src/storage/share-sessions/in-memory.ts +105 -0
  922. package/src/storage/share-sessions/index.ts +11 -0
  923. package/src/storage/share-sessions/provider.ts +9 -0
  924. package/src/storage/share-sessions/record.ts +176 -0
  925. package/src/storage/share-sessions/types.ts +57 -0
  926. package/src/storage/transaction.ts +14 -2
  927. package/src/storage/types.ts +27 -0
  928. package/src/storage/workflow-runs/in-memory.ts +0 -2
  929. package/src/storage/workflow-runs/types.ts +0 -3
  930. package/src/syncs/execution.ts +25 -5
  931. package/src/syncs/request.ts +5 -0
  932. package/src/testing/action-execution.ts +9 -2
  933. package/src/testing/agent-execution.ts +3 -0
  934. package/src/testing/agent-storage-contract.ts +0 -5
  935. package/src/testing/ai-model-call-groups-contract.ts +74 -2
  936. package/src/testing/dataset-sequence-contract.ts +373 -0
  937. package/src/testing/effective-storage-contract.ts +34 -0
  938. package/src/testing/execution-storage-contract.ts +138 -1
  939. package/src/testing/execution.ts +6 -0
  940. package/src/testing/index.ts +16 -0
  941. package/src/testing/lake-merge-storage-contract.ts +3 -0
  942. package/src/testing/lake-storage-contract.ts +58 -0
  943. package/src/testing/object-read-scope-contract.ts +939 -0
  944. package/src/testing/share-grant-storage-contract.ts +325 -0
  945. package/src/testing/share-session-storage-contract.ts +235 -0
  946. package/src/testing/workflow-execution.ts +4 -0
  947. package/src/workflows/execution.ts +53 -14
  948. package/src/workflows/failure.ts +62 -1
  949. package/src/workflows/request.ts +5 -9
  950. package/src/workflows/run-dispatch.ts +0 -3
  951. package/src/workflows/types.ts +2 -0
  952. package/src/workflows/validation.ts +1 -1
  953. package/dist/agents/context.d.ts.map +0 -1
  954. package/dist/agents/context.js +0 -23
  955. package/dist/agents/streams.d.ts.map +0 -1
  956. package/dist/agents/streams.js +0 -55
  957. package/dist/chunk-08m3b6w8.js +0 -32
  958. package/dist/chunk-08twe8m6.js +0 -218
  959. package/dist/chunk-2b5qtban.js.map +0 -14
  960. package/dist/chunk-2xns679x.js.map +0 -11
  961. package/dist/chunk-37wk412q.js +0 -1370
  962. package/dist/chunk-37wk412q.js.map +0 -23
  963. package/dist/chunk-3fqt22c4.js.map +0 -14
  964. package/dist/chunk-3kv70xwp.js.map +0 -10
  965. package/dist/chunk-407j3msh.js +0 -60
  966. package/dist/chunk-64sr682n.js.map +0 -12
  967. package/dist/chunk-6ed5bwnd.js.map +0 -57
  968. package/dist/chunk-7ds9620f.js.map +0 -10
  969. package/dist/chunk-7y0f6rf1.js.map +0 -10
  970. package/dist/chunk-atmkaf60.js.map +0 -11
  971. package/dist/chunk-c15dr03f.js +0 -43
  972. package/dist/chunk-d8qkxt2v.js.map +0 -10
  973. package/dist/chunk-dqn23610.js +0 -72
  974. package/dist/chunk-dqn23610.js.map +0 -11
  975. package/dist/chunk-e4rvtvpw.js.map +0 -34
  976. package/dist/chunk-gbrpsx4m.js.map +0 -11
  977. package/dist/chunk-h0knpbz5.js +0 -2486
  978. package/dist/chunk-h0knpbz5.js.map +0 -38
  979. package/dist/chunk-hdz94br2.js.map +0 -10
  980. package/dist/chunk-jq43kdvk.js +0 -50
  981. package/dist/chunk-n2arzn6e.js +0 -1745
  982. package/dist/chunk-n2arzn6e.js.map +0 -20
  983. package/dist/chunk-p03r0h5s.js.map +0 -16
  984. package/dist/chunk-qjzp9xyb.js.map +0 -12
  985. package/dist/chunk-tn7xcs2n.js.map +0 -13
  986. package/dist/chunk-wjgm6jjt.js.map +0 -13
  987. package/dist/chunk-xc7hq65b.js.map +0 -10
  988. package/dist/chunk-y35ma3mj.js +0 -551
  989. package/dist/chunk-y35ma3mj.js.map +0 -15
  990. package/dist/chunk-y64skrwp.js +0 -19
  991. package/dist/chunk-z2sery1b.js.map +0 -11
  992. package/dist/chunk-zcnhxkvd.js +0 -7
  993. package/dist/logging/types.js +0 -27
  994. package/dist/logging/types.js.map +0 -9
  995. package/dist/storage/objects/in-memory.d.ts.map +0 -1
  996. package/src/storage/objects/in-memory.ts +0 -1241
  997. /package/dist/{chunk-zqqz8052.js → chunk-7n30ybym.js} +0 -0
  998. /package/dist/{chunk-zqqz8052.js.map → chunk-7n30ybym.js.map} +0 -0
  999. /package/dist/{chunk-4a849fr1.js.map → chunk-9tc8dxmn.js.map} +0 -0
@@ -1,34 +1,35 @@
1
1
  // @bun
2
2
  import {
3
- ObjectQueryExecutionError,
4
- ObjectQueryPlanningError,
5
- ObjectQueryValidationError,
6
- normalizeObjectQuery
7
- } from "./chunk-rte5sm3z.js";
3
+ MAX_OBJECT_READ_FACETS2,
4
+ isAllowed2,
5
+ assertAuthorized2
6
+ } from "./chunk-dz5h08xv.js";
8
7
  import {
8
+ validateSchemaValue2,
9
+ validatePropertyValue2
10
+ } from "./chunk-ms2tmn1k.js";
11
+ import {
12
+ objectBatchKey2,
13
+ linkBatchKey2,
14
+ objectLinkCursor2,
9
15
  compareQueryScalarValues,
10
- linkBatchKey,
11
- objectBatchKey,
12
- objectLinkCursor,
13
16
  queryScalarValuesEqual
14
- } from "./chunk-6ed5bwnd.js";
15
- import {
16
- assertAuthorized,
17
- isAllowed
18
- } from "./chunk-37wk412q.js";
19
- import {
20
- validatePropertyValue,
21
- validateSchemaValue
22
- } from "./chunk-d63tybny.js";
17
+ } from "./chunk-mjbk2djy.js";
23
18
  import {
24
- normalizeDecimalValue
25
- } from "./chunk-04b07a9q.js";
19
+ ObjectQueryValidationError2,
20
+ ObjectQueryPlanningError2,
21
+ ObjectQueryExecutionError2,
22
+ normalizeObjectQuery2
23
+ } from "./chunk-5hz0fnca.js";
26
24
  import {
27
25
  formatUnknownObjectTypeMessage
28
- } from "./chunk-dktq02ne.js";
26
+ } from "./chunk-cqr3acm1.js";
29
27
  import {
30
- stableJsonStringify
31
- } from "./chunk-n6jxh8sw.js";
28
+ normalizeDecimalValue2
29
+ } from "./chunk-3bh94gbw.js";
30
+ import {
31
+ stableJsonStringify2
32
+ } from "./chunk-wy0qdqfm.js";
32
33
  // src/objects/query/planner.ts
33
34
  var DEFAULT_MAX_FALLBACK_ROWS = 1000;
34
35
  var fallbackNodeKinds = new Set([
@@ -41,7 +42,7 @@ var fallbackNodeKinds = new Set([
41
42
  "project",
42
43
  "expand"
43
44
  ]);
44
- function planObjectQuery(query, options) {
45
+ function planObjectQuery2(query, options) {
45
46
  const operation = options.operation ?? "queryObjects";
46
47
  const providerIssues = collectProviderIssues(query, options.capabilities, {
47
48
  operation,
@@ -88,8 +89,8 @@ function collectProviderIssues(query, capabilities, options) {
88
89
  function collectOperationProviderIssues(capabilities, options, issues) {
89
90
  const enabled = options.operation === "queryObjects" ? capabilities.queryObjects === true : options.operation === "countObjects" ? capabilities.countObjects === true : options.operation === "existsObjects" ? capabilities.existsObjects === true : capabilities.facetObjects === true;
90
91
  if (!enabled) {
91
- const code2 = `${operationIssuePrefix(options.operation)}_not_enabled`;
92
- addIssue(issues, "$", code2, `Object storage capabilities do not enable ${options.operation} pushdown`);
92
+ const code = `${operationIssuePrefix(options.operation)}_not_enabled`;
93
+ addIssue(issues, "$", code, `Object storage capabilities do not enable ${options.operation} pushdown`);
93
94
  }
94
95
  if (options.hasImplementation)
95
96
  return;
@@ -330,29 +331,53 @@ function addIssue(issues, path, code, message) {
330
331
  var DEFAULT_MAX_LIMIT = 1000;
331
332
  var DEFAULT_MAX_PAGE_SIZE = 1000;
332
333
  var DEFAULT_MAX_REFS = 1000;
333
- function validateObjectQuery(query, options) {
334
- const normalized = options.normalize === false ? query : normalizeObjectQuery(query);
335
- const ctx = createValidationContext(options);
334
+ var NOOP_ADMISSION_STATE = Object.freeze({});
335
+ var NOOP_QUERY_ADMISSION = Object.freeze({
336
+ empty: () => NOOP_ADMISSION_STATE,
337
+ source: () => ({ state: NOOP_ADMISSION_STATE }),
338
+ property: () => {
339
+ return;
340
+ },
341
+ edge: (input) => ({
342
+ state: input.state
343
+ }),
344
+ set: (input) => input.states[0] ?? NOOP_ADMISSION_STATE
345
+ });
346
+ function validateObjectQuery2(query, options) {
347
+ const admitted = validateObjectQueryWithAdmission(query, options, NOOP_QUERY_ADMISSION);
348
+ return {
349
+ query: admitted.query,
350
+ result: admitted.result,
351
+ touchedObjectTypeIds: admitted.touchedObjectTypeIds
352
+ };
353
+ }
354
+ function validateObjectQueryWithAdmission(query, options, admission) {
355
+ const normalized = options.normalize === false ? query : normalizeObjectQuery2(query);
356
+ const ctx = createValidationContext(options, admission);
336
357
  const validation = validateQueryNode(normalized, "$", ctx);
337
358
  if (ctx.issues.length > 0) {
338
- throw new ObjectQueryValidationError(ctx.issues);
359
+ throw new ObjectQueryValidationError2(ctx.issues);
339
360
  }
361
+ const denial = ctx.admissionDenials[0];
362
+ if (denial)
363
+ throw denial;
340
364
  return {
341
365
  query: validation.query,
342
366
  result: validation.result,
343
- touchedObjectTypeIds: [...ctx.touchedObjectTypeIds]
367
+ touchedObjectTypeIds: [...ctx.touchedObjectTypeIds],
368
+ admissionState: validation.admissionState
344
369
  };
345
370
  }
346
- function collectObjectQueryValidationIssues(query, options) {
347
- const normalized = options.normalize === false ? query : normalizeObjectQuery(query);
348
- const ctx = createValidationContext(options);
371
+ function collectObjectQueryValidationIssues2(query, options) {
372
+ const normalized = options.normalize === false ? query : normalizeObjectQuery2(query);
373
+ const ctx = createValidationContext(options, NOOP_QUERY_ADMISSION);
349
374
  validateQueryNode(normalized, "$", ctx);
350
375
  return ctx.issues;
351
376
  }
352
- function resolveObjectQueryResultShape(query, options) {
353
- return validateObjectQuery(query, options).result;
377
+ function resolveObjectQueryResultShape2(query, options) {
378
+ return validateObjectQuery2(query, options).result;
354
379
  }
355
- function createValidationContext(options) {
380
+ function createValidationContext(options, admission) {
356
381
  return {
357
382
  ontology: options.ontology,
358
383
  valueTypesById: options.ontology.getValueTypesById(),
@@ -360,7 +385,9 @@ function createValidationContext(options) {
360
385
  maxPageSize: options.maxPageSize ?? DEFAULT_MAX_PAGE_SIZE,
361
386
  maxRefs: options.maxRefs ?? DEFAULT_MAX_REFS,
362
387
  issues: [],
363
- touchedObjectTypeIds: new Set
388
+ touchedObjectTypeIds: new Set,
389
+ admission,
390
+ admissionDenials: []
364
391
  };
365
392
  }
366
393
  function validateQueryNode(query, path, ctx) {
@@ -372,18 +399,42 @@ function validateQueryNode(query, path, ctx) {
372
399
  }
373
400
  function dispatchQueryNode(query, path, ctx) {
374
401
  switch (query.kind) {
375
- case "start":
376
- return validateStart(query.objectTypeId, query.includeSubtypes, path, ctx);
377
- case "refs":
378
- return validateRefs(query.refs, path, ctx);
402
+ case "start": {
403
+ const validation = validateStart(query.objectTypeId, query.includeSubtypes, path, ctx);
404
+ return {
405
+ ...validation,
406
+ admissionState: admitTransition(ctx, ctx.admission.source({
407
+ kind: "start",
408
+ result: validation.result,
409
+ objectTypeId: query.objectTypeId,
410
+ path
411
+ }))
412
+ };
413
+ }
414
+ case "refs": {
415
+ const validation = validateRefs(query.refs, path, ctx);
416
+ return {
417
+ ...validation,
418
+ admissionState: admitTransition(ctx, ctx.admission.source({
419
+ kind: "refs",
420
+ result: validation.result,
421
+ refs: validation.query.kind === "refs" ? validation.query.refs : query.refs,
422
+ path
423
+ }))
424
+ };
425
+ }
379
426
  case "filter": {
380
427
  const input = validateQueryNode(query.input, `${path}.input`, ctx);
381
- const predicate = validatePredicate(query.predicate, input.result, `${path}.predicate`, ctx);
382
- return { result: input.result, query: { ...query, input: input.query, predicate } };
428
+ const predicate = validatePredicate(query.predicate, input.result, input.admissionState, `${path}.predicate`, ctx);
429
+ return {
430
+ result: input.result,
431
+ query: { ...query, input: input.query, predicate },
432
+ admissionState: input.admissionState
433
+ };
383
434
  }
384
435
  case "text": {
385
436
  const input = validateQueryNode(query.input, `${path}.input`, ctx);
386
- const textFields = validateTextQuery(query.query, query.fields, input.result, path, ctx);
437
+ const textFields = validateTextQuery(query.query, query.fields, input.result, input.admissionState, path, ctx);
387
438
  return {
388
439
  result: input.result,
389
440
  query: {
@@ -391,47 +442,82 @@ function dispatchQueryNode(query, path, ctx) {
391
442
  input: input.query,
392
443
  fields: query.fields,
393
444
  fieldsByObjectType: query.fields ? undefined : textFields.fieldsByObjectType
394
- }
445
+ },
446
+ admissionState: input.admissionState
395
447
  };
396
448
  }
397
449
  case "vector": {
398
450
  const input = validateQueryNode(query.input, `${path}.input`, ctx);
399
- validateVectorQuery(query.vector, query.propertyId, query.k, input.result, path, ctx);
400
- return { result: input.result, query: { ...query, input: input.query } };
451
+ validateVectorQuery(query.vector, query.propertyId, query.k, input.result, input.admissionState, path, ctx);
452
+ return {
453
+ result: input.result,
454
+ query: { ...query, input: input.query },
455
+ admissionState: input.admissionState
456
+ };
401
457
  }
402
458
  case "traverse": {
403
459
  const input = validateQueryNode(query.input, `${path}.input`, ctx);
460
+ const result = validateTraverse(query.linkId, query.direction, query.sourceObjectTypeId, input.result, path, ctx);
404
461
  return {
405
- result: validateTraverse(query.linkId, query.direction, query.sourceObjectTypeId, input.result, path, ctx),
406
- query: { ...query, input: input.query }
462
+ result,
463
+ query: { ...query, input: input.query },
464
+ admissionState: admitTransition(ctx, ctx.admission.edge({
465
+ state: input.admissionState,
466
+ result,
467
+ linkId: query.linkId,
468
+ direction: query.direction,
469
+ sourceObjectTypeId: query.sourceObjectTypeId,
470
+ use: "traverse",
471
+ path
472
+ }))
407
473
  };
408
474
  }
409
475
  case "set":
410
476
  return validateSet(query.inputs, query.op, path, ctx);
411
477
  case "sort": {
412
478
  const input = validateQueryNode(query.input, `${path}.input`, ctx);
413
- const fields = validateSortFields(query.fields, input.result, path, ctx);
414
- return { result: input.result, query: { ...query, input: input.query, fields } };
479
+ const fields = validateSortFields(query.fields, input.result, input.admissionState, "sort", path, ctx);
480
+ return {
481
+ result: input.result,
482
+ query: { ...query, input: input.query, fields },
483
+ admissionState: input.admissionState
484
+ };
415
485
  }
416
486
  case "limit": {
417
487
  const input = validateQueryNode(query.input, `${path}.input`, ctx);
418
488
  validateLimit(query.limit, path, ctx);
419
- return { result: input.result, query: { ...query, input: input.query } };
489
+ return {
490
+ result: input.result,
491
+ query: { ...query, input: input.query },
492
+ admissionState: input.admissionState
493
+ };
420
494
  }
421
495
  case "page": {
422
496
  const input = validateQueryNode(query.input, `${path}.input`, ctx);
423
497
  validatePage(query.pageSize, query.pageToken, path, ctx);
424
- return { result: input.result, query: { ...query, input: input.query } };
498
+ return {
499
+ result: input.result,
500
+ query: { ...query, input: input.query },
501
+ admissionState: input.admissionState
502
+ };
425
503
  }
426
504
  case "project": {
427
505
  const input = validateQueryNode(query.input, `${path}.input`, ctx);
428
- validateProjection(query.properties, input.result, path, ctx);
429
- return { result: input.result, query: { ...query, input: input.query } };
506
+ validateProjection(query.properties, input.result, input.admissionState, path, ctx);
507
+ return {
508
+ result: input.result,
509
+ query: { ...query, input: input.query },
510
+ admissionState: input.admissionState
511
+ };
430
512
  }
431
513
  case "expand": {
432
514
  const input = validateQueryNode(query.input, `${path}.input`, ctx);
433
- const expansions = validateExpansions(query.expansions, input.result, `${path}.expansions`, ctx);
434
- return { result: input.result, query: { ...query, input: input.query, expansions } };
515
+ const expansions = validateExpansions(query.expansions, input.result, input.admissionState, `${path}.expansions`, ctx);
516
+ return {
517
+ result: input.result,
518
+ query: { ...query, input: input.query, expansions },
519
+ admissionState: input.admissionState
520
+ };
435
521
  }
436
522
  }
437
523
  }
@@ -473,7 +559,7 @@ function validateStart(objectTypeId, includeSubtypes, path, ctx) {
473
559
  const objectTypeIds = includeSubtypes ? uniqueStrings([objectTypeId, ...ctx.ontology.listSubTypes(objectTypeId)]) : [objectTypeId];
474
560
  return { result: { objectTypeIds }, query: { kind: "start", objectTypeId, includeSubtypes } };
475
561
  }
476
- function validatePredicate(predicate, shape, path, ctx) {
562
+ function validatePredicate(predicate, shape, admissionState, path, ctx) {
477
563
  switch (predicate.op) {
478
564
  case "and":
479
565
  case "or":
@@ -482,12 +568,12 @@ function validatePredicate(predicate, shape, path, ctx) {
482
568
  }
483
569
  return {
484
570
  ...predicate,
485
- items: predicate.items.map((item, index) => validatePredicate(item, shape, `${path}.items[${index}]`, ctx))
571
+ items: predicate.items.map((item, index) => validatePredicate(item, shape, admissionState, `${path}.items[${index}]`, ctx))
486
572
  };
487
573
  case "not":
488
574
  return {
489
575
  ...predicate,
490
- item: validatePredicate(predicate.item, shape, `${path}.item`, ctx)
576
+ item: validatePredicate(predicate.item, shape, admissionState, `${path}.item`, ctx)
491
577
  };
492
578
  case "eq":
493
579
  case "neq":
@@ -498,6 +584,12 @@ function validatePredicate(predicate, shape, path, ctx) {
498
584
  const { scalarKind: _authoredScalarKind, ...authoredPredicate } = predicate;
499
585
  const scalarKind = resolveAndValidatePredicateProperty(predicate.propertyId, predicate.op, shape, path, ctx);
500
586
  validatePredicateValue(predicate.propertyId, predicate.value, shape, path, ctx);
587
+ admitProperty(ctx, {
588
+ state: admissionState,
589
+ propertyId: predicate.propertyId,
590
+ use: "filter",
591
+ path
592
+ });
501
593
  return {
502
594
  ...authoredPredicate,
503
595
  value: normalizeObjectQueryValue(predicate.value, scalarKind),
@@ -513,6 +605,12 @@ function validatePredicate(predicate, shape, path, ctx) {
513
605
  predicate.values.forEach((value, index) => {
514
606
  validatePredicateValue(predicate.propertyId, value, shape, `${path}.values[${index}]`, ctx);
515
607
  });
608
+ admitProperty(ctx, {
609
+ state: admissionState,
610
+ propertyId: predicate.propertyId,
611
+ use: "filter",
612
+ path
613
+ });
516
614
  return {
517
615
  ...authoredPredicate,
518
616
  values: predicate.values.map((value) => normalizeObjectQueryValue(value, scalarKind)),
@@ -521,6 +619,12 @@ function validatePredicate(predicate, shape, path, ctx) {
521
619
  }
522
620
  case "exists":
523
621
  resolveAndValidatePredicateProperty(predicate.propertyId, predicate.op, shape, path, ctx);
622
+ admitProperty(ctx, {
623
+ state: admissionState,
624
+ propertyId: predicate.propertyId,
625
+ use: "filter",
626
+ path
627
+ });
524
628
  if (typeof predicate.value !== "boolean") {
525
629
  addIssue2(ctx, path, "invalid_exists_value", "Predicate 'exists' value must be boolean");
526
630
  }
@@ -528,6 +632,12 @@ function validatePredicate(predicate, shape, path, ctx) {
528
632
  case "contains":
529
633
  resolveAndValidatePredicateProperty(predicate.propertyId, predicate.op, shape, path, ctx);
530
634
  validateContainsValue(predicate.propertyId, predicate.value, shape, path, ctx);
635
+ admitProperty(ctx, {
636
+ state: admissionState,
637
+ propertyId: predicate.propertyId,
638
+ use: "filter",
639
+ path
640
+ });
531
641
  return predicate;
532
642
  }
533
643
  }
@@ -567,7 +677,7 @@ function normalizeObjectQueryValue(value, scalarKind) {
567
677
  if (scalarKind !== "decimal" || typeof value !== "string")
568
678
  return value;
569
679
  try {
570
- return normalizeDecimalValue(value);
680
+ return normalizeDecimalValue2(value);
571
681
  } catch {
572
682
  return value;
573
683
  }
@@ -595,7 +705,7 @@ function validatePredicateValue(propertyId, value, shape, path, ctx) {
595
705
  reportMissing: false
596
706
  })) {
597
707
  try {
598
- validatePropertyValue(property, value, `${objectType.id}.${property.id}`, ctx.valueTypesById);
708
+ validatePropertyValue2(property, value, `${objectType.id}.${property.id}`, ctx.valueTypesById);
599
709
  } catch (error) {
600
710
  addIssue2(ctx, path, "invalid_predicate_value", error instanceof Error ? error.message : `Invalid value for property '${property.id}' on '${objectType.id}'`);
601
711
  }
@@ -618,7 +728,7 @@ function validateContainsValue(propertyId, value, shape, path, ctx) {
618
728
  }
619
729
  if (schema.type === "array") {
620
730
  try {
621
- validateSchemaValue(schema.items, value, `${objectType.id}.${property.id}[]`, ctx.valueTypesById);
731
+ validateSchemaValue2(schema.items, value, `${objectType.id}.${property.id}[]`, ctx.valueTypesById);
622
732
  } catch (error) {
623
733
  addIssue2(ctx, path, "invalid_contains_value", error instanceof Error ? error.message : `Invalid contains value for '${objectType.id}.${property.id}'`);
624
734
  }
@@ -629,7 +739,7 @@ function validateContainsValue(propertyId, value, shape, path, ctx) {
629
739
  }
630
740
  }
631
741
  }
632
- function validateTextQuery(query, fields, shape, path, ctx) {
742
+ function validateTextQuery(query, fields, shape, admissionState, path, ctx) {
633
743
  if (query.trim().length === 0) {
634
744
  addIssue2(ctx, path, "empty_text_query", "Text query must not be empty");
635
745
  }
@@ -643,6 +753,13 @@ function validateTextQuery(query, fields, shape, path, ctx) {
643
753
  if (fieldsByObjectType)
644
754
  fieldsByObjectType[objectType.id] = uniqueStrings(fieldIds);
645
755
  for (const fieldId of fieldIds) {
756
+ admitProperty(ctx, {
757
+ state: admissionState,
758
+ propertyId: fieldId,
759
+ objectTypeId: objectType.id,
760
+ use: "text",
761
+ path: `${path}.fields`
762
+ });
646
763
  const property = getProperty(objectType, fieldId);
647
764
  if (!property) {
648
765
  addIssue2(ctx, path, "unknown_text_field", `Text query references unknown property '${fieldId}' on '${objectType.id}'`);
@@ -658,7 +775,7 @@ function validateTextQuery(query, fields, shape, path, ctx) {
658
775
  }
659
776
  return fieldsByObjectType ? { fieldsByObjectType } : {};
660
777
  }
661
- function validateVectorQuery(vector, propertyId, k, shape, path, ctx) {
778
+ function validateVectorQuery(vector, propertyId, k, shape, admissionState, path, ctx) {
662
779
  if (!Number.isInteger(k) || k <= 0) {
663
780
  addIssue2(ctx, path, "invalid_vector_k", "Vector query k must be a positive integer");
664
781
  }
@@ -669,6 +786,13 @@ function validateVectorQuery(vector, propertyId, k, shape, path, ctx) {
669
786
  addIssue2(ctx, path, "invalid_vector_value", "Vector query vector values must be finite numbers");
670
787
  }
671
788
  for (const objectType of getObjectTypesForResult(shape, ctx)) {
789
+ admitProperty(ctx, {
790
+ state: admissionState,
791
+ propertyId,
792
+ objectTypeId: objectType.id,
793
+ use: "vector",
794
+ path
795
+ });
672
796
  const property = getProperty(objectType, propertyId);
673
797
  if (!property) {
674
798
  addIssue2(ctx, path, "unknown_vector_property", `Vector query references unknown property '${propertyId}' on '${objectType.id}'`);
@@ -749,21 +873,30 @@ function validateIncomingTraverse(linkId, sourceObjectTypeId, shape, path, ctx)
749
873
  }
750
874
  return { objectTypeIds: uniqueStrings(sourceTypeIds) };
751
875
  }
752
- function validateExpansions(expansions, shape, path, ctx) {
753
- return expansions.map((expansion, index) => validateExpansion(expansion, shape, `${path}[${index}]`, ctx));
876
+ function validateExpansions(expansions, shape, admissionState, path, ctx) {
877
+ return expansions.map((expansion, index) => validateExpansion(expansion, shape, admissionState, `${path}[${index}]`, ctx));
754
878
  }
755
- function validateExpansion(expansion, shape, path, ctx) {
879
+ function validateExpansion(expansion, shape, admissionState, path, ctx) {
756
880
  if (!expansion.linkId) {
757
881
  addIssue2(ctx, path, "missing_expand_link", "expand.linkId is required");
758
882
  return expansion;
759
883
  }
760
884
  const targetShape = expansion.direction === "incoming" ? resolveIncomingExpansionTargets(expansion.linkId, expansion.sourceObjectTypeId, shape, path, ctx) : resolveOutgoingExpansionTargets(expansion.linkId, expansion.sourceObjectTypeId, shape, path, ctx);
885
+ const targetAdmissionState = admitTransition(ctx, ctx.admission.edge({
886
+ state: admissionState,
887
+ result: targetShape,
888
+ linkId: expansion.linkId,
889
+ direction: expansion.direction,
890
+ sourceObjectTypeId: expansion.sourceObjectTypeId,
891
+ use: "expand",
892
+ path
893
+ }));
761
894
  for (const targetTypeId of targetShape.objectTypeIds) {
762
895
  ctx.touchedObjectTypeIds.add(targetTypeId);
763
896
  }
764
897
  validateExpansionLimit(expansion.limit, path, ctx);
765
- const orderBy = expansion.orderBy ? validateSortFields(expansion.orderBy, targetShape, `${path}.orderBy`, ctx) : undefined;
766
- const expand = expansion.expand ? validateExpansions(expansion.expand, targetShape, `${path}.expand`, ctx) : undefined;
898
+ const orderBy = expansion.orderBy ? validateSortFields(expansion.orderBy, targetShape, targetAdmissionState, "expand.orderBy", `${path}.orderBy`, ctx) : undefined;
899
+ const expand = expansion.expand ? validateExpansions(expansion.expand, targetShape, targetAdmissionState, `${path}.expand`, ctx) : undefined;
767
900
  return { ...expansion, orderBy, expand };
768
901
  }
769
902
  function resolveOutgoingExpansionTargets(linkId, sourceObjectTypeId, shape, path, ctx) {
@@ -833,7 +966,11 @@ function validateExpansionLimit(limit, path, ctx) {
833
966
  function validateSet(inputs, op, path, ctx) {
834
967
  if (inputs.length === 0) {
835
968
  addIssue2(ctx, path, "empty_set", `Set operation '${op}' must include at least one input`);
836
- return { result: { objectTypeIds: [] }, query: { kind: "set", op, inputs } };
969
+ return {
970
+ result: { objectTypeIds: [] },
971
+ query: { kind: "set", op, inputs },
972
+ admissionState: ctx.admission.empty()
973
+ };
837
974
  }
838
975
  const results = inputs.map((input, index) => validateQueryNode(input, `${path}.inputs[${index}]`, ctx));
839
976
  const first = results[0]?.result ?? { objectTypeIds: [] };
@@ -845,10 +982,15 @@ function validateSet(inputs, op, path, ctx) {
845
982
  });
846
983
  return {
847
984
  result: first,
848
- query: { kind: "set", op, inputs: results.map((result) => result.query) }
985
+ query: { kind: "set", op, inputs: results.map((result) => result.query) },
986
+ admissionState: ctx.admission.set({
987
+ op,
988
+ states: results.map((result) => result.admissionState),
989
+ path
990
+ })
849
991
  };
850
992
  }
851
- function validateSortFields(fields, shape, path, ctx) {
993
+ function validateSortFields(fields, shape, admissionState, use, path, ctx) {
852
994
  if (fields.length === 0) {
853
995
  addIssue2(ctx, path, "empty_sort", "Sort must include at least one field");
854
996
  return [];
@@ -865,6 +1007,12 @@ function validateSortFields(fields, shape, path, ctx) {
865
1007
  seen.add(key);
866
1008
  if (field.kind === "relevance")
867
1009
  return field;
1010
+ admitProperty(ctx, {
1011
+ state: admissionState,
1012
+ propertyId: field.propertyId,
1013
+ use,
1014
+ path: `${path}.fields[${index}]`
1015
+ });
868
1016
  const { scalarKind: _authoredScalarKind, ...authoredField } = field;
869
1017
  const schemas = [];
870
1018
  for (const { objectType, property } of getPropertiesForResult(field.propertyId, shape, `${path}.fields[${index}]`, ctx)) {
@@ -900,7 +1048,7 @@ function validatePage(pageSize, pageToken, path, ctx) {
900
1048
  addIssue2(ctx, path, "empty_page_token", "pageToken must not be empty when provided");
901
1049
  }
902
1050
  }
903
- function validateProjection(properties, shape, path, ctx) {
1051
+ function validateProjection(properties, shape, admissionState, path, ctx) {
904
1052
  if (!properties)
905
1053
  return;
906
1054
  if (properties.length === 0) {
@@ -908,6 +1056,12 @@ function validateProjection(properties, shape, path, ctx) {
908
1056
  }
909
1057
  const seen = new Set;
910
1058
  properties.forEach((propertyId, index) => {
1059
+ admitProperty(ctx, {
1060
+ state: admissionState,
1061
+ propertyId,
1062
+ use: "project",
1063
+ path: `${path}.properties[${index}]`
1064
+ });
911
1065
  if (seen.has(propertyId)) {
912
1066
  addIssue2(ctx, `${path}.properties[${index}]`, "duplicate_projection_property", `Duplicate projected property '${propertyId}'`);
913
1067
  }
@@ -1011,6 +1165,20 @@ function keyForTypeIds(typeIds) {
1011
1165
  function uniqueStrings(values) {
1012
1166
  return [...new Set(values)];
1013
1167
  }
1168
+ function admitTransition(ctx, transition) {
1169
+ if (transition.denial)
1170
+ recordAdmissionDenial(ctx, transition.denial);
1171
+ return transition.state;
1172
+ }
1173
+ function admitProperty(ctx, input) {
1174
+ const denial = ctx.admission.property(input);
1175
+ if (denial)
1176
+ recordAdmissionDenial(ctx, denial);
1177
+ }
1178
+ function recordAdmissionDenial(ctx, denial) {
1179
+ if (ctx.admissionDenials.length === 0)
1180
+ ctx.admissionDenials.push(denial);
1181
+ }
1014
1182
  function addIssue2(ctx, path, code, message) {
1015
1183
  ctx.issues.push({ path, code, message });
1016
1184
  }
@@ -1020,16 +1188,16 @@ var DEFAULT_MAX_FALLBACK_ROWS2 = 1000;
1020
1188
  var DEFAULT_MAX_FACET_LIMIT = 1000;
1021
1189
  var DEFAULT_MAX_EXPANSION_FANOUT = 1000;
1022
1190
  var PAGE_TOKEN_PREFIX = "offset:";
1023
- async function executeObjectQuery(input, options) {
1024
- const normalized = normalizeObjectQuery(input.query);
1025
- const validated = validateObjectQuery(normalized, {
1191
+ async function executeObjectQuery2(input, options) {
1192
+ const normalized = normalizeObjectQuery2(input.query);
1193
+ const validated = validateObjectQuery2(normalized, {
1026
1194
  ontology: options.ontology,
1027
1195
  maxLimit: options.maxLimit,
1028
1196
  maxPageSize: options.maxPageSize,
1029
1197
  maxRefs: options.maxRefs,
1030
1198
  normalize: false
1031
1199
  });
1032
- assertQueryViewable(validated, options);
1200
+ assertQueryViewable(input.projectId, validated, options);
1033
1201
  const capabilities = options.storage.queryCapabilities();
1034
1202
  const hasQueryObjects = typeof options.storage.queryObjects === "function";
1035
1203
  const hasCountObjects = typeof options.storage.countObjects === "function";
@@ -1044,7 +1212,7 @@ async function executeObjectQuery(input, options) {
1044
1212
  maxFallbackRows: options.maxFallbackRows,
1045
1213
  requiresExplicitFallbackBound: options.requiresExplicitFallbackBound
1046
1214
  }, options.maxExpansionFanout);
1047
- const plan = planObjectQuery(plannedQuery, {
1215
+ const plan = planObjectQuery2(plannedQuery, {
1048
1216
  capabilities,
1049
1217
  hasQueryObjects,
1050
1218
  hasCountObjects,
@@ -1055,11 +1223,11 @@ async function executeObjectQuery(input, options) {
1055
1223
  requiresExplicitFallbackBound: options.requiresExplicitFallbackBound
1056
1224
  });
1057
1225
  if (plan.mode === "rejected") {
1058
- throw new ObjectQueryPlanningError(plan.issues);
1226
+ throw new ObjectQueryPlanningError2(plan.issues);
1059
1227
  }
1060
1228
  if (plan.mode === "pushdown") {
1061
1229
  if (!options.storage.queryObjects) {
1062
- throw new ObjectQueryPlanningError(plan.providerIssues);
1230
+ throw new ObjectQueryPlanningError2(plan.providerIssues);
1063
1231
  }
1064
1232
  const result = await options.storage.queryObjects({
1065
1233
  projectId: input.projectId,
@@ -1073,16 +1241,16 @@ async function executeObjectQuery(input, options) {
1073
1241
  });
1074
1242
  return { ...fallback, plan };
1075
1243
  }
1076
- async function countObjects(input, options) {
1077
- const normalized = normalizeObjectQuery(input.query);
1078
- const validated = validateObjectQuery(normalized, {
1244
+ async function countObjects2(input, options) {
1245
+ const normalized = normalizeObjectQuery2(input.query);
1246
+ const validated = validateObjectQuery2(normalized, {
1079
1247
  ontology: options.ontology,
1080
1248
  maxLimit: options.maxLimit,
1081
1249
  maxPageSize: options.maxPageSize,
1082
1250
  maxRefs: options.maxRefs,
1083
1251
  normalize: false
1084
1252
  });
1085
- assertQueryViewable(validated, options);
1253
+ assertQueryViewable(input.projectId, validated, options);
1086
1254
  const capabilities = options.storage.queryCapabilities();
1087
1255
  const hasQueryObjects = typeof options.storage.queryObjects === "function";
1088
1256
  const hasCountObjects = typeof options.storage.countObjects === "function";
@@ -1099,7 +1267,7 @@ async function countObjects(input, options) {
1099
1267
  maxFallbackRows: options.maxFallbackRows,
1100
1268
  requiresExplicitFallbackBound: options.requiresExplicitFallbackBound
1101
1269
  });
1102
- const plan = planObjectQuery(plannedQuery, {
1270
+ const plan = planObjectQuery2(plannedQuery, {
1103
1271
  capabilities,
1104
1272
  operation: "countObjects",
1105
1273
  hasQueryObjects,
@@ -1111,11 +1279,11 @@ async function countObjects(input, options) {
1111
1279
  requiresExplicitFallbackBound: options.requiresExplicitFallbackBound
1112
1280
  });
1113
1281
  if (plan.mode === "rejected") {
1114
- throw new ObjectQueryPlanningError(plan.issues);
1282
+ throw new ObjectQueryPlanningError2(plan.issues);
1115
1283
  }
1116
1284
  if (plan.mode === "pushdown") {
1117
1285
  if (!options.storage.countObjects) {
1118
- throw new ObjectQueryPlanningError(plan.providerIssues);
1286
+ throw new ObjectQueryPlanningError2(plan.providerIssues);
1119
1287
  }
1120
1288
  const result = await options.storage.countObjects({
1121
1289
  projectId: input.projectId,
@@ -1127,16 +1295,16 @@ async function countObjects(input, options) {
1127
1295
  const evaluation = await evaluateFallbackQuery(input.projectId, aggregateQuery, options, maxRows);
1128
1296
  return { count: evaluation.total, plan };
1129
1297
  }
1130
- async function existsObjects(input, options) {
1131
- const normalized = normalizeObjectQuery(input.query);
1132
- const validated = validateObjectQuery(normalized, {
1298
+ async function existsObjects2(input, options) {
1299
+ const normalized = normalizeObjectQuery2(input.query);
1300
+ const validated = validateObjectQuery2(normalized, {
1133
1301
  ontology: options.ontology,
1134
1302
  maxLimit: options.maxLimit,
1135
1303
  maxPageSize: options.maxPageSize,
1136
1304
  maxRefs: options.maxRefs,
1137
1305
  normalize: false
1138
1306
  });
1139
- assertQueryViewable(validated, options);
1307
+ assertQueryViewable(input.projectId, validated, options);
1140
1308
  const capabilities = options.storage.queryCapabilities();
1141
1309
  const hasQueryObjects = typeof options.storage.queryObjects === "function";
1142
1310
  const hasCountObjects = typeof options.storage.countObjects === "function";
@@ -1153,7 +1321,7 @@ async function existsObjects(input, options) {
1153
1321
  maxFallbackRows: options.maxFallbackRows,
1154
1322
  requiresExplicitFallbackBound: options.requiresExplicitFallbackBound
1155
1323
  });
1156
- const plan = planObjectQuery(plannedQuery, {
1324
+ const plan = planObjectQuery2(plannedQuery, {
1157
1325
  capabilities,
1158
1326
  operation: "existsObjects",
1159
1327
  hasQueryObjects,
@@ -1165,11 +1333,11 @@ async function existsObjects(input, options) {
1165
1333
  requiresExplicitFallbackBound: options.requiresExplicitFallbackBound
1166
1334
  });
1167
1335
  if (plan.mode === "rejected") {
1168
- throw new ObjectQueryPlanningError(plan.issues);
1336
+ throw new ObjectQueryPlanningError2(plan.issues);
1169
1337
  }
1170
1338
  if (plan.mode === "pushdown") {
1171
1339
  if (!options.storage.existsObjects) {
1172
- throw new ObjectQueryPlanningError(plan.providerIssues);
1340
+ throw new ObjectQueryPlanningError2(plan.providerIssues);
1173
1341
  }
1174
1342
  const result = await options.storage.existsObjects({
1175
1343
  projectId: input.projectId,
@@ -1181,17 +1349,17 @@ async function existsObjects(input, options) {
1181
1349
  const evaluation = await evaluateFallbackQuery(input.projectId, aggregateQuery, options, maxRows);
1182
1350
  return { exists: evaluation.total > 0, plan };
1183
1351
  }
1184
- async function facetObjects(input, options) {
1185
- const normalized = normalizeObjectQuery(input.query);
1186
- const validated = validateObjectQuery(normalized, {
1352
+ async function facetObjects2(input, options) {
1353
+ const normalized = normalizeObjectQuery2(input.query);
1354
+ const validated = validateObjectQuery2(normalized, {
1187
1355
  ontology: options.ontology,
1188
1356
  maxLimit: options.maxLimit,
1189
1357
  maxPageSize: options.maxPageSize,
1190
1358
  maxRefs: options.maxRefs,
1191
1359
  normalize: false
1192
1360
  });
1193
- assertQueryViewable(validated, options);
1194
- const facets = validateFacetRequests(input.facets, validated.result.objectTypeIds, options);
1361
+ assertQueryViewable(input.projectId, validated, options);
1362
+ const facets = validateObjectFacetRequests(input.facets, validated.result.objectTypeIds, options);
1195
1363
  const aggregateQuery = stripOuterRowShape(validated.query);
1196
1364
  const capabilities = options.storage.queryCapabilities();
1197
1365
  const hasQueryObjects = typeof options.storage.queryObjects === "function";
@@ -1208,7 +1376,7 @@ async function facetObjects(input, options) {
1208
1376
  maxFallbackRows: options.maxFallbackRows,
1209
1377
  requiresExplicitFallbackBound: options.requiresExplicitFallbackBound
1210
1378
  });
1211
- const plan = planObjectQuery(plannedQuery, {
1379
+ const plan = planObjectQuery2(plannedQuery, {
1212
1380
  capabilities,
1213
1381
  operation: "facetObjects",
1214
1382
  hasQueryObjects,
@@ -1220,11 +1388,11 @@ async function facetObjects(input, options) {
1220
1388
  requiresExplicitFallbackBound: options.requiresExplicitFallbackBound
1221
1389
  });
1222
1390
  if (plan.mode === "rejected") {
1223
- throw new ObjectQueryPlanningError(plan.issues);
1391
+ throw new ObjectQueryPlanningError2(plan.issues);
1224
1392
  }
1225
1393
  if (plan.mode === "pushdown") {
1226
1394
  if (!options.storage.facetObjects) {
1227
- throw new ObjectQueryPlanningError(plan.providerIssues);
1395
+ throw new ObjectQueryPlanningError2(plan.providerIssues);
1228
1396
  }
1229
1397
  const result = await options.storage.facetObjects({
1230
1398
  projectId: input.projectId,
@@ -1240,10 +1408,10 @@ async function facetObjects(input, options) {
1240
1408
  plan
1241
1409
  };
1242
1410
  }
1243
- function assertQueryViewable(validated, authorization) {
1411
+ function assertQueryViewable(projectId, validated, authorization) {
1244
1412
  if (!authorization.runtimeAuthorization && !authorization.authorization)
1245
1413
  return;
1246
- assertAuthorized(authorization, {
1414
+ assertAuthorized2({ projectId, ...authorization }, {
1247
1415
  kind: "object.query",
1248
1416
  touchedObjectTypeIds: validated.touchedObjectTypeIds
1249
1417
  });
@@ -1254,7 +1422,7 @@ function expandPushdownQuery(query, ontology, capabilities, planning, maxExpansi
1254
1422
  const expanded = expandIncludeSubtypes(annotated, ontology);
1255
1423
  if (expanded === annotated)
1256
1424
  return annotated;
1257
- const plan = planObjectQuery(expanded, { ...planning, capabilities, allowFallback: false });
1425
+ const plan = planObjectQuery2(expanded, { ...planning, capabilities, allowFallback: false });
1258
1426
  return plan.mode === "pushdown" ? expanded : annotated;
1259
1427
  }
1260
1428
  function resolveExpansions(query, ctx) {
@@ -1333,7 +1501,7 @@ function resolveExpansionTargetShape(expansion, parentShape, ontology) {
1333
1501
  }
1334
1502
  function safeResultShape(query, ontology) {
1335
1503
  try {
1336
- return resolveObjectQueryResultShape(query, { ontology });
1504
+ return resolveObjectQueryResultShape2(query, { ontology });
1337
1505
  } catch {
1338
1506
  return { objectTypeIds: [] };
1339
1507
  }
@@ -1445,7 +1613,7 @@ async function evaluateFallbackQuery(projectId, query, options, maxRows) {
1445
1613
  case "vector":
1446
1614
  case "traverse":
1447
1615
  case "set":
1448
- throw new ObjectQueryExecutionError("fallback_node_not_supported", `Fallback execution does not support query node '${query.kind}'`);
1616
+ throw new ObjectQueryExecutionError2("fallback_node_not_supported", `Fallback execution does not support query node '${query.kind}'`);
1449
1617
  }
1450
1618
  }
1451
1619
  async function evaluateFallbackRefs(projectId, query, options) {
@@ -1454,7 +1622,7 @@ async function evaluateFallbackRefs(projectId, query, options) {
1454
1622
  items: query.refs
1455
1623
  });
1456
1624
  return completeFallbackEvaluation(query.refs.flatMap((ref, order) => {
1457
- const row = rows.get(objectBatchKey(ref.objectTypeId, ref.primaryId));
1625
+ const row = rows.get(objectBatchKey2(ref.objectTypeId, ref.primaryId));
1458
1626
  return row ? [{ row, order }] : [];
1459
1627
  }));
1460
1628
  }
@@ -1497,7 +1665,7 @@ async function collectOutgoingEdges(projectId, parents, expansion, options) {
1497
1665
  }))
1498
1666
  });
1499
1667
  return parents.map((parent) => {
1500
- const links = linksByKey.get(linkBatchKey(parent.objectTypeId, parent.primaryId, expansion.linkId));
1668
+ const links = linksByKey.get(linkBatchKey2(parent.objectTypeId, parent.primaryId, expansion.linkId));
1501
1669
  if (!links)
1502
1670
  return [];
1503
1671
  return links.map((link) => ({
@@ -1508,31 +1676,20 @@ async function collectOutgoingEdges(projectId, parents, expansion, options) {
1508
1676
  });
1509
1677
  }
1510
1678
  async function collectIncomingEdges(projectId, parents, expansion, options) {
1511
- const incident = await options.storage.listIncidentLinksBatch({
1679
+ const linksByKey = await options.storage.listLinksBatch({
1512
1680
  projectId,
1681
+ direction: "incoming",
1513
1682
  items: parents.map((parent) => ({
1514
1683
  objectTypeId: parent.objectTypeId,
1515
- objectId: parent.primaryId
1684
+ objectId: parent.primaryId,
1685
+ linkId: expansion.linkId
1516
1686
  }))
1517
1687
  });
1518
- const byTarget = new Map;
1519
- for (const link of incident) {
1520
- if (link.linkId !== expansion.linkId)
1521
- continue;
1522
- if (expansion.sourceObjectTypeId && link.sourceTypeId !== expansion.sourceObjectTypeId)
1523
- continue;
1524
- const key = targetKey(link.targetTypeId, link.targetId);
1525
- const bucket = byTarget.get(key);
1526
- if (bucket)
1527
- bucket.push(link);
1528
- else
1529
- byTarget.set(key, [link]);
1530
- }
1531
1688
  return parents.map((parent) => {
1532
- const links = byTarget.get(targetKey(parent.objectTypeId, parent.primaryId));
1689
+ const links = linksByKey.get(linkBatchKey2(parent.objectTypeId, parent.primaryId, expansion.linkId));
1533
1690
  if (!links)
1534
1691
  return [];
1535
- return links.map((link) => ({
1692
+ return links.filter((link) => !expansion.sourceObjectTypeId || link.sourceTypeId === expansion.sourceObjectTypeId).map((link) => ({
1536
1693
  neighborTypeId: link.sourceTypeId,
1537
1694
  neighborId: link.sourceId,
1538
1695
  edgeProperties: link.properties
@@ -1633,7 +1790,7 @@ function toLinkValue(rows, cardinality) {
1633
1790
  return rows;
1634
1791
  }
1635
1792
  function targetKey(objectTypeId, id) {
1636
- return objectBatchKey(objectTypeId, id);
1793
+ return objectBatchKey2(objectTypeId, id);
1637
1794
  }
1638
1795
  async function evaluateFallbackStart(projectId, query, options, maxRows) {
1639
1796
  const objectTypeIds = query.includeSubtypes ? [query.objectTypeId, ...options.ontology.listSubTypes(query.objectTypeId)] : [query.objectTypeId];
@@ -1645,7 +1802,7 @@ async function evaluateFallbackStart(projectId, query, options, maxRows) {
1645
1802
  order: "asc"
1646
1803
  });
1647
1804
  if (result.objects.length > maxRows || result.hasMore || result.total > maxRows) {
1648
- throw new ObjectQueryExecutionError("fallback_row_limit_exceeded", `Fallback start '${query.objectTypeId}' exceeded maxFallbackRows=${maxRows}`, "$.start");
1805
+ throw new ObjectQueryExecutionError2("fallback_row_limit_exceeded", `Fallback start '${query.objectTypeId}' exceeded maxFallbackRows=${maxRows}`, "$.start");
1649
1806
  }
1650
1807
  return completeFallbackEvaluation(result.objects.map((row, index) => ({
1651
1808
  row,
@@ -1750,12 +1907,21 @@ function stripOuterRowShape(query) {
1750
1907
  return query;
1751
1908
  }
1752
1909
  }
1753
- function validateFacetRequests(facets, objectTypeIds, options) {
1910
+ function validateObjectFacetRequests(facets, objectTypeIds, options) {
1754
1911
  const issues = [];
1755
1912
  const maxLimit = options.maxFacetLimit ?? DEFAULT_MAX_FACET_LIMIT;
1756
1913
  if (facets.length === 0) {
1757
1914
  addFacetIssue(issues, "$.facets", "empty_facets", "At least one facet is required");
1758
1915
  }
1916
+ if (facets.length > MAX_OBJECT_READ_FACETS2) {
1917
+ throw new ObjectQueryValidationError2([
1918
+ {
1919
+ path: "$.facets",
1920
+ code: "too_many_facets",
1921
+ message: `facets must include at most ${MAX_OBJECT_READ_FACETS2} facet requests`
1922
+ }
1923
+ ]);
1924
+ }
1759
1925
  if (!Number.isInteger(maxLimit) || maxLimit <= 0) {
1760
1926
  addFacetIssue(issues, "$.maxFacetLimit", "invalid_facet_bound", "maxFacetLimit must be positive");
1761
1927
  }
@@ -1792,7 +1958,7 @@ function validateFacetRequests(facets, objectTypeIds, options) {
1792
1958
  normalizedFacets.push({ propertyId, limit: facet.limit });
1793
1959
  });
1794
1960
  if (issues.length > 0) {
1795
- throw new ObjectQueryValidationError(issues);
1961
+ throw new ObjectQueryValidationError2(issues);
1796
1962
  }
1797
1963
  return normalizedFacets;
1798
1964
  }
@@ -1830,7 +1996,7 @@ function facetValueSortKey(value) {
1830
1996
  return JSON.stringify(value) ?? String(value);
1831
1997
  }
1832
1998
  function rowIdentityKey(row) {
1833
- return objectBatchKey(row.objectTypeId, row.primaryId);
1999
+ return objectBatchKey2(row.objectTypeId, row.primaryId);
1834
2000
  }
1835
2001
  function encodePageOffset(offset) {
1836
2002
  return `${PAGE_TOKEN_PREFIX}${offset}`;
@@ -1839,11 +2005,11 @@ function decodePageOffset(token) {
1839
2005
  if (!token)
1840
2006
  return 0;
1841
2007
  if (!token.startsWith(PAGE_TOKEN_PREFIX)) {
1842
- throw new ObjectQueryExecutionError("invalid_page_token", "Fallback page token must use the offset token format");
2008
+ throw new ObjectQueryExecutionError2("invalid_page_token", "Fallback page token must use the offset token format");
1843
2009
  }
1844
2010
  const offset = Number(token.slice(PAGE_TOKEN_PREFIX.length));
1845
2011
  if (!Number.isInteger(offset) || offset < 0) {
1846
- throw new ObjectQueryExecutionError("invalid_page_token", "Fallback page token contains an invalid offset");
2012
+ throw new ObjectQueryExecutionError2("invalid_page_token", "Fallback page token contains an invalid offset");
1847
2013
  }
1848
2014
  return offset;
1849
2015
  }
@@ -1851,16 +2017,16 @@ function isPlainObject(value) {
1851
2017
  return typeof value === "object" && value !== null && !Array.isArray(value);
1852
2018
  }
1853
2019
  // src/objects/query/explain.ts
1854
- function explainObjectQuery(query, options = {}) {
1855
- const normalizedQuery = options.normalize === false ? query : normalizeObjectQuery(query);
1856
- const issues = options.ontology ? collectObjectQueryValidationIssues(normalizedQuery, {
2020
+ function explainObjectQuery2(query, options = {}) {
2021
+ const normalizedQuery = options.normalize === false ? query : normalizeObjectQuery2(query);
2022
+ const issues = options.ontology ? collectObjectQueryValidationIssues2(normalizedQuery, {
1857
2023
  ontology: options.ontology,
1858
2024
  maxLimit: options.maxLimit,
1859
2025
  maxPageSize: options.maxPageSize,
1860
2026
  maxRefs: options.maxRefs,
1861
2027
  normalize: false
1862
2028
  }) : [];
1863
- const result = options.ontology && issues.length === 0 ? validateObjectQuery(normalizedQuery, {
2029
+ const result = options.ontology && issues.length === 0 ? validateObjectQuery2(normalizedQuery, {
1864
2030
  ontology: options.ontology,
1865
2031
  maxLimit: options.maxLimit,
1866
2032
  maxPageSize: options.maxPageSize,
@@ -2020,19 +2186,32 @@ var MAX_LINK_QUERY_OBJECTS = 1000;
2020
2186
  var MAX_LINK_PAGE_SIZE = 1000;
2021
2187
  var DEFAULT_LINK_PAGE_SIZE = 100;
2022
2188
  var LINK_PAGE_TOKEN_PREFIX = "link:v1:";
2023
- async function executeObjectQueryLinks(input, options) {
2024
- const direction = input.direction ?? "both";
2189
+ function preflightObjectQueryLinks(input, options) {
2190
+ const projectId = input.projectId;
2191
+ const query = input.query;
2192
+ const requestedDirection = input.direction;
2193
+ const linkId = input.linkId;
2194
+ const requestedIncludeObjects = input.includeObjects;
2195
+ const requestedPageSize = input.pageSize;
2196
+ const pageToken = input.pageToken;
2197
+ const direction = requestedDirection ?? "both";
2025
2198
  if (direction !== "outgoing" && direction !== "incoming" && direction !== "both") {
2026
- throw new ObjectQueryExecutionError("invalid_link_direction", "direction must be 'outgoing', 'incoming', or 'both'", "$.direction");
2199
+ throw new ObjectQueryExecutionError2("invalid_link_direction", "direction must be 'outgoing', 'incoming', or 'both'", "$.direction");
2200
+ }
2201
+ if (linkId !== undefined && typeof linkId !== "string") {
2202
+ throw new ObjectQueryExecutionError2("invalid_link_id", "linkId must be a string", "$.linkId");
2203
+ }
2204
+ if (linkId !== undefined && linkId.length === 0) {
2205
+ throw new ObjectQueryExecutionError2("invalid_link_id", "linkId must not be empty", "$.linkId");
2027
2206
  }
2028
- if (input.linkId !== undefined && input.linkId.length === 0) {
2029
- throw new ObjectQueryExecutionError("invalid_link_id", "linkId must not be empty", "$.linkId");
2207
+ if (requestedIncludeObjects !== undefined && typeof requestedIncludeObjects !== "boolean") {
2208
+ throw new ObjectQueryExecutionError2("invalid_link_include_objects", "includeObjects must be a boolean", "$.includeObjects");
2030
2209
  }
2031
- const pageSize = input.pageSize ?? DEFAULT_LINK_PAGE_SIZE;
2210
+ const pageSize = requestedPageSize ?? DEFAULT_LINK_PAGE_SIZE;
2032
2211
  if (!Number.isInteger(pageSize) || pageSize <= 0 || pageSize > MAX_LINK_PAGE_SIZE) {
2033
- throw new ObjectQueryExecutionError("invalid_link_page_size", `pageSize must be an integer between 1 and ${MAX_LINK_PAGE_SIZE}`, "$.pageSize");
2212
+ throw new ObjectQueryExecutionError2("invalid_link_page_size", `pageSize must be an integer between 1 and ${MAX_LINK_PAGE_SIZE}`, "$.pageSize");
2034
2213
  }
2035
- const validated = validateObjectQuery(normalizeObjectQuery(input.query), {
2214
+ const validated = validateObjectQuery2(normalizeObjectQuery2(query), {
2036
2215
  ontology: options.ontology,
2037
2216
  maxLimit: options.maxLimit,
2038
2217
  maxPageSize: options.maxPageSize,
@@ -2040,12 +2219,25 @@ async function executeObjectQueryLinks(input, options) {
2040
2219
  normalize: false
2041
2220
  });
2042
2221
  assertLinkSelectorShape(validated.query);
2043
- const selectorQuery = validated.query;
2044
- const pageScope = linkPageScope(input.projectId, selectorQuery, direction, input.linkId);
2045
- const cursor = decodeLinkPageToken(input.pageToken, pageScope);
2222
+ const pageScope = linkPageScope(projectId, validated.query, direction, linkId);
2223
+ const cursor = decodeLinkPageToken(pageToken, pageScope);
2224
+ return {
2225
+ projectId,
2226
+ validated,
2227
+ direction,
2228
+ ...linkId === undefined ? {} : { linkId },
2229
+ includeObjects: requestedIncludeObjects ?? false,
2230
+ pageSize,
2231
+ ...cursor === undefined ? {} : { cursor },
2232
+ pageScope
2233
+ };
2234
+ }
2235
+ async function executeObjectQueryLinks2(input, options) {
2236
+ const preflight = preflightObjectQueryLinks(input, options);
2237
+ const selectorQuery = preflight.validated.query;
2046
2238
  const boundedSelector = selectorQuery.kind === "page" ? selectorQuery : { kind: "limit", limit: MAX_LINK_QUERY_OBJECTS + 1, input: selectorQuery };
2047
- const selection = await executeObjectQuery({
2048
- projectId: input.projectId,
2239
+ const selection = await executeObjectQuery2({
2240
+ projectId: preflight.projectId,
2049
2241
  query: boundedSelector,
2050
2242
  includeTotal: false
2051
2243
  }, {
@@ -2053,7 +2245,7 @@ async function executeObjectQueryLinks(input, options) {
2053
2245
  maxLimit: Math.max(options.maxLimit ?? 1000, MAX_LINK_QUERY_OBJECTS + 1)
2054
2246
  });
2055
2247
  if (selection.objects.length > MAX_LINK_QUERY_OBJECTS) {
2056
- throw new ObjectQueryExecutionError("link_query_object_limit_exceeded", `Link query selected more than ${MAX_LINK_QUERY_OBJECTS} objects; add a limit or page node`, "$.query");
2248
+ throw new ObjectQueryExecutionError2("link_query_object_limit_exceeded", `Link query selected more than ${MAX_LINK_QUERY_OBJECTS} objects; add a limit or page node`, "$.query");
2057
2249
  }
2058
2250
  const selected = selection.objects;
2059
2251
  if (selected.length === 0) {
@@ -2061,16 +2253,16 @@ async function executeObjectQueryLinks(input, options) {
2061
2253
  }
2062
2254
  const endpointObjectTypeIds = visibleEndpointTypeIds(options);
2063
2255
  const page = await options.storage.queryLinks({
2064
- projectId: input.projectId,
2256
+ projectId: preflight.projectId,
2065
2257
  objectRefs: selected.map((row) => ({
2066
2258
  objectTypeId: row.objectTypeId,
2067
2259
  primaryId: row.primaryId
2068
2260
  })),
2069
- direction,
2070
- ...input.linkId === undefined ? {} : { linkId: input.linkId },
2261
+ direction: preflight.direction,
2262
+ ...preflight.linkId === undefined ? {} : { linkId: preflight.linkId },
2071
2263
  ...endpointObjectTypeIds === undefined ? {} : { endpointObjectTypeIds },
2072
- ...cursor === undefined ? {} : { after: cursor },
2073
- limit: pageSize
2264
+ ...preflight.cursor === undefined ? {} : { after: preflight.cursor },
2265
+ limit: preflight.pageSize
2074
2266
  });
2075
2267
  const lastLink = page.links.at(-1);
2076
2268
  let nextPageToken;
@@ -2078,9 +2270,9 @@ async function executeObjectQueryLinks(input, options) {
2078
2270
  if (!lastLink) {
2079
2271
  throw new Error("[Sixb] Object storage returned hasMore for an empty link page.");
2080
2272
  }
2081
- nextPageToken = encodeLinkPageToken(objectLinkCursor(lastLink), pageScope);
2273
+ nextPageToken = encodeLinkPageToken(objectLinkCursor2(lastLink), preflight.pageScope);
2082
2274
  }
2083
- const objects = input.includeObjects ? await hydrateLinkQueryObjects(input.projectId, selected, page.links, options.storage) : [];
2275
+ const objects = preflight.includeObjects ? await hydrateLinkQueryObjects(preflight.projectId, selected, page.links, options.storage) : [];
2084
2276
  return {
2085
2277
  objects,
2086
2278
  links: page.links,
@@ -2092,10 +2284,10 @@ function assertLinkSelectorShape(query, path = "$.query", root = true) {
2092
2284
  switch (query.kind) {
2093
2285
  case "project":
2094
2286
  case "expand":
2095
- throw new ObjectQueryExecutionError("link_selector_output_shape_not_supported", `Link selectors do not support '${query.kind}' nodes; remove output shaping from the selector`, path);
2287
+ throw new ObjectQueryExecutionError2("link_selector_output_shape_not_supported", `Link selectors do not support '${query.kind}' nodes; remove output shaping from the selector`, path);
2096
2288
  case "page":
2097
2289
  if (!root) {
2098
- throw new ObjectQueryExecutionError("link_selector_page_must_be_root", "A page node in a link selector must be the outermost node", path);
2290
+ throw new ObjectQueryExecutionError2("link_selector_page_must_be_root", "A page node in a link selector must be the outermost node", path);
2099
2291
  }
2100
2292
  assertLinkSelectorShape(query.input, `${path}.input`, false);
2101
2293
  return;
@@ -2121,13 +2313,13 @@ function assertLinkSelectorShape(query, path = "$.query", root = true) {
2121
2313
  function visibleEndpointTypeIds(options) {
2122
2314
  if (!options.authorization)
2123
2315
  return;
2124
- return options.ontology.listObjectTypes().filter((objectType) => isAllowed(options.authorization, { kind: "object.view", objectTypeId: objectType.id })).map((objectType) => objectType.id);
2316
+ return options.ontology.listObjectTypes().filter((objectType) => isAllowed2(options.authorization, { kind: "object.view", objectTypeId: objectType.id })).map((objectType) => objectType.id);
2125
2317
  }
2126
2318
  function objectIdentity(objectTypeId, primaryId) {
2127
- return objectBatchKey(objectTypeId, primaryId);
2319
+ return objectBatchKey2(objectTypeId, primaryId);
2128
2320
  }
2129
2321
  function linkPageScope(projectId, query, direction, linkId) {
2130
- return createHash("sha256").update(stableJsonStringify({
2322
+ return createHash("sha256").update(stableJsonStringify2({
2131
2323
  projectId,
2132
2324
  query,
2133
2325
  direction,
@@ -2153,7 +2345,7 @@ function decodeLinkPageToken(token, expectedScope) {
2153
2345
  }
2154
2346
  return value.cursor;
2155
2347
  } catch {
2156
- throw new ObjectQueryExecutionError("invalid_link_page_token", "pageToken is not a valid object-links cursor", "$.pageToken");
2348
+ throw new ObjectQueryExecutionError2("invalid_link_page_token", "pageToken is not a valid object-links cursor", "$.pageToken");
2157
2349
  }
2158
2350
  }
2159
2351
  function isObjectLinkCursor(value) {
@@ -2183,7 +2375,7 @@ async function hydrateLinkQueryObjects(projectId, selected, links, storage) {
2183
2375
  if (missingRefs.length > 0) {
2184
2376
  const hydrated = await storage.getByPrimaryIdBatch({ projectId, items: missingRefs });
2185
2377
  for (const ref of missingRefs) {
2186
- const row = hydrated.get(objectBatchKey(ref.objectTypeId, ref.primaryId));
2378
+ const row = hydrated.get(objectBatchKey2(ref.objectTypeId, ref.primaryId));
2187
2379
  if (row)
2188
2380
  byIdentity.set(objectIdentity(ref.objectTypeId, ref.primaryId), row);
2189
2381
  }
@@ -2193,6 +2385,6 @@ async function hydrateLinkQueryObjects(projectId, selected, links, storage) {
2193
2385
  return row ? [row] : [];
2194
2386
  });
2195
2387
  }
2196
- export { planObjectQuery, validateObjectQuery, collectObjectQueryValidationIssues, resolveObjectQueryResultShape, executeObjectQuery, countObjects, existsObjects, facetObjects, explainObjectQuery, executeObjectQueryLinks };
2388
+ export { planObjectQuery2, validateObjectQuery2, validateObjectQueryWithAdmission, collectObjectQueryValidationIssues2, resolveObjectQueryResultShape2, executeObjectQuery2, countObjects2, existsObjects2, facetObjects2, validateObjectFacetRequests, explainObjectQuery2, preflightObjectQueryLinks, executeObjectQueryLinks2 };
2197
2389
 
2198
- //# debugId=6AF3162EF872D1D064756E2164756E21
2390
+ //# debugId=48B001E3D65EA0BD64756E2164756E21