@sixb/core 0.1.20 → 0.1.22

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 (1519) hide show
  1. package/dist/actions/commit-edits.d.ts +3 -1
  2. package/dist/actions/commit-edits.d.ts.map +1 -1
  3. package/dist/actions/execution.d.ts.map +1 -1
  4. package/dist/actions/index.js +71 -60
  5. package/dist/actions/index.js.map +1 -1
  6. package/dist/actions/read-facade.d.ts +9 -1
  7. package/dist/actions/read-facade.d.ts.map +1 -1
  8. package/dist/actions/request.d.ts +15 -1
  9. package/dist/actions/request.d.ts.map +1 -1
  10. package/dist/actions/run/context.d.ts +1 -0
  11. package/dist/actions/run/context.d.ts.map +1 -1
  12. package/dist/actions/run/execute.d.ts +2 -3
  13. package/dist/actions/run/execute.d.ts.map +1 -1
  14. package/dist/actions/run/executor.d.ts +3 -0
  15. package/dist/actions/run/executor.d.ts.map +1 -1
  16. package/dist/actions/run/normalize.d.ts +2 -1
  17. package/dist/actions/run/normalize.d.ts.map +1 -1
  18. package/dist/actions/run/signals.d.ts +1 -3
  19. package/dist/actions/run/signals.d.ts.map +1 -1
  20. package/dist/actions/run/types.d.ts +16 -1
  21. package/dist/actions/run/types.d.ts.map +1 -1
  22. package/dist/actions/run-authorization.d.ts +23 -0
  23. package/dist/actions/run-authorization.d.ts.map +1 -1
  24. package/dist/actions/types/context.d.ts +17 -1
  25. package/dist/actions/types/context.d.ts.map +1 -1
  26. package/dist/actions/validators.d.ts.map +1 -1
  27. package/dist/activity/connection.d.ts +62 -0
  28. package/dist/activity/connection.d.ts.map +1 -0
  29. package/dist/activity/device.d.ts +8 -0
  30. package/dist/activity/device.d.ts.map +1 -0
  31. package/dist/activity/execution.d.ts +48 -0
  32. package/dist/activity/execution.d.ts.map +1 -0
  33. package/dist/activity/service.d.ts +79 -0
  34. package/dist/activity/service.d.ts.map +1 -0
  35. package/dist/activity/shares.d.ts +24 -0
  36. package/dist/activity/shares.d.ts.map +1 -0
  37. package/dist/activity/timeline.d.ts +103 -0
  38. package/dist/activity/timeline.d.ts.map +1 -0
  39. package/dist/agents/accounting.d.ts +15 -0
  40. package/dist/agents/accounting.d.ts.map +1 -0
  41. package/dist/agents/adapters.d.ts.map +1 -1
  42. package/dist/agents/agent-mail.d.ts +9 -0
  43. package/dist/agents/agent-mail.d.ts.map +1 -0
  44. package/dist/agents/api-gateway.d.ts +5 -0
  45. package/dist/agents/api-gateway.d.ts.map +1 -1
  46. package/dist/agents/approval-continuation.d.ts +23 -0
  47. package/dist/agents/approval-continuation.d.ts.map +1 -0
  48. package/dist/agents/approval-executor.d.ts +56 -0
  49. package/dist/agents/approval-executor.d.ts.map +1 -0
  50. package/dist/agents/approval-outcome.d.ts +8 -0
  51. package/dist/agents/approval-outcome.d.ts.map +1 -0
  52. package/dist/agents/approvals.d.ts +210 -0
  53. package/dist/agents/approvals.d.ts.map +1 -0
  54. package/dist/agents/authority.d.ts +10 -0
  55. package/dist/agents/authority.d.ts.map +1 -1
  56. package/dist/agents/builders.d.ts.map +1 -1
  57. package/dist/agents/cancel.d.ts +23 -0
  58. package/dist/agents/cancel.d.ts.map +1 -0
  59. package/dist/agents/child-question.d.ts +18 -0
  60. package/dist/agents/child-question.d.ts.map +1 -0
  61. package/dist/agents/children.d.ts +99 -0
  62. package/dist/agents/children.d.ts.map +1 -0
  63. package/dist/agents/context/index.js +1 -1
  64. package/dist/agents/context-compaction.d.ts.map +1 -1
  65. package/dist/agents/errors.d.ts +13 -1
  66. package/dist/agents/errors.d.ts.map +1 -1
  67. package/dist/agents/execution.d.ts +180 -14
  68. package/dist/agents/execution.d.ts.map +1 -1
  69. package/dist/agents/fork.d.ts +16 -0
  70. package/dist/agents/fork.d.ts.map +1 -0
  71. package/dist/agents/ids.d.ts +7 -0
  72. package/dist/agents/ids.d.ts.map +1 -1
  73. package/dist/agents/index.d.ts +20 -8
  74. package/dist/agents/index.d.ts.map +1 -1
  75. package/dist/agents/index.js +170 -84
  76. package/dist/agents/index.js.map +1 -1
  77. package/dist/agents/memory-execution.d.ts +57 -0
  78. package/dist/agents/memory-execution.d.ts.map +1 -0
  79. package/dist/agents/memory.d.ts +49 -0
  80. package/dist/agents/memory.d.ts.map +1 -0
  81. package/dist/agents/message.d.ts +50 -1
  82. package/dist/agents/message.d.ts.map +1 -1
  83. package/dist/agents/model-loop.d.ts +19 -0
  84. package/dist/agents/model-loop.d.ts.map +1 -1
  85. package/dist/agents/model-routing.d.ts +19 -0
  86. package/dist/agents/model-routing.d.ts.map +1 -0
  87. package/dist/agents/participants.d.ts +18 -0
  88. package/dist/agents/participants.d.ts.map +1 -0
  89. package/dist/agents/reference.d.ts.map +1 -1
  90. package/dist/agents/request.d.ts +36 -2
  91. package/dist/agents/request.d.ts.map +1 -1
  92. package/dist/agents/run-scope.d.ts +51 -0
  93. package/dist/agents/run-scope.d.ts.map +1 -0
  94. package/dist/agents/skills.d.ts.map +1 -1
  95. package/dist/agents/streams/index.d.ts +3 -2
  96. package/dist/agents/streams/index.d.ts.map +1 -1
  97. package/dist/agents/streams/index.js +8 -4
  98. package/dist/agents/streams/index.js.map +1 -1
  99. package/dist/agents/streams/internal.d.ts +1 -1
  100. package/dist/agents/streams/internal.d.ts.map +1 -1
  101. package/dist/agents/streams/internal.js +6 -4
  102. package/dist/agents/streams/internal.js.map +1 -1
  103. package/dist/agents/streams/protocol.d.ts +122 -3
  104. package/dist/agents/streams/protocol.d.ts.map +1 -1
  105. package/dist/agents/subagent-runs.d.ts +12 -0
  106. package/dist/agents/subagent-runs.d.ts.map +1 -0
  107. package/dist/agents/thread-access.d.ts +53 -0
  108. package/dist/agents/thread-access.d.ts.map +1 -0
  109. package/dist/agents/tool-definition.d.ts +5 -4
  110. package/dist/agents/tool-definition.d.ts.map +1 -1
  111. package/dist/agents/types.d.ts +31 -12
  112. package/dist/agents/types.d.ts.map +1 -1
  113. package/dist/agents/validation.d.ts +1 -1
  114. package/dist/agents/validation.d.ts.map +1 -1
  115. package/dist/artifacts/access.d.ts +52 -0
  116. package/dist/artifacts/access.d.ts.map +1 -0
  117. package/dist/artifacts/address.d.ts +48 -0
  118. package/dist/artifacts/address.d.ts.map +1 -0
  119. package/dist/artifacts/canvas.d.ts +92 -0
  120. package/dist/artifacts/canvas.d.ts.map +1 -0
  121. package/dist/artifacts/csv.d.ts +27 -0
  122. package/dist/artifacts/csv.d.ts.map +1 -0
  123. package/dist/artifacts/errors.d.ts +16 -0
  124. package/dist/artifacts/errors.d.ts.map +1 -0
  125. package/dist/artifacts/execution.d.ts +138 -0
  126. package/dist/artifacts/execution.d.ts.map +1 -0
  127. package/dist/artifacts/formula/check.d.ts +24 -0
  128. package/dist/artifacts/formula/check.d.ts.map +1 -0
  129. package/dist/artifacts/formula/evaluate.d.ts +32 -0
  130. package/dist/artifacts/formula/evaluate.d.ts.map +1 -0
  131. package/dist/artifacts/formula/index.d.ts +38 -0
  132. package/dist/artifacts/formula/index.d.ts.map +1 -0
  133. package/dist/artifacts/formula/parser.d.ts +67 -0
  134. package/dist/artifacts/formula/parser.d.ts.map +1 -0
  135. package/dist/artifacts/frames/assets.d.ts +30 -0
  136. package/dist/artifacts/frames/assets.d.ts.map +1 -0
  137. package/dist/artifacts/frames/entries.d.ts +19 -0
  138. package/dist/artifacts/frames/entries.d.ts.map +1 -0
  139. package/dist/artifacts/frames/grants.d.ts +37 -0
  140. package/dist/artifacts/frames/grants.d.ts.map +1 -0
  141. package/dist/artifacts/frames/index.d.ts +12 -0
  142. package/dist/artifacts/frames/index.d.ts.map +1 -0
  143. package/dist/artifacts/frames/index.js +1285 -0
  144. package/dist/artifacts/frames/index.js.map +16 -0
  145. package/dist/artifacts/frames/kit.d.ts +71 -0
  146. package/dist/artifacts/frames/kit.d.ts.map +1 -0
  147. package/dist/artifacts/frames/probe.d.ts +45 -0
  148. package/dist/artifacts/frames/probe.d.ts.map +1 -0
  149. package/dist/artifacts/frames/protocol.d.ts +167 -0
  150. package/dist/artifacts/frames/protocol.d.ts.map +1 -0
  151. package/dist/artifacts/frames/runtime.d.ts +31 -0
  152. package/dist/artifacts/frames/runtime.d.ts.map +1 -0
  153. package/dist/artifacts/html.d.ts +6 -0
  154. package/dist/artifacts/html.d.ts.map +1 -0
  155. package/dist/artifacts/ids.d.ts +5 -0
  156. package/dist/artifacts/ids.d.ts.map +1 -0
  157. package/dist/artifacts/index.d.ts +22 -0
  158. package/dist/artifacts/index.d.ts.map +1 -0
  159. package/dist/artifacts/index.js +247 -0
  160. package/dist/artifacts/index.js.map +10 -0
  161. package/dist/artifacts/kinds.d.ts +5 -0
  162. package/dist/artifacts/kinds.d.ts.map +1 -0
  163. package/dist/artifacts/limits.d.ts +58 -0
  164. package/dist/artifacts/limits.d.ts.map +1 -0
  165. package/dist/artifacts/live-sheet.d.ts +65 -0
  166. package/dist/artifacts/live-sheet.d.ts.map +1 -0
  167. package/dist/artifacts/outline.d.ts +70 -0
  168. package/dist/artifacts/outline.d.ts.map +1 -0
  169. package/dist/artifacts/publish/files.d.ts +15 -0
  170. package/dist/artifacts/publish/files.d.ts.map +1 -0
  171. package/dist/artifacts/publish/index.d.ts +7 -0
  172. package/dist/artifacts/publish/index.d.ts.map +1 -0
  173. package/dist/artifacts/publish/index.js +76 -0
  174. package/dist/{chunk-7n30ybym.js.map → artifacts/publish/index.js.map} +1 -1
  175. package/dist/artifacts/publish/publish.d.ts +84 -0
  176. package/dist/artifacts/publish/publish.d.ts.map +1 -0
  177. package/dist/artifacts/publish/queries.d.ts +33 -0
  178. package/dist/artifacts/publish/queries.d.ts.map +1 -0
  179. package/dist/artifacts/publish/references.d.ts +30 -0
  180. package/dist/artifacts/publish/references.d.ts.map +1 -0
  181. package/dist/artifacts/publish/validate/canvas.d.ts +18 -0
  182. package/dist/artifacts/publish/validate/canvas.d.ts.map +1 -0
  183. package/dist/artifacts/publish/validate/document.d.ts +17 -0
  184. package/dist/artifacts/publish/validate/document.d.ts.map +1 -0
  185. package/dist/artifacts/publish/validate/file.d.ts +8 -0
  186. package/dist/artifacts/publish/validate/file.d.ts.map +1 -0
  187. package/dist/artifacts/publish/validate/html.d.ts +20 -0
  188. package/dist/artifacts/publish/validate/html.d.ts.map +1 -0
  189. package/dist/artifacts/publish/validate/page.d.ts +15 -0
  190. package/dist/artifacts/publish/validate/page.d.ts.map +1 -0
  191. package/dist/artifacts/publish/validate/sheet.d.ts +23 -0
  192. package/dist/artifacts/publish/validate/sheet.d.ts.map +1 -0
  193. package/dist/artifacts/publish/validate/slides.d.ts +15 -0
  194. package/dist/artifacts/publish/validate/slides.d.ts.map +1 -0
  195. package/dist/artifacts/queries.d.ts +95 -0
  196. package/dist/artifacts/queries.d.ts.map +1 -0
  197. package/dist/artifacts/references.d.ts +12 -0
  198. package/dist/artifacts/references.d.ts.map +1 -0
  199. package/dist/artifacts/resolve.d.ts +47 -0
  200. package/dist/artifacts/resolve.d.ts.map +1 -0
  201. package/dist/artifacts/run-query.d.ts +26 -0
  202. package/dist/artifacts/run-query.d.ts.map +1 -0
  203. package/dist/artifacts/serialize-query.d.ts +12 -0
  204. package/dist/artifacts/serialize-query.d.ts.map +1 -0
  205. package/dist/artifacts/sheet-rules.d.ts +26 -0
  206. package/dist/artifacts/sheet-rules.d.ts.map +1 -0
  207. package/dist/artifacts/theme.d.ts +19 -0
  208. package/dist/artifacts/theme.d.ts.map +1 -0
  209. package/dist/artifacts/tones.d.ts +8 -0
  210. package/dist/artifacts/tones.d.ts.map +1 -0
  211. package/dist/artifacts/warnings.d.ts +11 -0
  212. package/dist/artifacts/warnings.d.ts.map +1 -0
  213. package/dist/artifacts/workbook.d.ts +135 -0
  214. package/dist/artifacts/workbook.d.ts.map +1 -0
  215. package/dist/auth/index.d.ts +1 -1
  216. package/dist/auth/index.d.ts.map +1 -1
  217. package/dist/auth/index.js +16 -13
  218. package/dist/auth/index.js.map +1 -1
  219. package/dist/auth/member-events.d.ts +13 -0
  220. package/dist/auth/member-events.d.ts.map +1 -0
  221. package/dist/auth/profile.d.ts +11 -0
  222. package/dist/auth/profile.d.ts.map +1 -0
  223. package/dist/auth/runtime.d.ts +31 -3
  224. package/dist/auth/runtime.d.ts.map +1 -1
  225. package/dist/auth/strategy.d.ts +3 -1
  226. package/dist/auth/strategy.d.ts.map +1 -1
  227. package/dist/auth/strategy.js +7 -3
  228. package/dist/auth/strategy.js.map +1 -1
  229. package/dist/auth/types.d.ts +30 -1
  230. package/dist/auth/types.d.ts.map +1 -1
  231. package/dist/authorization/decision.d.ts +17 -0
  232. package/dist/authorization/decision.d.ts.map +1 -1
  233. package/dist/authorization/event-visibility.d.ts +5 -1
  234. package/dist/authorization/event-visibility.d.ts.map +1 -1
  235. package/dist/authorization/grant-kinds.d.ts +2 -2
  236. package/dist/authorization/grant-kinds.d.ts.map +1 -1
  237. package/dist/authorization/index.d.ts +2 -2
  238. package/dist/authorization/index.d.ts.map +1 -1
  239. package/dist/authorization/index.js +14 -9
  240. package/dist/authorization/index.js.map +1 -1
  241. package/dist/authorization/resolve.d.ts +19 -1
  242. package/dist/authorization/resolve.d.ts.map +1 -1
  243. package/dist/authorization/run-visibility.d.ts +8 -1
  244. package/dist/authorization/run-visibility.d.ts.map +1 -1
  245. package/dist/authorization/types.d.ts +14 -0
  246. package/dist/authorization/types.d.ts.map +1 -1
  247. package/dist/blob-storage/browser.js +1 -1
  248. package/dist/blob-storage/index.js +2 -2
  249. package/dist/blob-storage/internal.d.ts +1 -1
  250. package/dist/blob-storage/internal.d.ts.map +1 -1
  251. package/dist/blob-storage/internal.js +11 -5
  252. package/dist/blob-storage/internal.js.map +1 -1
  253. package/dist/blob-storage/media-type.d.ts +12 -0
  254. package/dist/blob-storage/media-type.d.ts.map +1 -1
  255. package/dist/bootstrap/index.js +76 -66
  256. package/dist/bootstrap/index.js.map +2 -2
  257. package/dist/{chunk-tg2cw67r.js → chunk-02bzjgnt.js} +6 -6
  258. package/dist/{chunk-tg2cw67r.js.map → chunk-02bzjgnt.js.map} +1 -1
  259. package/dist/{chunk-mfs23znk.js → chunk-07kkp2e1.js} +1 -1
  260. package/dist/{chunk-6p49a5cq.js → chunk-098anw4f.js} +21 -19
  261. package/dist/chunk-098anw4f.js.map +12 -0
  262. package/dist/{chunk-fkgc1wt8.js → chunk-0phpbbvm.js} +3 -3
  263. package/dist/{chunk-ere85b8y.js → chunk-0xmt5p5y.js} +116 -27
  264. package/dist/chunk-0xmt5p5y.js.map +14 -0
  265. package/dist/{chunk-t6f3tdnr.js → chunk-16a9dmfy.js} +33 -2
  266. package/dist/{chunk-t6f3tdnr.js.map → chunk-16a9dmfy.js.map} +5 -4
  267. package/dist/{chunk-hkc3jct7.js → chunk-18sk89cg.js} +18 -10
  268. package/dist/chunk-18sk89cg.js.map +10 -0
  269. package/dist/{chunk-way52z4h.js → chunk-1t6k1avb.js} +6 -12
  270. package/dist/{chunk-way52z4h.js.map → chunk-1t6k1avb.js.map} +3 -4
  271. package/dist/chunk-2626mh4m.js +693 -0
  272. package/dist/chunk-2626mh4m.js.map +19 -0
  273. package/dist/{chunk-qczk96d9.js → chunk-2adz0h75.js} +13 -4
  274. package/dist/chunk-2adz0h75.js.map +11 -0
  275. package/dist/{chunk-3t2hgbgd.js → chunk-2fn60nvs.js} +40 -8
  276. package/dist/chunk-2fn60nvs.js.map +15 -0
  277. package/dist/{chunk-99nd4rc1.js → chunk-2gjj5dx3.js} +5 -4
  278. package/dist/{chunk-99nd4rc1.js.map → chunk-2gjj5dx3.js.map} +3 -3
  279. package/dist/chunk-3fqxbn31.js +107 -0
  280. package/dist/chunk-3fqxbn31.js.map +11 -0
  281. package/dist/{chunk-y0c4e6ex.js → chunk-3gbefjg5.js} +1 -1
  282. package/dist/{chunk-yzwja0mj.js → chunk-45ngkxkp.js} +52 -31
  283. package/dist/chunk-45ngkxkp.js.map +13 -0
  284. package/dist/{chunk-fa02jy15.js → chunk-48jezz3j.js} +1 -1
  285. package/dist/{chunk-ren4kg2j.js → chunk-4b26qwbg.js} +13 -13
  286. package/dist/{chunk-ren4kg2j.js.map → chunk-4b26qwbg.js.map} +1 -1
  287. package/dist/{chunk-9k93ah50.js → chunk-4f3ydv7t.js} +33 -69
  288. package/dist/chunk-4f3ydv7t.js.map +10 -0
  289. package/dist/chunk-4y26vs3v.js +97 -0
  290. package/dist/chunk-4y26vs3v.js.map +10 -0
  291. package/dist/{chunk-4as3wt1c.js → chunk-4ymrcdbm.js} +7 -3
  292. package/dist/chunk-4ymrcdbm.js.map +12 -0
  293. package/dist/{chunk-hcbyfxbe.js → chunk-5grk14e5.js} +76 -2
  294. package/dist/{chunk-hcbyfxbe.js.map → chunk-5grk14e5.js.map} +4 -3
  295. package/dist/chunk-5tfev0fv.js +676 -0
  296. package/dist/chunk-5tfev0fv.js.map +15 -0
  297. package/dist/chunk-65abf64x.js +13 -0
  298. package/dist/chunk-65abf64x.js.map +10 -0
  299. package/dist/{chunk-hvsb78a1.js → chunk-65pyhyas.js} +114 -107
  300. package/dist/chunk-65pyhyas.js.map +20 -0
  301. package/dist/{chunk-1sr8ryzk.js → chunk-661ezhks.js} +303 -6
  302. package/dist/chunk-661ezhks.js.map +11 -0
  303. package/dist/{chunk-z3y5kg1x.js → chunk-6eqsgvxk.js} +3 -3
  304. package/dist/{chunk-z3y5kg1x.js.map → chunk-6eqsgvxk.js.map} +2 -2
  305. package/dist/{chunk-c85m1hyj.js → chunk-6n69k945.js} +2 -2
  306. package/dist/{chunk-xfs8x8m9.js → chunk-6p0pastb.js} +5 -5
  307. package/dist/{chunk-rrzt8jdy.js → chunk-6rrtzea3.js} +116 -110
  308. package/dist/chunk-6rrtzea3.js.map +14 -0
  309. package/dist/{chunk-t7x8dmn0.js → chunk-6y0mkhex.js} +3 -3
  310. package/dist/{chunk-es1gxsbf.js → chunk-73v685wb.js} +14 -16
  311. package/dist/chunk-73v685wb.js.map +12 -0
  312. package/dist/{chunk-6c6sn0bh.js → chunk-7gr4j2eq.js} +7930 -5973
  313. package/dist/chunk-7gr4j2eq.js.map +120 -0
  314. package/dist/{chunk-hjzdd750.js → chunk-7mc2wkre.js} +391 -91
  315. package/dist/chunk-7mc2wkre.js.map +50 -0
  316. package/dist/chunk-7z5p905k.js +1660 -0
  317. package/dist/chunk-7z5p905k.js.map +22 -0
  318. package/dist/{chunk-3zxk45er.js → chunk-8ncg20rd.js} +3 -68
  319. package/dist/{chunk-3zxk45er.js.map → chunk-8ncg20rd.js.map} +4 -5
  320. package/dist/{chunk-yxd3nnqt.js → chunk-9mab3dvg.js} +26 -2
  321. package/dist/chunk-9mab3dvg.js.map +11 -0
  322. package/dist/chunk-9wr3yajk.js +42 -0
  323. package/dist/chunk-9wr3yajk.js.map +10 -0
  324. package/dist/chunk-a3faa34j.js +74 -0
  325. package/dist/chunk-a3faa34j.js.map +10 -0
  326. package/dist/chunk-az47zep4.js +41 -0
  327. package/dist/chunk-az47zep4.js.map +10 -0
  328. package/dist/{chunk-v9xd5wzd.js → chunk-bab05bhg.js} +1 -1
  329. package/dist/{chunk-5j58wjct.js → chunk-bktev1ds.js} +14 -11
  330. package/dist/{chunk-5j58wjct.js.map → chunk-bktev1ds.js.map} +3 -3
  331. package/dist/{chunk-b38szspf.js → chunk-c0vk1djt.js} +5 -3
  332. package/dist/chunk-c0vk1djt.js.map +11 -0
  333. package/dist/chunk-c69nj7se.js +3 -0
  334. package/dist/chunk-c69nj7se.js.map +9 -0
  335. package/dist/{chunk-0yh890a4.js → chunk-c844dkwd.js} +35 -7
  336. package/dist/{chunk-0yh890a4.js.map → chunk-c844dkwd.js.map} +3 -3
  337. package/dist/{chunk-d09tj99x.js → chunk-cdk3egjj.js} +24 -5
  338. package/dist/chunk-cdk3egjj.js.map +12 -0
  339. package/dist/chunk-cswhawa2.js +113 -0
  340. package/dist/chunk-cswhawa2.js.map +10 -0
  341. package/dist/{chunk-gc4ntf7d.js → chunk-cwdzcv37.js} +1 -1
  342. package/dist/chunk-d2m879s4.js +288 -0
  343. package/dist/chunk-d2m879s4.js.map +12 -0
  344. package/dist/chunk-d7vyc7k6.js +10 -0
  345. package/dist/chunk-d7vyc7k6.js.map +10 -0
  346. package/dist/{chunk-vyf9kfqf.js → chunk-dp0cdtj2.js} +2 -2
  347. package/dist/{chunk-6x0pqh32.js → chunk-e5wf5vz0.js} +3 -1
  348. package/dist/chunk-e5wf5vz0.js.map +10 -0
  349. package/dist/{chunk-bx9q3cwv.js → chunk-efmm01gj.js} +108 -1045
  350. package/dist/chunk-efmm01gj.js.map +18 -0
  351. package/dist/{chunk-tw03bsmb.js → chunk-eptrvnby.js} +224 -3
  352. package/dist/chunk-eptrvnby.js.map +12 -0
  353. package/dist/{chunk-n33z5bjw.js → chunk-ezne9wc9.js} +1762 -502
  354. package/dist/chunk-ezne9wc9.js.map +71 -0
  355. package/dist/chunk-fe8zwt8b.js +688 -0
  356. package/dist/chunk-fe8zwt8b.js.map +19 -0
  357. package/dist/chunk-ff5xkv0p.js +211 -0
  358. package/dist/chunk-ff5xkv0p.js.map +10 -0
  359. package/dist/{chunk-br3k6qbf.js → chunk-fm62y49k.js} +1 -1
  360. package/dist/{chunk-nq6gpjt7.js → chunk-fntqb7qy.js} +30 -4
  361. package/dist/{chunk-nq6gpjt7.js.map → chunk-fntqb7qy.js.map} +5 -5
  362. package/dist/{chunk-1zq2p6g0.js → chunk-fp2kq35z.js} +26 -10
  363. package/dist/{chunk-1zq2p6g0.js.map → chunk-fp2kq35z.js.map} +5 -5
  364. package/dist/chunk-g5bvzyyr.js +32 -0
  365. package/dist/chunk-g5bvzyyr.js.map +10 -0
  366. package/dist/{chunk-9ybhtmg4.js → chunk-g663fahq.js} +2 -2
  367. package/dist/{chunk-k6q3n2sc.js → chunk-gvj5cd3b.js} +29 -13
  368. package/dist/chunk-gvj5cd3b.js.map +12 -0
  369. package/dist/{chunk-yevzdx4y.js → chunk-h33shhq6.js} +10 -12
  370. package/dist/{chunk-yevzdx4y.js.map → chunk-h33shhq6.js.map} +3 -4
  371. package/dist/{chunk-vpq4shxz.js → chunk-h3pbv7n8.js} +1771 -36
  372. package/dist/chunk-h3pbv7n8.js.map +48 -0
  373. package/dist/chunk-hke9aeen.js +9 -0
  374. package/dist/chunk-hke9aeen.js.map +10 -0
  375. package/dist/chunk-hn2r7z41.js.map +1 -1
  376. package/dist/{chunk-pbcbn83d.js → chunk-hqsp2sx4.js} +54 -8
  377. package/dist/chunk-hqsp2sx4.js.map +14 -0
  378. package/dist/{chunk-9w055r5b.js → chunk-hwarjrgf.js} +1 -1
  379. package/dist/{chunk-9dmt152s.js → chunk-hyesv9dv.js} +2 -2
  380. package/dist/chunk-hz5d43gn.js +45 -0
  381. package/dist/chunk-hz5d43gn.js.map +10 -0
  382. package/dist/{chunk-91mg3nj9.js → chunk-j936th07.js} +86 -41
  383. package/dist/chunk-j936th07.js.map +12 -0
  384. package/dist/chunk-jcfw4h7m.js +9 -0
  385. package/dist/chunk-jcfw4h7m.js.map +10 -0
  386. package/dist/chunk-kcqpk9w1.js +75 -0
  387. package/dist/chunk-kcqpk9w1.js.map +10 -0
  388. package/dist/{chunk-x6m907x7.js → chunk-m2nevja0.js} +6 -7
  389. package/dist/{chunk-x6m907x7.js.map → chunk-m2nevja0.js.map} +3 -3
  390. package/dist/{chunk-x9v4cx1d.js → chunk-m36fw8ft.js} +1 -1
  391. package/dist/{chunk-a40ad1ft.js → chunk-mbsbxarb.js} +1 -1
  392. package/dist/chunk-mzx71snp.js +129 -0
  393. package/dist/chunk-mzx71snp.js.map +10 -0
  394. package/dist/{chunk-6aawea28.js → chunk-n8q5j6y5.js} +1 -1
  395. package/dist/{chunk-dk8tkk5f.js → chunk-n9zpx9c6.js} +4 -4
  396. package/dist/{chunk-7t429e3f.js → chunk-npcr0228.js} +1 -1
  397. package/dist/chunk-nydf3dbe.js +663 -0
  398. package/dist/chunk-nydf3dbe.js.map +13 -0
  399. package/dist/chunk-pdt5cw8z.js +233 -0
  400. package/dist/chunk-pdt5cw8z.js.map +11 -0
  401. package/dist/{chunk-rj69qcrd.js → chunk-pgrf64hp.js} +55 -7
  402. package/dist/chunk-pgrf64hp.js.map +12 -0
  403. package/dist/{chunk-z4m0yz8c.js → chunk-q4pmvkg0.js} +1 -1
  404. package/dist/chunk-qhqgp4jf.js +1418 -0
  405. package/dist/chunk-qhqgp4jf.js.map +22 -0
  406. package/dist/chunk-qx00vjrj.js +144 -0
  407. package/dist/chunk-qx00vjrj.js.map +13 -0
  408. package/dist/{chunk-5e43w60z.js → chunk-r6szek0x.js} +184 -7
  409. package/dist/chunk-r6szek0x.js.map +10 -0
  410. package/dist/{chunk-v4jbb3rs.js → chunk-rap5w0x0.js} +156 -2
  411. package/dist/chunk-rap5w0x0.js.map +10 -0
  412. package/dist/{chunk-pfp1txq2.js → chunk-sgx82nnt.js} +5 -31
  413. package/dist/{chunk-pfp1txq2.js.map → chunk-sgx82nnt.js.map} +3 -4
  414. package/dist/{chunk-bkpke1sg.js → chunk-t5608tkq.js} +3 -1
  415. package/dist/{chunk-bkpke1sg.js.map → chunk-t5608tkq.js.map} +3 -3
  416. package/dist/{chunk-29yx306f.js → chunk-tdxfsg1c.js} +507 -265
  417. package/dist/chunk-tdxfsg1c.js.map +23 -0
  418. package/dist/chunk-vabga7fk.js +176 -0
  419. package/dist/chunk-vabga7fk.js.map +12 -0
  420. package/dist/{chunk-gsjm1wms.js → chunk-vhbw5sqm.js} +33 -3
  421. package/dist/chunk-vhbw5sqm.js.map +10 -0
  422. package/dist/{chunk-tpn40322.js → chunk-vpgwq5nf.js} +104 -17
  423. package/dist/chunk-vpgwq5nf.js.map +21 -0
  424. package/dist/{chunk-0rbyz4qy.js → chunk-vyt322b6.js} +586 -171
  425. package/dist/{chunk-0rbyz4qy.js.map → chunk-vyt322b6.js.map} +12 -9
  426. package/dist/chunk-waqk73p1.js +2380 -0
  427. package/dist/chunk-waqk73p1.js.map +23 -0
  428. package/dist/{chunk-jhm3zsa7.js → chunk-wkv3h3q7.js} +64 -2
  429. package/dist/{chunk-jhm3zsa7.js.map → chunk-wkv3h3q7.js.map} +3 -3
  430. package/dist/chunk-wsc1brye.js +27 -0
  431. package/dist/chunk-wsc1brye.js.map +10 -0
  432. package/dist/chunk-x0v3jd47.js +124 -0
  433. package/dist/chunk-x0v3jd47.js.map +10 -0
  434. package/dist/{chunk-96yw3pwd.js → chunk-y7dbmaqh.js} +28 -2
  435. package/dist/chunk-y7dbmaqh.js.map +10 -0
  436. package/dist/{chunk-d0bqz29d.js → chunk-yc9ners4.js} +124 -19
  437. package/dist/{chunk-d0bqz29d.js.map → chunk-yc9ners4.js.map} +8 -8
  438. package/dist/{chunk-8mx7qw3y.js → chunk-zbc929zg.js} +29 -5
  439. package/dist/chunk-zbc929zg.js.map +13 -0
  440. package/dist/chunk-zrvhsq7f.js +37 -0
  441. package/dist/chunk-zrvhsq7f.js.map +10 -0
  442. package/dist/datasets/builders.d.ts +15 -2
  443. package/dist/datasets/builders.d.ts.map +1 -1
  444. package/dist/datasets/column-index.d.ts +7 -0
  445. package/dist/datasets/column-index.d.ts.map +1 -0
  446. package/dist/datasets/execution.d.ts +3 -2
  447. package/dist/datasets/execution.d.ts.map +1 -1
  448. package/dist/datasets/write.js +8 -8
  449. package/dist/error-reporting/internal.js +4 -4
  450. package/dist/errors/catalog.d.ts +26 -0
  451. package/dist/errors/catalog.d.ts.map +1 -1
  452. package/dist/errors/internal.d.ts +1 -0
  453. package/dist/errors/internal.d.ts.map +1 -1
  454. package/dist/errors/internal.js +7 -4
  455. package/dist/errors/internal.js.map +1 -1
  456. package/dist/events/definitions.d.ts +7 -0
  457. package/dist/events/definitions.d.ts.map +1 -1
  458. package/dist/events/execution.d.ts +12 -2
  459. package/dist/events/execution.d.ts.map +1 -1
  460. package/dist/events/index.d.ts +2 -3
  461. package/dist/events/index.d.ts.map +1 -1
  462. package/dist/events/index.js +9 -11
  463. package/dist/events/index.js.map +1 -1
  464. package/dist/events/scope.d.ts.map +1 -1
  465. package/dist/events/scope.js +1 -1
  466. package/dist/events/selectors/builder.d.ts +12 -1
  467. package/dist/events/selectors/builder.d.ts.map +1 -1
  468. package/dist/events/selectors/index.d.ts +2 -2
  469. package/dist/events/selectors/index.d.ts.map +1 -1
  470. package/dist/events/selectors/index.js +2 -2
  471. package/dist/events/selectors/types.d.ts +19 -3
  472. package/dist/events/selectors/types.d.ts.map +1 -1
  473. package/dist/events/service.d.ts +17 -2
  474. package/dist/events/service.d.ts.map +1 -1
  475. package/dist/events/types/index.d.ts +3 -1
  476. package/dist/events/types/index.d.ts.map +1 -1
  477. package/dist/events/types/users.d.ts +63 -0
  478. package/dist/events/types/users.d.ts.map +1 -0
  479. package/dist/events/view-conditions.d.ts +34 -0
  480. package/dist/events/view-conditions.d.ts.map +1 -0
  481. package/dist/execution/agent.d.ts +15 -0
  482. package/dist/execution/agent.d.ts.map +1 -1
  483. package/dist/execution/agent.js +72 -59
  484. package/dist/execution/agent.js.map +1 -1
  485. package/dist/execution/authorization.d.ts.map +1 -1
  486. package/dist/execution/authorized-object-reader.d.ts +102 -12
  487. package/dist/execution/authorized-object-reader.d.ts.map +1 -1
  488. package/dist/execution/lineage.d.ts +7 -0
  489. package/dist/execution/lineage.d.ts.map +1 -0
  490. package/dist/execution/object-reader-clearance.d.ts +41 -0
  491. package/dist/execution/object-reader-clearance.d.ts.map +1 -0
  492. package/dist/execution/object-reader-ontology.d.ts +12 -0
  493. package/dist/execution/object-reader-ontology.d.ts.map +1 -0
  494. package/dist/execution/object-reader-security.d.ts +66 -0
  495. package/dist/execution/object-reader-security.d.ts.map +1 -0
  496. package/dist/execution/object-reader-users.d.ts +20 -0
  497. package/dist/execution/object-reader-users.d.ts.map +1 -0
  498. package/dist/execution/preparation.d.ts +23 -0
  499. package/dist/execution/preparation.d.ts.map +1 -0
  500. package/dist/execution/primitive.js +70 -59
  501. package/dist/execution/primitive.js.map +1 -1
  502. package/dist/execution/request.d.ts +2 -1
  503. package/dist/execution/request.d.ts.map +1 -1
  504. package/dist/execution/request.js +72 -57
  505. package/dist/execution/request.js.map +3 -3
  506. package/dist/execution/unique-lookup.d.ts +14 -0
  507. package/dist/execution/unique-lookup.d.ts.map +1 -0
  508. package/dist/execution/visible-objects.d.ts +12 -0
  509. package/dist/execution/visible-objects.d.ts.map +1 -0
  510. package/dist/http/api-routes.d.ts +17 -0
  511. package/dist/http/api-routes.d.ts.map +1 -1
  512. package/dist/http/index.js +1 -1
  513. package/dist/index.d.ts +49 -16
  514. package/dist/index.d.ts.map +1 -1
  515. package/dist/index.js +168 -142
  516. package/dist/index.js.map +1 -1
  517. package/dist/lake-storage/in-memory.d.ts +1 -0
  518. package/dist/lake-storage/in-memory.d.ts.map +1 -1
  519. package/dist/lake-storage/index.d.ts +6 -3
  520. package/dist/lake-storage/index.d.ts.map +1 -1
  521. package/dist/lake-storage/index.js +21 -13
  522. package/dist/lake-storage/index.js.map +1 -1
  523. package/dist/lake-storage/lineage.d.ts +94 -0
  524. package/dist/lake-storage/lineage.d.ts.map +1 -0
  525. package/dist/lake-storage/sql-transforms.d.ts +45 -0
  526. package/dist/lake-storage/sql-transforms.d.ts.map +1 -1
  527. package/dist/lake-storage/types.d.ts +55 -1
  528. package/dist/lake-storage/types.d.ts.map +1 -1
  529. package/dist/lake-storage/version-inputs.d.ts +14 -3
  530. package/dist/lake-storage/version-inputs.d.ts.map +1 -1
  531. package/dist/maintenance/ontology-maintenance.d.ts.map +1 -1
  532. package/dist/materialization/errors.d.ts +25 -0
  533. package/dist/materialization/errors.d.ts.map +1 -1
  534. package/dist/materialization/event-envelopes.d.ts +5 -0
  535. package/dist/materialization/event-envelopes.d.ts.map +1 -1
  536. package/dist/materialization/index.d.ts +1 -1
  537. package/dist/materialization/index.d.ts.map +1 -1
  538. package/dist/materialization/index.js +14 -8
  539. package/dist/materialization/index.js.map +1 -1
  540. package/dist/materialization/model.d.ts +20 -2
  541. package/dist/materialization/model.d.ts.map +1 -1
  542. package/dist/materializer/edits/commit.d.ts.map +1 -1
  543. package/dist/materializer/edits/load-state.d.ts +5 -1
  544. package/dist/materializer/edits/load-state.d.ts.map +1 -1
  545. package/dist/materializer/edits/plan.d.ts.map +1 -1
  546. package/dist/materializer/edits/unique-values.d.ts +47 -0
  547. package/dist/materializer/edits/unique-values.d.ts.map +1 -0
  548. package/dist/materializer/edits/working-state.d.ts +6 -1
  549. package/dist/materializer/edits/working-state.d.ts.map +1 -1
  550. package/dist/materializer/execution/work-records.d.ts +7 -1
  551. package/dist/materializer/execution/work-records.d.ts.map +1 -1
  552. package/dist/materializer/index.js +51 -46
  553. package/dist/materializer/index.js.map +1 -1
  554. package/dist/materializer/projections/replacement-plan.d.ts.map +1 -1
  555. package/dist/materializer/projections/source-materialization.d.ts +1 -0
  556. package/dist/materializer/projections/source-materialization.d.ts.map +1 -1
  557. package/dist/materializer/shared/normalize.d.ts.map +1 -1
  558. package/dist/materializer/shared/projection-run.d.ts +0 -1
  559. package/dist/materializer/shared/projection-run.d.ts.map +1 -1
  560. package/dist/materializer/telemetry/plan.d.ts.map +1 -1
  561. package/dist/models/audio/catalog.d.ts +13 -1
  562. package/dist/models/audio/catalog.d.ts.map +1 -1
  563. package/dist/models/audio/errors.d.ts +6 -1
  564. package/dist/models/audio/errors.d.ts.map +1 -1
  565. package/dist/models/audio/runtime.d.ts.map +1 -1
  566. package/dist/models/audio/speech.d.ts +8 -0
  567. package/dist/models/audio/speech.d.ts.map +1 -0
  568. package/dist/models/audio/types.d.ts +93 -0
  569. package/dist/models/audio/types.d.ts.map +1 -1
  570. package/dist/models/calls.d.ts +27 -0
  571. package/dist/models/calls.d.ts.map +1 -0
  572. package/dist/models/catalog-index.d.ts +7 -4
  573. package/dist/models/catalog-index.d.ts.map +1 -1
  574. package/dist/models/catalog.d.ts +55 -3
  575. package/dist/models/catalog.d.ts.map +1 -1
  576. package/dist/models/decision/runtime.d.ts +6 -1
  577. package/dist/models/decision/runtime.d.ts.map +1 -1
  578. package/dist/models/decision/validation.d.ts +4 -1
  579. package/dist/models/decision/validation.d.ts.map +1 -1
  580. package/dist/models/definitions.d.ts +23 -1
  581. package/dist/models/definitions.d.ts.map +1 -1
  582. package/dist/models/events.d.ts +12 -1
  583. package/dist/models/events.d.ts.map +1 -1
  584. package/dist/models/execution/binding.d.ts +3 -1
  585. package/dist/models/execution/binding.d.ts.map +1 -1
  586. package/dist/models/execution/index.d.ts +1 -0
  587. package/dist/models/execution/index.d.ts.map +1 -1
  588. package/dist/models/execution/index.js +50 -39
  589. package/dist/models/execution/index.js.map +1 -1
  590. package/dist/models/execution/model-call-accounting.d.ts.map +1 -1
  591. package/dist/models/execution/model-call-recorder.d.ts +3 -0
  592. package/dist/models/execution/model-call-recorder.d.ts.map +1 -1
  593. package/dist/models/execution/usage.d.ts.map +1 -1
  594. package/dist/models/execution.d.ts +4 -2
  595. package/dist/models/execution.d.ts.map +1 -1
  596. package/dist/models/generation-types.d.ts +8 -1
  597. package/dist/models/generation-types.d.ts.map +1 -1
  598. package/dist/models/image/catalog.d.ts +13 -0
  599. package/dist/models/image/catalog.d.ts.map +1 -0
  600. package/dist/models/image/errors.d.ts +8 -0
  601. package/dist/models/image/errors.d.ts.map +1 -0
  602. package/dist/models/image/runtime.d.ts +8 -0
  603. package/dist/models/image/runtime.d.ts.map +1 -0
  604. package/dist/models/image/types.d.ts +103 -0
  605. package/dist/models/image/types.d.ts.map +1 -0
  606. package/dist/models/index.d.ts +12 -8
  607. package/dist/models/index.d.ts.map +1 -1
  608. package/dist/models/index.js +17 -7
  609. package/dist/models/index.js.map +1 -1
  610. package/dist/models/input-file.d.ts +9 -0
  611. package/dist/models/input-file.d.ts.map +1 -0
  612. package/dist/models/language-model.d.ts +13 -0
  613. package/dist/models/language-model.d.ts.map +1 -1
  614. package/dist/models/pricing.d.ts +25 -10
  615. package/dist/models/pricing.d.ts.map +1 -1
  616. package/dist/models/rate-card.d.ts +44 -6
  617. package/dist/models/rate-card.d.ts.map +1 -1
  618. package/dist/objects/clearance-redaction.d.ts +27 -0
  619. package/dist/objects/clearance-redaction.d.ts.map +1 -0
  620. package/dist/objects/conditional-writes.d.ts +37 -0
  621. package/dist/objects/conditional-writes.d.ts.map +1 -0
  622. package/dist/objects/execution.d.ts +2 -0
  623. package/dist/objects/execution.d.ts.map +1 -1
  624. package/dist/objects/index.d.ts +1 -0
  625. package/dist/objects/index.d.ts.map +1 -1
  626. package/dist/objects/index.js +77 -60
  627. package/dist/objects/index.js.map +1 -1
  628. package/dist/objects/link/authorization.d.ts +11 -5
  629. package/dist/objects/link/authorization.d.ts.map +1 -1
  630. package/dist/objects/link/endpoints.d.ts +21 -2
  631. package/dist/objects/link/endpoints.d.ts.map +1 -1
  632. package/dist/objects/link/remove.d.ts.map +1 -1
  633. package/dist/objects/link/upsert-batch.d.ts.map +1 -1
  634. package/dist/objects/link/upsert.d.ts.map +1 -1
  635. package/dist/objects/materializer-adapter.d.ts +13 -4
  636. package/dist/objects/materializer-adapter.d.ts.map +1 -1
  637. package/dist/objects/object/delete.d.ts +3 -0
  638. package/dist/objects/object/delete.d.ts.map +1 -1
  639. package/dist/objects/object/upsert-batch.d.ts.map +1 -1
  640. package/dist/objects/object/upsert.d.ts.map +1 -1
  641. package/dist/objects/property-clearance.d.ts +47 -24
  642. package/dist/objects/property-clearance.d.ts.map +1 -1
  643. package/dist/objects/query/clearance-admission.d.ts +10 -0
  644. package/dist/objects/query/clearance-admission.d.ts.map +1 -0
  645. package/dist/objects/query/current-user.d.ts +17 -0
  646. package/dist/objects/query/current-user.d.ts.map +1 -0
  647. package/dist/objects/query/executor.d.ts +14 -0
  648. package/dist/objects/query/executor.d.ts.map +1 -1
  649. package/dist/objects/query/index.d.ts +2 -2
  650. package/dist/objects/query/index.d.ts.map +1 -1
  651. package/dist/objects/query/index.js +55 -49
  652. package/dist/objects/query/index.js.map +1 -1
  653. package/dist/objects/query/ir.d.ts +19 -1
  654. package/dist/objects/query/ir.d.ts.map +1 -1
  655. package/dist/objects/query/link-query-clearance.d.ts +21 -0
  656. package/dist/objects/query/link-query-clearance.d.ts.map +1 -0
  657. package/dist/objects/query/matches-predicate.d.ts +9 -0
  658. package/dist/objects/query/matches-predicate.d.ts.map +1 -0
  659. package/dist/objects/query/normalize.d.ts.map +1 -1
  660. package/dist/objects/query/user-expansions.d.ts +27 -0
  661. package/dist/objects/query/user-expansions.d.ts.map +1 -0
  662. package/dist/objects/query/validate.d.ts.map +1 -1
  663. package/dist/objects/runtime-batch.d.ts +3 -1
  664. package/dist/objects/runtime-batch.d.ts.map +1 -1
  665. package/dist/objects/sdk/object-set.d.ts.map +1 -1
  666. package/dist/objects/sdk/query-executor.d.ts +6 -0
  667. package/dist/objects/sdk/query-executor.d.ts.map +1 -1
  668. package/dist/objects/serialize.d.ts +39 -0
  669. package/dist/objects/serialize.d.ts.map +1 -0
  670. package/dist/objects/unique-violation.d.ts +22 -0
  671. package/dist/objects/unique-violation.d.ts.map +1 -0
  672. package/dist/ontology/builders.d.ts +3 -1
  673. package/dist/ontology/builders.d.ts.map +1 -1
  674. package/dist/ontology/docs-markdown.d.ts +1 -1
  675. package/dist/ontology/docs-markdown.d.ts.map +1 -1
  676. package/dist/ontology/index.d.ts +2 -2
  677. package/dist/ontology/index.d.ts.map +1 -1
  678. package/dist/ontology/index.js +13 -9
  679. package/dist/ontology/index.js.map +1 -1
  680. package/dist/ontology/internal.js +9 -7
  681. package/dist/ontology/internal.js.map +3 -3
  682. package/dist/ontology/json-schema.d.ts.map +1 -1
  683. package/dist/ontology/primitives.d.ts +3 -0
  684. package/dist/ontology/primitives.d.ts.map +1 -1
  685. package/dist/ontology/registry.d.ts +6 -0
  686. package/dist/ontology/registry.d.ts.map +1 -1
  687. package/dist/ontology/types.d.ts +9 -0
  688. package/dist/ontology/types.d.ts.map +1 -1
  689. package/dist/ontology/unique-values.d.ts +26 -0
  690. package/dist/ontology/unique-values.d.ts.map +1 -0
  691. package/dist/ontology/user-ref.d.ts +23 -0
  692. package/dist/ontology/user-ref.d.ts.map +1 -1
  693. package/dist/ontology/validation/properties.d.ts.map +1 -1
  694. package/dist/ontology/validation/schema.d.ts.map +1 -1
  695. package/dist/pipelines/index.d.ts +2 -0
  696. package/dist/pipelines/index.d.ts.map +1 -1
  697. package/dist/pipelines/index.js +61 -46
  698. package/dist/pipelines/index.js.map +1 -1
  699. package/dist/pipelines/lineage.d.ts +17 -0
  700. package/dist/pipelines/lineage.d.ts.map +1 -0
  701. package/dist/projections/internal.d.ts +2 -2
  702. package/dist/projections/internal.js +42 -38
  703. package/dist/projections/internal.js.map +1 -1
  704. package/dist/projections/registry.d.ts +4 -0
  705. package/dist/projections/registry.d.ts.map +1 -1
  706. package/dist/projections/revision.d.ts +15 -0
  707. package/dist/projections/revision.d.ts.map +1 -1
  708. package/dist/projections/run-dispatch.d.ts.map +1 -1
  709. package/dist/projections/types.d.ts +2 -0
  710. package/dist/projections/types.d.ts.map +1 -1
  711. package/dist/query.d.ts +4 -2
  712. package/dist/query.d.ts.map +1 -1
  713. package/dist/query.js +2 -2
  714. package/dist/rules/execution.d.ts.map +1 -1
  715. package/dist/runtime/ai-cost.d.ts +2 -0
  716. package/dist/runtime/ai-cost.d.ts.map +1 -1
  717. package/dist/runtime/ai-usage.d.ts +7 -0
  718. package/dist/runtime/ai-usage.d.ts.map +1 -1
  719. package/dist/runtime/create.d.ts +3 -0
  720. package/dist/runtime/create.d.ts.map +1 -1
  721. package/dist/runtime/host.d.ts +6 -0
  722. package/dist/runtime/host.d.ts.map +1 -1
  723. package/dist/runtime/index.d.ts +1 -1
  724. package/dist/runtime/index.d.ts.map +1 -1
  725. package/dist/runtime/internal.d.ts +2 -0
  726. package/dist/runtime/internal.d.ts.map +1 -1
  727. package/dist/runtime/internal.js +58 -50
  728. package/dist/runtime/internal.js.map +1 -1
  729. package/dist/runtime/ontology-mutations.d.ts +2 -0
  730. package/dist/runtime/ontology-mutations.d.ts.map +1 -1
  731. package/dist/runtime/resolve-definitions.d.ts.map +1 -1
  732. package/dist/runtime/sixb.d.ts +10 -0
  733. package/dist/runtime/sixb.d.ts.map +1 -1
  734. package/dist/runtime/types.d.ts +66 -8
  735. package/dist/runtime/types.d.ts.map +1 -1
  736. package/dist/sandboxes/auth.d.ts +16 -0
  737. package/dist/sandboxes/auth.d.ts.map +1 -1
  738. package/dist/sandboxes/config.d.ts.map +1 -1
  739. package/dist/sandboxes/configuration.d.ts +26 -0
  740. package/dist/sandboxes/configuration.d.ts.map +1 -1
  741. package/dist/sandboxes/index.d.ts +1 -1
  742. package/dist/sandboxes/index.d.ts.map +1 -1
  743. package/dist/sandboxes/index.js +15 -13
  744. package/dist/sandboxes/index.js.map +1 -1
  745. package/dist/sandboxes/sandbox.d.ts +28 -5
  746. package/dist/sandboxes/sandbox.d.ts.map +1 -1
  747. package/dist/schedules/builders.d.ts.map +1 -1
  748. package/dist/schedules/index.js +3 -3
  749. package/dist/schedules/runtime.d.ts.map +1 -1
  750. package/dist/schedules/validation.d.ts.map +1 -1
  751. package/dist/security/applied-markings-contribution.d.ts +58 -0
  752. package/dist/security/applied-markings-contribution.d.ts.map +1 -0
  753. package/dist/security/applied-markings-host.d.ts +10 -0
  754. package/dist/security/applied-markings-host.d.ts.map +1 -0
  755. package/dist/security/applied-markings-snapshot.d.ts +67 -0
  756. package/dist/security/applied-markings-snapshot.d.ts.map +1 -0
  757. package/dist/security/applied-markings.d.ts +73 -0
  758. package/dist/security/applied-markings.d.ts.map +1 -0
  759. package/dist/security/dataset-version-markings.d.ts +47 -0
  760. package/dist/security/dataset-version-markings.d.ts.map +1 -0
  761. package/dist/security/grants.d.ts +13 -4
  762. package/dist/security/grants.d.ts.map +1 -1
  763. package/dist/security/index.d.ts +2 -1
  764. package/dist/security/index.d.ts.map +1 -1
  765. package/dist/security/internal.d.ts +15 -0
  766. package/dist/security/internal.d.ts.map +1 -0
  767. package/dist/security/internal.js +135 -0
  768. package/dist/security/internal.js.map +10 -0
  769. package/dist/security/marking-propagation.d.ts +62 -0
  770. package/dist/security/marking-propagation.d.ts.map +1 -0
  771. package/dist/security/marking-sets.d.ts +14 -0
  772. package/dist/security/marking-sets.d.ts.map +1 -0
  773. package/dist/security/markings.d.ts +6 -3
  774. package/dist/security/markings.d.ts.map +1 -1
  775. package/dist/security/pipeline-markings.d.ts +20 -0
  776. package/dist/security/pipeline-markings.d.ts.map +1 -0
  777. package/dist/security/project.d.ts +7 -0
  778. package/dist/security/project.d.ts.map +1 -0
  779. package/dist/security/projection-markings.d.ts +71 -0
  780. package/dist/security/projection-markings.d.ts.map +1 -0
  781. package/dist/security/public.js +2 -2
  782. package/dist/security/redactions.d.ts +4 -1
  783. package/dist/security/redactions.d.ts.map +1 -1
  784. package/dist/security/registry.d.ts +6 -0
  785. package/dist/security/registry.d.ts.map +1 -1
  786. package/dist/security/types.d.ts +64 -6
  787. package/dist/security/types.d.ts.map +1 -1
  788. package/dist/security/validation.d.ts.map +1 -1
  789. package/dist/security/view-conditions.d.ts +37 -0
  790. package/dist/security/view-conditions.d.ts.map +1 -0
  791. package/dist/shares/execution.d.ts.map +1 -1
  792. package/dist/shares/internal.js +40 -36
  793. package/dist/shares/internal.js.map +2 -2
  794. package/dist/storage/action-runs/failure.js +3 -3
  795. package/dist/storage/action-runs/in-memory.d.ts +4 -0
  796. package/dist/storage/action-runs/in-memory.d.ts.map +1 -1
  797. package/dist/storage/action-runs/provider.js +1 -1
  798. package/dist/storage/action-runs/types.d.ts +9 -1
  799. package/dist/storage/action-runs/types.d.ts.map +1 -1
  800. package/dist/storage/activity/in-memory.d.ts +55 -0
  801. package/dist/storage/activity/in-memory.d.ts.map +1 -0
  802. package/dist/storage/activity/index.d.ts +3 -0
  803. package/dist/storage/activity/index.d.ts.map +1 -0
  804. package/dist/storage/activity/policy.d.ts +96 -0
  805. package/dist/storage/activity/policy.d.ts.map +1 -0
  806. package/dist/storage/activity/types.d.ts +191 -0
  807. package/dist/storage/activity/types.d.ts.map +1 -0
  808. package/dist/storage/agents/errors.d.ts +3 -1
  809. package/dist/storage/agents/errors.d.ts.map +1 -1
  810. package/dist/storage/agents/in-memory.d.ts +124 -3
  811. package/dist/storage/agents/in-memory.d.ts.map +1 -1
  812. package/dist/storage/agents/index.d.ts +2 -2
  813. package/dist/storage/agents/index.d.ts.map +1 -1
  814. package/dist/storage/agents/provider.d.ts +154 -4
  815. package/dist/storage/agents/provider.d.ts.map +1 -1
  816. package/dist/storage/agents/provider.js +60 -8
  817. package/dist/storage/agents/provider.js.map +1 -1
  818. package/dist/storage/agents/types.d.ts +573 -20
  819. package/dist/storage/agents/types.d.ts.map +1 -1
  820. package/dist/storage/ai-cost/analytics.d.ts +10 -1
  821. package/dist/storage/ai-cost/analytics.d.ts.map +1 -1
  822. package/dist/storage/ai-cost/groups.d.ts +9 -0
  823. package/dist/storage/ai-cost/groups.d.ts.map +1 -1
  824. package/dist/storage/ai-cost/index.d.ts +1 -1
  825. package/dist/storage/ai-cost/index.d.ts.map +1 -1
  826. package/dist/storage/ai-cost/provider.d.ts +2 -1
  827. package/dist/storage/ai-cost/provider.d.ts.map +1 -1
  828. package/dist/storage/ai-cost/provider.js +11 -5
  829. package/dist/storage/ai-cost/provider.js.map +1 -1
  830. package/dist/storage/ai-cost/types.d.ts +14 -2
  831. package/dist/storage/ai-cost/types.d.ts.map +1 -1
  832. package/dist/storage/ai-cost/validation.d.ts.map +1 -1
  833. package/dist/storage/ai-limits/enforcement.js +6 -5
  834. package/dist/storage/ai-limits/enforcement.js.map +1 -1
  835. package/dist/storage/ai-limits/provider.d.ts +1 -1
  836. package/dist/storage/ai-limits/provider.d.ts.map +1 -1
  837. package/dist/storage/ai-limits/provider.js +3 -2
  838. package/dist/storage/ai-limits/provider.js.map +1 -1
  839. package/dist/storage/ai-usage/in-memory.d.ts +5 -1
  840. package/dist/storage/ai-usage/in-memory.d.ts.map +1 -1
  841. package/dist/storage/ai-usage/index.d.ts +2 -2
  842. package/dist/storage/ai-usage/index.d.ts.map +1 -1
  843. package/dist/storage/ai-usage/record.d.ts +5 -1
  844. package/dist/storage/ai-usage/record.d.ts.map +1 -1
  845. package/dist/storage/ai-usage/types.d.ts +33 -0
  846. package/dist/storage/ai-usage/types.d.ts.map +1 -1
  847. package/dist/storage/ai-usage/usage.d.ts +2 -0
  848. package/dist/storage/ai-usage/usage.d.ts.map +1 -1
  849. package/dist/storage/artifacts/errors.d.ts +18 -0
  850. package/dist/storage/artifacts/errors.d.ts.map +1 -0
  851. package/dist/storage/artifacts/in-memory.d.ts +55 -0
  852. package/dist/storage/artifacts/in-memory.d.ts.map +1 -0
  853. package/dist/storage/artifacts/index.d.ts +5 -0
  854. package/dist/storage/artifacts/index.d.ts.map +1 -0
  855. package/dist/storage/artifacts/record.d.ts +34 -0
  856. package/dist/storage/artifacts/record.d.ts.map +1 -0
  857. package/dist/storage/artifacts/types.d.ts +263 -0
  858. package/dist/storage/artifacts/types.d.ts.map +1 -0
  859. package/dist/storage/auth/in-memory/auth-storage.d.ts +3 -2
  860. package/dist/storage/auth/in-memory/auth-storage.d.ts.map +1 -1
  861. package/dist/storage/auth/in-memory/sessions.d.ts +2 -1
  862. package/dist/storage/auth/in-memory/sessions.d.ts.map +1 -1
  863. package/dist/storage/auth/in-memory/users.d.ts +7 -3
  864. package/dist/storage/auth/in-memory/users.d.ts.map +1 -1
  865. package/dist/storage/auth/index.d.ts +1 -1
  866. package/dist/storage/auth/index.d.ts.map +1 -1
  867. package/dist/storage/auth/types.d.ts +59 -9
  868. package/dist/storage/auth/types.d.ts.map +1 -1
  869. package/dist/storage/connector-connections/provider.js +2 -2
  870. package/dist/storage/executions/in-memory.d.ts +3 -1
  871. package/dist/storage/executions/in-memory.d.ts.map +1 -1
  872. package/dist/storage/executions/index.d.ts +1 -1
  873. package/dist/storage/executions/index.d.ts.map +1 -1
  874. package/dist/storage/executions/provider.d.ts +2 -0
  875. package/dist/storage/executions/provider.d.ts.map +1 -1
  876. package/dist/storage/executions/provider.js +9 -223
  877. package/dist/storage/executions/provider.js.map +3 -4
  878. package/dist/storage/executions/types.d.ts +46 -0
  879. package/dist/storage/executions/types.d.ts.map +1 -1
  880. package/dist/storage/file-upload-sessions/provider.js +17 -14
  881. package/dist/storage/file-upload-sessions/provider.js.map +1 -1
  882. package/dist/storage/in-memory/index.d.ts +8 -0
  883. package/dist/storage/in-memory/index.d.ts.map +1 -1
  884. package/dist/storage/index.d.ts +15 -11
  885. package/dist/storage/index.d.ts.map +1 -1
  886. package/dist/storage/index.js +78 -66
  887. package/dist/storage/index.js.map +1 -1
  888. package/dist/storage/internal.d.ts +4 -1
  889. package/dist/storage/internal.d.ts.map +1 -1
  890. package/dist/storage/internal.js +80 -19
  891. package/dist/storage/internal.js.map +1 -1
  892. package/dist/storage/migrations/migrate-storage.d.ts +4 -1
  893. package/dist/storage/migrations/migrate-storage.d.ts.map +1 -1
  894. package/dist/storage/migrations/prepare-unique-properties.d.ts +18 -0
  895. package/dist/storage/migrations/prepare-unique-properties.d.ts.map +1 -0
  896. package/dist/storage/objects/guard.d.ts +1 -1
  897. package/dist/storage/objects/guard.d.ts.map +1 -1
  898. package/dist/storage/objects/in-memory/conditional-reader.d.ts +5 -0
  899. package/dist/storage/objects/in-memory/conditional-reader.d.ts.map +1 -0
  900. package/dist/storage/objects/in-memory/query.d.ts.map +1 -1
  901. package/dist/storage/objects/in-memory/read-scope.d.ts +3 -9
  902. package/dist/storage/objects/in-memory/read-scope.d.ts.map +1 -1
  903. package/dist/storage/objects/in-memory/read-source.d.ts +10 -1
  904. package/dist/storage/objects/in-memory/read-source.d.ts.map +1 -1
  905. package/dist/storage/objects/in-memory/scoped-reader.d.ts +14 -0
  906. package/dist/storage/objects/in-memory/scoped-reader.d.ts.map +1 -0
  907. package/dist/storage/objects/in-memory/selected-reader.d.ts.map +1 -1
  908. package/dist/storage/objects/in-memory/storage.d.ts +36 -1
  909. package/dist/storage/objects/in-memory/storage.d.ts.map +1 -1
  910. package/dist/storage/objects/index.d.ts +2 -2
  911. package/dist/storage/objects/index.d.ts.map +1 -1
  912. package/dist/storage/objects/read-scope.d.ts +9 -1
  913. package/dist/storage/objects/read-scope.d.ts.map +1 -1
  914. package/dist/storage/objects/types.d.ts +64 -1
  915. package/dist/storage/objects/types.d.ts.map +1 -1
  916. package/dist/storage/ontology/in-memory/index.d.ts +2 -0
  917. package/dist/storage/ontology/in-memory/index.d.ts.map +1 -1
  918. package/dist/storage/ontology/in-memory/materializations.d.ts +1 -0
  919. package/dist/storage/ontology/in-memory/materializations.d.ts.map +1 -1
  920. package/dist/storage/ontology/in-memory/replacement-plans.d.ts.map +1 -1
  921. package/dist/storage/ontology/in-memory/sources.d.ts +2 -1
  922. package/dist/storage/ontology/in-memory/sources.d.ts.map +1 -1
  923. package/dist/storage/ontology/in-memory/unique-values.d.ts +32 -0
  924. package/dist/storage/ontology/in-memory/unique-values.d.ts.map +1 -0
  925. package/dist/storage/ontology/index.d.ts +5 -2
  926. package/dist/storage/ontology/index.d.ts.map +1 -1
  927. package/dist/storage/ontology/materializations.d.ts +34 -1
  928. package/dist/storage/ontology/materializations.d.ts.map +1 -1
  929. package/dist/storage/ontology/provider-work.d.ts +15 -2
  930. package/dist/storage/ontology/provider-work.d.ts.map +1 -1
  931. package/dist/storage/ontology/provider.d.ts +1 -1
  932. package/dist/storage/ontology/provider.d.ts.map +1 -1
  933. package/dist/storage/ontology/provider.js +9 -4
  934. package/dist/storage/ontology/provider.js.map +1 -1
  935. package/dist/storage/ontology/sources.d.ts +15 -0
  936. package/dist/storage/ontology/sources.d.ts.map +1 -1
  937. package/dist/storage/ontology/unique-values.d.ts +54 -0
  938. package/dist/storage/ontology/unique-values.d.ts.map +1 -0
  939. package/dist/storage/operation-scope.d.ts +1 -1
  940. package/dist/storage/operation-scope.d.ts.map +1 -1
  941. package/dist/storage/operation-scope.js +1 -1
  942. package/dist/storage/projection-runs/in-memory.d.ts +0 -6
  943. package/dist/storage/projection-runs/in-memory.d.ts.map +1 -1
  944. package/dist/storage/projection-runs/provider.js +3 -3
  945. package/dist/storage/share-grants/in-memory.d.ts +2 -1
  946. package/dist/storage/share-grants/in-memory.d.ts.map +1 -1
  947. package/dist/storage/share-grants/index.d.ts +1 -1
  948. package/dist/storage/share-grants/index.d.ts.map +1 -1
  949. package/dist/storage/share-grants/provider.js +4 -3
  950. package/dist/storage/share-grants/provider.js.map +1 -1
  951. package/dist/storage/share-grants/types.d.ts +6 -0
  952. package/dist/storage/share-grants/types.d.ts.map +1 -1
  953. package/dist/storage/types.d.ts +6 -2
  954. package/dist/storage/types.d.ts.map +1 -1
  955. package/dist/storage/workflow-runs/in-memory.d.ts +4 -0
  956. package/dist/storage/workflow-runs/in-memory.d.ts.map +1 -1
  957. package/dist/storage/workflow-runs/provider.js +18 -14
  958. package/dist/storage/workflow-runs/provider.js.map +1 -1
  959. package/dist/storage/workflow-runs/types.d.ts +5 -0
  960. package/dist/storage/workflow-runs/types.d.ts.map +1 -1
  961. package/dist/syncs/index.js +49 -45
  962. package/dist/syncs/index.js.map +1 -1
  963. package/dist/testing/action-run-storage-contract.d.ts.map +1 -1
  964. package/dist/testing/activity-storage-contract.d.ts +14 -0
  965. package/dist/testing/activity-storage-contract.d.ts.map +1 -0
  966. package/dist/testing/agent-approval-storage-contract.d.ts +17 -0
  967. package/dist/testing/agent-approval-storage-contract.d.ts.map +1 -0
  968. package/dist/testing/agent-memory-storage-contract.d.ts +12 -0
  969. package/dist/testing/agent-memory-storage-contract.d.ts.map +1 -0
  970. package/dist/testing/agent-storage-contract.d.ts.map +1 -1
  971. package/dist/testing/ai-cost-storage-contract.d.ts.map +1 -1
  972. package/dist/testing/ai-limit-storage-contract.d.ts +0 -1
  973. package/dist/testing/ai-limit-storage-contract.d.ts.map +1 -1
  974. package/dist/testing/ai-model-call-groups-contract.d.ts.map +1 -1
  975. package/dist/testing/ai-usage-storage-contract.d.ts.map +1 -1
  976. package/dist/testing/artifact-storage-contract.d.ts +13 -0
  977. package/dist/testing/artifact-storage-contract.d.ts.map +1 -0
  978. package/dist/testing/auth-storage-contract.d.ts +13 -0
  979. package/dist/testing/auth-storage-contract.d.ts.map +1 -1
  980. package/dist/testing/broker-contract.d.ts +5 -0
  981. package/dist/testing/broker-contract.d.ts.map +1 -1
  982. package/dist/testing/effective-storage-contract.d.ts.map +1 -1
  983. package/dist/testing/execution-storage-contract.d.ts.map +1 -1
  984. package/dist/testing/file-upload-session-storage-contract.d.ts.map +1 -1
  985. package/dist/testing/index.d.ts +11 -5
  986. package/dist/testing/index.d.ts.map +1 -1
  987. package/dist/testing/index.js +9340 -3794
  988. package/dist/testing/index.js.map +32 -26
  989. package/dist/testing/lake-merge-storage-contract.d.ts.map +1 -1
  990. package/dist/testing/lake-storage-contract.d.ts +2 -0
  991. package/dist/testing/lake-storage-contract.d.ts.map +1 -1
  992. package/dist/testing/materializer-storage-contract.d.ts.map +1 -1
  993. package/dist/testing/object-conditional-read-scope-contract.d.ts +11 -0
  994. package/dist/testing/object-conditional-read-scope-contract.d.ts.map +1 -0
  995. package/dist/testing/object-query-contract.d.ts +0 -2
  996. package/dist/testing/object-query-contract.d.ts.map +1 -1
  997. package/dist/testing/ontology-storage-contract.d.ts.map +1 -1
  998. package/dist/testing/projection-run-storage-contract.d.ts.map +1 -1
  999. package/dist/testing/queues-contract.d.ts +5 -0
  1000. package/dist/testing/queues-contract.d.ts.map +1 -1
  1001. package/dist/testing/sandboxes-contract.d.ts.map +1 -1
  1002. package/dist/testing/share-grant-storage-contract.d.ts.map +1 -1
  1003. package/dist/testing/share-session-storage-contract.d.ts.map +1 -1
  1004. package/dist/testing/unique-values-contract.d.ts +21 -0
  1005. package/dist/testing/unique-values-contract.d.ts.map +1 -0
  1006. package/dist/testing/webhook-execution.d.ts +0 -8
  1007. package/dist/testing/webhook-execution.d.ts.map +1 -1
  1008. package/dist/testing/webhook-run-storage-contract.d.ts.map +1 -1
  1009. package/dist/users/execution.d.ts +40 -0
  1010. package/dist/users/execution.d.ts.map +1 -0
  1011. package/dist/users/index.d.ts +3 -0
  1012. package/dist/users/index.d.ts.map +1 -0
  1013. package/dist/webhooks/internal.js +42 -38
  1014. package/dist/webhooks/internal.js.map +2 -2
  1015. package/dist/workers/index.js +5 -7
  1016. package/dist/workers/index.js.map +4 -4
  1017. package/dist/workers/queue-worker.d.ts +0 -2
  1018. package/dist/workers/queue-worker.d.ts.map +1 -1
  1019. package/dist/workers/worker.d.ts +0 -2
  1020. package/dist/workers/worker.d.ts.map +1 -1
  1021. package/dist/workflows/builders.d.ts.map +1 -1
  1022. package/dist/workflows/index.js +76 -66
  1023. package/dist/workflows/index.js.map +1 -1
  1024. package/dist/workflows/request.d.ts +12 -1
  1025. package/dist/workflows/request.d.ts.map +1 -1
  1026. package/dist/workflows/types.d.ts +15 -2
  1027. package/dist/workflows/types.d.ts.map +1 -1
  1028. package/dist/workflows/validation.d.ts +7 -0
  1029. package/dist/workflows/validation.d.ts.map +1 -1
  1030. package/package.json +25 -1
  1031. package/src/actions/commit-edits.ts +6 -1
  1032. package/src/actions/execution.ts +55 -23
  1033. package/src/actions/read-facade.ts +33 -0
  1034. package/src/actions/request.ts +234 -66
  1035. package/src/actions/run/context.ts +47 -1
  1036. package/src/actions/run/execute.ts +13 -6
  1037. package/src/actions/run/executor.ts +11 -2
  1038. package/src/actions/run/normalize.ts +12 -2
  1039. package/src/actions/run/phases.ts +2 -0
  1040. package/src/actions/run/run-action.ts +12 -3
  1041. package/src/actions/run/signals.ts +3 -9
  1042. package/src/actions/run/types.ts +17 -1
  1043. package/src/actions/run-authorization.ts +95 -0
  1044. package/src/actions/types/context.ts +20 -3
  1045. package/src/actions/validators.ts +19 -8
  1046. package/src/activity/README.md +158 -0
  1047. package/src/activity/connection.ts +217 -0
  1048. package/src/activity/device.ts +41 -0
  1049. package/src/activity/execution.ts +210 -0
  1050. package/src/activity/service.ts +274 -0
  1051. package/src/activity/shares.ts +62 -0
  1052. package/src/activity/timeline.ts +385 -0
  1053. package/src/agents/accounting.ts +59 -0
  1054. package/src/agents/adapters.ts +10 -0
  1055. package/src/agents/agent-mail.ts +29 -0
  1056. package/src/agents/api-gateway.ts +14 -3
  1057. package/src/agents/approval-continuation.ts +48 -0
  1058. package/src/agents/approval-executor.ts +318 -0
  1059. package/src/agents/approval-outcome.ts +59 -0
  1060. package/src/agents/approvals.ts +566 -0
  1061. package/src/agents/authority.ts +24 -1
  1062. package/src/agents/builders.ts +5 -3
  1063. package/src/agents/cancel.ts +103 -0
  1064. package/src/agents/child-question.ts +46 -0
  1065. package/src/agents/children.ts +404 -0
  1066. package/src/agents/context-compaction.ts +12 -0
  1067. package/src/agents/errors.ts +31 -0
  1068. package/src/agents/execution.ts +788 -90
  1069. package/src/agents/fork.ts +158 -0
  1070. package/src/agents/ids.ts +18 -6
  1071. package/src/agents/index.ts +63 -3
  1072. package/src/agents/memory-execution.ts +186 -0
  1073. package/src/agents/memory.ts +178 -0
  1074. package/src/agents/message.ts +57 -0
  1075. package/src/agents/model-loop.ts +93 -6
  1076. package/src/agents/model-routing.ts +193 -0
  1077. package/src/agents/participants.ts +213 -0
  1078. package/src/agents/reference.ts +2 -0
  1079. package/src/agents/request.ts +398 -64
  1080. package/src/agents/run-scope.ts +134 -0
  1081. package/src/agents/skills.ts +6 -0
  1082. package/src/agents/streams/index.ts +5 -0
  1083. package/src/agents/streams/internal.ts +1 -0
  1084. package/src/agents/streams/protocol.ts +385 -7
  1085. package/src/agents/subagent-runs.ts +41 -0
  1086. package/src/agents/thread-access.ts +137 -0
  1087. package/src/agents/tool-definition.ts +5 -3
  1088. package/src/agents/types.ts +43 -18
  1089. package/src/agents/validation.ts +4 -0
  1090. package/src/artifacts/access.ts +125 -0
  1091. package/src/artifacts/address.ts +132 -0
  1092. package/src/artifacts/canvas.ts +369 -0
  1093. package/src/artifacts/csv.ts +118 -0
  1094. package/src/artifacts/errors.ts +32 -0
  1095. package/src/artifacts/execution.ts +553 -0
  1096. package/src/artifacts/formula/check.ts +171 -0
  1097. package/src/artifacts/formula/evaluate.ts +288 -0
  1098. package/src/artifacts/formula/index.ts +199 -0
  1099. package/src/artifacts/formula/parser.ts +357 -0
  1100. package/src/artifacts/frames/assets.ts +104 -0
  1101. package/src/artifacts/frames/entries.ts +35 -0
  1102. package/src/artifacts/frames/grants.ts +125 -0
  1103. package/src/artifacts/frames/index.ts +21 -0
  1104. package/src/artifacts/frames/kit.ts +569 -0
  1105. package/src/artifacts/frames/probe.ts +357 -0
  1106. package/src/artifacts/frames/protocol.ts +328 -0
  1107. package/src/artifacts/frames/runtime.ts +458 -0
  1108. package/src/artifacts/html.ts +25 -0
  1109. package/src/artifacts/ids.ts +18 -0
  1110. package/src/artifacts/index.ts +125 -0
  1111. package/src/artifacts/kinds.ts +8 -0
  1112. package/src/artifacts/limits.ts +58 -0
  1113. package/src/artifacts/live-sheet.ts +345 -0
  1114. package/src/artifacts/outline.ts +95 -0
  1115. package/src/artifacts/publish/files.ts +87 -0
  1116. package/src/artifacts/publish/index.ts +14 -0
  1117. package/src/artifacts/publish/publish.ts +336 -0
  1118. package/src/artifacts/publish/queries.ts +336 -0
  1119. package/src/artifacts/publish/references.ts +135 -0
  1120. package/src/artifacts/publish/validate/canvas.ts +118 -0
  1121. package/src/artifacts/publish/validate/document.ts +114 -0
  1122. package/src/artifacts/publish/validate/file.ts +19 -0
  1123. package/src/artifacts/publish/validate/html.ts +78 -0
  1124. package/src/artifacts/publish/validate/page.ts +65 -0
  1125. package/src/artifacts/publish/validate/sheet.ts +297 -0
  1126. package/src/artifacts/publish/validate/slides.ts +82 -0
  1127. package/src/artifacts/queries.ts +512 -0
  1128. package/src/artifacts/references.ts +11 -0
  1129. package/src/artifacts/resolve.ts +112 -0
  1130. package/src/artifacts/run-query.ts +212 -0
  1131. package/src/artifacts/serialize-query.ts +25 -0
  1132. package/src/artifacts/sheet-rules.ts +180 -0
  1133. package/src/artifacts/theme.ts +116 -0
  1134. package/src/artifacts/tones.ts +20 -0
  1135. package/src/artifacts/warnings.ts +10 -0
  1136. package/src/artifacts/workbook.ts +674 -0
  1137. package/src/auth/index.ts +4 -0
  1138. package/src/auth/member-events.ts +114 -0
  1139. package/src/auth/profile.ts +118 -0
  1140. package/src/auth/runtime.ts +190 -9
  1141. package/src/auth/strategy.ts +3 -0
  1142. package/src/auth/types.ts +32 -0
  1143. package/src/authorization/decision.ts +52 -0
  1144. package/src/authorization/event-visibility.ts +17 -16
  1145. package/src/authorization/grant-kinds.ts +46 -2
  1146. package/src/authorization/index.ts +6 -1
  1147. package/src/authorization/resolve.ts +58 -1
  1148. package/src/authorization/run-visibility.ts +8 -1
  1149. package/src/authorization/types.ts +14 -0
  1150. package/src/blob-storage/internal.ts +1 -1
  1151. package/src/blob-storage/media-type.ts +69 -0
  1152. package/src/datasets/builders.ts +66 -2
  1153. package/src/datasets/column-index.ts +19 -0
  1154. package/src/datasets/execution.ts +23 -9
  1155. package/src/errors/catalog.ts +26 -1
  1156. package/src/errors/internal.ts +18 -8
  1157. package/src/events/definitions.ts +26 -0
  1158. package/src/events/execution.ts +171 -21
  1159. package/src/events/index.ts +10 -1
  1160. package/src/events/scope.ts +2 -0
  1161. package/src/events/selectors/builder.ts +50 -0
  1162. package/src/events/selectors/index.ts +4 -0
  1163. package/src/events/selectors/types.ts +32 -1
  1164. package/src/events/service.ts +55 -2
  1165. package/src/events/types/index.ts +10 -0
  1166. package/src/events/types/users.ts +73 -0
  1167. package/src/events/view-conditions.ts +241 -0
  1168. package/src/execution/agent.ts +25 -0
  1169. package/src/execution/authorization.ts +70 -0
  1170. package/src/execution/authorized-object-reader.ts +486 -266
  1171. package/src/execution/lineage.ts +14 -0
  1172. package/src/execution/object-reader-clearance.ts +91 -0
  1173. package/src/execution/object-reader-ontology.ts +60 -0
  1174. package/src/execution/object-reader-security.ts +270 -0
  1175. package/src/execution/object-reader-users.ts +122 -0
  1176. package/src/execution/preparation.ts +78 -0
  1177. package/src/execution/request.ts +2 -0
  1178. package/src/execution/unique-lookup.ts +55 -0
  1179. package/src/execution/visible-objects.ts +26 -0
  1180. package/src/http/api-routes.ts +331 -7
  1181. package/src/index.ts +169 -4
  1182. package/src/lake-storage/in-memory.ts +26 -3
  1183. package/src/lake-storage/index.ts +13 -1
  1184. package/src/lake-storage/lineage.ts +385 -0
  1185. package/src/lake-storage/sql-transforms.ts +45 -0
  1186. package/src/lake-storage/types.ts +59 -1
  1187. package/src/lake-storage/version-inputs.ts +35 -6
  1188. package/src/maintenance/ontology-maintenance.ts +15 -0
  1189. package/src/materialization/errors.ts +37 -0
  1190. package/src/materialization/event-envelopes.ts +11 -3
  1191. package/src/materialization/index.ts +1 -0
  1192. package/src/materialization/model.ts +24 -4
  1193. package/src/materializer/README.md +7 -1
  1194. package/src/materializer/edits/commit.ts +56 -12
  1195. package/src/materializer/edits/load-state.ts +15 -7
  1196. package/src/materializer/edits/operations.ts +12 -0
  1197. package/src/materializer/edits/plan.ts +2 -0
  1198. package/src/materializer/edits/unique-values.ts +255 -0
  1199. package/src/materializer/edits/working-state.ts +8 -1
  1200. package/src/materializer/execution/work-records.ts +47 -0
  1201. package/src/materializer/projections/finish-run.ts +0 -1
  1202. package/src/materializer/projections/replace.ts +1 -1
  1203. package/src/materializer/projections/replacement-plan.ts +4 -1
  1204. package/src/materializer/projections/source-materialization.ts +2 -1
  1205. package/src/materializer/shared/normalize.ts +37 -6
  1206. package/src/materializer/shared/projection-run.ts +1 -2
  1207. package/src/materializer/telemetry/append.ts +14 -17
  1208. package/src/materializer/telemetry/plan.ts +2 -0
  1209. package/src/models/audio/catalog.ts +89 -10
  1210. package/src/models/audio/errors.ts +18 -1
  1211. package/src/models/audio/runtime.ts +10 -13
  1212. package/src/models/audio/speech.ts +261 -0
  1213. package/src/models/audio/types.ts +97 -0
  1214. package/src/models/calls.ts +100 -0
  1215. package/src/models/catalog-index.ts +21 -2
  1216. package/src/models/catalog.ts +211 -35
  1217. package/src/models/decision/runtime.ts +21 -22
  1218. package/src/models/decision/validation.ts +4 -1
  1219. package/src/models/definitions.ts +57 -8
  1220. package/src/models/events.ts +72 -1
  1221. package/src/models/execution/README.md +34 -5
  1222. package/src/models/execution/binding.ts +3 -1
  1223. package/src/models/execution/embedding.ts +1 -0
  1224. package/src/models/execution/index.ts +5 -0
  1225. package/src/models/execution/model-call-accounting.ts +3 -1
  1226. package/src/models/execution/model-call-recorder.ts +29 -1
  1227. package/src/models/execution/usage.ts +8 -0
  1228. package/src/models/execution.ts +20 -22
  1229. package/src/models/generation-types.ts +8 -1
  1230. package/src/models/image/catalog.ts +89 -0
  1231. package/src/models/image/errors.ts +19 -0
  1232. package/src/models/image/runtime.ts +335 -0
  1233. package/src/models/image/types.ts +111 -0
  1234. package/src/models/index.ts +38 -4
  1235. package/src/models/{audio/file.ts → input-file.ts} +22 -13
  1236. package/src/models/language-model.ts +13 -0
  1237. package/src/models/pricing.ts +263 -42
  1238. package/src/models/rate-card.ts +161 -12
  1239. package/src/objects/authorized-ontology-view.ts +1 -0
  1240. package/src/objects/clearance-redaction.ts +138 -0
  1241. package/src/objects/conditional-writes.ts +109 -0
  1242. package/src/objects/execution.ts +4 -0
  1243. package/src/objects/index.ts +8 -0
  1244. package/src/objects/link/authorization.ts +37 -8
  1245. package/src/objects/link/endpoints.ts +42 -11
  1246. package/src/objects/link/remove.ts +27 -12
  1247. package/src/objects/link/upsert-batch.ts +9 -5
  1248. package/src/objects/link/upsert.ts +20 -14
  1249. package/src/objects/materializer-adapter.ts +55 -18
  1250. package/src/objects/object/delete.ts +26 -7
  1251. package/src/objects/object/upsert-batch.ts +46 -18
  1252. package/src/objects/object/upsert.ts +25 -8
  1253. package/src/objects/property-clearance.ts +171 -152
  1254. package/src/objects/query/clearance-admission.ts +112 -0
  1255. package/src/objects/query/current-user.ts +76 -0
  1256. package/src/objects/query/executor.ts +39 -103
  1257. package/src/objects/query/explain.ts +20 -7
  1258. package/src/objects/query/index.ts +2 -0
  1259. package/src/objects/query/ir.ts +20 -0
  1260. package/src/objects/query/link-query-clearance.ts +73 -0
  1261. package/src/objects/query/links.ts +8 -0
  1262. package/src/objects/query/matches-predicate.ts +108 -0
  1263. package/src/objects/query/normalize.ts +50 -19
  1264. package/src/objects/query/scalar-values.ts +19 -3
  1265. package/src/objects/query/user-expansions.ts +65 -0
  1266. package/src/objects/query/validate.ts +248 -10
  1267. package/src/objects/runtime-batch.ts +8 -2
  1268. package/src/objects/sdk/object-set.ts +12 -1
  1269. package/src/objects/sdk/query-builder.ts +39 -8
  1270. package/src/objects/sdk/query-executor.ts +6 -0
  1271. package/src/objects/serialize.ts +79 -0
  1272. package/src/objects/unique-violation.ts +59 -0
  1273. package/src/objects/vectors/handle.ts +3 -3
  1274. package/src/ontology/builders.ts +15 -1
  1275. package/src/ontology/docs-markdown.ts +2 -1
  1276. package/src/ontology/index.ts +2 -2
  1277. package/src/ontology/json-schema.ts +4 -0
  1278. package/src/ontology/primitives.ts +21 -8
  1279. package/src/ontology/registry.ts +16 -0
  1280. package/src/ontology/types.ts +9 -0
  1281. package/src/ontology/unique-values.ts +84 -0
  1282. package/src/ontology/user-ref.ts +39 -0
  1283. package/src/ontology/validation/properties.ts +43 -0
  1284. package/src/ontology/validation/schema.ts +9 -1
  1285. package/src/pipelines/index.ts +2 -0
  1286. package/src/pipelines/lineage.ts +45 -0
  1287. package/src/projections/internal.ts +2 -2
  1288. package/src/projections/registry.ts +16 -10
  1289. package/src/projections/revision.ts +112 -45
  1290. package/src/projections/run-dispatch.ts +38 -25
  1291. package/src/projections/types.ts +2 -0
  1292. package/src/query.ts +5 -0
  1293. package/src/rules/execution.ts +43 -11
  1294. package/src/runtime/ai-cost.ts +30 -0
  1295. package/src/runtime/ai-usage.ts +32 -1
  1296. package/src/runtime/create.ts +4 -0
  1297. package/src/runtime/host.ts +73 -1
  1298. package/src/runtime/index.ts +2 -0
  1299. package/src/runtime/internal.ts +2 -0
  1300. package/src/runtime/ontology-mutations.ts +19 -4
  1301. package/src/runtime/resolve-definitions.ts +69 -3
  1302. package/src/runtime/sixb.ts +53 -9
  1303. package/src/runtime/types.ts +99 -9
  1304. package/src/sandboxes/README.md +29 -7
  1305. package/src/sandboxes/auth.ts +16 -0
  1306. package/src/sandboxes/config.ts +2 -7
  1307. package/src/sandboxes/configuration.ts +61 -7
  1308. package/src/sandboxes/index.ts +1 -0
  1309. package/src/sandboxes/sandbox.ts +27 -5
  1310. package/src/schedules/builders.ts +3 -1
  1311. package/src/schedules/runtime.ts +6 -0
  1312. package/src/schedules/validation.ts +23 -1
  1313. package/src/security/README.md +62 -0
  1314. package/src/security/applied-markings-contribution.ts +277 -0
  1315. package/src/security/applied-markings-host.ts +41 -0
  1316. package/src/security/applied-markings-snapshot.ts +235 -0
  1317. package/src/security/applied-markings.ts +405 -0
  1318. package/src/security/dataset-version-markings.ts +163 -0
  1319. package/src/security/grants.ts +191 -11
  1320. package/src/security/index.ts +5 -0
  1321. package/src/security/internal.ts +18 -0
  1322. package/src/security/marking-propagation.ts +255 -0
  1323. package/src/security/marking-sets.ts +42 -0
  1324. package/src/security/markings.ts +29 -178
  1325. package/src/security/pipeline-markings.ts +175 -0
  1326. package/src/security/project.ts +13 -0
  1327. package/src/security/projection-markings.ts +421 -0
  1328. package/src/security/redactions.ts +7 -2
  1329. package/src/security/registry.ts +32 -7
  1330. package/src/security/types.ts +68 -5
  1331. package/src/security/validation.ts +34 -11
  1332. package/src/security/view-conditions.ts +215 -0
  1333. package/src/shares/execution.ts +43 -10
  1334. package/src/storage/action-runs/in-memory.ts +18 -0
  1335. package/src/storage/action-runs/types.ts +10 -0
  1336. package/src/storage/activity/in-memory.ts +374 -0
  1337. package/src/storage/activity/index.ts +27 -0
  1338. package/src/storage/activity/policy.ts +430 -0
  1339. package/src/storage/activity/types.ts +211 -0
  1340. package/src/storage/agents/errors.ts +3 -0
  1341. package/src/storage/agents/in-memory.ts +789 -32
  1342. package/src/storage/agents/index.ts +42 -0
  1343. package/src/storage/agents/provider.ts +730 -16
  1344. package/src/storage/agents/types.ts +628 -27
  1345. package/src/storage/ai-cost/analytics.ts +60 -7
  1346. package/src/storage/ai-cost/codec.ts +6 -1
  1347. package/src/storage/ai-cost/groups.ts +44 -1
  1348. package/src/storage/ai-cost/index.ts +1 -0
  1349. package/src/storage/ai-cost/provider.ts +2 -0
  1350. package/src/storage/ai-cost/types.ts +18 -1
  1351. package/src/storage/ai-cost/validation.ts +39 -12
  1352. package/src/storage/ai-limits/provider.ts +4 -7
  1353. package/src/storage/ai-usage/in-memory.ts +28 -1
  1354. package/src/storage/ai-usage/index.ts +9 -1
  1355. package/src/storage/ai-usage/record.ts +44 -7
  1356. package/src/storage/ai-usage/types.ts +38 -0
  1357. package/src/storage/ai-usage/usage.ts +15 -1
  1358. package/src/storage/artifacts/errors.ts +28 -0
  1359. package/src/storage/artifacts/in-memory.ts +388 -0
  1360. package/src/storage/artifacts/index.ts +35 -0
  1361. package/src/storage/artifacts/record.ts +260 -0
  1362. package/src/storage/artifacts/types.ts +293 -0
  1363. package/src/storage/auth/in-memory/auth-storage.ts +27 -2
  1364. package/src/storage/auth/in-memory/sessions.ts +21 -0
  1365. package/src/storage/auth/in-memory/users.ts +40 -6
  1366. package/src/storage/auth/index.ts +3 -0
  1367. package/src/storage/auth/types.ts +61 -7
  1368. package/src/storage/executions/in-memory.ts +93 -1
  1369. package/src/storage/executions/index.ts +5 -0
  1370. package/src/storage/executions/provider.ts +12 -0
  1371. package/src/storage/executions/types.ts +47 -0
  1372. package/src/storage/in-memory/index.ts +16 -0
  1373. package/src/storage/index.ts +132 -1
  1374. package/src/storage/internal.ts +39 -1
  1375. package/src/storage/migrations/migrate-storage.ts +8 -1
  1376. package/src/storage/migrations/prepare-unique-properties.ts +161 -0
  1377. package/src/storage/objects/guard.ts +7 -3
  1378. package/src/storage/objects/in-memory/conditional-reader.ts +72 -0
  1379. package/src/storage/objects/in-memory/query.ts +4 -105
  1380. package/src/storage/objects/in-memory/read-scope.ts +15 -14
  1381. package/src/storage/objects/in-memory/read-source.ts +11 -1
  1382. package/src/storage/objects/in-memory/scoped-reader.ts +243 -0
  1383. package/src/storage/objects/in-memory/selected-reader.ts +6 -231
  1384. package/src/storage/objects/in-memory/storage.ts +183 -1
  1385. package/src/storage/objects/index.ts +9 -1
  1386. package/src/storage/objects/read-scope.ts +191 -0
  1387. package/src/storage/objects/types.ts +68 -1
  1388. package/src/storage/ontology/in-memory/index.ts +3 -0
  1389. package/src/storage/ontology/in-memory/materializations.ts +35 -0
  1390. package/src/storage/ontology/in-memory/replacement-plans.ts +4 -0
  1391. package/src/storage/ontology/in-memory/sources.ts +23 -0
  1392. package/src/storage/ontology/in-memory/unique-values.ts +62 -0
  1393. package/src/storage/ontology/index.ts +12 -0
  1394. package/src/storage/ontology/materializations.ts +35 -1
  1395. package/src/storage/ontology/provider-work.ts +76 -0
  1396. package/src/storage/ontology/provider.ts +3 -0
  1397. package/src/storage/ontology/sources.ts +17 -0
  1398. package/src/storage/ontology/unique-values.ts +56 -0
  1399. package/src/storage/operation-scope.ts +9 -1
  1400. package/src/storage/projection-runs/in-memory.ts +3 -35
  1401. package/src/storage/share-grants/in-memory.ts +8 -0
  1402. package/src/storage/share-grants/index.ts +1 -0
  1403. package/src/storage/share-grants/types.ts +8 -0
  1404. package/src/storage/types.ts +6 -0
  1405. package/src/storage/workflow-runs/in-memory.ts +16 -0
  1406. package/src/storage/workflow-runs/types.ts +5 -0
  1407. package/src/testing/action-run-storage-contract.ts +25 -0
  1408. package/src/testing/activity-storage-contract.ts +840 -0
  1409. package/src/testing/agent-approval-storage-contract.ts +1117 -0
  1410. package/src/testing/agent-memory-storage-contract.ts +400 -0
  1411. package/src/testing/agent-storage-contract.ts +1206 -50
  1412. package/src/testing/ai-cost-storage-contract.ts +31 -1
  1413. package/src/testing/ai-limit-storage-contract.ts +9 -7
  1414. package/src/testing/ai-model-call-groups-contract.ts +76 -0
  1415. package/src/testing/ai-usage-storage-contract.ts +120 -13
  1416. package/src/testing/artifact-storage-contract.ts +851 -0
  1417. package/src/testing/auth-storage-contract.ts +597 -73
  1418. package/src/testing/broker-contract.ts +28 -23
  1419. package/src/testing/effective-storage-contract.ts +3 -8
  1420. package/src/testing/execution-storage-contract.ts +200 -1
  1421. package/src/testing/file-upload-session-storage-contract.ts +12 -24
  1422. package/src/testing/index.ts +26 -4
  1423. package/src/testing/lake-merge-storage-contract.ts +38 -0
  1424. package/src/testing/lake-storage-contract.ts +269 -30
  1425. package/src/testing/materializer-storage-contract.ts +37 -9
  1426. package/src/testing/object-conditional-read-scope-contract.ts +634 -0
  1427. package/src/testing/object-query-contract.ts +386 -186
  1428. package/src/testing/ontology-storage-contract.ts +286 -22
  1429. package/src/testing/projection-run-storage-contract.ts +8 -18
  1430. package/src/testing/queues-contract.ts +39 -70
  1431. package/src/testing/sandboxes-contract.ts +3 -14
  1432. package/src/testing/share-grant-storage-contract.ts +28 -16
  1433. package/src/testing/share-session-storage-contract.ts +4 -14
  1434. package/src/testing/unique-values-contract.ts +907 -0
  1435. package/src/testing/webhook-execution.ts +1 -1
  1436. package/src/testing/webhook-run-storage-contract.ts +6 -9
  1437. package/src/users/execution.ts +131 -0
  1438. package/src/users/index.ts +2 -0
  1439. package/src/workers/queue-worker.ts +1 -3
  1440. package/src/workers/worker.ts +1 -3
  1441. package/src/workflows/builders.ts +20 -0
  1442. package/src/workflows/request.ts +46 -8
  1443. package/src/workflows/types.ts +15 -2
  1444. package/src/workflows/validation.ts +95 -9
  1445. package/dist/chunk-1k89ecfr.js +0 -85
  1446. package/dist/chunk-1k89ecfr.js.map +0 -10
  1447. package/dist/chunk-1sr8ryzk.js.map +0 -11
  1448. package/dist/chunk-29yx306f.js.map +0 -22
  1449. package/dist/chunk-3t2hgbgd.js.map +0 -15
  1450. package/dist/chunk-4as3wt1c.js.map +0 -12
  1451. package/dist/chunk-4vyr1j8f.js +0 -128
  1452. package/dist/chunk-4vyr1j8f.js.map +0 -11
  1453. package/dist/chunk-5e43w60z.js.map +0 -10
  1454. package/dist/chunk-6c6sn0bh.js.map +0 -106
  1455. package/dist/chunk-6p49a5cq.js.map +0 -12
  1456. package/dist/chunk-6x0pqh32.js.map +0 -10
  1457. package/dist/chunk-7n30ybym.js +0 -3
  1458. package/dist/chunk-7n440zgt.js +0 -261
  1459. package/dist/chunk-7n440zgt.js.map +0 -12
  1460. package/dist/chunk-8mx7qw3y.js.map +0 -13
  1461. package/dist/chunk-91mg3nj9.js.map +0 -12
  1462. package/dist/chunk-96yw3pwd.js.map +0 -10
  1463. package/dist/chunk-9gyp8hg1.js +0 -363
  1464. package/dist/chunk-9gyp8hg1.js.map +0 -14
  1465. package/dist/chunk-9k93ah50.js.map +0 -11
  1466. package/dist/chunk-b38szspf.js.map +0 -11
  1467. package/dist/chunk-bx9q3cwv.js.map +0 -19
  1468. package/dist/chunk-d09tj99x.js.map +0 -12
  1469. package/dist/chunk-ere85b8y.js.map +0 -15
  1470. package/dist/chunk-es1gxsbf.js.map +0 -13
  1471. package/dist/chunk-gsjm1wms.js.map +0 -10
  1472. package/dist/chunk-hjzdd750.js.map +0 -49
  1473. package/dist/chunk-hkc3jct7.js.map +0 -10
  1474. package/dist/chunk-hvsb78a1.js.map +0 -20
  1475. package/dist/chunk-k6q3n2sc.js.map +0 -12
  1476. package/dist/chunk-n33z5bjw.js.map +0 -66
  1477. package/dist/chunk-pbcbn83d.js.map +0 -14
  1478. package/dist/chunk-pqajwytd.js +0 -68
  1479. package/dist/chunk-pqajwytd.js.map +0 -11
  1480. package/dist/chunk-qczk96d9.js.map +0 -11
  1481. package/dist/chunk-rdghfsss.js +0 -39
  1482. package/dist/chunk-rdghfsss.js.map +0 -10
  1483. package/dist/chunk-rj69qcrd.js.map +0 -11
  1484. package/dist/chunk-rrzt8jdy.js.map +0 -14
  1485. package/dist/chunk-s16apyk9.js +0 -256
  1486. package/dist/chunk-s16apyk9.js.map +0 -16
  1487. package/dist/chunk-s54c868q.js +0 -307
  1488. package/dist/chunk-s54c868q.js.map +0 -12
  1489. package/dist/chunk-tpn40322.js.map +0 -19
  1490. package/dist/chunk-tw03bsmb.js.map +0 -11
  1491. package/dist/chunk-v4jbb3rs.js.map +0 -10
  1492. package/dist/chunk-vpq4shxz.js.map +0 -39
  1493. package/dist/chunk-yxd3nnqt.js.map +0 -11
  1494. package/dist/chunk-yzwja0mj.js.map +0 -14
  1495. package/dist/events/toStoredEvent.d.ts +0 -9
  1496. package/dist/events/toStoredEvent.d.ts.map +0 -1
  1497. package/dist/models/audio/file.d.ts +0 -9
  1498. package/dist/models/audio/file.d.ts.map +0 -1
  1499. package/src/events/toStoredEvent.ts +0 -33
  1500. /package/dist/{chunk-mfs23znk.js.map → chunk-07kkp2e1.js.map} +0 -0
  1501. /package/dist/{chunk-fkgc1wt8.js.map → chunk-0phpbbvm.js.map} +0 -0
  1502. /package/dist/{chunk-y0c4e6ex.js.map → chunk-3gbefjg5.js.map} +0 -0
  1503. /package/dist/{chunk-fa02jy15.js.map → chunk-48jezz3j.js.map} +0 -0
  1504. /package/dist/{chunk-c85m1hyj.js.map → chunk-6n69k945.js.map} +0 -0
  1505. /package/dist/{chunk-xfs8x8m9.js.map → chunk-6p0pastb.js.map} +0 -0
  1506. /package/dist/{chunk-t7x8dmn0.js.map → chunk-6y0mkhex.js.map} +0 -0
  1507. /package/dist/{chunk-v9xd5wzd.js.map → chunk-bab05bhg.js.map} +0 -0
  1508. /package/dist/{chunk-gc4ntf7d.js.map → chunk-cwdzcv37.js.map} +0 -0
  1509. /package/dist/{chunk-vyf9kfqf.js.map → chunk-dp0cdtj2.js.map} +0 -0
  1510. /package/dist/{chunk-br3k6qbf.js.map → chunk-fm62y49k.js.map} +0 -0
  1511. /package/dist/{chunk-9ybhtmg4.js.map → chunk-g663fahq.js.map} +0 -0
  1512. /package/dist/{chunk-9w055r5b.js.map → chunk-hwarjrgf.js.map} +0 -0
  1513. /package/dist/{chunk-9dmt152s.js.map → chunk-hyesv9dv.js.map} +0 -0
  1514. /package/dist/{chunk-x9v4cx1d.js.map → chunk-m36fw8ft.js.map} +0 -0
  1515. /package/dist/{chunk-a40ad1ft.js.map → chunk-mbsbxarb.js.map} +0 -0
  1516. /package/dist/{chunk-6aawea28.js.map → chunk-n8q5j6y5.js.map} +0 -0
  1517. /package/dist/{chunk-dk8tkk5f.js.map → chunk-n9zpx9c6.js.map} +0 -0
  1518. /package/dist/{chunk-7t429e3f.js.map → chunk-npcr0228.js.map} +0 -0
  1519. /package/dist/{chunk-z4m0yz8c.js.map → chunk-q4pmvkg0.js.map} +0 -0
@@ -0,0 +1,15 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/security/projection-markings.ts", "../src/security/marking-propagation.ts", "../src/security/applied-markings-contribution.ts", "../src/security/applied-markings-host.ts", "../src/security/marking-sets.ts", "../src/security/dataset-version-markings.ts"],
4
+ "sourcesContent": [
5
+ "import type { DatasetVersion } from \"../lake-storage/types\"\nimport type { OntologyDefinitionCatalog } from \"../ontology/registry\"\nimport type { ObjectType } from \"../ontology/types\"\nimport type { ProjectionDefinitionCatalog } from \"../projections/registry\"\nimport type {\n LinkProjectionDefinition,\n ObjectProjectionDefinition,\n ProjectionDefinition,\n TelemetryProjectionDefinition,\n} from \"../projections/types\"\nimport type { VersionClassification } from \"./dataset-version-markings\"\nimport { SecurityValidationError } from \"./errors\"\nimport type { ColumnMarkingOrigins, DatasetMarkings, MarkingOrigin } from \"./marking-propagation\"\n\ntype OntologyLookup = Pick<OntologyDefinitionCatalog, \"getObjectTypeById\">\n\n/** Markings of one column of the projection's dataset. */\ntype ColumnMarkingsLookup = (column: string) => readonly string[]\n\n/** What a marked key column makes unreadable: the objects it identifies, or the link it keys. */\nexport type ProjectionKeyTarget =\n | { readonly kind: \"type\"; readonly objectTypeId: string }\n | {\n readonly kind: \"link\"\n readonly objectTypeId: string\n readonly linkId: string\n readonly targetObjectTypeId: string\n }\n\n/** A marking rule a projection breaks. */\ntype ProjectionMarkingViolation =\n | {\n readonly kind: \"undeclared\"\n readonly property: string\n readonly objectTypeId: string\n readonly propertyId: string\n readonly column: string\n readonly missing: readonly string[]\n }\n | {\n readonly kind: \"markedKeyColumn\"\n readonly column: string\n readonly role: string\n readonly targets: readonly ProjectionKeyTarget[]\n /** The property the column fills, when the key is a property. */\n readonly property?: { readonly objectTypeId: string; readonly propertyId: string }\n }\n | { readonly kind: \"markedKeyProperty\"; readonly property: string; readonly role: string }\n | { readonly kind: \"telemetry\"; readonly column: string }\n\n/**\n * Objects are read through the ontology, so each projected property declares the markings of its\n * column: the ontology stays the reviewed contract of what each reader receives. Values that\n * identify objects or key links are returned wherever the object or link is, and telemetry does\n * not enforce markings yet, so those columns cannot carry markings.\n *\n * Startup checks it with the markings columns declare or inherit through `run` steps, and the\n * pipeline preflight with the markings SQL steps derive as well.\n */\nexport function validateProjectionMarkings(\n projections: ProjectionDefinitionCatalog,\n ontology: OntologyLookup,\n markings: DatasetMarkings\n): void {\n const all = [\n ...projections.listObjects(),\n ...projections.listLinks(),\n ...projections.listTelemetry(),\n ]\n\n for (const projection of all) {\n const originsOf = (column: string) => markings.of({ datasetId: projection.datasetId, column })\n const violation = firstViolation(projection, ontology, (column) => [\n ...originsOf(column).keys(),\n ])\n if (!violation) continue\n\n const carries = (column: string): CarriedMarkings => {\n const origins = originsOf(column)\n return {\n text: describeOrigins(origins, `${projection.datasetId}.${column}`),\n inherited: [...origins.values()].some((origin) => origin.steps.length > 0),\n }\n }\n\n throw new SecurityValidationError(\n violationMessage(\n `[Sixb] Projection '${projection.id}'`,\n projection.datasetId,\n violation,\n carries\n )\n )\n }\n}\n\n/**\n * Refuse to project a dataset version whose columns carry more markings than the projection\n * allows. A version keeps the markings of the code that produced it, so a version written before\n * the current code can carry markings startup did not see. Call it once per version, before\n * reading its rows; it reads nothing, so what it throws is a refusal that no retry changes.\n */\nexport function assertProjectionVersionMarkings(input: {\n readonly projection: ProjectionDefinition\n readonly ontology: OntologyLookup\n readonly version: DatasetVersion\n readonly classification: VersionClassification\n}): void {\n const { projection, version, classification } = input\n const markingsOf = (column: string) => [...(classification.columns.get(column) ?? [])].sort()\n const violation = firstViolation(projection, input.ontology, markingsOf)\n if (!violation) return\n\n const subject = `[Sixb] Projection '${projection.id}' cannot read version '${version.versionId}' of dataset '${version.datasetId}'`\n const carries = (column: string): CarriedMarkings => ({\n text: `${markingList(markingsOf(column))} in this version`,\n inherited: true,\n })\n const conservative =\n classification.conservative === undefined\n ? \"\"\n : ` The version was classified with every marking its sources could hold, because ${classification.conservative}.`\n const rerun = `If the code that writes '${version.datasetId}' no longer derives these markings, rerun its pipeline.`\n\n throw new Error(\n `${violationMessage(subject, version.datasetId, violation, carries)}${conservative} ${rerun}`\n )\n}\n\n/** Markings an applied version gives a projection's targets beyond what the ontology declares. */\nexport interface ProjectionSurplus {\n /** Markings a mapped column carries that its property does not declare. */\n readonly properties: readonly {\n readonly objectTypeId: string\n readonly propertyId: string\n readonly column: string\n readonly markings: readonly string[]\n }[]\n /** Marked key columns, with what each one makes unreadable and why. */\n readonly keys: readonly {\n readonly target: ProjectionKeyTarget\n readonly column: string\n readonly role: string\n readonly markings: readonly string[]\n }[]\n}\n\n/**\n * What a projection's targets carry beyond their declarations when read from columns with these\n * markings: every rule it breaks, as markings to add to properties and to key targets. A property\n * that keys a link keeps its markings on the property as well.\n */\nexport function projectionSurplus(\n projection: ProjectionDefinition,\n ontology: OntologyLookup,\n markingsOf: ColumnMarkingsLookup\n): ProjectionSurplus {\n const properties: ProjectionSurplus[\"properties\"][number][] = []\n const keys: ProjectionSurplus[\"keys\"][number][] = []\n\n for (const violation of projectionMarkingViolations(projection, ontology, markingsOf)) {\n switch (violation.kind) {\n case \"undeclared\":\n properties.push({\n objectTypeId: violation.objectTypeId,\n propertyId: violation.propertyId,\n column: violation.column,\n markings: violation.missing,\n })\n break\n case \"markedKeyColumn\": {\n const markings = markingsOf(violation.column)\n for (const target of violation.targets) {\n keys.push({ target, column: violation.column, role: violation.role, markings })\n }\n\n const property = violation.property\n if (property && violation.targets.some((target) => target.kind === \"link\")) {\n properties.push({ ...property, column: violation.column, markings })\n }\n break\n }\n // Startup refuses a marked key property and a marked telemetry column from the code alone.\n case \"markedKeyProperty\":\n case \"telemetry\":\n break\n }\n }\n\n return { properties, keys }\n}\n\n// ── Rules ───────────────────────────────────────────────────\n\nfunction firstViolation(\n projection: ProjectionDefinition,\n ontology: OntologyLookup,\n markingsOf: ColumnMarkingsLookup\n): ProjectionMarkingViolation | null {\n const first = projectionMarkingViolations(projection, ontology, markingsOf).next()\n return first.done ? null : first.value\n}\n\n/** Every marking rule the projection breaks, the first one being the one messages report. */\nfunction* projectionMarkingViolations(\n projection: ProjectionDefinition,\n ontology: OntologyLookup,\n markingsOf: ColumnMarkingsLookup\n): Generator<ProjectionMarkingViolation> {\n switch (projection._tag) {\n case \"ObjectProjectionDefinition\": {\n const objectType = ontology.getObjectTypeById(projection.objectTypeId)\n if (objectType) yield* objectProjectionViolations(projection, objectType, markingsOf)\n return\n }\n case \"LinkProjectionDefinition\":\n yield* linkProjectionViolations(projection, markingsOf)\n return\n case \"TelemetryProjectionDefinition\":\n yield* telemetryProjectionViolations(projection, markingsOf)\n return\n }\n}\n\nfunction* objectProjectionViolations(\n projection: ObjectProjectionDefinition,\n objectType: ObjectType,\n markingsOf: ColumnMarkingsLookup\n): Generator<ProjectionMarkingViolation> {\n const keyRoles = objectProjectionKeyRoles(projection, objectType)\n\n for (const [propertyId, column] of Object.entries(projection.properties)) {\n const property = objectType.properties.find((candidate) => candidate.id === propertyId)\n const path = `${objectType.id}.${propertyId}`\n const keyRole = keyRoles.get(propertyId)\n\n if (keyRole) {\n if (markingsOf(column).length > 0) {\n yield {\n kind: \"markedKeyColumn\",\n column,\n role: keyRole.role,\n targets: keyRole.targets,\n property: { objectTypeId: objectType.id, propertyId },\n }\n } else if (property?.markings) {\n yield { kind: \"markedKeyProperty\", property: path, role: keyRole.role }\n }\n continue\n }\n\n const declared = new Set(property?.markings ?? [])\n const missing = markingsOf(column).filter((markingId) => !declared.has(markingId))\n if (missing.length > 0) {\n yield {\n kind: \"undeclared\",\n property: path,\n objectTypeId: objectType.id,\n propertyId,\n column,\n missing,\n }\n }\n }\n\n for (const [linkId, link] of Object.entries(projection.links)) {\n if (link.sourceField === undefined) continue\n\n const role = `keys link '${objectType.id}.${linkId}'`\n const target = linkTarget(objectType.id, linkId, link.targetObjectTypeId)\n yield* markedKeyColumn(link.sourceField, role, [target], markingsOf)\n }\n\n // The timestamp decides whether the source value or an app edit wins, which reveals how they\n // compare.\n const conflictResolution = projection.conflictResolution\n if (conflictResolution?.strategy === \"mostRecent\") {\n const role = \"decides which value wins under 'mostRecent'\"\n const target: ProjectionKeyTarget = { kind: \"type\", objectTypeId: objectType.id }\n yield* markedKeyColumn(conflictResolution.sourceTimestamp, role, [target], markingsOf)\n }\n}\n\nfunction* linkProjectionViolations(\n projection: LinkProjectionDefinition,\n markingsOf: ColumnMarkingsLookup\n): Generator<ProjectionMarkingViolation> {\n const role = `keys link '${projection.sourceObjectTypeId}.${projection.linkId}'`\n const targets = [\n linkTarget(projection.sourceObjectTypeId, projection.linkId, projection.targetObjectTypeId),\n ]\n yield* markedKeyColumn(projection.sourceField, role, targets, markingsOf)\n yield* markedKeyColumn(projection.targetField, role, targets, markingsOf)\n}\n\nfunction* telemetryProjectionViolations(\n projection: TelemetryProjectionDefinition,\n markingsOf: ColumnMarkingsLookup\n): Generator<ProjectionMarkingViolation> {\n const columns = [\n projection.objectIdField,\n projection.atField,\n ...Object.values(projection.properties).flatMap((mapping) =>\n mapping.unitField === undefined\n ? [mapping.valueField]\n : [mapping.valueField, mapping.unitField]\n ),\n ]\n\n for (const column of columns) {\n if (markingsOf(column).length > 0) yield { kind: \"telemetry\", column }\n }\n}\n\ninterface KeyRole {\n readonly role: string\n readonly targets: readonly ProjectionKeyTarget[]\n}\n\n/** Properties whose value becomes an object id or a link key, with the role they play. */\nfunction objectProjectionKeyRoles(\n projection: ObjectProjectionDefinition,\n objectType: ObjectType\n): ReadonlyMap<string, KeyRole> {\n const roles = new Map<string, KeyRole>()\n\n for (const property of objectType.properties) {\n if (!property.primary) continue\n roles.set(property.id, {\n role: `becomes the id of '${objectType.id}'`,\n targets: [{ kind: \"type\", objectTypeId: objectType.id }],\n })\n }\n\n for (const [linkId, link] of Object.entries(projection.links)) {\n if (link.sourcePropertyId === undefined) continue\n // An id that also keys a link plays both roles; messages name the link.\n roles.set(link.sourcePropertyId, {\n role: `keys link '${objectType.id}.${linkId}'`,\n targets: [\n ...(roles.get(link.sourcePropertyId)?.targets ?? []),\n linkTarget(objectType.id, linkId, link.targetObjectTypeId),\n ],\n })\n }\n\n return roles\n}\n\nfunction linkTarget(\n objectTypeId: string,\n linkId: string,\n targetObjectTypeId: string\n): ProjectionKeyTarget {\n return { kind: \"link\", objectTypeId, linkId, targetObjectTypeId }\n}\n\nfunction* markedKeyColumn(\n column: string,\n role: string,\n targets: readonly ProjectionKeyTarget[],\n markingsOf: ColumnMarkingsLookup\n): Generator<ProjectionMarkingViolation> {\n if (markingsOf(column).length > 0) yield { kind: \"markedKeyColumn\", column, role, targets }\n}\n\n// ── Messages ────────────────────────────────────────────────\n\n/** What a column carries, for messages, and whether any of it comes from elsewhere. */\ninterface CarriedMarkings {\n readonly text: string\n readonly inherited: boolean\n}\n\nfunction violationMessage(\n subject: string,\n datasetId: string,\n violation: ProjectionMarkingViolation,\n carries: (column: string) => CarriedMarkings\n): string {\n const path = (column: string) => `${datasetId}.${column}`\n\n switch (violation.kind) {\n case \"undeclared\":\n return `${subject}: property '${violation.property}' is projected from column '${path(violation.column)}', which carries ${carries(violation.column).text}. Add markings: ${markingList(violation.missing)} to the property.`\n case \"markedKeyColumn\": {\n const carried = carries(violation.column)\n const inherited = carried.inherited ? `, but carries ${carried.text}` : \"\"\n return `${subject}: column '${path(violation.column)}' ${violation.role} and cannot carry markings${inherited}.`\n }\n case \"markedKeyProperty\":\n return `${subject}: property '${violation.property}' ${violation.role} and cannot carry markings.`\n case \"telemetry\":\n return `${subject}: column '${path(violation.column)}' carries ${carries(violation.column).text}, and telemetry projections cannot read marked columns yet.`\n }\n}\n\n/**\n * `[financial] from 'raw_invoices.amount' through step 'invoices/normalize'`: each marking with one\n * path it arrived by. Markings the column declares itself have no path.\n */\nexport function describeOrigins(origins: ColumnMarkingOrigins, columnPath: string): string {\n const groups = new Map<string, string[]>()\n for (const [markingId, origin] of origins) {\n const path = originPath(origin, columnPath)\n groups.set(path, [...(groups.get(path) ?? []), markingId])\n }\n return [...groups].map(([path, markingIds]) => `${markingList(markingIds)}${path}`).join(\" and \")\n}\n\nfunction originPath(origin: MarkingOrigin, columnPath: string): string {\n const source = `${origin.column.datasetId}.${origin.column.column}`\n if (origin.steps.length === 0 && source === columnPath) return \"\"\n\n const steps = origin.steps.map((step) => `'${step}'`).join(\", \")\n return ` from '${source}' through ${origin.steps.length === 1 ? \"step\" : \"steps\"} ${steps}`\n}\n\nfunction markingList(markings: readonly string[]): string {\n return `[${markings.join(\", \")}]`\n}\n",
6
+ "import type { DatasetDefinition } from \"../datasets/types\"\nimport { lineageColumn } from \"../lake-storage/lineage\"\nimport type { DatasetColumnLineage, DatasetColumnRef } from \"../lake-storage/types\"\nimport { runStepLineage, stepReadColumns } from \"../pipelines/lineage\"\nimport type { PipelineDefinition, PipelineStepDefinition } from \"../pipelines/types\"\n\n/** A step of a registered pipeline. A step reused by two pipelines is two registered steps. */\nexport interface RegisteredStep {\n readonly pipelineId: string\n readonly step: PipelineStepDefinition\n}\n\n/** The column that declares a marking, and the steps it went through to reach a column. */\nexport interface MarkingOrigin {\n readonly column: DatasetColumnRef\n /** `pipeline/step`, upstream first. Empty when the column declares the marking itself. */\n readonly steps: readonly string[]\n}\n\n/** Each marking a column carries, with one path it arrived by. */\nexport type ColumnMarkingOrigins = ReadonlyMap<string, MarkingOrigin>\n\n/** Markings of every column of every registered dataset, derived from the definitions. */\nexport interface DatasetMarkings {\n /** Empty for a column without markings or that is not registered. */\n of(column: DatasetColumnRef): ColumnMarkingOrigins\n}\n\nexport function registeredSteps(\n pipelines: readonly PipelineDefinition[]\n): readonly RegisteredStep[] {\n return pipelines.flatMap((pipeline) =>\n pipeline.graph.nodes.map(({ step }) => ({ pipelineId: pipeline.id, step }))\n )\n}\n\n/** Lineage of each `run` step, built once per step object; undefined for other steps. */\nexport function runStepLineages(\n datasetsById: ReadonlyMap<string, DatasetDefinition>\n): (entry: RegisteredStep) => DatasetColumnLineage | undefined {\n const lineages = new Map<PipelineStepDefinition, DatasetColumnLineage>()\n\n return ({ step }) => {\n if (step.executor.kind !== \"run\") return undefined\n\n let lineage = lineages.get(step)\n if (!lineage) {\n lineage = runStepLineage(step, datasetsById)\n lineages.set(step, lineage)\n }\n\n return lineage\n }\n}\n\nexport function stepLabel(entry: RegisteredStep): string {\n return `${entry.pipelineId}/${entry.step.id}`\n}\n\ntype MutableOrigins = Map<string, MarkingOrigin>\n\nconst NO_MARKINGS: ColumnMarkingOrigins = new Map()\n\ninterface KnownLineage {\n readonly lineage: DatasetColumnLineage\n /** What a column the lineage does not list depends on. */\n readonly reads: readonly DatasetColumnRef[]\n}\n\n/**\n * Markings each column carries according to the registered definitions: the ones it declares, and\n * the ones each step derives from the columns it depends on, once that step's lineage is known.\n *\n * What decided the rows of a step's inputs decides the rows of its output, whether or not the step\n * reads a column of that input: `SELECT count(*) FROM rich` reveals which rows `rich` holds. So\n * each dataset also keeps the markings of its row dependencies, and every output column of a step\n * carries those of every input it reads, as the lineage each version records does.\n *\n * A step may read its own output and a dataset may have several producers, so a step whose output\n * gains a marking queues the steps that read that output, until nothing changes. Lineage can be\n * added in rounds: each round only revisits what the new lineage reaches.\n */\nexport class MarkingPropagation implements DatasetMarkings {\n private readonly datasetsById: ReadonlyMap<string, DatasetDefinition>\n /** Marked columns only, by dataset, built when a dataset is first looked at. */\n private readonly markings = new Map<string, Map<string, MutableOrigins>>()\n /** Markings of what decides each dataset's rows, for datasets a step writes. */\n private readonly rowMarkings = new Map<string, MutableOrigins>()\n private readonly ordered: readonly RegisteredStep[]\n private readonly readers = new Map<string, RegisteredStep[]>()\n private readonly known = new Map<RegisteredStep, KnownLineage>()\n private readonly queue = new Set<RegisteredStep>()\n\n constructor(\n datasetsById: ReadonlyMap<string, DatasetDefinition>,\n steps: readonly RegisteredStep[]\n ) {\n this.datasetsById = datasetsById\n this.ordered = inDependencyOrder(steps)\n\n for (const entry of steps) {\n for (const input of new Set(Object.values(entry.step.inputs).map((dataset) => dataset.id))) {\n appendTo(this.readers, input, entry)\n }\n }\n }\n\n of(ref: DatasetColumnRef): ColumnMarkingOrigins {\n return this.markedColumns(ref.datasetId).get(ref.column) ?? NO_MARKINGS\n }\n\n /**\n * Derive markings through every step `lineageOf` knows the lineage of. A step it returns null\n * for derives nothing until a later call knows it.\n */\n derive(lineageOf: (entry: RegisteredStep) => DatasetColumnLineage | null): this {\n for (const entry of this.ordered) {\n if (this.known.has(entry)) continue\n\n const lineage = lineageOf(entry)\n if (!lineage) continue\n\n this.known.set(entry, { lineage, reads: stepReadColumns(entry.step) })\n this.queue.add(entry)\n }\n\n for (const entry of this.queue) {\n this.queue.delete(entry)\n const known = this.known.get(entry)\n if (!known || !this.apply(entry, known)) continue\n\n // Entries added while iterating a Set are visited, so the queue drains in this loop.\n for (const reader of this.readers.get(entry.step.output.id) ?? []) {\n if (this.known.has(reader)) this.queue.add(reader)\n }\n }\n\n return this\n }\n\n /** Whether the output's rows or any output column gained a marking. */\n private apply(entry: RegisteredStep, { lineage, reads }: KnownLineage): boolean {\n const label = stepLabel(entry)\n const rows = this.union(lineage.rows)\n\n for (const input of new Set(Object.values(entry.step.inputs).map((dataset) => dataset.id))) {\n for (const [markingId, origin] of this.rowMarkings.get(input) ?? []) {\n if (!rows.has(markingId)) rows.set(markingId, origin)\n }\n }\n\n let everyRead: ReadonlyMap<string, MarkingOrigin> | undefined\n let changed = false\n\n const outputId = entry.step.output.id\n let outputRows = this.rowMarkings.get(outputId)\n\n for (const [markingId, origin] of rows) {\n if (outputRows?.has(markingId)) continue\n if (!outputRows) {\n outputRows = new Map()\n this.rowMarkings.set(outputId, outputRows)\n }\n\n outputRows.set(markingId, { column: origin.column, steps: [...origin.steps, label] })\n changed = true\n }\n\n const marked = this.markedColumns(outputId)\n for (const { name: column } of this.datasetsById.get(outputId)?.schema.columns ?? []) {\n const values = lineageColumn(lineage, column)\n const valueSource = values ? this.union(values) : (everyRead ?? this.union(reads))\n if (!values) everyRead = valueSource\n\n for (const source of [rows, valueSource]) {\n for (const [markingId, origin] of source) {\n let origins = marked.get(column)\n if (origins?.has(markingId)) continue\n if (!origins) {\n origins = new Map()\n marked.set(column, origins)\n }\n\n origins.set(markingId, { column: origin.column, steps: [...origin.steps, label] })\n changed = true\n }\n }\n }\n\n return changed\n }\n\n private markedColumns(datasetId: string): Map<string, MutableOrigins> {\n let columns = this.markings.get(datasetId)\n if (!columns) {\n columns = new Map()\n for (const column of this.datasetsById.get(datasetId)?.schema.columns ?? []) {\n if (!column.markings?.length) continue\n\n const origin = { column: { datasetId, column: column.name }, steps: [] }\n columns.set(column.name, new Map(column.markings.map((id) => [id, origin])))\n }\n\n this.markings.set(datasetId, columns)\n }\n\n return columns\n }\n\n /** Every marking of these columns, each with the first origin found. */\n private union(columns: readonly DatasetColumnRef[]): MutableOrigins {\n const union: MutableOrigins = new Map()\n for (const column of columns) {\n for (const [markingId, origin] of this.of(column)) {\n if (!union.has(markingId)) union.set(markingId, origin)\n }\n }\n return union\n }\n}\n\n/** Producers before consumers, so most markings arrive by their shortest path. */\nfunction inDependencyOrder(steps: readonly RegisteredStep[]): readonly RegisteredStep[] {\n const producers = producersByDataset(steps)\n const ordered: RegisteredStep[] = []\n const visited = new Set<RegisteredStep>()\n\n const visit = (entry: RegisteredStep): void => {\n if (visited.has(entry)) return\n\n visited.add(entry)\n for (const input of Object.values(entry.step.inputs)) {\n for (const producer of producers.get(input.id) ?? []) visit(producer)\n }\n\n ordered.push(entry)\n }\n\n for (const entry of steps) visit(entry)\n return ordered\n}\n\nfunction producersByDataset(\n steps: readonly RegisteredStep[]\n): ReadonlyMap<string, readonly RegisteredStep[]> {\n const producers = new Map<string, RegisteredStep[]>()\n for (const entry of steps) appendTo(producers, entry.step.output.id, entry)\n return producers\n}\n\nfunction appendTo<TValue>(map: Map<string, TValue[]>, key: string, value: TValue): void {\n const values = map.get(key)\n if (values) values.push(value)\n else map.set(key, [value])\n}\n",
7
+ "import type { ProjectionEventOrigin } from \"../events/envelope\"\nimport type { DatasetVersion } from \"../lake-storage/types\"\nimport type { OntologyDefinitionCatalog } from \"../ontology/registry\"\nimport type { PipelineDefinition } from \"../pipelines/types\"\nimport type { LinkProjectionDefinition, ObjectProjectionDefinition } from \"../projections/types\"\nimport type { ActiveOntologySource } from \"../storage/ontology\"\nimport { type AppliedContribution, NO_CONTRIBUTION } from \"./applied-markings-snapshot\"\nimport type { VersionClassification } from \"./dataset-version-markings\"\nimport { registeredSteps } from \"./marking-propagation\"\nimport { type ProjectionKeyTarget, projectionSurplus } from \"./projection-markings\"\n\nexport type SourceProjection = ObjectProjectionDefinition | LinkProjectionDefinition\n\n/** What reading a projection's applied version from the lake gave. */\nexport type AppliedVersionRead =\n | {\n readonly kind: \"read\"\n readonly version: DatasetVersion\n readonly classification: VersionClassification\n }\n | { readonly kind: \"missing\" }\n | { readonly kind: \"failed\"; readonly error: unknown }\n\nexport interface AppliedContributionContext {\n readonly ontology: Pick<OntologyDefinitionCatalog, \"getObjectTypeById\">\n /** The revision of a projection's current definition. */\n readonly revisionOf: (projectionId: string) => string\n /** What a version that cannot be read may carry. */\n readonly everyMarking: ReadonlySet<string>\n /** The pipeline that writes a dataset in the current code, for messages. */\n readonly pipelineOf: (datasetId: string) => string | undefined\n}\n\n/**\n * What one projection's applied version adds to the code's markings, with the notice that explains\n * it. It reads nothing: the caller reads and classifies the version.\n *\n * - A version that could not be read seals the projection's target with every marking.\n * - Objects written by an earlier definition, which may have mapped any column, seal it with every\n * marking of the version.\n * - Otherwise a property keeps the markings its column carries beyond its declaration, and a key\n * column that carries markings seals what it keys.\n */\nexport function appliedContribution(\n projection: SourceProjection,\n source: ActiveOntologySource,\n read: AppliedVersionRead,\n context: AppliedContributionContext\n): AppliedContribution {\n const { datasetId, versionId } = source.datasetVersion\n const subject = `version '${versionId}' of '${datasetId}'`\n const target = projectionTarget(projection)\n const hint = rerunHint(datasetId, read.kind === \"read\" ? read.version : undefined, context)\n const every = [...context.everyMarking].sort()\n\n if (read.kind === \"failed\") {\n return sealed(projection.id, target, every, hint, {\n reason: `the ${subject} it applied, which could not be read from the lake,`,\n detail: `applied ${subject}, which could not be read from the lake: ${sentence(errorMessage(read.error))}`,\n })\n }\n\n if (read.kind === \"missing\") {\n return sealed(projection.id, target, every, hint, {\n reason: `the ${subject} it applied, which the lake no longer has,`,\n detail: `applied ${subject}, which the lake no longer has.`,\n })\n }\n\n const { columns, conservative } = read.classification\n const because =\n conservative === undefined\n ? \"\"\n : ` The version was classified with every marking its sources could hold, because ${conservative}.`\n\n if (\n datasetId !== projection.datasetId ||\n source.projectionRevision !== context.revisionOf(projection.id)\n ) {\n const markings = appliedVersionMarkings(read, context.everyMarking)\n return sealed(projection.id, target, markings, hint, {\n reason: `the ${subject} it applied under an earlier definition of the projection`,\n detail: `applied ${subject} under an earlier definition of the projection, and that version carries ${markingList(markings)}.${because}`,\n })\n }\n\n const markingsOf = (column: string) => [...(columns.get(column) ?? [])].sort()\n const surplus = projectionSurplus(projection, context.ontology, markingsOf)\n if (surplus.properties.length === 0 && surplus.keys.length === 0) return NO_CONTRIBUTION\n\n const column = (name: string) => `'${datasetId}.${name}'`\n const seals = surplus.keys.map((key) => ({\n target: key.target,\n seal: {\n projectionId: projection.id,\n markings: key.markings,\n reason: `in the version '${versionId}' it applied, column ${column(key.column)}, which ${key.role},`,\n },\n }))\n\n const details = [\n ...surplus.keys.map(\n (key) => `column ${column(key.column)} ${key.role} and carries ${markingList(key.markings)}`\n ),\n ...surplus.properties.map(\n (property) =>\n `property '${property.objectTypeId}.${property.propertyId}' is projected from column ${column(property.column)}, which carries ${markingList(property.markings)}`\n ),\n ]\n\n const consequences: string[] = []\n if (seals.length > 0) {\n const markings = [...new Set(seals.flatMap(({ seal }) => seal.markings))].sort()\n consequences.push(\n `${describeTargets(seals.map(({ target }) => target))} cannot be read without clearance for ${markingList(markings)}`\n )\n }\n\n if (surplus.properties.length > 0) {\n const names = surplus.properties.map((p) => `'${p.objectTypeId}.${p.propertyId}'`)\n const verb = surplus.properties.length === 1 ? \"keeps\" : \"keep\"\n consequences.push(`${describeNames(names)} ${verb} these markings`)\n }\n\n return {\n properties: surplus.properties.map(({ objectTypeId, propertyId, markings }) => ({\n objectTypeId,\n propertyId,\n markings,\n })),\n seals,\n notice: {\n projectionId: projection.id,\n sealed: seals.length > 0,\n message: `[Sixb] Projection '${projection.id}' applied ${subject}, in which ${details.join(\"; \")}.${because} ${capitalize(consequences.join(\", and \"))} until the projection applies a version the code allows. ${hint}`,\n },\n }\n}\n\n/** Every marking the version carries in any column; every marking when it could not be read. */\nexport function appliedVersionMarkings(\n read: AppliedVersionRead,\n everyMarking: ReadonlySet<string>\n): readonly string[] {\n if (read.kind !== \"read\") return [...everyMarking].sort()\n\n const { columns } = read.classification\n return [...new Set([...columns.values()].flatMap((set) => [...set]))].sort()\n}\n\n/** An object event a projection emitted: the version its values came from, and its type. */\nexport type EventOriginRef = Pick<\n ProjectionEventOrigin,\n \"projectionId\" | \"datasetId\" | \"datasetVersionId\"\n> & { readonly objectTypeId: string }\n\n/**\n * The markings an object event's origin version carries on each property its projection maps.\n * When the projection now maps another dataset or type, or the version cannot be read, every\n * property but the primary one carries every marking it could, as objects written under an\n * earlier definition do.\n */\nexport function eventOriginMarkings(\n projection: ObjectProjectionDefinition,\n origin: EventOriginRef,\n read: AppliedVersionRead,\n context: Pick<AppliedContributionContext, \"ontology\" | \"everyMarking\">\n): AppliedContribution[\"properties\"] {\n const { objectTypeId } = origin\n\n if (\n read.kind === \"read\" &&\n projection.datasetId === origin.datasetId &&\n projection.objectTypeId === objectTypeId\n ) {\n const { columns } = read.classification\n return Object.entries(projection.properties).flatMap(([propertyId, column]) => {\n const markings = [...(columns.get(column) ?? [])].sort()\n return markings.length === 0 ? [] : [{ objectTypeId, propertyId, markings }]\n })\n }\n\n const markings = appliedVersionMarkings(read, context.everyMarking)\n if (markings.length === 0) return []\n\n return (context.ontology.getObjectTypeById(objectTypeId)?.properties ?? [])\n .filter((property) => !property.primary)\n .map((property) => ({ objectTypeId, propertyId: property.id, markings }))\n}\n\n/** The pipeline that writes each dataset in the current code. */\nexport function producingPipelines(\n pipelines: readonly PipelineDefinition[]\n): (datasetId: string) => string | undefined {\n const byDataset = new Map<string, string>()\n for (const { pipelineId, step } of registeredSteps(pipelines)) {\n if (!byDataset.has(step.output.id)) byDataset.set(step.output.id, pipelineId)\n }\n\n return (datasetId) => byDataset.get(datasetId)\n}\n\n/** Seal the projection's whole target: its object type, or its link. */\nfunction sealed(\n projectionId: string,\n target: ProjectionKeyTarget,\n markings: readonly string[],\n hint: string,\n text: { readonly reason: string; readonly detail: string }\n): AppliedContribution {\n if (markings.length === 0) return NO_CONTRIBUTION\n return {\n properties: [],\n seals: [{ target, seal: { projectionId, markings, reason: text.reason } }],\n notice: {\n projectionId,\n sealed: true,\n message: `[Sixb] Projection '${projectionId}' ${text.detail} ${describeTargets([target])} cannot be read without clearance for ${markingList(markings)} until the projection applies a version the code allows. ${hint}`,\n },\n }\n}\n\nfunction projectionTarget(projection: SourceProjection): ProjectionKeyTarget {\n return projection._tag === \"ObjectProjectionDefinition\"\n ? { kind: \"type\", objectTypeId: projection.objectTypeId }\n : {\n kind: \"link\",\n objectTypeId: projection.sourceObjectTypeId,\n linkId: projection.linkId,\n targetObjectTypeId: projection.targetObjectTypeId,\n }\n}\n\nfunction rerunHint(\n datasetId: string,\n version: DatasetVersion | undefined,\n context: AppliedContributionContext\n): string {\n const pipelineId =\n context.pipelineOf(datasetId) ??\n (version?.producer?.kind === \"pipeline\" ? version.producer.id : undefined)\n return pipelineId === undefined\n ? `Write a new version of '${datasetId}' to replace it.`\n : `Rerun pipeline '${pipelineId}' to replace it.`\n}\n\nfunction describeTargets(targets: readonly ProjectionKeyTarget[]): string {\n return describeNames(\n targets.map((target) =>\n target.kind === \"type\"\n ? `'${target.objectTypeId}'`\n : `link '${target.objectTypeId}.${target.linkId}'`\n )\n )\n}\n\nfunction describeNames(names: readonly string[]): string {\n const unique = [...new Set(names)]\n const last = unique.pop() ?? \"\"\n return unique.length === 0 ? last : `${unique.join(\", \")} and ${last}`\n}\n\nfunction capitalize(text: string): string {\n return text.charAt(0).toUpperCase() + text.slice(1)\n}\n\nexport function sentence(text: string): string {\n return text.endsWith(\".\") ? text : `${text}.`\n}\n\nfunction markingList(markings: readonly string[]): string {\n return `[${markings.join(\", \")}]`\n}\n\nexport function errorMessage(error: unknown): string {\n return error instanceof Error ? error.message : String(error)\n}\n",
8
+ "import type { AppliedMarkings } from \"./applied-markings\"\nimport { errorMessage } from \"./applied-markings-contribution\"\n\nconst appliedMarkingsKey: unique symbol = Symbol(\"sixb.appliedMarkings\")\n\ninterface AppliedMarkingsOwner {\n readonly [appliedMarkingsKey]?: AppliedMarkings\n}\n\n/** One snapshot per host, so every reader shares it and its resolved clearances. */\nexport function registerAppliedMarkings(owner: object, markings: AppliedMarkings): void {\n const registered = (owner as AppliedMarkingsOwner)[appliedMarkingsKey]\n if (registered && registered !== markings) {\n throw new Error(\"[Sixb] Applied markings are already registered for this owner.\")\n }\n\n Object.defineProperty(owner, appliedMarkingsKey, {\n configurable: false,\n enumerable: false,\n value: markings,\n writable: false,\n })\n}\n\nexport function getAppliedMarkings(owner: object): AppliedMarkings {\n const markings = (owner as AppliedMarkingsOwner)[appliedMarkingsKey]\n if (markings) return markings\n throw new Error(\"[Sixb] Applied markings are not registered for this runtime.\")\n}\n\n/**\n * Read the applied versions ahead of the first request that needs them. A failure is only\n * reported here: that request reads them again, and fails closed if it cannot.\n */\nexport function warmAppliedMarkings(owner: object): void {\n getAppliedMarkings(owner)\n .current()\n .catch((error: unknown) => {\n console.warn(errorMessage(error))\n })\n}\n",
9
+ "/**\n * Shared, immutable sets of marking ids.\n *\n * Every column of every resolved version holds one of a handful of distinct sets, so each distinct\n * set is created once and compared by identity.\n */\nexport class MarkingSets {\n readonly empty: ReadonlySet<string> = new Set()\n private readonly sets = new Map<string, ReadonlySet<string>>([[\"\", this.empty]])\n\n of(markingIds: Iterable<string> | undefined): ReadonlySet<string> {\n // Most columns carry no marking.\n if (markingIds === undefined || (Array.isArray(markingIds) && markingIds.length === 0)) {\n return this.empty\n }\n\n const sorted = [...new Set(markingIds)].sort()\n const key = sorted.join(\"\\u0000\")\n\n let set = this.sets.get(key)\n if (!set) {\n set = new Set(sorted)\n this.sets.set(key, set)\n }\n\n return set\n }\n\n /** The union of sets this instance created. */\n union(sets: Iterable<ReadonlySet<string> | undefined>): ReadonlySet<string> {\n let single: ReadonlySet<string> | undefined\n const ids: string[] = []\n\n for (const set of sets) {\n if (!set || set.size === 0) continue\n single = single === undefined && ids.length === 0 ? set : undefined\n ids.push(...set)\n }\n\n return single ?? this.of(ids)\n }\n}\n",
10
+ "import type { DatasetDefinition } from \"../datasets/types\"\nimport { isUnknownLineage, lineageColumn, versionLineage } from \"../lake-storage/lineage\"\nimport type { DatasetColumnRef, DatasetVersion, LakeStorage } from \"../lake-storage/types\"\nimport { MarkingSets } from \"./marking-sets\"\n\n/** Markings of each column of one dataset version. A column without markings has an empty set. */\nexport type VersionColumnMarkings = ReadonlyMap<string, ReadonlySet<string>>\n\nexport interface VersionClassification {\n readonly columns: VersionColumnMarkings\n /**\n * Why part of the version was classified conservatively, with every marking it could hold.\n * Absent when every column was classified from its lineage.\n */\n readonly conservative?: string\n}\n\n/**\n * Markings each version of a dataset carries.\n *\n * Markings are never stored. A column carries the markings its registered dataset declares, and\n * those every column its lineage lists declares. The version records that lineage resolved across\n * every upstream step and every row it keeps (`DatasetVersion.lineage`), so a version keeps the\n * classification of the code that produced it, and classifying it reads no other version.\n *\n * Wherever the record does not say what a column holds (no lineage on a pipeline version, or on\n * any version of a provider that does not declare `recordsLineage`, an unknown history, a column\n * it does not list, a dataset no longer registered) the column is classified with every marking\n * the project declares.\n */\nexport interface DatasetVersionMarkings {\n classify(version: DatasetVersion): VersionClassification\n /**\n * Every marking declared on a registered column. Every classification, conservative ones\n * included, is drawn from it, so a reader cleared for all of it needs no classification. Empty\n * when the project declares no column markings.\n */\n everyMarking(): ReadonlySet<string>\n}\n\nexport interface DatasetVersionMarkingsOptions {\n readonly datasets: { list(): readonly DatasetDefinition[] }\n /** The lake the versions are read from: whether it records lineage on every version. */\n readonly lakeStorage: Pick<LakeStorage, \"recordsLineage\">\n}\n\nexport function createDatasetVersionMarkings(\n options: DatasetVersionMarkingsOptions\n): DatasetVersionMarkings {\n const sets = new MarkingSets()\n\n // Built on first use: a host that never classifies a version pays nothing for it.\n let declared: ReadonlyMap<string, ReadonlyMap<string, ReadonlySet<string>>> | undefined\n const declaredByDataset = () =>\n (declared ??= new Map(\n options.datasets\n .list()\n .map((dataset) => [\n dataset.id,\n new Map(dataset.schema.columns.map((column) => [column.name, sets.of(column.markings)])),\n ])\n ))\n\n /**\n * Every marking a registered column declares: what a column may hold where its record does not\n * say. The pipelines that wrote it may have read datasets the current code no longer reads, so\n * nothing narrower is safe.\n */\n let every: ReadonlySet<string> | undefined\n const everyMarking = () =>\n (every ??= sets.union(\n [...declaredByDataset().values()].flatMap((columns) => [...columns.values()])\n ))\n\n const classify = (version: DatasetVersion): VersionClassification => {\n const subject = `version '${version.versionId}' of '${version.datasetId}'`\n const own = declaredByDataset().get(version.datasetId)\n\n // No definition says what its columns declare: they may hold anything a column declares.\n if (!own) return conservatively(version, `dataset '${version.datasetId}' is not registered`)\n\n const lineage = versionLineage(version, options.lakeStorage)\n if (isUnknownLineage(lineage)) {\n // A reason core derived names this version. A recorded one names where the lineage was\n // lost: upstream, or, for a provider that could not decode it, this version's own record.\n return conservatively(\n version,\n lineage === version.lineage\n ? `the lineage of ${subject} is unknown: ${lineage.unknown}`\n : lineage.unknown\n )\n }\n\n let conservative: string | undefined\n const markingsOf = (ref: DatasetColumnRef): ReadonlySet<string> | undefined => {\n const columns = declaredByDataset().get(ref.datasetId)\n if (columns) return columns.get(ref.column)\n conservative ??= `dataset '${ref.datasetId}' is not registered`\n return everyMarking()\n }\n\n const rows = sets.union(lineage.rows.map(markingsOf))\n const columns = new Map(\n version.schema.columns.map(({ name }) => {\n const values = lineageColumn(lineage, name)\n if (!values) {\n conservative ??= `${subject} recorded no lineage for column '${name}'`\n return [name, everyMarking()]\n }\n\n return [name, sets.union([own.get(name), rows, ...values.map(markingsOf)])]\n })\n )\n\n return { columns, ...(conservative === undefined ? {} : { conservative }) }\n }\n\n const conservatively = (version: DatasetVersion, reason: string): VersionClassification => {\n const markings = everyMarking()\n return {\n columns: new Map(version.schema.columns.map(({ name }) => [name, markings])),\n conservative: reason,\n }\n }\n\n return { classify, everyMarking }\n}\n\n// ── Host capability ─────────────────────────────────────────\n\nconst datasetVersionMarkingsKey: unique symbol = Symbol(\"sixb.datasetVersionMarkings\")\n\ninterface DatasetVersionMarkingsOwner {\n readonly [datasetVersionMarkingsKey]?: DatasetVersionMarkings\n}\n\n/** One classifier per host, so every reader shares the markings it reads from the definitions. */\nexport function registerDatasetVersionMarkings(\n owner: object,\n markings: DatasetVersionMarkings\n): void {\n const registered = (owner as DatasetVersionMarkingsOwner)[datasetVersionMarkingsKey]\n if (registered && registered !== markings) {\n throw new Error(\"[Sixb] Dataset version markings are already registered for this owner.\")\n }\n\n Object.defineProperty(owner, datasetVersionMarkingsKey, {\n configurable: false,\n enumerable: false,\n value: markings,\n writable: false,\n })\n}\n\nexport function getDatasetVersionMarkings(owner: object): DatasetVersionMarkings {\n const markings = (owner as DatasetVersionMarkingsOwner)[datasetVersionMarkingsKey]\n if (markings) return markings\n throw new Error(\"[Sixb] Dataset version markings are not registered for this runtime.\")\n}\n\nexport function shareDatasetVersionMarkings(source: object, target: object): void {\n registerDatasetVersionMarkings(target, getDatasetVersionMarkings(source))\n}\n"
11
+ ],
12
+ "mappings": "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",
13
+ "debugId": "BCFE94079FF12A1E64756E2164756E21",
14
+ "names": []
15
+ }
@@ -0,0 +1,13 @@
1
+ // @bun
2
+ // src/lake-storage/errors.ts
3
+ class LakeStorageError2 extends Error {
4
+ name = "LakeStorageError";
5
+ }
6
+
7
+ class LakeConcurrencyError2 extends LakeStorageError2 {
8
+ name = "LakeConcurrencyError";
9
+ }
10
+
11
+ export { LakeStorageError2, LakeConcurrencyError2 };
12
+
13
+ //# debugId=1ABED9E92576F82564756E2164756E21
@@ -0,0 +1,10 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/lake-storage/errors.ts"],
4
+ "sourcesContent": [
5
+ "/**\n * Error for lake-storage invariants and invalid lake operations.\n */\nexport class LakeStorageError extends Error {\n readonly name: string = \"LakeStorageError\"\n}\n\n/** A known, uncommitted version/transaction conflict; safe to retry staged changes. */\nexport class LakeConcurrencyError extends LakeStorageError {\n override readonly name = \"LakeConcurrencyError\"\n}\n"
6
+ ],
7
+ "mappings": ";;AAGO,MAAM,0BAAyB,MAAM;AAAA,EACjC,OAAe;AAC1B;AAAA;AAGO,MAAM,8BAA6B,kBAAiB;AAAA,EACvC,OAAO;AAC3B;",
8
+ "debugId": "1ABED9E92576F82564756E2164756E21",
9
+ "names": []
10
+ }
@@ -2,16 +2,21 @@
2
2
  import {
3
3
  isFileRef2,
4
4
  isValidFileRef
5
- } from "./chunk-jhm3zsa7.js";
5
+ } from "./chunk-wkv3h3q7.js";
6
6
  import {
7
- withFailureMessage
8
- } from "./chunk-z3y5kg1x.js";
7
+ withFailureMessage2
8
+ } from "./chunk-6eqsgvxk.js";
9
9
  import {
10
- assertEmbeddingModelRef
11
- } from "./chunk-kyjcwqz6.js";
10
+ isUserRef,
11
+ isCurrentUser,
12
+ currentUserNotStorableMessage
13
+ } from "./chunk-4y26vs3v.js";
12
14
  import {
13
15
  OntologyValidationError2
14
16
  } from "./chunk-cqr3acm1.js";
17
+ import {
18
+ assertEmbeddingModelRef
19
+ } from "./chunk-kyjcwqz6.js";
15
20
  import {
16
21
  normalizeDecimalValue2,
17
22
  isDecimalString2
@@ -21,77 +26,6 @@ import {
21
26
  cloneJsonValue2
22
27
  } from "./chunk-wy0qdqfm.js";
23
28
 
24
- // src/ontology/user-ref.ts
25
- function userRef2(id) {
26
- if (typeof id !== "string" || !id.trim()) {
27
- throw new OntologyValidationError2("[Sixb] User reference id must not be empty.");
28
- }
29
- return Object.freeze({ type: "user", id });
30
- }
31
- function isUserRef(value) {
32
- if (typeof value !== "object" || value === null || Array.isArray(value))
33
- return false;
34
- const record = value;
35
- return Object.keys(record).every((key) => key === "type" || key === "id") && record.type === "user" && typeof record.id === "string" && record.id.trim().length > 0;
36
- }
37
- function collectUserRefIds(schema, value, valueTypesById, into, seenValueTypeIds = new Set) {
38
- if (value === null || value === undefined)
39
- return into;
40
- if (typeof schema === "string") {
41
- if (schema === "userRef" && isUserRef(value))
42
- into.add(value.id);
43
- return into;
44
- }
45
- switch (schema.type) {
46
- case "array":
47
- if (Array.isArray(value)) {
48
- for (const item of value) {
49
- collectUserRefIds(schema.items, item, valueTypesById, into, seenValueTypeIds);
50
- }
51
- }
52
- return into;
53
- case "map":
54
- if (isRecord(value)) {
55
- for (const item of Object.values(value)) {
56
- collectUserRefIds(schema.valueSchema, item, valueTypesById, into, seenValueTypeIds);
57
- }
58
- }
59
- return into;
60
- case "object":
61
- if (isRecord(value)) {
62
- for (const [fieldId, field] of Object.entries(schema.properties)) {
63
- collectUserRefIds(field.schema, value[fieldId], valueTypesById, into, seenValueTypeIds);
64
- }
65
- }
66
- return into;
67
- case "valueTypeRef": {
68
- if (seenValueTypeIds.has(schema.valueTypeId))
69
- return into;
70
- const resolved = schema._resolved ?? valueTypesById.get(schema.valueTypeId)?.schema;
71
- if (!resolved)
72
- return into;
73
- return collectUserRefIds(resolved, value, valueTypesById, into, new Set([...seenValueTypeIds, schema.valueTypeId]));
74
- }
75
- case "enum":
76
- return into;
77
- }
78
- }
79
- function userReferenceProblem(path, id, status) {
80
- switch (status) {
81
- case "active":
82
- return;
83
- case null:
84
- return `[Sixb] ${path} references user '${id}', which does not exist.`;
85
- case "unverifiable":
86
- return `[Sixb] ${path} references user '${id}', but this runtime has no auth storage to verify users. Configure storage with auth to write user references.`;
87
- default:
88
- return `[Sixb] ${path} references user '${id}', who is ${status}. Only active users can be newly referenced; existing references are kept.`;
89
- }
90
- }
91
- function isRecord(value) {
92
- return typeof value === "object" && value !== null && !Array.isArray(value);
93
- }
94
-
95
29
  // src/ontology/validation/schema.ts
96
30
  function validateSchemaValue2(schema, value, path, valueTypesById, diagnosticPath = path) {
97
31
  if (typeof schema === "string") {
@@ -99,50 +33,53 @@ function validateSchemaValue2(schema, value, path, valueTypesById, diagnosticPat
99
33
  case "string":
100
34
  case "uuid": {
101
35
  if (typeof value !== "string") {
102
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Property ${path} must be a string`), `Property ${diagnosticPath} must be a string.`);
36
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Property ${path} must be a string`), `Property ${diagnosticPath} must be a string.`);
103
37
  }
104
38
  return;
105
39
  }
106
40
  case "boolean": {
107
41
  if (typeof value !== "boolean") {
108
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Property ${path} must be a boolean`), `Property ${diagnosticPath} must be a boolean.`);
42
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Property ${path} must be a boolean`), `Property ${diagnosticPath} must be a boolean.`);
109
43
  }
110
44
  return;
111
45
  }
112
46
  case "integer": {
113
47
  if (typeof value !== "number" || !Number.isInteger(value)) {
114
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Property ${path} must be an integer`), `Property ${diagnosticPath} must be an integer.`);
48
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Property ${path} must be an integer`), `Property ${diagnosticPath} must be an integer.`);
115
49
  }
116
50
  return;
117
51
  }
118
52
  case "double": {
119
53
  if (typeof value !== "number" || !Number.isFinite(value)) {
120
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Property ${path} must be numeric`), `Property ${diagnosticPath} must be numeric.`);
54
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Property ${path} must be numeric`), `Property ${diagnosticPath} must be numeric.`);
121
55
  }
122
56
  return;
123
57
  }
124
58
  case "decimal": {
125
59
  if (!isDecimalString2(value)) {
126
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Property ${path} must be an exact decimal string`), `Property ${diagnosticPath} must be an exact decimal string.`);
60
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Property ${path} must be an exact decimal string`), `Property ${diagnosticPath} must be an exact decimal string.`);
127
61
  }
128
62
  return;
129
63
  }
130
64
  case "date":
131
65
  case "timestamp": {
132
66
  if (!(value instanceof Date) && typeof value !== "string") {
133
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Property ${path} must be a Date or ISO string`), `Property ${diagnosticPath} must be a Date or ISO string.`);
67
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Property ${path} must be a Date or ISO string`), `Property ${diagnosticPath} must be a Date or ISO string.`);
134
68
  }
135
69
  return;
136
70
  }
137
71
  case "fileRef": {
138
72
  if (!isFileRef2(value)) {
139
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Property ${path} must be a fileRef`), `Property ${diagnosticPath} must be a fileRef.`);
73
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Property ${path} must be a fileRef`), `Property ${diagnosticPath} must be a fileRef.`);
140
74
  }
141
75
  return;
142
76
  }
143
77
  case "userRef": {
78
+ if (isCurrentUser(value)) {
79
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] ${currentUserNotStorableMessage(`Property ${path}`)}`), currentUserNotStorableMessage(`Property ${diagnosticPath}`));
80
+ }
144
81
  if (!isUserRef(value)) {
145
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Property ${path} must be a user reference { type: "user", id }`), `Property ${diagnosticPath} must be a user reference.`);
82
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Property ${path} must be a user reference { type: "user", id }`), `Property ${diagnosticPath} must be a user reference.`);
146
83
  }
147
84
  return;
148
85
  }
@@ -151,13 +88,13 @@ function validateSchemaValue2(schema, value, path, valueTypesById, diagnosticPat
151
88
  }
152
89
  if (schema.type === "enum") {
153
90
  if (!schema.values.includes(value)) {
154
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Property ${path} must be one of: ${schema.values.join(", ")}`), `Property ${diagnosticPath} must match a declared enum value.`);
91
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Property ${path} must be one of: ${schema.values.join(", ")}`), `Property ${diagnosticPath} must match a declared enum value.`);
155
92
  }
156
93
  return;
157
94
  }
158
95
  if (schema.type === "array") {
159
96
  if (!Array.isArray(value)) {
160
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Property ${path} must be an array`), `Property ${diagnosticPath} must be an array.`);
97
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Property ${path} must be an array`), `Property ${diagnosticPath} must be an array.`);
161
98
  }
162
99
  for (let index = 0;index < value.length; index += 1) {
163
100
  validateSchemaValue2(schema.items, value[index], `${path}[${index}]`, valueTypesById, `${diagnosticPath}[${index}]`);
@@ -166,7 +103,7 @@ function validateSchemaValue2(schema, value, path, valueTypesById, diagnosticPat
166
103
  }
167
104
  if (schema.type === "map") {
168
105
  if (!isRecord2(value)) {
169
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Property ${path} must be an object map`), `Property ${diagnosticPath} must be an object map.`);
106
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Property ${path} must be an object map`), `Property ${diagnosticPath} must be an object map.`);
170
107
  }
171
108
  for (const [key, entry] of Object.entries(value)) {
172
109
  validateSchemaValue2(schema.valueSchema, entry, `${path}.${key}`, valueTypesById, `${diagnosticPath}.*`);
@@ -175,20 +112,20 @@ function validateSchemaValue2(schema, value, path, valueTypesById, diagnosticPat
175
112
  }
176
113
  if (schema.type === "object") {
177
114
  if (!isRecord2(value)) {
178
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Property ${path} must be an object`), `Property ${diagnosticPath} must be an object.`);
115
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Property ${path} must be an object`), `Property ${diagnosticPath} must be an object.`);
179
116
  }
180
117
  const fields = schema.properties;
181
118
  const fieldIds = new Set(Object.keys(fields));
182
119
  for (const fieldId of Object.keys(value)) {
183
120
  if (!fieldIds.has(fieldId)) {
184
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Unknown field '${path}.${fieldId}'`), `Object ${diagnosticPath} contains an undeclared field.`);
121
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Unknown field '${path}.${fieldId}'`), `Object ${diagnosticPath} contains an undeclared field.`);
185
122
  }
186
123
  }
187
124
  for (const [fieldId, field] of Object.entries(fields)) {
188
125
  const fieldValue = value[fieldId];
189
126
  if (fieldValue === undefined) {
190
127
  if (field.required) {
191
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Missing required field '${path}.${fieldId}'`), `Missing required field '${diagnosticPath}.${fieldId}'.`);
128
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Missing required field '${path}.${fieldId}'`), `Missing required field '${diagnosticPath}.${fieldId}'.`);
192
129
  }
193
130
  continue;
194
131
  }
@@ -203,7 +140,7 @@ function validateSchemaValue2(schema, value, path, valueTypesById, diagnosticPat
203
140
  function assertValidFileRefs2(value, path) {
204
141
  if (isFileRef2(value)) {
205
142
  if (!isValidFileRef(value)) {
206
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Property ${path}.mediaType must be one media type, such as "application/pdf"`), `Property ${path}.mediaType must be one media type, such as "application/pdf".`);
143
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Property ${path}.mediaType must be one media type, such as "application/pdf"`), `Property ${path}.mediaType must be one media type, such as "application/pdf".`);
207
144
  }
208
145
  return;
209
146
  }
@@ -220,7 +157,7 @@ function validateFieldValue(field, value, path, valueTypesById, diagnosticPath =
220
157
  if (field.nullable) {
221
158
  return;
222
159
  }
223
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Field ${path} cannot be null`), `Field ${diagnosticPath} cannot be null.`);
160
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Field ${path} cannot be null`), `Field ${diagnosticPath} cannot be null.`);
224
161
  }
225
162
  validateSchemaValue2(field.schema, value, path, valueTypesById, diagnosticPath);
226
163
  }
@@ -421,14 +358,20 @@ var comparable = {
421
358
  shareableParam: true
422
359
  };
423
360
  var PRIMITIVE_TRAITS = {
424
- string: { ...comparable, queryScalarKind: "string", text: true, contains: true },
425
- uuid: { ...comparable, queryScalarKind: "uuid", contains: true },
426
- integer: { ...comparable, queryScalarKind: "integer" },
427
- double: { ...comparable, queryScalarKind: "double" },
428
- decimal: { ...comparable, queryScalarKind: "decimal" },
429
- date: { ...comparable, queryScalarKind: "date" },
430
- timestamp: { ...comparable, queryScalarKind: "timestamp" },
431
- boolean: { ...comparable, queryScalarKind: "boolean", sortable: false },
361
+ string: {
362
+ ...comparable,
363
+ queryScalarKind: "string",
364
+ text: true,
365
+ contains: true,
366
+ unique: "string"
367
+ },
368
+ uuid: { ...comparable, queryScalarKind: "uuid", contains: true, unique: "string" },
369
+ integer: { ...comparable, queryScalarKind: "integer", unique: "integer" },
370
+ double: { ...comparable, queryScalarKind: "double", unique: undefined },
371
+ decimal: { ...comparable, queryScalarKind: "decimal", unique: undefined },
372
+ date: { ...comparable, queryScalarKind: "date", unique: "string" },
373
+ timestamp: { ...comparable, queryScalarKind: "timestamp", unique: undefined },
374
+ boolean: { ...comparable, queryScalarKind: "boolean", sortable: false, unique: undefined },
432
375
  fileRef: {
433
376
  queryScalarKind: undefined,
434
377
  exact: false,
@@ -438,7 +381,8 @@ var PRIMITIVE_TRAITS = {
438
381
  contains: false,
439
382
  facet: false,
440
383
  telemetry: false,
441
- shareableParam: false
384
+ shareableParam: false,
385
+ unique: undefined
442
386
  },
443
387
  userRef: {
444
388
  queryScalarKind: "userRef",
@@ -449,7 +393,8 @@ var PRIMITIVE_TRAITS = {
449
393
  contains: false,
450
394
  facet: true,
451
395
  telemetry: false,
452
- shareableParam: false
396
+ shareableParam: false,
397
+ unique: "userRef"
453
398
  }
454
399
  };
455
400
  function isPrimitiveSchema(schema) {
@@ -459,6 +404,43 @@ function primitiveTraits(schema) {
459
404
  return isPrimitiveSchema(schema) ? PRIMITIVE_TRAITS[schema] : undefined;
460
405
  }
461
406
 
407
+ // src/ontology/unique-values.ts
408
+ var UNIQUE_VALUE_KEY_VERSION = 1;
409
+ function uniqueValueKind(schema, valueTypesById, seenValueTypeIds = new Set) {
410
+ if (typeof schema === "string")
411
+ return primitiveTraits(schema)?.unique;
412
+ if (schema.type === "enum")
413
+ return schema.valueType === "integer" ? "integer" : "string";
414
+ if (schema.type !== "valueTypeRef" || seenValueTypeIds.has(schema.valueTypeId)) {
415
+ return;
416
+ }
417
+ const resolved = schema._resolved ?? valueTypesById.get(schema.valueTypeId)?.schema;
418
+ if (!resolved)
419
+ return;
420
+ return uniqueValueKind(resolved, valueTypesById, new Set([...seenValueTypeIds, schema.valueTypeId]));
421
+ }
422
+ function uniquePropertiesOf(objectType, valueTypesById) {
423
+ const unique = [];
424
+ for (const property of objectType.properties) {
425
+ if (!property.unique)
426
+ continue;
427
+ const kind = uniqueValueKind(property.schema, valueTypesById);
428
+ if (kind)
429
+ unique.push({ propertyId: property.id, kind });
430
+ }
431
+ return unique;
432
+ }
433
+ function uniqueValueKey(kind, value) {
434
+ switch (kind) {
435
+ case "string":
436
+ return typeof value === "string" ? value : null;
437
+ case "integer":
438
+ return Number.isInteger(value) ? String(value) : null;
439
+ case "userRef":
440
+ return isUserRef(value) ? value.id : null;
441
+ }
442
+ }
443
+
462
444
  // src/ontology/validation/properties.ts
463
445
  function assertObjectTypeRegistered2(objectTypesById, objectType) {
464
446
  if (!objectTypesById.has(objectType.id)) {
@@ -503,7 +485,7 @@ function assertKnownProperties2(objectType, properties) {
503
485
  function assertRequiredProperties2(objectType, properties) {
504
486
  for (const property of objectType.properties) {
505
487
  if (property.required && properties[property.id] === undefined) {
506
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Missing required property '${property.id}' for object type '${objectType.id}'`), `Missing required property '${objectType.id}.${property.id}'.`);
488
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Missing required property '${property.id}' for object type '${objectType.id}'`), `Missing required property '${objectType.id}.${property.id}'.`);
507
489
  }
508
490
  }
509
491
  }
@@ -541,6 +523,7 @@ function validatePropertyDefinitions2(objectTypesById, valueTypesById) {
541
523
  for (const [typeId, objectType] of objectTypesById) {
542
524
  for (const property of objectType.properties) {
543
525
  assertNoObjectRefSchema(property, `Property '${typeId}.${property.id}'`, valueTypesById);
526
+ assertUniquePropertyDefinition(typeId, property, valueTypesById);
544
527
  if (property.mode !== "telemetry")
545
528
  continue;
546
529
  const primitive = findPrimitiveSchema(property.schema, valueTypesById, (schema) => primitiveTraits(schema)?.telemetry === false);
@@ -552,6 +535,9 @@ function validatePropertyDefinitions2(objectTypesById, valueTypesById) {
552
535
  for (const property of link.properties ?? []) {
553
536
  const path = `Link property '${typeId}.${link.id}.${property.id}'`;
554
537
  assertNoObjectRefSchema(property, path, valueTypesById);
538
+ if (property.unique) {
539
+ throw new OntologyValidationError2(`[Sixb] ${path} cannot be unique. Unique values are supported on object properties only.`);
540
+ }
555
541
  if (findPrimitiveSchema(property.schema, valueTypesById, (schema) => schema === "userRef")) {
556
542
  throw new OntologyValidationError2(`[Sixb] ${path} cannot use ref.user(). User references are supported on object properties only.`);
557
543
  }
@@ -559,15 +545,36 @@ function validatePropertyDefinitions2(objectTypesById, valueTypesById) {
559
545
  }
560
546
  }
561
547
  }
548
+ function assertUniquePropertyDefinition(typeId, property, valueTypesById) {
549
+ if (!property.unique)
550
+ return;
551
+ const path = `Unique property '${typeId}.${property.id}'`;
552
+ if (property.primary) {
553
+ throw new OntologyValidationError2(`[Sixb] ${path} is primary, and primary properties are already unique. Remove unique: true.`);
554
+ }
555
+ if (property.mode === "telemetry") {
556
+ throw new OntologyValidationError2(`[Sixb] ${path} cannot be a telemetry property.`);
557
+ }
558
+ if (uniqueValueKind(property.schema, valueTypesById) === undefined) {
559
+ throw new OntologyValidationError2(`[Sixb] ${path} cannot use ${schemaLabel(property.schema)}. ` + "Unique values must be strings, uuids, integers, dates, enums or user references.");
560
+ }
561
+ }
562
+ function schemaLabel(schema) {
563
+ if (typeof schema === "string")
564
+ return schema;
565
+ if (schema.type === "valueTypeRef")
566
+ return `value type '${schema.valueTypeId}'`;
567
+ return schema.type;
568
+ }
562
569
  function validatePropertyValue2(property, value, path, valueTypesById) {
563
570
  if (value === undefined) {
564
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Property ${path} cannot be undefined`), `Property ${path} cannot be undefined.`);
571
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Property ${path} cannot be undefined`), `Property ${path} cannot be undefined.`);
565
572
  }
566
573
  if (value === null) {
567
574
  if (property.nullable) {
568
575
  return;
569
576
  }
570
- throw withFailureMessage(new OntologyValidationError2(`[Sixb] Property ${path} cannot be null`), `Property ${path} cannot be null.`);
577
+ throw withFailureMessage2(new OntologyValidationError2(`[Sixb] Property ${path} cannot be null`), `Property ${path} cannot be null.`);
571
578
  }
572
579
  validateSchemaValue2(property.schema, value, path, valueTypesById);
573
580
  }
@@ -1547,6 +1554,6 @@ function validateTelemetryUnit2(property, propertyPath, unit, valueTypesById) {
1547
1554
  throw new OntologyValidationError2(`[Sixb] Property ${propertyPath} does not define semanticType and cannot accept a unit`);
1548
1555
  }
1549
1556
  }
1550
- export { userRef2, collectUserRefIds, userReferenceProblem, validateSchemaValue2, assertValidFileRefs2, resolveValueTypeRef2, resolveValueTypeSchema2, isRecord2, normalizeObjectProperties2, normalizeSchemaValue2, coerceSchemaValueToTyped2, isPrimitiveSchema, primitiveTraits, assertObjectTypeRegistered2, assertPropertyTokenBelongsToObjectType2, assertLinkTokenBelongsToObjectType2, assertKnownProperties2, assertRequiredProperties2, validateObjectProperties2, validatePrimaryProperties2, validatePropertyDefinitions2, validatePropertyValue2, findPrimitiveSchema, assertLinkTargetType2, assertTargetTypeCompatible2, normalizeLinkProperties2, validateLinkProperties2, isExactSchema, isSortableSchema, isTextSchema, isContainsSchema, queryScalarKindForSchema, resolvePropertyQueryCapabilities2, resolveQuerySchema, validateQueryMetadata2, quantitativeTypes2, getUnit2, getUnitsFor2, isValidUnit2, getUnitSymbol2, isQuantitativeTypeId2, isUnitId2, assertTelemetryProperty2, resolveSemanticType2, validateTelemetryUnit2 };
1557
+ export { validateSchemaValue2, assertValidFileRefs2, resolveValueTypeRef2, resolveValueTypeSchema2, isRecord2, normalizeObjectProperties2, normalizeSchemaValue2, coerceSchemaValueToTyped2, isPrimitiveSchema, primitiveTraits, UNIQUE_VALUE_KEY_VERSION, uniqueValueKind, uniquePropertiesOf, uniqueValueKey, assertObjectTypeRegistered2, assertPropertyTokenBelongsToObjectType2, assertLinkTokenBelongsToObjectType2, assertKnownProperties2, assertRequiredProperties2, validateObjectProperties2, validatePrimaryProperties2, validatePropertyDefinitions2, validatePropertyValue2, findPrimitiveSchema, assertLinkTargetType2, assertTargetTypeCompatible2, normalizeLinkProperties2, validateLinkProperties2, isExactSchema, isSortableSchema, isTextSchema, isContainsSchema, queryScalarKindForSchema, resolvePropertyQueryCapabilities2, resolveQuerySchema, validateQueryMetadata2, quantitativeTypes2, getUnit2, getUnitsFor2, isValidUnit2, getUnitSymbol2, isQuantitativeTypeId2, isUnitId2, assertTelemetryProperty2, resolveSemanticType2, validateTelemetryUnit2 };
1551
1558
 
1552
- //# debugId=0F13B6300CF2B17164756E2164756E21
1559
+ //# debugId=819D50151832A85A64756E2164756E21