@sixb/core 0.1.10 → 0.1.12

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 (702) hide show
  1. package/dist/actions/builders/params.d.ts +1 -22
  2. package/dist/actions/builders/params.d.ts.map +1 -1
  3. package/dist/actions/index.js +29 -28
  4. package/dist/actions/index.js.map +1 -1
  5. package/dist/actions/types/params.d.ts +10 -44
  6. package/dist/actions/types/params.d.ts.map +1 -1
  7. package/dist/actions/validation.d.ts.map +1 -1
  8. package/dist/actions/worker.js +3 -2
  9. package/dist/actions/worker.js.map +2 -2
  10. package/dist/agents/errors.d.ts +1 -1
  11. package/dist/agents/errors.d.ts.map +1 -1
  12. package/dist/agents/execution.d.ts +15 -9
  13. package/dist/agents/execution.d.ts.map +1 -1
  14. package/dist/agents/ids.d.ts +2 -0
  15. package/dist/agents/ids.d.ts.map +1 -1
  16. package/dist/agents/index.d.ts +1 -1
  17. package/dist/agents/index.d.ts.map +1 -1
  18. package/dist/agents/index.js +48 -42
  19. package/dist/agents/index.js.map +1 -1
  20. package/dist/agents/request.d.ts.map +1 -1
  21. package/dist/agents/sandbox.d.ts +5 -0
  22. package/dist/agents/sandbox.d.ts.map +1 -0
  23. package/dist/agents/streams/index.js +4 -3
  24. package/dist/agents/streams/index.js.map +1 -1
  25. package/dist/agents/streams/internal.js +4 -3
  26. package/dist/agents/streams/internal.js.map +1 -1
  27. package/dist/agents/validation.d.ts.map +1 -1
  28. package/dist/auth/index.js +8 -6
  29. package/dist/auth/index.js.map +1 -1
  30. package/dist/authorization/index.js +5 -4
  31. package/dist/authorization/index.js.map +1 -1
  32. package/dist/blob-storage/types.d.ts +4 -1
  33. package/dist/blob-storage/types.d.ts.map +1 -1
  34. package/dist/bootstrap/index.js +50 -46
  35. package/dist/bootstrap/index.js.map +1 -1
  36. package/dist/{chunk-17kfctj6.js → chunk-0mza4xb2.js} +2 -2
  37. package/dist/chunk-2c4j899j.js.map +1 -1
  38. package/dist/{chunk-g00bfdq6.js → chunk-2cxv584m.js} +12 -56
  39. package/dist/{chunk-g00bfdq6.js.map → chunk-2cxv584m.js.map} +3 -3
  40. package/dist/{chunk-e0d1rzef.js → chunk-2h63nrde.js} +380 -97
  41. package/dist/chunk-2h63nrde.js.map +20 -0
  42. package/dist/{chunk-rtk71jzp.js → chunk-3bnt2wna.js} +2 -2
  43. package/dist/{chunk-awbhdqyc.js → chunk-3ghw2t5q.js} +1 -1
  44. package/dist/{chunk-b19g04jk.js → chunk-3h7ctayx.js} +1 -1
  45. package/dist/{chunk-wjasrj67.js → chunk-3qpcrcj8.js} +1 -1
  46. package/dist/{chunk-5hz0fnca.js → chunk-4k53sm9e.js} +6 -2
  47. package/dist/chunk-4k53sm9e.js.map +12 -0
  48. package/dist/chunk-4ph94nhd.js +81 -0
  49. package/dist/chunk-4ph94nhd.js.map +10 -0
  50. package/dist/chunk-58geavnf.js +29 -0
  51. package/dist/chunk-58geavnf.js.map +10 -0
  52. package/dist/{chunk-0y39rgsb.js → chunk-5tetw4hn.js} +1 -1
  53. package/dist/{chunk-7bs40fe1.js → chunk-69266efg.js} +83 -2
  54. package/dist/chunk-69266efg.js.map +12 -0
  55. package/dist/{chunk-g7knyczr.js → chunk-6ma8dvzc.js} +121 -53
  56. package/dist/chunk-6ma8dvzc.js.map +15 -0
  57. package/dist/{chunk-skz0hst3.js → chunk-7c2g3sz9.js} +6 -86
  58. package/dist/{chunk-skz0hst3.js.map → chunk-7c2g3sz9.js.map} +3 -3
  59. package/dist/{chunk-976rxdpx.js → chunk-7qnvhtcd.js} +93 -17
  60. package/dist/{chunk-976rxdpx.js.map → chunk-7qnvhtcd.js.map} +7 -6
  61. package/dist/{chunk-c5rkjrgp.js → chunk-7ytf06d3.js} +1 -1
  62. package/dist/{chunk-mrp7k0pw.js → chunk-91kcnbf0.js} +9 -14
  63. package/dist/chunk-91kcnbf0.js.map +10 -0
  64. package/dist/{chunk-yv79ncbv.js → chunk-96yw3pwd.js} +3 -3
  65. package/dist/chunk-96yw3pwd.js.map +10 -0
  66. package/dist/chunk-98cw09sw.js.map +2 -2
  67. package/dist/{chunk-93csa55g.js → chunk-axndsymr.js} +10 -4
  68. package/dist/chunk-axndsymr.js.map +11 -0
  69. package/dist/{chunk-r7fj830t.js → chunk-b768c93y.js} +100 -29
  70. package/dist/chunk-b768c93y.js.map +36 -0
  71. package/dist/{chunk-dz5h08xv.js → chunk-bbaa1fet.js} +24 -9
  72. package/dist/{chunk-dz5h08xv.js.map → chunk-bbaa1fet.js.map} +4 -4
  73. package/dist/{chunk-7apz6hg4.js → chunk-bet1rb9h.js} +8 -4
  74. package/dist/chunk-bet1rb9h.js.map +10 -0
  75. package/dist/{chunk-358caqf5.js → chunk-bfjv1adk.js} +2 -2
  76. package/dist/{chunk-b0ec55a1.js → chunk-bg2bs62d.js} +5 -5
  77. package/dist/{chunk-860dwwy0.js → chunk-cd234ba4.js} +22 -12
  78. package/dist/chunk-cd234ba4.js.map +14 -0
  79. package/dist/chunk-d62kjtbg.js.map +1 -1
  80. package/dist/chunk-dmn70ztd.js.map +2 -2
  81. package/dist/{chunk-28ja2cjs.js → chunk-e1f1sqba.js} +39 -53
  82. package/dist/{chunk-28ja2cjs.js.map → chunk-e1f1sqba.js.map} +5 -6
  83. package/dist/{chunk-ap0g1g74.js → chunk-eyjzgav0.js} +39 -4
  84. package/dist/chunk-eyjzgav0.js.map +12 -0
  85. package/dist/{chunk-rb1xx120.js → chunk-f06sf7rr.js} +9 -5
  86. package/dist/chunk-f06sf7rr.js.map +11 -0
  87. package/dist/{chunk-g6cke204.js → chunk-f85hpqnm.js} +1 -1
  88. package/dist/{chunk-vsj3mdfj.js → chunk-fc5zfxy1.js} +1 -1
  89. package/dist/{chunk-38zv5rkr.js → chunk-g2gezsg5.js} +1 -1
  90. package/dist/{chunk-38zv5rkr.js.map → chunk-g2gezsg5.js.map} +2 -2
  91. package/dist/{chunk-nmbxcaqx.js → chunk-g50nxqs5.js} +53 -66
  92. package/dist/chunk-g50nxqs5.js.map +18 -0
  93. package/dist/{chunk-1824gssz.js → chunk-gswwr35f.js} +4 -4
  94. package/dist/{chunk-92vk7gta.js → chunk-gzt6v1ja.js} +1 -1
  95. package/dist/{chunk-aa6z4a19.js → chunk-hgqpcmyr.js} +2 -1
  96. package/dist/chunk-hgqpcmyr.js.map +12 -0
  97. package/dist/{chunk-gqh45d2n.js → chunk-hkw8rykk.js} +2 -2
  98. package/dist/{chunk-f4w3yp4f.js → chunk-hzw7yv5g.js} +104 -21
  99. package/dist/chunk-hzw7yv5g.js.map +13 -0
  100. package/dist/{chunk-5c7ga8zz.js → chunk-jjwhy3rs.js} +5 -5
  101. package/dist/chunk-kept9cdd.js +29 -0
  102. package/dist/chunk-kept9cdd.js.map +10 -0
  103. package/dist/{chunk-ftv470j8.js → chunk-m7cx05vp.js} +247 -16
  104. package/dist/{chunk-ftv470j8.js.map → chunk-m7cx05vp.js.map} +14 -10
  105. package/dist/{chunk-qyeptdyv.js → chunk-mdnw7nj8.js} +10 -6
  106. package/dist/chunk-mdnw7nj8.js.map +15 -0
  107. package/dist/{chunk-5p1v802y.js → chunk-nzsy3xrp.js} +253 -86
  108. package/dist/chunk-nzsy3xrp.js.map +46 -0
  109. package/dist/chunk-p1683c0v.js +104 -0
  110. package/dist/chunk-p1683c0v.js.map +11 -0
  111. package/dist/chunk-p6r1ex7t.js +93 -0
  112. package/dist/chunk-p6r1ex7t.js.map +10 -0
  113. package/dist/{chunk-p5vcsw9c.js → chunk-qm535afa.js} +10 -10
  114. package/dist/{chunk-p5vcsw9c.js.map → chunk-qm535afa.js.map} +4 -4
  115. package/dist/chunk-r5zythxp.js +552 -0
  116. package/dist/chunk-r5zythxp.js.map +17 -0
  117. package/dist/{chunk-9qsh3p5y.js → chunk-rb143ggb.js} +1 -1
  118. package/dist/{chunk-653vwrzr.js → chunk-rdghfsss.js} +1 -1
  119. package/dist/{chunk-t1f4f1ve.js → chunk-sfypc7mk.js} +18 -13
  120. package/dist/{chunk-t1f4f1ve.js.map → chunk-sfypc7mk.js.map} +3 -3
  121. package/dist/{chunk-f0rwz2vh.js → chunk-t6f3tdnr.js} +2 -54
  122. package/dist/chunk-t6f3tdnr.js.map +10 -0
  123. package/dist/{chunk-bn138h9w.js → chunk-t7dzd1tm.js} +3 -3
  124. package/dist/{chunk-pr2h4bv4.js → chunk-tg4g4zh0.js} +3 -3
  125. package/dist/chunk-vpxss818.js +56 -0
  126. package/dist/chunk-vpxss818.js.map +10 -0
  127. package/dist/{chunk-ms2tmn1k.js → chunk-vsg0g7h9.js} +53 -57
  128. package/dist/chunk-vsg0g7h9.js.map +17 -0
  129. package/dist/{chunk-8vj0rjgs.js → chunk-wjffn5m4.js} +1 -1
  130. package/dist/{chunk-nt99sxd6.js → chunk-x9tmx3fc.js} +18 -24
  131. package/dist/chunk-x9tmx3fc.js.map +14 -0
  132. package/dist/{chunk-agbbygvh.js → chunk-xn686q2e.js} +8 -8
  133. package/dist/{chunk-g53f0e4j.js → chunk-xnx96gfy.js} +45 -17
  134. package/dist/{chunk-g53f0e4j.js.map → chunk-xnx96gfy.js.map} +3 -3
  135. package/dist/{chunk-v2vcg0w6.js → chunk-xtfryrfb.js} +2 -2
  136. package/dist/chunk-y0v18c2j.js +363 -0
  137. package/dist/chunk-y0v18c2j.js.map +14 -0
  138. package/dist/{chunk-72w2pxk7.js → chunk-y1ahv8b7.js} +11 -3
  139. package/dist/{chunk-72w2pxk7.js.map → chunk-y1ahv8b7.js.map} +3 -3
  140. package/dist/chunk-y3ev53cq.js +84 -0
  141. package/dist/chunk-y3ev53cq.js.map +10 -0
  142. package/dist/{chunk-p6a4npdx.js → chunk-ybhz3j9g.js} +362 -60
  143. package/dist/chunk-ybhz3j9g.js.map +63 -0
  144. package/dist/{chunk-z30bv4ga.js → chunk-yxb4c62x.js} +3 -2
  145. package/dist/{chunk-z30bv4ga.js.map → chunk-yxb4c62x.js.map} +3 -3
  146. package/dist/chunk-z3y5kg1x.js +14 -0
  147. package/dist/chunk-z3y5kg1x.js.map +10 -0
  148. package/dist/connectors/connections/command-context.d.ts +2 -0
  149. package/dist/connectors/connections/command-context.d.ts.map +1 -1
  150. package/dist/connectors/connections/contracts.d.ts +1 -1
  151. package/dist/connectors/connections/contracts.d.ts.map +1 -1
  152. package/dist/connectors/connections/execution.d.ts +1 -0
  153. package/dist/connectors/connections/execution.d.ts.map +1 -1
  154. package/dist/connectors/connections/runs.d.ts +1 -0
  155. package/dist/connectors/connections/runs.d.ts.map +1 -1
  156. package/dist/connectors/connections/service.d.ts +2 -0
  157. package/dist/connectors/connections/service.d.ts.map +1 -1
  158. package/dist/datasets/validation.d.ts +4 -0
  159. package/dist/datasets/validation.d.ts.map +1 -1
  160. package/dist/datasets/write.d.ts.map +1 -1
  161. package/dist/datasets/write.js +5 -4
  162. package/dist/datasets/write.js.map +1 -1
  163. package/dist/error-reporting/capability.d.ts +3 -2
  164. package/dist/error-reporting/capability.d.ts.map +1 -1
  165. package/dist/error-reporting/internal.js +5 -4
  166. package/dist/error-reporting/internal.js.map +1 -1
  167. package/dist/error-reporting/reports.d.ts +10 -0
  168. package/dist/error-reporting/reports.d.ts.map +1 -1
  169. package/dist/error-reporting/types.d.ts +10 -2
  170. package/dist/error-reporting/types.d.ts.map +1 -1
  171. package/dist/errors/catalog.d.ts +12 -0
  172. package/dist/errors/catalog.d.ts.map +1 -1
  173. package/dist/errors/failure-message.d.ts +8 -0
  174. package/dist/errors/failure-message.d.ts.map +1 -0
  175. package/dist/errors/internal.d.ts.map +1 -1
  176. package/dist/errors/internal.js +3 -2
  177. package/dist/errors/internal.js.map +1 -1
  178. package/dist/events/index.js +5 -4
  179. package/dist/events/index.js.map +1 -1
  180. package/dist/events/outbox-dispatcher.d.ts +2 -2
  181. package/dist/events/outbox-dispatcher.d.ts.map +1 -1
  182. package/dist/execution/agent.js +44 -41
  183. package/dist/execution/agent.js.map +1 -1
  184. package/dist/execution/authorization.d.ts.map +1 -1
  185. package/dist/execution/authorized-object-reader.d.ts +3 -0
  186. package/dist/execution/authorized-object-reader.d.ts.map +1 -1
  187. package/dist/execution/kernel-operation.d.ts +4 -0
  188. package/dist/execution/kernel-operation.d.ts.map +1 -0
  189. package/dist/execution/primitive.js +44 -41
  190. package/dist/execution/primitive.js.map +2 -2
  191. package/dist/execution/request.js +45 -42
  192. package/dist/execution/request.js.map +2 -2
  193. package/dist/execution/types.d.ts +6 -0
  194. package/dist/execution/types.d.ts.map +1 -1
  195. package/dist/index.d.ts +15 -5
  196. package/dist/index.d.ts.map +1 -1
  197. package/dist/index.js +68 -59
  198. package/dist/index.js.map +1 -1
  199. package/dist/lake-storage/in-memory.d.ts.map +1 -1
  200. package/dist/lake-storage/index.js +5 -4
  201. package/dist/lake-storage/index.js.map +1 -1
  202. package/dist/lake-storage/types.d.ts +2 -0
  203. package/dist/lake-storage/types.d.ts.map +1 -1
  204. package/dist/maintenance/ontology-maintenance.d.ts.map +1 -1
  205. package/dist/maintenance/types.d.ts +1 -1
  206. package/dist/maintenance/types.d.ts.map +1 -1
  207. package/dist/materialization/errors.d.ts +1 -1
  208. package/dist/materialization/errors.d.ts.map +1 -1
  209. package/dist/materialization/index.d.ts +1 -0
  210. package/dist/materialization/index.d.ts.map +1 -1
  211. package/dist/materialization/index.js +3 -3
  212. package/dist/materialization/model.d.ts +2 -0
  213. package/dist/materialization/model.d.ts.map +1 -1
  214. package/dist/materialization/vectors.d.ts +19 -0
  215. package/dist/materialization/vectors.d.ts.map +1 -0
  216. package/dist/materializer/context.d.ts.map +1 -1
  217. package/dist/materializer/edits/commit.d.ts.map +1 -1
  218. package/dist/materializer/edits/vector-authority.d.ts +6 -0
  219. package/dist/materializer/edits/vector-authority.d.ts.map +1 -0
  220. package/dist/materializer/edits/vectors.d.ts +6 -0
  221. package/dist/materializer/edits/vectors.d.ts.map +1 -0
  222. package/dist/materializer/effective/validate.d.ts.map +1 -1
  223. package/dist/materializer/effective/vector-indexing.d.ts +7 -0
  224. package/dist/materializer/effective/vector-indexing.d.ts.map +1 -0
  225. package/dist/materializer/effective/vectors.d.ts +6 -0
  226. package/dist/materializer/effective/vectors.d.ts.map +1 -0
  227. package/dist/materializer/execution/work-executor.d.ts +2 -1
  228. package/dist/materializer/execution/work-executor.d.ts.map +1 -1
  229. package/dist/materializer/index.js +26 -25
  230. package/dist/materializer/index.js.map +1 -1
  231. package/dist/materializer/shared/normalize.d.ts.map +1 -1
  232. package/dist/models/catalog-index.d.ts +15 -0
  233. package/dist/models/catalog-index.d.ts.map +1 -0
  234. package/dist/models/catalog.d.ts +27 -6
  235. package/dist/models/catalog.d.ts.map +1 -1
  236. package/dist/models/decision/catalog.d.ts +12 -0
  237. package/dist/models/decision/catalog.d.ts.map +1 -0
  238. package/dist/models/decision/errors.d.ts +7 -0
  239. package/dist/models/decision/errors.d.ts.map +1 -0
  240. package/dist/models/decision/output.d.ts +50 -0
  241. package/dist/models/decision/output.d.ts.map +1 -0
  242. package/dist/models/decision/questions.d.ts +14 -0
  243. package/dist/models/decision/questions.d.ts.map +1 -0
  244. package/dist/models/decision/runtime.d.ts +7 -0
  245. package/dist/models/decision/runtime.d.ts.map +1 -0
  246. package/dist/models/decision/types.d.ts +92 -0
  247. package/dist/models/decision/types.d.ts.map +1 -0
  248. package/dist/models/decision/validation.d.ts +7 -0
  249. package/dist/models/decision/validation.d.ts.map +1 -0
  250. package/dist/models/definitions.d.ts +8 -1
  251. package/dist/models/definitions.d.ts.map +1 -1
  252. package/dist/models/embedding-model.d.ts +60 -0
  253. package/dist/models/embedding-model.d.ts.map +1 -0
  254. package/dist/models/execution/binding.d.ts +2 -0
  255. package/dist/models/execution/binding.d.ts.map +1 -1
  256. package/dist/models/execution/embedding.d.ts +5 -0
  257. package/dist/models/execution/embedding.d.ts.map +1 -0
  258. package/dist/models/execution/index.js +29 -26
  259. package/dist/models/execution/index.js.map +1 -1
  260. package/dist/models/execution/model-call-recorder.d.ts +5 -1
  261. package/dist/models/execution/model-call-recorder.d.ts.map +1 -1
  262. package/dist/models/execution/session.d.ts +21 -0
  263. package/dist/models/execution/session.d.ts.map +1 -0
  264. package/dist/models/execution.d.ts.map +1 -1
  265. package/dist/models/generation-types.d.ts +2 -0
  266. package/dist/models/generation-types.d.ts.map +1 -1
  267. package/dist/models/index.d.ts +9 -1
  268. package/dist/models/index.d.ts.map +1 -1
  269. package/dist/models/index.js +17 -7
  270. package/dist/models/index.js.map +1 -1
  271. package/dist/models/pricing.d.ts +3 -2
  272. package/dist/models/pricing.d.ts.map +1 -1
  273. package/dist/objects/authorized-ontology-view.d.ts.map +1 -1
  274. package/dist/objects/execution.d.ts +1 -0
  275. package/dist/objects/execution.d.ts.map +1 -1
  276. package/dist/objects/index.js +29 -28
  277. package/dist/objects/index.js.map +1 -1
  278. package/dist/objects/query/executor.d.ts +3 -0
  279. package/dist/objects/query/executor.d.ts.map +1 -1
  280. package/dist/objects/query/index.d.ts +2 -0
  281. package/dist/objects/query/index.d.ts.map +1 -1
  282. package/dist/objects/query/index.js +34 -24
  283. package/dist/objects/query/index.js.map +1 -1
  284. package/dist/objects/query/ir.d.ts +6 -2
  285. package/dist/objects/query/ir.d.ts.map +1 -1
  286. package/dist/objects/query/normalize.d.ts.map +1 -1
  287. package/dist/objects/query/validate.d.ts.map +1 -1
  288. package/dist/objects/sdk/object-handle.d.ts +5 -0
  289. package/dist/objects/sdk/object-handle.d.ts.map +1 -1
  290. package/dist/objects/sdk/object-set.d.ts.map +1 -1
  291. package/dist/objects/sdk/query-executor.d.ts +2 -0
  292. package/dist/objects/sdk/query-executor.d.ts.map +1 -1
  293. package/dist/objects/sdk/runtime-query-executor.d.ts.map +1 -1
  294. package/dist/objects/vectors/handle.d.ts +4 -0
  295. package/dist/objects/vectors/handle.d.ts.map +1 -0
  296. package/dist/objects/vectors/indexing-batch.d.ts +6 -0
  297. package/dist/objects/vectors/indexing-batch.d.ts.map +1 -0
  298. package/dist/objects/vectors/indexing-generate.d.ts +11 -0
  299. package/dist/objects/vectors/indexing-generate.d.ts.map +1 -0
  300. package/dist/objects/vectors/indexing-runtime.d.ts +7 -0
  301. package/dist/objects/vectors/indexing-runtime.d.ts.map +1 -0
  302. package/dist/objects/vectors/indexing-shared.d.ts +17 -0
  303. package/dist/objects/vectors/indexing-shared.d.ts.map +1 -0
  304. package/dist/objects/vectors/indexing-single.d.ts +4 -0
  305. package/dist/objects/vectors/indexing-single.d.ts.map +1 -0
  306. package/dist/objects/vectors/indexing-store-batch.d.ts +6 -0
  307. package/dist/objects/vectors/indexing-store-batch.d.ts.map +1 -0
  308. package/dist/objects/vectors/indexing.d.ts +7 -0
  309. package/dist/objects/vectors/indexing.d.ts.map +1 -0
  310. package/dist/objects/vectors/profile.d.ts +13 -0
  311. package/dist/objects/vectors/profile.d.ts.map +1 -0
  312. package/dist/objects/vectors/query.d.ts +5 -0
  313. package/dist/objects/vectors/query.d.ts.map +1 -0
  314. package/dist/objects/vectors/resolve-query.d.ts +6 -0
  315. package/dist/objects/vectors/resolve-query.d.ts.map +1 -0
  316. package/dist/objects/vectors/types.d.ts +11 -0
  317. package/dist/objects/vectors/types.d.ts.map +1 -0
  318. package/dist/ontology/index.d.ts +2 -1
  319. package/dist/ontology/index.d.ts.map +1 -1
  320. package/dist/ontology/index.js +5 -5
  321. package/dist/ontology/index.js.map +1 -1
  322. package/dist/ontology/internal.js +5 -4
  323. package/dist/ontology/internal.js.map +1 -1
  324. package/dist/ontology/registry.d.ts.map +1 -1
  325. package/dist/ontology/types.d.ts +8 -9
  326. package/dist/ontology/types.d.ts.map +1 -1
  327. package/dist/ontology/validation/definition.d.ts +3 -0
  328. package/dist/ontology/validation/definition.d.ts.map +1 -0
  329. package/dist/ontology/validation/properties.d.ts.map +1 -1
  330. package/dist/ontology/validation/query.d.ts.map +1 -1
  331. package/dist/ontology/validation/schema.d.ts +1 -1
  332. package/dist/ontology/validation/schema.d.ts.map +1 -1
  333. package/dist/ontology/vector-profiles.d.ts +4 -0
  334. package/dist/ontology/vector-profiles.d.ts.map +1 -0
  335. package/dist/pipelines/index.js +28 -27
  336. package/dist/pipelines/index.js.map +1 -1
  337. package/dist/projections/internal.js +24 -23
  338. package/dist/projections/internal.js.map +1 -1
  339. package/dist/query.js +2 -2
  340. package/dist/queues/in-memory.d.ts +2 -1
  341. package/dist/queues/in-memory.d.ts.map +1 -1
  342. package/dist/queues/index.d.ts +1 -1
  343. package/dist/queues/index.d.ts.map +1 -1
  344. package/dist/queues/index.js +1 -1
  345. package/dist/queues/types.d.ts +5 -0
  346. package/dist/queues/types.d.ts.map +1 -1
  347. package/dist/runtime/create.d.ts +4 -3
  348. package/dist/runtime/create.d.ts.map +1 -1
  349. package/dist/runtime/host.d.ts +9 -6
  350. package/dist/runtime/host.d.ts.map +1 -1
  351. package/dist/runtime/internal.d.ts +3 -0
  352. package/dist/runtime/internal.d.ts.map +1 -1
  353. package/dist/runtime/internal.js +47 -1
  354. package/dist/runtime/internal.js.map +1 -1
  355. package/dist/runtime/resolve-definitions.d.ts.map +1 -1
  356. package/dist/runtime/sixb.d.ts +9 -4
  357. package/dist/runtime/sixb.d.ts.map +1 -1
  358. package/dist/runtime/types.d.ts +15 -3
  359. package/dist/runtime/types.d.ts.map +1 -1
  360. package/dist/sandboxes/auth.d.ts +16 -0
  361. package/dist/sandboxes/auth.d.ts.map +1 -0
  362. package/dist/sandboxes/config.d.ts +5 -0
  363. package/dist/sandboxes/config.d.ts.map +1 -0
  364. package/dist/sandboxes/configuration.d.ts +41 -0
  365. package/dist/sandboxes/configuration.d.ts.map +1 -0
  366. package/dist/sandboxes/environment.d.ts +13 -0
  367. package/dist/sandboxes/environment.d.ts.map +1 -0
  368. package/dist/sandboxes/errors.d.ts +1 -1
  369. package/dist/sandboxes/errors.d.ts.map +1 -1
  370. package/dist/sandboxes/index.d.ts +6 -1
  371. package/dist/sandboxes/index.d.ts.map +1 -1
  372. package/dist/sandboxes/index.js +16 -3
  373. package/dist/sandboxes/index.js.map +1 -1
  374. package/dist/sandboxes/sandbox.d.ts +35 -3
  375. package/dist/sandboxes/sandbox.d.ts.map +1 -1
  376. package/dist/shared/params/builders.d.ts +25 -0
  377. package/dist/shared/params/builders.d.ts.map +1 -0
  378. package/dist/shared/params/types.d.ts +47 -0
  379. package/dist/shared/params/types.d.ts.map +1 -0
  380. package/dist/shared/params/validation.d.ts +15 -0
  381. package/dist/shared/params/validation.d.ts.map +1 -0
  382. package/dist/shares/internal.js +23 -22
  383. package/dist/shares/internal.js.map +2 -2
  384. package/dist/storage/action-runs/failure.js +4 -3
  385. package/dist/storage/action-runs/failure.js.map +1 -1
  386. package/dist/storage/action-runs/provider.js +1 -1
  387. package/dist/storage/agents/in-memory.d.ts +2 -1
  388. package/dist/storage/agents/in-memory.d.ts.map +1 -1
  389. package/dist/storage/agents/index.d.ts +1 -1
  390. package/dist/storage/agents/index.d.ts.map +1 -1
  391. package/dist/storage/agents/provider.d.ts +5 -1
  392. package/dist/storage/agents/provider.d.ts.map +1 -1
  393. package/dist/storage/agents/provider.js +8 -4
  394. package/dist/storage/agents/provider.js.map +1 -1
  395. package/dist/storage/agents/types.d.ts +49 -0
  396. package/dist/storage/agents/types.d.ts.map +1 -1
  397. package/dist/storage/ai-cost/analytics.d.ts +1 -0
  398. package/dist/storage/ai-cost/analytics.d.ts.map +1 -1
  399. package/dist/storage/ai-cost/index.d.ts +1 -1
  400. package/dist/storage/ai-cost/index.d.ts.map +1 -1
  401. package/dist/storage/ai-cost/provider.js +2 -2
  402. package/dist/storage/ai-cost/types.d.ts +14 -2
  403. package/dist/storage/ai-cost/types.d.ts.map +1 -1
  404. package/dist/storage/ai-limits/enforcement.js +4 -3
  405. package/dist/storage/ai-limits/enforcement.js.map +1 -1
  406. package/dist/storage/connector-connections/in-memory.d.ts +1 -0
  407. package/dist/storage/connector-connections/in-memory.d.ts.map +1 -1
  408. package/dist/storage/connector-connections/provider/connections.d.ts.map +1 -1
  409. package/dist/storage/connector-connections/provider/runs.d.ts +1 -0
  410. package/dist/storage/connector-connections/provider/runs.d.ts.map +1 -1
  411. package/dist/storage/connector-connections/provider/shared.d.ts +1 -0
  412. package/dist/storage/connector-connections/provider/shared.d.ts.map +1 -1
  413. package/dist/storage/connector-connections/provider.d.ts +1 -0
  414. package/dist/storage/connector-connections/provider.d.ts.map +1 -1
  415. package/dist/storage/connector-connections/provider.js +12 -17
  416. package/dist/storage/connector-connections/provider.js.map +6 -6
  417. package/dist/storage/connector-connections/types.d.ts +3 -1
  418. package/dist/storage/connector-connections/types.d.ts.map +1 -1
  419. package/dist/storage/executions/provider.d.ts +3 -3
  420. package/dist/storage/executions/provider.d.ts.map +1 -1
  421. package/dist/storage/executions/provider.js +13 -11
  422. package/dist/storage/executions/provider.js.map +3 -3
  423. package/dist/storage/executions/types.d.ts +3 -0
  424. package/dist/storage/executions/types.d.ts.map +1 -1
  425. package/dist/storage/executions/validation.d.ts.map +1 -1
  426. package/dist/storage/index.d.ts +5 -3
  427. package/dist/storage/index.d.ts.map +1 -1
  428. package/dist/storage/index.js +25 -22
  429. package/dist/storage/index.js.map +1 -1
  430. package/dist/storage/internal.js +2 -2
  431. package/dist/storage/objects/in-memory/query.d.ts.map +1 -1
  432. package/dist/storage/objects/in-memory/read-source.d.ts +5 -0
  433. package/dist/storage/objects/in-memory/read-source.d.ts.map +1 -1
  434. package/dist/storage/objects/in-memory/selected-reader.d.ts.map +1 -1
  435. package/dist/storage/objects/in-memory/storage.d.ts +7 -0
  436. package/dist/storage/objects/in-memory/storage.d.ts.map +1 -1
  437. package/dist/storage/objects/types.d.ts +2 -0
  438. package/dist/storage/objects/types.d.ts.map +1 -1
  439. package/dist/storage/ontology/commits.d.ts +1 -0
  440. package/dist/storage/ontology/commits.d.ts.map +1 -1
  441. package/dist/storage/ontology/in-memory/index.d.ts +4 -0
  442. package/dist/storage/ontology/in-memory/index.d.ts.map +1 -1
  443. package/dist/storage/ontology/in-memory/materializations.d.ts +2 -0
  444. package/dist/storage/ontology/in-memory/materializations.d.ts.map +1 -1
  445. package/dist/storage/ontology/in-memory/shared-state.d.ts +7 -0
  446. package/dist/storage/ontology/in-memory/shared-state.d.ts.map +1 -1
  447. package/dist/storage/ontology/in-memory/vector-indexing.d.ts +44 -0
  448. package/dist/storage/ontology/in-memory/vector-indexing.d.ts.map +1 -0
  449. package/dist/storage/ontology/in-memory/vectors.d.ts +31 -0
  450. package/dist/storage/ontology/in-memory/vectors.d.ts.map +1 -0
  451. package/dist/storage/ontology/index.d.ts +6 -0
  452. package/dist/storage/ontology/index.d.ts.map +1 -1
  453. package/dist/storage/ontology/outbox.d.ts +1 -0
  454. package/dist/storage/ontology/outbox.d.ts.map +1 -1
  455. package/dist/storage/ontology/provider.js +2 -2
  456. package/dist/storage/ontology/vector-indexing.d.ts +94 -0
  457. package/dist/storage/ontology/vector-indexing.d.ts.map +1 -0
  458. package/dist/storage/ontology/vectors.d.ts +56 -0
  459. package/dist/storage/ontology/vectors.d.ts.map +1 -0
  460. package/dist/storage/operation-scope.d.ts.map +1 -1
  461. package/dist/storage/operation-scope.js +1 -1
  462. package/dist/storage/projection-runs/provider.js +4 -3
  463. package/dist/storage/projection-runs/provider.js.map +1 -1
  464. package/dist/storage/types.d.ts +1 -1
  465. package/dist/storage/types.d.ts.map +1 -1
  466. package/dist/storage/workflow-runs/provider.js +9 -7
  467. package/dist/storage/workflow-runs/provider.js.map +1 -1
  468. package/dist/syncs/index.js +29 -28
  469. package/dist/syncs/index.js.map +1 -1
  470. package/dist/testing/agent-storage-contract.d.ts.map +1 -1
  471. package/dist/testing/ai-cost-storage-contract.d.ts.map +1 -1
  472. package/dist/testing/index.js +488 -81
  473. package/dist/testing/index.js.map +10 -10
  474. package/dist/testing/lake-storage-contract.d.ts.map +1 -1
  475. package/dist/testing/object-query-contract.d.ts.map +1 -1
  476. package/dist/testing/object-read-scope-contract.d.ts.map +1 -1
  477. package/dist/testing/ontology-storage-contract.d.ts.map +1 -1
  478. package/dist/testing/queues-contract.d.ts.map +1 -1
  479. package/dist/webhooks/internal.js +24 -23
  480. package/dist/webhooks/internal.js.map +2 -2
  481. package/dist/workers/index.js +3 -2
  482. package/dist/workers/index.js.map +2 -2
  483. package/dist/workflows/failure.d.ts.map +1 -1
  484. package/dist/workflows/index.js +47 -43
  485. package/dist/workflows/index.js.map +1 -1
  486. package/package.json +1 -1
  487. package/src/actions/builders/params.ts +1 -48
  488. package/src/actions/types/params.ts +14 -74
  489. package/src/actions/validation.ts +7 -84
  490. package/src/agents/errors.ts +3 -0
  491. package/src/agents/execution.ts +67 -15
  492. package/src/agents/ids.ts +8 -0
  493. package/src/agents/index.ts +1 -0
  494. package/src/agents/model-loop.ts +7 -0
  495. package/src/agents/request.ts +11 -0
  496. package/src/agents/sandbox.ts +44 -0
  497. package/src/agents/validation.ts +2 -108
  498. package/src/blob-storage/types.ts +4 -1
  499. package/src/connectors/connections/command-context.ts +21 -4
  500. package/src/connectors/connections/contracts.ts +4 -1
  501. package/src/connectors/connections/execution.ts +3 -0
  502. package/src/connectors/connections/runs.ts +38 -1
  503. package/src/connectors/connections/service.ts +6 -0
  504. package/src/datasets/validation.ts +40 -11
  505. package/src/datasets/write.ts +8 -11
  506. package/src/error-reporting/capability.ts +11 -0
  507. package/src/error-reporting/reports.ts +23 -0
  508. package/src/error-reporting/types.ts +12 -1
  509. package/src/errors/catalog.ts +12 -0
  510. package/src/errors/failure-message.ts +15 -0
  511. package/src/errors/internal.ts +57 -25
  512. package/src/events/outbox-dispatcher.ts +20 -26
  513. package/src/execution/authorization.ts +12 -5
  514. package/src/execution/authorized-object-reader.ts +37 -2
  515. package/src/execution/kernel-operation.ts +27 -0
  516. package/src/execution/scopes.ts +2 -0
  517. package/src/execution/types.ts +4 -4
  518. package/src/index.ts +60 -1
  519. package/src/lake-storage/in-memory.ts +7 -3
  520. package/src/lake-storage/types.ts +2 -0
  521. package/src/maintenance/ontology-maintenance.ts +6 -2
  522. package/src/maintenance/types.ts +1 -1
  523. package/src/materialization/errors.ts +2 -2
  524. package/src/materialization/index.ts +1 -0
  525. package/src/materialization/model.ts +2 -0
  526. package/src/materialization/vectors.ts +18 -0
  527. package/src/materializer/README.md +15 -1
  528. package/src/materializer/context.ts +10 -0
  529. package/src/materializer/edits/commit.ts +8 -1
  530. package/src/materializer/edits/vector-authority.ts +108 -0
  531. package/src/materializer/edits/vectors.ts +100 -0
  532. package/src/materializer/effective/validate.ts +10 -3
  533. package/src/materializer/effective/vector-indexing.ts +84 -0
  534. package/src/materializer/effective/vectors.ts +47 -0
  535. package/src/materializer/execution/work-executor.ts +11 -3
  536. package/src/materializer/projections/replace.ts +1 -1
  537. package/src/materializer/shared/normalize.ts +11 -0
  538. package/src/materializer/telemetry/append.ts +1 -1
  539. package/src/models/catalog-index.ts +38 -0
  540. package/src/models/catalog.ts +66 -38
  541. package/src/models/decision/catalog.ts +32 -0
  542. package/src/models/decision/errors.ts +18 -0
  543. package/src/models/decision/output.ts +101 -0
  544. package/src/models/decision/questions.ts +29 -0
  545. package/src/models/decision/runtime.ts +188 -0
  546. package/src/models/decision/types.ts +109 -0
  547. package/src/models/decision/validation.ts +335 -0
  548. package/src/models/definitions.ts +20 -1
  549. package/src/models/embedding-model.ts +129 -0
  550. package/src/models/execution/README.md +63 -0
  551. package/src/models/execution/binding.ts +2 -0
  552. package/src/models/execution/embedding.ts +133 -0
  553. package/src/models/execution/model-call-recorder.ts +42 -30
  554. package/src/models/execution/session.ts +81 -0
  555. package/src/models/execution.ts +10 -52
  556. package/src/models/generation-types.ts +2 -0
  557. package/src/models/index.ts +37 -0
  558. package/src/models/pricing.ts +7 -4
  559. package/src/objects/authorized-ontology-view.ts +12 -8
  560. package/src/objects/execution.ts +2 -0
  561. package/src/objects/query/executor.ts +13 -4
  562. package/src/objects/query/explain.ts +7 -2
  563. package/src/objects/query/index.ts +2 -0
  564. package/src/objects/query/ir.ts +6 -2
  565. package/src/objects/query/normalize.ts +5 -1
  566. package/src/objects/query/validate.ts +74 -73
  567. package/src/objects/sdk/object-handle.ts +3 -0
  568. package/src/objects/sdk/object-set.ts +1 -0
  569. package/src/objects/sdk/query-builder.ts +9 -3
  570. package/src/objects/sdk/query-executor.ts +2 -1
  571. package/src/objects/sdk/runtime-query-executor.ts +6 -2
  572. package/src/objects/vectors/README.md +59 -0
  573. package/src/objects/vectors/handle.ts +91 -0
  574. package/src/objects/vectors/indexing-batch.ts +163 -0
  575. package/src/objects/vectors/indexing-generate.ts +184 -0
  576. package/src/objects/vectors/indexing-runtime.ts +17 -0
  577. package/src/objects/vectors/indexing-shared.ts +188 -0
  578. package/src/objects/vectors/indexing-single.ts +51 -0
  579. package/src/objects/vectors/indexing-store-batch.ts +62 -0
  580. package/src/objects/vectors/indexing.ts +23 -0
  581. package/src/objects/vectors/profile.ts +64 -0
  582. package/src/objects/vectors/query.ts +16 -0
  583. package/src/objects/vectors/resolve-query.ts +89 -0
  584. package/src/objects/vectors/types.ts +10 -0
  585. package/src/ontology/index.ts +2 -0
  586. package/src/ontology/registry.ts +8 -0
  587. package/src/ontology/types.ts +9 -9
  588. package/src/ontology/validation/definition.ts +104 -0
  589. package/src/ontology/validation/properties.ts +14 -4
  590. package/src/ontology/validation/query.ts +34 -51
  591. package/src/ontology/validation/schema.ts +85 -23
  592. package/src/ontology/vector-profiles.ts +35 -0
  593. package/src/queues/in-memory.ts +5 -0
  594. package/src/queues/index.ts +1 -0
  595. package/src/queues/types.ts +10 -0
  596. package/src/runtime/create.ts +7 -6
  597. package/src/runtime/host.ts +42 -6
  598. package/src/runtime/internal.ts +3 -0
  599. package/src/runtime/resolve-definitions.ts +19 -1
  600. package/src/runtime/sixb.ts +27 -9
  601. package/src/runtime/types.ts +16 -4
  602. package/src/sandboxes/README.md +41 -0
  603. package/src/sandboxes/auth.ts +17 -0
  604. package/src/sandboxes/config.ts +37 -0
  605. package/src/sandboxes/configuration.ts +268 -0
  606. package/src/sandboxes/environment.ts +107 -0
  607. package/src/sandboxes/errors.ts +1 -1
  608. package/src/sandboxes/index.ts +15 -0
  609. package/src/sandboxes/sandbox.ts +38 -3
  610. package/src/shared/params/builders.ts +50 -0
  611. package/src/shared/params/types.ts +84 -0
  612. package/src/shared/params/validation.ts +114 -0
  613. package/src/storage/agents/in-memory.ts +25 -1
  614. package/src/storage/agents/index.ts +3 -0
  615. package/src/storage/agents/provider.ts +105 -0
  616. package/src/storage/agents/types.ts +54 -0
  617. package/src/storage/ai-cost/analytics.ts +59 -21
  618. package/src/storage/ai-cost/index.ts +1 -0
  619. package/src/storage/ai-cost/types.ts +19 -2
  620. package/src/storage/connector-connections/in-memory.ts +16 -18
  621. package/src/storage/connector-connections/provider/connections.ts +1 -15
  622. package/src/storage/connector-connections/provider/runs.ts +6 -0
  623. package/src/storage/connector-connections/provider/shared.ts +2 -3
  624. package/src/storage/connector-connections/provider.ts +6 -0
  625. package/src/storage/connector-connections/types.ts +5 -1
  626. package/src/storage/executions/provider.ts +24 -12
  627. package/src/storage/executions/types.ts +1 -0
  628. package/src/storage/executions/validation.ts +7 -3
  629. package/src/storage/index.ts +15 -1
  630. package/src/storage/objects/in-memory/query.ts +25 -11
  631. package/src/storage/objects/in-memory/read-scope.ts +9 -2
  632. package/src/storage/objects/in-memory/read-source.ts +5 -0
  633. package/src/storage/objects/in-memory/selected-reader.ts +5 -1
  634. package/src/storage/objects/in-memory/storage.ts +19 -1
  635. package/src/storage/objects/types.ts +2 -0
  636. package/src/storage/ontology/commits.ts +1 -0
  637. package/src/storage/ontology/in-memory/index.ts +20 -0
  638. package/src/storage/ontology/in-memory/materializations.ts +13 -0
  639. package/src/storage/ontology/in-memory/shared-state.ts +19 -3
  640. package/src/storage/ontology/in-memory/vector-indexing.ts +179 -0
  641. package/src/storage/ontology/in-memory/vectors.ts +73 -0
  642. package/src/storage/ontology/index.ts +14 -0
  643. package/src/storage/ontology/outbox.ts +1 -0
  644. package/src/storage/ontology/vector-indexing.ts +98 -0
  645. package/src/storage/ontology/vectors.ts +48 -0
  646. package/src/storage/operation-scope.ts +1 -0
  647. package/src/storage/types.ts +3 -0
  648. package/src/testing/agent-storage-contract.ts +246 -0
  649. package/src/testing/ai-cost-storage-contract.ts +134 -0
  650. package/src/testing/connector-connection-storage-contract.ts +11 -11
  651. package/src/testing/lake-storage-contract.ts +29 -0
  652. package/src/testing/object-query-contract.ts +41 -25
  653. package/src/testing/object-read-scope-contract.ts +1 -5
  654. package/src/testing/ontology-storage-contract.ts +8 -3
  655. package/src/testing/queues-contract.ts +31 -0
  656. package/src/workflows/failure.ts +10 -4
  657. package/src/workflows/validation.ts +2 -2
  658. package/dist/chunk-5hz0fnca.js.map +0 -12
  659. package/dist/chunk-5p1v802y.js.map +0 -44
  660. package/dist/chunk-7apz6hg4.js.map +0 -10
  661. package/dist/chunk-7bs40fe1.js.map +0 -12
  662. package/dist/chunk-860dwwy0.js.map +0 -14
  663. package/dist/chunk-93csa55g.js.map +0 -11
  664. package/dist/chunk-aa6z4a19.js.map +0 -12
  665. package/dist/chunk-ap0g1g74.js.map +0 -11
  666. package/dist/chunk-e0d1rzef.js.map +0 -15
  667. package/dist/chunk-f0rwz2vh.js.map +0 -11
  668. package/dist/chunk-f4w3yp4f.js.map +0 -12
  669. package/dist/chunk-g7knyczr.js.map +0 -14
  670. package/dist/chunk-mrp7k0pw.js.map +0 -10
  671. package/dist/chunk-ms2tmn1k.js.map +0 -17
  672. package/dist/chunk-nmbxcaqx.js.map +0 -19
  673. package/dist/chunk-nt99sxd6.js.map +0 -14
  674. package/dist/chunk-p6a4npdx.js.map +0 -58
  675. package/dist/chunk-qyeptdyv.js.map +0 -15
  676. package/dist/chunk-r7fj830t.js.map +0 -36
  677. package/dist/chunk-rb1xx120.js.map +0 -11
  678. package/dist/chunk-yv79ncbv.js.map +0 -10
  679. package/dist/chunk-z3y411fq.js +0 -99
  680. package/dist/chunk-z3y411fq.js.map +0 -11
  681. /package/dist/{chunk-17kfctj6.js.map → chunk-0mza4xb2.js.map} +0 -0
  682. /package/dist/{chunk-rtk71jzp.js.map → chunk-3bnt2wna.js.map} +0 -0
  683. /package/dist/{chunk-awbhdqyc.js.map → chunk-3ghw2t5q.js.map} +0 -0
  684. /package/dist/{chunk-b19g04jk.js.map → chunk-3h7ctayx.js.map} +0 -0
  685. /package/dist/{chunk-wjasrj67.js.map → chunk-3qpcrcj8.js.map} +0 -0
  686. /package/dist/{chunk-0y39rgsb.js.map → chunk-5tetw4hn.js.map} +0 -0
  687. /package/dist/{chunk-c5rkjrgp.js.map → chunk-7ytf06d3.js.map} +0 -0
  688. /package/dist/{chunk-358caqf5.js.map → chunk-bfjv1adk.js.map} +0 -0
  689. /package/dist/{chunk-b0ec55a1.js.map → chunk-bg2bs62d.js.map} +0 -0
  690. /package/dist/{chunk-g6cke204.js.map → chunk-f85hpqnm.js.map} +0 -0
  691. /package/dist/{chunk-vsj3mdfj.js.map → chunk-fc5zfxy1.js.map} +0 -0
  692. /package/dist/{chunk-1824gssz.js.map → chunk-gswwr35f.js.map} +0 -0
  693. /package/dist/{chunk-92vk7gta.js.map → chunk-gzt6v1ja.js.map} +0 -0
  694. /package/dist/{chunk-gqh45d2n.js.map → chunk-hkw8rykk.js.map} +0 -0
  695. /package/dist/{chunk-5c7ga8zz.js.map → chunk-jjwhy3rs.js.map} +0 -0
  696. /package/dist/{chunk-9qsh3p5y.js.map → chunk-rb143ggb.js.map} +0 -0
  697. /package/dist/{chunk-653vwrzr.js.map → chunk-rdghfsss.js.map} +0 -0
  698. /package/dist/{chunk-bn138h9w.js.map → chunk-t7dzd1tm.js.map} +0 -0
  699. /package/dist/{chunk-pr2h4bv4.js.map → chunk-tg4g4zh0.js.map} +0 -0
  700. /package/dist/{chunk-8vj0rjgs.js.map → chunk-wjffn5m4.js.map} +0 -0
  701. /package/dist/{chunk-agbbygvh.js.map → chunk-xn686q2e.js.map} +0 -0
  702. /package/dist/{chunk-v2vcg0w6.js.map → chunk-xtfryrfb.js.map} +0 -0
@@ -1,13 +1,17 @@
1
1
  // @bun
2
2
  import {
3
3
  createSixbError2
4
- } from "./chunk-f4w3yp4f.js";
4
+ } from "./chunk-hzw7yv5g.js";
5
5
  import {
6
6
  compileSelectedObjectReadScope2
7
7
  } from "./chunk-v4jbb3rs.js";
8
8
  import {
9
9
  resolveSemanticType2
10
- } from "./chunk-ms2tmn1k.js";
10
+ } from "./chunk-vsg0g7h9.js";
11
+ import {
12
+ kernelOperationId,
13
+ kernelOperationFromId
14
+ } from "./chunk-58geavnf.js";
11
15
  import {
12
16
  compareStrings
13
17
  } from "./chunk-wy0qdqfm.js";
@@ -481,6 +485,14 @@ function createTrustedPrimitiveRuntimeAuthorization(input) {
481
485
  ref: Object.freeze({ type: "trustedPrimitive", primitive })
482
486
  });
483
487
  }
488
+ function createKernelRuntimeAuthorization(input) {
489
+ const operation = snapshotKernelOperation(input.operation);
490
+ return register(input.execution, {
491
+ type: "unrestricted",
492
+ projectId: input.execution.projectId,
493
+ ref: Object.freeze({ type: "kernel", operation })
494
+ });
495
+ }
484
496
  function resolveRuntimeAuthorization(authorization) {
485
497
  if (!isRuntimeAuthorizationCapability(authorization)) {
486
498
  return { type: "denied" };
@@ -603,7 +615,7 @@ function assertResolvedAuthorizationMatchesExecution(resolved, execution) {
603
615
  return;
604
616
  throw invalidExecutionAuthority(execution.id, "agent authority must be principal or explicitly disabled");
605
617
  case "kernel":
606
- if (resolved.type !== "unrestricted" || resolved.ref.type !== "kernel" || execution.requestedBy !== undefined || resolved.ref.operation.type !== execution.executor.operation.type || resolved.ref.operation.recoveryId !== execution.executor.operation.recoveryId) {
618
+ if (resolved.type !== "unrestricted" || resolved.ref.type !== "kernel" || execution.requestedBy !== undefined || resolved.ref.operation.type !== execution.executor.operation.type || kernelOperationId(resolved.ref.operation) !== kernelOperationId(execution.executor.operation)) {
607
619
  throw invalidExecutionAuthority(execution.id, "kernel authority does not match its executor");
608
620
  }
609
621
  return;
@@ -674,6 +686,9 @@ function snapshotExecutionExecutor(executor) {
674
686
  }
675
687
  function snapshotExecutionSource(source) {
676
688
  switch (source.type) {
689
+ case "ontologyCommit":
690
+ assertNonEmpty(source.commitId, "Execution source commit id");
691
+ return Object.freeze({ type: source.type, commitId: source.commitId });
677
692
  case "http":
678
693
  assertNonEmpty(source.requestId, "Execution source request id");
679
694
  return Object.freeze({ type: "http", requestId: source.requestId });
@@ -796,11 +811,11 @@ function snapshotTrustedPrimitive(primitive) {
796
811
  return Object.freeze({ kind: primitive.kind, id: primitive.id, runId: primitive.runId });
797
812
  }
798
813
  function snapshotKernelOperation(operation) {
799
- if (operation.type !== "ontology.recover") {
800
- throw new Error(`[Sixb] Unknown kernel operation '${operation.type}'.`);
814
+ if (operation.type !== "ontology.recover" && operation.type !== "ontology.indexVectors") {
815
+ throw new Error(`[Sixb] Unknown kernel operation '${String(operation.type)}'.`);
801
816
  }
802
- assertNonEmpty(operation.recoveryId, "Kernel recovery id");
803
- return Object.freeze({ type: operation.type, recoveryId: operation.recoveryId });
817
+ assertNonEmpty(kernelOperationId(operation), "Kernel operation id");
818
+ return Object.freeze(kernelOperationFromId(operation.type, kernelOperationId(operation)));
804
819
  }
805
820
  function snapshotDelegatedActionApply(input) {
806
821
  if (!Array.isArray(input)) {
@@ -1882,6 +1897,6 @@ function canViewProjection2(authorization, projection) {
1882
1897
  function emptyGrantIndex2() {
1883
1898
  return emptyGrantSets();
1884
1899
  }
1885
- export { ProjectionValidationError2, computeProjectionOwnership2, validateProjectionOwnership2, validateTelemetryProjectionFieldMapping2, validateProjectionsAtStartup, defineProjection2, fromForeignKey2, isObjectProjectionDefinition2, isLinkProjectionDefinition2, isTelemetryProjectionDefinition2, isProjectionDefinition2, projectionTargetOf2, agentServiceAccountId2, GRANT_KINDS, grantKindOf, MAX_OBJECT_READ_FACETS2, ObjectReadLimitExceededError2, snapshotObjectReadExecutionLimits2, assertObjectReadFacetCount2, assertObjectReadOutputWithinLimit2, createPrincipalRuntimeAuthorization, createAgentRuntimeAuthorization, createDisabledRuntimeAuthorization, createDelegatedRuntimeAuthorization, createTrustedPrimitiveRuntimeAuthorization, resolveRuntimeAuthorizationForProject, getAuthorizationRef, captureExecutionScope, resolveExecutionScopeAuthorization, AuthorizationError2, evaluate2, isAllowed2, assertAuthorized2, isRuntimeAllowed2, assertRuntimeAuthorizationBound2, assertCanEdit2, assertCanAppendTelemetry2, assertCanManageConnector2, assertPrivileged2, assertProviderAccess2, isApplicationAccessControlled2, canAccessApplication2, canViewEvent2, resolveRoleGrants2, resolveAuthorizationContext2, canViewActionRun2, canViewWorkflowRun2, canViewWorkflowIntervention2, canViewPipelineRun2, canViewProjectionRun2, canViewProjection2, emptyGrantIndex2 };
1900
+ export { ProjectionValidationError2, computeProjectionOwnership2, validateProjectionOwnership2, validateTelemetryProjectionFieldMapping2, validateProjectionsAtStartup, defineProjection2, fromForeignKey2, isObjectProjectionDefinition2, isLinkProjectionDefinition2, isTelemetryProjectionDefinition2, isProjectionDefinition2, projectionTargetOf2, agentServiceAccountId2, GRANT_KINDS, grantKindOf, MAX_OBJECT_READ_FACETS2, ObjectReadLimitExceededError2, snapshotObjectReadExecutionLimits2, assertObjectReadFacetCount2, assertObjectReadOutputWithinLimit2, createPrincipalRuntimeAuthorization, createAgentRuntimeAuthorization, createDisabledRuntimeAuthorization, createDelegatedRuntimeAuthorization, createTrustedPrimitiveRuntimeAuthorization, createKernelRuntimeAuthorization, resolveRuntimeAuthorizationForProject, getAuthorizationRef, captureExecutionScope, resolveExecutionScopeAuthorization, AuthorizationError2, evaluate2, isAllowed2, assertAuthorized2, isRuntimeAllowed2, assertRuntimeAuthorizationBound2, assertCanEdit2, assertCanAppendTelemetry2, assertCanManageConnector2, assertPrivileged2, assertProviderAccess2, isApplicationAccessControlled2, canAccessApplication2, canViewEvent2, resolveRoleGrants2, resolveAuthorizationContext2, canViewActionRun2, canViewWorkflowRun2, canViewWorkflowIntervention2, canViewPipelineRun2, canViewProjectionRun2, canViewProjection2, emptyGrantIndex2 };
1886
1901
 
1887
- //# debugId=C7649C713C108F6A64756E2164756E21
1902
+ //# debugId=081671DAEDB8F65F64756E2164756E21
@@ -2,11 +2,11 @@
2
2
  "version": 3,
3
3
  "sources": ["../src/execution/authorization.ts", "../src/agents/identity.ts", "../src/authorization/grant-kinds.ts", "../src/storage/objects/execution-limits.ts", "../src/execution/types.ts", "../src/authorization/errors.ts", "../src/authorization/decision.ts", "../src/authorization/application-access.ts", "../src/authorization/event-visibility.ts", "../src/authorization/resolve.ts", "../src/projections/errors.ts", "../src/projections/ownership.ts", "../src/projections/validation.ts", "../src/projections/builders.ts", "../src/authorization/run-visibility.ts", "../src/authorization/types.ts"],
4
4
  "sourcesContent": [
5
- "import { isDeepStrictEqual } from \"node:util\"\nimport { agentServiceAccountId } from \"../agents/identity\"\nimport type { Principal } from \"../auth\"\nimport { TARGETED_GRANT_KIND_KEYS, type TargetedGrantKind } from \"../authorization/grant-kinds\"\nimport type { AuthorizationContext, GrantIndex } from \"../authorization/types\"\nimport { createSixbError } from \"../errors/internal\"\nimport type { ObjectRef } from \"../ontology\"\nimport {\n type ObjectReadExecutionLimits,\n snapshotObjectReadExecutionLimits,\n} from \"../storage/objects/execution-limits\"\nimport { compileSelectedObjectReadScope } from \"../storage/objects/read-scope\"\nimport type {\n CompiledSelectedObjectReadScope,\n SelectedObjectReadScope,\n} from \"../storage/objects/types\"\nimport {\n type AuthorizablePrincipal,\n type AuthorizationRef,\n createRuntimeAuthorizationCapability,\n type ExecutionContext,\n type ExecutionScope,\n isRuntimeAuthorizationCapability,\n type KernelOperation,\n type RuntimeAuthorization,\n type TrustedPrimitiveKind,\n type TrustedPrimitiveRef,\n} from \"./types\"\n\nexport type ResolvedRuntimeAuthorization =\n | {\n readonly type: \"principal\"\n readonly projectId: string\n readonly context: AuthorizationContext\n readonly ref: Extract<AuthorizationRef, { readonly type: \"principal\" }>\n }\n | {\n readonly type: \"unrestricted\"\n readonly projectId: string\n readonly ref: Exclude<AuthorizationRef, { readonly type: \"principal\" | \"delegated\" }>\n }\n | {\n readonly type: \"delegated\"\n readonly projectId: string\n readonly objectRead: DelegatedObjectReadAuthorization\n readonly actionApply: readonly DelegatedActionApplyTarget[]\n readonly delegation?: Extract<AuthorizationRef, { readonly type: \"delegated\" }>[\"delegation\"]\n }\n | { readonly type: \"denied\" }\n\n/** Immutable process-local object-read authority. It has no durable representation. */\nexport interface DelegatedObjectReadAuthorization {\n readonly scope: CompiledSelectedObjectReadScope\n readonly limits: ObjectReadExecutionLimits\n}\n\n/** One exact object-bound Action target carried by process-local delegated authority. */\nexport interface DelegatedActionApplyTarget {\n readonly actionId: string\n readonly subject: ObjectRef\n}\n\ntype RegisteredRuntimeAuthorization = Exclude<\n ResolvedRuntimeAuthorization,\n { readonly type: \"denied\" }\n>\n\ntype PrincipalAuthorizationContext = Omit<AuthorizationContext, \"principal\"> & {\n readonly principal: AuthorizablePrincipal\n}\n\ninterface RuntimeAuthorizationRegistration {\n readonly resolved: RegisteredRuntimeAuthorization\n readonly execution: ExecutionContext\n}\n\nconst registeredAuthorizations = new WeakMap<\n RuntimeAuthorization,\n RuntimeAuthorizationRegistration\n>()\n\nconst MAX_DELEGATED_ACTION_APPLY_TARGETS = 4_096\nconst MAX_DELEGATED_ACTION_IDENTIFIER_CHARACTERS = 1_000_000\n\nexport function createPrincipalRuntimeAuthorization(input: {\n readonly execution: ExecutionContext\n readonly context: AuthorizationContext\n readonly credential?: Extract<AuthorizationRef, { readonly type: \"principal\" }>[\"credential\"]\n}): RuntimeAuthorization {\n if (input.execution.executor.type !== \"request\") {\n throw new Error(\"[Sixb] Principal runtime authorization requires a request execution.\")\n }\n return createRegisteredPrincipalAuthorization(input)\n}\n\n/** Register restored authority bound to one exact agent run. */\nexport function createAgentRuntimeAuthorization(input: {\n readonly execution: ExecutionContext\n readonly authority:\n | {\n readonly type: \"principal\"\n readonly context: AuthorizationContext\n readonly credential?: Extract<\n AuthorizationRef,\n { readonly type: \"principal\" }\n >[\"credential\"]\n }\n | { readonly type: \"disabled\" }\n}): RuntimeAuthorization {\n if (input.execution.executor.type !== \"agent\") {\n throw new Error(\"[Sixb] Agent runtime authorization requires an Agent execution.\")\n }\n\n if (input.authority.type === \"principal\") {\n return createRegisteredPrincipalAuthorization({\n execution: input.execution,\n context: input.authority.context,\n ...(input.authority.credential === undefined\n ? {}\n : { credential: input.authority.credential }),\n })\n }\n\n return register(input.execution, {\n type: \"unrestricted\",\n projectId: input.execution.projectId,\n ref: Object.freeze({ type: \"disabled\" }),\n })\n}\n\nfunction createRegisteredPrincipalAuthorization(input: {\n readonly execution: ExecutionContext\n readonly context: AuthorizationContext\n readonly credential?: Extract<AuthorizationRef, { readonly type: \"principal\" }>[\"credential\"]\n}): RuntimeAuthorization {\n const context = snapshotAuthorizationContext(input.context)\n const credential = input.credential ? snapshotCredential(input.credential) : undefined\n assertCredentialMatchesContext(context, credential)\n const ref: Extract<AuthorizationRef, { readonly type: \"principal\" }> = Object.freeze({\n type: \"principal\",\n principal: context.principal,\n ...(credential === undefined ? {} : { credential }),\n })\n return register(input.execution, {\n type: \"principal\",\n projectId: input.execution.projectId,\n context,\n ref,\n })\n}\n\nexport function createDisabledRuntimeAuthorization(\n execution: ExecutionContext\n): RuntimeAuthorization {\n return register(execution, {\n type: \"unrestricted\",\n projectId: execution.projectId,\n ref: Object.freeze({ type: \"disabled\" }),\n })\n}\n\n/** Register exact object-read authority without fabricating a principal identity. */\nexport function createDelegatedRuntimeAuthorization(input: {\n readonly execution: ExecutionContext\n readonly objectRead: {\n readonly selection: SelectedObjectReadScope\n readonly limits: ObjectReadExecutionLimits\n }\n readonly actionApply?: readonly DelegatedActionApplyTarget[]\n readonly delegation?: Extract<AuthorizationRef, { readonly type: \"delegated\" }>[\"delegation\"]\n}): RuntimeAuthorization {\n const execution = input.execution\n const objectReadInput = input.objectRead\n const actionApplyInput = input.actionApply\n const delegationInput = input.delegation\n const delegation =\n delegationInput === undefined ? undefined : snapshotSharedDelegation(delegationInput)\n if (execution.executor.type !== \"request\" || execution.requestedBy !== undefined) {\n throw new Error(\n \"[Sixb] Delegated runtime authorization requires a request execution without a principal.\"\n )\n }\n\n const objectRead = Object.freeze({\n scope: compileSelectedObjectReadScope(objectReadInput.selection),\n limits: snapshotObjectReadExecutionLimits(objectReadInput.limits),\n })\n return register(execution, {\n type: \"delegated\",\n projectId: execution.projectId,\n objectRead,\n actionApply: snapshotDelegatedActionApply(actionApplyInput ?? []),\n ...(delegation === undefined ? {} : { delegation }),\n })\n}\n\nexport function createTrustedPrimitiveRuntimeAuthorization(input: {\n readonly execution: ExecutionContext\n readonly primitive: TrustedPrimitiveRef\n}): RuntimeAuthorization {\n const primitive = snapshotTrustedPrimitive(input.primitive)\n return register(input.execution, {\n type: \"unrestricted\",\n projectId: input.execution.projectId,\n ref: Object.freeze({ type: \"trustedPrimitive\", primitive }),\n })\n}\n\nexport function createKernelRuntimeAuthorization(input: {\n readonly execution: ExecutionContext\n readonly operation: KernelOperation\n}): RuntimeAuthorization {\n const operation = snapshotKernelOperation(input.operation)\n return register(input.execution, {\n type: \"unrestricted\",\n projectId: input.execution.projectId,\n ref: Object.freeze({ type: \"kernel\", operation }),\n })\n}\n\nexport function resolveRuntimeAuthorization(authorization: unknown): ResolvedRuntimeAuthorization {\n if (!isRuntimeAuthorizationCapability(authorization)) {\n return { type: \"denied\" }\n }\n return registeredAuthorizations.get(authorization)?.resolved ?? { type: \"denied\" }\n}\n\n/**\n * Resolve authority from a runtime already admitted by `SixbHost.withScope`.\n *\n * Bound runtime facades carry no second execution value to recombine. Any lower-level boundary\n * that receives an `ExecutionContext` separately must use `resolveExecutionScopeAuthorization`.\n */\nexport function resolveRuntimeAuthorizationForProject(input: {\n readonly projectId: unknown\n readonly runtimeAuthorization?: unknown\n}): ResolvedRuntimeAuthorization {\n const resolved = resolveRuntimeAuthorization(input.runtimeAuthorization)\n if (\n resolved.type === \"denied\" ||\n typeof input.projectId !== \"string\" ||\n resolved.projectId !== input.projectId\n ) {\n return { type: \"denied\" }\n }\n return resolved\n}\n\nexport function getAuthorizationRef(authorization: RuntimeAuthorization): AuthorizationRef {\n const resolved = resolveRuntimeAuthorization(authorization)\n if (resolved.type === \"denied\") {\n throw new Error(\"[Sixb] Runtime authorization is not a registered Core capability.\")\n }\n if (resolved.type === \"delegated\") {\n if (resolved.delegation) {\n return { type: \"delegated\", delegation: { ...resolved.delegation } }\n }\n throw new Error(\n \"[Sixb] Delegated runtime authorization cannot cross a durable execution boundary.\"\n )\n }\n return cloneAuthorizationRef(resolved.ref)\n}\n\nfunction snapshotSharedDelegation(\n input: Extract<AuthorizationRef, { readonly type: \"delegated\" }>[\"delegation\"]\n): Extract<AuthorizationRef, { readonly type: \"delegated\" }>[\"delegation\"] {\n const kind = input.kind\n const grantId = input.grantId\n const sessionId = input.sessionId\n if (kind !== \"share\") throw new Error(\"[Sixb] Unknown delegated authority provenance.\")\n assertNonEmpty(grantId, \"Share grant id\")\n assertNonEmpty(sessionId, \"Share session id\")\n return Object.freeze({ kind, grantId, sessionId })\n}\n\nexport function assertExecutionScopeProject(projectId: string, scope: ExecutionScope): void {\n assertNonEmpty(projectId, \"Project id\")\n if (scope.execution.projectId !== projectId) {\n throw createSixbError(\n \"internal.unexpected\",\n `[Sixb] Execution scope belongs to project '${scope.execution.projectId}', not '${projectId}'.`,\n {\n details: {\n executionId: scope.execution.id,\n expectedProjectId: projectId,\n scopeProjectId: scope.execution.projectId,\n },\n }\n )\n }\n\n const resolved = resolveRuntimeAuthorization(scope.authorization)\n if (resolved.type === \"denied\") {\n throw createSixbError(\n \"internal.unexpected\",\n \"[Sixb] Execution scope carries unregistered runtime authorization.\",\n { details: { executionId: scope.execution.id, projectId } }\n )\n }\n if (resolved.projectId !== projectId) {\n throw createSixbError(\n \"internal.unexpected\",\n `[Sixb] Execution authorization belongs to project '${resolved.projectId}', not '${projectId}'.`,\n {\n details: {\n authorizationProjectId: resolved.projectId,\n executionId: scope.execution.id,\n expectedProjectId: projectId,\n },\n }\n )\n }\n}\n\n/**\n * Capture the two opaque capabilities carried by a scope exactly once.\n *\n * Security-sensitive boundaries must not resolve a caller-owned wrapper and then read it again:\n * accessor-backed inputs could otherwise substitute a different execution or authority between\n * those operations.\n */\nexport function captureExecutionScope(scope: ExecutionScope): ExecutionScope {\n const execution = scope.execution\n const authorization = scope.authorization\n return Object.freeze({ execution, authorization })\n}\n\n/** Validate that one registered authority belongs to the exact execution it accompanies. */\nexport function resolveExecutionScopeAuthorization(\n projectId: string,\n scope: ExecutionScope\n): RegisteredRuntimeAuthorization {\n const capturedScope = captureExecutionScope(scope)\n assertExecutionScopeProject(projectId, capturedScope)\n const resolved = resolveRuntimeAuthorization(capturedScope.authorization)\n if (resolved.type === \"denied\") {\n throw createSixbError(\n \"internal.unexpected\",\n \"[Sixb] Execution scope carries unregistered runtime authorization.\",\n { details: { executionId: capturedScope.execution.id, projectId } }\n )\n }\n\n const registration = registeredAuthorizations.get(capturedScope.authorization)\n if (!registration || !executionMatchesBinding(registration.execution, capturedScope.execution)) {\n throw invalidExecutionAuthority(\n capturedScope.execution.id,\n \"authority is bound to different execution provenance\"\n )\n }\n\n assertResolvedAuthorizationMatchesExecution(resolved, capturedScope.execution)\n return resolved\n}\n\nfunction assertResolvedAuthorizationMatchesExecution(\n resolved: RegisteredRuntimeAuthorization,\n execution: ExecutionContext\n): void {\n switch (execution.executor.type) {\n case \"request\":\n if (\n execution.source.type !== \"http\" ||\n execution.source.requestId !== execution.executor.requestId\n ) {\n throw invalidExecutionAuthority(execution.id, \"request source does not match its executor\")\n }\n if (resolved.type === \"principal\") {\n if (!principalsEqual(execution.requestedBy, resolved.ref.principal)) {\n throw invalidExecutionAuthority(\n execution.id,\n \"request authority does not match its requested-by principal\"\n )\n }\n return\n }\n if (\n resolved.type === \"unrestricted\" &&\n resolved.ref.type === \"disabled\" &&\n execution.requestedBy === undefined\n ) {\n return\n }\n if (resolved.type === \"delegated\" && execution.requestedBy === undefined) return\n throw invalidExecutionAuthority(\n execution.id,\n \"request execution requires principal, delegated, or explicitly disabled authority\"\n )\n\n case \"primitive\":\n if (\n resolved.type !== \"unrestricted\" ||\n resolved.ref.type !== \"trustedPrimitive\" ||\n resolved.ref.primitive.kind !== execution.executor.kind ||\n resolved.ref.primitive.id !== execution.executor.id ||\n resolved.ref.primitive.runId !== execution.executor.runId\n ) {\n throw invalidExecutionAuthority(\n execution.id,\n \"trusted primitive authority does not match its executor\"\n )\n }\n return\n\n case \"agent\":\n if (execution.source.type !== \"execution\") {\n throw invalidExecutionAuthority(\n execution.id,\n \"agent execution requires an execution source\"\n )\n }\n if (resolved.type === \"principal\" && resolved.ref.type === \"principal\") {\n if (resolved.ref.principal.type === \"serviceAccount\") {\n const actorId = execution.executor.actorId\n if (\n actorId === undefined ||\n resolved.ref.principal.id !== agentServiceAccountId(actorId) ||\n resolved.ref.credential !== undefined\n ) {\n throw invalidExecutionAuthority(\n execution.id,\n \"agent authority must reference its managed service account\"\n )\n }\n } else if (resolved.ref.credential === undefined) {\n throw invalidExecutionAuthority(\n execution.id,\n \"inherited user agent authority requires a credential\"\n )\n }\n return\n }\n if (resolved.type === \"unrestricted\" && resolved.ref.type === \"disabled\") return\n throw invalidExecutionAuthority(\n execution.id,\n \"agent authority must be principal or explicitly disabled\"\n )\n\n case \"kernel\":\n if (\n resolved.type !== \"unrestricted\" ||\n resolved.ref.type !== \"kernel\" ||\n execution.requestedBy !== undefined ||\n resolved.ref.operation.type !== execution.executor.operation.type ||\n resolved.ref.operation.recoveryId !== execution.executor.operation.recoveryId\n ) {\n throw invalidExecutionAuthority(\n execution.id,\n \"kernel authority does not match its executor\"\n )\n }\n return\n }\n}\n\nfunction principalsEqual(\n left: AuthorizablePrincipal | undefined,\n right: AuthorizablePrincipal | undefined\n): boolean {\n return left?.type === right?.type && left?.id === right?.id\n}\n\nfunction invalidExecutionAuthority(executionId: string, reason: string): Error {\n return createSixbError(\n \"internal.unexpected\",\n `[Sixb] Execution '${executionId}' is incompatible with its authority: ${reason}.`,\n { details: { executionId, reason } }\n )\n}\n\nfunction register(\n execution: ExecutionContext,\n input: RegisteredRuntimeAuthorization\n): RuntimeAuthorization {\n assertNonEmpty(input.projectId, \"Authorization project id\")\n const executionBinding = snapshotExecutionContext(execution)\n if (input.projectId !== executionBinding.projectId) {\n throw new Error(\n `[Sixb] Runtime authorization belongs to project '${input.projectId}', not execution project '${executionBinding.projectId}'.`\n )\n }\n assertResolvedAuthorizationMatchesExecution(input, executionBinding)\n const authorization = createRuntimeAuthorizationCapability()\n registeredAuthorizations.set(\n authorization,\n Object.freeze({ resolved: Object.freeze(input), execution: executionBinding })\n )\n return authorization\n}\n\nfunction executionMatchesBinding(binding: ExecutionContext, execution: ExecutionContext): boolean {\n try {\n return isDeepStrictEqual(binding, snapshotExecutionContext(execution))\n } catch {\n return false\n }\n}\n\nfunction snapshotExecutionContext(execution: ExecutionContext): ExecutionContext {\n assertNonEmpty(execution.id, \"Execution id\")\n assertNonEmpty(execution.projectId, \"Execution project id\")\n assertNonEmpty(execution.correlationId, \"Execution correlation id\")\n return Object.freeze({\n id: execution.id,\n projectId: execution.projectId,\n ...(execution.requestedBy === undefined\n ? {}\n : { requestedBy: snapshotAuthorizablePrincipal(execution.requestedBy) }),\n executor: snapshotExecutionExecutor(execution.executor),\n source: snapshotExecutionSource(execution.source),\n correlationId: execution.correlationId,\n })\n}\n\nfunction snapshotExecutionExecutor(\n executor: ExecutionContext[\"executor\"]\n): ExecutionContext[\"executor\"] {\n switch (executor.type) {\n case \"request\":\n assertNonEmpty(executor.requestId, \"Execution request id\")\n return Object.freeze({ type: \"request\", requestId: executor.requestId })\n case \"primitive\": {\n const primitive = snapshotTrustedPrimitive(executor)\n return Object.freeze({ type: \"primitive\", ...primitive })\n }\n case \"agent\":\n if (executor.actorId !== undefined)\n assertNonEmpty(executor.actorId, \"Execution Agent actor id\")\n assertNonEmpty(executor.runId, \"Execution Agent run id\")\n return Object.freeze({\n type: \"agent\",\n ...(executor.actorId === undefined ? {} : { actorId: executor.actorId }),\n runId: executor.runId,\n })\n case \"kernel\":\n return Object.freeze({\n type: \"kernel\",\n operation: snapshotKernelOperation(executor.operation),\n })\n }\n throw new Error(\n `[Sixb] Unknown execution executor type '${String((executor as { type?: unknown }).type)}'.`\n )\n}\n\nfunction snapshotExecutionSource(source: ExecutionContext[\"source\"]): ExecutionContext[\"source\"] {\n switch (source.type) {\n case \"http\":\n assertNonEmpty(source.requestId, \"Execution source request id\")\n return Object.freeze({ type: \"http\", requestId: source.requestId })\n case \"webhook\":\n assertNonEmpty(source.deliveryId, \"Execution source delivery id\")\n return Object.freeze({ type: \"webhook\", deliveryId: source.deliveryId })\n case \"schedule\":\n case \"event\":\n assertNonEmpty(source.eventId, \"Execution source event id\")\n return Object.freeze({ type: source.type, eventId: source.eventId })\n case \"datasetVersion\":\n assertNonEmpty(source.datasetId, \"Execution source dataset id\")\n assertNonEmpty(source.versionId, \"Execution source dataset version id\")\n return Object.freeze({\n type: \"datasetVersion\",\n datasetId: source.datasetId,\n versionId: source.versionId,\n })\n case \"execution\":\n assertNonEmpty(source.executionId, \"Execution source execution id\")\n return Object.freeze({ type: \"execution\", executionId: source.executionId })\n }\n throw new Error(\n `[Sixb] Unknown execution source type '${String((source as { type?: unknown }).type)}'.`\n )\n}\n\nfunction snapshotAuthorizationContext(\n context: AuthorizationContext\n): PrincipalAuthorizationContext {\n const principal = snapshotAuthorizablePrincipal(context.principal)\n const grants = {} as Record<TargetedGrantKind, ReadonlySet<string>>\n for (const kind of TARGETED_GRANT_KIND_KEYS) {\n grants[kind] = new ImmutableGrantSet(context.grants[kind])\n }\n const frozenGrants: GrantIndex = Object.freeze({\n ...grants,\n \"run:agent\": context.grants[\"run:agent\"],\n })\n return Object.freeze({\n principal,\n ...(context.sessionId === undefined ? {} : { sessionId: context.sessionId }),\n groupIds: Object.freeze([...context.groupIds]),\n roleIds: Object.freeze([...context.roleIds]),\n grants: frozenGrants,\n })\n}\n\n/** Read-only Set semantics with no mutable handle hidden behind the TypeScript interface. */\nclass ImmutableGrantSet implements ReadonlySet<string> {\n readonly #values: Set<string>\n readonly [Symbol.toStringTag] = \"Set\"\n\n constructor(values: Iterable<string>) {\n this.#values = new Set(values)\n Object.freeze(this)\n }\n\n get size(): number {\n return this.#values.size\n }\n\n has(value: string): boolean {\n return this.#values.has(value)\n }\n\n entries(): ReturnType<Set<string>[\"entries\"]> {\n return this.#values.entries()\n }\n\n keys(): ReturnType<Set<string>[\"keys\"]> {\n return this.#values.keys()\n }\n\n values(): ReturnType<Set<string>[\"values\"]> {\n return this.#values.values()\n }\n\n [Symbol.iterator](): ReturnType<Set<string>[typeof Symbol.iterator]> {\n return this.#values[Symbol.iterator]()\n }\n\n forEach(\n callback: (value: string, valueAgain: string, set: ReadonlySet<string>) => void,\n thisArg?: unknown\n ): void {\n for (const value of this.#values) {\n callback.call(thisArg, value, value, this)\n }\n }\n\n add(_value: string): never {\n throw immutableGrantSetMutation()\n }\n\n delete(_value: string): never {\n throw immutableGrantSetMutation()\n }\n\n clear(): never {\n throw immutableGrantSetMutation()\n }\n}\n\nObject.freeze(ImmutableGrantSet.prototype)\n\nfunction immutableGrantSetMutation(): Error {\n return new Error(\"[Sixb] Runtime authorization grants are immutable.\")\n}\n\nfunction snapshotAuthorizablePrincipal(principal: Principal): AuthorizablePrincipal {\n if (principal.type !== \"user\" && principal.type !== \"serviceAccount\") {\n throw new Error(`[Sixb] Principal type '${principal.type}' cannot hold runtime authorization.`)\n }\n assertNonEmpty(principal.id, \"Authorization principal id\")\n return Object.freeze({ type: principal.type, id: principal.id })\n}\n\nfunction snapshotCredential(\n credential: NonNullable<Extract<AuthorizationRef, { readonly type: \"principal\" }>[\"credential\"]>\n): NonNullable<Extract<AuthorizationRef, { readonly type: \"principal\" }>[\"credential\"]> {\n assertNonEmpty(credential.id, \"Authorization credential id\")\n if (credential.type !== \"session\" && credential.type !== \"accessToken\") {\n const credentialType = (credential as { readonly type: string }).type\n throw new Error(`[Sixb] Unknown authorization credential type '${credentialType}'.`)\n }\n return Object.freeze({ type: credential.type, id: credential.id })\n}\n\nfunction assertCredentialMatchesContext(\n context: PrincipalAuthorizationContext,\n credential:\n | NonNullable<Extract<AuthorizationRef, { readonly type: \"principal\" }>[\"credential\"]>\n | undefined\n): void {\n if (credential?.type === \"session\") {\n if (context.sessionId !== credential.id) {\n throw new Error(\n \"[Sixb] Session credential id must match the authorization context session id.\"\n )\n }\n return\n }\n if (context.sessionId !== undefined) {\n throw new Error(\"[Sixb] Authorization context session requires a matching session credential.\")\n }\n}\n\nfunction snapshotTrustedPrimitive(primitive: TrustedPrimitiveRef): TrustedPrimitiveRef {\n if (!isTrustedPrimitiveKind(primitive.kind)) {\n throw new Error(`[Sixb] Unknown trusted primitive kind '${primitive.kind}'.`)\n }\n assertNonEmpty(primitive.id, \"Trusted primitive id\")\n assertNonEmpty(primitive.runId, \"Trusted primitive run id\")\n return Object.freeze({ kind: primitive.kind, id: primitive.id, runId: primitive.runId })\n}\n\nfunction snapshotKernelOperation(operation: KernelOperation): KernelOperation {\n if (operation.type !== \"ontology.recover\") {\n throw new Error(`[Sixb] Unknown kernel operation '${operation.type}'.`)\n }\n assertNonEmpty(operation.recoveryId, \"Kernel recovery id\")\n return Object.freeze({ type: operation.type, recoveryId: operation.recoveryId })\n}\n\n/** Validate, bound, and detach exact delegated Action targets before registering authority. */\nfunction snapshotDelegatedActionApply(\n input: readonly DelegatedActionApplyTarget[]\n): readonly DelegatedActionApplyTarget[] {\n if (!Array.isArray(input)) {\n throw new Error(\"[Sixb] Delegated Action targets must be an array.\")\n }\n\n const targetCount = input.length\n if (targetCount > MAX_DELEGATED_ACTION_APPLY_TARGETS) {\n throw new Error(\n `[Sixb] Delegated authority exceeds the maximum of ${MAX_DELEGATED_ACTION_APPLY_TARGETS} Action targets.`\n )\n }\n\n let identifierCharacters = 0\n const targets: DelegatedActionApplyTarget[] = []\n for (let index = 0; index < targetCount; index += 1) {\n const authoredTarget = input[index]\n if (!isRecord(authoredTarget)) {\n throw new Error(`[Sixb] Delegated Action target ${index} must be an object.`)\n }\n\n const authoredActionId = authoredTarget.actionId\n const authoredSubject = authoredTarget.subject\n if (!isRecord(authoredSubject)) {\n throw new Error(`[Sixb] Delegated Action target ${index} subject must be an ObjectRef.`)\n }\n\n const actionId = delegatedActionIdentifier(\n authoredActionId,\n `Delegated Action target ${index} action id`\n )\n const objectTypeId = delegatedActionIdentifier(\n authoredSubject.objectTypeId,\n `Delegated Action target ${index} subject object type id`\n )\n const primaryId = delegatedActionIdentifier(\n authoredSubject.primaryId,\n `Delegated Action target ${index} subject primary id`\n )\n identifierCharacters += actionId.length + objectTypeId.length + primaryId.length\n if (identifierCharacters > MAX_DELEGATED_ACTION_IDENTIFIER_CHARACTERS) {\n throw new Error(\n `[Sixb] Delegated authority exceeds the maximum of ${MAX_DELEGATED_ACTION_IDENTIFIER_CHARACTERS} Action identifier characters.`\n )\n }\n\n targets.push(\n Object.freeze({\n actionId,\n subject: Object.freeze({ objectTypeId, primaryId }),\n })\n )\n }\n\n return Object.freeze(targets)\n}\n\nfunction delegatedActionIdentifier(value: unknown, label: string): string {\n if (typeof value !== \"string\" || !value.trim()) {\n throw new Error(`[Sixb] ${label} must not be empty.`)\n }\n return value\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === \"object\" && value !== null && !Array.isArray(value)\n}\n\nfunction cloneAuthorizationRef(ref: AuthorizationRef): AuthorizationRef {\n switch (ref.type) {\n case \"principal\":\n return {\n type: \"principal\",\n principal: { ...ref.principal },\n ...(ref.credential === undefined ? {} : { credential: { ...ref.credential } }),\n }\n case \"trustedPrimitive\":\n return { type: \"trustedPrimitive\", primitive: { ...ref.primitive } }\n case \"delegated\":\n return { type: \"delegated\", delegation: { ...ref.delegation } }\n case \"kernel\":\n return { type: \"kernel\", operation: { ...ref.operation } }\n case \"disabled\":\n return { type: \"disabled\" }\n }\n}\n\nfunction isTrustedPrimitiveKind(value: string): value is TrustedPrimitiveKind {\n return (\n value === \"action\" ||\n value === \"pipeline\" ||\n value === \"projection\" ||\n value === \"rule\" ||\n value === \"sync\" ||\n value === \"webhook\" ||\n value === \"workflow\"\n )\n}\n\nfunction assertNonEmpty(value: string, label: string): void {\n if (!value.trim()) {\n throw new Error(`[Sixb] ${label} must not be empty.`)\n }\n}\n",
5
+ "import { isDeepStrictEqual } from \"node:util\"\nimport { agentServiceAccountId } from \"../agents/identity\"\nimport type { Principal } from \"../auth\"\nimport { TARGETED_GRANT_KIND_KEYS, type TargetedGrantKind } from \"../authorization/grant-kinds\"\nimport type { AuthorizationContext, GrantIndex } from \"../authorization/types\"\nimport { createSixbError } from \"../errors/internal\"\nimport type { ObjectRef } from \"../ontology\"\nimport {\n type ObjectReadExecutionLimits,\n snapshotObjectReadExecutionLimits,\n} from \"../storage/objects/execution-limits\"\nimport { compileSelectedObjectReadScope } from \"../storage/objects/read-scope\"\nimport type {\n CompiledSelectedObjectReadScope,\n SelectedObjectReadScope,\n} from \"../storage/objects/types\"\nimport { kernelOperationFromId, kernelOperationId } from \"./kernel-operation\"\nimport {\n type AuthorizablePrincipal,\n type AuthorizationRef,\n createRuntimeAuthorizationCapability,\n type ExecutionContext,\n type ExecutionScope,\n isRuntimeAuthorizationCapability,\n type KernelOperation,\n type RuntimeAuthorization,\n type TrustedPrimitiveKind,\n type TrustedPrimitiveRef,\n} from \"./types\"\n\nexport type ResolvedRuntimeAuthorization =\n | {\n readonly type: \"principal\"\n readonly projectId: string\n readonly context: AuthorizationContext\n readonly ref: Extract<AuthorizationRef, { readonly type: \"principal\" }>\n }\n | {\n readonly type: \"unrestricted\"\n readonly projectId: string\n readonly ref: Exclude<AuthorizationRef, { readonly type: \"principal\" | \"delegated\" }>\n }\n | {\n readonly type: \"delegated\"\n readonly projectId: string\n readonly objectRead: DelegatedObjectReadAuthorization\n readonly actionApply: readonly DelegatedActionApplyTarget[]\n readonly delegation?: Extract<AuthorizationRef, { readonly type: \"delegated\" }>[\"delegation\"]\n }\n | { readonly type: \"denied\" }\n\n/** Immutable process-local object-read authority. It has no durable representation. */\nexport interface DelegatedObjectReadAuthorization {\n readonly scope: CompiledSelectedObjectReadScope\n readonly limits: ObjectReadExecutionLimits\n}\n\n/** One exact object-bound Action target carried by process-local delegated authority. */\nexport interface DelegatedActionApplyTarget {\n readonly actionId: string\n readonly subject: ObjectRef\n}\n\ntype RegisteredRuntimeAuthorization = Exclude<\n ResolvedRuntimeAuthorization,\n { readonly type: \"denied\" }\n>\n\ntype PrincipalAuthorizationContext = Omit<AuthorizationContext, \"principal\"> & {\n readonly principal: AuthorizablePrincipal\n}\n\ninterface RuntimeAuthorizationRegistration {\n readonly resolved: RegisteredRuntimeAuthorization\n readonly execution: ExecutionContext\n}\n\nconst registeredAuthorizations = new WeakMap<\n RuntimeAuthorization,\n RuntimeAuthorizationRegistration\n>()\n\nconst MAX_DELEGATED_ACTION_APPLY_TARGETS = 4_096\nconst MAX_DELEGATED_ACTION_IDENTIFIER_CHARACTERS = 1_000_000\n\nexport function createPrincipalRuntimeAuthorization(input: {\n readonly execution: ExecutionContext\n readonly context: AuthorizationContext\n readonly credential?: Extract<AuthorizationRef, { readonly type: \"principal\" }>[\"credential\"]\n}): RuntimeAuthorization {\n if (input.execution.executor.type !== \"request\") {\n throw new Error(\"[Sixb] Principal runtime authorization requires a request execution.\")\n }\n return createRegisteredPrincipalAuthorization(input)\n}\n\n/** Register restored authority bound to one exact agent run. */\nexport function createAgentRuntimeAuthorization(input: {\n readonly execution: ExecutionContext\n readonly authority:\n | {\n readonly type: \"principal\"\n readonly context: AuthorizationContext\n readonly credential?: Extract<\n AuthorizationRef,\n { readonly type: \"principal\" }\n >[\"credential\"]\n }\n | { readonly type: \"disabled\" }\n}): RuntimeAuthorization {\n if (input.execution.executor.type !== \"agent\") {\n throw new Error(\"[Sixb] Agent runtime authorization requires an Agent execution.\")\n }\n\n if (input.authority.type === \"principal\") {\n return createRegisteredPrincipalAuthorization({\n execution: input.execution,\n context: input.authority.context,\n ...(input.authority.credential === undefined\n ? {}\n : { credential: input.authority.credential }),\n })\n }\n\n return register(input.execution, {\n type: \"unrestricted\",\n projectId: input.execution.projectId,\n ref: Object.freeze({ type: \"disabled\" }),\n })\n}\n\nfunction createRegisteredPrincipalAuthorization(input: {\n readonly execution: ExecutionContext\n readonly context: AuthorizationContext\n readonly credential?: Extract<AuthorizationRef, { readonly type: \"principal\" }>[\"credential\"]\n}): RuntimeAuthorization {\n const context = snapshotAuthorizationContext(input.context)\n const credential = input.credential ? snapshotCredential(input.credential) : undefined\n assertCredentialMatchesContext(context, credential)\n const ref: Extract<AuthorizationRef, { readonly type: \"principal\" }> = Object.freeze({\n type: \"principal\",\n principal: context.principal,\n ...(credential === undefined ? {} : { credential }),\n })\n return register(input.execution, {\n type: \"principal\",\n projectId: input.execution.projectId,\n context,\n ref,\n })\n}\n\nexport function createDisabledRuntimeAuthorization(\n execution: ExecutionContext\n): RuntimeAuthorization {\n return register(execution, {\n type: \"unrestricted\",\n projectId: execution.projectId,\n ref: Object.freeze({ type: \"disabled\" }),\n })\n}\n\n/** Register exact object-read authority without fabricating a principal identity. */\nexport function createDelegatedRuntimeAuthorization(input: {\n readonly execution: ExecutionContext\n readonly objectRead: {\n readonly selection: SelectedObjectReadScope\n readonly limits: ObjectReadExecutionLimits\n }\n readonly actionApply?: readonly DelegatedActionApplyTarget[]\n readonly delegation?: Extract<AuthorizationRef, { readonly type: \"delegated\" }>[\"delegation\"]\n}): RuntimeAuthorization {\n const execution = input.execution\n const objectReadInput = input.objectRead\n const actionApplyInput = input.actionApply\n const delegationInput = input.delegation\n const delegation =\n delegationInput === undefined ? undefined : snapshotSharedDelegation(delegationInput)\n if (execution.executor.type !== \"request\" || execution.requestedBy !== undefined) {\n throw new Error(\n \"[Sixb] Delegated runtime authorization requires a request execution without a principal.\"\n )\n }\n\n const objectRead = Object.freeze({\n scope: compileSelectedObjectReadScope(objectReadInput.selection),\n limits: snapshotObjectReadExecutionLimits(objectReadInput.limits),\n })\n return register(execution, {\n type: \"delegated\",\n projectId: execution.projectId,\n objectRead,\n actionApply: snapshotDelegatedActionApply(actionApplyInput ?? []),\n ...(delegation === undefined ? {} : { delegation }),\n })\n}\n\nexport function createTrustedPrimitiveRuntimeAuthorization(input: {\n readonly execution: ExecutionContext\n readonly primitive: TrustedPrimitiveRef\n}): RuntimeAuthorization {\n const primitive = snapshotTrustedPrimitive(input.primitive)\n return register(input.execution, {\n type: \"unrestricted\",\n projectId: input.execution.projectId,\n ref: Object.freeze({ type: \"trustedPrimitive\", primitive }),\n })\n}\n\nexport function createKernelRuntimeAuthorization(input: {\n readonly execution: ExecutionContext\n readonly operation: KernelOperation\n}): RuntimeAuthorization {\n const operation = snapshotKernelOperation(input.operation)\n return register(input.execution, {\n type: \"unrestricted\",\n projectId: input.execution.projectId,\n ref: Object.freeze({ type: \"kernel\", operation }),\n })\n}\n\nexport function resolveRuntimeAuthorization(authorization: unknown): ResolvedRuntimeAuthorization {\n if (!isRuntimeAuthorizationCapability(authorization)) {\n return { type: \"denied\" }\n }\n return registeredAuthorizations.get(authorization)?.resolved ?? { type: \"denied\" }\n}\n\n/**\n * Resolve authority from a runtime already admitted by `SixbHost.withScope`.\n *\n * Bound runtime facades carry no second execution value to recombine. Any lower-level boundary\n * that receives an `ExecutionContext` separately must use `resolveExecutionScopeAuthorization`.\n */\nexport function resolveRuntimeAuthorizationForProject(input: {\n readonly projectId: unknown\n readonly runtimeAuthorization?: unknown\n}): ResolvedRuntimeAuthorization {\n const resolved = resolveRuntimeAuthorization(input.runtimeAuthorization)\n if (\n resolved.type === \"denied\" ||\n typeof input.projectId !== \"string\" ||\n resolved.projectId !== input.projectId\n ) {\n return { type: \"denied\" }\n }\n return resolved\n}\n\nexport function getAuthorizationRef(authorization: RuntimeAuthorization): AuthorizationRef {\n const resolved = resolveRuntimeAuthorization(authorization)\n if (resolved.type === \"denied\") {\n throw new Error(\"[Sixb] Runtime authorization is not a registered Core capability.\")\n }\n if (resolved.type === \"delegated\") {\n if (resolved.delegation) {\n return { type: \"delegated\", delegation: { ...resolved.delegation } }\n }\n throw new Error(\n \"[Sixb] Delegated runtime authorization cannot cross a durable execution boundary.\"\n )\n }\n return cloneAuthorizationRef(resolved.ref)\n}\n\nfunction snapshotSharedDelegation(\n input: Extract<AuthorizationRef, { readonly type: \"delegated\" }>[\"delegation\"]\n): Extract<AuthorizationRef, { readonly type: \"delegated\" }>[\"delegation\"] {\n const kind = input.kind\n const grantId = input.grantId\n const sessionId = input.sessionId\n if (kind !== \"share\") throw new Error(\"[Sixb] Unknown delegated authority provenance.\")\n assertNonEmpty(grantId, \"Share grant id\")\n assertNonEmpty(sessionId, \"Share session id\")\n return Object.freeze({ kind, grantId, sessionId })\n}\n\nexport function assertExecutionScopeProject(projectId: string, scope: ExecutionScope): void {\n assertNonEmpty(projectId, \"Project id\")\n if (scope.execution.projectId !== projectId) {\n throw createSixbError(\n \"internal.unexpected\",\n `[Sixb] Execution scope belongs to project '${scope.execution.projectId}', not '${projectId}'.`,\n {\n details: {\n executionId: scope.execution.id,\n expectedProjectId: projectId,\n scopeProjectId: scope.execution.projectId,\n },\n }\n )\n }\n\n const resolved = resolveRuntimeAuthorization(scope.authorization)\n if (resolved.type === \"denied\") {\n throw createSixbError(\n \"internal.unexpected\",\n \"[Sixb] Execution scope carries unregistered runtime authorization.\",\n { details: { executionId: scope.execution.id, projectId } }\n )\n }\n if (resolved.projectId !== projectId) {\n throw createSixbError(\n \"internal.unexpected\",\n `[Sixb] Execution authorization belongs to project '${resolved.projectId}', not '${projectId}'.`,\n {\n details: {\n authorizationProjectId: resolved.projectId,\n executionId: scope.execution.id,\n expectedProjectId: projectId,\n },\n }\n )\n }\n}\n\n/**\n * Capture the two opaque capabilities carried by a scope exactly once.\n *\n * Security-sensitive boundaries must not resolve a caller-owned wrapper and then read it again:\n * accessor-backed inputs could otherwise substitute a different execution or authority between\n * those operations.\n */\nexport function captureExecutionScope(scope: ExecutionScope): ExecutionScope {\n const execution = scope.execution\n const authorization = scope.authorization\n return Object.freeze({ execution, authorization })\n}\n\n/** Validate that one registered authority belongs to the exact execution it accompanies. */\nexport function resolveExecutionScopeAuthorization(\n projectId: string,\n scope: ExecutionScope\n): RegisteredRuntimeAuthorization {\n const capturedScope = captureExecutionScope(scope)\n assertExecutionScopeProject(projectId, capturedScope)\n const resolved = resolveRuntimeAuthorization(capturedScope.authorization)\n if (resolved.type === \"denied\") {\n throw createSixbError(\n \"internal.unexpected\",\n \"[Sixb] Execution scope carries unregistered runtime authorization.\",\n { details: { executionId: capturedScope.execution.id, projectId } }\n )\n }\n\n const registration = registeredAuthorizations.get(capturedScope.authorization)\n if (!registration || !executionMatchesBinding(registration.execution, capturedScope.execution)) {\n throw invalidExecutionAuthority(\n capturedScope.execution.id,\n \"authority is bound to different execution provenance\"\n )\n }\n\n assertResolvedAuthorizationMatchesExecution(resolved, capturedScope.execution)\n return resolved\n}\n\nfunction assertResolvedAuthorizationMatchesExecution(\n resolved: RegisteredRuntimeAuthorization,\n execution: ExecutionContext\n): void {\n switch (execution.executor.type) {\n case \"request\":\n if (\n execution.source.type !== \"http\" ||\n execution.source.requestId !== execution.executor.requestId\n ) {\n throw invalidExecutionAuthority(execution.id, \"request source does not match its executor\")\n }\n if (resolved.type === \"principal\") {\n if (!principalsEqual(execution.requestedBy, resolved.ref.principal)) {\n throw invalidExecutionAuthority(\n execution.id,\n \"request authority does not match its requested-by principal\"\n )\n }\n return\n }\n if (\n resolved.type === \"unrestricted\" &&\n resolved.ref.type === \"disabled\" &&\n execution.requestedBy === undefined\n ) {\n return\n }\n if (resolved.type === \"delegated\" && execution.requestedBy === undefined) return\n throw invalidExecutionAuthority(\n execution.id,\n \"request execution requires principal, delegated, or explicitly disabled authority\"\n )\n\n case \"primitive\":\n if (\n resolved.type !== \"unrestricted\" ||\n resolved.ref.type !== \"trustedPrimitive\" ||\n resolved.ref.primitive.kind !== execution.executor.kind ||\n resolved.ref.primitive.id !== execution.executor.id ||\n resolved.ref.primitive.runId !== execution.executor.runId\n ) {\n throw invalidExecutionAuthority(\n execution.id,\n \"trusted primitive authority does not match its executor\"\n )\n }\n return\n\n case \"agent\":\n if (execution.source.type !== \"execution\") {\n throw invalidExecutionAuthority(\n execution.id,\n \"agent execution requires an execution source\"\n )\n }\n if (resolved.type === \"principal\" && resolved.ref.type === \"principal\") {\n if (resolved.ref.principal.type === \"serviceAccount\") {\n const actorId = execution.executor.actorId\n if (\n actorId === undefined ||\n resolved.ref.principal.id !== agentServiceAccountId(actorId) ||\n resolved.ref.credential !== undefined\n ) {\n throw invalidExecutionAuthority(\n execution.id,\n \"agent authority must reference its managed service account\"\n )\n }\n } else if (resolved.ref.credential === undefined) {\n throw invalidExecutionAuthority(\n execution.id,\n \"inherited user agent authority requires a credential\"\n )\n }\n return\n }\n if (resolved.type === \"unrestricted\" && resolved.ref.type === \"disabled\") return\n throw invalidExecutionAuthority(\n execution.id,\n \"agent authority must be principal or explicitly disabled\"\n )\n\n case \"kernel\":\n if (\n resolved.type !== \"unrestricted\" ||\n resolved.ref.type !== \"kernel\" ||\n execution.requestedBy !== undefined ||\n resolved.ref.operation.type !== execution.executor.operation.type ||\n kernelOperationId(resolved.ref.operation) !==\n kernelOperationId(execution.executor.operation)\n ) {\n throw invalidExecutionAuthority(\n execution.id,\n \"kernel authority does not match its executor\"\n )\n }\n return\n }\n}\n\nfunction principalsEqual(\n left: AuthorizablePrincipal | undefined,\n right: AuthorizablePrincipal | undefined\n): boolean {\n return left?.type === right?.type && left?.id === right?.id\n}\n\nfunction invalidExecutionAuthority(executionId: string, reason: string): Error {\n return createSixbError(\n \"internal.unexpected\",\n `[Sixb] Execution '${executionId}' is incompatible with its authority: ${reason}.`,\n { details: { executionId, reason } }\n )\n}\n\nfunction register(\n execution: ExecutionContext,\n input: RegisteredRuntimeAuthorization\n): RuntimeAuthorization {\n assertNonEmpty(input.projectId, \"Authorization project id\")\n const executionBinding = snapshotExecutionContext(execution)\n if (input.projectId !== executionBinding.projectId) {\n throw new Error(\n `[Sixb] Runtime authorization belongs to project '${input.projectId}', not execution project '${executionBinding.projectId}'.`\n )\n }\n assertResolvedAuthorizationMatchesExecution(input, executionBinding)\n const authorization = createRuntimeAuthorizationCapability()\n registeredAuthorizations.set(\n authorization,\n Object.freeze({ resolved: Object.freeze(input), execution: executionBinding })\n )\n return authorization\n}\n\nfunction executionMatchesBinding(binding: ExecutionContext, execution: ExecutionContext): boolean {\n try {\n return isDeepStrictEqual(binding, snapshotExecutionContext(execution))\n } catch {\n return false\n }\n}\n\nfunction snapshotExecutionContext(execution: ExecutionContext): ExecutionContext {\n assertNonEmpty(execution.id, \"Execution id\")\n assertNonEmpty(execution.projectId, \"Execution project id\")\n assertNonEmpty(execution.correlationId, \"Execution correlation id\")\n return Object.freeze({\n id: execution.id,\n projectId: execution.projectId,\n ...(execution.requestedBy === undefined\n ? {}\n : { requestedBy: snapshotAuthorizablePrincipal(execution.requestedBy) }),\n executor: snapshotExecutionExecutor(execution.executor),\n source: snapshotExecutionSource(execution.source),\n correlationId: execution.correlationId,\n })\n}\n\nfunction snapshotExecutionExecutor(\n executor: ExecutionContext[\"executor\"]\n): ExecutionContext[\"executor\"] {\n switch (executor.type) {\n case \"request\":\n assertNonEmpty(executor.requestId, \"Execution request id\")\n return Object.freeze({ type: \"request\", requestId: executor.requestId })\n case \"primitive\": {\n const primitive = snapshotTrustedPrimitive(executor)\n return Object.freeze({ type: \"primitive\", ...primitive })\n }\n case \"agent\":\n if (executor.actorId !== undefined)\n assertNonEmpty(executor.actorId, \"Execution Agent actor id\")\n assertNonEmpty(executor.runId, \"Execution Agent run id\")\n return Object.freeze({\n type: \"agent\",\n ...(executor.actorId === undefined ? {} : { actorId: executor.actorId }),\n runId: executor.runId,\n })\n case \"kernel\":\n return Object.freeze({\n type: \"kernel\",\n operation: snapshotKernelOperation(executor.operation),\n })\n }\n throw new Error(\n `[Sixb] Unknown execution executor type '${String((executor as { type?: unknown }).type)}'.`\n )\n}\n\nfunction snapshotExecutionSource(source: ExecutionContext[\"source\"]): ExecutionContext[\"source\"] {\n switch (source.type) {\n case \"ontologyCommit\":\n assertNonEmpty(source.commitId, \"Execution source commit id\")\n return Object.freeze({ type: source.type, commitId: source.commitId })\n case \"http\":\n assertNonEmpty(source.requestId, \"Execution source request id\")\n return Object.freeze({ type: \"http\", requestId: source.requestId })\n case \"webhook\":\n assertNonEmpty(source.deliveryId, \"Execution source delivery id\")\n return Object.freeze({ type: \"webhook\", deliveryId: source.deliveryId })\n case \"schedule\":\n case \"event\":\n assertNonEmpty(source.eventId, \"Execution source event id\")\n return Object.freeze({ type: source.type, eventId: source.eventId })\n case \"datasetVersion\":\n assertNonEmpty(source.datasetId, \"Execution source dataset id\")\n assertNonEmpty(source.versionId, \"Execution source dataset version id\")\n return Object.freeze({\n type: \"datasetVersion\",\n datasetId: source.datasetId,\n versionId: source.versionId,\n })\n case \"execution\":\n assertNonEmpty(source.executionId, \"Execution source execution id\")\n return Object.freeze({ type: \"execution\", executionId: source.executionId })\n }\n throw new Error(\n `[Sixb] Unknown execution source type '${String((source as { type?: unknown }).type)}'.`\n )\n}\n\nfunction snapshotAuthorizationContext(\n context: AuthorizationContext\n): PrincipalAuthorizationContext {\n const principal = snapshotAuthorizablePrincipal(context.principal)\n const grants = {} as Record<TargetedGrantKind, ReadonlySet<string>>\n for (const kind of TARGETED_GRANT_KIND_KEYS) {\n grants[kind] = new ImmutableGrantSet(context.grants[kind])\n }\n const frozenGrants: GrantIndex = Object.freeze({\n ...grants,\n \"run:agent\": context.grants[\"run:agent\"],\n })\n return Object.freeze({\n principal,\n ...(context.sessionId === undefined ? {} : { sessionId: context.sessionId }),\n groupIds: Object.freeze([...context.groupIds]),\n roleIds: Object.freeze([...context.roleIds]),\n grants: frozenGrants,\n })\n}\n\n/** Read-only Set semantics with no mutable handle hidden behind the TypeScript interface. */\nclass ImmutableGrantSet implements ReadonlySet<string> {\n readonly #values: Set<string>\n readonly [Symbol.toStringTag] = \"Set\"\n\n constructor(values: Iterable<string>) {\n this.#values = new Set(values)\n Object.freeze(this)\n }\n\n get size(): number {\n return this.#values.size\n }\n\n has(value: string): boolean {\n return this.#values.has(value)\n }\n\n entries(): ReturnType<Set<string>[\"entries\"]> {\n return this.#values.entries()\n }\n\n keys(): ReturnType<Set<string>[\"keys\"]> {\n return this.#values.keys()\n }\n\n values(): ReturnType<Set<string>[\"values\"]> {\n return this.#values.values()\n }\n\n [Symbol.iterator](): ReturnType<Set<string>[typeof Symbol.iterator]> {\n return this.#values[Symbol.iterator]()\n }\n\n forEach(\n callback: (value: string, valueAgain: string, set: ReadonlySet<string>) => void,\n thisArg?: unknown\n ): void {\n for (const value of this.#values) {\n callback.call(thisArg, value, value, this)\n }\n }\n\n add(_value: string): never {\n throw immutableGrantSetMutation()\n }\n\n delete(_value: string): never {\n throw immutableGrantSetMutation()\n }\n\n clear(): never {\n throw immutableGrantSetMutation()\n }\n}\n\nObject.freeze(ImmutableGrantSet.prototype)\n\nfunction immutableGrantSetMutation(): Error {\n return new Error(\"[Sixb] Runtime authorization grants are immutable.\")\n}\n\nfunction snapshotAuthorizablePrincipal(principal: Principal): AuthorizablePrincipal {\n if (principal.type !== \"user\" && principal.type !== \"serviceAccount\") {\n throw new Error(`[Sixb] Principal type '${principal.type}' cannot hold runtime authorization.`)\n }\n assertNonEmpty(principal.id, \"Authorization principal id\")\n return Object.freeze({ type: principal.type, id: principal.id })\n}\n\nfunction snapshotCredential(\n credential: NonNullable<Extract<AuthorizationRef, { readonly type: \"principal\" }>[\"credential\"]>\n): NonNullable<Extract<AuthorizationRef, { readonly type: \"principal\" }>[\"credential\"]> {\n assertNonEmpty(credential.id, \"Authorization credential id\")\n if (credential.type !== \"session\" && credential.type !== \"accessToken\") {\n const credentialType = (credential as { readonly type: string }).type\n throw new Error(`[Sixb] Unknown authorization credential type '${credentialType}'.`)\n }\n return Object.freeze({ type: credential.type, id: credential.id })\n}\n\nfunction assertCredentialMatchesContext(\n context: PrincipalAuthorizationContext,\n credential:\n | NonNullable<Extract<AuthorizationRef, { readonly type: \"principal\" }>[\"credential\"]>\n | undefined\n): void {\n if (credential?.type === \"session\") {\n if (context.sessionId !== credential.id) {\n throw new Error(\n \"[Sixb] Session credential id must match the authorization context session id.\"\n )\n }\n return\n }\n if (context.sessionId !== undefined) {\n throw new Error(\"[Sixb] Authorization context session requires a matching session credential.\")\n }\n}\n\nfunction snapshotTrustedPrimitive(primitive: TrustedPrimitiveRef): TrustedPrimitiveRef {\n if (!isTrustedPrimitiveKind(primitive.kind)) {\n throw new Error(`[Sixb] Unknown trusted primitive kind '${primitive.kind}'.`)\n }\n assertNonEmpty(primitive.id, \"Trusted primitive id\")\n assertNonEmpty(primitive.runId, \"Trusted primitive run id\")\n return Object.freeze({ kind: primitive.kind, id: primitive.id, runId: primitive.runId })\n}\n\nfunction snapshotKernelOperation(operation: KernelOperation): KernelOperation {\n if (operation.type !== \"ontology.recover\" && operation.type !== \"ontology.indexVectors\") {\n throw new Error(\n `[Sixb] Unknown kernel operation '${String((operation as { type?: unknown }).type)}'.`\n )\n }\n assertNonEmpty(kernelOperationId(operation), \"Kernel operation id\")\n return Object.freeze(kernelOperationFromId(operation.type, kernelOperationId(operation)))\n}\n\n/** Validate, bound, and detach exact delegated Action targets before registering authority. */\nfunction snapshotDelegatedActionApply(\n input: readonly DelegatedActionApplyTarget[]\n): readonly DelegatedActionApplyTarget[] {\n if (!Array.isArray(input)) {\n throw new Error(\"[Sixb] Delegated Action targets must be an array.\")\n }\n\n const targetCount = input.length\n if (targetCount > MAX_DELEGATED_ACTION_APPLY_TARGETS) {\n throw new Error(\n `[Sixb] Delegated authority exceeds the maximum of ${MAX_DELEGATED_ACTION_APPLY_TARGETS} Action targets.`\n )\n }\n\n let identifierCharacters = 0\n const targets: DelegatedActionApplyTarget[] = []\n for (let index = 0; index < targetCount; index += 1) {\n const authoredTarget = input[index]\n if (!isRecord(authoredTarget)) {\n throw new Error(`[Sixb] Delegated Action target ${index} must be an object.`)\n }\n\n const authoredActionId = authoredTarget.actionId\n const authoredSubject = authoredTarget.subject\n if (!isRecord(authoredSubject)) {\n throw new Error(`[Sixb] Delegated Action target ${index} subject must be an ObjectRef.`)\n }\n\n const actionId = delegatedActionIdentifier(\n authoredActionId,\n `Delegated Action target ${index} action id`\n )\n const objectTypeId = delegatedActionIdentifier(\n authoredSubject.objectTypeId,\n `Delegated Action target ${index} subject object type id`\n )\n const primaryId = delegatedActionIdentifier(\n authoredSubject.primaryId,\n `Delegated Action target ${index} subject primary id`\n )\n identifierCharacters += actionId.length + objectTypeId.length + primaryId.length\n if (identifierCharacters > MAX_DELEGATED_ACTION_IDENTIFIER_CHARACTERS) {\n throw new Error(\n `[Sixb] Delegated authority exceeds the maximum of ${MAX_DELEGATED_ACTION_IDENTIFIER_CHARACTERS} Action identifier characters.`\n )\n }\n\n targets.push(\n Object.freeze({\n actionId,\n subject: Object.freeze({ objectTypeId, primaryId }),\n })\n )\n }\n\n return Object.freeze(targets)\n}\n\nfunction delegatedActionIdentifier(value: unknown, label: string): string {\n if (typeof value !== \"string\" || !value.trim()) {\n throw new Error(`[Sixb] ${label} must not be empty.`)\n }\n return value\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === \"object\" && value !== null && !Array.isArray(value)\n}\n\nfunction cloneAuthorizationRef(ref: AuthorizationRef): AuthorizationRef {\n switch (ref.type) {\n case \"principal\":\n return {\n type: \"principal\",\n principal: { ...ref.principal },\n ...(ref.credential === undefined ? {} : { credential: { ...ref.credential } }),\n }\n case \"trustedPrimitive\":\n return { type: \"trustedPrimitive\", primitive: { ...ref.primitive } }\n case \"delegated\":\n return { type: \"delegated\", delegation: { ...ref.delegation } }\n case \"kernel\":\n return { type: \"kernel\", operation: { ...ref.operation } }\n case \"disabled\":\n return { type: \"disabled\" }\n }\n}\n\nfunction isTrustedPrimitiveKind(value: string): value is TrustedPrimitiveKind {\n return (\n value === \"action\" ||\n value === \"pipeline\" ||\n value === \"projection\" ||\n value === \"rule\" ||\n value === \"sync\" ||\n value === \"webhook\" ||\n value === \"workflow\"\n )\n}\n\nfunction assertNonEmpty(value: string, label: string): void {\n if (!value.trim()) {\n throw new Error(`[Sixb] ${label} must not be empty.`)\n }\n}\n",
6
6
  "/** Deterministic managed service-account id owned by one framework Agent actor. */\nexport function agentServiceAccountId(actorId: string): string {\n return `svc_agent_${actorId}`\n}\n",
7
7
  "/**\n * Grant kinds: the single source of truth for the (capability, target) space.\n *\n * Every grant collapses to one `GrantKind` discriminant — the same\n * `capability:target` string the decision engine uses as a grant key (e.g.\n * `view:object`, `run:sync`). Resolution, validation, enforcement, and the\n * resolved `GrantIndex` all key off it, so adding a grant family is a single\n * entry in `GRANT_KINDS` plus the compile errors that forces at every consumer.\n */\n\nimport type { AgentRunGrant, GrantDefinition } from \"../security/types\"\n\nexport type GrantKind =\n | \"access:application\"\n | \"view:object\"\n | \"view:dataset\"\n | \"edit:object\"\n | \"append:telemetry\"\n | \"apply:action\"\n | \"share:share\"\n | \"run:workflow\"\n | \"run:sync\"\n | \"run:pipeline\"\n | \"run:agent\"\n | \"observe:logs\"\n | \"observe:aiUsage\"\n | \"manage:connector\"\n | \"manage:aiUsage\"\n\nexport type SingletonGrantKind = \"run:agent\"\nexport type TargetedGrantKind = Exclude<GrantKind, SingletonGrantKind>\n\n/** Registered id universes a grant kind ranges over, plus subtype expansion. */\nexport interface GrantUniverse {\n readonly applicationIds: ReadonlySet<string>\n readonly objectTypeIds: ReadonlySet<string>\n readonly datasetIds: ReadonlySet<string>\n readonly actionIds: ReadonlySet<string>\n readonly shareIds: ReadonlySet<string>\n readonly workflowIds: ReadonlySet<string>\n readonly syncIds: ReadonlySet<string>\n readonly pipelineIds: ReadonlySet<string>\n readonly observableIds: ReadonlySet<string>\n readonly connectorIds: ReadonlySet<string>\n readonly manageableIds: ReadonlySet<string>\n readonly getSubTypes: (objectTypeId: string) => readonly string[]\n}\n\n/** The registered-id sets a grant kind validates against (no subtype hook). */\nexport type GrantUniverseKey = Exclude<keyof GrantUniverse, \"getSubTypes\">\n\ninterface TargetedGrantKindSpec {\n /** Registered universe the grant's ids must belong to. */\n readonly universeKey: GrantUniverseKey\n /** Subject noun used in validation errors (\"unknown <subject> '<id>'\"). */\n readonly subject: string\n /** Actionable hint appended to the \"unknown <subject>\" error. */\n readonly fix: string\n /** Only object-type grants also expand to subtypes. */\n readonly expandsSubtypes?: true\n}\n\ninterface SingletonGrantKindSpec {\n /** Project-wide capability with no resource selection; resolves to a boolean. */\n readonly singleton: true\n readonly subject: string\n readonly fix: string\n}\n\n/**\n * The exhaustive grant-kind table. A new grant family is one entry here; the\n * mapped type makes every omission a compile error.\n */\nexport const GRANT_KINDS: {\n readonly [TKind in GrantKind]: TKind extends SingletonGrantKind\n ? SingletonGrantKindSpec\n : TargetedGrantKindSpec\n} = {\n \"access:application\": {\n universeKey: \"applicationIds\",\n subject: \"application\",\n fix: \"Use an application exported from '@sixb/core'.\",\n },\n \"view:object\": {\n universeKey: \"objectTypeIds\",\n subject: \"object type\",\n fix: \"Register it in 'ontology/' or pass it to createSixb({ ontologies }).\",\n expandsSubtypes: true,\n },\n \"view:dataset\": {\n universeKey: \"datasetIds\",\n subject: \"dataset\",\n fix: \"Add it to 'datasets/' or pass it to createSixb({ datasets }).\",\n },\n // Deliberately no `expandsSubtypes`: granting writes on a parent type must not\n // silently extend to types added under it later. `view:object` expands because\n // a read of a subtype reveals nothing the parent's grant did not already cover.\n \"edit:object\": {\n universeKey: \"objectTypeIds\",\n subject: \"object type\",\n fix: \"Register it in 'ontology/' or pass it to createSixb({ ontologies }).\",\n },\n \"append:telemetry\": {\n universeKey: \"objectTypeIds\",\n subject: \"object type\",\n fix: \"Register it in 'ontology/' or pass it to createSixb({ ontologies }).\",\n },\n \"apply:action\": {\n universeKey: \"actionIds\",\n subject: \"action\",\n fix: \"Add it to 'actions/' or pass it to createSixb({ actions }).\",\n },\n \"share:share\": {\n universeKey: \"shareIds\",\n subject: \"share\",\n fix: \"Add it to 'shares/' or pass it to createSixb({ shares }).\",\n },\n \"run:workflow\": {\n universeKey: \"workflowIds\",\n subject: \"workflow\",\n fix: \"Add it to 'workflows/' or pass it to createSixb({ workflows }).\",\n },\n \"run:sync\": {\n universeKey: \"syncIds\",\n subject: \"sync\",\n fix: \"Add it to 'syncs/' or pass it to createSixb({ syncs }).\",\n },\n \"run:pipeline\": {\n universeKey: \"pipelineIds\",\n subject: \"pipeline\",\n fix: \"Add it to 'pipelines/' or pass it to createSixb({ pipelines }).\",\n },\n \"run:agent\": {\n singleton: true,\n subject: \"agent\",\n fix: \"Configure models.language and use the exported agent reference in can.run(agent).\",\n },\n \"observe:logs\": {\n universeKey: \"observableIds\",\n subject: \"observability surface\",\n fix: 'Use can.observe(\"logs\").',\n },\n \"observe:aiUsage\": {\n universeKey: \"observableIds\",\n subject: \"observability surface\",\n fix: \"Use can.observe(agent.usage).\",\n },\n \"manage:connector\": {\n universeKey: \"connectorIds\",\n subject: \"connector\",\n fix: \"Add it to 'connectors/' or pass it to createSixb({ connectors }).\",\n },\n \"manage:aiUsage\": {\n universeKey: \"manageableIds\",\n subject: \"management surface\",\n fix: \"Use can.manage(agent.usage).\",\n },\n}\n\nexport const GRANT_KIND_KEYS = Object.keys(GRANT_KINDS) as readonly GrantKind[]\nexport const TARGETED_GRANT_KIND_KEYS = GRANT_KIND_KEYS.filter(\n (kind): kind is TargetedGrantKind => kind !== \"run:agent\"\n)\n\n/** The grant kind a stored grant resolves to. */\nexport function grantKindOf(grant: AgentRunGrant): SingletonGrantKind\nexport function grantKindOf(grant: Exclude<GrantDefinition, AgentRunGrant>): TargetedGrantKind\nexport function grantKindOf(grant: GrantDefinition): GrantKind\nexport function grantKindOf(grant: GrantDefinition): GrantKind {\n switch (grant.capability) {\n case \"access\":\n return \"access:application\"\n case \"view\":\n return `view:${grant.target}`\n case \"edit\":\n return \"edit:object\"\n case \"append\":\n return \"append:telemetry\"\n case \"apply\":\n return \"apply:action\"\n case \"share\":\n return \"share:share\"\n case \"run\":\n return `run:${grant.target}`\n case \"observe\":\n return `observe:${grant.target}`\n case \"manage\":\n return `manage:${grant.target}`\n }\n}\n\n/** Mutable grant index: booleans for singleton capabilities, id sets for selected resources. */\nexport type MutableGrantIndex = {\n [TKind in GrantKind]: TKind extends SingletonGrantKind ? boolean : Set<string>\n}\n\nexport function emptyGrantSets(): MutableGrantIndex {\n return {\n \"access:application\": new Set(),\n \"view:object\": new Set(),\n \"view:dataset\": new Set(),\n \"edit:object\": new Set(),\n \"append:telemetry\": new Set(),\n \"apply:action\": new Set(),\n \"share:share\": new Set(),\n \"run:workflow\": new Set(),\n \"run:sync\": new Set(),\n \"run:pipeline\": new Set(),\n \"run:agent\": false,\n \"observe:logs\": new Set(),\n \"observe:aiUsage\": new Set(),\n \"manage:connector\": new Set(),\n \"manage:aiUsage\": new Set(),\n }\n}\n",
8
8
  "/** Provider-side limits for one selected object-read operation. */\nexport interface ObjectReadExecutionLimits {\n /** Maximum number of live roots and selected edge occurrences resolved by one operation. */\n readonly maxTraversalFacts: number\n /** Maximum UTF-8 JSON size released by one operation. */\n readonly maxOutputJsonBytes: number\n}\n\nexport type ObjectReadLimitMetric = \"traversalFacts\" | \"outputJsonBytes\"\n\n/** Cross-provider admission bound for one selected-reader facet terminal. */\nexport const MAX_OBJECT_READ_FACETS = 16\n\nconst MAX_OUTPUT_JSON_DEPTH = 64\n\n/** Stable, provider-neutral failure raised when an object-read budget is exhausted. */\nexport class ObjectReadLimitExceededError extends Error {\n readonly name = \"ObjectReadLimitExceededError\"\n readonly code = \"object_read_limit_exceeded\"\n\n constructor(\n readonly metric: ObjectReadLimitMetric,\n readonly limit: number\n ) {\n super(`[Sixb] Object read exceeded its ${metric} limit (${limit}).`)\n }\n}\n\n/** Validate and detach limits at the provider boundary. */\nexport function snapshotObjectReadExecutionLimits(\n limits: ObjectReadExecutionLimits\n): ObjectReadExecutionLimits {\n if (typeof limits !== \"object\" || limits === null) {\n throw new Error(\"[Sixb] Object read execution limits must be provided.\")\n }\n return Object.freeze({\n maxTraversalFacts: positiveSafeInteger(limits.maxTraversalFacts, \"maxTraversalFacts\"),\n maxOutputJsonBytes: positiveSafeInteger(limits.maxOutputJsonBytes, \"maxOutputJsonBytes\"),\n })\n}\n\n/** Reject facet fan-out before a provider resolves the selected universe. */\nexport function assertObjectReadFacetCount(count: number): void {\n if (!Number.isSafeInteger(count) || count < 0 || count > MAX_OBJECT_READ_FACETS) {\n throw new Error(\n `[Sixb] An object read supports between 0 and ${MAX_OBJECT_READ_FACETS} facets.`\n )\n }\n}\n\n/** Fail before a selected reader releases an oversized value to its caller. */\nexport function assertObjectReadOutputWithinLimit(\n value: unknown,\n limits: Pick<ObjectReadExecutionLimits, \"maxOutputJsonBytes\">\n): void {\n const fail = (): never => {\n throw new ObjectReadLimitExceededError(\"outputJsonBytes\", limits.maxOutputJsonBytes)\n }\n const stack: Array<{ value: object; serializedChildren: number }> = []\n let bytes = 0\n const addBytes = (count: number): void => {\n bytes += count\n if (bytes > limits.maxOutputJsonBytes) fail()\n }\n const addPrimitiveBytes = (primitive: boolean | number | string): void => {\n switch (typeof primitive) {\n case \"string\":\n addBytes(jsonStringUtf8Length(primitive))\n break\n case \"number\":\n addBytes(\n Number.isFinite(primitive) ? (Object.is(primitive, -0) ? 1 : String(primitive).length) : 4\n )\n break\n case \"boolean\":\n addBytes(primitive ? 4 : 5)\n break\n }\n }\n\n try {\n JSON.stringify(value, function (this: unknown, key, current: unknown) {\n const parent = isObject(this) ? this : undefined\n let parentFrameIndex = -1\n if (parent) {\n for (let index = stack.length - 1; index >= 0; index -= 1) {\n if (stack[index]?.value === parent) {\n parentFrameIndex = index\n break\n }\n }\n }\n const isRoot = parentFrameIndex === -1\n if (isRoot) {\n stack.length = 0\n } else {\n stack.length = parentFrameIndex + 1\n }\n const parentFrame = isRoot ? undefined : stack[parentFrameIndex]\n const parentIsArray = Array.isArray(parent)\n const unsupported =\n current === undefined || typeof current === \"function\" || typeof current === \"symbol\"\n\n if (!isRoot) {\n if (!parentIsArray && unsupported) return current\n if (!parentFrame) return fail()\n if (parentFrame.serializedChildren > 0) addBytes(1)\n parentFrame.serializedChildren += 1\n if (!parentIsArray) addBytes(jsonStringUtf8Length(key) + 1)\n } else if (unsupported) {\n return current\n }\n\n if (parentIsArray && unsupported) {\n addBytes(4)\n return current\n }\n\n if (isObject(current)) {\n // JSON.stringify handles primitive wrappers and raw JSON specially after the replacer.\n // Return an already-coerced primitive so custom Number/String coercion runs exactly once.\n const special = inspectJsonSpecialObject(current)\n switch (special.kind) {\n case \"primitive\":\n addPrimitiveBytes(special.value)\n return special.value\n case \"bigint\":\n throw new TypeError(\"BigInt is not JSON serializable\")\n case \"raw\":\n addBytes(rawJsonUtf8Length(special.value))\n return current\n case \"ordinary\":\n break\n }\n }\n\n switch (typeof current) {\n case \"string\":\n addPrimitiveBytes(current)\n break\n case \"number\":\n addPrimitiveBytes(current)\n break\n case \"boolean\":\n addPrimitiveBytes(current)\n break\n case \"bigint\":\n throw new TypeError(\"BigInt is not JSON serializable\")\n case \"object\":\n if (current === null) {\n addBytes(4)\n break\n }\n if (stack.some((frame) => frame.value === current)) {\n throw new TypeError(\"Cyclic object value\")\n }\n if (stack.length + 1 > MAX_OUTPUT_JSON_DEPTH) fail()\n addBytes(2)\n stack.push({ value: current, serializedChildren: 0 })\n break\n }\n return current\n })\n } catch (error) {\n if (error instanceof ObjectReadLimitExceededError) throw error\n if (error instanceof RangeError || error instanceof TypeError) fail()\n throw error\n }\n}\n\ntype JsonSpecialObject =\n | { readonly kind: \"ordinary\" }\n | { readonly kind: \"primitive\"; readonly value: boolean | number | string }\n | { readonly kind: \"bigint\" }\n | { readonly kind: \"raw\"; readonly value: string }\n\nconst jsonWithRawJson = JSON as JSON & {\n isRawJSON?: (value: unknown) => boolean\n}\nconst isRawJson = jsonWithRawJson.isRawJSON?.bind(jsonWithRawJson)\nconst booleanValueOf = bindValueOf(Boolean.prototype.valueOf)\nconst numberValueOf = bindValueOf(Number.prototype.valueOf)\nconst stringValueOf = bindValueOf(String.prototype.valueOf)\nconst bigintValueOf = bindValueOf(BigInt.prototype.valueOf)\nconst toStringValue = String\n\nfunction inspectJsonSpecialObject(value: object): JsonSpecialObject {\n if (isRawJson?.(value)) {\n const raw = (value as { readonly rawJSON?: unknown }).rawJSON\n if (typeof raw !== \"string\") return { kind: \"ordinary\" }\n return { kind: \"raw\", value: raw }\n }\n\n const boolean = unbox(value, booleanValueOf)\n if (boolean.matched) return { kind: \"primitive\", value: boolean.value }\n const number = unbox(value, numberValueOf)\n if (number.matched) return { kind: \"primitive\", value: +(value as unknown as number) }\n const string = unbox(value, stringValueOf)\n if (string.matched) return { kind: \"primitive\", value: toStringValue(value) }\n if (unbox(value, bigintValueOf).matched) return { kind: \"bigint\" }\n return { kind: \"ordinary\" }\n}\n\nfunction bindValueOf<T>(unboxer: (this: object) => T): (value: object) => T {\n return Function.prototype.call.bind(unboxer) as (value: object) => T\n}\n\nfunction unbox<T>(\n value: object,\n unboxer: (value: object) => T\n): { readonly matched: true; readonly value: T } | { readonly matched: false } {\n try {\n return { matched: true, value: unboxer(value) }\n } catch {\n return { matched: false }\n }\n}\n\nfunction rawJsonUtf8Length(value: string): number {\n // Raw JSON is already escaped source text. Count its encoded bytes directly without allocating\n // a second encoded buffer proportional to the caller-controlled payload.\n let bytes = 0\n for (let index = 0; index < value.length; index += 1) {\n const code = value.charCodeAt(index)\n if (code <= 0x7f) {\n bytes += 1\n } else if (code <= 0x7ff) {\n bytes += 2\n } else if (code >= 0xd800 && code <= 0xdbff) {\n const next = value.charCodeAt(index + 1)\n if (next >= 0xdc00 && next <= 0xdfff) {\n bytes += 4\n index += 1\n } else {\n bytes += 3\n }\n } else {\n bytes += 3\n }\n }\n return bytes\n}\n\nfunction jsonStringUtf8Length(value: string): number {\n let bytes = 2\n for (let index = 0; index < value.length; index += 1) {\n const code = value.charCodeAt(index)\n if (code === 0x22 || code === 0x5c) {\n bytes += 2\n } else if (code <= 0x1f) {\n bytes +=\n code === 0x08 || code === 0x09 || code === 0x0a || code === 0x0c || code === 0x0d ? 2 : 6\n } else if (code <= 0x7f) {\n bytes += 1\n } else if (code <= 0x7ff) {\n bytes += 2\n } else if (code >= 0xd800 && code <= 0xdbff) {\n const next = value.charCodeAt(index + 1)\n if (next >= 0xdc00 && next <= 0xdfff) {\n bytes += 4\n index += 1\n } else {\n bytes += 6\n }\n } else if (code >= 0xdc00 && code <= 0xdfff) {\n bytes += 6\n } else {\n bytes += 3\n }\n }\n return bytes\n}\n\nfunction isObject(value: unknown): value is object {\n return typeof value === \"object\" && value !== null\n}\n\nfunction positiveSafeInteger(value: unknown, name: string): number {\n if (typeof value !== \"number\" || !Number.isSafeInteger(value) || value <= 0) {\n throw new Error(`[Sixb] ${name} must be a positive safe integer.`)\n }\n return value\n}\n",
9
- "import type { Principal } from \"../auth/types\"\n\n/** User or service account that may initiate or authorize an execution. */\nexport type AuthorizablePrincipal = Extract<Principal, { readonly type: \"user\" | \"serviceAccount\" }>\n\n/** Registered primitive kinds that may receive internal trusted authority. */\nexport type TrustedPrimitiveKind =\n | \"action\"\n | \"pipeline\"\n | \"projection\"\n | \"rule\"\n | \"sync\"\n | \"webhook\"\n | \"workflow\"\n\nexport interface TrustedPrimitiveRef {\n readonly kind: TrustedPrimitiveKind\n readonly id: string\n readonly runId: string\n}\n\n/** Durable provenance for authority delegated by one shared-access browser session. */\nexport interface SharedAccessDelegationRef {\n readonly kind: \"share\"\n readonly grantId: string\n readonly sessionId: string\n}\n\nexport type KernelOperation = {\n readonly type: \"ontology.recover\"\n readonly recoveryId: string\n}\n\n/** Workload currently executing. This is provenance and never grants authority by itself. */\nexport type ExecutionExecutor =\n | { readonly type: \"request\"; readonly requestId: string }\n | {\n readonly type: \"primitive\"\n readonly kind: TrustedPrimitiveKind\n readonly id: string\n readonly runId: string\n }\n | { readonly type: \"agent\"; readonly actorId?: string; readonly runId: string }\n | { readonly type: \"kernel\"; readonly operation: KernelOperation }\n\n/**\n * Occurrence that directly triggered an execution.\n *\n * An `execution` source is the single logical parent of a nested execution.\n */\nexport type ExecutionSource =\n | { readonly type: \"http\"; readonly requestId: string }\n | { readonly type: \"webhook\"; readonly deliveryId: string }\n | { readonly type: \"schedule\"; readonly eventId: string }\n | { readonly type: \"event\"; readonly eventId: string }\n | { readonly type: \"datasetVersion\"; readonly datasetId: string; readonly versionId: string }\n | { readonly type: \"execution\"; readonly executionId: string }\n\n/** Immutable provenance for one request, primitive run, agent run, or kernel operation. */\nexport interface ExecutionContext {\n readonly id: string\n readonly projectId: string\n readonly requestedBy?: AuthorizablePrincipal\n readonly executor: ExecutionExecutor\n readonly source: ExecutionSource\n readonly correlationId: string\n}\n\n/** Durable descriptor used to rebuild authority. A reference is never authoritative by itself. */\nexport type AuthorizationRef =\n | {\n readonly type: \"principal\"\n readonly principal: AuthorizablePrincipal\n readonly credential?:\n | { readonly type: \"session\"; readonly id: string }\n | { readonly type: \"accessToken\"; readonly id: string }\n }\n | { readonly type: \"trustedPrimitive\"; readonly primitive: TrustedPrimitiveRef }\n | { readonly type: \"delegated\"; readonly delegation: SharedAccessDelegationRef }\n | { readonly type: \"kernel\"; readonly operation: KernelOperation }\n | { readonly type: \"disabled\" }\n\nclass RuntimeAuthorizationCapability {\n readonly #runtimeAuthorization = true\n\n private constructor() {}\n\n static create(): RuntimeAuthorizationCapability {\n const capability = new RuntimeAuthorizationCapability()\n Object.freeze(capability)\n return capability\n }\n\n static is(value: unknown): value is RuntimeAuthorizationCapability {\n return typeof value === \"object\" && value !== null && #runtimeAuthorization in value\n }\n}\n\n/**\n * Opaque, process-local authority.\n *\n * The private class makes it nominal in TypeScript; Core registry membership makes it authoritative\n * at runtime. The capability itself is never persisted.\n */\nexport type RuntimeAuthorization = RuntimeAuthorizationCapability\n\n/** Execution provenance paired with the process-local authority that permits its operations. */\nexport interface ExecutionScope {\n readonly execution: ExecutionContext\n readonly authorization: RuntimeAuthorization\n}\n\n/** Internal constructor; the package root exports only the opaque type. */\nexport function createRuntimeAuthorizationCapability(): RuntimeAuthorization {\n return RuntimeAuthorizationCapability.create()\n}\n\n/** Internal runtime guard; registry membership remains the source of authority. */\nexport function isRuntimeAuthorizationCapability(value: unknown): value is RuntimeAuthorization {\n return RuntimeAuthorizationCapability.is(value)\n}\n",
9
+ "import type { Principal } from \"../auth/types\"\n\n/** User or service account that may initiate or authorize an execution. */\nexport type AuthorizablePrincipal = Extract<Principal, { readonly type: \"user\" | \"serviceAccount\" }>\n\n/** Registered primitive kinds that may receive internal trusted authority. */\nexport type TrustedPrimitiveKind =\n | \"action\"\n | \"pipeline\"\n | \"projection\"\n | \"rule\"\n | \"sync\"\n | \"webhook\"\n | \"workflow\"\n\nexport interface TrustedPrimitiveRef {\n readonly kind: TrustedPrimitiveKind\n readonly id: string\n readonly runId: string\n}\n\n/** Durable provenance for authority delegated by one shared-access browser session. */\nexport interface SharedAccessDelegationRef {\n readonly kind: \"share\"\n readonly grantId: string\n readonly sessionId: string\n}\n\nexport type KernelOperation =\n | { readonly type: \"ontology.recover\"; readonly recoveryId: string }\n | { readonly type: \"ontology.indexVectors\"; readonly indexingId: string }\n\n/** Workload currently executing. This is provenance and never grants authority by itself. */\nexport type ExecutionExecutor =\n | { readonly type: \"request\"; readonly requestId: string }\n | {\n readonly type: \"primitive\"\n readonly kind: TrustedPrimitiveKind\n readonly id: string\n readonly runId: string\n }\n | { readonly type: \"agent\"; readonly actorId?: string; readonly runId: string }\n | { readonly type: \"kernel\"; readonly operation: KernelOperation }\n\n/**\n * Occurrence that directly triggered an execution.\n *\n * An `execution` source is the single logical parent of a nested execution.\n */\nexport type ExecutionSource =\n | { readonly type: \"ontologyCommit\"; readonly commitId: string }\n | { readonly type: \"http\"; readonly requestId: string }\n | { readonly type: \"webhook\"; readonly deliveryId: string }\n | { readonly type: \"schedule\"; readonly eventId: string }\n | { readonly type: \"event\"; readonly eventId: string }\n | { readonly type: \"datasetVersion\"; readonly datasetId: string; readonly versionId: string }\n | { readonly type: \"execution\"; readonly executionId: string }\n\n/** Immutable provenance for one request, primitive run, agent run, or kernel operation. */\nexport interface ExecutionContext {\n readonly id: string\n readonly projectId: string\n readonly requestedBy?: AuthorizablePrincipal\n readonly executor: ExecutionExecutor\n readonly source: ExecutionSource\n readonly correlationId: string\n}\n\n/** Durable descriptor used to rebuild authority. A reference is never authoritative by itself. */\nexport type AuthorizationRef =\n | {\n readonly type: \"principal\"\n readonly principal: AuthorizablePrincipal\n readonly credential?:\n | { readonly type: \"session\"; readonly id: string }\n | { readonly type: \"accessToken\"; readonly id: string }\n }\n | { readonly type: \"trustedPrimitive\"; readonly primitive: TrustedPrimitiveRef }\n | { readonly type: \"delegated\"; readonly delegation: SharedAccessDelegationRef }\n | { readonly type: \"kernel\"; readonly operation: KernelOperation }\n | { readonly type: \"disabled\" }\n\nclass RuntimeAuthorizationCapability {\n readonly #runtimeAuthorization = true\n\n private constructor() {}\n\n static create(): RuntimeAuthorizationCapability {\n const capability = new RuntimeAuthorizationCapability()\n Object.freeze(capability)\n return capability\n }\n\n static is(value: unknown): value is RuntimeAuthorizationCapability {\n return typeof value === \"object\" && value !== null && #runtimeAuthorization in value\n }\n}\n\n/**\n * Opaque, process-local authority.\n *\n * The private class makes it nominal in TypeScript; Core registry membership makes it authoritative\n * at runtime. The capability itself is never persisted.\n */\nexport type RuntimeAuthorization = RuntimeAuthorizationCapability\n\n/** Execution provenance paired with the process-local authority that permits its operations. */\nexport interface ExecutionScope {\n readonly execution: ExecutionContext\n readonly authorization: RuntimeAuthorization\n}\n\n/** Internal constructor; the package root exports only the opaque type. */\nexport function createRuntimeAuthorizationCapability(): RuntimeAuthorization {\n return RuntimeAuthorizationCapability.create()\n}\n\n/** Internal runtime guard; registry membership remains the source of authority. */\nexport function isRuntimeAuthorizationCapability(value: unknown): value is RuntimeAuthorization {\n return RuntimeAuthorizationCapability.is(value)\n}\n",
10
10
  "/** Thrown when a scoped operation is not covered by the principal's grants. Maps to HTTP 403. */\nexport class AuthorizationError extends Error {\n readonly name = \"AuthorizationError\"\n\n constructor(\n /** Stable key of the missing grant, e.g. `view:object:Contract`. */\n readonly grantKey: string,\n message: string\n ) {\n super(message)\n }\n}\n",
11
11
  "/**\n * Authorization decisions for the core data path.\n *\n * `evaluate` is the single place that maps a request to the resolved grant\n * index. `can` (boolean) and `assertAuthorized` (throw) are the two ways to\n * consume a decision; every enforcement site goes through one of them.\n *\n * Every protected leaf first resolves the opaque runtime capability. Missing, forged, or\n * unregistered authority is denied; only an explicitly registered trusted or disabled execution\n * is unrestricted.\n */\n\nimport type { AuthSessionAudience } from \"../auth/audience\"\nimport {\n type ResolvedRuntimeAuthorization,\n resolveExecutionScopeAuthorization,\n resolveRuntimeAuthorizationForProject,\n} from \"../execution/authorization\"\nimport type { ExecutionContext, RuntimeAuthorization } from \"../execution/types\"\nimport { AuthorizationError } from \"./errors\"\nimport type { GrantKind } from \"./grant-kinds\"\nimport type { AuthorizationContext, GrantIndex } from \"./types\"\n\n/** Something a principal may attempt, paired with the resource it targets. */\nexport type AuthzRequest =\n | { readonly kind: \"application.access\"; readonly audience: AuthSessionAudience }\n | { readonly kind: \"object.view\"; readonly objectTypeId: string }\n | { readonly kind: \"dataset.view\"; readonly datasetId: string }\n | { readonly kind: \"object.edit\"; readonly objectTypeId: string }\n | { readonly kind: \"telemetry.append\"; readonly objectTypeId: string }\n | { readonly kind: \"action.apply\"; readonly actionId: string }\n | { readonly kind: \"share.manage\"; readonly shareId: string }\n | { readonly kind: \"workflow.run\"; readonly workflowId: string }\n | { readonly kind: \"sync.run\"; readonly syncId: string }\n | { readonly kind: \"pipeline.run\"; readonly pipelineId: string }\n | { readonly kind: \"agent.run\" }\n | { readonly kind: \"logs.observe\" }\n | { readonly kind: \"aiUsage.observe\" }\n | { readonly kind: \"aiUsage.manage\" }\n | { readonly kind: \"connector.manage\"; readonly connectorId: string }\n | { readonly kind: \"object.query\"; readonly touchedObjectTypeIds: readonly string[] }\n\nexport interface AuthzDecision {\n readonly allowed: boolean\n /** Grant keys the request needs, e.g. `view:object:quote`. */\n readonly requirements: readonly string[]\n /** Required keys the principal lacks; empty when allowed. */\n readonly missing: readonly string[]\n}\n\ninterface AuthorizedRuntime {\n readonly projectId: string\n readonly runtimeAuthorization?: RuntimeAuthorization\n readonly authorization?: AuthorizationContext\n}\n\n// A request expands to one or more atomic (grant kind, id) checks. The atom is\n// the single unit that both names a requirement and tests the grant index, so\n// the two can never drift. `kind` is the resolved-index key, so enforcement is\n// a direct lookup with no per-target dispatch.\ntype Atom =\n | { readonly kind: \"run:agent\" }\n | { readonly kind: Exclude<GrantKind, \"run:agent\">; readonly id: string }\n\nfunction atomsFor(request: AuthzRequest): readonly Atom[] {\n switch (request.kind) {\n case \"application.access\":\n return [{ kind: \"access:application\", id: request.audience }]\n case \"object.view\":\n return [{ kind: \"view:object\", id: request.objectTypeId }]\n case \"dataset.view\":\n return [{ kind: \"view:dataset\", id: request.datasetId }]\n case \"object.edit\":\n return [{ kind: \"edit:object\", id: request.objectTypeId }]\n case \"telemetry.append\":\n return [{ kind: \"append:telemetry\", id: request.objectTypeId }]\n case \"action.apply\":\n return [{ kind: \"apply:action\", id: request.actionId }]\n case \"share.manage\":\n return [{ kind: \"share:share\", id: request.shareId }]\n case \"workflow.run\":\n return [{ kind: \"run:workflow\", id: request.workflowId }]\n case \"sync.run\":\n return [{ kind: \"run:sync\", id: request.syncId }]\n case \"pipeline.run\":\n return [{ kind: \"run:pipeline\", id: request.pipelineId }]\n case \"agent.run\":\n return [{ kind: \"run:agent\" }]\n case \"logs.observe\":\n return [{ kind: \"observe:logs\", id: \"logs\" }]\n case \"aiUsage.observe\":\n return [{ kind: \"observe:aiUsage\", id: \"aiUsage\" }]\n case \"aiUsage.manage\":\n return [{ kind: \"manage:aiUsage\", id: \"aiUsage\" }]\n case \"connector.manage\":\n return [{ kind: \"manage:connector\", id: request.connectorId }]\n case \"object.query\":\n return request.touchedObjectTypeIds.map((id) => ({ kind: \"view:object\", id }))\n }\n}\n\nfunction atomKey(atom: Atom): string {\n if (atom.kind === \"run:agent\") return atom.kind\n if (\n atom.kind === \"observe:logs\" ||\n atom.kind === \"observe:aiUsage\" ||\n atom.kind === \"manage:aiUsage\"\n ) {\n return atom.kind\n }\n return `${atom.kind}:${atom.id}`\n}\n\nfunction holds(grants: GrantIndex, atom: Atom): boolean {\n if (atom.kind === \"run:agent\") return grants[atom.kind]\n return grants[atom.kind].has(atom.id)\n}\n\n/** Resolve a request against a principal's grants. Never throws. */\nexport function evaluate(\n authorization: AuthorizationContext | null | undefined,\n request: AuthzRequest\n): AuthzDecision {\n const atoms = atomsFor(request)\n const requirements = atoms.map(atomKey)\n const missing = authorization\n ? atoms.filter((atom) => !holds(authorization.grants, atom)).map(atomKey)\n : []\n return { allowed: missing.length === 0, requirements, missing }\n}\n\nexport function isAllowed(\n authorization: AuthorizationContext | null | undefined,\n request: AuthzRequest\n): boolean {\n return evaluate(authorization, request).allowed\n}\n\nexport function assertAuthorized(runtime: AuthorizedRuntime, request: AuthzRequest): void {\n const resolved = assertRuntimeAuthorizationBound(runtime)\n if (resolved.type === \"delegated\") {\n throw new AuthorizationError(\n `delegated:${request.kind}`,\n `[Sixb] Operation '${request.kind}' is not covered by delegated authorization.`\n )\n }\n const authorization = resolved.type === \"principal\" ? resolved.context : undefined\n const decision = evaluate(authorization, request)\n if (decision.allowed) {\n return\n }\n\n throw new AuthorizationError(\n decision.missing[0] ?? request.kind,\n deniedMessage(authorization, request)\n )\n}\n\n/** Runtime catalogs never infer unrestricted access from an absent principal context. */\nexport function isRuntimeAllowed(runtime: AuthorizedRuntime, request: AuthzRequest): boolean {\n const authority = resolveRuntimeAuthorizationForProject(runtime)\n if (authority.type === \"denied\" || authority.type === \"delegated\") return false\n return authority.type === \"unrestricted\" || isAllowed(authority.context, request)\n}\n\n/** Resolve registered process-local authority before a protected leaf makes a decision. */\nexport function assertRuntimeAuthorizationBound(\n runtime: AuthorizedRuntime\n): Exclude<ResolvedRuntimeAuthorization, { readonly type: \"denied\" }> {\n const resolved = resolveRuntimeAuthorizationForProject(runtime)\n if (resolved.type === \"denied\") {\n throw new AuthorizationError(\n \"runtime:unbound\",\n \"[Sixb] Protected operations require a registered execution scope.\"\n )\n }\n return resolved\n}\n\n/**\n * Assert a principal may write objects of this type.\n *\n * Requires `view:object` as well as `edit:object`, and that is not belt-and-braces: an upsert\n * returns the *merged* row, which the Materializer reconciles against source authority, so the\n * response can carry properties the caller never sent. Granting the write without the read would\n * leak them.\n *\n * The pairing is asserted here rather than implied during resolution: `resolveRoleGrants` has no\n * notion of one grant entailing another, and giving it one would put ids in the resolved index that\n * no role granted — an index that no longer answers \"what was actually granted\".\n *\n * Telemetry append is deliberately *not* paired this way; see {@link assertCanAppendTelemetry}.\n */\nexport function assertCanEdit(runtime: AuthorizedRuntime, objectTypeId: string): void {\n assertAuthorized(runtime, { kind: \"object.view\", objectTypeId })\n assertAuthorized(runtime, { kind: \"object.edit\", objectTypeId })\n}\n\n/**\n * Assert a principal may append telemetry points to objects of this type.\n *\n * No `view:object` requirement, unlike {@link assertCanEdit}: an append answers with no object\n * state, so there is nothing to leak. That is what makes a write-only principal — a device, an\n * ingestion service — expressible at all, and it is the reason telemetry has its own grant.\n */\nexport function assertCanAppendTelemetry(runtime: AuthorizedRuntime, objectTypeId: string): void {\n assertAuthorized(runtime, { kind: \"telemetry.append\", objectTypeId })\n}\n\n/** Assert a principal may manage lifecycle state for this connector definition. */\nexport function assertCanManageConnector(runtime: AuthorizedRuntime, connectorId: string): void {\n assertAuthorized(runtime, { kind: \"connector.manage\", connectorId })\n}\n\n/**\n * Fail closed for operations that have no grant semantics yet.\n *\n * One caller left — `listLinks`, whose rows reveal target types that no read grant covers. Object,\n * link, and telemetry writes moved to {@link assertCanEdit} / {@link assertCanAppendTelemetry}.\n * Keeps unsupported surfaces denied even if a principal-bound runtime context reaches a code path\n * the execution SDK does not expose.\n */\nexport function assertPrivileged(runtime: AuthorizedRuntime, operation: string): void {\n const resolved = assertRuntimeAuthorizationBound(runtime)\n if (resolved.type === \"unrestricted\") {\n return\n }\n\n throw new AuthorizationError(\n `privileged:${operation}`,\n `[Sixb] Operation '${operation}' is not covered by scoped authorization grants.`\n )\n}\n\n/**\n * Assert access to process providers that trusted executions and genuine agent runs may use.\n *\n * Agent provenance alone is not authority: the registered capability must be bound to the exact\n * same immutable execution before this check succeeds.\n */\nexport function assertProviderAccess(\n runtime: AuthorizedRuntime & { readonly runtimeAuthorization: RuntimeAuthorization },\n execution: ExecutionContext,\n operation: string\n): void {\n const resolved = resolveExecutionScopeAuthorization(runtime.projectId, {\n execution,\n authorization: runtime.runtimeAuthorization,\n })\n if (resolved.type === \"unrestricted\") {\n return\n }\n\n if (execution.executor.type === \"agent\") {\n return\n }\n\n throw new AuthorizationError(\n `privileged:${operation}`,\n `[Sixb] Operation '${operation}' is not covered by scoped authorization grants.`\n )\n}\n\nfunction deniedMessage(\n authorization: AuthorizationContext | null | undefined,\n request: AuthzRequest\n): string {\n const principalId = authorization?.principal.id ?? \"unknown\"\n switch (request.kind) {\n case \"application.access\":\n return `[Sixb] Principal '${principalId}' is not allowed to access application '${request.audience}'.`\n case \"object.view\":\n return `[Sixb] Principal '${principalId}' is not allowed to view object type '${request.objectTypeId}'.`\n case \"dataset.view\":\n return `[Sixb] Principal '${principalId}' is not allowed to view dataset '${request.datasetId}'.`\n case \"object.edit\":\n return `[Sixb] Principal '${principalId}' is not allowed to write object type '${request.objectTypeId}'.`\n case \"telemetry.append\":\n return `[Sixb] Principal '${principalId}' is not allowed to append telemetry for object type '${request.objectTypeId}'.`\n case \"action.apply\":\n return `[Sixb] Principal '${principalId}' is not allowed to apply action '${request.actionId}'.`\n case \"share.manage\":\n return `[Sixb] Principal '${principalId}' is not allowed to manage Share '${request.shareId}'.`\n case \"workflow.run\":\n return `[Sixb] Principal '${principalId}' is not allowed to run workflow '${request.workflowId}'.`\n case \"sync.run\":\n return `[Sixb] Principal '${principalId}' is not allowed to run sync '${request.syncId}'.`\n case \"pipeline.run\":\n return `[Sixb] Principal '${principalId}' is not allowed to run pipeline '${request.pipelineId}'.`\n case \"agent.run\":\n return `[Sixb] Principal '${principalId}' is not allowed to run the project Agent.`\n case \"logs.observe\":\n return `[Sixb] Principal '${principalId}' is not allowed to observe project logs.`\n case \"aiUsage.observe\":\n return `[Sixb] Principal '${principalId}' is not allowed to observe project AI usage.`\n case \"aiUsage.manage\":\n return `[Sixb] Principal '${principalId}' is not allowed to manage project AI usage limits.`\n case \"connector.manage\":\n return `[Sixb] Principal '${principalId}' is not allowed to manage connector '${request.connectorId}'.`\n case \"object.query\": {\n // Name the first touched type the principal cannot view.\n const blocked = request.touchedObjectTypeIds.find(\n (objectTypeId) => !isAllowed(authorization, { kind: \"object.view\", objectTypeId })\n )\n return `[Sixb] Principal '${principalId}' is not allowed to view object type '${blocked}'.`\n }\n }\n}\n",
12
12
  "import type { AuthSessionAudience } from \"../auth/audience\"\nimport { isAllowed } from \"./decision\"\nimport type { AuthorizationContext, ResolvedRole } from \"./types\"\n\n/** Whether declaring roles has enabled an allowlist for an application. */\nexport function isApplicationAccessControlled(\n roles: readonly ResolvedRole[],\n audience: AuthSessionAudience\n): boolean {\n return roles.some((role) => role.grants[\"access:application\"].has(audience))\n}\n\n/**\n * Whether this principal may open this application.\n *\n * KNOWN LIMITATION (0.1.x): application access is the one capability that is **not** deny-by-default.\n * While no role mentions an application, every authenticated principal may open it; the allowlist only\n * switches on once some role grants it. Every other capability — `view`, `apply`, `run`, `observe` —\n * denies unless granted, so this is the single asymmetry in the model.\n *\n * It is deliberate for now: flipping it would lock every project out of Atlas until it declares a role,\n * including projects with no security definitions at all. Closing it means shipping a default grant with\n * the scaffold first, and it is a breaking change for any project relying on the open default.\n */\nexport function canAccessApplication(\n authorization: AuthorizationContext,\n roles: readonly ResolvedRole[],\n audience: AuthSessionAudience\n): boolean {\n return (\n !isApplicationAccessControlled(roles, audience) ||\n isAllowed(authorization, { kind: \"application.access\", audience })\n )\n}\n",
@@ -19,7 +19,7 @@
19
19
  "import type { ProjectionDefinition, ProjectionTarget } from \"../projections\"\nimport { projectionTargetOf } from \"../projections/builders\"\nimport type { ActionRunRecord } from \"../storage/action-runs\"\nimport type { PipelineRunRecord } from \"../storage/pipeline-runs\"\nimport type { WorkflowInterventionRecord } from \"../storage/workflow-interventions\"\nimport type { WorkflowRunRecord } from \"../storage/workflow-runs\"\nimport { isAllowed } from \"./decision\"\nimport type { AuthorizationContext } from \"./types\"\n\nexport function canViewActionRun(\n authorization: AuthorizationContext | null | undefined,\n run: Pick<ActionRunRecord, \"actionId\" | \"subject\">\n): boolean {\n if (!authorization) {\n return true\n }\n\n if (!isAllowed(authorization, { kind: \"action.apply\", actionId: run.actionId })) {\n return false\n }\n\n return run.subject.kind !== \"object\"\n ? true\n : isAllowed(authorization, {\n kind: \"object.view\",\n objectTypeId: run.subject.objectTypeId,\n })\n}\n\nexport function canViewWorkflowRun(\n authorization: AuthorizationContext | null | undefined,\n run: Pick<WorkflowRunRecord, \"workflowId\">\n): boolean {\n return (\n !authorization || isAllowed(authorization, { kind: \"workflow.run\", workflowId: run.workflowId })\n )\n}\n\nexport function canViewWorkflowIntervention(\n authorization: AuthorizationContext | null | undefined,\n intervention: Pick<WorkflowInterventionRecord, \"workflowId\">\n): boolean {\n return (\n !authorization ||\n isAllowed(authorization, { kind: \"workflow.run\", workflowId: intervention.workflowId })\n )\n}\n\nexport function canViewPipelineRun(\n authorization: AuthorizationContext | null | undefined,\n run: Pick<PipelineRunRecord, \"pipelineId\">\n): boolean {\n return (\n !authorization || isAllowed(authorization, { kind: \"pipeline.run\", pipelineId: run.pipelineId })\n )\n}\n\n/** A projection run is viewable when its target object type(s) are viewable. */\nexport function canViewProjectionRun(\n authorization: AuthorizationContext | null | undefined,\n target: ProjectionTarget\n): boolean {\n if (!authorization) return true\n const canView = (objectTypeId: string) =>\n isAllowed(authorization, { kind: \"object.view\", objectTypeId })\n if (\"sourceObjectTypeId\" in target) {\n return canView(target.sourceObjectTypeId) && canView(target.targetObjectTypeId)\n }\n return canView(target.objectTypeId)\n}\n\n/** Whether a principal may see a projection definition (and its run history). */\nexport function canViewProjection(\n authorization: AuthorizationContext | null | undefined,\n projection: ProjectionDefinition\n): boolean {\n return canViewProjectionRun(authorization, projectionTargetOf(projection))\n}\n",
20
20
  "/**\n * Authorization context types.\n *\n * The context is plain, immutable data resolved once per request\n * (`principal -> groups -> roles -> grants`). Grants resolve eagerly into set\n * lookups so enforcement on the hot path is synchronous and allocation-free.\n * Group and role ids are retained so decisions stay explainable.\n */\n\nimport type { Principal } from \"../auth/types\"\nimport { emptyGrantSets, type GrantKind, type SingletonGrantKind } from \"./grant-kinds\"\n\n/**\n * Grants keyed by kind (`view:object`, `run:sync`, …). Resource selections resolve\n * to id sets; project-wide singleton capabilities resolve to booleans.\n * Broad grants and object subtypes are already expanded. Keyed by `GrantKind`\n * so a new grant family adds one key, not a new bucket every consumer must\n * learn.\n */\nexport type GrantIndex = Readonly<{\n [TKind in GrantKind]: TKind extends SingletonGrantKind ? boolean : ReadonlySet<string>\n}>\n\n/**\n * A grant index that grants nothing, as the base for a hand-built context — typically in tests.\n *\n * This is the read-only face of `emptyGrantSets()`, the mutable builder resolution fills in and which\n * stays internal. A factory rather than a shared constant, because the sets are only `ReadonlySet` to\n * the type system: one frozen instance would be aliased into every context that spreads it.\n *\n * Writing the literal by hand is what this avoids. `GrantIndex` is deliberately a total `Record` so\n * that `grants[kind].has(id)` cannot be misspelled into a silent `undefined` — with an optional index\n * every enforcement site would read `?.has(id) ?? false`, where a typo denies instead of failing to\n * compile. The cost of totality is that a literal breaks whenever a grant family is added.\n */\nexport function emptyGrantIndex(): GrantIndex {\n return emptyGrantSets()\n}\n\n/** A role with its grants pre-expanded to concrete id sets at startup. */\nexport interface ResolvedRole {\n readonly id: string\n readonly grantedToGroupIds: readonly string[]\n readonly grants: GrantIndex\n}\n\nexport interface AuthorizationContext {\n readonly principal: Principal\n readonly sessionId?: string\n readonly groupIds: readonly string[]\n /** Roles whose grantedTo groups intersect the principal's memberships. */\n readonly roleIds: readonly string[]\n readonly grants: GrantIndex\n}\n"
21
21
  ],
22
- "mappings": "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",
23
- "debugId": "C7649C713C108F6A64756E2164756E21",
22
+ "mappings": "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",
23
+ "debugId": "081671DAEDB8F65F64756E2164756E21",
24
24
  "names": []
25
25
  }