@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
@@ -10,6 +10,6 @@
10
10
  "/**\n * Filesystem auto-discovery for convention-based module loading.\n *\n * Scans well-known definition directories (`ontology/`, `actions/`, etc.)\n * relative to a project root and returns typed definition arrays ready\n * for the `Sixb` constructor.\n */\n\nimport { AsyncLocalStorage } from \"node:async_hooks\"\nimport { readdir } from \"node:fs/promises\"\nimport { join, relative, resolve, sep } from \"node:path\"\nimport { pathToFileURL } from \"node:url\"\nimport { isActionDefinition } from \"../actions\"\nimport { isConnectorDefinition } from \"../connectors\"\nimport { isDatasetDefinition } from \"../datasets\"\nimport type { OntologyDocumentInput, OntologySource } from \"../ontology/registry\"\nimport type { ObjectTypeWithPropertyTokens } from \"../ontology/tokens\"\nimport type { ValueType } from \"../ontology/types\"\nimport { isPipelineDefinition } from \"../pipelines\"\nimport { isProjectionDefinition } from \"../projections/builders\"\nimport { isRuleDefinition } from \"../rules\"\nimport { RuntimeError } from \"../runtime/errors\"\nimport { isScheduleDefinition } from \"../schedules\"\nimport {\n isGroupDefinition,\n isMarkingDefinition,\n isMembershipPolicyDefinition,\n isRoleDefinition,\n} from \"../security\"\nimport { isShareDefinition } from \"../shares\"\nimport { isSyncDefinition } from \"../syncs\"\nimport { isWorkflowDefinition } from \"../workflows\"\nimport { isOntologyScriptsDirectory } from \"./agent-context\"\n\nconst moduleExtensions = new Set([\".ts\", \".tsx\", \".js\", \".jsx\", \".mjs\", \".cjs\"])\n\n/** An `ontology/` module and the object types it exports, directly or re-exported. */\nexport interface DiscoveredOntologyModule {\n /** POSIX path relative to `ontology/`. */\n readonly path: string\n readonly objectTypeIds: readonly string[]\n}\n\nexport interface DiscoveredOntology {\n readonly sources: readonly OntologySource[]\n readonly modules: readonly DiscoveredOntologyModule[]\n}\n\nexport async function discoverOntologySources(projectRoot: string): Promise<DiscoveredOntology> {\n const loadedModules = await loadFamilyModules(projectRoot, \"ontology\", [\"ontology\"])\n\n const ontologyDocuments: OntologyDocumentInput[] = []\n const objectTypes: ObjectTypeWithPropertyTokens[] = []\n const valueTypes: ValueType[] = []\n const modules: DiscoveredOntologyModule[] = []\n const seen = new Set<unknown>()\n\n for (const loaded of loadedModules) {\n const objectTypeIds: string[] = []\n for (const candidate of loaded.exports) {\n const first = !seen.has(candidate)\n seen.add(candidate)\n\n if (isOntologyDocumentInput(candidate)) {\n objectTypeIds.push(...candidate.objectTypes.map((objectType) => objectType.id))\n if (first) ontologyDocuments.push(candidate)\n continue\n }\n\n if (isObjectTypeWithPropertyTokens(candidate)) {\n objectTypeIds.push(candidate.id)\n if (first) objectTypes.push(candidate)\n continue\n }\n\n if (isValueType(candidate) && first) {\n valueTypes.push(candidate)\n }\n }\n modules.push({\n path: toPosix(relative(\"ontology\", loaded.path)),\n objectTypeIds: [...new Set(objectTypeIds)],\n })\n }\n\n const discoveredSources: OntologySource[] = [...ontologyDocuments, ...objectTypes]\n if (valueTypes.length > 0) {\n discoveredSources.push({\n id: \"__sixb.discovered.value-types__\",\n version: \"0.0.0\",\n objectTypes: [],\n valueTypes,\n })\n }\n\n return { sources: discoveredSources, modules }\n}\n\nexport type DiscoveryModuleKind =\n | \"action\"\n | \"connector\"\n | \"dataset\"\n | \"group\"\n | \"marking\"\n | \"membershipPolicy\"\n | \"ontology\"\n | \"pipeline\"\n | \"projection\"\n | \"role\"\n | \"rule\"\n | \"schedule\"\n | \"share\"\n | \"sync\"\n | \"workflow\"\n\n/** Build-time inventory; paths are relative to the source project root. */\nexport interface ProjectModule {\n readonly path: string\n readonly kind: DiscoveryModuleKind\n}\n\n/** Literal imports generated by the CLI put discovery and config in the same bundle graph. */\nexport interface BundledProjectModule extends ProjectModule {\n readonly load: () => Promise<Record<string, unknown>>\n}\n\nconst bundledProject = new AsyncLocalStorage<{\n readonly projectRoot: string\n readonly modules: readonly BundledProjectModule[]\n}>()\n\n/** Scope both config evaluation and deferred config factories without process-global state. */\nexport function withProjectModules<T>(\n projectRoot: string,\n modules: readonly BundledProjectModule[],\n run: () => T\n): T {\n return bundledProject.run({ projectRoot: resolve(projectRoot), modules }, run)\n}\n\ninterface DefinitionDiscoveryFamily<TDefinition> {\n readonly directory: readonly string[]\n readonly kind: Exclude<DiscoveryModuleKind, \"ontology\">\n readonly isDefinition: (value: unknown) => value is TDefinition\n}\n\nconst definitionDiscoveryRegistry = {\n actions: { directory: [\"actions\"], kind: \"action\", isDefinition: isActionDefinition },\n projections: {\n directory: [\"projections\"],\n kind: \"projection\",\n isDefinition: isProjectionDefinition,\n },\n schedules: {\n directory: [\"schedules\"],\n kind: \"schedule\",\n isDefinition: isScheduleDefinition,\n },\n syncs: { directory: [\"syncs\"], kind: \"sync\", isDefinition: isSyncDefinition },\n connectors: {\n directory: [\"connectors\"],\n kind: \"connector\",\n isDefinition: isConnectorDefinition,\n },\n pipelines: {\n directory: [\"pipelines\"],\n kind: \"pipeline\",\n isDefinition: isPipelineDefinition,\n },\n datasets: { directory: [\"datasets\"], kind: \"dataset\", isDefinition: isDatasetDefinition },\n rules: { directory: [\"rules\"], kind: \"rule\", isDefinition: isRuleDefinition },\n workflows: {\n directory: [\"workflows\"],\n kind: \"workflow\",\n isDefinition: isWorkflowDefinition,\n },\n markings: {\n directory: [\"security\", \"markings\"],\n kind: \"marking\",\n isDefinition: isMarkingDefinition,\n },\n groups: {\n directory: [\"security\", \"groups\"],\n kind: \"group\",\n isDefinition: isGroupDefinition,\n },\n roles: {\n directory: [\"security\", \"roles\"],\n kind: \"role\",\n isDefinition: isRoleDefinition,\n },\n membershipPolicies: {\n directory: [\"security\", \"policies\"],\n kind: \"membershipPolicy\",\n isDefinition: isMembershipPolicyDefinition,\n },\n shares: { directory: [\"shares\"], kind: \"share\", isDefinition: isShareDefinition },\n} as const satisfies Record<string, DefinitionDiscoveryFamily<unknown>>\n\n/** Inventory every discovery family without evaluating project code. */\nexport async function listProjectModules(projectRoot: string): Promise<readonly ProjectModule[]> {\n const families = [\n { kind: \"ontology\" as const, directory: [\"ontology\"] },\n ...Object.values(definitionDiscoveryRegistry),\n ]\n return (\n await Promise.all(\n families.map(({ kind, directory }) => listFamilyModules(projectRoot, kind, directory))\n )\n ).flat()\n}\n\ntype DefinitionFromFamily<TFamily> =\n TFamily extends DefinitionDiscoveryFamily<infer TDefinition> ? TDefinition : never\n\nexport type DiscoveredProjectDefinitions = {\n readonly [TKey in keyof typeof definitionDiscoveryRegistry]: readonly DefinitionFromFamily<\n (typeof definitionDiscoveryRegistry)[TKey]\n >[]\n}\n\nexport async function discoverProjectDefinitions(\n projectRoot: string\n): Promise<DiscoveredProjectDefinitions> {\n const entries = await Promise.all(\n Object.entries(definitionDiscoveryRegistry).map(async ([key, family]) => {\n const definitions = await discoverDefinitionFamily(projectRoot, family)\n return [key, definitions] as const\n })\n )\n\n // Object.fromEntries erases literal keys. Every entry above comes from the exact registry and its\n // definitions have passed that entry's type guard, so restoring the mapped result type is safe.\n return Object.fromEntries(entries) as DiscoveredProjectDefinitions\n}\n\nasync function discoverDefinitionFamily(\n projectRoot: string,\n family: DefinitionDiscoveryFamily<unknown>\n): Promise<readonly unknown[]> {\n const loadedModules = await loadFamilyModules(projectRoot, family.kind, family.directory)\n const exportedCandidates = new Set(loadedModules.flatMap((loaded) => loaded.exports))\n\n return [...exportedCandidates].filter(family.isDefinition)\n}\n\n/**\n * Every module file of the `ontology/` family, as absolute paths. `scripts/` directories hold the\n * Agent's ontology scripts, not definitions, so they are never imported.\n */\nexport function listOntologyModuleFiles(projectRoot: string): Promise<string[]> {\n return listModuleFiles(join(projectRoot, \"ontology\"), isOntologyScriptsDirectory)\n}\n\n// ── Internal helpers ────────────────────────────────────────\n\nasync function listFamilyModules(\n projectRoot: string,\n kind: DiscoveryModuleKind,\n directory: readonly string[]\n): Promise<ProjectModule[]> {\n const paths =\n kind === \"ontology\"\n ? await listOntologyModuleFiles(projectRoot)\n : await listModuleFiles(join(projectRoot, ...directory))\n return paths.map((path) => ({ kind, path: relative(projectRoot, path) }))\n}\n\ninterface LoadedProjectModule {\n /** Relative to the project root. */\n readonly path: string\n readonly exports: readonly unknown[]\n}\n\nasync function loadFamilyModules(\n projectRoot: string,\n kind: DiscoveryModuleKind,\n directory: readonly string[]\n): Promise<LoadedProjectModule[]> {\n const project = bundledProject.getStore()\n if (project) {\n if (resolve(projectRoot) !== project.projectRoot) {\n throw new RuntimeError(\n `Built project discovery is scoped to '${project.projectRoot}', not '${projectRoot}'. ` +\n \"Run the built entry from the project root and use that root in createSixb().\"\n )\n }\n return loadModules(project.modules.filter((module) => module.kind === kind))\n }\n\n const modules = await listFamilyModules(projectRoot, kind, directory)\n return loadModules(\n modules.map((module) => ({\n ...module,\n load: () => import(pathToFileURL(resolve(projectRoot, module.path)).href),\n }))\n )\n}\n\nasync function loadModules(\n modules: readonly BundledProjectModule[]\n): Promise<LoadedProjectModule[]> {\n const loaded: LoadedProjectModule[] = []\n\n for (const module of modules) {\n let moduleNamespace: Record<string, unknown>\n try {\n moduleNamespace = await module.load()\n } catch (error) {\n const reason = error instanceof Error ? error.message : String(error)\n throw new RuntimeError(`Failed to load ${module.kind} module '${module.path}': ${reason}`)\n }\n\n const exportedCandidates: unknown[] = []\n const seen = new Set<unknown>()\n for (const exportedValue of Object.values(moduleNamespace)) {\n collectExportedCandidates(exportedValue, exportedCandidates, seen)\n }\n loaded.push({ path: module.path, exports: exportedCandidates })\n }\n\n return loaded\n}\n\nfunction collectExportedCandidates(value: unknown, target: unknown[], seen: Set<unknown>): void {\n if (Array.isArray(value)) {\n for (const item of value) {\n collectExportedCandidates(item, target, seen)\n }\n return\n }\n\n if (value === undefined) {\n return\n }\n\n if ((typeof value === \"object\" && value !== null) || typeof value === \"function\") {\n if (seen.has(value)) {\n return\n }\n seen.add(value)\n }\n\n target.push(value)\n}\n\nasync function listModuleFiles(\n dir: string,\n skipDirectory: (name: string) => boolean = () => false\n): Promise<string[]> {\n let entries: import(\"node:fs\").Dirent[]\n try {\n entries = (await readdir(dir, { withFileTypes: true })) as import(\"node:fs\").Dirent[]\n } catch (error) {\n if (isNotFoundError(error)) {\n return []\n }\n throw error\n }\n\n const files: string[] = []\n const sortedEntries = [...entries].sort((a, b) => a.name.localeCompare(b.name))\n\n for (const entry of sortedEntries) {\n const fullPath = join(dir, entry.name)\n if (entry.isDirectory()) {\n if (!skipDirectory(entry.name)) {\n files.push(...(await listModuleFiles(fullPath, skipDirectory)))\n }\n continue\n }\n\n if (!entry.isFile()) {\n continue\n }\n\n if (!hasSupportedModuleExtension(entry.name)) {\n continue\n }\n\n files.push(fullPath)\n }\n\n return files\n}\n\nfunction isNotFoundError(error: unknown): boolean {\n if (!(error instanceof Error)) {\n return false\n }\n\n const code = (error as NodeJS.ErrnoException).code\n return code === \"ENOENT\" || code === \"ENOTDIR\"\n}\n\nfunction hasSupportedModuleExtension(fileName: string): boolean {\n const normalized = fileName.toLowerCase()\n for (const extension of moduleExtensions) {\n if (normalized.endsWith(extension)) {\n return true\n }\n }\n return false\n}\n\nfunction toPosix(path: string): string {\n return path.split(sep).join(\"/\")\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === \"object\" && value !== null && !Array.isArray(value)\n}\n\nfunction isOntologyDocumentInput(value: unknown): value is OntologyDocumentInput {\n if (!isRecord(value)) {\n return false\n }\n\n return (\n typeof value.id === \"string\" &&\n typeof value.version === \"string\" &&\n Array.isArray(value.objectTypes)\n )\n}\n\nfunction isObjectTypeWithPropertyTokens(value: unknown): value is ObjectTypeWithPropertyTokens {\n if (!isRecord(value)) {\n return false\n }\n\n return (\n typeof value.id === \"string\" &&\n Array.isArray(value.properties) &&\n Array.isArray(value.links) &&\n isRecord(value.p)\n )\n}\n\nfunction isValueType(value: unknown): value is ValueType {\n if (!isRecord(value)) {\n return false\n }\n\n return (\n typeof value.id === \"string\" &&\n typeof value.name === \"string\" &&\n \"schema\" in value &&\n !Array.isArray(value.properties) &&\n !Array.isArray(value.objectTypes)\n )\n}\n"
11
11
  ],
12
12
  "mappings": "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",
13
- "debugId": "00874CD151BEF6AC64756E2164756E21",
13
+ "debugId": "48F9C010B9D4ADBD64756E2164756E21",
14
14
  "names": []
15
15
  }
@@ -1,72 +1,18 @@
1
1
  // @bun
2
2
  import {
3
- normalizeObjectQuery2,
4
3
  formatObjectQueryExplanation2
5
- } from "./chunk-91mg3nj9.js";
4
+ } from "./chunk-wsc1brye.js";
6
5
  import {
7
6
  RuntimeError2
8
7
  } from "./chunk-m4ehq95f.js";
8
+ import {
9
+ resolveWhere,
10
+ normalizeObjectQuery2
11
+ } from "./chunk-j936th07.js";
9
12
  import {
10
13
  OntologyValidationError2
11
14
  } from "./chunk-cqr3acm1.js";
12
15
 
13
- // src/objects/sdk/where.ts
14
- function createPropertyPredicate(propertyId) {
15
- const comparison = (op) => {
16
- return (value) => ({
17
- propertyId,
18
- op,
19
- value
20
- });
21
- };
22
- return {
23
- eq: comparison("eq"),
24
- neq: comparison("neq"),
25
- lt: comparison("lt"),
26
- lte: comparison("lte"),
27
- gt: comparison("gt"),
28
- gte: comparison("gte"),
29
- in: (values) => ({
30
- propertyId,
31
- op: "in",
32
- values
33
- }),
34
- exists: (value = true) => ({
35
- propertyId,
36
- op: "exists",
37
- value
38
- }),
39
- contains: (value) => ({
40
- propertyId,
41
- op: "contains",
42
- value
43
- })
44
- };
45
- }
46
- function createWhereBuilder() {
47
- const p = new Proxy({}, {
48
- get: (_target, propertyId) => typeof propertyId === "string" ? createPropertyPredicate(propertyId) : undefined
49
- });
50
- return {
51
- p,
52
- and: (...items) => ({ op: "and", items }),
53
- or: (...items) => ({ op: "or", items }),
54
- not: (item) => ({ op: "not", item })
55
- };
56
- }
57
- function resolveWhere(whereFn) {
58
- if (!whereFn)
59
- return;
60
- const whereBuilder = createWhereBuilder();
61
- const whereInput = whereFn(whereBuilder);
62
- if (!whereInput)
63
- return;
64
- const predicates = Array.isArray(whereInput) ? whereInput : [whereInput];
65
- if (predicates.length === 0)
66
- return;
67
- return predicates.length === 1 ? predicates[0] : { op: "and", items: predicates };
68
- }
69
-
70
16
  // src/objects/sdk/query-builder.ts
71
17
  function createObjectQueryBuilder2(params) {
72
18
  return new ObjectQueryBuilderImpl(params);
@@ -146,11 +92,15 @@ class ObjectQueryBuilderImpl {
146
92
  }
147
93
  });
148
94
  }
149
- expand(link, optionsOrBuild, build) {
95
+ expand(token, optionsOrBuild, build) {
96
+ if (isPropertyToken(token)) {
97
+ assertNoUserExpansionOptions(optionsOrBuild, build);
98
+ return this.withQuery({ kind: "expand", input: this.ir, expansions: [], users: [token.id] });
99
+ }
150
100
  return this.withQuery({
151
101
  kind: "expand",
152
102
  input: this.ir,
153
- expansions: [buildExpansion(link, optionsOrBuild, build)]
103
+ expansions: [buildExpansion(token, optionsOrBuild, build)]
154
104
  });
155
105
  }
156
106
  orderBy(property, direction) {
@@ -243,30 +193,44 @@ class ObjectQueryBuilderImpl {
243
193
 
244
194
  class ObjectExpandBuilderImpl {
245
195
  expansions;
246
- constructor(expansions = []) {
196
+ users;
197
+ constructor(expansions = [], users = []) {
247
198
  this.expansions = expansions;
199
+ this.users = users;
248
200
  }
249
- expand(link, optionsOrBuild, build) {
250
- return new ObjectExpandBuilderImpl([
251
- ...this.expansions,
252
- buildExpansion(link, optionsOrBuild, build)
253
- ]);
201
+ expand(token, optionsOrBuild, build) {
202
+ if (isPropertyToken(token)) {
203
+ assertNoUserExpansionOptions(optionsOrBuild, build);
204
+ return new ObjectExpandBuilderImpl(this.expansions, [...this.users, token.id]);
205
+ }
206
+ return new ObjectExpandBuilderImpl([...this.expansions, buildExpansion(token, optionsOrBuild, build)], this.users);
254
207
  }
255
208
  }
209
+ function isPropertyToken(token) {
210
+ return "property" in token;
211
+ }
212
+ function assertNoUserExpansionOptions(optionsOrBuild, build) {
213
+ if (optionsOrBuild === undefined && build === undefined)
214
+ return;
215
+ throw new OntologyValidationError2("[Sixb] expand() of a user property takes no options or nested expansions.");
216
+ }
256
217
  function buildExpansion(link, optionsOrBuild, build) {
257
218
  const options = typeof optionsOrBuild === "function" ? undefined : optionsOrBuild;
258
219
  const nestedBuild = typeof optionsOrBuild === "function" ? optionsOrBuild : build;
259
220
  let nested = [];
221
+ let users = [];
260
222
  if (nestedBuild) {
261
223
  const result = nestedBuild(new ObjectExpandBuilderImpl);
262
224
  nested = result.expansions;
225
+ users = result.users;
263
226
  }
264
227
  return {
265
228
  linkId: link.id,
266
229
  direction: "outgoing",
267
230
  ...options?.limit !== undefined ? { limit: options.limit } : {},
268
231
  ...options?.orderBy ? { orderBy: options.orderBy.map(expansionSortToField) } : {},
269
- ...nested.length > 0 ? { expand: nested } : {}
232
+ ...nested.length > 0 ? { expand: nested } : {},
233
+ ...users.length > 0 ? { users } : {}
270
234
  };
271
235
  }
272
236
  function expansionSortToField(sort) {
@@ -297,4 +261,4 @@ function requireSingleTargetObjectTypeId(link) {
297
261
 
298
262
  export { createObjectQueryBuilder2, decorateObjectQueryExecutor };
299
263
 
300
- //# debugId=85B193053312F75F64756E2164756E21
264
+ //# debugId=BC73A40671652EFE64756E2164756E21
@@ -0,0 +1,10 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/objects/sdk/query-builder.ts"],
4
+ "sourcesContent": [
5
+ "/**\n * Fluent ObjectSet query builder.\n *\n * This is the TypeScript authoring layer for object queries. It builds the\n * provider-neutral object query IR and delegates execution to an\n * `ObjectQueryExecutor` — the server runtime executor or the HTTP client\n * executor — so the same builder serves both sides.\n */\n\nimport type { RerankingModelRef } from \"../../models/reranking-model\"\nimport { OntologyValidationError } from \"../../ontology/errors\"\nimport type { LinkToken, ObjectTypeWithPropertyTokens, PropertyToken } from \"../../ontology/tokens\"\nimport { RuntimeError } from \"../../runtime/errors\"\nimport type {\n ListResult,\n ListResultWithoutTotal,\n ObjectExpandBuilder,\n ObjectExpandOptions,\n ObjectQueryBuilder,\n ObjectQueryFacetInput,\n ObjectQueryFacetsResult,\n ObjectQueryListOptions,\n ObjectWhereBuilder,\n ObjectWhereClause,\n TwinObject,\n} from \"../../runtime/types\"\nimport { formatObjectQueryExplanation } from \"../query/explain-format\"\nimport type {\n ObjectExpansion,\n ObjectQuery,\n ObjectQueryDirection,\n ObjectQuerySortDirection,\n ObjectQuerySortField,\n} from \"../query/ir\"\nimport { normalizeObjectQuery } from \"../query/normalize\"\nimport type { ObjectQueryExecutor } from \"./query-executor\"\nimport { resolveWhere } from \"./where\"\n\ntype QueryBuilderParams = {\n query: ObjectQuery\n executor: ObjectQueryExecutor\n}\n\nexport function createObjectQueryBuilder<TObjectType extends ObjectTypeWithPropertyTokens>(\n params: QueryBuilderParams\n): ObjectQueryBuilder<TObjectType> {\n return new ObjectQueryBuilderImpl<TObjectType>(\n params\n ) as unknown as ObjectQueryBuilder<TObjectType>\n}\n\n/**\n * Returns the same query running through the executor `decorate` wraps around the builder's own.\n *\n * Refinements copy their builder's executor, so every query derived from the result, and every\n * terminal it runs, goes through the decorated executor too.\n */\nexport function decorateObjectQueryExecutor<TObjectType extends ObjectTypeWithPropertyTokens>(\n builder: ObjectQueryBuilder<TObjectType>,\n decorate: (executor: ObjectQueryExecutor) => ObjectQueryExecutor\n): ObjectQueryBuilder<TObjectType> {\n // Narrowed from `unknown`: narrowing the builder interface to the class relates both structures.\n const source: unknown = builder\n if (!(source instanceof ObjectQueryBuilderImpl)) {\n throw new RuntimeError(\n \"[Sixb] Only query builders created by createObjectQueryBuilder can change executor.\"\n )\n }\n return new ObjectQueryBuilderImpl<TObjectType>({\n ...source.params,\n executor: decorate(source.params.executor),\n }) as unknown as ObjectQueryBuilder<TObjectType>\n}\n\nclass ObjectQueryBuilderImpl<TObjectType extends ObjectTypeWithPropertyTokens> {\n /** Not private because `decorateObjectQueryExecutor` reads it; the class is not exported. */\n constructor(readonly params: QueryBuilderParams) {}\n\n get ir(): ObjectQuery {\n return normalizeObjectQuery(this.params.query)\n }\n\n where(\n whereFn: (\n builder: ObjectWhereBuilder<TObjectType>\n ) => ObjectWhereClause<TObjectType> | readonly ObjectWhereClause<TObjectType>[]\n ): ObjectQueryBuilder<TObjectType> {\n const predicate = resolveWhere<TObjectType>(whereFn)\n if (!predicate) return this as unknown as ObjectQueryBuilder<TObjectType>\n\n return this.withQuery({\n kind: \"filter\",\n input: this.ir,\n predicate,\n })\n }\n\n search(\n query: string,\n options?: { fields?: readonly PropertyToken<TObjectType[\"id\"], string>[] }\n ): ObjectQueryBuilder<TObjectType> {\n return this.withQuery({\n kind: \"text\",\n input: this.ir,\n query,\n fields: options?.fields?.map(propertyTokenToId),\n })\n }\n\n vector(profile: string, vector: string, options: { k: number }): ObjectQueryBuilder<TObjectType> {\n if (typeof profile !== \"string\" || typeof vector !== \"string\") {\n throw new Error(\"[Sixb] Vector search requires a named profile and search text\")\n }\n return this.withQuery({\n kind: \"vector\",\n input: this.ir,\n profile,\n vector,\n k: options.k,\n })\n }\n\n rerank(options: { model: RerankingModelRef }): ObjectQueryBuilder<TObjectType> {\n if (options.model?.definition?.kind !== \"reranking\") {\n throw new TypeError(\"[Sixb] rerank() requires an explicit reranking model.\")\n }\n return this.withQuery({\n kind: \"rerank\",\n input: this.ir,\n model: { provider: options.model.providerId, modelId: options.model.modelId },\n })\n }\n\n traverse(\n link: LinkToken<TObjectType[\"id\"], string, string>,\n options?: { direction?: \"outgoing\" }\n ): ObjectQueryBuilder<ObjectTypeWithPropertyTokens>\n traverse(\n link: LinkToken<string, string, TObjectType[\"id\"] | readonly TObjectType[\"id\"][]>,\n options: { direction: \"incoming\" }\n ): ObjectQueryBuilder<ObjectTypeWithPropertyTokens>\n traverse(\n link: LinkToken,\n options: { direction?: ObjectQueryDirection } = {}\n ): ObjectQueryBuilder<ObjectTypeWithPropertyTokens> {\n const direction = options.direction ?? \"outgoing\"\n if (direction === \"outgoing\") {\n requireSingleTargetObjectTypeId(link)\n }\n\n return new ObjectQueryBuilderImpl<ObjectTypeWithPropertyTokens>({\n ...this.params,\n query: {\n kind: \"traverse\",\n input: this.ir,\n linkId: link.id,\n direction,\n // Several object types can declare a link with the same id. The token\n // names exactly one source type, so incoming traversal pins it —\n // matching the result type the fluent API advertises.\n ...(direction === \"incoming\" ? { sourceObjectTypeId: link.objectTypeId } : {}),\n },\n }) as unknown as ObjectQueryBuilder<ObjectTypeWithPropertyTokens>\n }\n\n expand(\n token: ExpandToken,\n optionsOrBuild?: ObjectExpandOptions<ObjectTypeWithPropertyTokens> | NestedExpandBuild,\n build?: NestedExpandBuild\n ): ObjectQueryBuilder<TObjectType> {\n if (isPropertyToken(token)) {\n assertNoUserExpansionOptions(optionsOrBuild, build)\n return this.withQuery({ kind: \"expand\", input: this.ir, expansions: [], users: [token.id] })\n }\n\n return this.withQuery({\n kind: \"expand\",\n input: this.ir,\n expansions: [buildExpansion(token, optionsOrBuild, build)],\n })\n }\n\n orderBy(\n property: PropertyToken<TObjectType[\"id\"], string>,\n direction?: ObjectQuerySortDirection\n ): ObjectQueryBuilder<TObjectType> {\n return this.withQuery(\n appendSortField(this.ir, {\n kind: \"property\",\n propertyId: property.id,\n direction,\n })\n )\n }\n\n orderByRelevance(direction?: ObjectQuerySortDirection): ObjectQueryBuilder<TObjectType> {\n return this.withQuery(\n appendSortField(this.ir, {\n kind: \"relevance\",\n direction,\n })\n )\n }\n\n limit(limit: number): ObjectQueryBuilder<TObjectType> {\n return this.withQuery({\n kind: \"limit\",\n input: this.ir,\n limit,\n })\n }\n\n page(input: { pageSize: number; pageToken?: string }): ObjectQueryBuilder<TObjectType> {\n return this.withQuery({\n kind: \"page\",\n input: this.ir,\n pageSize: input.pageSize,\n pageToken: input.pageToken,\n })\n }\n\n validate() {\n if (!this.params.executor.validate) {\n throw new OntologyValidationError(\n \"[Sixb] validate() requires ontology access and is not supported by this query executor. Execute the query to get server-side validation.\"\n )\n }\n return this.params.executor.validate(this.ir)\n }\n\n explain() {\n if (!this.params.executor.explain) {\n throw new OntologyValidationError(\n \"[Sixb] explain() requires ontology access and is not supported by this query executor.\"\n )\n }\n return this.params.executor.explain(this.ir)\n }\n\n formatExplanation(): string {\n return formatObjectQueryExplanation(this.explain())\n }\n\n async list(): Promise<ListResult<TwinObject<TObjectType>>>\n async list(options: {\n includeTotal: false\n signal?: AbortSignal\n }): Promise<ListResultWithoutTotal<TwinObject<TObjectType>>>\n async list(options: {\n includeTotal?: true\n signal?: AbortSignal\n }): Promise<ListResult<TwinObject<TObjectType>>>\n async list(\n options?: ObjectQueryListOptions\n ): Promise<\n ListResult<TwinObject<TObjectType>> | ListResultWithoutTotal<TwinObject<TObjectType>>\n > {\n const result = await this.params.executor.list(this.ir, {\n includeTotal: options?.includeTotal,\n signal: options?.signal,\n })\n const objects = result.objects.map((row) => row as unknown as TwinObject<TObjectType>)\n\n if (options?.includeTotal === false) {\n return {\n objects,\n hasMore: result.hasMore,\n nextPageToken: result.nextPageToken,\n }\n }\n\n return {\n objects,\n hasMore: result.hasMore,\n nextPageToken: result.nextPageToken,\n total: result.total ?? result.objects.length,\n }\n }\n\n async count(): Promise<number> {\n return this.params.executor.count(this.ir)\n }\n\n async exists(): Promise<boolean> {\n return this.params.executor.exists(this.ir)\n }\n\n async facets(\n input: readonly ObjectQueryFacetInput<TObjectType>[]\n ): Promise<ObjectQueryFacetsResult> {\n return this.params.executor.facets(\n this.ir,\n input.map((facet) => ({\n propertyId: facet.property.id,\n limit: facet.limit,\n }))\n )\n }\n\n async first(): Promise<TwinObject<TObjectType> | null> {\n const result = await this.params.executor.list({ kind: \"limit\", input: this.ir, limit: 1 })\n const row = result.objects[0]\n return row ? (row as unknown as TwinObject<TObjectType>) : null\n }\n\n private withQuery(query: ObjectQuery): ObjectQueryBuilder<TObjectType> {\n return new ObjectQueryBuilderImpl<TObjectType>({\n ...this.params,\n query,\n }) as unknown as ObjectQueryBuilder<TObjectType>\n }\n}\n\ntype AnyExpandBuilder = ObjectExpandBuilder<ObjectTypeWithPropertyTokens>\ntype NestedExpandBuild = (nested: AnyExpandBuilder) => AnyExpandBuilder\n\n/** A link to hydrate, or a `ref.user()` property whose members' profiles to attach. */\ntype ExpandToken = LinkToken<string, string, string | readonly string[]> | PropertyToken\n\n/**\n * Runtime backing for the nested `.expand(..., (e) => …)` callback. Immutable,\n * mirroring the query builder: each `expand` returns a new instance so the\n * accumulated expansions are never shared between branches.\n */\nclass ObjectExpandBuilderImpl {\n constructor(\n readonly expansions: readonly ObjectExpansion[] = [],\n readonly users: readonly string[] = []\n ) {}\n\n expand(\n token: ExpandToken,\n optionsOrBuild?: ObjectExpandOptions<ObjectTypeWithPropertyTokens> | NestedExpandBuild,\n build?: NestedExpandBuild\n ): ObjectExpandBuilderImpl {\n if (isPropertyToken(token)) {\n assertNoUserExpansionOptions(optionsOrBuild, build)\n return new ObjectExpandBuilderImpl(this.expansions, [...this.users, token.id])\n }\n\n return new ObjectExpandBuilderImpl(\n [...this.expansions, buildExpansion(token, optionsOrBuild, build)],\n this.users\n )\n }\n}\n\n// A link token carries `link`, a property token `property`.\nfunction isPropertyToken(token: ExpandToken): token is PropertyToken {\n return \"property\" in token\n}\n\nfunction assertNoUserExpansionOptions(optionsOrBuild: unknown, build: unknown): void {\n if (optionsOrBuild === undefined && build === undefined) return\n throw new OntologyValidationError(\n \"[Sixb] expand() of a user property takes no options or nested expansions.\"\n )\n}\n\nfunction buildExpansion(\n link: LinkToken<string, string, string | readonly string[]>,\n optionsOrBuild: ObjectExpandOptions<ObjectTypeWithPropertyTokens> | NestedExpandBuild | undefined,\n build: NestedExpandBuild | undefined\n): ObjectExpansion {\n // `.expand(link, build)` and `.expand(link, options, build)` are both valid:\n // a function in the second slot is the nested builder, otherwise it is options.\n const options = typeof optionsOrBuild === \"function\" ? undefined : optionsOrBuild\n const nestedBuild = typeof optionsOrBuild === \"function\" ? optionsOrBuild : build\n\n let nested: readonly ObjectExpansion[] = []\n let users: readonly string[] = []\n if (nestedBuild) {\n const result = nestedBuild(new ObjectExpandBuilderImpl() as unknown as AnyExpandBuilder)\n nested = (result as unknown as ObjectExpandBuilderImpl).expansions\n users = (result as unknown as ObjectExpandBuilderImpl).users\n }\n\n return {\n linkId: link.id,\n direction: \"outgoing\",\n ...(options?.limit !== undefined ? { limit: options.limit } : {}),\n ...(options?.orderBy ? { orderBy: options.orderBy.map(expansionSortToField) } : {}),\n ...(nested.length > 0 ? { expand: nested } : {}),\n ...(users.length > 0 ? { users } : {}),\n }\n}\n\nfunction expansionSortToField(sort: {\n property: PropertyToken\n direction?: ObjectQuerySortDirection\n}): ObjectQuerySortField {\n return { kind: \"property\", propertyId: sort.property.id, direction: sort.direction }\n}\n\nfunction appendSortField(\n query: ObjectQuery,\n field: Extract<ObjectQuery, { kind: \"sort\" }>[\"fields\"][number]\n): ObjectQuery {\n if (query.kind === \"sort\") {\n return {\n ...query,\n fields: [...query.fields, field],\n }\n }\n\n return {\n kind: \"sort\",\n input: query,\n fields: [field],\n }\n}\n\nfunction propertyTokenToId(token: PropertyToken): string {\n return token.id\n}\n\nfunction requireSingleTargetObjectTypeId(link: LinkToken): void {\n const target = link.targetObjectTypeId\n if (target === \"*\" || typeof target !== \"string\") {\n throw new OntologyValidationError(\n \"[Sixb] Object query traverse requires a single concrete outgoing target type\"\n )\n }\n}\n"
6
+ ],
7
+ "mappings": "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",
8
+ "debugId": "BC73A40671652EFE64756E2164756E21",
9
+ "names": []
10
+ }
@@ -0,0 +1,97 @@
1
+ // @bun
2
+ import {
3
+ OntologyValidationError2
4
+ } from "./chunk-cqr3acm1.js";
5
+
6
+ // src/ontology/user-ref.ts
7
+ function userRef2(id) {
8
+ if (typeof id !== "string" || !id.trim()) {
9
+ throw new OntologyValidationError2("[Sixb] User reference id must not be empty.");
10
+ }
11
+ return Object.freeze({ type: "user", id });
12
+ }
13
+ function isUserRef(value) {
14
+ if (typeof value !== "object" || value === null || Array.isArray(value))
15
+ return false;
16
+ const record = value;
17
+ return Object.keys(record).every((key) => key === "type" || key === "id") && record.type === "user" && typeof record.id === "string" && record.id.trim().length > 0;
18
+ }
19
+ function isUserRefPropertySchema(schema) {
20
+ if (schema === "userRef")
21
+ return true;
22
+ return typeof schema === "object" && schema.type === "array" && schema.items === "userRef";
23
+ }
24
+ var CURRENT_USER = Object.freeze({ type: "currentUser" });
25
+ function currentUser2() {
26
+ return CURRENT_USER;
27
+ }
28
+ function isCurrentUser(value) {
29
+ if (typeof value !== "object" || value === null || Array.isArray(value))
30
+ return false;
31
+ const record = value;
32
+ return Object.keys(record).length === 1 && record.type === "currentUser";
33
+ }
34
+ function currentUserNotStorableMessage(subject) {
35
+ return `${subject} cannot store currentUser(): it only stands for the user reading, in a query predicate. Store a user reference { type: "user", id } instead.`;
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
+ export { userRef2, isUserRef, isUserRefPropertySchema, currentUser2, isCurrentUser, currentUserNotStorableMessage, collectUserRefIds, userReferenceProblem };
96
+
97
+ //# debugId=1B91C64E771ACBFC64756E2164756E21
@@ -0,0 +1,10 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/ontology/user-ref.ts"],
4
+ "sourcesContent": [
5
+ "import type { Principal } from \"../auth/types\"\nimport type { UserStatus } from \"../storage/auth/types\"\nimport { OntologyValidationError } from \"./errors\"\nimport type { Schema, ValueType } from \"./types\"\n\n/**\n * Value of a `ref.user()` (`\"userRef\"`) schema: the principal shape, narrowed to users.\n *\n * It carries no display data on purpose: a name or avatar supplied by the writer would be\n * spoofable. It grants or restricts nothing by itself either; only an explicit policy gives it a\n * security meaning.\n */\nexport type UserRef = Extract<Principal, { readonly type: \"user\" }>\n\n/**\n * Build a reference to one user, for writes and query predicates:\n * `where(({ p }) => p.assignee.eq(userRef(userId)))`.\n */\nexport function userRef(id: string): UserRef {\n if (typeof id !== \"string\" || !id.trim()) {\n throw new OntologyValidationError(\"[Sixb] User reference id must not be empty.\")\n }\n return Object.freeze({ type: \"user\" as const, id })\n}\n\n/** Exactly `{ type: \"user\", id }` with a nonblank id and no other field. */\nexport function isUserRef(value: unknown): value is UserRef {\n if (typeof value !== \"object\" || value === null || Array.isArray(value)) return false\n const record = value as Record<string, unknown>\n return (\n Object.keys(record).every((key) => key === \"type\" || key === \"id\") &&\n record.type === \"user\" &&\n typeof record.id === \"string\" &&\n record.id.trim().length > 0\n )\n}\n\n/**\n * A `ref.user()` schema, or an array of them: the property schemas whose members a query can\n * expand into profiles.\n */\nexport function isUserRefPropertySchema(schema: Schema): boolean {\n if (schema === \"userRef\") return true\n return typeof schema === \"object\" && schema.type === \"array\" && schema.items === \"userRef\"\n}\n\n/**\n * The user reading, in a query predicate. The server binds it to the requester when the query runs:\n * a query never stores or returns it.\n */\nexport type CurrentUserRef = { readonly type: \"currentUser\" }\n\nconst CURRENT_USER: CurrentUserRef = Object.freeze({ type: \"currentUser\" })\n\n/**\n * Match the user reading: `where(({ p }) => p.assignee.eq(currentUser()))`.\n *\n * Only query predicates on a `ref.user()` property accept it: `eq`, `neq`, `in`, and `contains`\n * on a list of user references. It cannot be stored.\n */\nexport function currentUser(): CurrentUserRef {\n return CURRENT_USER\n}\n\n/** Exactly `{ type: \"currentUser\" }`, the form `currentUser()` takes on the wire too. */\nexport function isCurrentUser(value: unknown): value is CurrentUserRef {\n if (typeof value !== \"object\" || value === null || Array.isArray(value)) return false\n const record = value as Record<string, unknown>\n return Object.keys(record).length === 1 && record.type === \"currentUser\"\n}\n\n/** Why `subject` refuses `currentUser()`: it stands for the reader of a query, never for a value. */\nexport function currentUserNotStorableMessage(subject: string): string {\n return `${subject} cannot store currentUser(): it only stands for the user reading, in a query predicate. Store a user reference { type: \"user\", id } instead.`\n}\n\n/**\n * Collect the user ids a value holds at `userRef` positions of its schema, however deeply nested.\n *\n * Positions whose value does not match the schema are skipped: shape validation reports them.\n */\nexport function collectUserRefIds(\n schema: Schema,\n value: unknown,\n valueTypesById: ReadonlyMap<string, ValueType>,\n into: Set<string>,\n seenValueTypeIds: ReadonlySet<string> = new Set()\n): Set<string> {\n if (value === null || value === undefined) return into\n if (typeof schema === \"string\") {\n if (schema === \"userRef\" && isUserRef(value)) into.add(value.id)\n return into\n }\n switch (schema.type) {\n case \"array\":\n if (Array.isArray(value)) {\n for (const item of value) {\n collectUserRefIds(schema.items, item, valueTypesById, into, seenValueTypeIds)\n }\n }\n return into\n case \"map\":\n if (isRecord(value)) {\n for (const item of Object.values(value)) {\n collectUserRefIds(schema.valueSchema, item, valueTypesById, into, seenValueTypeIds)\n }\n }\n return into\n case \"object\":\n if (isRecord(value)) {\n for (const [fieldId, field] of Object.entries(schema.properties)) {\n collectUserRefIds(field.schema, value[fieldId], valueTypesById, into, seenValueTypeIds)\n }\n }\n return into\n case \"valueTypeRef\": {\n if (seenValueTypeIds.has(schema.valueTypeId)) return into\n const resolved = schema._resolved ?? valueTypesById.get(schema.valueTypeId)?.schema\n if (!resolved) return into\n return collectUserRefIds(\n resolved,\n value,\n valueTypesById,\n into,\n new Set([...seenValueTypeIds, schema.valueTypeId])\n )\n }\n case \"enum\":\n return into\n }\n}\n\n/**\n * Why `path` cannot newly reference user `id`, or `undefined` when it can.\n *\n * `status` is the user's status, `null` for an unknown id, or `\"unverifiable\"` without auth\n * storage. Unknown and suspended users get distinct messages: the writer already holds the id, and\n * telling \"wrong id\" from \"suspended member\" is what makes the error actionable.\n */\nexport function userReferenceProblem(\n path: string,\n id: string,\n status: UserStatus | null | \"unverifiable\"\n): string | undefined {\n switch (status) {\n case \"active\":\n return undefined\n case null:\n return `[Sixb] ${path} references user '${id}', which does not exist.`\n case \"unverifiable\":\n return `[Sixb] ${path} references user '${id}', but this runtime has no auth storage to verify users. Configure storage with auth to write user references.`\n default:\n return `[Sixb] ${path} references user '${id}', who is ${status}. Only active users can be newly referenced; existing references are kept.`\n }\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === \"object\" && value !== null && !Array.isArray(value)\n}\n"
6
+ ],
7
+ "mappings": "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",
8
+ "debugId": "1B91C64E771ACBFC64756E2164756E21",
9
+ "names": []
10
+ }
@@ -1,4 +1,8 @@
1
1
  // @bun
2
+ import {
3
+ TOKENLESS_MODEL_KINDS2
4
+ } from "./chunk-pdt5cw8z.js";
5
+
2
6
  // src/storage/ai-limits/errors.ts
3
7
  class AiLimitStorageError2 extends Error {
4
8
  code;
@@ -21,9 +25,9 @@ function aiLimitCalendarMonth2(at) {
21
25
 
22
26
  // src/storage/ai-limits/provider.ts
23
27
  var SIGNED_INT64_MAX = 9223372036854775807n;
24
- var TOKENLESS_MODEL_KINDS = new Set(["transcription", "reranking"]);
28
+ var TOKENLESS_KINDS = new Set(TOKENLESS_MODEL_KINDS2);
25
29
  function aiLimitMeterApplies2(meter, modelKind) {
26
- return meter !== "tokens.total" || modelKind === undefined || !TOKENLESS_MODEL_KINDS.has(modelKind);
30
+ return meter !== "tokens.total" || modelKind === undefined || !TOKENLESS_KINDS.has(modelKind);
27
31
  }
28
32
 
29
33
  class AiLimitOperationLock2 {
@@ -312,4 +316,4 @@ function cloneValidDate2(value, label) {
312
316
 
313
317
  export { AiLimitStorageError2, aiLimitCalendarMonth2, aiLimitMeterApplies2, AiLimitOperationLock2, normalizeAiLimitSubject2, normalizeAiLimitSubjects2, aiLimitSubjectKey2, aiLimitSubjectParts2, aiLimitSubjectFromParts2, normalizeAiLimitQuantity2, normalizeAiLimitQuantities2, normalizeAiLimitAmount2, aiLimitQuantityFromAmount2, aiLimitAmountKey2, normalizeCreateAiLimitPolicy2, normalizeUpdateAiLimitPolicy2, normalizeReserveAiModelCall2, normalizeAiModelCallReservationIdentity2, aiModelCallReservationKey2, aiLimitPolicyDimensionKey2, aiLimitReservationRequestMatches2, aiLimitReservationRequestKey2, aiLimitReservationBuckets2, aiLimitAccountingEntryAppliesToSubject2, aiLimitSubjectsFromAccountingEntry2, resolveAiLimitActual2, assertAiLimitAccountingMatchesReservation2, cloneAiLimitPolicy2, assertNonBlank2, cloneValidDate2 };
314
318
 
315
- //# debugId=DE130C8A66C4C32664756E2164756E21
319
+ //# debugId=0D8650E157BAD36864756E2164756E21
@@ -0,0 +1,12 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/storage/ai-limits/errors.ts", "../src/storage/ai-limits/period.ts", "../src/storage/ai-limits/provider.ts"],
4
+ "sourcesContent": [
5
+ "export type AiLimitStorageErrorCode =\n | \"duplicate_policy\"\n | \"missing_policy\"\n | \"missing_execution\"\n | \"missing_reservation\"\n | \"missing_usage_record\"\n | \"usage_mismatch\"\n | \"unavailable_actuals\"\n | \"reservation_conflict\"\n | \"reconciliation_conflict\"\n | \"invalid_reservation_state\"\n\n/** Stable storage failure for AI limit policies and reservations. */\nexport class AiLimitStorageError extends Error {\n readonly name = \"AiLimitStorageError\"\n\n constructor(\n readonly code: AiLimitStorageErrorCode,\n message: string\n ) {\n super(message)\n }\n}\n",
6
+ "import type { AiLimitPeriod } from \"./types\"\n\n/** Return the UTC calendar month containing `at`, with an inclusive start and exclusive end. */\nexport function aiLimitCalendarMonth(at: Date): AiLimitPeriod {\n if (!(at instanceof Date) || !Number.isFinite(at.getTime())) {\n throw new TypeError(\"[Sixb] AI limit period date must be a valid Date.\")\n }\n const start = new Date(Date.UTC(at.getUTCFullYear(), at.getUTCMonth(), 1))\n const end = new Date(Date.UTC(at.getUTCFullYear(), at.getUTCMonth() + 1, 1))\n return { kind: \"calendarMonth\", start, end, resetAt: new Date(end) }\n}\n",
7
+ "import { type ModelKind, TOKENLESS_MODEL_KINDS } from \"../../models/definitions\"\nimport type { AiMoney } from \"../ai-cost\"\nimport { AiLimitStorageError } from \"./errors\"\nimport { aiLimitCalendarMonth } from \"./period\"\nimport type {\n AiLimitMeter,\n AiLimitPeriod,\n AiLimitPolicy,\n AiLimitQuantity,\n AiLimitReservationBucket,\n AiLimitSubject,\n AiModelCallReservation,\n AiModelCallReservationIdentity,\n CreateAiLimitPolicyInput,\n ReserveAiModelCallInput,\n UpdateAiLimitPolicyInput,\n} from \"./types\"\n\nconst SIGNED_INT64_MAX = 9_223_372_036_854_775_807n\n\n// Token limits neither admit nor count tokenless calls; cost limits still do.\nconst TOKENLESS_KINDS: ReadonlySet<ModelKind> = new Set(TOKENLESS_MODEL_KINDS)\n\n/** @internal Whether a limit meter governs calls of this kind. Unclassified calls are metered. */\nexport function aiLimitMeterApplies(\n meter: AiLimitMeter,\n modelKind: ModelKind | undefined\n): boolean {\n return meter !== \"tokens.total\" || modelKind === undefined || !TOKENLESS_KINDS.has(modelKind)\n}\n\n/** @internal Serialize compound limit operations, including within an existing transaction. */\nexport class AiLimitOperationLock {\n private tail: Promise<void> = Promise.resolve()\n\n /** Wait for already queued operations before the owning transaction commits or rolls back. */\n settle(): Promise<void> {\n return this.tail\n }\n\n async run<T>(operation: () => Promise<T> | T): Promise<T> {\n const previous = this.tail\n let release!: () => void\n this.tail = new Promise<void>((resolve) => {\n release = resolve\n })\n await previous\n try {\n return await operation()\n } finally {\n release()\n }\n }\n}\n\n/** @internal Canonical integer quantity used by storage providers. */\nexport interface NormalizedAiLimitAmount {\n readonly meter: AiLimitQuantity[\"meter\"]\n readonly currency: string\n readonly amount: bigint\n}\n\n/** @internal Minimal immutable accounting facts consumed by limit providers. */\nexport interface AiLimitAccountingEntry {\n readonly projectId: string\n readonly usageRecordId: string\n readonly executionId: string\n readonly attempt: number\n readonly callId: string\n readonly occurredAt: Date\n readonly modelKind?: ModelKind\n readonly totalTokens?: number\n readonly requesterGroupIds: readonly string[]\n readonly requester?:\n | { readonly type: \"user\"; readonly id: string }\n | { readonly type: \"serviceAccount\"; readonly id: string }\n readonly valuation?:\n | { readonly status: \"rated\"; readonly money: AiMoney }\n | { readonly status: \"unavailable\" }\n}\n\nexport interface ResolvedAiLimitActual {\n readonly amount: bigint\n readonly accountingStatus: \"complete\" | \"unavailable\"\n}\n\nexport function normalizeAiLimitSubject(subject: AiLimitSubject): AiLimitSubject {\n if (!subject || typeof subject !== \"object\") {\n throw new TypeError(\"[Sixb] AI limit subject must be an object.\")\n }\n if (subject.type === \"project\") return { type: \"project\" }\n if (subject.type === \"group\" || subject.type === \"user\" || subject.type === \"serviceAccount\") {\n assertNonBlank(subject.id, \"subject id\")\n return { type: subject.type, id: subject.id }\n }\n throw new TypeError(\"[Sixb] AI limit subject type is unsupported.\")\n}\n\nexport function normalizeAiLimitSubjects(\n subjects: readonly AiLimitSubject[]\n): readonly AiLimitSubject[] {\n if (!Array.isArray(subjects)) {\n throw new TypeError(\"[Sixb] AI limit subjects must be an array.\")\n }\n const normalized = [\n normalizeAiLimitSubject({ type: \"project\" }),\n ...subjects.map(normalizeAiLimitSubject),\n ]\n const byKey = new Map(normalized.map((subject) => [aiLimitSubjectKey(subject), subject]))\n return [...byKey.values()].sort((left, right) =>\n aiLimitSubjectKey(left).localeCompare(aiLimitSubjectKey(right))\n )\n}\n\nexport function aiLimitSubjectKey(subject: AiLimitSubject): string {\n return subject.type === \"project\" ? \"project:\" : `${subject.type}:${subject.id}`\n}\n\nexport function aiLimitSubjectParts(subject: AiLimitSubject): {\n readonly type: AiLimitSubject[\"type\"]\n readonly id: string\n} {\n return { type: subject.type, id: subject.type === \"project\" ? \"\" : subject.id }\n}\n\nexport function aiLimitSubjectFromParts(type: AiLimitSubject[\"type\"], id: string): AiLimitSubject {\n return normalizeAiLimitSubject(type === \"project\" ? { type } : { type, id })\n}\n\nexport function normalizeAiLimitQuantity(quantity: AiLimitQuantity): AiLimitQuantity {\n const normalized = normalizeAiLimitAmount(quantity)\n return aiLimitQuantityFromAmount(normalized)\n}\n\nexport function normalizeAiLimitQuantities(\n quantities: readonly AiLimitQuantity[],\n label: string\n): readonly AiLimitQuantity[] {\n if (!Array.isArray(quantities) || quantities.length === 0) {\n throw new TypeError(`[Sixb] AI limit ${label} must contain at least one quantity.`)\n }\n const byKey = new Map<string, AiLimitQuantity>()\n for (const quantity of quantities) {\n const normalized = normalizeAiLimitQuantity(quantity)\n const key = aiLimitAmountKey(normalizeAiLimitAmount(normalized))\n if (byKey.has(key)) {\n throw new TypeError(`[Sixb] AI limit ${label} contains duplicate meter '${key}'.`)\n }\n byKey.set(key, normalized)\n }\n return [...byKey.values()].sort((left, right) =>\n aiLimitAmountKey(normalizeAiLimitAmount(left)).localeCompare(\n aiLimitAmountKey(normalizeAiLimitAmount(right))\n )\n )\n}\n\nexport function normalizeAiLimitAmount(quantity: AiLimitQuantity): NormalizedAiLimitAmount {\n if (!quantity || typeof quantity !== \"object\") {\n throw new TypeError(\"[Sixb] AI limit quantity must be an object.\")\n }\n if (quantity.meter === \"tokens.total\") {\n if (!Number.isSafeInteger(quantity.amount) || quantity.amount < 0) {\n throw new TypeError(\"[Sixb] AI limit token amount must be a non-negative safe integer.\")\n }\n return { meter: quantity.meter, currency: \"\", amount: BigInt(quantity.amount) }\n }\n if (quantity.meter === \"cost.catalogEstimated\") {\n const money = normalizeAiMoney(quantity.amount)\n return { meter: quantity.meter, currency: money.currency, amount: BigInt(money.amountNanos) }\n }\n throw new TypeError(\"[Sixb] AI limit meter is unsupported.\")\n}\n\nexport function aiLimitQuantityFromAmount(amount: NormalizedAiLimitAmount): AiLimitQuantity {\n if (amount.amount < 0n) {\n throw new TypeError(\"[Sixb] AI limit amount cannot be negative.\")\n }\n if (amount.meter === \"tokens.total\") {\n const tokens = Number(amount.amount)\n if (!Number.isSafeInteger(tokens)) {\n throw new RangeError(\"[Sixb] AI limit token amount exceeds JavaScript's safe integer range.\")\n }\n return { meter: amount.meter, amount: tokens }\n }\n if (amount.currency !== \"USD\") {\n throw new TypeError(\"[Sixb] AI limit catalog-estimated cost currency must be 'USD'.\")\n }\n return {\n meter: amount.meter,\n amount: { currency: \"USD\", amountNanos: amount.amount.toString() },\n }\n}\n\nexport function aiLimitAmountKey(\n amount: Pick<NormalizedAiLimitAmount, \"meter\" | \"currency\">\n): string {\n return `${amount.meter}:${amount.currency}`\n}\n\nexport function normalizeCreateAiLimitPolicy(input: CreateAiLimitPolicyInput): AiLimitPolicy {\n assertNonBlank(input.id, \"policy id\")\n assertNonBlank(input.projectId, \"projectId\")\n const createdAt = cloneValidDate(input.createdAt ?? new Date(), \"createdAt\")\n return {\n id: input.id,\n projectId: input.projectId,\n subject: normalizeAiLimitSubject(input.subject),\n limit: normalizeAiLimitQuantity(input.limit),\n period: \"calendarMonth\",\n enabled: input.enabled ?? true,\n createdAt,\n updatedAt: new Date(createdAt),\n }\n}\n\nexport function normalizeUpdateAiLimitPolicy(input: UpdateAiLimitPolicyInput): {\n readonly projectId: string\n readonly id: string\n readonly limit?: AiLimitQuantity\n readonly enabled?: boolean\n readonly updatedAt: Date\n} {\n assertNonBlank(input.projectId, \"projectId\")\n assertNonBlank(input.id, \"policy id\")\n if (input.limit === undefined && input.enabled === undefined) {\n throw new TypeError(\"[Sixb] AI limit policy update must change limit or enabled.\")\n }\n if (input.enabled !== undefined && typeof input.enabled !== \"boolean\") {\n throw new TypeError(\"[Sixb] AI limit enabled must be a boolean.\")\n }\n return {\n projectId: input.projectId,\n id: input.id,\n ...(input.limit === undefined ? {} : { limit: normalizeAiLimitQuantity(input.limit) }),\n ...(input.enabled === undefined ? {} : { enabled: input.enabled }),\n updatedAt: cloneValidDate(input.updatedAt ?? new Date(), \"updatedAt\"),\n }\n}\n\nexport function normalizeReserveAiModelCall(input: ReserveAiModelCallInput): {\n readonly identity: AiModelCallReservationIdentity\n readonly subjects: readonly AiLimitSubject[]\n readonly estimates: readonly AiLimitQuantity[]\n readonly modelKind?: ModelKind\n readonly period: AiLimitPeriod\n readonly reservedAt: Date\n} {\n const identity = normalizeAiModelCallReservationIdentity(input)\n const reservedAt = cloneValidDate(input.reservedAt ?? new Date(), \"reservedAt\")\n return {\n identity,\n subjects: normalizeAiLimitSubjects(input.subjects),\n estimates: normalizeAiLimitQuantities(input.estimates, \"estimates\"),\n ...(input.modelKind === undefined ? {} : { modelKind: input.modelKind }),\n period: aiLimitCalendarMonth(reservedAt),\n reservedAt,\n }\n}\n\nexport function normalizeAiModelCallReservationIdentity(\n input: AiModelCallReservationIdentity\n): AiModelCallReservationIdentity {\n assertNonBlank(input.projectId, \"projectId\")\n assertNonBlank(input.executionId, \"executionId\")\n if (!Number.isSafeInteger(input.attempt) || input.attempt <= 0) {\n throw new TypeError(\"[Sixb] AI limit reservation attempt must be a positive safe integer.\")\n }\n assertNonBlank(input.callId, \"callId\")\n return {\n projectId: input.projectId,\n executionId: input.executionId,\n attempt: input.attempt,\n callId: input.callId,\n }\n}\n\nexport function aiModelCallReservationKey(identity: AiModelCallReservationIdentity): string {\n return JSON.stringify([\n identity.projectId,\n identity.executionId,\n identity.attempt,\n identity.callId,\n ])\n}\n\nexport function aiLimitPolicyDimensionKey(\n policy: Pick<AiLimitPolicy, \"projectId\" | \"subject\" | \"limit\">\n): string {\n const amount = normalizeAiLimitAmount(policy.limit)\n return JSON.stringify([\n policy.projectId,\n aiLimitSubjectKey(policy.subject),\n amount.meter,\n amount.currency,\n ])\n}\n\nexport function aiLimitReservationRequestMatches(\n reservation: AiModelCallReservation,\n request: ReturnType<typeof normalizeReserveAiModelCall>\n): boolean {\n return reservation.requestKey === aiLimitReservationRequestKey(request)\n}\n\nexport function aiLimitReservationRequestKey(\n request: ReturnType<typeof normalizeReserveAiModelCall>\n): string {\n return JSON.stringify([\n request.period.start.toISOString(),\n request.subjects.map(aiLimitSubjectKey),\n request.estimates.map((quantity) => {\n const amount = normalizeAiLimitAmount(quantity)\n return [amount.meter, amount.currency, amount.amount.toString()]\n }),\n // Appended only when present, so keys of reservations made before model kinds stay valid.\n ...(request.modelKind === undefined ? [] : [request.modelKind]),\n ])\n}\n\nexport function aiLimitReservationBuckets(\n policies: readonly AiLimitPolicy[],\n subjects: readonly AiLimitSubject[],\n estimates: readonly AiLimitQuantity[],\n modelKind?: ModelKind\n): readonly AiLimitReservationBucket[] {\n const subjectKeys = new Set(subjects.map(aiLimitSubjectKey))\n const estimatesByDimension = new Map(\n estimates.map((estimate) => {\n const amount = normalizeAiLimitAmount(estimate)\n return [aiLimitAmountKey(amount), estimate] as const\n })\n )\n return policies\n .filter(\n (policy) =>\n subjectKeys.has(aiLimitSubjectKey(policy.subject)) &&\n aiLimitMeterApplies(policy.limit.meter, modelKind)\n )\n .flatMap((policy) => {\n const estimate = estimatesByDimension.get(\n aiLimitAmountKey(normalizeAiLimitAmount(policy.limit))\n )\n return estimate ? [{ subject: policy.subject, estimate }] : []\n })\n .sort((left, right) => {\n const subject = aiLimitSubjectKey(left.subject).localeCompare(\n aiLimitSubjectKey(right.subject)\n )\n if (subject !== 0) return subject\n return aiLimitAmountKey(normalizeAiLimitAmount(left.estimate)).localeCompare(\n aiLimitAmountKey(normalizeAiLimitAmount(right.estimate))\n )\n })\n}\n\nexport function aiLimitAccountingEntryAppliesToSubject(\n entry: AiLimitAccountingEntry,\n subject: AiLimitSubject\n): boolean {\n if (subject.type === \"project\") return true\n if (subject.type === \"group\") return entry.requesterGroupIds.includes(subject.id)\n return entry.requester?.type === subject.type && entry.requester.id === subject.id\n}\n\nexport function aiLimitSubjectsFromAccountingEntry(\n entry: AiLimitAccountingEntry\n): readonly AiLimitSubject[] {\n return normalizeAiLimitSubjects([\n ...entry.requesterGroupIds.map((id) => ({ type: \"group\" as const, id })),\n ...(entry.requester ? [entry.requester] : []),\n ])\n}\n\nexport function resolveAiLimitActual(\n entries: readonly AiLimitAccountingEntry[],\n dimension: Pick<NormalizedAiLimitAmount, \"meter\" | \"currency\">\n): ResolvedAiLimitActual {\n let amount = 0n\n let accountingStatus: ResolvedAiLimitActual[\"accountingStatus\"] = \"complete\"\n for (const entry of entries) {\n if (dimension.meter === \"tokens.total\") {\n if (!aiLimitMeterApplies(dimension.meter, entry.modelKind)) continue\n if (entry.totalTokens === undefined) {\n accountingStatus = \"unavailable\"\n } else {\n amount += BigInt(entry.totalTokens)\n }\n continue\n }\n if (\n entry.valuation?.status !== \"rated\" ||\n entry.valuation.money.currency !== dimension.currency\n ) {\n accountingStatus = \"unavailable\"\n continue\n }\n amount += BigInt(entry.valuation.money.amountNanos)\n }\n return { amount, accountingStatus }\n}\n\nexport function assertAiLimitAccountingMatchesReservation(\n reservation: AiModelCallReservation,\n entry: AiLimitAccountingEntry\n): void {\n if (\n entry.projectId !== reservation.projectId ||\n entry.executionId !== reservation.executionId ||\n entry.attempt !== reservation.attempt ||\n entry.callId !== reservation.callId\n ) {\n throw new AiLimitStorageError(\n \"usage_mismatch\",\n `[Sixb] AI usage record '${entry.usageRecordId}' does not belong to reservation '${reservation.callId}'.`\n )\n }\n}\n\nexport function cloneAiLimitPolicy(policy: AiLimitPolicy): AiLimitPolicy {\n return structuredClone(policy)\n}\n\nfunction normalizeAiMoney(money: AiMoney): AiMoney & { readonly currency: \"USD\" } {\n if (!money || typeof money !== \"object\") {\n throw new TypeError(\"[Sixb] AI limit cost amount must be AiMoney.\")\n }\n assertNonBlank(money.currency, \"cost currency\")\n if (money.currency !== \"USD\") {\n throw new TypeError(\"[Sixb] AI limit catalog-estimated cost currency must be 'USD'.\")\n }\n if (!/^(0|[1-9][0-9]*)$/.test(money.amountNanos)) {\n throw new TypeError(\n \"[Sixb] AI limit cost amountNanos must be a canonical non-negative integer string.\"\n )\n }\n if (BigInt(money.amountNanos) > SIGNED_INT64_MAX) {\n throw new RangeError(\"[Sixb] AI limit cost amountNanos exceeds the supported range.\")\n }\n return { currency: \"USD\", amountNanos: money.amountNanos }\n}\n\nexport function assertNonBlank(value: string, label: string): void {\n if (typeof value !== \"string\" || value.trim().length === 0) {\n throw new TypeError(`[Sixb] AI limit ${label} must be nonblank.`)\n }\n}\n\nexport function cloneValidDate(value: Date, label: string): Date {\n if (!(value instanceof Date) || !Number.isFinite(value.getTime())) {\n throw new TypeError(`[Sixb] AI limit ${label} must be a valid Date.`)\n }\n return new Date(value)\n}\n"
8
+ ],
9
+ "mappings": "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",
10
+ "debugId": "0D8650E157BAD36864756E2164756E21",
11
+ "names": []
12
+ }
@@ -176,6 +176,80 @@ class SignInRefusedError2 extends Error {
176
176
  }
177
177
  }
178
178
 
179
+ // src/auth/profile.ts
180
+ var MAX_DISPLAY_NAME_LENGTH = 100;
181
+ var MAX_AVATAR_URL_LENGTH = 2048;
182
+ var FORBIDDEN_NAME_CHARACTERS = /[\p{Cc}\p{Cs}\u202A-\u202E\u2066-\u2069\u2028\u2029]/u;
183
+ var VISIBLE_CHARACTER = /[^\p{Z}\p{Cf}]/u;
184
+ var LOOPBACK_HOSTS = new Set(["localhost", "127.0.0.1", "[::1]"]);
185
+ function normalizeProfileChanges(input) {
186
+ if (input.displayName === undefined && input.avatarUrl === undefined) {
187
+ throw new AuthRuntimeError2("invalid_auth_input", "[Sixb] A profile update needs displayName or avatarUrl.");
188
+ }
189
+ const changes = {};
190
+ if (input.displayName !== undefined) {
191
+ changes.displayName = input.displayName === null ? null : normalizeDisplayName(input.displayName);
192
+ }
193
+ if (input.avatarUrl !== undefined) {
194
+ changes.avatarUrl = input.avatarUrl === null ? null : normalizeAvatarUrl(input.avatarUrl);
195
+ }
196
+ return changes;
197
+ }
198
+ function signInDisplayName2(value) {
199
+ const name = typeof value === "string" ? value.trim() : "";
200
+ return name && displayNameProblem(name) === null ? name : undefined;
201
+ }
202
+ function signInAvatarUrl2(value) {
203
+ return typeof value === "string" ? canonicalAvatarUrl(value.trim()) ?? undefined : undefined;
204
+ }
205
+ function normalizeDisplayName(value) {
206
+ const name = value.trim();
207
+ if (!name) {
208
+ return null;
209
+ }
210
+ const problem = displayNameProblem(name);
211
+ if (problem) {
212
+ throw new AuthRuntimeError2("invalid_auth_input", problem);
213
+ }
214
+ return name;
215
+ }
216
+ function normalizeAvatarUrl(value) {
217
+ const url = value.trim();
218
+ if (!url) {
219
+ return null;
220
+ }
221
+ const canonical = canonicalAvatarUrl(url);
222
+ if (!canonical) {
223
+ throw new AuthRuntimeError2("invalid_auth_input", `[Sixb] An avatar URL must be an https URL of at most ${MAX_AVATAR_URL_LENGTH} characters, without a user name or password.`);
224
+ }
225
+ return canonical;
226
+ }
227
+ function displayNameProblem(name) {
228
+ if (name.length > MAX_DISPLAY_NAME_LENGTH * 2 || [...name].length > MAX_DISPLAY_NAME_LENGTH) {
229
+ return `[Sixb] A display name can be at most ${MAX_DISPLAY_NAME_LENGTH} characters.`;
230
+ }
231
+ if (FORBIDDEN_NAME_CHARACTERS.test(name)) {
232
+ return "[Sixb] A display name cannot contain control, bidirectional or line separator characters.";
233
+ }
234
+ if (!VISIBLE_CHARACTER.test(name)) {
235
+ return "[Sixb] A display name needs at least one visible character.";
236
+ }
237
+ return null;
238
+ }
239
+ function canonicalAvatarUrl(value) {
240
+ let url;
241
+ try {
242
+ url = new URL(value);
243
+ } catch {
244
+ return null;
245
+ }
246
+ const secure = url.protocol === "https:" || url.protocol === "http:" && LOOPBACK_HOSTS.has(url.hostname);
247
+ if (!secure || url.username || url.password || url.href.length > MAX_AVATAR_URL_LENGTH) {
248
+ return null;
249
+ }
250
+ return url.href;
251
+ }
252
+
179
253
  // src/auth/validation.ts
180
254
  var DAY = 24 * 60 * 60 * 1000;
181
255
  var DEFAULT_AUTH_SESSION_IDLE_TIMEOUT_MS2 = 30 * DAY;
@@ -292,6 +366,6 @@ function assertValidStrategy(strategy) {
292
366
  }
293
367
  }
294
368
 
295
- export { DEFAULT_SESSION_COOKIE_NAME2, DEFAULT_CSRF_COOKIE_NAME2, resolveAuthCookieOptions2, parseCookieHeader2, getCookie2, serializeCookie2, shouldUseSecureCookies2, createSessionCookieHeader2, createCsrfCookieHeader2, clearSessionCookieHeader2, clearCsrfCookieHeader2, AuthRuntimeError2, SignInRefusedError2, DEFAULT_AUTH_SESSION_IDLE_TIMEOUT_MS2, DEFAULT_AUTH_SESSION_RENEWAL_WINDOW_MS2, DEFAULT_AUTH_INVITATION_TTL_MS2, MAX_AUTH_INVITATION_TTL_MS2, DEFAULT_AUTH_SESSION_CACHE_TTL_MS2, resolveAuthConfig2, resolveInvitationExpiresAt, assertNonEmpty3, normalizePagination, isMagicLinkAuthStrategy2, isInvitationDeliveryAuthStrategy2, isOidcAuthStrategy2 };
369
+ export { DEFAULT_SESSION_COOKIE_NAME2, DEFAULT_CSRF_COOKIE_NAME2, resolveAuthCookieOptions2, parseCookieHeader2, getCookie2, serializeCookie2, shouldUseSecureCookies2, createSessionCookieHeader2, createCsrfCookieHeader2, clearSessionCookieHeader2, clearCsrfCookieHeader2, AuthRuntimeError2, SignInRefusedError2, normalizeProfileChanges, signInDisplayName2, signInAvatarUrl2, DEFAULT_AUTH_SESSION_IDLE_TIMEOUT_MS2, DEFAULT_AUTH_SESSION_RENEWAL_WINDOW_MS2, DEFAULT_AUTH_INVITATION_TTL_MS2, MAX_AUTH_INVITATION_TTL_MS2, DEFAULT_AUTH_SESSION_CACHE_TTL_MS2, resolveAuthConfig2, resolveInvitationExpiresAt, assertNonEmpty3, normalizePagination, isMagicLinkAuthStrategy2, isInvitationDeliveryAuthStrategy2, isOidcAuthStrategy2 };
296
370
 
297
- //# debugId=D416279B4950C46864756E2164756E21
371
+ //# debugId=EE785E31D45CA72264756E2164756E21