@sixb/core 0.1.19 → 0.1.21

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 (765) hide show
  1. package/dist/actions/execution.d.ts.map +1 -1
  2. package/dist/actions/index.js +54 -47
  3. package/dist/actions/index.js.map +1 -1
  4. package/dist/actions/request.d.ts.map +1 -1
  5. package/dist/actions/run-authorization.d.ts +9 -0
  6. package/dist/actions/run-authorization.d.ts.map +1 -1
  7. package/dist/activity/connection.d.ts +62 -0
  8. package/dist/activity/connection.d.ts.map +1 -0
  9. package/dist/activity/device.d.ts +8 -0
  10. package/dist/activity/device.d.ts.map +1 -0
  11. package/dist/activity/execution.d.ts +48 -0
  12. package/dist/activity/execution.d.ts.map +1 -0
  13. package/dist/activity/service.d.ts +79 -0
  14. package/dist/activity/service.d.ts.map +1 -0
  15. package/dist/activity/shares.d.ts +24 -0
  16. package/dist/activity/shares.d.ts.map +1 -0
  17. package/dist/activity/timeline.d.ts +96 -0
  18. package/dist/activity/timeline.d.ts.map +1 -0
  19. package/dist/agents/index.d.ts +2 -1
  20. package/dist/agents/index.d.ts.map +1 -1
  21. package/dist/agents/index.js +63 -50
  22. package/dist/agents/index.js.map +1 -1
  23. package/dist/agents/request.d.ts.map +1 -1
  24. package/dist/agents/skills.d.ts.map +1 -1
  25. package/dist/agents/streams/index.js +3 -3
  26. package/dist/agents/streams/internal.js +3 -3
  27. package/dist/agents/types.d.ts +8 -8
  28. package/dist/agents/types.d.ts.map +1 -1
  29. package/dist/agents/validation.d.ts +1 -1
  30. package/dist/agents/validation.d.ts.map +1 -1
  31. package/dist/artifacts/address.d.ts +48 -0
  32. package/dist/artifacts/address.d.ts.map +1 -0
  33. package/dist/artifacts/csv.d.ts +22 -0
  34. package/dist/artifacts/csv.d.ts.map +1 -0
  35. package/dist/artifacts/errors.d.ts +11 -0
  36. package/dist/artifacts/errors.d.ts.map +1 -0
  37. package/dist/artifacts/execution.d.ts +43 -0
  38. package/dist/artifacts/execution.d.ts.map +1 -0
  39. package/dist/artifacts/frames/assets.d.ts +28 -0
  40. package/dist/artifacts/frames/assets.d.ts.map +1 -0
  41. package/dist/artifacts/frames/grants.d.ts +37 -0
  42. package/dist/artifacts/frames/grants.d.ts.map +1 -0
  43. package/dist/artifacts/frames/index.d.ts +10 -0
  44. package/dist/artifacts/frames/index.d.ts.map +1 -0
  45. package/dist/artifacts/frames/index.js +892 -0
  46. package/dist/artifacts/frames/index.js.map +14 -0
  47. package/dist/artifacts/frames/kit.d.ts +66 -0
  48. package/dist/artifacts/frames/kit.d.ts.map +1 -0
  49. package/dist/artifacts/frames/probe.d.ts +41 -0
  50. package/dist/artifacts/frames/probe.d.ts.map +1 -0
  51. package/dist/artifacts/frames/protocol.d.ts +98 -0
  52. package/dist/artifacts/frames/protocol.d.ts.map +1 -0
  53. package/dist/artifacts/frames/runtime.d.ts +13 -0
  54. package/dist/artifacts/frames/runtime.d.ts.map +1 -0
  55. package/dist/artifacts/html.d.ts +6 -0
  56. package/dist/artifacts/html.d.ts.map +1 -0
  57. package/dist/artifacts/ids.d.ts +5 -0
  58. package/dist/artifacts/ids.d.ts.map +1 -0
  59. package/dist/artifacts/index.d.ts +16 -0
  60. package/dist/artifacts/index.d.ts.map +1 -0
  61. package/dist/artifacts/index.js +125 -0
  62. package/dist/artifacts/index.js.map +10 -0
  63. package/dist/artifacts/kinds.d.ts +5 -0
  64. package/dist/artifacts/kinds.d.ts.map +1 -0
  65. package/dist/artifacts/limits.d.ts +28 -0
  66. package/dist/artifacts/limits.d.ts.map +1 -0
  67. package/dist/artifacts/outline.d.ts +44 -0
  68. package/dist/artifacts/outline.d.ts.map +1 -0
  69. package/dist/artifacts/publish/files.d.ts +15 -0
  70. package/dist/artifacts/publish/files.d.ts.map +1 -0
  71. package/dist/artifacts/publish/index.d.ts +5 -0
  72. package/dist/artifacts/publish/index.d.ts.map +1 -0
  73. package/dist/artifacts/publish/index.js +36 -0
  74. package/dist/artifacts/publish/index.js.map +9 -0
  75. package/dist/artifacts/publish/publish.d.ts +52 -0
  76. package/dist/artifacts/publish/publish.d.ts.map +1 -0
  77. package/dist/artifacts/publish/references.d.ts +27 -0
  78. package/dist/artifacts/publish/references.d.ts.map +1 -0
  79. package/dist/artifacts/publish/validate/document.d.ts +17 -0
  80. package/dist/artifacts/publish/validate/document.d.ts.map +1 -0
  81. package/dist/artifacts/publish/validate/file.d.ts +8 -0
  82. package/dist/artifacts/publish/validate/file.d.ts.map +1 -0
  83. package/dist/artifacts/publish/validate/sheet.d.ts +15 -0
  84. package/dist/artifacts/publish/validate/sheet.d.ts.map +1 -0
  85. package/dist/artifacts/publish/validate/slides.d.ts +21 -0
  86. package/dist/artifacts/publish/validate/slides.d.ts.map +1 -0
  87. package/dist/artifacts/references.d.ts +12 -0
  88. package/dist/artifacts/references.d.ts.map +1 -0
  89. package/dist/artifacts/resolve.d.ts +41 -0
  90. package/dist/artifacts/resolve.d.ts.map +1 -0
  91. package/dist/artifacts/theme.d.ts +19 -0
  92. package/dist/artifacts/theme.d.ts.map +1 -0
  93. package/dist/artifacts/warnings.d.ts +11 -0
  94. package/dist/artifacts/warnings.d.ts.map +1 -0
  95. package/dist/artifacts/workbook.d.ts +64 -0
  96. package/dist/artifacts/workbook.d.ts.map +1 -0
  97. package/dist/auth/cookies.d.ts +2 -4
  98. package/dist/auth/cookies.d.ts.map +1 -1
  99. package/dist/auth/index.d.ts +0 -2
  100. package/dist/auth/index.d.ts.map +1 -1
  101. package/dist/auth/index.js +14 -20
  102. package/dist/auth/index.js.map +1 -1
  103. package/dist/auth/runtime.d.ts +8 -10
  104. package/dist/auth/runtime.d.ts.map +1 -1
  105. package/dist/auth/session-cache.d.ts +1 -5
  106. package/dist/auth/session-cache.d.ts.map +1 -1
  107. package/dist/auth/strategy.js +1 -1
  108. package/dist/auth/types.d.ts +4 -8
  109. package/dist/auth/types.d.ts.map +1 -1
  110. package/dist/auth/validation.d.ts +0 -1
  111. package/dist/auth/validation.d.ts.map +1 -1
  112. package/dist/authorization/decision.d.ts +2 -4
  113. package/dist/authorization/decision.d.ts.map +1 -1
  114. package/dist/authorization/grant-kinds.d.ts +6 -8
  115. package/dist/authorization/grant-kinds.d.ts.map +1 -1
  116. package/dist/authorization/index.d.ts +0 -1
  117. package/dist/authorization/index.d.ts.map +1 -1
  118. package/dist/authorization/index.js +7 -11
  119. package/dist/authorization/index.js.map +1 -1
  120. package/dist/authorization/resolve.d.ts +1 -1
  121. package/dist/authorization/resolve.d.ts.map +1 -1
  122. package/dist/blob-storage/browser.js +1 -1
  123. package/dist/blob-storage/index.js +2 -2
  124. package/dist/blob-storage/internal.d.ts +1 -1
  125. package/dist/blob-storage/internal.d.ts.map +1 -1
  126. package/dist/blob-storage/internal.js +11 -5
  127. package/dist/blob-storage/internal.js.map +1 -1
  128. package/dist/blob-storage/media-type.d.ts +12 -0
  129. package/dist/blob-storage/media-type.d.ts.map +1 -1
  130. package/dist/bootstrap/index.js +54 -48
  131. package/dist/bootstrap/index.js.map +2 -2
  132. package/dist/{chunk-t6vq7bff.js → chunk-0bphap9y.js} +5 -5
  133. package/dist/{chunk-7mbzgd9m.js → chunk-1cc1xaf3.js} +3 -3
  134. package/dist/chunk-3jms7je7.js +14 -0
  135. package/dist/chunk-3jms7je7.js.map +10 -0
  136. package/dist/{chunk-s54c868q.js → chunk-3qct2mdc.js} +3 -13
  137. package/dist/chunk-3qct2mdc.js.map +12 -0
  138. package/dist/{chunk-6gmfggss.js → chunk-431pyp2c.js} +3 -3
  139. package/dist/{chunk-c85m1hyj.js → chunk-447a5c0p.js} +2 -2
  140. package/dist/chunk-48qjhh6v.js +185 -0
  141. package/dist/chunk-48qjhh6v.js.map +13 -0
  142. package/dist/{chunk-80mc0971.js → chunk-561r0yc9.js} +8 -8
  143. package/dist/{chunk-5e43w60z.js → chunk-5948n82c.js} +2 -2
  144. package/dist/{chunk-yzwja0mj.js → chunk-5hx48dnn.js} +2 -2
  145. package/dist/{chunk-tjb1mk5t.js → chunk-5vems3nx.js} +5 -6
  146. package/dist/{chunk-tjb1mk5t.js.map → chunk-5vems3nx.js.map} +3 -3
  147. package/dist/{chunk-aff7cyea.js → chunk-61y5xs4p.js} +563 -167
  148. package/dist/{chunk-aff7cyea.js.map → chunk-61y5xs4p.js.map} +12 -9
  149. package/dist/chunk-65abf64x.js +13 -0
  150. package/dist/chunk-65abf64x.js.map +10 -0
  151. package/dist/{chunk-z3y5kg1x.js → chunk-6eqsgvxk.js} +3 -3
  152. package/dist/{chunk-z3y5kg1x.js.map → chunk-6eqsgvxk.js.map} +2 -2
  153. package/dist/chunk-6rqgmkde.js +2028 -0
  154. package/dist/chunk-6rqgmkde.js.map +29 -0
  155. package/dist/{chunk-y7rqfrgg.js → chunk-6vb4st8k.js} +29 -38
  156. package/dist/chunk-6vb4st8k.js.map +23 -0
  157. package/dist/chunk-7q8t23v4.js +467 -0
  158. package/dist/chunk-7q8t23v4.js.map +14 -0
  159. package/dist/{chunk-kyzq4wy9.js → chunk-858emn8m.js} +17 -17
  160. package/dist/chunk-858emn8m.js.map +18 -0
  161. package/dist/{chunk-hvsb78a1.js → chunk-8frc8a4j.js} +26 -26
  162. package/dist/{chunk-hvsb78a1.js.map → chunk-8frc8a4j.js.map} +2 -2
  163. package/dist/{chunk-3zxk45er.js → chunk-8ncg20rd.js} +3 -68
  164. package/dist/{chunk-3zxk45er.js.map → chunk-8ncg20rd.js.map} +4 -5
  165. package/dist/{chunk-j2bp5ryw.js → chunk-918wwnaa.js} +495 -28
  166. package/dist/{chunk-j2bp5ryw.js.map → chunk-918wwnaa.js.map} +14 -12
  167. package/dist/{chunk-1f7wpmyp.js → chunk-9j4jw7as.js} +103 -110
  168. package/dist/chunk-9j4jw7as.js.map +14 -0
  169. package/dist/chunk-9kgkfg6v.js +502 -0
  170. package/dist/chunk-9kgkfg6v.js.map +14 -0
  171. package/dist/chunk-a3faa34j.js +74 -0
  172. package/dist/chunk-a3faa34j.js.map +10 -0
  173. package/dist/{chunk-ey3pyej1.js → chunk-akzryx9h.js} +347 -1174
  174. package/dist/{chunk-ey3pyej1.js.map → chunk-akzryx9h.js.map} +19 -25
  175. package/dist/chunk-arns890k.js +10 -0
  176. package/dist/chunk-arns890k.js.map +10 -0
  177. package/dist/{chunk-zrmy8zvw.js → chunk-bk9svbcq.js} +11 -11
  178. package/dist/{chunk-zrmy8zvw.js.map → chunk-bk9svbcq.js.map} +2 -2
  179. package/dist/{chunk-hkc3jct7.js → chunk-c06hmxyy.js} +2 -10
  180. package/dist/chunk-c06hmxyy.js.map +10 -0
  181. package/dist/{chunk-q1vkr2ys.js → chunk-c1rxbz5y.js} +3 -3
  182. package/dist/chunk-cfj9dfbb.js +288 -0
  183. package/dist/chunk-cfj9dfbb.js.map +12 -0
  184. package/dist/{chunk-4tcx876c.js → chunk-cn0fwwhy.js} +19 -19
  185. package/dist/{chunk-4tcx876c.js.map → chunk-cn0fwwhy.js.map} +1 -1
  186. package/dist/{chunk-gc4ntf7d.js → chunk-cwdzcv37.js} +1 -1
  187. package/dist/{chunk-fa02jy15.js → chunk-cy4mbddw.js} +1 -1
  188. package/dist/{chunk-7kg3k1m9.js → chunk-d09e3rax.js} +1 -1
  189. package/dist/chunk-d5rjr8c0.js +176 -0
  190. package/dist/chunk-d5rjr8c0.js.map +12 -0
  191. package/dist/{chunk-rhg02hxq.js → chunk-d7dnxdep.js} +3 -3
  192. package/dist/{chunk-b38szspf.js → chunk-dhcv7yxc.js} +1 -1
  193. package/dist/{chunk-b38szspf.js.map → chunk-dhcv7yxc.js.map} +1 -1
  194. package/dist/{chunk-enpsx8k5.js → chunk-dhdha526.js} +23 -21
  195. package/dist/chunk-dhdha526.js.map +10 -0
  196. package/dist/{chunk-8mx7qw3y.js → chunk-dvd2fp9q.js} +2 -2
  197. package/dist/{chunk-8mx7qw3y.js.map → chunk-dvd2fp9q.js.map} +3 -3
  198. package/dist/{chunk-bwjcehza.js → chunk-e17zdm62.js} +6 -12
  199. package/dist/{chunk-bwjcehza.js.map → chunk-e17zdm62.js.map} +3 -4
  200. package/dist/{chunk-tpn40322.js → chunk-e6k4thh5.js} +11 -10
  201. package/dist/{chunk-tpn40322.js.map → chunk-e6k4thh5.js.map} +3 -3
  202. package/dist/{chunk-tw03bsmb.js → chunk-eptrvnby.js} +224 -3
  203. package/dist/chunk-eptrvnby.js.map +12 -0
  204. package/dist/{chunk-xt1zt7gv.js → chunk-f4pamkt9.js} +30 -23
  205. package/dist/chunk-f4pamkt9.js.map +12 -0
  206. package/dist/chunk-ff5xkv0p.js +211 -0
  207. package/dist/chunk-ff5xkv0p.js.map +10 -0
  208. package/dist/{chunk-bpgy64fw.js → chunk-g257jwnc.js} +10 -4
  209. package/dist/{chunk-bpgy64fw.js.map → chunk-g257jwnc.js.map} +3 -3
  210. package/dist/chunk-g5bvzyyr.js +32 -0
  211. package/dist/chunk-g5bvzyyr.js.map +10 -0
  212. package/dist/{chunk-2jntasmh.js → chunk-hcbyfxbe.js} +25 -49
  213. package/dist/chunk-hcbyfxbe.js.map +12 -0
  214. package/dist/chunk-hke9aeen.js +9 -0
  215. package/dist/chunk-hke9aeen.js.map +10 -0
  216. package/dist/{chunk-1sr8ryzk.js → chunk-hwksyjks.js} +122 -1
  217. package/dist/{chunk-1sr8ryzk.js.map → chunk-hwksyjks.js.map} +3 -3
  218. package/dist/chunk-jcfw4h7m.js +9 -0
  219. package/dist/chunk-jcfw4h7m.js.map +10 -0
  220. package/dist/{chunk-85yvv5n0.js → chunk-k43ct2ke.js} +20 -11
  221. package/dist/chunk-k43ct2ke.js.map +12 -0
  222. package/dist/{chunk-dnmadg9k.js → chunk-kge7k6ey.js} +40 -8
  223. package/dist/chunk-kge7k6ey.js.map +15 -0
  224. package/dist/{chunk-wz0xs816.js → chunk-ky3j490c.js} +2 -2
  225. package/dist/chunk-mjddfa7k.js +129 -0
  226. package/dist/chunk-mjddfa7k.js.map +12 -0
  227. package/dist/{chunk-3gnrh4ve.js → chunk-nn5xnx3s.js} +86 -111
  228. package/dist/chunk-nn5xnx3s.js.map +40 -0
  229. package/dist/{chunk-rz53yb4v.js → chunk-q5e5tv4b.js} +35 -7
  230. package/dist/{chunk-rz53yb4v.js.map → chunk-q5e5tv4b.js.map} +3 -3
  231. package/dist/{chunk-vyf9kfqf.js → chunk-q7gn29y3.js} +1 -1
  232. package/dist/{chunk-d2ync1v3.js → chunk-rmakanzx.js} +10 -12
  233. package/dist/{chunk-d2ync1v3.js.map → chunk-rmakanzx.js.map} +3 -4
  234. package/dist/{chunk-v9xd5wzd.js → chunk-s7jg7pmn.js} +1 -1
  235. package/dist/chunk-tbc1ngpd.js +642 -0
  236. package/dist/chunk-tbc1ngpd.js.map +18 -0
  237. package/dist/chunk-twe4dx8p.js +676 -0
  238. package/dist/chunk-twe4dx8p.js.map +15 -0
  239. package/dist/{chunk-nre82s12.js → chunk-vf57cr4t.js} +2 -2
  240. package/dist/{chunk-9ybhtmg4.js → chunk-vvxtn22d.js} +1 -1
  241. package/dist/{chunk-jhm3zsa7.js → chunk-wkv3h3q7.js} +64 -2
  242. package/dist/{chunk-jhm3zsa7.js.map → chunk-wkv3h3q7.js.map} +3 -3
  243. package/dist/chunk-x0v3jd47.js +124 -0
  244. package/dist/chunk-x0v3jd47.js.map +10 -0
  245. package/dist/{chunk-7t429e3f.js → chunk-xvsc5m8n.js} +1 -1
  246. package/dist/{chunk-kg5j6fct.js → chunk-y5tah2kf.js} +1 -1
  247. package/dist/{chunk-52bk93x8.js → chunk-z58tm0hm.js} +2 -2
  248. package/dist/datasets/builders.d.ts +15 -2
  249. package/dist/datasets/builders.d.ts.map +1 -1
  250. package/dist/datasets/column-index.d.ts +7 -0
  251. package/dist/datasets/column-index.d.ts.map +1 -0
  252. package/dist/datasets/execution.d.ts +3 -2
  253. package/dist/datasets/execution.d.ts.map +1 -1
  254. package/dist/datasets/write.js +8 -8
  255. package/dist/deploy/internal.js +4 -3
  256. package/dist/deploy/internal.js.map +4 -4
  257. package/dist/deploy/services.d.ts.map +1 -1
  258. package/dist/deploy/types.d.ts +1 -2
  259. package/dist/deploy/types.d.ts.map +1 -1
  260. package/dist/error-reporting/internal.js +4 -4
  261. package/dist/errors/internal.d.ts +1 -0
  262. package/dist/errors/internal.d.ts.map +1 -1
  263. package/dist/errors/internal.js +7 -4
  264. package/dist/errors/internal.js.map +1 -1
  265. package/dist/events/execution.d.ts +12 -2
  266. package/dist/events/execution.d.ts.map +1 -1
  267. package/dist/events/index.js +4 -4
  268. package/dist/execution/agent.js +56 -49
  269. package/dist/execution/agent.js.map +1 -1
  270. package/dist/execution/authorization.d.ts.map +1 -1
  271. package/dist/execution/authorized-object-reader.d.ts +52 -11
  272. package/dist/execution/authorized-object-reader.d.ts.map +1 -1
  273. package/dist/execution/object-reader-clearance.d.ts +41 -0
  274. package/dist/execution/object-reader-clearance.d.ts.map +1 -0
  275. package/dist/execution/object-reader-ontology.d.ts +12 -0
  276. package/dist/execution/object-reader-ontology.d.ts.map +1 -0
  277. package/dist/execution/object-reader-security.d.ts +45 -0
  278. package/dist/execution/object-reader-security.d.ts.map +1 -0
  279. package/dist/execution/primitive.js +54 -47
  280. package/dist/execution/primitive.js.map +1 -1
  281. package/dist/execution/request.js +49 -42
  282. package/dist/execution/request.js.map +2 -2
  283. package/dist/http/api-routes.d.ts.map +1 -1
  284. package/dist/http/index.js +1 -1
  285. package/dist/index.d.ts +23 -7
  286. package/dist/index.d.ts.map +1 -1
  287. package/dist/index.js +111 -109
  288. package/dist/index.js.map +1 -1
  289. package/dist/lake-storage/in-memory.d.ts +1 -0
  290. package/dist/lake-storage/in-memory.d.ts.map +1 -1
  291. package/dist/lake-storage/index.d.ts +6 -3
  292. package/dist/lake-storage/index.d.ts.map +1 -1
  293. package/dist/lake-storage/index.js +21 -13
  294. package/dist/lake-storage/index.js.map +1 -1
  295. package/dist/lake-storage/lineage.d.ts +94 -0
  296. package/dist/lake-storage/lineage.d.ts.map +1 -0
  297. package/dist/lake-storage/sql-transforms.d.ts +45 -0
  298. package/dist/lake-storage/sql-transforms.d.ts.map +1 -1
  299. package/dist/lake-storage/types.d.ts +55 -1
  300. package/dist/lake-storage/types.d.ts.map +1 -1
  301. package/dist/lake-storage/version-inputs.d.ts +14 -3
  302. package/dist/lake-storage/version-inputs.d.ts.map +1 -1
  303. package/dist/maintenance/ontology-maintenance.d.ts.map +1 -1
  304. package/dist/materializer/index.js +31 -30
  305. package/dist/materializer/index.js.map +1 -1
  306. package/dist/models/execution/index.js +26 -25
  307. package/dist/models/execution/index.js.map +1 -1
  308. package/dist/objects/clearance-redaction.d.ts +27 -0
  309. package/dist/objects/clearance-redaction.d.ts.map +1 -0
  310. package/dist/objects/index.js +54 -47
  311. package/dist/objects/index.js.map +1 -1
  312. package/dist/objects/link/authorization.d.ts +8 -5
  313. package/dist/objects/link/authorization.d.ts.map +1 -1
  314. package/dist/objects/link/upsert-batch.d.ts.map +1 -1
  315. package/dist/objects/object/delete.d.ts.map +1 -1
  316. package/dist/objects/object/upsert-batch.d.ts.map +1 -1
  317. package/dist/objects/object/upsert.d.ts.map +1 -1
  318. package/dist/objects/property-clearance.d.ts +47 -24
  319. package/dist/objects/property-clearance.d.ts.map +1 -1
  320. package/dist/objects/query/clearance-admission.d.ts +10 -0
  321. package/dist/objects/query/clearance-admission.d.ts.map +1 -0
  322. package/dist/objects/query/index.js +29 -28
  323. package/dist/objects/query/index.js.map +1 -1
  324. package/dist/objects/query/link-query-clearance.d.ts +21 -0
  325. package/dist/objects/query/link-query-clearance.d.ts.map +1 -0
  326. package/dist/objects/vectors/handle.d.ts.map +1 -1
  327. package/dist/objects/vectors/profile.d.ts +5 -0
  328. package/dist/objects/vectors/profile.d.ts.map +1 -1
  329. package/dist/ontology/builders.d.ts.map +1 -1
  330. package/dist/ontology/docs-markdown.d.ts +1 -1
  331. package/dist/ontology/docs-markdown.d.ts.map +1 -1
  332. package/dist/ontology/index.js +7 -7
  333. package/dist/ontology/internal.js +4 -4
  334. package/dist/ontology/internal.js.map +1 -1
  335. package/dist/pipelines/index.d.ts +2 -0
  336. package/dist/pipelines/index.d.ts.map +1 -1
  337. package/dist/pipelines/index.js +47 -35
  338. package/dist/pipelines/index.js.map +1 -1
  339. package/dist/pipelines/lineage.d.ts +17 -0
  340. package/dist/pipelines/lineage.d.ts.map +1 -0
  341. package/dist/projections/internal.d.ts +2 -2
  342. package/dist/projections/internal.js +30 -29
  343. package/dist/projections/internal.js.map +1 -1
  344. package/dist/runtime/create.d.ts +3 -0
  345. package/dist/runtime/create.d.ts.map +1 -1
  346. package/dist/runtime/host.d.ts +6 -0
  347. package/dist/runtime/host.d.ts.map +1 -1
  348. package/dist/runtime/internal.d.ts +2 -0
  349. package/dist/runtime/internal.d.ts.map +1 -1
  350. package/dist/runtime/internal.js +46 -42
  351. package/dist/runtime/internal.js.map +1 -1
  352. package/dist/runtime/ontology-mutations.d.ts +2 -0
  353. package/dist/runtime/ontology-mutations.d.ts.map +1 -1
  354. package/dist/runtime/resolve-definitions.d.ts.map +1 -1
  355. package/dist/runtime/sixb.d.ts +8 -0
  356. package/dist/runtime/sixb.d.ts.map +1 -1
  357. package/dist/sandboxes/auth.d.ts +16 -0
  358. package/dist/sandboxes/auth.d.ts.map +1 -1
  359. package/dist/sandboxes/config.d.ts.map +1 -1
  360. package/dist/sandboxes/configuration.d.ts +26 -0
  361. package/dist/sandboxes/configuration.d.ts.map +1 -1
  362. package/dist/sandboxes/index.d.ts +1 -1
  363. package/dist/sandboxes/index.d.ts.map +1 -1
  364. package/dist/sandboxes/index.js +14 -13
  365. package/dist/sandboxes/index.js.map +1 -1
  366. package/dist/sandboxes/sandbox.d.ts +28 -5
  367. package/dist/sandboxes/sandbox.d.ts.map +1 -1
  368. package/dist/security/applied-markings-contribution.d.ts +58 -0
  369. package/dist/security/applied-markings-contribution.d.ts.map +1 -0
  370. package/dist/security/applied-markings-host.d.ts +10 -0
  371. package/dist/security/applied-markings-host.d.ts.map +1 -0
  372. package/dist/security/applied-markings-snapshot.d.ts +67 -0
  373. package/dist/security/applied-markings-snapshot.d.ts.map +1 -0
  374. package/dist/security/applied-markings.d.ts +73 -0
  375. package/dist/security/applied-markings.d.ts.map +1 -0
  376. package/dist/security/builders.d.ts.map +1 -1
  377. package/dist/security/dataset-version-markings.d.ts +47 -0
  378. package/dist/security/dataset-version-markings.d.ts.map +1 -0
  379. package/dist/security/every.d.ts +1 -4
  380. package/dist/security/every.d.ts.map +1 -1
  381. package/dist/security/grants.d.ts +4 -5
  382. package/dist/security/grants.d.ts.map +1 -1
  383. package/dist/security/index.d.ts +2 -2
  384. package/dist/security/index.d.ts.map +1 -1
  385. package/dist/security/internal.d.ts +15 -0
  386. package/dist/security/internal.d.ts.map +1 -0
  387. package/dist/security/internal.js +135 -0
  388. package/dist/security/internal.js.map +10 -0
  389. package/dist/security/marking-propagation.d.ts +62 -0
  390. package/dist/security/marking-propagation.d.ts.map +1 -0
  391. package/dist/security/marking-sets.d.ts +14 -0
  392. package/dist/security/marking-sets.d.ts.map +1 -0
  393. package/dist/security/markings.d.ts +6 -3
  394. package/dist/security/markings.d.ts.map +1 -1
  395. package/dist/security/membership-policies.d.ts.map +1 -1
  396. package/dist/security/pipeline-markings.d.ts +20 -0
  397. package/dist/security/pipeline-markings.d.ts.map +1 -0
  398. package/dist/security/project.d.ts +4 -0
  399. package/dist/security/project.d.ts.map +1 -0
  400. package/dist/security/projection-markings.d.ts +71 -0
  401. package/dist/security/projection-markings.d.ts.map +1 -0
  402. package/dist/security/public.d.ts +10 -0
  403. package/dist/security/public.d.ts.map +1 -0
  404. package/dist/security/public.js +10 -0
  405. package/dist/security/public.js.map +9 -0
  406. package/dist/security/redactions.d.ts +4 -1
  407. package/dist/security/redactions.d.ts.map +1 -1
  408. package/dist/security/registry.d.ts +0 -1
  409. package/dist/security/registry.d.ts.map +1 -1
  410. package/dist/security/types.d.ts +34 -19
  411. package/dist/security/types.d.ts.map +1 -1
  412. package/dist/security/validation.d.ts +0 -6
  413. package/dist/security/validation.d.ts.map +1 -1
  414. package/dist/shares/internal.js +25 -24
  415. package/dist/shares/internal.js.map +2 -2
  416. package/dist/storage/action-runs/failure.js +3 -3
  417. package/dist/storage/action-runs/in-memory.d.ts +4 -0
  418. package/dist/storage/action-runs/in-memory.d.ts.map +1 -1
  419. package/dist/storage/action-runs/types.d.ts +8 -0
  420. package/dist/storage/action-runs/types.d.ts.map +1 -1
  421. package/dist/storage/activity/in-memory.d.ts +55 -0
  422. package/dist/storage/activity/in-memory.d.ts.map +1 -0
  423. package/dist/storage/activity/index.d.ts +3 -0
  424. package/dist/storage/activity/index.d.ts.map +1 -0
  425. package/dist/storage/activity/policy.d.ts +96 -0
  426. package/dist/storage/activity/policy.d.ts.map +1 -0
  427. package/dist/storage/activity/types.d.ts +191 -0
  428. package/dist/storage/activity/types.d.ts.map +1 -0
  429. package/dist/storage/agents/in-memory.d.ts +4 -0
  430. package/dist/storage/agents/in-memory.d.ts.map +1 -1
  431. package/dist/storage/agents/provider.d.ts.map +1 -1
  432. package/dist/storage/agents/provider.js +2 -5
  433. package/dist/storage/agents/provider.js.map +1 -1
  434. package/dist/storage/agents/types.d.ts +10 -9
  435. package/dist/storage/agents/types.d.ts.map +1 -1
  436. package/dist/storage/ai-limits/enforcement.js +3 -3
  437. package/dist/storage/artifacts/errors.d.ts +8 -0
  438. package/dist/storage/artifacts/errors.d.ts.map +1 -0
  439. package/dist/storage/artifacts/in-memory.d.ts +34 -0
  440. package/dist/storage/artifacts/in-memory.d.ts.map +1 -0
  441. package/dist/storage/artifacts/index.d.ts +5 -0
  442. package/dist/storage/artifacts/index.d.ts.map +1 -0
  443. package/dist/storage/artifacts/record.d.ts +17 -0
  444. package/dist/storage/artifacts/record.d.ts.map +1 -0
  445. package/dist/storage/artifacts/types.d.ts +184 -0
  446. package/dist/storage/artifacts/types.d.ts.map +1 -0
  447. package/dist/storage/auth/in-memory/auth-storage.d.ts.map +1 -1
  448. package/dist/storage/auth/in-memory/magic-links.d.ts.map +1 -1
  449. package/dist/storage/auth/in-memory/oidc-attempts.d.ts.map +1 -1
  450. package/dist/storage/auth/in-memory/sessions.d.ts +2 -11
  451. package/dist/storage/auth/in-memory/sessions.d.ts.map +1 -1
  452. package/dist/storage/auth/in-memory/shared.d.ts +1 -2
  453. package/dist/storage/auth/in-memory/shared.d.ts.map +1 -1
  454. package/dist/storage/auth/index.d.ts +1 -1
  455. package/dist/storage/auth/index.d.ts.map +1 -1
  456. package/dist/storage/auth/types.d.ts +20 -17
  457. package/dist/storage/auth/types.d.ts.map +1 -1
  458. package/dist/storage/connector-connections/provider.js +2 -2
  459. package/dist/storage/executions/in-memory.d.ts +2 -1
  460. package/dist/storage/executions/in-memory.d.ts.map +1 -1
  461. package/dist/storage/executions/index.d.ts +1 -1
  462. package/dist/storage/executions/index.d.ts.map +1 -1
  463. package/dist/storage/executions/provider.d.ts +2 -0
  464. package/dist/storage/executions/provider.d.ts.map +1 -1
  465. package/dist/storage/executions/provider.js +9 -223
  466. package/dist/storage/executions/provider.js.map +3 -4
  467. package/dist/storage/executions/types.d.ts +31 -0
  468. package/dist/storage/executions/types.d.ts.map +1 -1
  469. package/dist/storage/file-upload-sessions/provider.js +12 -12
  470. package/dist/storage/in-memory/index.d.ts +8 -0
  471. package/dist/storage/in-memory/index.d.ts.map +1 -1
  472. package/dist/storage/index.d.ts +6 -4
  473. package/dist/storage/index.d.ts.map +1 -1
  474. package/dist/storage/index.js +47 -46
  475. package/dist/storage/index.js.map +1 -1
  476. package/dist/storage/internal.d.ts +3 -0
  477. package/dist/storage/internal.d.ts.map +1 -1
  478. package/dist/storage/internal.js +66 -16
  479. package/dist/storage/internal.js.map +1 -1
  480. package/dist/storage/ontology/in-memory/sources.d.ts +2 -1
  481. package/dist/storage/ontology/in-memory/sources.d.ts.map +1 -1
  482. package/dist/storage/ontology/index.d.ts +1 -1
  483. package/dist/storage/ontology/index.d.ts.map +1 -1
  484. package/dist/storage/ontology/sources.d.ts +15 -0
  485. package/dist/storage/ontology/sources.d.ts.map +1 -1
  486. package/dist/storage/projection-runs/provider.js +3 -3
  487. package/dist/storage/share-grants/in-memory.d.ts +2 -1
  488. package/dist/storage/share-grants/in-memory.d.ts.map +1 -1
  489. package/dist/storage/share-grants/index.d.ts +1 -1
  490. package/dist/storage/share-grants/index.d.ts.map +1 -1
  491. package/dist/storage/share-grants/types.d.ts +6 -0
  492. package/dist/storage/share-grants/types.d.ts.map +1 -1
  493. package/dist/storage/types.d.ts +4 -0
  494. package/dist/storage/types.d.ts.map +1 -1
  495. package/dist/storage/workflow-runs/in-memory.d.ts +4 -0
  496. package/dist/storage/workflow-runs/in-memory.d.ts.map +1 -1
  497. package/dist/storage/workflow-runs/provider.js +14 -13
  498. package/dist/storage/workflow-runs/provider.js.map +1 -1
  499. package/dist/storage/workflow-runs/types.d.ts +5 -0
  500. package/dist/storage/workflow-runs/types.d.ts.map +1 -1
  501. package/dist/syncs/index.js +35 -34
  502. package/dist/syncs/index.js.map +1 -1
  503. package/dist/testing/action-run-storage-contract.d.ts.map +1 -1
  504. package/dist/testing/activity-storage-contract.d.ts +14 -0
  505. package/dist/testing/activity-storage-contract.d.ts.map +1 -0
  506. package/dist/testing/agent-storage-contract.d.ts.map +1 -1
  507. package/dist/testing/artifact-storage-contract.d.ts +13 -0
  508. package/dist/testing/artifact-storage-contract.d.ts.map +1 -0
  509. package/dist/testing/auth-storage-contract.d.ts.map +1 -1
  510. package/dist/testing/execution-storage-contract.d.ts.map +1 -1
  511. package/dist/testing/index.d.ts +2 -0
  512. package/dist/testing/index.d.ts.map +1 -1
  513. package/dist/testing/index.js +4493 -3225
  514. package/dist/testing/index.js.map +14 -12
  515. package/dist/testing/lake-merge-storage-contract.d.ts.map +1 -1
  516. package/dist/testing/lake-storage-contract.d.ts +2 -0
  517. package/dist/testing/lake-storage-contract.d.ts.map +1 -1
  518. package/dist/testing/ontology-storage-contract.d.ts.map +1 -1
  519. package/dist/testing/share-grant-storage-contract.d.ts.map +1 -1
  520. package/dist/webhooks/internal.js +28 -27
  521. package/dist/webhooks/internal.js.map +2 -2
  522. package/dist/workers/index.js +2 -2
  523. package/dist/workflows/builders.d.ts.map +1 -1
  524. package/dist/workflows/index.js +57 -51
  525. package/dist/workflows/index.js.map +1 -1
  526. package/dist/workflows/types.d.ts +9 -0
  527. package/dist/workflows/types.d.ts.map +1 -1
  528. package/dist/workflows/validation.d.ts +7 -0
  529. package/dist/workflows/validation.d.ts.map +1 -1
  530. package/package.json +32 -2
  531. package/src/actions/execution.ts +18 -13
  532. package/src/actions/request.ts +18 -3
  533. package/src/actions/run-authorization.ts +23 -0
  534. package/src/activity/README.md +155 -0
  535. package/src/activity/connection.ts +217 -0
  536. package/src/activity/device.ts +41 -0
  537. package/src/activity/execution.ts +210 -0
  538. package/src/activity/service.ts +274 -0
  539. package/src/activity/shares.ts +62 -0
  540. package/src/activity/timeline.ts +424 -0
  541. package/src/agents/index.ts +8 -3
  542. package/src/agents/request.ts +5 -0
  543. package/src/agents/skills.ts +6 -0
  544. package/src/agents/types.ts +8 -8
  545. package/src/agents/validation.ts +2 -0
  546. package/src/artifacts/address.ts +132 -0
  547. package/src/artifacts/csv.ts +108 -0
  548. package/src/artifacts/errors.ts +21 -0
  549. package/src/artifacts/execution.ts +153 -0
  550. package/src/artifacts/frames/assets.ts +88 -0
  551. package/src/artifacts/frames/grants.ts +124 -0
  552. package/src/artifacts/frames/index.ts +15 -0
  553. package/src/artifacts/frames/kit.ts +392 -0
  554. package/src/artifacts/frames/probe.ts +309 -0
  555. package/src/artifacts/frames/protocol.ts +174 -0
  556. package/src/artifacts/frames/runtime.ts +213 -0
  557. package/src/artifacts/html.ts +25 -0
  558. package/src/artifacts/ids.ts +18 -0
  559. package/src/artifacts/index.ts +61 -0
  560. package/src/artifacts/kinds.ts +8 -0
  561. package/src/artifacts/limits.ts +27 -0
  562. package/src/artifacts/outline.ts +62 -0
  563. package/src/artifacts/publish/files.ts +87 -0
  564. package/src/artifacts/publish/index.ts +12 -0
  565. package/src/artifacts/publish/publish.ts +250 -0
  566. package/src/artifacts/publish/references.ts +130 -0
  567. package/src/artifacts/publish/validate/document.ts +114 -0
  568. package/src/artifacts/publish/validate/file.ts +19 -0
  569. package/src/artifacts/publish/validate/sheet.ts +251 -0
  570. package/src/artifacts/publish/validate/slides.ts +134 -0
  571. package/src/artifacts/references.ts +11 -0
  572. package/src/artifacts/resolve.ts +97 -0
  573. package/src/artifacts/theme.ts +116 -0
  574. package/src/artifacts/warnings.ts +10 -0
  575. package/src/artifacts/workbook.ts +315 -0
  576. package/src/auth/cookies.ts +3 -20
  577. package/src/auth/index.ts +0 -6
  578. package/src/auth/runtime.ts +59 -76
  579. package/src/auth/session-cache.ts +2 -9
  580. package/src/auth/types.ts +4 -8
  581. package/src/auth/validation.ts +0 -2
  582. package/src/authorization/decision.ts +13 -23
  583. package/src/authorization/grant-kinds.ts +33 -28
  584. package/src/authorization/index.ts +0 -1
  585. package/src/authorization/resolve.ts +10 -6
  586. package/src/blob-storage/internal.ts +1 -1
  587. package/src/blob-storage/media-type.ts +69 -0
  588. package/src/datasets/builders.ts +66 -2
  589. package/src/datasets/column-index.ts +19 -0
  590. package/src/datasets/execution.ts +23 -9
  591. package/src/deploy/services.ts +0 -1
  592. package/src/deploy/types.ts +1 -2
  593. package/src/deploy/validation.ts +3 -1
  594. package/src/errors/internal.ts +1 -0
  595. package/src/events/execution.ts +134 -21
  596. package/src/execution/authorization.ts +11 -5
  597. package/src/execution/authorized-object-reader.ts +270 -256
  598. package/src/execution/object-reader-clearance.ts +91 -0
  599. package/src/execution/object-reader-ontology.ts +63 -0
  600. package/src/execution/object-reader-security.ts +146 -0
  601. package/src/http/api-routes.ts +125 -0
  602. package/src/index.ts +72 -17
  603. package/src/lake-storage/in-memory.ts +26 -3
  604. package/src/lake-storage/index.ts +13 -1
  605. package/src/lake-storage/lineage.ts +385 -0
  606. package/src/lake-storage/sql-transforms.ts +45 -0
  607. package/src/lake-storage/types.ts +59 -1
  608. package/src/lake-storage/version-inputs.ts +35 -6
  609. package/src/maintenance/ontology-maintenance.ts +15 -0
  610. package/src/models/execution/embedding.ts +6 -6
  611. package/src/objects/clearance-redaction.ts +138 -0
  612. package/src/objects/link/authorization.ts +27 -7
  613. package/src/objects/link/remove.ts +2 -2
  614. package/src/objects/link/upsert-batch.ts +7 -5
  615. package/src/objects/link/upsert.ts +2 -2
  616. package/src/objects/object/delete.ts +2 -0
  617. package/src/objects/object/upsert-batch.ts +2 -4
  618. package/src/objects/object/upsert.ts +2 -3
  619. package/src/objects/property-clearance.ts +171 -152
  620. package/src/objects/query/clearance-admission.ts +112 -0
  621. package/src/objects/query/link-query-clearance.ts +73 -0
  622. package/src/objects/vectors/README.md +4 -0
  623. package/src/objects/vectors/handle.ts +11 -2
  624. package/src/objects/vectors/indexing-generate.ts +2 -2
  625. package/src/objects/vectors/profile.ts +5 -0
  626. package/src/ontology/builders.ts +12 -1
  627. package/src/ontology/docs-markdown.ts +1 -1
  628. package/src/pipelines/index.ts +2 -0
  629. package/src/pipelines/lineage.ts +45 -0
  630. package/src/projections/internal.ts +2 -2
  631. package/src/runtime/create.ts +4 -0
  632. package/src/runtime/host.ts +55 -0
  633. package/src/runtime/internal.ts +2 -0
  634. package/src/runtime/ontology-mutations.ts +19 -4
  635. package/src/runtime/resolve-definitions.ts +66 -3
  636. package/src/runtime/sixb.ts +18 -1
  637. package/src/sandboxes/README.md +29 -7
  638. package/src/sandboxes/auth.ts +16 -0
  639. package/src/sandboxes/config.ts +2 -7
  640. package/src/sandboxes/configuration.ts +61 -7
  641. package/src/sandboxes/index.ts +1 -0
  642. package/src/sandboxes/sandbox.ts +27 -5
  643. package/src/security/applied-markings-contribution.ts +277 -0
  644. package/src/security/applied-markings-host.ts +41 -0
  645. package/src/security/applied-markings-snapshot.ts +235 -0
  646. package/src/security/applied-markings.ts +405 -0
  647. package/src/security/builders.ts +7 -2
  648. package/src/security/dataset-version-markings.ts +163 -0
  649. package/src/security/every.ts +0 -4
  650. package/src/security/grants.ts +42 -27
  651. package/src/security/index.ts +3 -3
  652. package/src/security/internal.ts +18 -0
  653. package/src/security/marking-propagation.ts +255 -0
  654. package/src/security/marking-sets.ts +42 -0
  655. package/src/security/markings.ts +29 -178
  656. package/src/security/membership-policies.ts +3 -1
  657. package/src/security/pipeline-markings.ts +175 -0
  658. package/src/security/project.ts +8 -0
  659. package/src/security/projection-markings.ts +421 -0
  660. package/src/security/public.ts +10 -0
  661. package/src/security/redactions.ts +7 -2
  662. package/src/security/registry.ts +0 -8
  663. package/src/security/types.ts +38 -26
  664. package/src/security/validation.ts +28 -19
  665. package/src/storage/action-runs/in-memory.ts +18 -0
  666. package/src/storage/action-runs/types.ts +8 -0
  667. package/src/storage/activity/in-memory.ts +374 -0
  668. package/src/storage/activity/index.ts +27 -0
  669. package/src/storage/activity/policy.ts +430 -0
  670. package/src/storage/activity/types.ts +211 -0
  671. package/src/storage/agents/in-memory.ts +10 -0
  672. package/src/storage/agents/provider.ts +2 -13
  673. package/src/storage/agents/types.ts +10 -17
  674. package/src/storage/artifacts/errors.ts +16 -0
  675. package/src/storage/artifacts/in-memory.ts +240 -0
  676. package/src/storage/artifacts/index.ts +30 -0
  677. package/src/storage/artifacts/record.ts +200 -0
  678. package/src/storage/artifacts/types.ts +209 -0
  679. package/src/storage/auth/in-memory/auth-storage.ts +0 -18
  680. package/src/storage/auth/in-memory/magic-links.ts +0 -3
  681. package/src/storage/auth/in-memory/oidc-attempts.ts +0 -3
  682. package/src/storage/auth/in-memory/sessions.ts +22 -25
  683. package/src/storage/auth/in-memory/shared.ts +1 -10
  684. package/src/storage/auth/index.ts +2 -0
  685. package/src/storage/auth/types.ts +20 -18
  686. package/src/storage/executions/in-memory.ts +61 -1
  687. package/src/storage/executions/index.ts +3 -0
  688. package/src/storage/executions/provider.ts +12 -0
  689. package/src/storage/executions/types.ts +30 -0
  690. package/src/storage/in-memory/index.ts +16 -0
  691. package/src/storage/index.ts +63 -0
  692. package/src/storage/internal.ts +30 -0
  693. package/src/storage/ontology/in-memory/sources.ts +23 -0
  694. package/src/storage/ontology/index.ts +2 -0
  695. package/src/storage/ontology/sources.ts +17 -0
  696. package/src/storage/share-grants/in-memory.ts +8 -0
  697. package/src/storage/share-grants/index.ts +1 -0
  698. package/src/storage/share-grants/types.ts +8 -0
  699. package/src/storage/types.ts +4 -0
  700. package/src/storage/workflow-runs/in-memory.ts +16 -0
  701. package/src/storage/workflow-runs/types.ts +5 -0
  702. package/src/testing/action-run-storage-contract.ts +25 -0
  703. package/src/testing/activity-storage-contract.ts +840 -0
  704. package/src/testing/agent-storage-contract.ts +22 -21
  705. package/src/testing/artifact-storage-contract.ts +517 -0
  706. package/src/testing/auth-storage-contract.ts +61 -107
  707. package/src/testing/execution-storage-contract.ts +147 -3
  708. package/src/testing/index.ts +9 -0
  709. package/src/testing/lake-merge-storage-contract.ts +38 -0
  710. package/src/testing/lake-storage-contract.ts +247 -2
  711. package/src/testing/materializer-storage-contract.ts +1 -0
  712. package/src/testing/ontology-storage-contract.ts +57 -2
  713. package/src/testing/share-grant-storage-contract.ts +15 -0
  714. package/src/workflows/builders.ts +14 -0
  715. package/src/workflows/types.ts +9 -0
  716. package/src/workflows/validation.ts +72 -0
  717. package/dist/auth/audience.d.ts +0 -8
  718. package/dist/auth/audience.d.ts.map +0 -1
  719. package/dist/authorization/application-access.d.ts +0 -18
  720. package/dist/authorization/application-access.d.ts.map +0 -1
  721. package/dist/chunk-1f7wpmyp.js.map +0 -14
  722. package/dist/chunk-1k89ecfr.js +0 -85
  723. package/dist/chunk-1k89ecfr.js.map +0 -10
  724. package/dist/chunk-2jntasmh.js.map +0 -13
  725. package/dist/chunk-3gnrh4ve.js.map +0 -40
  726. package/dist/chunk-85yvv5n0.js.map +0 -12
  727. package/dist/chunk-9gyp8hg1.js +0 -363
  728. package/dist/chunk-9gyp8hg1.js.map +0 -14
  729. package/dist/chunk-dnmadg9k.js.map +0 -15
  730. package/dist/chunk-enpsx8k5.js.map +0 -10
  731. package/dist/chunk-hkc3jct7.js.map +0 -10
  732. package/dist/chunk-kyzq4wy9.js.map +0 -18
  733. package/dist/chunk-s16apyk9.js +0 -256
  734. package/dist/chunk-s16apyk9.js.map +0 -16
  735. package/dist/chunk-s54c868q.js.map +0 -12
  736. package/dist/chunk-tw03bsmb.js.map +0 -11
  737. package/dist/chunk-wwdfe68s.js +0 -128
  738. package/dist/chunk-wwdfe68s.js.map +0 -11
  739. package/dist/chunk-xt1zt7gv.js.map +0 -13
  740. package/dist/chunk-y7rqfrgg.js.map +0 -24
  741. package/dist/security/applications.d.ts +0 -15
  742. package/dist/security/applications.d.ts.map +0 -1
  743. package/src/auth/audience.ts +0 -28
  744. package/src/authorization/application-access.ts +0 -34
  745. package/src/security/applications.ts +0 -11
  746. /package/dist/{chunk-t6vq7bff.js.map → chunk-0bphap9y.js.map} +0 -0
  747. /package/dist/{chunk-7mbzgd9m.js.map → chunk-1cc1xaf3.js.map} +0 -0
  748. /package/dist/{chunk-6gmfggss.js.map → chunk-431pyp2c.js.map} +0 -0
  749. /package/dist/{chunk-c85m1hyj.js.map → chunk-447a5c0p.js.map} +0 -0
  750. /package/dist/{chunk-80mc0971.js.map → chunk-561r0yc9.js.map} +0 -0
  751. /package/dist/{chunk-5e43w60z.js.map → chunk-5948n82c.js.map} +0 -0
  752. /package/dist/{chunk-yzwja0mj.js.map → chunk-5hx48dnn.js.map} +0 -0
  753. /package/dist/{chunk-q1vkr2ys.js.map → chunk-c1rxbz5y.js.map} +0 -0
  754. /package/dist/{chunk-gc4ntf7d.js.map → chunk-cwdzcv37.js.map} +0 -0
  755. /package/dist/{chunk-fa02jy15.js.map → chunk-cy4mbddw.js.map} +0 -0
  756. /package/dist/{chunk-7kg3k1m9.js.map → chunk-d09e3rax.js.map} +0 -0
  757. /package/dist/{chunk-rhg02hxq.js.map → chunk-d7dnxdep.js.map} +0 -0
  758. /package/dist/{chunk-wz0xs816.js.map → chunk-ky3j490c.js.map} +0 -0
  759. /package/dist/{chunk-vyf9kfqf.js.map → chunk-q7gn29y3.js.map} +0 -0
  760. /package/dist/{chunk-v9xd5wzd.js.map → chunk-s7jg7pmn.js.map} +0 -0
  761. /package/dist/{chunk-nre82s12.js.map → chunk-vf57cr4t.js.map} +0 -0
  762. /package/dist/{chunk-9ybhtmg4.js.map → chunk-vvxtn22d.js.map} +0 -0
  763. /package/dist/{chunk-7t429e3f.js.map → chunk-xvsc5m8n.js.map} +0 -0
  764. /package/dist/{chunk-kg5j6fct.js.map → chunk-y5tah2kf.js.map} +0 -0
  765. /package/dist/{chunk-52bk93x8.js.map → chunk-z58tm0hm.js.map} +0 -0
@@ -0,0 +1,676 @@
1
+ // @bun
2
+ import {
3
+ NO_CONTRIBUTION
4
+ } from "./chunk-x0v3jd47.js";
5
+ import {
6
+ lineageColumn,
7
+ isUnknownLineage,
8
+ versionLineage
9
+ } from "./chunk-ff5xkv0p.js";
10
+ import {
11
+ runStepLineage2,
12
+ stepReadColumns
13
+ } from "./chunk-g5bvzyyr.js";
14
+ import {
15
+ SecurityValidationError2
16
+ } from "./chunk-jcfw4h7m.js";
17
+
18
+ // src/security/projection-markings.ts
19
+ function validateProjectionMarkings(projections, ontology, markings) {
20
+ const all = [
21
+ ...projections.listObjects(),
22
+ ...projections.listLinks(),
23
+ ...projections.listTelemetry()
24
+ ];
25
+ for (const projection of all) {
26
+ const originsOf = (column) => markings.of({ datasetId: projection.datasetId, column });
27
+ const violation = firstViolation(projection, ontology, (column) => [
28
+ ...originsOf(column).keys()
29
+ ]);
30
+ if (!violation)
31
+ continue;
32
+ const carries = (column) => {
33
+ const origins = originsOf(column);
34
+ return {
35
+ text: describeOrigins(origins, `${projection.datasetId}.${column}`),
36
+ inherited: [...origins.values()].some((origin) => origin.steps.length > 0)
37
+ };
38
+ };
39
+ throw new SecurityValidationError2(violationMessage(`[Sixb] Projection '${projection.id}'`, projection.datasetId, violation, carries));
40
+ }
41
+ }
42
+ function assertProjectionVersionMarkings2(input) {
43
+ const { projection, version, classification } = input;
44
+ const markingsOf = (column) => [...classification.columns.get(column) ?? []].sort();
45
+ const violation = firstViolation(projection, input.ontology, markingsOf);
46
+ if (!violation)
47
+ return;
48
+ const subject = `[Sixb] Projection '${projection.id}' cannot read version '${version.versionId}' of dataset '${version.datasetId}'`;
49
+ const carries = (column) => ({
50
+ text: `${markingList(markingsOf(column))} in this version`,
51
+ inherited: true
52
+ });
53
+ const conservative = classification.conservative === undefined ? "" : ` The version was classified with every marking its sources could hold, because ${classification.conservative}.`;
54
+ const rerun = `If the code that writes '${version.datasetId}' no longer derives these markings, rerun its pipeline.`;
55
+ throw new Error(`${violationMessage(subject, version.datasetId, violation, carries)}${conservative} ${rerun}`);
56
+ }
57
+ function projectionSurplus(projection, ontology, markingsOf) {
58
+ const properties = [];
59
+ const keys = [];
60
+ for (const violation of projectionMarkingViolations(projection, ontology, markingsOf)) {
61
+ switch (violation.kind) {
62
+ case "undeclared":
63
+ properties.push({
64
+ objectTypeId: violation.objectTypeId,
65
+ propertyId: violation.propertyId,
66
+ column: violation.column,
67
+ markings: violation.missing
68
+ });
69
+ break;
70
+ case "markedKeyColumn": {
71
+ const markings = markingsOf(violation.column);
72
+ for (const target of violation.targets) {
73
+ keys.push({ target, column: violation.column, role: violation.role, markings });
74
+ }
75
+ const property = violation.property;
76
+ if (property && violation.targets.some((target) => target.kind === "link")) {
77
+ properties.push({ ...property, column: violation.column, markings });
78
+ }
79
+ break;
80
+ }
81
+ case "markedKeyProperty":
82
+ case "telemetry":
83
+ break;
84
+ }
85
+ }
86
+ return { properties, keys };
87
+ }
88
+ function firstViolation(projection, ontology, markingsOf) {
89
+ const first = projectionMarkingViolations(projection, ontology, markingsOf).next();
90
+ return first.done ? null : first.value;
91
+ }
92
+ function* projectionMarkingViolations(projection, ontology, markingsOf) {
93
+ switch (projection._tag) {
94
+ case "ObjectProjectionDefinition": {
95
+ const objectType = ontology.getObjectTypeById(projection.objectTypeId);
96
+ if (objectType)
97
+ yield* objectProjectionViolations(projection, objectType, markingsOf);
98
+ return;
99
+ }
100
+ case "LinkProjectionDefinition":
101
+ yield* linkProjectionViolations(projection, markingsOf);
102
+ return;
103
+ case "TelemetryProjectionDefinition":
104
+ yield* telemetryProjectionViolations(projection, markingsOf);
105
+ return;
106
+ }
107
+ }
108
+ function* objectProjectionViolations(projection, objectType, markingsOf) {
109
+ const keyRoles = objectProjectionKeyRoles(projection, objectType);
110
+ for (const [propertyId, column] of Object.entries(projection.properties)) {
111
+ const property = objectType.properties.find((candidate) => candidate.id === propertyId);
112
+ const path = `${objectType.id}.${propertyId}`;
113
+ const keyRole = keyRoles.get(propertyId);
114
+ if (keyRole) {
115
+ if (markingsOf(column).length > 0) {
116
+ yield {
117
+ kind: "markedKeyColumn",
118
+ column,
119
+ role: keyRole.role,
120
+ targets: keyRole.targets,
121
+ property: { objectTypeId: objectType.id, propertyId }
122
+ };
123
+ } else if (property?.markings) {
124
+ yield { kind: "markedKeyProperty", property: path, role: keyRole.role };
125
+ }
126
+ continue;
127
+ }
128
+ const declared = new Set(property?.markings ?? []);
129
+ const missing = markingsOf(column).filter((markingId) => !declared.has(markingId));
130
+ if (missing.length > 0) {
131
+ yield {
132
+ kind: "undeclared",
133
+ property: path,
134
+ objectTypeId: objectType.id,
135
+ propertyId,
136
+ column,
137
+ missing
138
+ };
139
+ }
140
+ }
141
+ for (const [linkId, link] of Object.entries(projection.links)) {
142
+ if (link.sourceField === undefined)
143
+ continue;
144
+ const role = `keys link '${objectType.id}.${linkId}'`;
145
+ const target = linkTarget(objectType.id, linkId, link.targetObjectTypeId);
146
+ yield* markedKeyColumn(link.sourceField, role, [target], markingsOf);
147
+ }
148
+ const conflictResolution = projection.conflictResolution;
149
+ if (conflictResolution?.strategy === "mostRecent") {
150
+ const role = "decides which value wins under 'mostRecent'";
151
+ const target = { kind: "type", objectTypeId: objectType.id };
152
+ yield* markedKeyColumn(conflictResolution.sourceTimestamp, role, [target], markingsOf);
153
+ }
154
+ }
155
+ function* linkProjectionViolations(projection, markingsOf) {
156
+ const role = `keys link '${projection.sourceObjectTypeId}.${projection.linkId}'`;
157
+ const targets = [
158
+ linkTarget(projection.sourceObjectTypeId, projection.linkId, projection.targetObjectTypeId)
159
+ ];
160
+ yield* markedKeyColumn(projection.sourceField, role, targets, markingsOf);
161
+ yield* markedKeyColumn(projection.targetField, role, targets, markingsOf);
162
+ }
163
+ function* telemetryProjectionViolations(projection, markingsOf) {
164
+ const columns = [
165
+ projection.objectIdField,
166
+ projection.atField,
167
+ ...Object.values(projection.properties).flatMap((mapping) => mapping.unitField === undefined ? [mapping.valueField] : [mapping.valueField, mapping.unitField])
168
+ ];
169
+ for (const column of columns) {
170
+ if (markingsOf(column).length > 0)
171
+ yield { kind: "telemetry", column };
172
+ }
173
+ }
174
+ function objectProjectionKeyRoles(projection, objectType) {
175
+ const roles = new Map;
176
+ for (const property of objectType.properties) {
177
+ if (!property.primary)
178
+ continue;
179
+ roles.set(property.id, {
180
+ role: `becomes the id of '${objectType.id}'`,
181
+ targets: [{ kind: "type", objectTypeId: objectType.id }]
182
+ });
183
+ }
184
+ for (const [linkId, link] of Object.entries(projection.links)) {
185
+ if (link.sourcePropertyId === undefined)
186
+ continue;
187
+ roles.set(link.sourcePropertyId, {
188
+ role: `keys link '${objectType.id}.${linkId}'`,
189
+ targets: [
190
+ ...roles.get(link.sourcePropertyId)?.targets ?? [],
191
+ linkTarget(objectType.id, linkId, link.targetObjectTypeId)
192
+ ]
193
+ });
194
+ }
195
+ return roles;
196
+ }
197
+ function linkTarget(objectTypeId, linkId, targetObjectTypeId) {
198
+ return { kind: "link", objectTypeId, linkId, targetObjectTypeId };
199
+ }
200
+ function* markedKeyColumn(column, role, targets, markingsOf) {
201
+ if (markingsOf(column).length > 0)
202
+ yield { kind: "markedKeyColumn", column, role, targets };
203
+ }
204
+ function violationMessage(subject, datasetId, violation, carries) {
205
+ const path = (column) => `${datasetId}.${column}`;
206
+ switch (violation.kind) {
207
+ case "undeclared":
208
+ return `${subject}: property '${violation.property}' is projected from column '${path(violation.column)}', which carries ${carries(violation.column).text}. Add markings: ${markingList(violation.missing)} to the property.`;
209
+ case "markedKeyColumn": {
210
+ const carried = carries(violation.column);
211
+ const inherited = carried.inherited ? `, but carries ${carried.text}` : "";
212
+ return `${subject}: column '${path(violation.column)}' ${violation.role} and cannot carry markings${inherited}.`;
213
+ }
214
+ case "markedKeyProperty":
215
+ return `${subject}: property '${violation.property}' ${violation.role} and cannot carry markings.`;
216
+ case "telemetry":
217
+ return `${subject}: column '${path(violation.column)}' carries ${carries(violation.column).text}, and telemetry projections cannot read marked columns yet.`;
218
+ }
219
+ }
220
+ function describeOrigins(origins, columnPath) {
221
+ const groups = new Map;
222
+ for (const [markingId, origin] of origins) {
223
+ const path = originPath(origin, columnPath);
224
+ groups.set(path, [...groups.get(path) ?? [], markingId]);
225
+ }
226
+ return [...groups].map(([path, markingIds]) => `${markingList(markingIds)}${path}`).join(" and ");
227
+ }
228
+ function originPath(origin, columnPath) {
229
+ const source = `${origin.column.datasetId}.${origin.column.column}`;
230
+ if (origin.steps.length === 0 && source === columnPath)
231
+ return "";
232
+ const steps = origin.steps.map((step) => `'${step}'`).join(", ");
233
+ return ` from '${source}' through ${origin.steps.length === 1 ? "step" : "steps"} ${steps}`;
234
+ }
235
+ function markingList(markings) {
236
+ return `[${markings.join(", ")}]`;
237
+ }
238
+
239
+ // src/security/marking-propagation.ts
240
+ function registeredSteps(pipelines) {
241
+ return pipelines.flatMap((pipeline) => pipeline.graph.nodes.map(({ step }) => ({ pipelineId: pipeline.id, step })));
242
+ }
243
+ function runStepLineages(datasetsById) {
244
+ const lineages = new Map;
245
+ return ({ step }) => {
246
+ if (step.executor.kind !== "run")
247
+ return;
248
+ let lineage = lineages.get(step);
249
+ if (!lineage) {
250
+ lineage = runStepLineage2(step, datasetsById);
251
+ lineages.set(step, lineage);
252
+ }
253
+ return lineage;
254
+ };
255
+ }
256
+ function stepLabel(entry) {
257
+ return `${entry.pipelineId}/${entry.step.id}`;
258
+ }
259
+ var NO_MARKINGS = new Map;
260
+
261
+ class MarkingPropagation {
262
+ datasetsById;
263
+ markings = new Map;
264
+ rowMarkings = new Map;
265
+ ordered;
266
+ readers = new Map;
267
+ known = new Map;
268
+ queue = new Set;
269
+ constructor(datasetsById, steps) {
270
+ this.datasetsById = datasetsById;
271
+ this.ordered = inDependencyOrder(steps);
272
+ for (const entry of steps) {
273
+ for (const input of new Set(Object.values(entry.step.inputs).map((dataset) => dataset.id))) {
274
+ appendTo(this.readers, input, entry);
275
+ }
276
+ }
277
+ }
278
+ of(ref) {
279
+ return this.markedColumns(ref.datasetId).get(ref.column) ?? NO_MARKINGS;
280
+ }
281
+ derive(lineageOf) {
282
+ for (const entry of this.ordered) {
283
+ if (this.known.has(entry))
284
+ continue;
285
+ const lineage = lineageOf(entry);
286
+ if (!lineage)
287
+ continue;
288
+ this.known.set(entry, { lineage, reads: stepReadColumns(entry.step) });
289
+ this.queue.add(entry);
290
+ }
291
+ for (const entry of this.queue) {
292
+ this.queue.delete(entry);
293
+ const known = this.known.get(entry);
294
+ if (!known || !this.apply(entry, known))
295
+ continue;
296
+ for (const reader of this.readers.get(entry.step.output.id) ?? []) {
297
+ if (this.known.has(reader))
298
+ this.queue.add(reader);
299
+ }
300
+ }
301
+ return this;
302
+ }
303
+ apply(entry, { lineage, reads }) {
304
+ const label = stepLabel(entry);
305
+ const rows = this.union(lineage.rows);
306
+ for (const input of new Set(Object.values(entry.step.inputs).map((dataset) => dataset.id))) {
307
+ for (const [markingId, origin] of this.rowMarkings.get(input) ?? []) {
308
+ if (!rows.has(markingId))
309
+ rows.set(markingId, origin);
310
+ }
311
+ }
312
+ let everyRead;
313
+ let changed = false;
314
+ const outputId = entry.step.output.id;
315
+ let outputRows = this.rowMarkings.get(outputId);
316
+ for (const [markingId, origin] of rows) {
317
+ if (outputRows?.has(markingId))
318
+ continue;
319
+ if (!outputRows) {
320
+ outputRows = new Map;
321
+ this.rowMarkings.set(outputId, outputRows);
322
+ }
323
+ outputRows.set(markingId, { column: origin.column, steps: [...origin.steps, label] });
324
+ changed = true;
325
+ }
326
+ const marked = this.markedColumns(outputId);
327
+ for (const { name: column } of this.datasetsById.get(outputId)?.schema.columns ?? []) {
328
+ const values = lineageColumn(lineage, column);
329
+ const valueSource = values ? this.union(values) : everyRead ?? this.union(reads);
330
+ if (!values)
331
+ everyRead = valueSource;
332
+ for (const source of [rows, valueSource]) {
333
+ for (const [markingId, origin] of source) {
334
+ let origins = marked.get(column);
335
+ if (origins?.has(markingId))
336
+ continue;
337
+ if (!origins) {
338
+ origins = new Map;
339
+ marked.set(column, origins);
340
+ }
341
+ origins.set(markingId, { column: origin.column, steps: [...origin.steps, label] });
342
+ changed = true;
343
+ }
344
+ }
345
+ }
346
+ return changed;
347
+ }
348
+ markedColumns(datasetId) {
349
+ let columns = this.markings.get(datasetId);
350
+ if (!columns) {
351
+ columns = new Map;
352
+ for (const column of this.datasetsById.get(datasetId)?.schema.columns ?? []) {
353
+ if (!column.markings?.length)
354
+ continue;
355
+ const origin = { column: { datasetId, column: column.name }, steps: [] };
356
+ columns.set(column.name, new Map(column.markings.map((id) => [id, origin])));
357
+ }
358
+ this.markings.set(datasetId, columns);
359
+ }
360
+ return columns;
361
+ }
362
+ union(columns) {
363
+ const union = new Map;
364
+ for (const column of columns) {
365
+ for (const [markingId, origin] of this.of(column)) {
366
+ if (!union.has(markingId))
367
+ union.set(markingId, origin);
368
+ }
369
+ }
370
+ return union;
371
+ }
372
+ }
373
+ function inDependencyOrder(steps) {
374
+ const producers = producersByDataset(steps);
375
+ const ordered = [];
376
+ const visited = new Set;
377
+ const visit = (entry) => {
378
+ if (visited.has(entry))
379
+ return;
380
+ visited.add(entry);
381
+ for (const input of Object.values(entry.step.inputs)) {
382
+ for (const producer of producers.get(input.id) ?? [])
383
+ visit(producer);
384
+ }
385
+ ordered.push(entry);
386
+ };
387
+ for (const entry of steps)
388
+ visit(entry);
389
+ return ordered;
390
+ }
391
+ function producersByDataset(steps) {
392
+ const producers = new Map;
393
+ for (const entry of steps)
394
+ appendTo(producers, entry.step.output.id, entry);
395
+ return producers;
396
+ }
397
+ function appendTo(map, key, value) {
398
+ const values = map.get(key);
399
+ if (values)
400
+ values.push(value);
401
+ else
402
+ map.set(key, [value]);
403
+ }
404
+
405
+ // src/security/applied-markings-contribution.ts
406
+ function appliedContribution(projection, source, read, context) {
407
+ const { datasetId, versionId } = source.datasetVersion;
408
+ const subject = `version '${versionId}' of '${datasetId}'`;
409
+ const target = projectionTarget(projection);
410
+ const hint = rerunHint(datasetId, read.kind === "read" ? read.version : undefined, context);
411
+ const every = [...context.everyMarking].sort();
412
+ if (read.kind === "failed") {
413
+ return sealed(projection.id, target, every, hint, {
414
+ reason: `the ${subject} it applied, which could not be read from the lake,`,
415
+ detail: `applied ${subject}, which could not be read from the lake: ${sentence(errorMessage(read.error))}`
416
+ });
417
+ }
418
+ if (read.kind === "missing") {
419
+ return sealed(projection.id, target, every, hint, {
420
+ reason: `the ${subject} it applied, which the lake no longer has,`,
421
+ detail: `applied ${subject}, which the lake no longer has.`
422
+ });
423
+ }
424
+ const { columns, conservative } = read.classification;
425
+ const because = conservative === undefined ? "" : ` The version was classified with every marking its sources could hold, because ${conservative}.`;
426
+ if (datasetId !== projection.datasetId || source.projectionRevision !== context.revisionOf(projection.id)) {
427
+ const markings = appliedVersionMarkings(read, context.everyMarking);
428
+ return sealed(projection.id, target, markings, hint, {
429
+ reason: `the ${subject} it applied under an earlier definition of the projection`,
430
+ detail: `applied ${subject} under an earlier definition of the projection, and that version carries ${markingList2(markings)}.${because}`
431
+ });
432
+ }
433
+ const markingsOf = (column) => [...columns.get(column) ?? []].sort();
434
+ const surplus = projectionSurplus(projection, context.ontology, markingsOf);
435
+ if (surplus.properties.length === 0 && surplus.keys.length === 0)
436
+ return NO_CONTRIBUTION;
437
+ const column = (name) => `'${datasetId}.${name}'`;
438
+ const seals = surplus.keys.map((key) => ({
439
+ target: key.target,
440
+ seal: {
441
+ projectionId: projection.id,
442
+ markings: key.markings,
443
+ reason: `in the version '${versionId}' it applied, column ${column(key.column)}, which ${key.role},`
444
+ }
445
+ }));
446
+ const details = [
447
+ ...surplus.keys.map((key) => `column ${column(key.column)} ${key.role} and carries ${markingList2(key.markings)}`),
448
+ ...surplus.properties.map((property) => `property '${property.objectTypeId}.${property.propertyId}' is projected from column ${column(property.column)}, which carries ${markingList2(property.markings)}`)
449
+ ];
450
+ const consequences = [];
451
+ if (seals.length > 0) {
452
+ const markings = [...new Set(seals.flatMap(({ seal }) => seal.markings))].sort();
453
+ consequences.push(`${describeTargets(seals.map(({ target }) => target))} cannot be read without clearance for ${markingList2(markings)}`);
454
+ }
455
+ if (surplus.properties.length > 0) {
456
+ const names = surplus.properties.map((p) => `'${p.objectTypeId}.${p.propertyId}'`);
457
+ const verb = surplus.properties.length === 1 ? "keeps" : "keep";
458
+ consequences.push(`${describeNames(names)} ${verb} these markings`);
459
+ }
460
+ return {
461
+ properties: surplus.properties.map(({ objectTypeId, propertyId, markings }) => ({
462
+ objectTypeId,
463
+ propertyId,
464
+ markings
465
+ })),
466
+ seals,
467
+ notice: {
468
+ projectionId: projection.id,
469
+ sealed: seals.length > 0,
470
+ message: `[Sixb] Projection '${projection.id}' applied ${subject}, in which ${details.join("; ")}.${because} ${capitalize(consequences.join(", and "))} until the projection applies a version the code allows. ${hint}`
471
+ }
472
+ };
473
+ }
474
+ function appliedVersionMarkings(read, everyMarking) {
475
+ if (read.kind !== "read")
476
+ return [...everyMarking].sort();
477
+ const { columns } = read.classification;
478
+ return [...new Set([...columns.values()].flatMap((set) => [...set]))].sort();
479
+ }
480
+ function eventOriginMarkings(projection, origin, read, context) {
481
+ const { objectTypeId } = origin;
482
+ if (read.kind === "read" && projection.datasetId === origin.datasetId && projection.objectTypeId === objectTypeId) {
483
+ const { columns } = read.classification;
484
+ return Object.entries(projection.properties).flatMap(([propertyId, column]) => {
485
+ const markings = [...columns.get(column) ?? []].sort();
486
+ return markings.length === 0 ? [] : [{ objectTypeId, propertyId, markings }];
487
+ });
488
+ }
489
+ const markings = appliedVersionMarkings(read, context.everyMarking);
490
+ if (markings.length === 0)
491
+ return [];
492
+ return (context.ontology.getObjectTypeById(objectTypeId)?.properties ?? []).filter((property) => !property.primary).map((property) => ({ objectTypeId, propertyId: property.id, markings }));
493
+ }
494
+ function producingPipelines(pipelines) {
495
+ const byDataset = new Map;
496
+ for (const { pipelineId, step } of registeredSteps(pipelines)) {
497
+ if (!byDataset.has(step.output.id))
498
+ byDataset.set(step.output.id, pipelineId);
499
+ }
500
+ return (datasetId) => byDataset.get(datasetId);
501
+ }
502
+ function sealed(projectionId, target, markings, hint, text) {
503
+ if (markings.length === 0)
504
+ return NO_CONTRIBUTION;
505
+ return {
506
+ properties: [],
507
+ seals: [{ target, seal: { projectionId, markings, reason: text.reason } }],
508
+ notice: {
509
+ projectionId,
510
+ sealed: true,
511
+ message: `[Sixb] Projection '${projectionId}' ${text.detail} ${describeTargets([target])} cannot be read without clearance for ${markingList2(markings)} until the projection applies a version the code allows. ${hint}`
512
+ }
513
+ };
514
+ }
515
+ function projectionTarget(projection) {
516
+ return projection._tag === "ObjectProjectionDefinition" ? { kind: "type", objectTypeId: projection.objectTypeId } : {
517
+ kind: "link",
518
+ objectTypeId: projection.sourceObjectTypeId,
519
+ linkId: projection.linkId,
520
+ targetObjectTypeId: projection.targetObjectTypeId
521
+ };
522
+ }
523
+ function rerunHint(datasetId, version, context) {
524
+ const pipelineId = context.pipelineOf(datasetId) ?? (version?.producer?.kind === "pipeline" ? version.producer.id : undefined);
525
+ return pipelineId === undefined ? `Write a new version of '${datasetId}' to replace it.` : `Rerun pipeline '${pipelineId}' to replace it.`;
526
+ }
527
+ function describeTargets(targets) {
528
+ return describeNames(targets.map((target) => target.kind === "type" ? `'${target.objectTypeId}'` : `link '${target.objectTypeId}.${target.linkId}'`));
529
+ }
530
+ function describeNames(names) {
531
+ const unique = [...new Set(names)];
532
+ const last = unique.pop() ?? "";
533
+ return unique.length === 0 ? last : `${unique.join(", ")} and ${last}`;
534
+ }
535
+ function capitalize(text) {
536
+ return text.charAt(0).toUpperCase() + text.slice(1);
537
+ }
538
+ function sentence(text) {
539
+ return text.endsWith(".") ? text : `${text}.`;
540
+ }
541
+ function markingList2(markings) {
542
+ return `[${markings.join(", ")}]`;
543
+ }
544
+ function errorMessage(error) {
545
+ return error instanceof Error ? error.message : String(error);
546
+ }
547
+
548
+ // src/security/applied-markings-host.ts
549
+ var appliedMarkingsKey = Symbol("sixb.appliedMarkings");
550
+ function registerAppliedMarkings(owner, markings) {
551
+ const registered = owner[appliedMarkingsKey];
552
+ if (registered && registered !== markings) {
553
+ throw new Error("[Sixb] Applied markings are already registered for this owner.");
554
+ }
555
+ Object.defineProperty(owner, appliedMarkingsKey, {
556
+ configurable: false,
557
+ enumerable: false,
558
+ value: markings,
559
+ writable: false
560
+ });
561
+ }
562
+ function getAppliedMarkings2(owner) {
563
+ const markings = owner[appliedMarkingsKey];
564
+ if (markings)
565
+ return markings;
566
+ throw new Error("[Sixb] Applied markings are not registered for this runtime.");
567
+ }
568
+ function warmAppliedMarkings2(owner) {
569
+ getAppliedMarkings2(owner).current().catch((error) => {
570
+ console.warn(errorMessage(error));
571
+ });
572
+ }
573
+
574
+ // src/security/marking-sets.ts
575
+ class MarkingSets {
576
+ empty = new Set;
577
+ sets = new Map([["", this.empty]]);
578
+ of(markingIds) {
579
+ if (markingIds === undefined || Array.isArray(markingIds) && markingIds.length === 0) {
580
+ return this.empty;
581
+ }
582
+ const sorted = [...new Set(markingIds)].sort();
583
+ const key = sorted.join("\x00");
584
+ let set = this.sets.get(key);
585
+ if (!set) {
586
+ set = new Set(sorted);
587
+ this.sets.set(key, set);
588
+ }
589
+ return set;
590
+ }
591
+ union(sets) {
592
+ let single;
593
+ const ids = [];
594
+ for (const set of sets) {
595
+ if (!set || set.size === 0)
596
+ continue;
597
+ single = single === undefined && ids.length === 0 ? set : undefined;
598
+ ids.push(...set);
599
+ }
600
+ return single ?? this.of(ids);
601
+ }
602
+ }
603
+
604
+ // src/security/dataset-version-markings.ts
605
+ function createDatasetVersionMarkings(options) {
606
+ const sets = new MarkingSets;
607
+ let declared;
608
+ const declaredByDataset = () => declared ??= new Map(options.datasets.list().map((dataset) => [
609
+ dataset.id,
610
+ new Map(dataset.schema.columns.map((column) => [column.name, sets.of(column.markings)]))
611
+ ]));
612
+ let every;
613
+ const everyMarking = () => every ??= sets.union([...declaredByDataset().values()].flatMap((columns) => [...columns.values()]));
614
+ const classify = (version) => {
615
+ const subject = `version '${version.versionId}' of '${version.datasetId}'`;
616
+ const own = declaredByDataset().get(version.datasetId);
617
+ if (!own)
618
+ return conservatively(version, `dataset '${version.datasetId}' is not registered`);
619
+ const lineage = versionLineage(version, options.lakeStorage);
620
+ if (isUnknownLineage(lineage)) {
621
+ return conservatively(version, lineage === version.lineage ? `the lineage of ${subject} is unknown: ${lineage.unknown}` : lineage.unknown);
622
+ }
623
+ let conservative;
624
+ const markingsOf = (ref) => {
625
+ const columns = declaredByDataset().get(ref.datasetId);
626
+ if (columns)
627
+ return columns.get(ref.column);
628
+ conservative ??= `dataset '${ref.datasetId}' is not registered`;
629
+ return everyMarking();
630
+ };
631
+ const rows = sets.union(lineage.rows.map(markingsOf));
632
+ const columns = new Map(version.schema.columns.map(({ name }) => {
633
+ const values = lineageColumn(lineage, name);
634
+ if (!values) {
635
+ conservative ??= `${subject} recorded no lineage for column '${name}'`;
636
+ return [name, everyMarking()];
637
+ }
638
+ return [name, sets.union([own.get(name), rows, ...values.map(markingsOf)])];
639
+ }));
640
+ return { columns, ...conservative === undefined ? {} : { conservative } };
641
+ };
642
+ const conservatively = (version, reason) => {
643
+ const markings = everyMarking();
644
+ return {
645
+ columns: new Map(version.schema.columns.map(({ name }) => [name, markings])),
646
+ conservative: reason
647
+ };
648
+ };
649
+ return { classify, everyMarking };
650
+ }
651
+ var datasetVersionMarkingsKey = Symbol("sixb.datasetVersionMarkings");
652
+ function registerDatasetVersionMarkings(owner, markings) {
653
+ const registered = owner[datasetVersionMarkingsKey];
654
+ if (registered && registered !== markings) {
655
+ throw new Error("[Sixb] Dataset version markings are already registered for this owner.");
656
+ }
657
+ Object.defineProperty(owner, datasetVersionMarkingsKey, {
658
+ configurable: false,
659
+ enumerable: false,
660
+ value: markings,
661
+ writable: false
662
+ });
663
+ }
664
+ function getDatasetVersionMarkings2(owner) {
665
+ const markings = owner[datasetVersionMarkingsKey];
666
+ if (markings)
667
+ return markings;
668
+ throw new Error("[Sixb] Dataset version markings are not registered for this runtime.");
669
+ }
670
+ function shareDatasetVersionMarkings2(source, target) {
671
+ registerDatasetVersionMarkings(target, getDatasetVersionMarkings2(source));
672
+ }
673
+
674
+ export { registeredSteps, runStepLineages, MarkingPropagation, validateProjectionMarkings, assertProjectionVersionMarkings2, describeOrigins, appliedContribution, eventOriginMarkings, producingPipelines, sentence, errorMessage, registerAppliedMarkings, getAppliedMarkings2, warmAppliedMarkings2, createDatasetVersionMarkings, registerDatasetVersionMarkings, getDatasetVersionMarkings2, shareDatasetVersionMarkings2 };
675
+
676
+ //# debugId=BCFE94079FF12A1E64756E2164756E21