@sixb/core 0.1.20 → 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 (681) 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/index.js +10 -10
  98. package/dist/authorization/decision.d.ts +2 -0
  99. package/dist/authorization/decision.d.ts.map +1 -1
  100. package/dist/authorization/grant-kinds.d.ts +2 -2
  101. package/dist/authorization/grant-kinds.d.ts.map +1 -1
  102. package/dist/authorization/index.js +6 -6
  103. package/dist/blob-storage/browser.js +1 -1
  104. package/dist/blob-storage/index.js +2 -2
  105. package/dist/blob-storage/internal.d.ts +1 -1
  106. package/dist/blob-storage/internal.d.ts.map +1 -1
  107. package/dist/blob-storage/internal.js +11 -5
  108. package/dist/blob-storage/internal.js.map +1 -1
  109. package/dist/blob-storage/media-type.d.ts +12 -0
  110. package/dist/blob-storage/media-type.d.ts.map +1 -1
  111. package/dist/bootstrap/index.js +53 -47
  112. package/dist/bootstrap/index.js.map +2 -2
  113. package/dist/{chunk-xfs8x8m9.js → chunk-0bphap9y.js} +5 -5
  114. package/dist/{chunk-1zq2p6g0.js → chunk-1cc1xaf3.js} +3 -3
  115. package/dist/chunk-3jms7je7.js +14 -0
  116. package/dist/chunk-3jms7je7.js.map +10 -0
  117. package/dist/{chunk-s54c868q.js → chunk-3qct2mdc.js} +3 -13
  118. package/dist/chunk-3qct2mdc.js.map +12 -0
  119. package/dist/{chunk-t7x8dmn0.js → chunk-431pyp2c.js} +3 -3
  120. package/dist/{chunk-c85m1hyj.js → chunk-447a5c0p.js} +2 -2
  121. package/dist/chunk-48qjhh6v.js +185 -0
  122. package/dist/chunk-48qjhh6v.js.map +13 -0
  123. package/dist/{chunk-ren4kg2j.js → chunk-561r0yc9.js} +8 -8
  124. package/dist/{chunk-5e43w60z.js → chunk-5948n82c.js} +2 -2
  125. package/dist/{chunk-yzwja0mj.js → chunk-5hx48dnn.js} +2 -2
  126. package/dist/{chunk-x6m907x7.js → chunk-5vems3nx.js} +5 -6
  127. package/dist/{chunk-x6m907x7.js.map → chunk-5vems3nx.js.map} +3 -3
  128. package/dist/{chunk-0rbyz4qy.js → chunk-61y5xs4p.js} +560 -164
  129. package/dist/{chunk-0rbyz4qy.js.map → chunk-61y5xs4p.js.map} +12 -9
  130. package/dist/chunk-65abf64x.js +13 -0
  131. package/dist/chunk-65abf64x.js.map +10 -0
  132. package/dist/{chunk-z3y5kg1x.js → chunk-6eqsgvxk.js} +3 -3
  133. package/dist/{chunk-z3y5kg1x.js.map → chunk-6eqsgvxk.js.map} +2 -2
  134. package/dist/chunk-6rqgmkde.js +2028 -0
  135. package/dist/chunk-6rqgmkde.js.map +29 -0
  136. package/dist/{chunk-d0bqz29d.js → chunk-6vb4st8k.js} +8 -4
  137. package/dist/{chunk-d0bqz29d.js.map → chunk-6vb4st8k.js.map} +3 -3
  138. package/dist/chunk-7q8t23v4.js +467 -0
  139. package/dist/chunk-7q8t23v4.js.map +14 -0
  140. package/dist/{chunk-5j58wjct.js → chunk-858emn8m.js} +6 -6
  141. package/dist/{chunk-hvsb78a1.js → chunk-8frc8a4j.js} +26 -26
  142. package/dist/{chunk-hvsb78a1.js.map → chunk-8frc8a4j.js.map} +2 -2
  143. package/dist/{chunk-3zxk45er.js → chunk-8ncg20rd.js} +3 -68
  144. package/dist/{chunk-3zxk45er.js.map → chunk-8ncg20rd.js.map} +4 -5
  145. package/dist/{chunk-n33z5bjw.js → chunk-918wwnaa.js} +490 -24
  146. package/dist/{chunk-n33z5bjw.js.map → chunk-918wwnaa.js.map} +13 -11
  147. package/dist/{chunk-rrzt8jdy.js → chunk-9j4jw7as.js} +103 -110
  148. package/dist/chunk-9j4jw7as.js.map +14 -0
  149. package/dist/chunk-9kgkfg6v.js +502 -0
  150. package/dist/chunk-9kgkfg6v.js.map +14 -0
  151. package/dist/chunk-a3faa34j.js +74 -0
  152. package/dist/chunk-a3faa34j.js.map +10 -0
  153. package/dist/{chunk-6c6sn0bh.js → chunk-akzryx9h.js} +335 -1167
  154. package/dist/{chunk-6c6sn0bh.js.map → chunk-akzryx9h.js.map} +18 -24
  155. package/dist/chunk-arns890k.js +10 -0
  156. package/dist/chunk-arns890k.js.map +10 -0
  157. package/dist/{chunk-hjzdd750.js → chunk-bk9svbcq.js} +11 -11
  158. package/dist/{chunk-hjzdd750.js.map → chunk-bk9svbcq.js.map} +2 -2
  159. package/dist/{chunk-hkc3jct7.js → chunk-c06hmxyy.js} +2 -10
  160. package/dist/chunk-c06hmxyy.js.map +10 -0
  161. package/dist/{chunk-6p49a5cq.js → chunk-c1rxbz5y.js} +3 -3
  162. package/dist/chunk-cfj9dfbb.js +288 -0
  163. package/dist/chunk-cfj9dfbb.js.map +12 -0
  164. package/dist/{chunk-bx9q3cwv.js → chunk-cn0fwwhy.js} +7 -7
  165. package/dist/{chunk-bx9q3cwv.js.map → chunk-cn0fwwhy.js.map} +1 -1
  166. package/dist/{chunk-gc4ntf7d.js → chunk-cwdzcv37.js} +1 -1
  167. package/dist/{chunk-fa02jy15.js → chunk-cy4mbddw.js} +1 -1
  168. package/dist/{chunk-9w055r5b.js → chunk-d09e3rax.js} +1 -1
  169. package/dist/chunk-d5rjr8c0.js +176 -0
  170. package/dist/chunk-d5rjr8c0.js.map +12 -0
  171. package/dist/{chunk-dk8tkk5f.js → chunk-d7dnxdep.js} +3 -3
  172. package/dist/{chunk-b38szspf.js → chunk-dhcv7yxc.js} +1 -1
  173. package/dist/{chunk-b38szspf.js.map → chunk-dhcv7yxc.js.map} +1 -1
  174. package/dist/{chunk-gsjm1wms.js → chunk-dhdha526.js} +8 -2
  175. package/dist/chunk-dhdha526.js.map +10 -0
  176. package/dist/{chunk-8mx7qw3y.js → chunk-dvd2fp9q.js} +2 -2
  177. package/dist/{chunk-8mx7qw3y.js.map → chunk-dvd2fp9q.js.map} +3 -3
  178. package/dist/{chunk-way52z4h.js → chunk-e17zdm62.js} +6 -12
  179. package/dist/{chunk-way52z4h.js.map → chunk-e17zdm62.js.map} +3 -4
  180. package/dist/{chunk-tpn40322.js → chunk-e6k4thh5.js} +11 -10
  181. package/dist/{chunk-tpn40322.js.map → chunk-e6k4thh5.js.map} +3 -3
  182. package/dist/{chunk-tw03bsmb.js → chunk-eptrvnby.js} +224 -3
  183. package/dist/chunk-eptrvnby.js.map +12 -0
  184. package/dist/{chunk-es1gxsbf.js → chunk-f4pamkt9.js} +8 -10
  185. package/dist/chunk-f4pamkt9.js.map +12 -0
  186. package/dist/chunk-ff5xkv0p.js +211 -0
  187. package/dist/chunk-ff5xkv0p.js.map +10 -0
  188. package/dist/{chunk-d09tj99x.js → chunk-g257jwnc.js} +10 -4
  189. package/dist/{chunk-d09tj99x.js.map → chunk-g257jwnc.js.map} +3 -3
  190. package/dist/chunk-g5bvzyyr.js +32 -0
  191. package/dist/chunk-g5bvzyyr.js.map +10 -0
  192. package/dist/chunk-hke9aeen.js +9 -0
  193. package/dist/chunk-hke9aeen.js.map +10 -0
  194. package/dist/{chunk-1sr8ryzk.js → chunk-hwksyjks.js} +122 -1
  195. package/dist/{chunk-1sr8ryzk.js.map → chunk-hwksyjks.js.map} +3 -3
  196. package/dist/chunk-jcfw4h7m.js +9 -0
  197. package/dist/chunk-jcfw4h7m.js.map +10 -0
  198. package/dist/{chunk-k6q3n2sc.js → chunk-k43ct2ke.js} +20 -11
  199. package/dist/chunk-k43ct2ke.js.map +12 -0
  200. package/dist/{chunk-3t2hgbgd.js → chunk-kge7k6ey.js} +40 -8
  201. package/dist/chunk-kge7k6ey.js.map +15 -0
  202. package/dist/{chunk-tg2cw67r.js → chunk-ky3j490c.js} +2 -2
  203. package/dist/chunk-mjddfa7k.js +129 -0
  204. package/dist/chunk-mjddfa7k.js.map +12 -0
  205. package/dist/{chunk-vpq4shxz.js → chunk-nn5xnx3s.js} +45 -10
  206. package/dist/{chunk-vpq4shxz.js.map → chunk-nn5xnx3s.js.map} +7 -6
  207. package/dist/{chunk-0yh890a4.js → chunk-q5e5tv4b.js} +35 -7
  208. package/dist/{chunk-0yh890a4.js.map → chunk-q5e5tv4b.js.map} +3 -3
  209. package/dist/{chunk-vyf9kfqf.js → chunk-q7gn29y3.js} +1 -1
  210. package/dist/{chunk-yevzdx4y.js → chunk-rmakanzx.js} +10 -12
  211. package/dist/{chunk-yevzdx4y.js.map → chunk-rmakanzx.js.map} +3 -4
  212. package/dist/{chunk-v9xd5wzd.js → chunk-s7jg7pmn.js} +1 -1
  213. package/dist/chunk-tbc1ngpd.js +642 -0
  214. package/dist/chunk-tbc1ngpd.js.map +18 -0
  215. package/dist/chunk-twe4dx8p.js +676 -0
  216. package/dist/chunk-twe4dx8p.js.map +15 -0
  217. package/dist/{chunk-9dmt152s.js → chunk-vf57cr4t.js} +2 -2
  218. package/dist/{chunk-9ybhtmg4.js → chunk-vvxtn22d.js} +1 -1
  219. package/dist/{chunk-jhm3zsa7.js → chunk-wkv3h3q7.js} +64 -2
  220. package/dist/{chunk-jhm3zsa7.js.map → chunk-wkv3h3q7.js.map} +3 -3
  221. package/dist/chunk-x0v3jd47.js +124 -0
  222. package/dist/chunk-x0v3jd47.js.map +10 -0
  223. package/dist/{chunk-7t429e3f.js → chunk-xvsc5m8n.js} +1 -1
  224. package/dist/{chunk-z4m0yz8c.js → chunk-y5tah2kf.js} +1 -1
  225. package/dist/{chunk-fkgc1wt8.js → chunk-z58tm0hm.js} +2 -2
  226. package/dist/datasets/builders.d.ts +15 -2
  227. package/dist/datasets/builders.d.ts.map +1 -1
  228. package/dist/datasets/column-index.d.ts +7 -0
  229. package/dist/datasets/column-index.d.ts.map +1 -0
  230. package/dist/datasets/execution.d.ts +3 -2
  231. package/dist/datasets/execution.d.ts.map +1 -1
  232. package/dist/datasets/write.js +8 -8
  233. package/dist/error-reporting/internal.js +4 -4
  234. package/dist/errors/internal.d.ts +1 -0
  235. package/dist/errors/internal.d.ts.map +1 -1
  236. package/dist/errors/internal.js +7 -4
  237. package/dist/errors/internal.js.map +1 -1
  238. package/dist/events/execution.d.ts +12 -2
  239. package/dist/events/execution.d.ts.map +1 -1
  240. package/dist/events/index.js +4 -4
  241. package/dist/execution/agent.js +56 -49
  242. package/dist/execution/agent.js.map +1 -1
  243. package/dist/execution/authorized-object-reader.d.ts +52 -11
  244. package/dist/execution/authorized-object-reader.d.ts.map +1 -1
  245. package/dist/execution/object-reader-clearance.d.ts +41 -0
  246. package/dist/execution/object-reader-clearance.d.ts.map +1 -0
  247. package/dist/execution/object-reader-ontology.d.ts +12 -0
  248. package/dist/execution/object-reader-ontology.d.ts.map +1 -0
  249. package/dist/execution/object-reader-security.d.ts +45 -0
  250. package/dist/execution/object-reader-security.d.ts.map +1 -0
  251. package/dist/execution/primitive.js +54 -47
  252. package/dist/execution/primitive.js.map +1 -1
  253. package/dist/execution/request.js +48 -41
  254. package/dist/execution/request.js.map +2 -2
  255. package/dist/http/api-routes.d.ts.map +1 -1
  256. package/dist/http/index.js +1 -1
  257. package/dist/index.d.ts +20 -4
  258. package/dist/index.d.ts.map +1 -1
  259. package/dist/index.js +112 -97
  260. package/dist/index.js.map +1 -1
  261. package/dist/lake-storage/in-memory.d.ts +1 -0
  262. package/dist/lake-storage/in-memory.d.ts.map +1 -1
  263. package/dist/lake-storage/index.d.ts +6 -3
  264. package/dist/lake-storage/index.d.ts.map +1 -1
  265. package/dist/lake-storage/index.js +21 -13
  266. package/dist/lake-storage/index.js.map +1 -1
  267. package/dist/lake-storage/lineage.d.ts +94 -0
  268. package/dist/lake-storage/lineage.d.ts.map +1 -0
  269. package/dist/lake-storage/sql-transforms.d.ts +45 -0
  270. package/dist/lake-storage/sql-transforms.d.ts.map +1 -1
  271. package/dist/lake-storage/types.d.ts +55 -1
  272. package/dist/lake-storage/types.d.ts.map +1 -1
  273. package/dist/lake-storage/version-inputs.d.ts +14 -3
  274. package/dist/lake-storage/version-inputs.d.ts.map +1 -1
  275. package/dist/maintenance/ontology-maintenance.d.ts.map +1 -1
  276. package/dist/materializer/index.js +31 -30
  277. package/dist/materializer/index.js.map +1 -1
  278. package/dist/models/execution/index.js +25 -24
  279. package/dist/models/execution/index.js.map +1 -1
  280. package/dist/objects/clearance-redaction.d.ts +27 -0
  281. package/dist/objects/clearance-redaction.d.ts.map +1 -0
  282. package/dist/objects/index.js +54 -47
  283. package/dist/objects/index.js.map +1 -1
  284. package/dist/objects/link/authorization.d.ts +8 -5
  285. package/dist/objects/link/authorization.d.ts.map +1 -1
  286. package/dist/objects/link/upsert-batch.d.ts.map +1 -1
  287. package/dist/objects/object/delete.d.ts.map +1 -1
  288. package/dist/objects/object/upsert-batch.d.ts.map +1 -1
  289. package/dist/objects/object/upsert.d.ts.map +1 -1
  290. package/dist/objects/property-clearance.d.ts +47 -24
  291. package/dist/objects/property-clearance.d.ts.map +1 -1
  292. package/dist/objects/query/clearance-admission.d.ts +10 -0
  293. package/dist/objects/query/clearance-admission.d.ts.map +1 -0
  294. package/dist/objects/query/index.js +29 -28
  295. package/dist/objects/query/index.js.map +1 -1
  296. package/dist/objects/query/link-query-clearance.d.ts +21 -0
  297. package/dist/objects/query/link-query-clearance.d.ts.map +1 -0
  298. package/dist/ontology/builders.d.ts.map +1 -1
  299. package/dist/ontology/docs-markdown.d.ts +1 -1
  300. package/dist/ontology/docs-markdown.d.ts.map +1 -1
  301. package/dist/ontology/index.js +7 -7
  302. package/dist/ontology/internal.js +4 -4
  303. package/dist/ontology/internal.js.map +1 -1
  304. package/dist/pipelines/index.d.ts +2 -0
  305. package/dist/pipelines/index.d.ts.map +1 -1
  306. package/dist/pipelines/index.js +47 -35
  307. package/dist/pipelines/index.js.map +1 -1
  308. package/dist/pipelines/lineage.d.ts +17 -0
  309. package/dist/pipelines/lineage.d.ts.map +1 -0
  310. package/dist/projections/internal.d.ts +2 -2
  311. package/dist/projections/internal.js +30 -29
  312. package/dist/projections/internal.js.map +1 -1
  313. package/dist/runtime/create.d.ts +3 -0
  314. package/dist/runtime/create.d.ts.map +1 -1
  315. package/dist/runtime/host.d.ts +6 -0
  316. package/dist/runtime/host.d.ts.map +1 -1
  317. package/dist/runtime/internal.d.ts +2 -0
  318. package/dist/runtime/internal.d.ts.map +1 -1
  319. package/dist/runtime/internal.js +46 -42
  320. package/dist/runtime/internal.js.map +1 -1
  321. package/dist/runtime/ontology-mutations.d.ts +2 -0
  322. package/dist/runtime/ontology-mutations.d.ts.map +1 -1
  323. package/dist/runtime/resolve-definitions.d.ts.map +1 -1
  324. package/dist/runtime/sixb.d.ts +8 -0
  325. package/dist/runtime/sixb.d.ts.map +1 -1
  326. package/dist/sandboxes/auth.d.ts +16 -0
  327. package/dist/sandboxes/auth.d.ts.map +1 -1
  328. package/dist/sandboxes/config.d.ts.map +1 -1
  329. package/dist/sandboxes/configuration.d.ts +26 -0
  330. package/dist/sandboxes/configuration.d.ts.map +1 -1
  331. package/dist/sandboxes/index.d.ts +1 -1
  332. package/dist/sandboxes/index.d.ts.map +1 -1
  333. package/dist/sandboxes/index.js +14 -13
  334. package/dist/sandboxes/index.js.map +1 -1
  335. package/dist/sandboxes/sandbox.d.ts +28 -5
  336. package/dist/sandboxes/sandbox.d.ts.map +1 -1
  337. package/dist/security/applied-markings-contribution.d.ts +58 -0
  338. package/dist/security/applied-markings-contribution.d.ts.map +1 -0
  339. package/dist/security/applied-markings-host.d.ts +10 -0
  340. package/dist/security/applied-markings-host.d.ts.map +1 -0
  341. package/dist/security/applied-markings-snapshot.d.ts +67 -0
  342. package/dist/security/applied-markings-snapshot.d.ts.map +1 -0
  343. package/dist/security/applied-markings.d.ts +73 -0
  344. package/dist/security/applied-markings.d.ts.map +1 -0
  345. package/dist/security/dataset-version-markings.d.ts +47 -0
  346. package/dist/security/dataset-version-markings.d.ts.map +1 -0
  347. package/dist/security/grants.d.ts +3 -2
  348. package/dist/security/grants.d.ts.map +1 -1
  349. package/dist/security/index.d.ts +2 -1
  350. package/dist/security/index.d.ts.map +1 -1
  351. package/dist/security/internal.d.ts +15 -0
  352. package/dist/security/internal.d.ts.map +1 -0
  353. package/dist/security/internal.js +135 -0
  354. package/dist/security/internal.js.map +10 -0
  355. package/dist/security/marking-propagation.d.ts +62 -0
  356. package/dist/security/marking-propagation.d.ts.map +1 -0
  357. package/dist/security/marking-sets.d.ts +14 -0
  358. package/dist/security/marking-sets.d.ts.map +1 -0
  359. package/dist/security/markings.d.ts +6 -3
  360. package/dist/security/markings.d.ts.map +1 -1
  361. package/dist/security/pipeline-markings.d.ts +20 -0
  362. package/dist/security/pipeline-markings.d.ts.map +1 -0
  363. package/dist/security/project.d.ts +4 -0
  364. package/dist/security/project.d.ts.map +1 -0
  365. package/dist/security/projection-markings.d.ts +71 -0
  366. package/dist/security/projection-markings.d.ts.map +1 -0
  367. package/dist/security/public.js +2 -2
  368. package/dist/security/redactions.d.ts +4 -1
  369. package/dist/security/redactions.d.ts.map +1 -1
  370. package/dist/security/types.d.ts +22 -2
  371. package/dist/security/types.d.ts.map +1 -1
  372. package/dist/security/validation.d.ts.map +1 -1
  373. package/dist/shares/internal.js +24 -23
  374. package/dist/shares/internal.js.map +2 -2
  375. package/dist/storage/action-runs/failure.js +3 -3
  376. package/dist/storage/action-runs/in-memory.d.ts +4 -0
  377. package/dist/storage/action-runs/in-memory.d.ts.map +1 -1
  378. package/dist/storage/action-runs/types.d.ts +8 -0
  379. package/dist/storage/action-runs/types.d.ts.map +1 -1
  380. package/dist/storage/activity/in-memory.d.ts +55 -0
  381. package/dist/storage/activity/in-memory.d.ts.map +1 -0
  382. package/dist/storage/activity/index.d.ts +3 -0
  383. package/dist/storage/activity/index.d.ts.map +1 -0
  384. package/dist/storage/activity/policy.d.ts +96 -0
  385. package/dist/storage/activity/policy.d.ts.map +1 -0
  386. package/dist/storage/activity/types.d.ts +191 -0
  387. package/dist/storage/activity/types.d.ts.map +1 -0
  388. package/dist/storage/agents/in-memory.d.ts +4 -0
  389. package/dist/storage/agents/in-memory.d.ts.map +1 -1
  390. package/dist/storage/agents/provider.d.ts.map +1 -1
  391. package/dist/storage/agents/provider.js +2 -5
  392. package/dist/storage/agents/provider.js.map +1 -1
  393. package/dist/storage/agents/types.d.ts +9 -8
  394. package/dist/storage/agents/types.d.ts.map +1 -1
  395. package/dist/storage/ai-limits/enforcement.js +3 -3
  396. package/dist/storage/artifacts/errors.d.ts +8 -0
  397. package/dist/storage/artifacts/errors.d.ts.map +1 -0
  398. package/dist/storage/artifacts/in-memory.d.ts +34 -0
  399. package/dist/storage/artifacts/in-memory.d.ts.map +1 -0
  400. package/dist/storage/artifacts/index.d.ts +5 -0
  401. package/dist/storage/artifacts/index.d.ts.map +1 -0
  402. package/dist/storage/artifacts/record.d.ts +17 -0
  403. package/dist/storage/artifacts/record.d.ts.map +1 -0
  404. package/dist/storage/artifacts/types.d.ts +184 -0
  405. package/dist/storage/artifacts/types.d.ts.map +1 -0
  406. package/dist/storage/auth/in-memory/sessions.d.ts +2 -1
  407. package/dist/storage/auth/in-memory/sessions.d.ts.map +1 -1
  408. package/dist/storage/auth/index.d.ts +1 -1
  409. package/dist/storage/auth/index.d.ts.map +1 -1
  410. package/dist/storage/auth/types.d.ts +19 -0
  411. package/dist/storage/auth/types.d.ts.map +1 -1
  412. package/dist/storage/connector-connections/provider.js +2 -2
  413. package/dist/storage/executions/in-memory.d.ts +2 -1
  414. package/dist/storage/executions/in-memory.d.ts.map +1 -1
  415. package/dist/storage/executions/index.d.ts +1 -1
  416. package/dist/storage/executions/index.d.ts.map +1 -1
  417. package/dist/storage/executions/provider.d.ts +2 -0
  418. package/dist/storage/executions/provider.d.ts.map +1 -1
  419. package/dist/storage/executions/provider.js +9 -223
  420. package/dist/storage/executions/provider.js.map +3 -4
  421. package/dist/storage/executions/types.d.ts +31 -0
  422. package/dist/storage/executions/types.d.ts.map +1 -1
  423. package/dist/storage/file-upload-sessions/provider.js +11 -11
  424. package/dist/storage/in-memory/index.d.ts +8 -0
  425. package/dist/storage/in-memory/index.d.ts.map +1 -1
  426. package/dist/storage/index.d.ts +6 -4
  427. package/dist/storage/index.d.ts.map +1 -1
  428. package/dist/storage/index.js +54 -53
  429. package/dist/storage/index.js.map +1 -1
  430. package/dist/storage/internal.d.ts +3 -0
  431. package/dist/storage/internal.d.ts.map +1 -1
  432. package/dist/storage/internal.js +66 -16
  433. package/dist/storage/internal.js.map +1 -1
  434. package/dist/storage/ontology/in-memory/sources.d.ts +2 -1
  435. package/dist/storage/ontology/in-memory/sources.d.ts.map +1 -1
  436. package/dist/storage/ontology/index.d.ts +1 -1
  437. package/dist/storage/ontology/index.d.ts.map +1 -1
  438. package/dist/storage/ontology/sources.d.ts +15 -0
  439. package/dist/storage/ontology/sources.d.ts.map +1 -1
  440. package/dist/storage/projection-runs/provider.js +3 -3
  441. package/dist/storage/share-grants/in-memory.d.ts +2 -1
  442. package/dist/storage/share-grants/in-memory.d.ts.map +1 -1
  443. package/dist/storage/share-grants/index.d.ts +1 -1
  444. package/dist/storage/share-grants/index.d.ts.map +1 -1
  445. package/dist/storage/share-grants/types.d.ts +6 -0
  446. package/dist/storage/share-grants/types.d.ts.map +1 -1
  447. package/dist/storage/types.d.ts +4 -0
  448. package/dist/storage/types.d.ts.map +1 -1
  449. package/dist/storage/workflow-runs/in-memory.d.ts +4 -0
  450. package/dist/storage/workflow-runs/in-memory.d.ts.map +1 -1
  451. package/dist/storage/workflow-runs/provider.js +13 -12
  452. package/dist/storage/workflow-runs/provider.js.map +1 -1
  453. package/dist/storage/workflow-runs/types.d.ts +5 -0
  454. package/dist/storage/workflow-runs/types.d.ts.map +1 -1
  455. package/dist/syncs/index.js +35 -34
  456. package/dist/syncs/index.js.map +1 -1
  457. package/dist/testing/action-run-storage-contract.d.ts.map +1 -1
  458. package/dist/testing/activity-storage-contract.d.ts +14 -0
  459. package/dist/testing/activity-storage-contract.d.ts.map +1 -0
  460. package/dist/testing/agent-storage-contract.d.ts.map +1 -1
  461. package/dist/testing/artifact-storage-contract.d.ts +13 -0
  462. package/dist/testing/artifact-storage-contract.d.ts.map +1 -0
  463. package/dist/testing/auth-storage-contract.d.ts.map +1 -1
  464. package/dist/testing/execution-storage-contract.d.ts.map +1 -1
  465. package/dist/testing/index.d.ts +2 -0
  466. package/dist/testing/index.d.ts.map +1 -1
  467. package/dist/testing/index.js +4488 -3137
  468. package/dist/testing/index.js.map +14 -12
  469. package/dist/testing/lake-merge-storage-contract.d.ts.map +1 -1
  470. package/dist/testing/lake-storage-contract.d.ts +2 -0
  471. package/dist/testing/lake-storage-contract.d.ts.map +1 -1
  472. package/dist/testing/ontology-storage-contract.d.ts.map +1 -1
  473. package/dist/testing/share-grant-storage-contract.d.ts.map +1 -1
  474. package/dist/webhooks/internal.js +27 -26
  475. package/dist/webhooks/internal.js.map +2 -2
  476. package/dist/workers/index.js +2 -2
  477. package/dist/workflows/builders.d.ts.map +1 -1
  478. package/dist/workflows/index.js +57 -51
  479. package/dist/workflows/index.js.map +1 -1
  480. package/dist/workflows/types.d.ts +9 -0
  481. package/dist/workflows/types.d.ts.map +1 -1
  482. package/dist/workflows/validation.d.ts +7 -0
  483. package/dist/workflows/validation.d.ts.map +1 -1
  484. package/package.json +25 -1
  485. package/src/actions/execution.ts +18 -13
  486. package/src/actions/request.ts +18 -3
  487. package/src/actions/run-authorization.ts +23 -0
  488. package/src/activity/README.md +155 -0
  489. package/src/activity/connection.ts +217 -0
  490. package/src/activity/device.ts +41 -0
  491. package/src/activity/execution.ts +210 -0
  492. package/src/activity/service.ts +274 -0
  493. package/src/activity/shares.ts +62 -0
  494. package/src/activity/timeline.ts +424 -0
  495. package/src/agents/index.ts +8 -3
  496. package/src/agents/request.ts +5 -0
  497. package/src/agents/skills.ts +6 -0
  498. package/src/agents/types.ts +8 -8
  499. package/src/agents/validation.ts +2 -0
  500. package/src/artifacts/address.ts +132 -0
  501. package/src/artifacts/csv.ts +108 -0
  502. package/src/artifacts/errors.ts +21 -0
  503. package/src/artifacts/execution.ts +153 -0
  504. package/src/artifacts/frames/assets.ts +88 -0
  505. package/src/artifacts/frames/grants.ts +124 -0
  506. package/src/artifacts/frames/index.ts +15 -0
  507. package/src/artifacts/frames/kit.ts +392 -0
  508. package/src/artifacts/frames/probe.ts +309 -0
  509. package/src/artifacts/frames/protocol.ts +174 -0
  510. package/src/artifacts/frames/runtime.ts +213 -0
  511. package/src/artifacts/html.ts +25 -0
  512. package/src/artifacts/ids.ts +18 -0
  513. package/src/artifacts/index.ts +61 -0
  514. package/src/artifacts/kinds.ts +8 -0
  515. package/src/artifacts/limits.ts +27 -0
  516. package/src/artifacts/outline.ts +62 -0
  517. package/src/artifacts/publish/files.ts +87 -0
  518. package/src/artifacts/publish/index.ts +12 -0
  519. package/src/artifacts/publish/publish.ts +250 -0
  520. package/src/artifacts/publish/references.ts +130 -0
  521. package/src/artifacts/publish/validate/document.ts +114 -0
  522. package/src/artifacts/publish/validate/file.ts +19 -0
  523. package/src/artifacts/publish/validate/sheet.ts +251 -0
  524. package/src/artifacts/publish/validate/slides.ts +134 -0
  525. package/src/artifacts/references.ts +11 -0
  526. package/src/artifacts/resolve.ts +97 -0
  527. package/src/artifacts/theme.ts +116 -0
  528. package/src/artifacts/warnings.ts +10 -0
  529. package/src/artifacts/workbook.ts +315 -0
  530. package/src/authorization/decision.ts +5 -0
  531. package/src/authorization/grant-kinds.ts +14 -2
  532. package/src/blob-storage/internal.ts +1 -1
  533. package/src/blob-storage/media-type.ts +69 -0
  534. package/src/datasets/builders.ts +66 -2
  535. package/src/datasets/column-index.ts +19 -0
  536. package/src/datasets/execution.ts +23 -9
  537. package/src/errors/internal.ts +1 -0
  538. package/src/events/execution.ts +134 -21
  539. package/src/execution/authorized-object-reader.ts +270 -256
  540. package/src/execution/object-reader-clearance.ts +91 -0
  541. package/src/execution/object-reader-ontology.ts +63 -0
  542. package/src/execution/object-reader-security.ts +146 -0
  543. package/src/http/api-routes.ts +125 -0
  544. package/src/index.ts +71 -3
  545. package/src/lake-storage/in-memory.ts +26 -3
  546. package/src/lake-storage/index.ts +13 -1
  547. package/src/lake-storage/lineage.ts +385 -0
  548. package/src/lake-storage/sql-transforms.ts +45 -0
  549. package/src/lake-storage/types.ts +59 -1
  550. package/src/lake-storage/version-inputs.ts +35 -6
  551. package/src/maintenance/ontology-maintenance.ts +15 -0
  552. package/src/objects/clearance-redaction.ts +138 -0
  553. package/src/objects/link/authorization.ts +27 -7
  554. package/src/objects/link/remove.ts +2 -2
  555. package/src/objects/link/upsert-batch.ts +7 -5
  556. package/src/objects/link/upsert.ts +2 -2
  557. package/src/objects/object/delete.ts +2 -0
  558. package/src/objects/object/upsert-batch.ts +2 -4
  559. package/src/objects/object/upsert.ts +2 -3
  560. package/src/objects/property-clearance.ts +171 -152
  561. package/src/objects/query/clearance-admission.ts +112 -0
  562. package/src/objects/query/link-query-clearance.ts +73 -0
  563. package/src/ontology/builders.ts +12 -1
  564. package/src/ontology/docs-markdown.ts +1 -1
  565. package/src/pipelines/index.ts +2 -0
  566. package/src/pipelines/lineage.ts +45 -0
  567. package/src/projections/internal.ts +2 -2
  568. package/src/runtime/create.ts +4 -0
  569. package/src/runtime/host.ts +55 -0
  570. package/src/runtime/internal.ts +2 -0
  571. package/src/runtime/ontology-mutations.ts +19 -4
  572. package/src/runtime/resolve-definitions.ts +66 -3
  573. package/src/runtime/sixb.ts +18 -1
  574. package/src/sandboxes/README.md +29 -7
  575. package/src/sandboxes/auth.ts +16 -0
  576. package/src/sandboxes/config.ts +2 -7
  577. package/src/sandboxes/configuration.ts +61 -7
  578. package/src/sandboxes/index.ts +1 -0
  579. package/src/sandboxes/sandbox.ts +27 -5
  580. package/src/security/applied-markings-contribution.ts +277 -0
  581. package/src/security/applied-markings-host.ts +41 -0
  582. package/src/security/applied-markings-snapshot.ts +235 -0
  583. package/src/security/applied-markings.ts +405 -0
  584. package/src/security/dataset-version-markings.ts +163 -0
  585. package/src/security/grants.ts +39 -4
  586. package/src/security/index.ts +3 -0
  587. package/src/security/internal.ts +18 -0
  588. package/src/security/marking-propagation.ts +255 -0
  589. package/src/security/marking-sets.ts +42 -0
  590. package/src/security/markings.ts +29 -178
  591. package/src/security/pipeline-markings.ts +175 -0
  592. package/src/security/project.ts +8 -0
  593. package/src/security/projection-markings.ts +421 -0
  594. package/src/security/redactions.ts +7 -2
  595. package/src/security/types.ts +20 -2
  596. package/src/security/validation.ts +11 -4
  597. package/src/storage/action-runs/in-memory.ts +18 -0
  598. package/src/storage/action-runs/types.ts +8 -0
  599. package/src/storage/activity/in-memory.ts +374 -0
  600. package/src/storage/activity/index.ts +27 -0
  601. package/src/storage/activity/policy.ts +430 -0
  602. package/src/storage/activity/types.ts +211 -0
  603. package/src/storage/agents/in-memory.ts +10 -0
  604. package/src/storage/agents/provider.ts +2 -13
  605. package/src/storage/agents/types.ts +9 -16
  606. package/src/storage/artifacts/errors.ts +16 -0
  607. package/src/storage/artifacts/in-memory.ts +240 -0
  608. package/src/storage/artifacts/index.ts +30 -0
  609. package/src/storage/artifacts/record.ts +200 -0
  610. package/src/storage/artifacts/types.ts +209 -0
  611. package/src/storage/auth/in-memory/sessions.ts +21 -0
  612. package/src/storage/auth/index.ts +2 -0
  613. package/src/storage/auth/types.ts +18 -0
  614. package/src/storage/executions/in-memory.ts +61 -1
  615. package/src/storage/executions/index.ts +3 -0
  616. package/src/storage/executions/provider.ts +12 -0
  617. package/src/storage/executions/types.ts +30 -0
  618. package/src/storage/in-memory/index.ts +16 -0
  619. package/src/storage/index.ts +63 -0
  620. package/src/storage/internal.ts +30 -0
  621. package/src/storage/ontology/in-memory/sources.ts +23 -0
  622. package/src/storage/ontology/index.ts +2 -0
  623. package/src/storage/ontology/sources.ts +17 -0
  624. package/src/storage/share-grants/in-memory.ts +8 -0
  625. package/src/storage/share-grants/index.ts +1 -0
  626. package/src/storage/share-grants/types.ts +8 -0
  627. package/src/storage/types.ts +4 -0
  628. package/src/storage/workflow-runs/in-memory.ts +16 -0
  629. package/src/storage/workflow-runs/types.ts +5 -0
  630. package/src/testing/action-run-storage-contract.ts +25 -0
  631. package/src/testing/activity-storage-contract.ts +840 -0
  632. package/src/testing/agent-storage-contract.ts +22 -21
  633. package/src/testing/artifact-storage-contract.ts +517 -0
  634. package/src/testing/auth-storage-contract.ts +47 -0
  635. package/src/testing/execution-storage-contract.ts +147 -1
  636. package/src/testing/index.ts +9 -0
  637. package/src/testing/lake-merge-storage-contract.ts +38 -0
  638. package/src/testing/lake-storage-contract.ts +247 -2
  639. package/src/testing/materializer-storage-contract.ts +1 -0
  640. package/src/testing/ontology-storage-contract.ts +57 -2
  641. package/src/testing/share-grant-storage-contract.ts +15 -0
  642. package/src/workflows/builders.ts +14 -0
  643. package/src/workflows/types.ts +9 -0
  644. package/src/workflows/validation.ts +72 -0
  645. package/dist/chunk-1k89ecfr.js +0 -85
  646. package/dist/chunk-1k89ecfr.js.map +0 -10
  647. package/dist/chunk-3t2hgbgd.js.map +0 -15
  648. package/dist/chunk-4vyr1j8f.js +0 -128
  649. package/dist/chunk-4vyr1j8f.js.map +0 -11
  650. package/dist/chunk-9gyp8hg1.js +0 -363
  651. package/dist/chunk-9gyp8hg1.js.map +0 -14
  652. package/dist/chunk-es1gxsbf.js.map +0 -13
  653. package/dist/chunk-gsjm1wms.js.map +0 -10
  654. package/dist/chunk-hkc3jct7.js.map +0 -10
  655. package/dist/chunk-k6q3n2sc.js.map +0 -12
  656. package/dist/chunk-rrzt8jdy.js.map +0 -14
  657. package/dist/chunk-s16apyk9.js +0 -256
  658. package/dist/chunk-s16apyk9.js.map +0 -16
  659. package/dist/chunk-s54c868q.js.map +0 -12
  660. package/dist/chunk-tw03bsmb.js.map +0 -11
  661. /package/dist/{chunk-xfs8x8m9.js.map → chunk-0bphap9y.js.map} +0 -0
  662. /package/dist/{chunk-1zq2p6g0.js.map → chunk-1cc1xaf3.js.map} +0 -0
  663. /package/dist/{chunk-t7x8dmn0.js.map → chunk-431pyp2c.js.map} +0 -0
  664. /package/dist/{chunk-c85m1hyj.js.map → chunk-447a5c0p.js.map} +0 -0
  665. /package/dist/{chunk-ren4kg2j.js.map → chunk-561r0yc9.js.map} +0 -0
  666. /package/dist/{chunk-5e43w60z.js.map → chunk-5948n82c.js.map} +0 -0
  667. /package/dist/{chunk-yzwja0mj.js.map → chunk-5hx48dnn.js.map} +0 -0
  668. /package/dist/{chunk-5j58wjct.js.map → chunk-858emn8m.js.map} +0 -0
  669. /package/dist/{chunk-6p49a5cq.js.map → chunk-c1rxbz5y.js.map} +0 -0
  670. /package/dist/{chunk-gc4ntf7d.js.map → chunk-cwdzcv37.js.map} +0 -0
  671. /package/dist/{chunk-fa02jy15.js.map → chunk-cy4mbddw.js.map} +0 -0
  672. /package/dist/{chunk-9w055r5b.js.map → chunk-d09e3rax.js.map} +0 -0
  673. /package/dist/{chunk-dk8tkk5f.js.map → chunk-d7dnxdep.js.map} +0 -0
  674. /package/dist/{chunk-tg2cw67r.js.map → chunk-ky3j490c.js.map} +0 -0
  675. /package/dist/{chunk-vyf9kfqf.js.map → chunk-q7gn29y3.js.map} +0 -0
  676. /package/dist/{chunk-v9xd5wzd.js.map → chunk-s7jg7pmn.js.map} +0 -0
  677. /package/dist/{chunk-9dmt152s.js.map → chunk-vf57cr4t.js.map} +0 -0
  678. /package/dist/{chunk-9ybhtmg4.js.map → chunk-vvxtn22d.js.map} +0 -0
  679. /package/dist/{chunk-7t429e3f.js.map → chunk-xvsc5m8n.js.map} +0 -0
  680. /package/dist/{chunk-z4m0yz8c.js.map → chunk-y5tah2kf.js.map} +0 -0
  681. /package/dist/{chunk-fkgc1wt8.js.map → chunk-z58tm0hm.js.map} +0 -0
@@ -1,7 +1,6 @@
1
1
  import type { AgentMessage, AgentMessagePart, AgentMessageRole } from "../../agents/message"
2
2
  import type { AgentReasoning } from "../../agents/types"
3
3
  import type { Principal } from "../../auth"
4
- import type { FileRef } from "../../blob-storage"
5
4
  import type { SixbErrorCode, SixbFailure } from "../../errors/types"
6
5
  import type { JsonValue } from "../../json"
7
6
  import type { LanguageModelRef } from "../../models"
@@ -157,15 +156,7 @@ export function coerceAgentRunFinishReason(
157
156
  }
158
157
 
159
158
  /** Stable, user-facing diagnostics emitted by the platform while executing a run. */
160
- export const AGENT_RUN_DIAGNOSTIC_CODES = [
161
- "output_file_limit_exceeded",
162
- "output_file_too_large",
163
- "output_budget_exhausted",
164
- "output_collection_failed",
165
- "output_file_changed",
166
- "output_storage_failed",
167
- "step_limit_reached",
168
- ] as const
159
+ export const AGENT_RUN_DIAGNOSTIC_CODES = ["step_limit_reached"] as const
169
160
 
170
161
  /**
171
162
  * Closed on purpose, and the wire is closed with it.
@@ -181,10 +172,8 @@ export type AgentRunDiagnosticSeverity = "warning" | "error"
181
172
  export interface AgentRunDiagnostic {
182
173
  readonly code: AgentRunDiagnosticCode
183
174
  readonly severity: AgentRunDiagnosticSeverity
184
- /** `output` for published files, `run` for the turn as a whole. */
185
- readonly scope: "output" | "run"
186
- /** Relative path inside the run's published output directory, when one file is involved. */
187
- readonly path?: string
175
+ /** What the diagnostic is about: the turn as a whole. */
176
+ readonly scope: "run"
188
177
  /** Sanitized, stable copy suitable for display to an end user. */
189
178
  readonly message: string
190
179
  }
@@ -251,8 +240,7 @@ export interface SubagentRunSpec {
251
240
 
252
241
  /** Durable child output returned to its parent by `wait_agent`. */
253
242
  export interface SubagentRunResult {
254
- readonly text?: string
255
- readonly files?: readonly FileRef[]
243
+ readonly text: string
256
244
  }
257
245
 
258
246
  export interface SubagentRunRecord extends AgentRunRecordBase {
@@ -480,6 +468,11 @@ export interface AgentThreadStore {
480
468
  transitionSandbox(input: TransitionAgentThreadSandboxInput): Promise<AgentThreadSandboxState>
481
469
  create(input: CreateAgentThreadInput): Promise<AgentThreadRecord>
482
470
  getById(params: { projectId: string; id: string }): Promise<AgentThreadRecord | null>
471
+ /** The threads found, in first-occurrence input order; a missing one is omitted. */
472
+ getByIds(params: {
473
+ readonly projectId: string
474
+ readonly ids: readonly string[]
475
+ }): Promise<readonly AgentThreadRecord[]>
483
476
  list(input: ListAgentThreadsInput): Promise<ListAgentThreadsResult>
484
477
  }
485
478
 
@@ -0,0 +1,16 @@
1
+ export type ArtifactStorageErrorCode =
2
+ | "artifact_exists"
3
+ | "artifact_not_found"
4
+ | "artifact_kind_mismatch"
5
+
6
+ /** Error for artifact-storage invariants. Callers branch on `code` rather than message text. */
7
+ export class ArtifactStorageError extends Error {
8
+ readonly name = "ArtifactStorageError"
9
+
10
+ constructor(
11
+ readonly code: ArtifactStorageErrorCode,
12
+ message: string
13
+ ) {
14
+ super(message)
15
+ }
16
+ }
@@ -0,0 +1,240 @@
1
+ import { principalsEqual } from "../../auth"
2
+ import { paginate } from "../pagination"
3
+ import { artifactStorageErrors } from "./record"
4
+ import type {
5
+ ArtifactFrameGrantRecord,
6
+ ArtifactRecord,
7
+ ArtifactStorage,
8
+ ArtifactVersionInput,
9
+ ArtifactVersionRecord,
10
+ CreateArtifactInput,
11
+ DeleteArtifactInput,
12
+ DeleteArtifactVersionsByOriginInput,
13
+ DeleteExpiredArtifactFrameGrantsInput,
14
+ FindArtifactFrameGrantInput,
15
+ GetArtifactInput,
16
+ GetArtifactVersionInput,
17
+ ListArtifactsInput,
18
+ ListArtifactsResult,
19
+ ListArtifactVersionsInput,
20
+ ListArtifactVersionsResult,
21
+ ListReferencingVersionsInput,
22
+ PublishArtifactVersionInput,
23
+ PublishedArtifactVersion,
24
+ } from "./types"
25
+
26
+ interface StoredArtifact {
27
+ readonly record: ArtifactRecord
28
+ /** Oldest first. */
29
+ readonly versions: readonly ArtifactVersionRecord[]
30
+ /** The number the next version gets; it only grows, so a deleted number is never reused. */
31
+ readonly nextVersion: number
32
+ }
33
+
34
+ interface InMemoryArtifactSnapshot {
35
+ readonly artifacts: ReadonlyMap<string, StoredArtifact>
36
+ readonly frameGrants: ReadonlyMap<string, ArtifactFrameGrantRecord>
37
+ }
38
+
39
+ export class InMemoryArtifactStorage implements ArtifactStorage {
40
+ private artifacts = new Map<string, StoredArtifact>()
41
+ private frameGrants = new Map<string, ArtifactFrameGrantRecord>()
42
+
43
+ async create(input: CreateArtifactInput): Promise<PublishedArtifactVersion> {
44
+ const key = artifactKey(input.projectId, input.id)
45
+ if (this.artifacts.has(key)) throw artifactStorageErrors.exists(input.id)
46
+ const version = versionRecord(input.projectId, input.id, 1, input.version)
47
+ const record: ArtifactRecord = {
48
+ projectId: input.projectId,
49
+ id: input.id,
50
+ kind: input.kind,
51
+ title: version.title,
52
+ owner: { ...input.owner },
53
+ latestVersion: 1,
54
+ createdAt: new Date(version.createdAt),
55
+ updatedAt: new Date(version.createdAt),
56
+ }
57
+ this.artifacts.set(key, { record, versions: [version], nextVersion: 2 })
58
+ return published(record, version)
59
+ }
60
+
61
+ async publish(input: PublishArtifactVersionInput): Promise<PublishedArtifactVersion> {
62
+ const key = artifactKey(input.projectId, input.artifactId)
63
+ const stored = this.artifacts.get(key)
64
+ if (!stored) throw artifactStorageErrors.notFound(input.artifactId)
65
+ if (stored.record.kind !== input.kind) {
66
+ throw artifactStorageErrors.kindMismatch(input.artifactId, stored.record.kind, input.kind)
67
+ }
68
+ const version = versionRecord(
69
+ input.projectId,
70
+ input.artifactId,
71
+ stored.nextVersion,
72
+ input.version
73
+ )
74
+ const record: ArtifactRecord = {
75
+ ...stored.record,
76
+ title: version.title,
77
+ latestVersion: version.version,
78
+ updatedAt: new Date(version.createdAt),
79
+ }
80
+ this.artifacts.set(key, {
81
+ record,
82
+ versions: [...stored.versions, version],
83
+ nextVersion: stored.nextVersion + 1,
84
+ })
85
+ return published(record, version)
86
+ }
87
+
88
+ async get(input: GetArtifactInput): Promise<ArtifactRecord | null> {
89
+ const stored = this.artifacts.get(artifactKey(input.projectId, input.id))
90
+ return stored ? structuredClone(stored.record) : null
91
+ }
92
+
93
+ async list(input: ListArtifactsInput): Promise<ListArtifactsResult> {
94
+ const matching = [...this.artifacts.values()]
95
+ .filter(
96
+ ({ record, versions }) =>
97
+ record.projectId === input.projectId &&
98
+ (!input.owner || principalsEqual(record.owner, input.owner)) &&
99
+ (input.kind === undefined || record.kind === input.kind) &&
100
+ (input.originThreadId === undefined ||
101
+ versions.some((version) => version.origin?.threadId === input.originThreadId))
102
+ )
103
+ .map(({ record }) => record)
104
+ .sort(
105
+ (left, right) =>
106
+ right.updatedAt.getTime() - left.updatedAt.getTime() || left.id.localeCompare(right.id)
107
+ )
108
+ const { page, hasMore, total } = paginate(matching, input)
109
+ return { artifacts: structuredClone(page), hasMore, total }
110
+ }
111
+
112
+ async getVersion(input: GetArtifactVersionInput): Promise<ArtifactVersionRecord | null> {
113
+ const stored = this.artifacts.get(artifactKey(input.projectId, input.artifactId))
114
+ const version = stored?.versions.find((candidate) => candidate.version === input.version)
115
+ return version ? structuredClone(version) : null
116
+ }
117
+
118
+ async listVersions(input: ListArtifactVersionsInput): Promise<ListArtifactVersionsResult> {
119
+ const stored = this.artifacts.get(artifactKey(input.projectId, input.artifactId))
120
+ const newestFirst = [...(stored?.versions ?? [])].reverse()
121
+ const { page, hasMore, total } = paginate(newestFirst, input)
122
+ return { versions: structuredClone(page), hasMore, total }
123
+ }
124
+
125
+ async listReferencingVersions(
126
+ input: ListReferencingVersionsInput
127
+ ): Promise<ArtifactVersionRecord[]> {
128
+ const prefix = `artifact:${input.artifactId}`
129
+ const referencing: ArtifactVersionRecord[] = []
130
+ for (const stored of this.artifacts.values()) {
131
+ if (stored.record.projectId !== input.projectId) continue
132
+ const latest = stored.versions.find(
133
+ (candidate) => candidate.version === stored.record.latestVersion
134
+ )
135
+ if (latest?.references.some((reference) => refersTo(reference.address, prefix))) {
136
+ referencing.push(structuredClone(latest))
137
+ }
138
+ }
139
+ // Code-unit order, as SQLite compares text.
140
+ return referencing.sort((left, right) => (left.artifactId < right.artifactId ? -1 : 1))
141
+ }
142
+
143
+ async createFrameGrant(record: ArtifactFrameGrantRecord): Promise<void> {
144
+ if (!this.artifacts.has(artifactKey(record.projectId, record.artifactId))) {
145
+ throw artifactStorageErrors.notFound(record.artifactId)
146
+ }
147
+ this.frameGrants.set(artifactKey(record.projectId, record.tokenHash), structuredClone(record))
148
+ }
149
+
150
+ async findFrameGrant(
151
+ input: FindArtifactFrameGrantInput
152
+ ): Promise<ArtifactFrameGrantRecord | null> {
153
+ const grant = this.frameGrants.get(artifactKey(input.projectId, input.tokenHash))
154
+ return grant ? structuredClone(grant) : null
155
+ }
156
+
157
+ async deleteExpiredFrameGrants(input: DeleteExpiredArtifactFrameGrantsInput): Promise<number> {
158
+ let deleted = 0
159
+ for (const [key, grant] of this.frameGrants) {
160
+ if (deleted >= input.limit) break
161
+ if (grant.projectId !== input.projectId || grant.expiresAt >= input.expiredBefore) continue
162
+ this.frameGrants.delete(key)
163
+ deleted += 1
164
+ }
165
+ return deleted
166
+ }
167
+
168
+ async delete(input: DeleteArtifactInput): Promise<boolean> {
169
+ return this.deleteArtifact(artifactKey(input.projectId, input.id))
170
+ }
171
+
172
+ async deleteVersionsByOrigin(input: DeleteArtifactVersionsByOriginInput): Promise<number> {
173
+ let deleted = 0
174
+ for (const [key, stored] of this.artifacts) {
175
+ if (stored.record.projectId !== input.projectId) continue
176
+ const remaining = stored.versions.filter((version) => version.origin?.runId !== input.runId)
177
+ if (remaining.length === stored.versions.length) continue
178
+ deleted += stored.versions.length - remaining.length
179
+ const latest = remaining.at(-1)
180
+ if (!latest) {
181
+ this.deleteArtifact(key)
182
+ continue
183
+ }
184
+ this.artifacts.set(key, {
185
+ ...stored,
186
+ record: {
187
+ ...stored.record,
188
+ title: latest.title,
189
+ latestVersion: latest.version,
190
+ updatedAt: new Date(latest.createdAt),
191
+ },
192
+ versions: remaining,
193
+ })
194
+ }
195
+ return deleted
196
+ }
197
+
198
+ snapshot(): InMemoryArtifactSnapshot {
199
+ return structuredClone({ artifacts: this.artifacts, frameGrants: this.frameGrants })
200
+ }
201
+
202
+ restore(snapshot: InMemoryArtifactSnapshot): void {
203
+ const restored = structuredClone(snapshot)
204
+ this.artifacts = new Map(restored.artifacts)
205
+ this.frameGrants = new Map(restored.frameGrants)
206
+ }
207
+
208
+ /** Deletes an artifact with its frame grants, as the SQL providers' cascade does. */
209
+ private deleteArtifact(key: string): boolean {
210
+ for (const [grantKey, grant] of this.frameGrants) {
211
+ if (artifactKey(grant.projectId, grant.artifactId) === key) this.frameGrants.delete(grantKey)
212
+ }
213
+ return this.artifacts.delete(key)
214
+ }
215
+ }
216
+
217
+ function versionRecord(
218
+ projectId: string,
219
+ artifactId: string,
220
+ version: number,
221
+ input: ArtifactVersionInput
222
+ ): ArtifactVersionRecord {
223
+ return structuredClone({ ...input, projectId, artifactId, version })
224
+ }
225
+
226
+ function published(
227
+ record: ArtifactRecord,
228
+ version: ArtifactVersionRecord
229
+ ): PublishedArtifactVersion {
230
+ return structuredClone({ artifact: record, version })
231
+ }
232
+
233
+ function artifactKey(projectId: string, id: string): string {
234
+ return `${projectId}\0${id}`
235
+ }
236
+
237
+ /** Whether an address names the artifact `artifact:<id>` is, at any version, file, or part. */
238
+ function refersTo(address: string, prefix: string): boolean {
239
+ return address.startsWith(prefix) && /^(?:$|[@/#])/.test(address.slice(prefix.length))
240
+ }
@@ -0,0 +1,30 @@
1
+ export type { ArtifactStorageErrorCode } from "./errors"
2
+ export { ArtifactStorageError } from "./errors"
3
+ export { InMemoryArtifactStorage } from "./in-memory"
4
+ export type {
5
+ ArtifactFile,
6
+ ArtifactFrameGrantRecord,
7
+ ArtifactFrameTarget,
8
+ ArtifactKind,
9
+ ArtifactOrigin,
10
+ ArtifactOutline,
11
+ ArtifactRecord,
12
+ ArtifactReference,
13
+ ArtifactStorage,
14
+ ArtifactVersionInput,
15
+ ArtifactVersionRecord,
16
+ CreateArtifactInput,
17
+ DeleteArtifactInput,
18
+ DeleteArtifactVersionsByOriginInput,
19
+ DeleteExpiredArtifactFrameGrantsInput,
20
+ FindArtifactFrameGrantInput,
21
+ GetArtifactInput,
22
+ GetArtifactVersionInput,
23
+ ListArtifactsInput,
24
+ ListArtifactsResult,
25
+ ListArtifactVersionsInput,
26
+ ListArtifactVersionsResult,
27
+ ListReferencingVersionsInput,
28
+ PublishArtifactVersionInput,
29
+ PublishedArtifactVersion,
30
+ } from "./types"
@@ -0,0 +1,200 @@
1
+ import { isArtifactKind } from "../../artifacts/kinds"
2
+ import type { ArtifactOutline } from "../../artifacts/outline"
3
+ import type { ArtifactReference } from "../../artifacts/references"
4
+ import type { Principal } from "../../auth"
5
+ import { isFileRef } from "../../blob-storage"
6
+ import { ArtifactStorageError } from "./errors"
7
+ import type {
8
+ ArtifactFile,
9
+ ArtifactFrameGrantRecord,
10
+ ArtifactFrameTarget,
11
+ ArtifactKind,
12
+ ArtifactRecord,
13
+ ArtifactVersionRecord,
14
+ } from "./types"
15
+
16
+ // Rows arrive from providers with camelCase keys. JSON columns may arrive parsed (jsonb) or as text
17
+ // (SQLite), and timestamps as `Date` or ISO text. A row that does not read back as a valid record
18
+ // fails closed rather than rendering something the store never held.
19
+
20
+ type Row = { readonly [column: string]: unknown }
21
+
22
+ export function parseArtifactRow(row: Row): ArtifactRecord {
23
+ const id = text(row.id, "id", "artifact")
24
+ const where = `artifact '${id}'`
25
+ const kind = row.kind
26
+ if (!isArtifactKind(kind)) throw corrupt(where, "kind is not an artifact kind")
27
+ return {
28
+ projectId: text(row.projectId, "projectId", where),
29
+ id,
30
+ kind,
31
+ title: text(row.title, "title", where),
32
+ owner: principal(row.ownerPrincipalType, row.ownerPrincipalId, "owner", where),
33
+ latestVersion: positiveInteger(row.latestVersion, "latestVersion", where),
34
+ createdAt: date(row.createdAt, "createdAt", where),
35
+ updatedAt: date(row.updatedAt, "updatedAt", where),
36
+ }
37
+ }
38
+
39
+ export function parseArtifactVersionRow(row: Row): ArtifactVersionRecord {
40
+ const artifactId = text(row.artifactId, "artifactId", "artifact version")
41
+ const version = positiveInteger(row.version, "version", `artifact '${artifactId}'`)
42
+ const where = `artifact '${artifactId}' version ${version}`
43
+ const originThreadId = row.originThreadId
44
+ const originRunId = row.originRunId
45
+ if ((originThreadId == null) !== (originRunId == null)) {
46
+ throw corrupt(where, "origin needs both a thread and a run")
47
+ }
48
+ return {
49
+ projectId: text(row.projectId, "projectId", where),
50
+ artifactId,
51
+ version,
52
+ title: text(row.title, "title", where),
53
+ entry: text(row.entry, "entry", where),
54
+ files: files(json(row.files, "files", where), where),
55
+ outline: outline(json(row.outline, "outline", where), where),
56
+ references: references(json(row.refs, "refs", where), where),
57
+ author: principal(row.authorPrincipalType, row.authorPrincipalId, "author", where),
58
+ ...(originThreadId == null
59
+ ? {}
60
+ : {
61
+ origin: {
62
+ threadId: text(originThreadId, "originThreadId", where),
63
+ runId: text(originRunId, "originRunId", where),
64
+ },
65
+ }),
66
+ createdAt: date(row.createdAt, "createdAt", where),
67
+ }
68
+ }
69
+
70
+ /** Targets are checked one by one: they decide what a frame may show from other artifacts. */
71
+ export function parseArtifactFrameGrantRow(row: Row): ArtifactFrameGrantRecord {
72
+ const artifactId = text(row.artifactId, "artifactId", "artifact frame grant")
73
+ const where = `frame grant for artifact '${artifactId}'`
74
+ return {
75
+ projectId: text(row.projectId, "projectId", where),
76
+ tokenHash: text(row.tokenHash, "tokenHash", where),
77
+ artifactId,
78
+ version: positiveInteger(row.version, "version", where),
79
+ targets: frameTargets(json(row.targets, "targets", where), where),
80
+ createdAt: date(row.createdAt, "createdAt", where),
81
+ expiresAt: date(row.expiresAt, "expiresAt", where),
82
+ }
83
+ }
84
+
85
+ /** The errors every provider raises, with one wording. */
86
+ export const artifactStorageErrors = {
87
+ exists: (id: string) =>
88
+ new ArtifactStorageError("artifact_exists", `[Sixb] Artifact '${id}' already exists.`),
89
+ notFound: (id: string) =>
90
+ new ArtifactStorageError("artifact_not_found", `[Sixb] Artifact '${id}' was not found.`),
91
+ kindMismatch: (id: string, kind: ArtifactKind, requested: ArtifactKind) =>
92
+ new ArtifactStorageError(
93
+ "artifact_kind_mismatch",
94
+ `[Sixb] Artifact '${id}' is a ${kind}; it cannot take a ${requested} version.`
95
+ ),
96
+ }
97
+
98
+ function files(value: unknown, where: string): ArtifactFile[] {
99
+ if (!Array.isArray(value)) throw corrupt(where, "files is not a list")
100
+ return value.map((entry) => {
101
+ if (!isObject(entry) || typeof entry.path !== "string" || !isFileRef(entry.file)) {
102
+ throw corrupt(where, "a file entry is not a path and a file reference")
103
+ }
104
+ return { path: entry.path, file: entry.file }
105
+ })
106
+ }
107
+
108
+ function outline(value: unknown, where: string): ArtifactOutline {
109
+ if (!isObject(value) || !isArtifactKind(value.kind)) {
110
+ throw corrupt(where, "outline does not name an artifact kind")
111
+ }
112
+ return value as unknown as ArtifactOutline
113
+ }
114
+
115
+ function references(value: unknown, where: string): ArtifactReference[] {
116
+ if (!Array.isArray(value)) throw corrupt(where, "references is not a list")
117
+ return value.map((entry) => {
118
+ if (
119
+ !isObject(entry) ||
120
+ typeof entry.address !== "string" ||
121
+ (entry.as !== "embed" && entry.as !== "link") ||
122
+ typeof entry.at !== "string" ||
123
+ !Number.isSafeInteger(entry.resolvedVersion) ||
124
+ (entry.resolvedVersion as number) < 1
125
+ ) {
126
+ throw corrupt(where, "a reference is not an address, a verb, a place, and a version")
127
+ }
128
+ return {
129
+ address: entry.address,
130
+ as: entry.as,
131
+ at: entry.at,
132
+ resolvedVersion: entry.resolvedVersion as number,
133
+ }
134
+ })
135
+ }
136
+
137
+ function frameTargets(value: unknown, where: string): ArtifactFrameTarget[] {
138
+ if (!Array.isArray(value)) throw corrupt(where, "targets is not a list")
139
+ return value.map((entry) => {
140
+ if (
141
+ !isObject(entry) ||
142
+ typeof entry.address !== "string" ||
143
+ typeof entry.artifactId !== "string" ||
144
+ !Number.isSafeInteger(entry.version) ||
145
+ (entry.version as number) < 1
146
+ ) {
147
+ throw corrupt(where, "a target is not an address, an artifact, and a version")
148
+ }
149
+ return {
150
+ address: entry.address,
151
+ artifactId: entry.artifactId,
152
+ version: entry.version as number,
153
+ }
154
+ })
155
+ }
156
+
157
+ const PRINCIPAL_TYPES: ReadonlySet<string> = new Set(["user", "serviceAccount", "system"])
158
+
159
+ function principal(type: unknown, id: unknown, column: string, where: string): Principal {
160
+ if (typeof type !== "string" || !PRINCIPAL_TYPES.has(type)) {
161
+ throw corrupt(where, `${column} is not a principal`)
162
+ }
163
+ return { type: type as Principal["type"], id: text(id, column, where) }
164
+ }
165
+
166
+ function json(value: unknown, column: string, where: string): unknown {
167
+ if (typeof value !== "string") return value
168
+ try {
169
+ return JSON.parse(value)
170
+ } catch {
171
+ throw corrupt(where, `${column} is not JSON`)
172
+ }
173
+ }
174
+
175
+ function text(value: unknown, column: string, where: string): string {
176
+ if (typeof value !== "string" || value.length === 0) throw corrupt(where, `${column} is not text`)
177
+ return value
178
+ }
179
+
180
+ function positiveInteger(value: unknown, column: string, where: string): number {
181
+ const number = typeof value === "bigint" ? Number(value) : value
182
+ if (typeof number !== "number" || !Number.isSafeInteger(number) || number < 1) {
183
+ throw corrupt(where, `${column} is not a positive integer`)
184
+ }
185
+ return number
186
+ }
187
+
188
+ function date(value: unknown, column: string, where: string): Date {
189
+ const parsed = value instanceof Date || typeof value === "string" ? new Date(value) : null
190
+ if (!parsed || !Number.isFinite(parsed.getTime())) throw corrupt(where, `${column} is not a date`)
191
+ return parsed
192
+ }
193
+
194
+ function isObject(value: unknown): value is Record<string, unknown> {
195
+ return typeof value === "object" && value !== null && !Array.isArray(value)
196
+ }
197
+
198
+ function corrupt(where: string, reason: string): Error {
199
+ return new Error(`[Sixb] Stored ${where} is invalid: ${reason}.`)
200
+ }