@sixb/core 0.1.8 → 0.1.10

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 (785) hide show
  1. package/dist/actions/index.js +77 -89
  2. package/dist/actions/index.js.map +1 -1
  3. package/dist/actions/run-dispatch.d.ts.map +1 -1
  4. package/dist/actions/types/context.d.ts +2 -0
  5. package/dist/actions/types/context.d.ts.map +1 -1
  6. package/dist/actions/validation.d.ts +1 -1
  7. package/dist/actions/validation.d.ts.map +1 -1
  8. package/dist/actions/worker.js +33 -37
  9. package/dist/actions/worker.js.map +2 -2
  10. package/dist/agents/adapters.d.ts +3 -3
  11. package/dist/agents/{context.d.ts → context/entries.d.ts} +3 -3
  12. package/dist/agents/context/entries.d.ts.map +1 -0
  13. package/dist/agents/context/index.d.ts +4 -0
  14. package/dist/agents/context/index.d.ts.map +1 -0
  15. package/dist/agents/context/index.js +19 -0
  16. package/dist/agents/{streams.js.map → context/index.js.map} +1 -1
  17. package/dist/agents/context-model.d.ts +1 -1
  18. package/dist/agents/context-model.d.ts.map +1 -1
  19. package/dist/agents/context-resolution.d.ts +1 -1
  20. package/dist/agents/context-resolution.d.ts.map +1 -1
  21. package/dist/agents/index.d.ts +4 -4
  22. package/dist/agents/index.d.ts.map +1 -1
  23. package/dist/agents/index.js +193 -204
  24. package/dist/agents/index.js.map +1 -1
  25. package/dist/agents/message.d.ts +1 -1
  26. package/dist/agents/message.d.ts.map +1 -1
  27. package/dist/agents/model-loop.d.ts +2 -0
  28. package/dist/agents/model-loop.d.ts.map +1 -1
  29. package/dist/agents/request.d.ts +1 -1
  30. package/dist/agents/request.d.ts.map +1 -1
  31. package/dist/agents/streams/index.d.ts +4 -0
  32. package/dist/agents/streams/index.d.ts.map +1 -0
  33. package/dist/agents/streams/index.js +20 -0
  34. package/dist/{chunk-y64skrwp.js.map → agents/streams/index.js.map} +1 -1
  35. package/dist/agents/streams/internal.d.ts +3 -0
  36. package/dist/agents/streams/internal.d.ts.map +1 -0
  37. package/dist/agents/streams/internal.js +40 -0
  38. package/dist/agents/{context.js.map → streams/internal.js.map} +1 -1
  39. package/dist/agents/{streams.d.ts → streams/protocol.d.ts} +5 -5
  40. package/dist/agents/streams/protocol.d.ts.map +1 -0
  41. package/dist/agents/types.d.ts +1 -1
  42. package/dist/agents/types.d.ts.map +1 -1
  43. package/dist/agents/validation.d.ts.map +1 -1
  44. package/dist/auth/index.d.ts +0 -1
  45. package/dist/auth/index.d.ts.map +1 -1
  46. package/dist/auth/index.js +96 -108
  47. package/dist/auth/index.js.map +1 -1
  48. package/dist/auth/strategy.js +8 -9
  49. package/dist/auth/strategy.js.map +1 -1
  50. package/dist/authorization/index.js +51 -56
  51. package/dist/authorization/index.js.map +1 -1
  52. package/dist/blob-storage/browser.js +15 -17
  53. package/dist/blob-storage/browser.js.map +1 -1
  54. package/dist/blob-storage/index.js +36 -38
  55. package/dist/blob-storage/index.js.map +1 -1
  56. package/dist/bootstrap/discovery.d.ts +14 -1
  57. package/dist/bootstrap/discovery.d.ts.map +1 -1
  58. package/dist/bootstrap/index.d.ts +2 -2
  59. package/dist/bootstrap/index.d.ts.map +1 -1
  60. package/dist/bootstrap/index.js +80 -88
  61. package/dist/bootstrap/index.js.map +1 -1
  62. package/dist/broker/in-memory.d.ts +8 -2
  63. package/dist/broker/in-memory.d.ts.map +1 -1
  64. package/dist/broker/index.d.ts +4 -2
  65. package/dist/broker/index.d.ts.map +1 -1
  66. package/dist/broker/index.js +12 -10
  67. package/dist/broker/index.js.map +1 -1
  68. package/dist/broker/retention.d.ts +4 -0
  69. package/dist/broker/retention.d.ts.map +1 -0
  70. package/dist/broker/subscriber.d.ts +10 -0
  71. package/dist/broker/subscriber.d.ts.map +1 -0
  72. package/dist/broker/types.d.ts +14 -1
  73. package/dist/broker/types.d.ts.map +1 -1
  74. package/dist/chunk-0y39rgsb.js +43 -0
  75. package/dist/{chunk-c15dr03f.js.map → chunk-0y39rgsb.js.map} +2 -2
  76. package/dist/{chunk-k522z7v6.js → chunk-17kfctj6.js} +16 -11
  77. package/dist/chunk-17kfctj6.js.map +10 -0
  78. package/dist/{chunk-ajnan18g.js → chunk-1824gssz.js} +74 -106
  79. package/dist/chunk-1824gssz.js.map +12 -0
  80. package/dist/chunk-28ja2cjs.js +602 -0
  81. package/dist/chunk-28ja2cjs.js.map +18 -0
  82. package/dist/{chunk-5gd7tpv6.js → chunk-2c4j899j.js} +4 -4
  83. package/dist/chunk-2c4j899j.js.map +11 -0
  84. package/dist/{chunk-rv2hkwwa.js → chunk-358caqf5.js} +157 -180
  85. package/dist/chunk-358caqf5.js.map +12 -0
  86. package/dist/{chunk-fvt9rjsa.js → chunk-38zv5rkr.js} +4 -4
  87. package/dist/{chunk-fvt9rjsa.js.map → chunk-38zv5rkr.js.map} +1 -1
  88. package/dist/{chunk-w3e09qqk.js → chunk-39tqv9hz.js} +24 -24
  89. package/dist/{chunk-w3e09qqk.js.map → chunk-39tqv9hz.js.map} +2 -2
  90. package/dist/{chunk-04b07a9q.js → chunk-3bh94gbw.js} +13 -13
  91. package/dist/{chunk-04b07a9q.js.map → chunk-3bh94gbw.js.map} +2 -2
  92. package/dist/{chunk-s5y30bc9.js → chunk-3qms4nax.js} +52 -50
  93. package/dist/{chunk-s5y30bc9.js.map → chunk-3qms4nax.js.map} +5 -5
  94. package/dist/{chunk-nf4r78r4.js → chunk-5a4a52tq.js} +4 -4
  95. package/dist/{chunk-nf4r78r4.js.map → chunk-5a4a52tq.js.map} +2 -2
  96. package/dist/{chunk-wtf06et8.js → chunk-5c7ga8zz.js} +54 -177
  97. package/dist/chunk-5c7ga8zz.js.map +12 -0
  98. package/dist/{chunk-rte5sm3z.js → chunk-5hz0fnca.js} +23 -23
  99. package/dist/{chunk-rte5sm3z.js.map → chunk-5hz0fnca.js.map} +2 -2
  100. package/dist/{chunk-xajtptbw.js → chunk-5p1v802y.js} +1401 -445
  101. package/dist/chunk-5p1v802y.js.map +44 -0
  102. package/dist/chunk-653vwrzr.js +39 -0
  103. package/dist/chunk-653vwrzr.js.map +10 -0
  104. package/dist/{chunk-qw9gvjv5.js → chunk-72w2pxk7.js} +13 -13
  105. package/dist/{chunk-qw9gvjv5.js.map → chunk-72w2pxk7.js.map} +2 -2
  106. package/dist/chunk-7apz6hg4.js +50 -0
  107. package/dist/{chunk-jq43kdvk.js.map → chunk-7apz6hg4.js.map} +2 -2
  108. package/dist/chunk-7bs40fe1.js +218 -0
  109. package/dist/{chunk-p1rzczbt.js.map → chunk-7bs40fe1.js.map} +3 -3
  110. package/dist/chunk-7zgecwy1.js +113 -0
  111. package/dist/chunk-7zgecwy1.js.map +10 -0
  112. package/dist/{chunk-xhy826cz.js → chunk-85cd7e8c.js} +8 -7
  113. package/dist/chunk-85cd7e8c.js.map +10 -0
  114. package/dist/{chunk-pc7ys28c.js → chunk-860dwwy0.js} +29 -29
  115. package/dist/{chunk-pc7ys28c.js.map → chunk-860dwwy0.js.map} +2 -2
  116. package/dist/chunk-8vj0rjgs.js +165 -0
  117. package/dist/chunk-8vj0rjgs.js.map +15 -0
  118. package/dist/{chunk-7y0f6rf1.js → chunk-92vk7gta.js} +58 -58
  119. package/dist/chunk-92vk7gta.js.map +10 -0
  120. package/dist/{chunk-rafagrwr.js → chunk-93csa55g.js} +45 -17
  121. package/dist/chunk-93csa55g.js.map +11 -0
  122. package/dist/{chunk-aa2pen2v.js → chunk-976rxdpx.js} +188 -175
  123. package/dist/{chunk-aa2pen2v.js.map → chunk-976rxdpx.js.map} +2 -2
  124. package/dist/{chunk-d8qkxt2v.js → chunk-98cw09sw.js} +7 -7
  125. package/dist/chunk-98cw09sw.js.map +10 -0
  126. package/dist/{chunk-n4khvw9n.js → chunk-9qsh3p5y.js} +17 -17
  127. package/dist/{chunk-n4khvw9n.js.map → chunk-9qsh3p5y.js.map} +2 -2
  128. package/dist/{chunk-4a849fr1.js → chunk-9tc8dxmn.js} +1 -1
  129. package/dist/{chunk-9nbmsvn5.js → chunk-9vx5e9g1.js} +9 -9
  130. package/dist/{chunk-9nbmsvn5.js.map → chunk-9vx5e9g1.js.map} +2 -2
  131. package/dist/{chunk-8m5ejdpn.js → chunk-9x8dybsb.js} +5 -5
  132. package/dist/chunk-9x8dybsb.js.map +10 -0
  133. package/dist/chunk-aa6z4a19.js +358 -0
  134. package/dist/chunk-aa6z4a19.js.map +12 -0
  135. package/dist/{chunk-3xep5cjx.js → chunk-agbbygvh.js} +104 -86
  136. package/dist/chunk-agbbygvh.js.map +15 -0
  137. package/dist/{chunk-2dw777qw.js → chunk-ap0g1g74.js} +37 -82
  138. package/dist/{chunk-2dw777qw.js.map → chunk-ap0g1g74.js.map} +3 -4
  139. package/dist/{chunk-v4en4jc2.js → chunk-awbhdqyc.js} +7 -7
  140. package/dist/{chunk-v4en4jc2.js.map → chunk-awbhdqyc.js.map} +2 -2
  141. package/dist/{chunk-w9tg6yyb.js → chunk-b0ec55a1.js} +54 -37
  142. package/dist/chunk-b0ec55a1.js.map +12 -0
  143. package/dist/{chunk-ka3a2ft3.js → chunk-b19g04jk.js} +12 -12
  144. package/dist/{chunk-ka3a2ft3.js.map → chunk-b19g04jk.js.map} +2 -2
  145. package/dist/{chunk-gbejpkex.js → chunk-bn138h9w.js} +27 -28
  146. package/dist/{chunk-gbejpkex.js.map → chunk-bn138h9w.js.map} +3 -3
  147. package/dist/{chunk-nx7k8tpr.js → chunk-br3k6qbf.js} +23 -23
  148. package/dist/{chunk-nx7k8tpr.js.map → chunk-br3k6qbf.js.map} +2 -2
  149. package/dist/{chunk-dbc80ad7.js → chunk-c5rkjrgp.js} +28 -28
  150. package/dist/{chunk-dbc80ad7.js.map → chunk-c5rkjrgp.js.map} +2 -2
  151. package/dist/{chunk-dktq02ne.js → chunk-cqr3acm1.js} +4 -4
  152. package/dist/{chunk-dktq02ne.js.map → chunk-cqr3acm1.js.map} +2 -2
  153. package/dist/chunk-d62kjtbg.js +7 -0
  154. package/dist/{chunk-zcnhxkvd.js.map → chunk-d62kjtbg.js.map} +2 -2
  155. package/dist/{chunk-74drx9gd.js → chunk-dfm066qg.js} +10 -10
  156. package/dist/{chunk-74drx9gd.js.map → chunk-dfm066qg.js.map} +2 -2
  157. package/dist/{chunk-5e3pq99w.js → chunk-dmn70ztd.js} +30 -30
  158. package/dist/chunk-dmn70ztd.js.map +11 -0
  159. package/dist/{chunk-p1x242ad.js → chunk-dz5h08xv.js} +175 -175
  160. package/dist/{chunk-p1x242ad.js.map → chunk-dz5h08xv.js.map} +2 -2
  161. package/dist/{chunk-p2vqaxkc.js → chunk-e0d1rzef.js} +27 -22
  162. package/dist/{chunk-p2vqaxkc.js.map → chunk-e0d1rzef.js.map} +3 -3
  163. package/dist/{chunk-5sz8ta9r.js → chunk-e1c18xjx.js} +52 -52
  164. package/dist/{chunk-5sz8ta9r.js.map → chunk-e1c18xjx.js.map} +2 -2
  165. package/dist/{chunk-19jp6g9d.js → chunk-f0rwz2vh.js} +54 -33
  166. package/dist/chunk-f0rwz2vh.js.map +11 -0
  167. package/dist/{chunk-2xns679x.js → chunk-f4w3yp4f.js} +171 -36
  168. package/dist/chunk-f4w3yp4f.js.map +12 -0
  169. package/dist/{chunk-979ww6b3.js → chunk-fb3feg1e.js} +29 -29
  170. package/dist/{chunk-979ww6b3.js.map → chunk-fb3feg1e.js.map} +2 -2
  171. package/dist/{chunk-f26bck4t.js → chunk-ftv470j8.js} +393 -355
  172. package/dist/{chunk-f26bck4t.js.map → chunk-ftv470j8.js.map} +7 -7
  173. package/dist/{chunk-4sm0aznx.js → chunk-g00bfdq6.js} +254 -256
  174. package/dist/{chunk-4sm0aznx.js.map → chunk-g00bfdq6.js.map} +3 -3
  175. package/dist/{chunk-p03r0h5s.js → chunk-g53f0e4j.js} +76 -202
  176. package/dist/chunk-g53f0e4j.js.map +15 -0
  177. package/dist/chunk-g6cke204.js +124 -0
  178. package/dist/chunk-g6cke204.js.map +10 -0
  179. package/dist/{chunk-q0k9nc5a.js → chunk-g7knyczr.js} +98 -98
  180. package/dist/{chunk-q0k9nc5a.js.map → chunk-g7knyczr.js.map} +2 -2
  181. package/dist/{chunk-51fjndv0.js → chunk-gfdh9kqa.js} +4 -4
  182. package/dist/{chunk-51fjndv0.js.map → chunk-gfdh9kqa.js.map} +2 -2
  183. package/dist/{chunk-8tsf6dmc.js → chunk-gqh45d2n.js} +244 -205
  184. package/dist/chunk-gqh45d2n.js.map +15 -0
  185. package/dist/chunk-h3v76ams.js +32 -0
  186. package/dist/{chunk-08m3b6w8.js.map → chunk-h3v76ams.js.map} +2 -2
  187. package/dist/{chunk-jecn6t54.js → chunk-jgwb25gc.js} +74 -74
  188. package/dist/{chunk-jecn6t54.js.map → chunk-jgwb25gc.js.map} +2 -2
  189. package/dist/{chunk-wdage1eb.js → chunk-jmfet9r4.js} +6 -6
  190. package/dist/{chunk-wdage1eb.js.map → chunk-jmfet9r4.js.map} +2 -2
  191. package/dist/{chunk-k34z5rvh.js → chunk-kfee1h52.js} +132 -48
  192. package/dist/chunk-kfee1h52.js.map +13 -0
  193. package/dist/{chunk-2ab72m2h.js → chunk-m2ca93my.js} +3 -3
  194. package/dist/{chunk-2ab72m2h.js.map → chunk-m2ca93my.js.map} +2 -2
  195. package/dist/{chunk-4jjp5k14.js → chunk-mmagke4x.js} +6 -6
  196. package/dist/{chunk-4jjp5k14.js.map → chunk-mmagke4x.js.map} +2 -2
  197. package/dist/{chunk-359jm1jw.js → chunk-mrp7k0pw.js} +20 -20
  198. package/dist/{chunk-359jm1jw.js.map → chunk-mrp7k0pw.js.map} +2 -2
  199. package/dist/{chunk-h0k55pc7.js → chunk-ms2tmn1k.js} +139 -139
  200. package/dist/{chunk-h0k55pc7.js.map → chunk-ms2tmn1k.js.map} +2 -2
  201. package/dist/{chunk-h5vqbfmd.js → chunk-nmbxcaqx.js} +117 -117
  202. package/dist/{chunk-h5vqbfmd.js.map → chunk-nmbxcaqx.js.map} +3 -3
  203. package/dist/{chunk-n2w475r0.js → chunk-nt99sxd6.js} +82 -82
  204. package/dist/{chunk-n2w475r0.js.map → chunk-nt99sxd6.js.map} +3 -3
  205. package/dist/{chunk-v1xppd0y.js → chunk-p5vcsw9c.js} +60 -60
  206. package/dist/{chunk-v1xppd0y.js.map → chunk-p5vcsw9c.js.map} +2 -2
  207. package/dist/{chunk-sbzzr4kx.js → chunk-p6a4npdx.js} +1260 -1289
  208. package/dist/chunk-p6a4npdx.js.map +58 -0
  209. package/dist/{chunk-trxxmgnf.js → chunk-pqajwytd.js} +10 -10
  210. package/dist/{chunk-trxxmgnf.js.map → chunk-pqajwytd.js.map} +3 -3
  211. package/dist/{chunk-nn0tekr1.js → chunk-pr2h4bv4.js} +33 -33
  212. package/dist/{chunk-nn0tekr1.js.map → chunk-pr2h4bv4.js.map} +2 -2
  213. package/dist/{chunk-xwnf87e1.js → chunk-q5gz3g2j.js} +64 -64
  214. package/dist/{chunk-xwnf87e1.js.map → chunk-q5gz3g2j.js.map} +2 -2
  215. package/dist/{chunk-5ntny1qx.js → chunk-qf954wje.js} +6 -6
  216. package/dist/{chunk-5ntny1qx.js.map → chunk-qf954wje.js.map} +2 -2
  217. package/dist/chunk-qma80ych.js +30 -0
  218. package/dist/chunk-qma80ych.js.map +11 -0
  219. package/dist/{chunk-mth82m8t.js → chunk-qyeptdyv.js} +171 -77
  220. package/dist/chunk-qyeptdyv.js.map +15 -0
  221. package/dist/{chunk-b49dgvsj.js → chunk-r2y23egw.js} +3 -3
  222. package/dist/{chunk-b49dgvsj.js.map → chunk-r2y23egw.js.map} +2 -2
  223. package/dist/{chunk-mwsxn98e.js → chunk-r7fj830t.js} +253 -200
  224. package/dist/chunk-r7fj830t.js.map +36 -0
  225. package/dist/{chunk-4rh2m6zg.js → chunk-rb1xx120.js} +13 -13
  226. package/dist/{chunk-4rh2m6zg.js.map → chunk-rb1xx120.js.map} +2 -2
  227. package/dist/{chunk-gzasd5b6.js → chunk-rtk71jzp.js} +22 -22
  228. package/dist/{chunk-gzasd5b6.js.map → chunk-rtk71jzp.js.map} +2 -2
  229. package/dist/chunk-s3csryxe.js +152 -0
  230. package/dist/chunk-s3csryxe.js.map +11 -0
  231. package/dist/chunk-s670k14v.js +60 -0
  232. package/dist/{chunk-407j3msh.js.map → chunk-s670k14v.js.map} +2 -2
  233. package/dist/chunk-skz0hst3.js +788 -0
  234. package/dist/chunk-skz0hst3.js.map +19 -0
  235. package/dist/{chunk-3z1qec12.js → chunk-t1f4f1ve.js} +107 -64
  236. package/dist/{chunk-3z1qec12.js.map → chunk-t1f4f1ve.js.map} +3 -3
  237. package/dist/chunk-v2vcg0w6.js +151 -0
  238. package/dist/chunk-v2vcg0w6.js.map +11 -0
  239. package/dist/{chunk-r8jrnexe.js → chunk-v4jbb3rs.js} +4 -4
  240. package/dist/{chunk-r8jrnexe.js.map → chunk-v4jbb3rs.js.map} +2 -2
  241. package/dist/{chunk-w1tvjszy.js → chunk-vsj3mdfj.js} +8 -8
  242. package/dist/{chunk-w1tvjszy.js.map → chunk-vsj3mdfj.js.map} +2 -2
  243. package/dist/{chunk-9dzba0f2.js → chunk-wjasrj67.js} +8 -8
  244. package/dist/{chunk-9dzba0f2.js.map → chunk-wjasrj67.js.map} +2 -2
  245. package/dist/{chunk-1evzqhks.js → chunk-wr8qp979.js} +6 -6
  246. package/dist/{chunk-1evzqhks.js.map → chunk-wr8qp979.js.map} +2 -2
  247. package/dist/{chunk-n6jxh8sw.js → chunk-wy0qdqfm.js} +18 -18
  248. package/dist/{chunk-n6jxh8sw.js.map → chunk-wy0qdqfm.js.map} +2 -2
  249. package/dist/{chunk-z4ccwbkz.js → chunk-x9v4cx1d.js} +1 -1
  250. package/dist/{chunk-ry24jbr1.js → chunk-yv79ncbv.js} +10 -10
  251. package/dist/{chunk-ry24jbr1.js.map → chunk-yv79ncbv.js.map} +2 -2
  252. package/dist/{chunk-yp8ee62z.js → chunk-z30bv4ga.js} +35 -35
  253. package/dist/{chunk-yp8ee62z.js.map → chunk-z30bv4ga.js.map} +2 -2
  254. package/dist/{chunk-8ydjhh27.js → chunk-z3y411fq.js} +11 -7
  255. package/dist/{chunk-8ydjhh27.js.map → chunk-z3y411fq.js.map} +3 -3
  256. package/dist/{chunk-9t8f5xfx.js → chunk-z5rnrmz1.js} +10 -10
  257. package/dist/{chunk-9t8f5xfx.js.map → chunk-z5rnrmz1.js.map} +2 -2
  258. package/dist/{chunk-96swp2wd.js → chunk-z667z3sg.js} +3 -3
  259. package/dist/{chunk-96swp2wd.js.map → chunk-z667z3sg.js.map} +2 -2
  260. package/dist/{chunk-4yqmp43v.js → chunk-z8fx5cgb.js} +12 -12
  261. package/dist/{chunk-4yqmp43v.js.map → chunk-z8fx5cgb.js.map} +2 -2
  262. package/dist/{chunk-yt8wphsx.js → chunk-zvx7h87b.js} +3 -3
  263. package/dist/{chunk-yt8wphsx.js.map → chunk-zvx7h87b.js.map} +2 -2
  264. package/dist/connectors/connections/authorizations.d.ts.map +1 -1
  265. package/dist/connectors/connections/contracts.d.ts +3 -0
  266. package/dist/connectors/connections/contracts.d.ts.map +1 -1
  267. package/dist/connectors/connections/internal.js +9 -10
  268. package/dist/connectors/connections/internal.js.map +1 -1
  269. package/dist/connectors/connections/request.d.ts +3 -1
  270. package/dist/connectors/connections/request.d.ts.map +1 -1
  271. package/dist/connectors/connections/runs.d.ts.map +1 -1
  272. package/dist/connectors/connections/tokens.d.ts.map +1 -1
  273. package/dist/connectors/connections/validation.d.ts +5 -1
  274. package/dist/connectors/connections/validation.d.ts.map +1 -1
  275. package/dist/connectors/types.d.ts +19 -4
  276. package/dist/connectors/types.d.ts.map +1 -1
  277. package/dist/datasets/write.js +8 -12
  278. package/dist/datasets/write.js.map +1 -1
  279. package/dist/edits/index.js +7 -8
  280. package/dist/edits/index.js.map +1 -1
  281. package/dist/error-reporting/internal.js +22 -24
  282. package/dist/error-reporting/internal.js.map +1 -1
  283. package/dist/errors/internal.d.ts +1 -1
  284. package/dist/errors/internal.d.ts.map +1 -1
  285. package/dist/errors/internal.js +22 -24
  286. package/dist/errors/internal.js.map +1 -1
  287. package/dist/errors/redaction.d.ts +8 -0
  288. package/dist/errors/redaction.d.ts.map +1 -0
  289. package/dist/errors/types.d.ts +4 -0
  290. package/dist/errors/types.d.ts.map +1 -1
  291. package/dist/events/execution.d.ts +1 -1
  292. package/dist/events/execution.d.ts.map +1 -1
  293. package/dist/events/index.js +60 -63
  294. package/dist/events/index.js.map +1 -1
  295. package/dist/events/scope.js +4 -5
  296. package/dist/events/scope.js.map +1 -1
  297. package/dist/events/selectors/index.js +9 -10
  298. package/dist/events/selectors/index.js.map +1 -1
  299. package/dist/events/service.d.ts +2 -2
  300. package/dist/events/service.d.ts.map +1 -1
  301. package/dist/execution/agent.d.ts +3 -3
  302. package/dist/execution/agent.d.ts.map +1 -1
  303. package/dist/execution/agent.js +71 -82
  304. package/dist/execution/agent.js.map +1 -1
  305. package/dist/execution/durable.d.ts +1 -0
  306. package/dist/execution/durable.d.ts.map +1 -1
  307. package/dist/execution/primitive.d.ts +2 -0
  308. package/dist/execution/primitive.d.ts.map +1 -1
  309. package/dist/execution/primitive.js +64 -71
  310. package/dist/execution/primitive.js.map +3 -3
  311. package/dist/execution/request.d.ts +1 -0
  312. package/dist/execution/request.d.ts.map +1 -1
  313. package/dist/execution/request.js +66 -75
  314. package/dist/execution/request.js.map +3 -3
  315. package/dist/http/index.js +10 -11
  316. package/dist/http/index.js.map +1 -1
  317. package/dist/index.d.ts +17 -13
  318. package/dist/index.d.ts.map +1 -1
  319. package/dist/index.js +457 -477
  320. package/dist/index.js.map +1 -1
  321. package/dist/lake-storage/changes.d.ts +5 -0
  322. package/dist/lake-storage/changes.d.ts.map +1 -0
  323. package/dist/lake-storage/in-memory.d.ts +2 -1
  324. package/dist/lake-storage/in-memory.d.ts.map +1 -1
  325. package/dist/lake-storage/index.d.ts +2 -1
  326. package/dist/lake-storage/index.d.ts.map +1 -1
  327. package/dist/lake-storage/index.js +40 -42
  328. package/dist/lake-storage/index.js.map +1 -1
  329. package/dist/lake-storage/types.d.ts +36 -0
  330. package/dist/lake-storage/types.d.ts.map +1 -1
  331. package/dist/logging/index.d.ts +3 -4
  332. package/dist/logging/index.d.ts.map +1 -1
  333. package/dist/logging/index.js +18 -40
  334. package/dist/logging/index.js.map +1 -1
  335. package/dist/logging/internal.d.ts +5 -0
  336. package/dist/logging/internal.d.ts.map +1 -0
  337. package/dist/logging/internal.js +43 -0
  338. package/dist/logging/internal.js.map +9 -0
  339. package/dist/materialization/index.d.ts +1 -1
  340. package/dist/materialization/index.d.ts.map +1 -1
  341. package/dist/materialization/index.js +46 -49
  342. package/dist/materialization/index.js.map +1 -1
  343. package/dist/materialization/model.d.ts +12 -1
  344. package/dist/materialization/model.d.ts.map +1 -1
  345. package/dist/materializer/index.d.ts +1 -1
  346. package/dist/materializer/index.d.ts.map +1 -1
  347. package/dist/materializer/index.js +137 -145
  348. package/dist/materializer/index.js.map +1 -1
  349. package/dist/materializer/materializer.d.ts +5 -1
  350. package/dist/materializer/materializer.d.ts.map +1 -1
  351. package/dist/materializer/projections/entry-validator.d.ts +2 -1
  352. package/dist/materializer/projections/entry-validator.d.ts.map +1 -1
  353. package/dist/materializer/projections/replace.d.ts.map +1 -1
  354. package/dist/materializer/projections/source-materialization.d.ts +4 -3
  355. package/dist/materializer/projections/source-materialization.d.ts.map +1 -1
  356. package/dist/materializer/shared/normalize.d.ts +2 -1
  357. package/dist/materializer/shared/normalize.d.ts.map +1 -1
  358. package/dist/models/errors.d.ts +4 -0
  359. package/dist/models/errors.d.ts.map +1 -1
  360. package/dist/models/execution/binding.d.ts +9 -0
  361. package/dist/models/execution/binding.d.ts.map +1 -0
  362. package/dist/models/execution/errors.d.ts +9 -0
  363. package/dist/models/execution/errors.d.ts.map +1 -0
  364. package/dist/models/execution/index.d.ts +11 -0
  365. package/dist/models/execution/index.d.ts.map +1 -0
  366. package/dist/models/execution/index.js +55 -0
  367. package/dist/models/execution/index.js.map +9 -0
  368. package/dist/models/execution/model-call-accounting.d.ts +17 -0
  369. package/dist/models/execution/model-call-accounting.d.ts.map +1 -0
  370. package/dist/models/execution/model-call-admission.d.ts +47 -0
  371. package/dist/models/execution/model-call-admission.d.ts.map +1 -0
  372. package/dist/models/execution/model-call-limits.d.ts +15 -0
  373. package/dist/models/execution/model-call-limits.d.ts.map +1 -0
  374. package/dist/models/execution/model-call-recorder.d.ts +40 -0
  375. package/dist/models/execution/model-call-recorder.d.ts.map +1 -0
  376. package/dist/models/execution/model-call-recovery.d.ts +12 -0
  377. package/dist/models/execution/model-call-recovery.d.ts.map +1 -0
  378. package/dist/models/execution/recovery-queue.d.ts +5 -0
  379. package/dist/models/execution/recovery-queue.d.ts.map +1 -0
  380. package/dist/models/execution/types.d.ts +44 -0
  381. package/dist/models/execution/types.d.ts.map +1 -0
  382. package/dist/models/execution/usage.d.ts +5 -0
  383. package/dist/models/execution/usage.d.ts.map +1 -0
  384. package/dist/models/execution.d.ts +6 -0
  385. package/dist/models/execution.d.ts.map +1 -0
  386. package/dist/models/generation-types.d.ts +40 -0
  387. package/dist/models/generation-types.d.ts.map +1 -0
  388. package/dist/models/index.d.ts +1 -0
  389. package/dist/models/index.d.ts.map +1 -1
  390. package/dist/models/index.js +42 -43
  391. package/dist/models/index.js.map +1 -1
  392. package/dist/models/language-model.d.ts +3 -0
  393. package/dist/models/language-model.d.ts.map +1 -1
  394. package/dist/models/output.d.ts +5 -0
  395. package/dist/models/output.d.ts.map +1 -0
  396. package/dist/models/resolve.d.ts +4 -0
  397. package/dist/models/resolve.d.ts.map +1 -0
  398. package/dist/objects/execution.d.ts.map +1 -1
  399. package/dist/objects/index.js +75 -87
  400. package/dist/objects/index.js.map +1 -1
  401. package/dist/objects/query/index.js +67 -76
  402. package/dist/objects/query/index.js.map +1 -1
  403. package/dist/ontology/index.d.ts +1 -2
  404. package/dist/ontology/index.d.ts.map +1 -1
  405. package/dist/ontology/index.js +62 -113
  406. package/dist/ontology/index.js.map +1 -1
  407. package/dist/ontology/internal.d.ts +7 -0
  408. package/dist/ontology/internal.d.ts.map +1 -1
  409. package/dist/ontology/internal.js +65 -116
  410. package/dist/ontology/internal.js.map +3 -4
  411. package/dist/pipelines/index.js +57 -66
  412. package/dist/pipelines/index.js.map +1 -1
  413. package/dist/pipelines/run-dispatch.d.ts.map +1 -1
  414. package/dist/projections/internal.js +56 -67
  415. package/dist/projections/internal.js.map +1 -1
  416. package/dist/projections/run-dispatch.d.ts.map +1 -1
  417. package/dist/query.d.ts +0 -1
  418. package/dist/query.d.ts.map +1 -1
  419. package/dist/query.js +11 -15
  420. package/dist/query.js.map +1 -1
  421. package/dist/queues/in-memory.d.ts +7 -3
  422. package/dist/queues/in-memory.d.ts.map +1 -1
  423. package/dist/queues/index.d.ts +2 -1
  424. package/dist/queues/index.d.ts.map +1 -1
  425. package/dist/queues/index.js +6 -7
  426. package/dist/queues/index.js.map +1 -1
  427. package/dist/queues/indexed-heap.d.ts +15 -0
  428. package/dist/queues/indexed-heap.d.ts.map +1 -0
  429. package/dist/queues/types.d.ts +3 -20
  430. package/dist/queues/types.d.ts.map +1 -1
  431. package/dist/rules/internal.js +4 -5
  432. package/dist/rules/internal.js.map +1 -1
  433. package/dist/runtime/create.d.ts +2 -1
  434. package/dist/runtime/create.d.ts.map +1 -1
  435. package/dist/runtime/host.d.ts +2 -1
  436. package/dist/runtime/host.d.ts.map +1 -1
  437. package/dist/runtime/internal.js +13 -14
  438. package/dist/runtime/internal.js.map +1 -1
  439. package/dist/runtime/ontology-mutations.d.ts +3 -1
  440. package/dist/runtime/ontology-mutations.d.ts.map +1 -1
  441. package/dist/runtime/sixb.d.ts +2 -0
  442. package/dist/runtime/sixb.d.ts.map +1 -1
  443. package/dist/sandboxes/errors.d.ts +4 -0
  444. package/dist/sandboxes/errors.d.ts.map +1 -1
  445. package/dist/sandboxes/index.d.ts +2 -2
  446. package/dist/sandboxes/index.d.ts.map +1 -1
  447. package/dist/sandboxes/index.js +14 -13
  448. package/dist/sandboxes/index.js.map +1 -1
  449. package/dist/sandboxes/sandbox.d.ts +35 -7
  450. package/dist/sandboxes/sandbox.d.ts.map +1 -1
  451. package/dist/scheduler/index.js +9 -10
  452. package/dist/scheduler/index.js.map +1 -1
  453. package/dist/schedules/index.js +31 -33
  454. package/dist/schedules/index.js.map +1 -1
  455. package/dist/shares/internal.js +46 -54
  456. package/dist/shares/internal.js.map +2 -2
  457. package/dist/storage/action-runs/failure.js +7 -9
  458. package/dist/storage/action-runs/failure.js.map +1 -1
  459. package/dist/storage/action-runs/provider.js +4 -8
  460. package/dist/storage/action-runs/provider.js.map +1 -1
  461. package/dist/storage/agents/in-memory.d.ts.map +1 -1
  462. package/dist/storage/agents/provider.js +26 -30
  463. package/dist/storage/agents/provider.js.map +1 -1
  464. package/dist/storage/agents/types.d.ts +0 -3
  465. package/dist/storage/agents/types.d.ts.map +1 -1
  466. package/dist/storage/ai-cost/attribution.d.ts +4 -0
  467. package/dist/storage/ai-cost/attribution.d.ts.map +1 -0
  468. package/dist/storage/ai-cost/groups.d.ts +3 -0
  469. package/dist/storage/ai-cost/groups.d.ts.map +1 -1
  470. package/dist/storage/ai-cost/provider.d.ts +1 -0
  471. package/dist/storage/ai-cost/provider.d.ts.map +1 -1
  472. package/dist/storage/ai-cost/provider.js +30 -143
  473. package/dist/storage/ai-cost/provider.js.map +3 -4
  474. package/dist/storage/ai-cost/types.d.ts +15 -0
  475. package/dist/storage/ai-cost/types.d.ts.map +1 -1
  476. package/dist/storage/ai-limits/enforcement.js +14 -16
  477. package/dist/storage/ai-limits/enforcement.js.map +1 -1
  478. package/dist/storage/ai-limits/provider.js +56 -57
  479. package/dist/storage/ai-limits/provider.js.map +1 -1
  480. package/dist/storage/auth/in-memory.d.ts +1 -1
  481. package/dist/storage/auth/in-memory.d.ts.map +1 -1
  482. package/dist/storage/connector-connections/in-memory.d.ts.map +1 -1
  483. package/dist/storage/connector-connections/provider/runs.d.ts.map +1 -1
  484. package/dist/storage/connector-connections/provider.js +35 -37
  485. package/dist/storage/connector-connections/provider.js.map +3 -3
  486. package/dist/storage/connector-connections/types.d.ts +3 -2
  487. package/dist/storage/connector-connections/types.d.ts.map +1 -1
  488. package/dist/storage/executions/in-memory.d.ts.map +1 -1
  489. package/dist/storage/executions/provider.d.ts +2 -1
  490. package/dist/storage/executions/provider.d.ts.map +1 -1
  491. package/dist/storage/executions/provider.js +14 -11
  492. package/dist/storage/executions/provider.js.map +3 -3
  493. package/dist/storage/executions/types.d.ts +6 -2
  494. package/dist/storage/executions/types.d.ts.map +1 -1
  495. package/dist/storage/executions/validation.d.ts +2 -0
  496. package/dist/storage/executions/validation.d.ts.map +1 -1
  497. package/dist/storage/in-memory/index.d.ts.map +1 -1
  498. package/dist/storage/index.d.ts +7 -8
  499. package/dist/storage/index.d.ts.map +1 -1
  500. package/dist/storage/index.js +221 -256
  501. package/dist/storage/index.js.map +1 -1
  502. package/dist/storage/internal.d.ts +10 -0
  503. package/dist/storage/internal.d.ts.map +1 -0
  504. package/dist/storage/internal.js +47 -0
  505. package/dist/storage/internal.js.map +9 -0
  506. package/dist/storage/ontology/in-memory/materializations-state.d.ts.map +1 -1
  507. package/dist/storage/ontology/in-memory/materializations.d.ts +1 -1
  508. package/dist/storage/ontology/in-memory/materializations.d.ts.map +1 -1
  509. package/dist/storage/ontology/in-memory/shared-state.d.ts +15 -2
  510. package/dist/storage/ontology/in-memory/shared-state.d.ts.map +1 -1
  511. package/dist/storage/ontology/in-memory/source-roots.d.ts +6 -0
  512. package/dist/storage/ontology/in-memory/source-roots.d.ts.map +1 -0
  513. package/dist/storage/ontology/in-memory/sources.d.ts.map +1 -1
  514. package/dist/storage/ontology/index.d.ts +1 -1
  515. package/dist/storage/ontology/index.d.ts.map +1 -1
  516. package/dist/storage/ontology/provider.d.ts +16 -0
  517. package/dist/storage/ontology/provider.d.ts.map +1 -1
  518. package/dist/storage/ontology/provider.js +107 -109
  519. package/dist/storage/ontology/provider.js.map +1 -1
  520. package/dist/storage/ontology/sources.d.ts +13 -4
  521. package/dist/storage/ontology/sources.d.ts.map +1 -1
  522. package/dist/storage/operation-scope.js +18 -19
  523. package/dist/storage/operation-scope.js.map +1 -1
  524. package/dist/storage/pipeline-runs/provider.js +4 -6
  525. package/dist/storage/pipeline-runs/provider.js.map +1 -1
  526. package/dist/storage/projection-runs/lifecycle.d.ts.map +1 -1
  527. package/dist/storage/projection-runs/provider.js +66 -70
  528. package/dist/storage/projection-runs/provider.js.map +1 -1
  529. package/dist/storage/projection-runs/types.d.ts +2 -0
  530. package/dist/storage/projection-runs/types.d.ts.map +1 -1
  531. package/dist/storage/share-grants/provider.js +17 -19
  532. package/dist/storage/share-grants/provider.js.map +1 -1
  533. package/dist/storage/share-sessions/provider.js +14 -15
  534. package/dist/storage/share-sessions/provider.js.map +1 -1
  535. package/dist/storage/sync-runs/provider.js +4 -6
  536. package/dist/storage/sync-runs/provider.js.map +1 -1
  537. package/dist/storage/webhook-runs/provider.js +4 -6
  538. package/dist/storage/webhook-runs/provider.js.map +1 -1
  539. package/dist/storage/workflow-runs/in-memory.d.ts.map +1 -1
  540. package/dist/storage/workflow-runs/provider.js +13 -21
  541. package/dist/storage/workflow-runs/provider.js.map +1 -1
  542. package/dist/storage/workflow-runs/types.d.ts +0 -3
  543. package/dist/storage/workflow-runs/types.d.ts.map +1 -1
  544. package/dist/syncs/index.js +56 -65
  545. package/dist/syncs/index.js.map +1 -1
  546. package/dist/syncs/run-dispatch.d.ts.map +1 -1
  547. package/dist/testing/action-execution.d.ts +4 -1
  548. package/dist/testing/action-execution.d.ts.map +1 -1
  549. package/dist/testing/agent-execution.d.ts +1 -0
  550. package/dist/testing/agent-execution.d.ts.map +1 -1
  551. package/dist/testing/agent-storage-contract.d.ts.map +1 -1
  552. package/dist/testing/ai-model-call-groups-contract.d.ts.map +1 -1
  553. package/dist/testing/broker-contract.d.ts.map +1 -1
  554. package/dist/testing/connector-connection-storage-contract.d.ts.map +1 -1
  555. package/dist/testing/execution-storage-contract.d.ts.map +1 -1
  556. package/dist/testing/execution.d.ts +1 -0
  557. package/dist/testing/execution.d.ts.map +1 -1
  558. package/dist/testing/index.d.ts +1 -0
  559. package/dist/testing/index.d.ts.map +1 -1
  560. package/dist/testing/index.js +2282 -1662
  561. package/dist/testing/index.js.map +16 -15
  562. package/dist/testing/lake-changes-contract.d.ts +6 -0
  563. package/dist/testing/lake-changes-contract.d.ts.map +1 -0
  564. package/dist/testing/materializer-storage-contract.d.ts.map +1 -1
  565. package/dist/testing/ontology-storage-contract.d.ts.map +1 -1
  566. package/dist/testing/projection-run-storage-contract.d.ts.map +1 -1
  567. package/dist/testing/workflow-execution.d.ts +1 -0
  568. package/dist/testing/workflow-execution.d.ts.map +1 -1
  569. package/dist/webhooks/connections.d.ts +6 -0
  570. package/dist/webhooks/connections.d.ts.map +1 -0
  571. package/dist/webhooks/index.d.ts +1 -1
  572. package/dist/webhooks/index.d.ts.map +1 -1
  573. package/dist/webhooks/internal.d.ts +2 -0
  574. package/dist/webhooks/internal.d.ts.map +1 -1
  575. package/dist/webhooks/internal.js +98 -61
  576. package/dist/webhooks/internal.js.map +4 -3
  577. package/dist/webhooks/registry.d.ts +1 -1
  578. package/dist/webhooks/registry.d.ts.map +1 -1
  579. package/dist/webhooks/types.d.ts +15 -4
  580. package/dist/webhooks/types.d.ts.map +1 -1
  581. package/dist/workers/index.js +11 -13
  582. package/dist/workers/index.js.map +2 -2
  583. package/dist/workflows/failure.d.ts +2 -0
  584. package/dist/workflows/failure.d.ts.map +1 -1
  585. package/dist/workflows/index.js +136 -147
  586. package/dist/workflows/index.js.map +1 -1
  587. package/dist/workflows/request.d.ts.map +1 -1
  588. package/dist/workflows/run-dispatch.d.ts +3 -2
  589. package/dist/workflows/run-dispatch.d.ts.map +1 -1
  590. package/dist/workflows/types.d.ts +2 -0
  591. package/dist/workflows/types.d.ts.map +1 -1
  592. package/package.json +48 -30
  593. package/src/actions/run-dispatch.ts +2 -6
  594. package/src/actions/types/context.ts +2 -0
  595. package/src/actions/validation.ts +2 -1
  596. package/src/agents/adapters.ts +4 -9
  597. package/src/agents/{context.ts → context/entries.ts} +4 -4
  598. package/src/agents/context/index.ts +15 -0
  599. package/src/agents/context-model.ts +1 -1
  600. package/src/agents/context-resolution.ts +1 -1
  601. package/src/agents/index.ts +4 -4
  602. package/src/agents/message.ts +1 -1
  603. package/src/agents/model-loop.ts +8 -0
  604. package/src/agents/request.ts +11 -26
  605. package/src/agents/streams/index.ts +18 -0
  606. package/src/agents/streams/internal.ts +19 -0
  607. package/src/agents/{streams.ts → streams/protocol.ts} +5 -5
  608. package/src/agents/types.ts +1 -1
  609. package/src/agents/validation.ts +3 -7
  610. package/src/auth/index.ts +0 -1
  611. package/src/bootstrap/discovery.ts +81 -24
  612. package/src/bootstrap/index.ts +8 -1
  613. package/src/broker/in-memory.ts +104 -39
  614. package/src/broker/index.ts +4 -1
  615. package/src/broker/retention.ts +28 -0
  616. package/src/broker/subscriber.ts +21 -0
  617. package/src/broker/types.ts +15 -1
  618. package/src/connectors/builders.ts +0 -6
  619. package/src/connectors/connections/authorizations.ts +11 -5
  620. package/src/connectors/connections/contracts.ts +3 -0
  621. package/src/connectors/connections/request.ts +56 -22
  622. package/src/connectors/connections/runs.ts +1 -0
  623. package/src/connectors/connections/tokens.ts +4 -0
  624. package/src/connectors/connections/validation.ts +91 -5
  625. package/src/connectors/types.ts +19 -4
  626. package/src/errors/internal.ts +90 -10
  627. package/src/errors/redaction.ts +98 -0
  628. package/src/errors/types.ts +4 -0
  629. package/src/events/execution.ts +2 -2
  630. package/src/events/service.ts +3 -3
  631. package/src/execution/agent.ts +5 -3
  632. package/src/execution/durable.ts +11 -1
  633. package/src/execution/primitive.ts +5 -1
  634. package/src/execution/request.ts +3 -0
  635. package/src/index.ts +30 -20
  636. package/src/lake-storage/changes.ts +43 -0
  637. package/src/lake-storage/in-memory.ts +73 -0
  638. package/src/lake-storage/index.ts +4 -0
  639. package/src/lake-storage/types.ts +40 -0
  640. package/src/logging/index.ts +2 -33
  641. package/src/logging/internal.ts +43 -0
  642. package/src/logging/service.ts +1 -1
  643. package/src/materialization/index.ts +2 -0
  644. package/src/materialization/model.ts +14 -1
  645. package/src/materializer/index.ts +2 -0
  646. package/src/materializer/materializer.ts +10 -0
  647. package/src/materializer/projections/entry-validator.ts +19 -1
  648. package/src/materializer/projections/replace.ts +36 -1
  649. package/src/materializer/projections/source-materialization.ts +26 -6
  650. package/src/materializer/shared/normalize.ts +1 -1
  651. package/src/models/errors.ts +12 -0
  652. package/src/models/execution/binding.ts +29 -0
  653. package/src/models/execution/errors.ts +18 -0
  654. package/src/models/execution/index.ts +26 -0
  655. package/src/models/execution/model-call-accounting.ts +211 -0
  656. package/src/models/execution/model-call-admission.ts +127 -0
  657. package/src/models/execution/model-call-limits.ts +135 -0
  658. package/src/models/execution/model-call-recorder.ts +235 -0
  659. package/src/models/execution/model-call-recovery.ts +125 -0
  660. package/src/models/execution/recovery-queue.ts +31 -0
  661. package/src/models/execution/types.ts +58 -0
  662. package/src/models/execution/usage.ts +23 -0
  663. package/src/models/execution.ts +207 -0
  664. package/src/models/generation-types.ts +50 -0
  665. package/src/models/index.ts +8 -0
  666. package/src/models/language-model.ts +3 -0
  667. package/src/models/output.ts +45 -0
  668. package/src/models/resolve.ts +27 -0
  669. package/src/objects/execution.ts +1 -1
  670. package/src/ontology/index.ts +1 -2
  671. package/src/ontology/internal.ts +35 -0
  672. package/src/pipelines/run-dispatch.ts +21 -1
  673. package/src/projections/run-dispatch.ts +31 -68
  674. package/src/query.ts +0 -1
  675. package/src/queues/in-memory.ts +105 -62
  676. package/src/queues/index.ts +4 -2
  677. package/src/queues/indexed-heap.ts +74 -0
  678. package/src/queues/types.ts +6 -25
  679. package/src/runtime/create.ts +2 -1
  680. package/src/runtime/host.ts +2 -15
  681. package/src/runtime/ontology-mutations.ts +4 -0
  682. package/src/runtime/sixb.ts +4 -0
  683. package/src/sandboxes/errors.ts +5 -0
  684. package/src/sandboxes/index.ts +3 -0
  685. package/src/sandboxes/sandbox.ts +35 -7
  686. package/src/storage/agents/in-memory.ts +0 -3
  687. package/src/storage/agents/types.ts +0 -3
  688. package/src/storage/ai-cost/analytics.ts +1 -1
  689. package/src/storage/ai-cost/attribution.ts +15 -0
  690. package/src/storage/ai-cost/groups.ts +5 -1
  691. package/src/storage/ai-cost/provider.ts +1 -0
  692. package/src/storage/ai-cost/types.ts +7 -0
  693. package/src/storage/auth/in-memory.ts +1 -1
  694. package/src/storage/connector-connections/in-memory.ts +3 -1
  695. package/src/storage/connector-connections/provider/runs.ts +3 -1
  696. package/src/storage/connector-connections/types.ts +3 -2
  697. package/src/storage/executions/in-memory.ts +4 -9
  698. package/src/storage/executions/provider.ts +4 -0
  699. package/src/storage/executions/types.ts +6 -2
  700. package/src/storage/executions/validation.ts +32 -0
  701. package/src/storage/in-memory/index.ts +16 -1
  702. package/src/storage/index.ts +4 -29
  703. package/src/storage/internal.ts +20 -0
  704. package/src/storage/ontology/in-memory/materializations-state.ts +5 -18
  705. package/src/storage/ontology/in-memory/materializations.ts +73 -92
  706. package/src/storage/ontology/in-memory/shared-state.ts +26 -1
  707. package/src/storage/ontology/in-memory/source-roots.ts +123 -0
  708. package/src/storage/ontology/in-memory/sources.ts +78 -23
  709. package/src/storage/ontology/index.ts +1 -0
  710. package/src/storage/ontology/provider.ts +70 -0
  711. package/src/storage/ontology/sources.ts +14 -3
  712. package/src/storage/projection-runs/lifecycle.ts +5 -2
  713. package/src/storage/projection-runs/types.ts +4 -3
  714. package/src/storage/workflow-runs/in-memory.ts +0 -2
  715. package/src/storage/workflow-runs/types.ts +0 -3
  716. package/src/syncs/run-dispatch.ts +19 -1
  717. package/src/testing/action-execution.ts +9 -2
  718. package/src/testing/agent-execution.ts +3 -0
  719. package/src/testing/agent-storage-contract.ts +0 -5
  720. package/src/testing/ai-model-call-groups-contract.ts +74 -2
  721. package/src/testing/broker-contract.ts +95 -0
  722. package/src/testing/connector-connection-storage-contract.ts +18 -1
  723. package/src/testing/execution-storage-contract.ts +59 -1
  724. package/src/testing/execution.ts +6 -0
  725. package/src/testing/index.ts +1 -0
  726. package/src/testing/lake-changes-contract.ts +240 -0
  727. package/src/testing/materializer-storage-contract.ts +172 -1
  728. package/src/testing/ontology-storage-contract.ts +7 -0
  729. package/src/testing/projection-run-storage-contract.ts +34 -0
  730. package/src/testing/workflow-execution.ts +4 -0
  731. package/src/webhooks/connections.ts +56 -0
  732. package/src/webhooks/index.ts +2 -0
  733. package/src/webhooks/internal.ts +2 -0
  734. package/src/webhooks/registry.ts +3 -4
  735. package/src/webhooks/types.ts +17 -4
  736. package/src/workflows/failure.ts +62 -1
  737. package/src/workflows/request.ts +0 -9
  738. package/src/workflows/run-dispatch.ts +42 -32
  739. package/src/workflows/types.ts +2 -0
  740. package/src/workflows/validation.ts +1 -1
  741. package/dist/agents/context.d.ts.map +0 -1
  742. package/dist/agents/context.js +0 -23
  743. package/dist/agents/streams.d.ts.map +0 -1
  744. package/dist/agents/streams.js +0 -55
  745. package/dist/chunk-08m3b6w8.js +0 -32
  746. package/dist/chunk-19jp6g9d.js.map +0 -11
  747. package/dist/chunk-2xns679x.js.map +0 -11
  748. package/dist/chunk-3xep5cjx.js.map +0 -15
  749. package/dist/chunk-407j3msh.js +0 -60
  750. package/dist/chunk-4qfkag59.js +0 -1568
  751. package/dist/chunk-4qfkag59.js.map +0 -20
  752. package/dist/chunk-5e3pq99w.js.map +0 -11
  753. package/dist/chunk-5gd7tpv6.js.map +0 -11
  754. package/dist/chunk-7y0f6rf1.js.map +0 -10
  755. package/dist/chunk-8m5ejdpn.js.map +0 -10
  756. package/dist/chunk-8tsf6dmc.js.map +0 -15
  757. package/dist/chunk-ajnan18g.js.map +0 -12
  758. package/dist/chunk-c15dr03f.js +0 -43
  759. package/dist/chunk-d8qkxt2v.js.map +0 -10
  760. package/dist/chunk-jq43kdvk.js +0 -50
  761. package/dist/chunk-k34z5rvh.js.map +0 -11
  762. package/dist/chunk-k522z7v6.js.map +0 -10
  763. package/dist/chunk-mth82m8t.js.map +0 -14
  764. package/dist/chunk-mwsxn98e.js.map +0 -36
  765. package/dist/chunk-p03r0h5s.js.map +0 -16
  766. package/dist/chunk-p1rzczbt.js +0 -218
  767. package/dist/chunk-rafagrwr.js.map +0 -11
  768. package/dist/chunk-rv2hkwwa.js.map +0 -14
  769. package/dist/chunk-sbzzr4kx.js.map +0 -63
  770. package/dist/chunk-tpnd31c1.js +0 -242
  771. package/dist/chunk-tpnd31c1.js.map +0 -11
  772. package/dist/chunk-w9tg6yyb.js.map +0 -12
  773. package/dist/chunk-wtf06et8.js.map +0 -14
  774. package/dist/chunk-xajtptbw.js.map +0 -40
  775. package/dist/chunk-xhy826cz.js.map +0 -10
  776. package/dist/chunk-y64skrwp.js +0 -19
  777. package/dist/chunk-zcnhxkvd.js +0 -7
  778. package/dist/logging/types.js +0 -27
  779. package/dist/logging/types.js.map +0 -9
  780. /package/dist/{chunk-zqqz8052.js → chunk-7n30ybym.js} +0 -0
  781. /package/dist/{chunk-zqqz8052.js.map → chunk-7n30ybym.js.map} +0 -0
  782. /package/dist/{chunk-4a849fr1.js.map → chunk-9tc8dxmn.js.map} +0 -0
  783. /package/dist/{chunk-j1sbhm7p.js → chunk-ey1nk510.js} +0 -0
  784. /package/dist/{chunk-j1sbhm7p.js.map → chunk-ey1nk510.js.map} +0 -0
  785. /package/dist/{chunk-z4ccwbkz.js.map → chunk-x9v4cx1d.js.map} +0 -0
@@ -1,54 +1,54 @@
1
1
  // @bun
2
2
  import {
3
- linkRefKey,
4
- linkRefSortKey,
5
- linkScopeSortKey,
6
- objectRefKey,
7
- projectionEntityKey,
8
- telemetryPointKey
9
- } from "./chunk-dbc80ad7.js";
3
+ objectRefKey2,
4
+ linkRefKey2,
5
+ projectionEntityKey2,
6
+ telemetryPointKey2,
7
+ linkRefSortKey2,
8
+ linkScopeSortKey2
9
+ } from "./chunk-c5rkjrgp.js";
10
10
  import {
11
- MaterializationConflictError,
12
- MaterializationValidationError
13
- } from "./chunk-ry24jbr1.js";
11
+ MaterializationValidationError2,
12
+ MaterializationConflictError2
13
+ } from "./chunk-yv79ncbv.js";
14
14
  import {
15
- assertJsonValue,
16
- stableJsonStringify
17
- } from "./chunk-n6jxh8sw.js";
15
+ assertJsonValue2,
16
+ stableJsonStringify2
17
+ } from "./chunk-wy0qdqfm.js";
18
18
 
19
19
  // src/storage/ontology/provider.ts
20
20
  import { createHash as createHash2, randomUUID } from "crypto";
21
21
 
22
22
  // src/storage/ontology/provider-validation.ts
23
- function assertNonblank(value, label) {
23
+ function assertNonblank2(value, label) {
24
24
  if (typeof value !== "string" || value.trim().length === 0) {
25
- throw new MaterializationValidationError(`${label} must be nonblank.`);
25
+ throw new MaterializationValidationError2(`${label} must be nonblank.`);
26
26
  }
27
27
  }
28
- function assertPositiveInteger(value, label) {
28
+ function assertPositiveInteger2(value, label) {
29
29
  if (!Number.isSafeInteger(value) || value <= 0) {
30
- throw new MaterializationValidationError(`${label} must be a positive safe integer.`);
30
+ throw new MaterializationValidationError2(`${label} must be a positive safe integer.`);
31
31
  }
32
32
  }
33
- function assertNonnegativeInteger(value, label) {
33
+ function assertNonnegativeInteger2(value, label) {
34
34
  if (!Number.isSafeInteger(value) || value < 0) {
35
- throw new MaterializationValidationError(`${label} must be a nonnegative safe integer.`);
35
+ throw new MaterializationValidationError2(`${label} must be a nonnegative safe integer.`);
36
36
  }
37
37
  }
38
- function assertTimestamp(value, label, canonical = true) {
38
+ function assertTimestamp2(value, label, canonical = true) {
39
39
  const milliseconds = Date.parse(value);
40
40
  if (!Number.isFinite(milliseconds) || canonical && new Date(milliseconds).toISOString() !== value) {
41
- throw new MaterializationValidationError(`${label} must be ${canonical ? "a canonical UTC" : "a valid"} timestamp.`);
41
+ throw new MaterializationValidationError2(`${label} must be ${canonical ? "a canonical UTC" : "a valid"} timestamp.`);
42
42
  }
43
43
  return milliseconds;
44
44
  }
45
- function invalidCorrelation(message) {
46
- throw new MaterializationValidationError(message);
45
+ function invalidCorrelation2(message) {
46
+ throw new MaterializationValidationError2(message);
47
47
  }
48
48
 
49
49
  // src/materialization/identity.ts
50
50
  import { createHash } from "crypto";
51
- var ONTOLOGY_MATERIALIZATION_EVENT_KIND_ORDER = Object.freeze([
51
+ var ONTOLOGY_MATERIALIZATION_EVENT_KIND_ORDER2 = Object.freeze([
52
52
  "object.created",
53
53
  "object.updated",
54
54
  "object.deleted",
@@ -57,21 +57,21 @@ var ONTOLOGY_MATERIALIZATION_EVENT_KIND_ORDER = Object.freeze([
57
57
  "link.deleted",
58
58
  "telemetry.appended"
59
59
  ]);
60
- function materializationEventKindOrdinal(kind) {
61
- return ONTOLOGY_MATERIALIZATION_EVENT_KIND_ORDER.indexOf(kind);
60
+ function materializationEventKindOrdinal2(kind) {
61
+ return ONTOLOGY_MATERIALIZATION_EVENT_KIND_ORDER2.indexOf(kind);
62
62
  }
63
- function sha256Canonical(value) {
64
- assertJsonValue(value, "Canonical hash input");
65
- return createHash("sha256").update(stableJsonStringify(value)).digest("hex");
63
+ function sha256Canonical2(value) {
64
+ assertJsonValue2(value, "Canonical hash input");
65
+ return createHash("sha256").update(stableJsonStringify2(value)).digest("hex");
66
66
  }
67
- function createRequestHash(normalizedCallerIntent) {
68
- return sha256Canonical(normalizedCallerIntent);
67
+ function createRequestHash2(normalizedCallerIntent) {
68
+ return sha256Canonical2(normalizedCallerIntent);
69
69
  }
70
- function createCommitId(projectId, idempotencyKey) {
71
- return sha256Canonical([projectId, idempotencyKey]);
70
+ function createCommitId2(projectId, idempotencyKey) {
71
+ return sha256Canonical2([projectId, idempotencyKey]);
72
72
  }
73
- function createEventId(projectId, commitId, ordinal) {
74
- return sha256Canonical([projectId, commitId, ordinal]);
73
+ function createEventId2(projectId, commitId, ordinal) {
74
+ return sha256Canonical2([projectId, commitId, ordinal]);
75
75
  }
76
76
 
77
77
  // src/storage/ontology/materializations.ts
@@ -98,14 +98,14 @@ function materializationApplyPhase(kind) {
98
98
  }
99
99
 
100
100
  // src/storage/ontology/provider-work.ts
101
- function assertPageRows(value) {
101
+ function assertPageRows2(value) {
102
102
  if (!Number.isSafeInteger(value) || value <= 0)
103
- throw new MaterializationValidationError("Materialization page size must be positive.");
103
+ throw new MaterializationValidationError2("Materialization page size must be positive.");
104
104
  }
105
- function materializationChunkRows(chunk) {
105
+ function materializationChunkRows2(chunk) {
106
106
  return chunk.overrides.objects.upserts.length + chunk.overrides.objects.deletes.length + chunk.overrides.links.edges.upserts.length + chunk.overrides.links.edges.deletes.length + chunk.overrides.links.slots.upserts.length + chunk.overrides.links.slots.deletes.length + chunk.effective.objectUpserts.length + chunk.effective.objectDeletes.length + chunk.effective.linkUpserts.length + chunk.effective.linkDeletes.length + chunk.timeseries.pointUpserts.length + chunk.outbox.length;
107
107
  }
108
- function materializationPlanItems(chunk) {
108
+ function materializationPlanItems2(chunk) {
109
109
  return [
110
110
  ...chunk.overrides.objects.upserts.map((value) => ({
111
111
  kind: "object-override-upsert",
@@ -138,41 +138,41 @@ function materializationPlanItems(chunk) {
138
138
  ...chunk.timeseries.pointUpserts.map((value) => ({ kind: "point-upsert", value }))
139
139
  ];
140
140
  }
141
- function assertWorkRecord(record, header) {
141
+ function assertWorkRecord2(record, header) {
142
142
  if (record.recordKey.trim().length === 0) {
143
- throw new MaterializationValidationError("Materialization work key must be nonblank.");
143
+ throw new MaterializationValidationError2("Materialization work key must be nonblank.");
144
144
  }
145
145
  if (record.kind === "plan") {
146
146
  if (!/^[0-9a-f]+$/.test(record.sortKey) || !planPhaseMatches(record)) {
147
- throw new MaterializationValidationError("Materialization plan work has an invalid order.");
147
+ throw new MaterializationValidationError2("Materialization plan work has an invalid order.");
148
148
  }
149
149
  assertPlanItemCorrelation(record.item, header.commit);
150
150
  return;
151
151
  }
152
152
  if (record.kind === "event") {
153
- if (!/^[0-9a-f]+$/.test(record.sortKey) || !Number.isSafeInteger(record.eventKindRank) || record.eventKindRank < 0 || record.eventKindRank !== materializationEventKindOrdinal(record.draft.type) || record.draft.projectId !== header.commit.projectId || record.draft.commitId !== header.commit.id || record.draft.occurredAt !== header.commit.committedAt || stableJsonStringify(record.draft.origin) !== stableJsonStringify(header.commit.origin) || stableJsonStringify(record.draft.actor ?? null) !== stableJsonStringify(header.commit.actor ?? null)) {
154
- throw new MaterializationValidationError("Materialization event work is invalid.");
153
+ if (!/^[0-9a-f]+$/.test(record.sortKey) || !Number.isSafeInteger(record.eventKindRank) || record.eventKindRank < 0 || record.eventKindRank !== materializationEventKindOrdinal2(record.draft.type) || record.draft.projectId !== header.commit.projectId || record.draft.commitId !== header.commit.id || record.draft.occurredAt !== header.commit.committedAt || stableJsonStringify2(record.draft.origin) !== stableJsonStringify2(header.commit.origin) || stableJsonStringify2(record.draft.actor ?? null) !== stableJsonStringify2(header.commit.actor ?? null)) {
154
+ throw new MaterializationValidationError2("Materialization event work is invalid.");
155
155
  }
156
156
  return;
157
157
  }
158
158
  if (record.kind === "cardinality") {
159
- if (record.scopeSortKey !== linkScopeSortKey(record.ref.source, record.ref.linkId) || record.linkSortKey !== linkRefSortKey(record.ref)) {
160
- throw new MaterializationValidationError("Materialization cardinality work has an invalid identity or order.");
159
+ if (record.scopeSortKey !== linkScopeSortKey2(record.ref.source, record.ref.linkId) || record.linkSortKey !== linkRefSortKey2(record.ref)) {
160
+ throw new MaterializationValidationError2("Materialization cardinality work has an invalid identity or order.");
161
161
  }
162
162
  return;
163
163
  }
164
164
  if (record.kind === "classification" && record.identityKey.trim().length === 0) {
165
- throw new MaterializationValidationError("Materialization classification identity is invalid.");
165
+ throw new MaterializationValidationError2("Materialization classification identity is invalid.");
166
166
  }
167
167
  }
168
- function workUniquenessKey(record) {
168
+ function workUniquenessKey2(record) {
169
169
  switch (record.kind) {
170
170
  case "classification":
171
171
  return `classification:${record.entityKind}:${record.identityKey}`;
172
172
  case "object-existence":
173
- return `object-existence:${objectRefKey(record.ref)}`;
173
+ return `object-existence:${objectRefKey2(record.ref)}`;
174
174
  case "incident-object":
175
- return `incident-object:${objectRefKey(record.ref)}`;
175
+ return `incident-object:${objectRefKey2(record.ref)}`;
176
176
  case "cardinality":
177
177
  return `cardinality:${record.view}:${record.scopeSortKey}:${record.linkSortKey}`;
178
178
  case "plan":
@@ -181,7 +181,7 @@ function workUniquenessKey(record) {
181
181
  return `event:${record.eventKindRank}:${record.sortKey}`;
182
182
  }
183
183
  }
184
- function comparePlanWork(left, right) {
184
+ function comparePlanWork2(left, right) {
185
185
  return left.applyPhase - right.applyPhase || planKindOrder(left.item.kind) - planKindOrder(right.item.kind) || left.sortKey.localeCompare(right.sortKey) || left.recordKey.localeCompare(right.recordKey);
186
186
  }
187
187
  function planKindOrder(kind) {
@@ -210,20 +210,20 @@ function planKindOrder(kind) {
210
210
  return 10;
211
211
  }
212
212
  }
213
- function compareCardinalityWork(left, right) {
213
+ function compareCardinalityWork2(left, right) {
214
214
  return cardinalityViewOrder(left.view) - cardinalityViewOrder(right.view) || left.scopeSortKey.localeCompare(right.scopeSortKey) || left.linkSortKey.localeCompare(right.linkSortKey) || left.recordKey.localeCompare(right.recordKey);
215
215
  }
216
216
  function cardinalityViewOrder(view) {
217
217
  return view === "effective" ? 0 : 1;
218
218
  }
219
- function compareEventWork(left, right) {
219
+ function compareEventWork2(left, right) {
220
220
  return left.eventKindRank - right.eventKindRank || left.sortKey.localeCompare(right.sortKey) || left.recordKey.localeCompare(right.recordKey);
221
221
  }
222
222
  function planPhaseMatches(record) {
223
223
  return record.applyPhase === materializationApplyPhase(record.item.kind);
224
224
  }
225
- function assertPlanChunkCorrelations(chunk, commit) {
226
- for (const item of materializationPlanItems(chunk))
225
+ function assertPlanChunkCorrelations2(chunk, commit) {
226
+ for (const item of materializationPlanItems2(chunk))
227
227
  assertPlanItemCorrelation(item, commit);
228
228
  for (const value of chunk.outbox)
229
229
  assertOutboxCorrelation(value, commit);
@@ -260,38 +260,38 @@ function assertPlanItemCorrelation(item, commit) {
260
260
  }
261
261
  }
262
262
  function assertPointWriteCorrelation(value, commit) {
263
- if (telemetryPointKey(value.point.series, value.point.at) !== telemetryPointKey(value.expected.series, value.expected.at)) {
264
- invalidCorrelation("Timeseries point write does not match its expected identity.");
263
+ if (telemetryPointKey2(value.point.series, value.point.at) !== telemetryPointKey2(value.expected.series, value.expected.at)) {
264
+ invalidCorrelation2("Timeseries point write does not match its expected identity.");
265
265
  }
266
- assertTimestamp(value.point.at, "Timeseries point timestamp");
266
+ assertTimestamp2(value.point.at, "Timeseries point timestamp");
267
267
  if (value.point.lastCommitId !== commit.id) {
268
- invalidCorrelation("Timeseries point last commit id does not match its session commit.");
268
+ invalidCorrelation2("Timeseries point last commit id does not match its session commit.");
269
269
  }
270
270
  }
271
271
  function assertOutboxCorrelation(value, commit) {
272
272
  const { envelope } = value;
273
- if (envelope.projectId !== commit.projectId || envelope.commitId !== commit.id || envelope.occurredAt !== commit.committedAt || value.availableAt !== commit.committedAt || value.createdAt !== commit.committedAt || stableJsonStringify(envelope.origin) !== stableJsonStringify(commit.origin) || stableJsonStringify(envelope.actor ?? null) !== stableJsonStringify(commit.actor ?? null) || !Number.isSafeInteger(envelope.commitOrdinal) || envelope.commitOrdinal < 0 || envelope.id !== createEventId(commit.projectId, commit.id, envelope.commitOrdinal)) {
274
- invalidCorrelation("Outbox event does not correlate with its materialization commit.");
273
+ if (envelope.projectId !== commit.projectId || envelope.commitId !== commit.id || envelope.occurredAt !== commit.committedAt || value.availableAt !== commit.committedAt || value.createdAt !== commit.committedAt || stableJsonStringify2(envelope.origin) !== stableJsonStringify2(commit.origin) || stableJsonStringify2(envelope.actor ?? null) !== stableJsonStringify2(commit.actor ?? null) || !Number.isSafeInteger(envelope.commitOrdinal) || envelope.commitOrdinal < 0 || envelope.id !== createEventId2(commit.projectId, commit.id, envelope.commitOrdinal)) {
274
+ invalidCorrelation2("Outbox event does not correlate with its materialization commit.");
275
275
  }
276
276
  }
277
277
  function assertCommitWriteCorrelation(lastCommitId, updatedAt, commit, label) {
278
278
  if (lastCommitId !== commit.id || updatedAt !== commit.committedAt) {
279
- invalidCorrelation(`${label} provenance does not match its session commit.`);
279
+ invalidCorrelation2(`${label} provenance does not match its session commit.`);
280
280
  }
281
281
  }
282
282
  function assertObjectRefEqual(left, right, label) {
283
- if (objectRefKey(left) !== objectRefKey(right)) {
284
- invalidCorrelation(`${label} row and expected references differ.`);
283
+ if (objectRefKey2(left) !== objectRefKey2(right)) {
284
+ invalidCorrelation2(`${label} row and expected references differ.`);
285
285
  }
286
286
  }
287
287
  function assertLinkRefEqual(left, right, label) {
288
- if (linkRefKey(left) !== linkRefKey(right)) {
289
- invalidCorrelation(`${label} row and expected references differ.`);
288
+ if (linkRefKey2(left) !== linkRefKey2(right)) {
289
+ invalidCorrelation2(`${label} row and expected references differ.`);
290
290
  }
291
291
  }
292
292
 
293
293
  // src/storage/ontology/provider-header-validation.ts
294
- function assertMaterializationHeader({ commit }) {
294
+ function assertMaterializationHeader2({ commit }) {
295
295
  assertCommitEnvelope(commit);
296
296
  switch (commit.intent.kind) {
297
297
  case "edit":
@@ -306,45 +306,45 @@ function assertMaterializationHeader({ commit }) {
306
306
  }
307
307
  }
308
308
  function assertCommitEnvelope(commit) {
309
- assertNonblank(commit.projectId, "Materialization project id");
310
- assertNonblank(commit.id, "Materialization commit id");
311
- assertNonblank(commit.idempotencyKey, "Materialization idempotency key");
312
- assertNonblank(commit.requestHash, "Materialization request hash");
313
- assertNonblank(commit.executionId, "Materialization execution id");
314
- assertNonblank(commit.ontologyRevision, "Materialization ontology revision");
315
- assertTimestamp(commit.committedAt, "Materialization commit time");
309
+ assertNonblank2(commit.projectId, "Materialization project id");
310
+ assertNonblank2(commit.id, "Materialization commit id");
311
+ assertNonblank2(commit.idempotencyKey, "Materialization idempotency key");
312
+ assertNonblank2(commit.requestHash, "Materialization request hash");
313
+ assertNonblank2(commit.executionId, "Materialization execution id");
314
+ assertNonblank2(commit.ontologyRevision, "Materialization ontology revision");
315
+ assertTimestamp2(commit.committedAt, "Materialization commit time");
316
316
  }
317
317
  function assertEditCommit(commit, intent) {
318
- assertNonnegativeInteger(intent.operationCount, "Edit commit operation count");
318
+ assertNonnegativeInteger2(intent.operationCount, "Edit commit operation count");
319
319
  switch (commit.origin.kind) {
320
320
  case "action":
321
- assertNonblank(commit.origin.actionId, "Action origin action id");
322
- assertNonblank(commit.origin.runId, "Action origin run id");
321
+ assertNonblank2(commit.origin.actionId, "Action origin action id");
322
+ assertNonblank2(commit.origin.runId, "Action origin run id");
323
323
  return;
324
324
  case "runtime":
325
- assertNonblank(commit.origin.requestId, "Runtime origin request id");
325
+ assertNonblank2(commit.origin.requestId, "Runtime origin request id");
326
326
  return;
327
327
  default:
328
- invalidCorrelation("Edit commit origin does not correlate with its intent.");
328
+ invalidCorrelation2("Edit commit origin does not correlate with its intent.");
329
329
  }
330
330
  }
331
331
  function assertProjectionCommit(commit, intent) {
332
332
  if (commit.origin.kind !== "projection") {
333
- invalidCorrelation("Projection commit origin does not correlate with its intent.");
333
+ invalidCorrelation2("Projection commit origin does not correlate with its intent.");
334
334
  }
335
335
  assertProjectionSemanticMetadata(commit);
336
- assertNonblank(commit.origin.projectionRunId, "Projection run id");
337
- assertTimestamp(intent.datasetVersion.createdAt, "Projection dataset version createdAt");
336
+ assertNonblank2(commit.origin.projectionRunId, "Projection run id");
337
+ assertTimestamp2(intent.datasetVersion.createdAt, "Projection dataset version createdAt");
338
338
  if (commit.origin.projectionId !== intent.source.projectionId) {
339
- invalidCorrelation("Projection commit origin does not match its projection.");
339
+ invalidCorrelation2("Projection commit origin does not match its projection.");
340
340
  }
341
341
  if (commit.origin.datasetId !== intent.datasetVersion.datasetId || commit.origin.datasetVersionId !== intent.datasetVersion.versionId) {
342
- invalidCorrelation("Projection commit origin does not match its dataset version.");
342
+ invalidCorrelation2("Projection commit origin does not match its dataset version.");
343
343
  }
344
344
  }
345
345
  function assertTelemetryCommit(commit, intent) {
346
346
  if (commit.origin.kind !== "telemetry") {
347
- invalidCorrelation("Telemetry commit origin does not correlate with its intent.");
347
+ invalidCorrelation2("Telemetry commit origin does not correlate with its intent.");
348
348
  }
349
349
  assertTelemetryPointCounts(intent);
350
350
  if (intent.source.kind === "runtime") {
@@ -354,64 +354,64 @@ function assertTelemetryCommit(commit, intent) {
354
354
  assertProjectionTelemetryCommit(commit, intent.source, intent.inputPointCount);
355
355
  }
356
356
  function assertTelemetryPointCounts(intent) {
357
- assertNonnegativeInteger(intent.pointCount, "Telemetry commit point count");
358
- assertNonnegativeInteger(intent.inputPointCount, "Telemetry commit input point count");
357
+ assertNonnegativeInteger2(intent.pointCount, "Telemetry commit point count");
358
+ assertNonnegativeInteger2(intent.inputPointCount, "Telemetry commit input point count");
359
359
  if (intent.inputPointCount < intent.pointCount) {
360
- invalidCorrelation("Telemetry input point count cannot be lower than its canonical point count.");
360
+ invalidCorrelation2("Telemetry input point count cannot be lower than its canonical point count.");
361
361
  }
362
362
  }
363
363
  function assertRuntimeTelemetryCommit(commit) {
364
364
  if (commit.origin.kind !== "telemetry" || commit.origin.source.kind !== "runtime") {
365
- invalidCorrelation("Runtime telemetry origin does not correlate with its intent.");
365
+ invalidCorrelation2("Runtime telemetry origin does not correlate with its intent.");
366
366
  }
367
367
  if (commit.projectionRevision !== undefined || commit.ownershipHash !== undefined) {
368
- invalidCorrelation("Runtime telemetry commit contains projection-only metadata.");
368
+ invalidCorrelation2("Runtime telemetry commit contains projection-only metadata.");
369
369
  }
370
- assertNonblank(commit.origin.source.requestId, "Runtime telemetry request id");
370
+ assertNonblank2(commit.origin.source.requestId, "Runtime telemetry request id");
371
371
  }
372
372
  function assertProjectionTelemetryCommit(commit, source, inputPointCount) {
373
373
  if (commit.origin.kind !== "telemetry" || commit.origin.source.kind !== "projection") {
374
- invalidCorrelation("Projection telemetry origin does not correlate with its intent.");
374
+ invalidCorrelation2("Projection telemetry origin does not correlate with its intent.");
375
375
  }
376
376
  const origin = commit.origin.source;
377
377
  assertProjectionSemanticMetadata(commit);
378
- assertNonblank(origin.projectionRunId, "Telemetry projection run id");
379
- assertTimestamp(source.datasetVersion.createdAt, "Telemetry dataset version createdAt");
378
+ assertNonblank2(origin.projectionRunId, "Telemetry projection run id");
379
+ assertTimestamp2(source.datasetVersion.createdAt, "Telemetry dataset version createdAt");
380
380
  assertProjectionTelemetryBatch(source, inputPointCount);
381
381
  if (origin.projectionId !== source.projection.projectionId) {
382
- invalidCorrelation("Projection telemetry origin does not match its projection.");
382
+ invalidCorrelation2("Projection telemetry origin does not match its projection.");
383
383
  }
384
384
  if (origin.datasetId !== source.datasetVersion.datasetId || origin.datasetVersionId !== source.datasetVersion.versionId) {
385
- invalidCorrelation("Projection telemetry origin does not match its dataset version.");
385
+ invalidCorrelation2("Projection telemetry origin does not match its dataset version.");
386
386
  }
387
387
  if (origin.batchOrdinal !== source.batchOrdinal) {
388
- invalidCorrelation("Projection telemetry origin does not match its batch ordinal.");
388
+ invalidCorrelation2("Projection telemetry origin does not match its batch ordinal.");
389
389
  }
390
390
  }
391
391
  function assertProjectionTelemetryBatch(source, inputPointCount) {
392
- assertNonnegativeInteger(source.batchOrdinal, "Projection telemetry batch ordinal");
393
- assertPositiveInteger(source.sourceRowCount, "Projection telemetry source row count");
394
- assertNonnegativeInteger(source.sourceRowsSkipped, "Projection telemetry skipped row count");
392
+ assertNonnegativeInteger2(source.batchOrdinal, "Projection telemetry batch ordinal");
393
+ assertPositiveInteger2(source.sourceRowCount, "Projection telemetry source row count");
394
+ assertNonnegativeInteger2(source.sourceRowsSkipped, "Projection telemetry skipped row count");
395
395
  if (source.sourceRowsSkipped > source.sourceRowCount) {
396
- invalidCorrelation("Projection telemetry skipped rows exceed its source row count.");
396
+ invalidCorrelation2("Projection telemetry skipped rows exceed its source row count.");
397
397
  }
398
398
  if (inputPointCount < source.sourceRowCount - source.sourceRowsSkipped) {
399
- invalidCorrelation("Projection telemetry input points do not account for every non-skipped source row.");
399
+ invalidCorrelation2("Projection telemetry input points do not account for every non-skipped source row.");
400
400
  }
401
401
  if (typeof source.inputExhausted !== "boolean") {
402
- invalidCorrelation("Projection telemetry input exhaustion marker is invalid.");
402
+ invalidCorrelation2("Projection telemetry input exhaustion marker is invalid.");
403
403
  }
404
404
  }
405
405
  function assertProjectionSemanticMetadata(commit) {
406
406
  if (commit.projectionRevision === undefined || commit.ownershipHash === undefined) {
407
- invalidCorrelation("Projection materialization is missing semantic identity metadata.");
407
+ invalidCorrelation2("Projection materialization is missing semantic identity metadata.");
408
408
  }
409
- assertNonblank(commit.projectionRevision, "Projection revision");
410
- assertNonblank(commit.ownershipHash, "Projection ownership hash");
409
+ assertNonblank2(commit.projectionRevision, "Projection revision");
410
+ assertNonblank2(commit.ownershipHash, "Projection ownership hash");
411
411
  }
412
412
 
413
413
  // src/storage/ontology/provider.ts
414
- function startScopeAccumulator(source, linkId) {
414
+ function startScopeAccumulator2(source, linkId) {
415
415
  const hash = createHash2("sha256");
416
416
  hash.update("[");
417
417
  return {
@@ -421,17 +421,17 @@ function startScopeAccumulator(source, linkId) {
421
421
  effectiveCount: 0
422
422
  };
423
423
  }
424
- function appendScopeSnapshot(accumulator, snapshot) {
424
+ function appendScopeSnapshot2(accumulator, snapshot) {
425
425
  if (accumulator.effectiveCount > 0)
426
426
  accumulator.hash.update(",");
427
- accumulator.hash.update(stableJsonStringify({
427
+ accumulator.hash.update(stableJsonStringify2({
428
428
  ref: snapshot.ref,
429
429
  properties: snapshot.properties ?? {},
430
430
  lastCommitId: snapshot.lastCommitId
431
431
  }));
432
432
  accumulator.effectiveCount += 1;
433
433
  }
434
- function finishScopeAccumulator(accumulator) {
434
+ function finishScopeAccumulator2(accumulator) {
435
435
  accumulator.hash.update("]");
436
436
  return {
437
437
  source: accumulator.source,
@@ -440,7 +440,7 @@ function finishScopeAccumulator(accumulator) {
440
440
  fingerprint: accumulator.hash.digest("hex")
441
441
  };
442
442
  }
443
- function linkSlotOverrideValue(value, scopeLabel) {
443
+ function linkSlotOverrideValue2(value, scopeLabel) {
444
444
  if (!isRecord(value) || typeof value.kind !== "string") {
445
445
  throw invalidLinkSlotOverride(scopeLabel);
446
446
  }
@@ -463,7 +463,7 @@ function linkSlotOverrideValue(value, scopeLabel) {
463
463
  return { kind: "set", target, properties: structuredClone(value.properties) };
464
464
  }
465
465
  function invalidLinkSlotOverride(scopeLabel) {
466
- return new MaterializationConflictError("effective-state", `Cardinality-one link slot ${scopeLabel} contains an invalid stored override.`);
466
+ return new MaterializationConflictError2("effective-state", `Cardinality-one link slot ${scopeLabel} contains an invalid stored override.`);
467
467
  }
468
468
  function isRecord(value) {
469
469
  return typeof value === "object" && value !== null && !Array.isArray(value);
@@ -481,7 +481,7 @@ function isJsonValue(value) {
481
481
  return isRecord(value) && Object.values(value).every(isJsonValue);
482
482
  }
483
483
 
484
- class ProviderMaterializationSessionState {
484
+ class ProviderMaterializationSessionState2 {
485
485
  header;
486
486
  transactionId;
487
487
  id = randomUUID();
@@ -505,12 +505,12 @@ class ProviderMaterializationSessionState {
505
505
  }
506
506
  }
507
507
 
508
- class ProviderMaterializationTransactionLifecycle {
508
+ class ProviderMaterializationTransactionLifecycle2 {
509
509
  openSessions = new Set;
510
510
  active = true;
511
511
  register(sessionToken) {
512
512
  if (!this.active) {
513
- throw new MaterializationValidationError("Cannot open a materialization session on an inactive storage transaction.");
513
+ throw new MaterializationValidationError2("Cannot open a materialization session on an inactive storage transaction.");
514
514
  }
515
515
  this.openSessions.add(sessionToken);
516
516
  }
@@ -520,39 +520,39 @@ class ProviderMaterializationTransactionLifecycle {
520
520
  assertCommittable() {
521
521
  if (this.openSessions.size === 0)
522
522
  return;
523
- throw new MaterializationValidationError(`Storage transaction has ${this.openSessions.size} unfinished materialization session${this.openSessions.size === 1 ? "" : "s"}; every session returned by begin() must be finalized.`);
523
+ throw new MaterializationValidationError2(`Storage transaction has ${this.openSessions.size} unfinished materialization session${this.openSessions.size === 1 ? "" : "s"}; every session returned by begin() must be finalized.`);
524
524
  }
525
525
  deactivate() {
526
526
  this.active = false;
527
527
  this.openSessions.clear();
528
528
  }
529
529
  }
530
- function prepareMaterializationWork(state, input) {
530
+ function prepareMaterializationWork2(state, input) {
531
531
  if (state.workSealed) {
532
- throw new MaterializationConflictError("effective-state", "Materialization work cannot be staged after draining begins.");
532
+ throw new MaterializationConflictError2("effective-state", "Materialization work cannot be staged after draining begins.");
533
533
  }
534
534
  const keys = new Set;
535
535
  const uniqueKeys = new Set;
536
536
  return input.records.map((record) => {
537
- assertWorkRecord(record, state.header);
538
- const uniqueKey = workUniquenessKey(record);
537
+ assertWorkRecord2(record, state.header);
538
+ const uniqueKey = workUniquenessKey2(record);
539
539
  if (keys.has(record.recordKey) || uniqueKeys.has(uniqueKey)) {
540
- throw duplicateMaterializationWork(record.recordKey);
540
+ throw duplicateMaterializationWork2(record.recordKey);
541
541
  }
542
542
  if (record.kind === "incident-object" && (!state.replacement || state.replacement.linkStreamStarted)) {
543
- throw new MaterializationConflictError("effective-state", "Incident replacement work must be staged before link state is streamed.");
543
+ throw new MaterializationConflictError2("effective-state", "Incident replacement work must be staged before link state is streamed.");
544
544
  }
545
545
  keys.add(record.recordKey);
546
546
  uniqueKeys.add(uniqueKey);
547
- return { record, uniqueKey, columns: materializationWorkColumns(record) };
547
+ return { record, uniqueKey, columns: materializationWorkColumns2(record) };
548
548
  });
549
549
  }
550
- function correlateMaterializationChunk(state, chunk, actualItems, expectedItems, expectedEvents) {
550
+ function correlateMaterializationChunk2(state, chunk, actualItems, expectedItems, expectedEvents) {
551
551
  if (actualItems.length > 0 && (!state.workStreams.apply.started || state.appliedPlanCount + actualItems.length > state.workStreams.apply.emittedCount)) {
552
552
  invalidMaterializationCorrelation("Materialization plan items cannot be applied before they are streamed.");
553
553
  }
554
554
  for (let index = 0;index < actualItems.length; index += 1) {
555
- if (stableJsonStringify(actualItems[index]) !== stableJsonStringify(expectedItems[index])) {
555
+ if (stableJsonStringify2(actualItems[index]) !== stableJsonStringify2(expectedItems[index])) {
556
556
  invalidMaterializationCorrelation("Materialization plan items must be applied in exact streamed order.");
557
557
  }
558
558
  }
@@ -566,7 +566,7 @@ function correlateMaterializationChunk(state, chunk, actualItems, expectedItems,
566
566
  invalidMaterializationCorrelation("Materialization outbox events must follow exact streamed order.");
567
567
  }
568
568
  const { id: _id, commitOrdinal, ...draft } = actual;
569
- if (commitOrdinal !== state.appliedOutboxCount + index || stableJsonStringify(draft) !== stableJsonStringify(expected.draft)) {
569
+ if (commitOrdinal !== state.appliedOutboxCount + index || stableJsonStringify2(draft) !== stableJsonStringify2(expected.draft)) {
570
570
  invalidMaterializationCorrelation("Materialization outbox events must follow exact streamed order.");
571
571
  }
572
572
  }
@@ -575,7 +575,7 @@ function correlateMaterializationChunk(state, chunk, actualItems, expectedItems,
575
575
  appliedOutboxCount: state.appliedOutboxCount + chunk.outbox.length
576
576
  };
577
577
  }
578
- function assertMaterializationFinalizationCorrelation(state, input) {
578
+ function assertMaterializationFinalizationCorrelation2(state, input) {
579
579
  const { commit } = state.header;
580
580
  const { result, sourceActivations } = input.finalization;
581
581
  if (result.commitId !== commit.id || result.kind !== commit.intent.kind || result.committedAt !== commit.committedAt || result.created !== true || !Number.isSafeInteger(result.eventCount) || result.eventCount < 0 || result.eventCount !== state.appliedOutboxCount) {
@@ -596,7 +596,7 @@ function assertMaterializationFinalizationCorrelation(state, input) {
596
596
  invalidMaterializationCorrelation("Telemetry result does not correlate with its point intent.");
597
597
  }
598
598
  }
599
- function assertMaterializationLaneCompletion(state, counts) {
599
+ function assertMaterializationLaneCompletion2(state, counts) {
600
600
  if (counts.apply > 0 && !state.workStreams.apply.completed) {
601
601
  invalidMaterializationCorrelation("Materialization plan work was not fully streamed.");
602
602
  }
@@ -613,9 +613,9 @@ function assertMaterializationLaneCompletion(state, counts) {
613
613
  invalidMaterializationCorrelation("Materialization event work was not fully written to the outbox.");
614
614
  }
615
615
  }
616
- function assertSourceActivationCorrelation(state, activation) {
616
+ function assertSourceActivationCorrelation2(state, activation) {
617
617
  const { commit } = state.header;
618
- if (commit.intent.kind !== "projection" || commit.origin.kind !== "projection" || activation.source.projectionId !== commit.intent.source.projectionId || activation.source.projectionId !== commit.origin.projectionId || activation.execution.projectionRunId !== commit.origin.projectionRunId || activation.protocol !== "replacement" || stableJsonStringify(activation.datasetVersion) !== stableJsonStringify(commit.intent.datasetVersion) || activation.projectionRevision !== commit.projectionRevision || activation.ownershipHash !== commit.ownershipHash || activation.ontologyRevision !== commit.ontologyRevision || activation.lastCommitId !== commit.id || activation.updatedAt !== commit.committedAt || !state.header.expected.sources.some((expected) => stableJsonStringify(expected) === stableJsonStringify(activation.expected))) {
618
+ if (commit.intent.kind !== "projection" || commit.origin.kind !== "projection" || activation.source.projectionId !== commit.intent.source.projectionId || activation.source.projectionId !== commit.origin.projectionId || activation.execution.projectionRunId !== commit.origin.projectionRunId || activation.protocol !== "replacement" || stableJsonStringify2(activation.datasetVersion) !== stableJsonStringify2(commit.intent.datasetVersion) || activation.projectionRevision !== commit.projectionRevision || activation.ownershipHash !== commit.ownershipHash || activation.ontologyRevision !== commit.ontologyRevision || activation.lastCommitId !== commit.id || activation.updatedAt !== commit.committedAt || !state.header.expected.sources.some((expected) => stableJsonStringify2(expected) === stableJsonStringify2(activation.expected))) {
619
619
  invalidMaterializationCorrelation("Source activation does not correlate with its projection commit.");
620
620
  }
621
621
  const replacement = state.replacement;
@@ -624,19 +624,19 @@ function assertSourceActivationCorrelation(state, activation) {
624
624
  }
625
625
  }
626
626
  function invalidMaterializationCorrelation(message) {
627
- throw new MaterializationValidationError(message);
627
+ throw new MaterializationValidationError2(message);
628
628
  }
629
- function uniqueSorted(values, identity, sortKey) {
629
+ function uniqueSorted2(values, identity, sortKey) {
630
630
  return [...new Map(values.map((value) => [identity(value), value])).values()].sort((left, right) => sortKey(left).localeCompare(sortKey(right)));
631
631
  }
632
- function sameNonnegativeCounts(actual, expected) {
632
+ function sameNonnegativeCounts2(actual, expected) {
633
633
  const actualCounts = actual;
634
634
  return Object.entries(expected).every(([key, value]) => typeof value === "number" && Number.isSafeInteger(actualCounts[key]) && actualCounts[key] === value && value >= 0);
635
635
  }
636
- function effectiveConflict(message) {
637
- return new MaterializationConflictError("effective-state", message);
636
+ function effectiveConflict2(message) {
637
+ return new MaterializationConflictError2("effective-state", message);
638
638
  }
639
- function materializationWorkColumns(record) {
639
+ function materializationWorkColumns2(record) {
640
640
  if (record.kind === "plan") {
641
641
  return {
642
642
  lane: "apply",
@@ -692,13 +692,13 @@ function materializationPlanKindRank(kind) {
692
692
  return 10;
693
693
  }
694
694
  }
695
- function duplicateMaterializationWork(key) {
696
- return new MaterializationConflictError("effective-state", key === undefined ? "Duplicate materialization work." : `Duplicate materialization work key '${key}'.`);
695
+ function duplicateMaterializationWork2(key) {
696
+ return new MaterializationConflictError2("effective-state", key === undefined ? "Duplicate materialization work." : `Duplicate materialization work key '${key}'.`);
697
697
  }
698
- function canonicalJson(value) {
699
- return stableJsonStringify(value);
698
+ function canonicalJson2(value) {
699
+ return stableJsonStringify2(value);
700
700
  }
701
- function originColumns(origin) {
701
+ function originColumns2(origin) {
702
702
  if (origin.kind === "action") {
703
703
  return { kind: "action", runId: origin.runId, batchOrdinal: null };
704
704
  }
@@ -714,7 +714,7 @@ function originColumns(origin) {
714
714
  }
715
715
  return { kind: origin.kind, runId: null, batchOrdinal: null };
716
716
  }
717
- function originWhere(origin) {
717
+ function originWhere2(origin) {
718
718
  if (origin.kind === "action") {
719
719
  return { kind: origin.kind, runId: origin.actionRunId, batchOrdinal: null };
720
720
  }
@@ -727,33 +727,65 @@ function originWhere(origin) {
727
727
  batchOrdinal: origin.batchOrdinal
728
728
  };
729
729
  }
730
- function objectRefFromColumns(row) {
730
+ function objectRefFromColumns2(row) {
731
731
  return { objectTypeId: row.object_type_id, primaryId: row.primary_id };
732
732
  }
733
- function linkRefFromColumns(row) {
733
+ function linkRefFromColumns2(row) {
734
734
  return {
735
735
  source: { objectTypeId: row.source_type_id, primaryId: row.source_id },
736
736
  linkId: row.link_id,
737
737
  target: { objectTypeId: row.target_type_id, primaryId: row.target_id }
738
738
  };
739
739
  }
740
- function sourceEntityKey(row) {
741
- return projectionEntityKey(row.assertion);
740
+ function sourceEntityKey2(row) {
741
+ return projectionEntityKey2(row.assertion);
742
742
  }
743
- function sourceStageRows(projectionKind, rows) {
743
+ function sourceStageRows2(projectionKind, rows) {
744
744
  return rows.map((row) => {
745
- assertSourceStagedRow(projectionKind, row);
746
- return sourceStageRow(row);
745
+ assertSourceStagedRow2(projectionKind, row);
746
+ return sourceStageRow2(row);
747
747
  });
748
748
  }
749
- function sourceStageRow(row) {
749
+ function sourceStageRow2(row) {
750
750
  return {
751
751
  row,
752
- rootKey: projectionEntityKey(row.root),
753
- entityKey: sourceEntityKey(row)
752
+ rootKey: projectionEntityKey2(row.root),
753
+ entityKey: sourceEntityKey2(row)
754
754
  };
755
755
  }
756
- function reconcileSourceStageRows(rows, existingRows) {
756
+ function sourceStageRoots2(projectionKind, input) {
757
+ for (const row of input.rows)
758
+ assertSourceStagedRow2(projectionKind, row);
759
+ const roots = new Map;
760
+ const ordinals = new Map;
761
+ for (const [items, deleted] of [
762
+ [input.rows, false],
763
+ [input.deletions ?? [], true]
764
+ ]) {
765
+ for (const row of items) {
766
+ assertSourceEntity(row.root, "Source root");
767
+ if (row.root.kind !== projectionKind || !Number.isSafeInteger(row.stagingOrdinal) || row.stagingOrdinal < 0) {
768
+ throw new MaterializationValidationError2("Source root kind or staging ordinal is invalid.");
769
+ }
770
+ const key = projectionEntityKey2(row.root);
771
+ const previous = roots.get(key);
772
+ const otherRoot = ordinals.get(row.stagingOrdinal);
773
+ if (previous && (previous.deleted !== deleted || previous.stagingOrdinal !== row.stagingOrdinal) || otherRoot !== undefined && otherRoot !== key) {
774
+ throw new MaterializationValidationError2(`Source materialization repeats root or stream ordinal ${row.stagingOrdinal} with different content.`);
775
+ }
776
+ roots.set(key, {
777
+ root: row.root,
778
+ rootKey: key,
779
+ sortKey: utf8SortKey2(key),
780
+ stagingOrdinal: row.stagingOrdinal,
781
+ deleted
782
+ });
783
+ ordinals.set(row.stagingOrdinal, key);
784
+ }
785
+ }
786
+ return [...roots.values()];
787
+ }
788
+ function reconcileSourceStageRows2(rows, existingRows) {
757
789
  const rootOrdinals = new Map(existingRows.map(({ rootKey, row }) => [rootKey, row.stagingOrdinal]));
758
790
  const ordinalRoots = new Map(existingRows.map(({ rootKey, row }) => [row.stagingOrdinal, rootKey]));
759
791
  const assertions = new Map(existingRows.map((row) => [row.entityKey, row.row]));
@@ -763,19 +795,19 @@ function reconcileSourceStageRows(rows, existingRows) {
763
795
  const { entityKey, rootKey, row } = staged;
764
796
  const rootOrdinal = rootOrdinals.get(rootKey);
765
797
  if (rootOrdinal !== undefined && rootOrdinal !== row.stagingOrdinal) {
766
- throw new MaterializationValidationError(`Source materialization repeats root ${rootKey} at a different stream ordinal.`);
798
+ throw new MaterializationValidationError2(`Source materialization repeats root ${rootKey} at a different stream ordinal.`);
767
799
  }
768
800
  const ordinalRoot = ordinalRoots.get(row.stagingOrdinal);
769
801
  if (ordinalRoot !== undefined && ordinalRoot !== rootKey) {
770
- throw new MaterializationValidationError(`Source materialization repeats stream ordinal ${row.stagingOrdinal} for another root.`);
802
+ throw new MaterializationValidationError2(`Source materialization repeats stream ordinal ${row.stagingOrdinal} for another root.`);
771
803
  }
772
804
  const existing = assertions.get(entityKey) ?? pending.get(entityKey)?.row;
773
805
  if (existing) {
774
- if (canonicalJson(existing) === canonicalJson(row)) {
806
+ if (canonicalJson2(existing) === canonicalJson2(row)) {
775
807
  unchanged += 1;
776
808
  continue;
777
809
  }
778
- throw new MaterializationValidationError(`Source materialization repeats asserted entity ${entityKey}.`);
810
+ throw new MaterializationValidationError2(`Source materialization repeats asserted entity ${entityKey}.`);
779
811
  }
780
812
  rootOrdinals.set(rootKey, row.stagingOrdinal);
781
813
  ordinalRoots.set(row.stagingOrdinal, rootKey);
@@ -783,7 +815,7 @@ function reconcileSourceStageRows(rows, existingRows) {
783
815
  }
784
816
  return { pending: [...pending.values()], unchanged };
785
817
  }
786
- function sourceMaterializationIdentity(input) {
818
+ function sourceMaterializationIdentity2(input) {
787
819
  return {
788
820
  projectionKind: input.projectionKind,
789
821
  protocol: input.protocol,
@@ -793,66 +825,73 @@ function sourceMaterializationIdentity(input) {
793
825
  ontologyRevision: input.ontologyRevision
794
826
  };
795
827
  }
796
- function assertSourceBeginInput(input) {
797
- assertSourceWriteIdentity(input);
828
+ function assertSourceBeginInput2(input) {
829
+ assertSourceWriteIdentity2(input);
798
830
  if (input.projectionKind !== "object" && input.projectionKind !== "link") {
799
- throw new MaterializationValidationError("Source projection kind must be 'object' or 'link'.");
831
+ throw new MaterializationValidationError2("Source projection kind must be 'object' or 'link'.");
800
832
  }
801
833
  if (input.protocol !== "replacement") {
802
- throw new MaterializationValidationError("Source materialization protocol must be 'replacement'.");
803
- }
804
- assertNonblank(input.projectionRevision, "Source projection revision");
805
- assertNonblank(input.ownershipHash, "Source ownership hash");
806
- assertNonblank(input.ontologyRevision, "Source ontology revision");
807
- assertNonblank(input.datasetVersion.datasetId, "Source dataset id");
808
- assertNonblank(input.datasetVersion.versionId, "Source dataset version id");
809
- assertTimestamp(input.datasetVersion.createdAt, "Source dataset version createdAt", true);
810
- assertTimestamp(input.createdAt, "Source createdAt", true);
811
- }
812
- function assertSourceWriteIdentity(input) {
813
- assertSourceProject(input);
814
- assertNonblank(input.materializationId, "Source materialization id");
815
- assertSourceExecutionIdentity(input.execution.projectionRunId, input.execution.executionToken);
816
- }
817
- function assertSourceProject(input) {
818
- assertNonblank(input.projectId, "Source project id");
819
- assertNonblank(input.source.projectionId, "Source projection id");
820
- }
821
- function assertSourceExecutionIdentity(runId, token) {
822
- assertNonblank(runId, "Source projection run id");
823
- assertNonblank(token, "Source execution token");
824
- }
825
- function assertSourceCandidateOwner(manifest, execution) {
834
+ throw new MaterializationValidationError2("Source materialization protocol must be 'replacement'.");
835
+ }
836
+ assertNonblank2(input.projectionRevision, "Source projection revision");
837
+ assertNonblank2(input.ownershipHash, "Source ownership hash");
838
+ assertNonblank2(input.ontologyRevision, "Source ontology revision");
839
+ assertNonblank2(input.datasetVersion.datasetId, "Source dataset id");
840
+ assertNonblank2(input.datasetVersion.versionId, "Source dataset version id");
841
+ assertTimestamp2(input.datasetVersion.createdAt, "Source dataset version createdAt", true);
842
+ assertTimestamp2(input.createdAt, "Source createdAt", true);
843
+ if (input.base) {
844
+ assertNonblank2(input.base.materializationId, "Source base materialization id");
845
+ assertNonblank2(input.base.lastCommitId, "Source base commit id");
846
+ if (input.base.materializationId === input.materializationId) {
847
+ throw new MaterializationValidationError2("A source candidate cannot be its own base.");
848
+ }
849
+ }
850
+ }
851
+ function assertSourceWriteIdentity2(input) {
852
+ assertSourceProject2(input);
853
+ assertNonblank2(input.materializationId, "Source materialization id");
854
+ assertSourceExecutionIdentity2(input.execution.projectionRunId, input.execution.executionToken);
855
+ }
856
+ function assertSourceProject2(input) {
857
+ assertNonblank2(input.projectId, "Source project id");
858
+ assertNonblank2(input.source.projectionId, "Source projection id");
859
+ }
860
+ function assertSourceExecutionIdentity2(runId, token) {
861
+ assertNonblank2(runId, "Source projection run id");
862
+ assertNonblank2(token, "Source execution token");
863
+ }
864
+ function assertSourceCandidateOwner2(manifest, execution) {
826
865
  if (manifest.projectionRunId !== execution.projectionRunId || manifest.executionToken !== execution.executionToken) {
827
- throw sourceConflict(`Source materialization '${manifest.materializationId}' is owned by another execution.`);
866
+ throw sourceConflict2(`Source materialization '${manifest.materializationId}' is owned by another execution.`);
828
867
  }
829
868
  }
830
- function assertSourceStagedRow(projectionKind, row) {
869
+ function assertSourceStagedRow2(projectionKind, row) {
831
870
  if (!Number.isSafeInteger(row.stagingOrdinal) || row.stagingOrdinal < 0) {
832
- throw new MaterializationValidationError("Source staging ordinal must be a nonnegative safe integer.");
871
+ throw new MaterializationValidationError2("Source staging ordinal must be a nonnegative safe integer.");
833
872
  }
834
873
  assertSourceEntity(row.root, "Source root");
835
874
  assertSourceEntity(row.assertion, "Source assertion");
836
875
  if (projectionKind === "object" && row.root.kind !== "object") {
837
- throw new MaterializationValidationError("Object projection source rows require an object root.");
876
+ throw new MaterializationValidationError2("Object projection source rows require an object root.");
838
877
  }
839
878
  if (projectionKind === "link" && (row.root.kind !== "link" || row.assertion.kind !== "link")) {
840
- throw new MaterializationValidationError("Link projection source rows require a link root and link assertion.");
879
+ throw new MaterializationValidationError2("Link projection source rows require a link root and link assertion.");
841
880
  }
842
881
  }
843
882
  function assertSourceEntity(entity, label) {
844
883
  if (entity.kind === "object") {
845
- assertNonblank(entity.ref.objectTypeId, `${label} object type id`);
846
- assertNonblank(entity.ref.primaryId, `${label} primary id`);
884
+ assertNonblank2(entity.ref.objectTypeId, `${label} object type id`);
885
+ assertNonblank2(entity.ref.primaryId, `${label} primary id`);
847
886
  return;
848
887
  }
849
- assertNonblank(entity.ref.source.objectTypeId, `${label} source object type id`);
850
- assertNonblank(entity.ref.source.primaryId, `${label} source primary id`);
851
- assertNonblank(entity.ref.linkId, `${label} link id`);
852
- assertNonblank(entity.ref.target.objectTypeId, `${label} target object type id`);
853
- assertNonblank(entity.ref.target.primaryId, `${label} target primary id`);
888
+ assertNonblank2(entity.ref.source.objectTypeId, `${label} source object type id`);
889
+ assertNonblank2(entity.ref.source.primaryId, `${label} source primary id`);
890
+ assertNonblank2(entity.ref.linkId, `${label} link id`);
891
+ assertNonblank2(entity.ref.target.objectTypeId, `${label} target object type id`);
892
+ assertNonblank2(entity.ref.target.primaryId, `${label} target primary id`);
854
893
  }
855
- function sourceEntityColumns(entity) {
894
+ function sourceEntityColumns2(entity) {
856
895
  if (entity.kind === "object") {
857
896
  return {
858
897
  objectTypeId: entity.ref.objectTypeId,
@@ -874,20 +913,20 @@ function sourceEntityColumns(entity) {
874
913
  targetPrimaryId: entity.ref.target.primaryId
875
914
  };
876
915
  }
877
- function utf8SortKey(canonicalKey) {
916
+ function utf8SortKey2(canonicalKey) {
878
917
  let key = "";
879
918
  for (const byte of new TextEncoder().encode(canonicalKey)) {
880
919
  key += byte.toString(16).padStart(2, "0");
881
920
  }
882
921
  return key;
883
922
  }
884
- function isExactStagingManifest(row, input) {
885
- return row.status === "staging" && row.executionToken === input.execution.executionToken && row.projectionRunId === input.execution.projectionRunId && row.projectionKind === input.projectionKind && row.protocol === input.protocol && row.createdAt === input.createdAt && row.datasetVersion.datasetId === input.datasetVersion.datasetId && row.datasetVersion.versionId === input.datasetVersion.versionId && row.datasetVersion.createdAt === input.datasetVersion.createdAt && row.projectionRevision === input.projectionRevision && row.ownershipHash === input.ownershipHash && row.ontologyRevision === input.ontologyRevision;
923
+ function isExactStagingManifest2(row, input) {
924
+ return row.status === "staging" && row.executionToken === input.execution.executionToken && row.projectionRunId === input.execution.projectionRunId && row.projectionKind === input.projectionKind && row.protocol === input.protocol && row.createdAt === input.createdAt && row.datasetVersion.datasetId === input.datasetVersion.datasetId && row.datasetVersion.versionId === input.datasetVersion.versionId && row.datasetVersion.createdAt === input.datasetVersion.createdAt && row.projectionRevision === input.projectionRevision && row.ownershipHash === input.ownershipHash && row.base?.materializationId === input.base?.materializationId && row.base?.lastCommitId === input.base?.lastCommitId && row.ontologyRevision === input.ontologyRevision;
886
925
  }
887
- function sourceConflict(message) {
888
- return new MaterializationConflictError("source-materialization", message);
926
+ function sourceConflict2(message) {
927
+ return new MaterializationConflictError2("source-materialization", message);
889
928
  }
890
929
 
891
- export { ONTOLOGY_MATERIALIZATION_EVENT_KIND_ORDER, materializationEventKindOrdinal, sha256Canonical, createRequestHash, createCommitId, createEventId, assertNonblank, assertPositiveInteger, assertNonnegativeInteger, assertTimestamp, invalidCorrelation, materializationApplyPhase, assertPageRows, materializationChunkRows, materializationPlanItems, assertWorkRecord, workUniquenessKey, comparePlanWork, compareCardinalityWork, compareEventWork, assertPlanChunkCorrelations, assertMaterializationHeader, startScopeAccumulator, appendScopeSnapshot, finishScopeAccumulator, linkSlotOverrideValue, ProviderMaterializationSessionState, ProviderMaterializationTransactionLifecycle, prepareMaterializationWork, correlateMaterializationChunk, assertMaterializationFinalizationCorrelation, assertMaterializationLaneCompletion, assertSourceActivationCorrelation, uniqueSorted, sameNonnegativeCounts, effectiveConflict, materializationWorkColumns, duplicateMaterializationWork, canonicalJson, originColumns, originWhere, objectRefFromColumns, linkRefFromColumns, sourceEntityKey, sourceStageRows, sourceStageRow, reconcileSourceStageRows, sourceMaterializationIdentity, assertSourceBeginInput, assertSourceWriteIdentity, assertSourceProject, assertSourceExecutionIdentity, assertSourceCandidateOwner, assertSourceStagedRow, sourceEntityColumns, utf8SortKey, isExactStagingManifest, sourceConflict };
930
+ export { ONTOLOGY_MATERIALIZATION_EVENT_KIND_ORDER2, materializationEventKindOrdinal2, sha256Canonical2, createRequestHash2, createCommitId2, createEventId2, assertNonblank2, assertPositiveInteger2, assertNonnegativeInteger2, assertTimestamp2, invalidCorrelation2, materializationApplyPhase, assertPageRows2, materializationChunkRows2, materializationPlanItems2, assertWorkRecord2, workUniquenessKey2, comparePlanWork2, compareCardinalityWork2, compareEventWork2, assertPlanChunkCorrelations2, assertMaterializationHeader2, startScopeAccumulator2, appendScopeSnapshot2, finishScopeAccumulator2, linkSlotOverrideValue2, ProviderMaterializationSessionState2, ProviderMaterializationTransactionLifecycle2, prepareMaterializationWork2, correlateMaterializationChunk2, assertMaterializationFinalizationCorrelation2, assertMaterializationLaneCompletion2, assertSourceActivationCorrelation2, uniqueSorted2, sameNonnegativeCounts2, effectiveConflict2, materializationWorkColumns2, duplicateMaterializationWork2, canonicalJson2, originColumns2, originWhere2, objectRefFromColumns2, linkRefFromColumns2, sourceEntityKey2, sourceStageRows2, sourceStageRow2, sourceStageRoots2, reconcileSourceStageRows2, sourceMaterializationIdentity2, assertSourceBeginInput2, assertSourceWriteIdentity2, assertSourceProject2, assertSourceExecutionIdentity2, assertSourceCandidateOwner2, assertSourceStagedRow2, sourceEntityColumns2, utf8SortKey2, isExactStagingManifest2, sourceConflict2 };
892
931
 
893
- //# debugId=3C98B197EE41F0FE64756E2164756E21
932
+ //# debugId=77BCC37F910FF7FD64756E2164756E21