@sixb/core 0.1.18 → 0.1.20

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 (523) hide show
  1. package/README.md +7 -6
  2. package/dist/actions/commit-edits.d.ts +7 -19
  3. package/dist/actions/commit-edits.d.ts.map +1 -1
  4. package/dist/actions/errors.d.ts +0 -3
  5. package/dist/actions/errors.d.ts.map +1 -1
  6. package/dist/actions/execution.d.ts +10 -3
  7. package/dist/actions/execution.d.ts.map +1 -1
  8. package/dist/actions/index.d.ts +6 -9
  9. package/dist/actions/index.d.ts.map +1 -1
  10. package/dist/actions/index.js +51 -50
  11. package/dist/actions/index.js.map +1 -1
  12. package/dist/actions/request.d.ts +14 -25
  13. package/dist/actions/request.d.ts.map +1 -1
  14. package/dist/actions/run/context.d.ts +40 -0
  15. package/dist/actions/run/context.d.ts.map +1 -0
  16. package/dist/actions/run/edits-commit.d.ts +31 -0
  17. package/dist/actions/run/edits-commit.d.ts.map +1 -0
  18. package/dist/actions/run/effects.d.ts +23 -0
  19. package/dist/actions/run/effects.d.ts.map +1 -0
  20. package/dist/actions/run/execute.d.ts +30 -0
  21. package/dist/actions/run/execute.d.ts.map +1 -0
  22. package/dist/actions/run/executor.d.ts +95 -0
  23. package/dist/actions/run/executor.d.ts.map +1 -0
  24. package/dist/actions/run/normalize.d.ts +36 -0
  25. package/dist/actions/run/normalize.d.ts.map +1 -0
  26. package/dist/actions/run/phase-types.d.ts +18 -0
  27. package/dist/actions/run/phase-types.d.ts.map +1 -0
  28. package/dist/actions/run/phases.d.ts +20 -0
  29. package/dist/actions/run/phases.d.ts.map +1 -0
  30. package/dist/actions/run/run-action.d.ts +25 -0
  31. package/dist/actions/run/run-action.d.ts.map +1 -0
  32. package/dist/actions/run/signals.d.ts +67 -0
  33. package/dist/actions/run/signals.d.ts.map +1 -0
  34. package/dist/actions/run/state.d.ts +47 -0
  35. package/dist/actions/run/state.d.ts.map +1 -0
  36. package/dist/actions/run/types.d.ts +54 -0
  37. package/dist/actions/run/types.d.ts.map +1 -0
  38. package/dist/actions/run/writeback.d.ts +17 -0
  39. package/dist/actions/run/writeback.d.ts.map +1 -0
  40. package/dist/actions/run-authorization.d.ts +1 -1
  41. package/dist/actions/run-authorization.d.ts.map +1 -1
  42. package/dist/actions/run-persistence.d.ts +53 -0
  43. package/dist/actions/run-persistence.d.ts.map +1 -0
  44. package/dist/actions/types/context.d.ts +10 -0
  45. package/dist/actions/types/context.d.ts.map +1 -1
  46. package/dist/agents/index.js +52 -55
  47. package/dist/agents/index.js.map +1 -1
  48. package/dist/agents/streams/index.js +2 -2
  49. package/dist/agents/streams/internal.js +2 -2
  50. package/dist/auth/cookies.d.ts +2 -4
  51. package/dist/auth/cookies.d.ts.map +1 -1
  52. package/dist/auth/index.d.ts +0 -2
  53. package/dist/auth/index.d.ts.map +1 -1
  54. package/dist/auth/index.js +15 -21
  55. package/dist/auth/index.js.map +1 -1
  56. package/dist/auth/runtime.d.ts +8 -10
  57. package/dist/auth/runtime.d.ts.map +1 -1
  58. package/dist/auth/session-cache.d.ts +1 -5
  59. package/dist/auth/session-cache.d.ts.map +1 -1
  60. package/dist/auth/strategy.js +1 -1
  61. package/dist/auth/types.d.ts +4 -8
  62. package/dist/auth/types.d.ts.map +1 -1
  63. package/dist/auth/validation.d.ts +0 -1
  64. package/dist/auth/validation.d.ts.map +1 -1
  65. package/dist/authorization/decision.d.ts +0 -4
  66. package/dist/authorization/decision.d.ts.map +1 -1
  67. package/dist/authorization/event-visibility.d.ts.map +1 -1
  68. package/dist/authorization/grant-kinds.d.ts +6 -8
  69. package/dist/authorization/grant-kinds.d.ts.map +1 -1
  70. package/dist/authorization/index.d.ts +0 -1
  71. package/dist/authorization/index.d.ts.map +1 -1
  72. package/dist/authorization/index.js +5 -9
  73. package/dist/authorization/index.js.map +1 -1
  74. package/dist/authorization/resolve.d.ts +1 -1
  75. package/dist/authorization/resolve.d.ts.map +1 -1
  76. package/dist/bootstrap/index.js +50 -53
  77. package/dist/bootstrap/index.js.map +2 -2
  78. package/dist/{chunk-vz3gc1tm.js → chunk-0rbyz4qy.js} +67 -69
  79. package/dist/{chunk-vz3gc1tm.js.map → chunk-0rbyz4qy.js.map} +4 -4
  80. package/dist/{chunk-rz53yb4v.js → chunk-0yh890a4.js} +1 -1
  81. package/dist/{chunk-vgk3hknm.js → chunk-1k89ecfr.js} +1 -1
  82. package/dist/{chunk-ny3xyvcn.js → chunk-1zq2p6g0.js} +3 -3
  83. package/dist/{chunk-dnmadg9k.js → chunk-3t2hgbgd.js} +2 -2
  84. package/dist/{chunk-k6hrnf35.js → chunk-4vyr1j8f.js} +51 -4
  85. package/dist/chunk-4vyr1j8f.js.map +11 -0
  86. package/dist/{chunk-22v5bpz3.js → chunk-5e43w60z.js} +1 -1
  87. package/dist/{chunk-de4z2bj6.js → chunk-5j58wjct.js} +17 -17
  88. package/dist/chunk-5j58wjct.js.map +18 -0
  89. package/dist/{chunk-fe52eczz.js → chunk-6c6sn0bh.js} +6352 -2127
  90. package/dist/chunk-6c6sn0bh.js.map +106 -0
  91. package/dist/{chunk-7hpdd6r9.js → chunk-6p49a5cq.js} +4 -4
  92. package/dist/{chunk-b9affek3.js → chunk-7n440zgt.js} +30 -30
  93. package/dist/{chunk-b9affek3.js.map → chunk-7n440zgt.js.map} +4 -4
  94. package/dist/{chunk-kkqwzy6h.js → chunk-7t429e3f.js} +1 -1
  95. package/dist/{chunk-6fsr7y93.js → chunk-8mx7qw3y.js} +14 -13
  96. package/dist/{chunk-6fsr7y93.js.map → chunk-8mx7qw3y.js.map} +4 -4
  97. package/dist/{chunk-kpx7jrmn.js → chunk-91mg3nj9.js} +59 -59
  98. package/dist/{chunk-kpx7jrmn.js.map → chunk-91mg3nj9.js.map} +5 -5
  99. package/dist/{chunk-ex496vct.js → chunk-9dmt152s.js} +1 -1
  100. package/dist/{chunk-48e3cn2d.js → chunk-9gyp8hg1.js} +2 -2
  101. package/dist/{chunk-ewqa58h9.js → chunk-9k93ah50.js} +4 -4
  102. package/dist/{chunk-ewqa58h9.js.map → chunk-9k93ah50.js.map} +1 -1
  103. package/dist/{chunk-zxawp1n2.js → chunk-9w055r5b.js} +1 -1
  104. package/dist/{chunk-4wn7bxxa.js → chunk-9ybhtmg4.js} +1 -1
  105. package/dist/{chunk-fc5zfxy1.js → chunk-a40ad1ft.js} +5 -13
  106. package/dist/chunk-a40ad1ft.js.map +10 -0
  107. package/dist/{chunk-y2aq6ag9.js → chunk-b38szspf.js} +5 -14
  108. package/dist/chunk-b38szspf.js.map +11 -0
  109. package/dist/{chunk-r2y23egw.js → chunk-bkpke1sg.js} +1 -10
  110. package/dist/chunk-bkpke1sg.js.map +10 -0
  111. package/dist/{chunk-htr6wjmv.js → chunk-bx9q3cwv.js} +22 -22
  112. package/dist/{chunk-htr6wjmv.js.map → chunk-bx9q3cwv.js.map} +1 -1
  113. package/dist/{chunk-vx2yp45y.js → chunk-c85m1hyj.js} +2 -2
  114. package/dist/{chunk-bs7sqkre.js → chunk-d09tj99x.js} +2 -2
  115. package/dist/{chunk-qkbx3tf6.js → chunk-d0bqz29d.js} +27 -47
  116. package/dist/chunk-d0bqz29d.js.map +23 -0
  117. package/dist/{chunk-zb77kjth.js → chunk-dk8tkk5f.js} +4 -4
  118. package/dist/{chunk-xt1zt7gv.js → chunk-es1gxsbf.js} +24 -15
  119. package/dist/chunk-es1gxsbf.js.map +13 -0
  120. package/dist/{chunk-vjcd8d27.js → chunk-fa02jy15.js} +1 -1
  121. package/dist/{chunk-za5yd58j.js → chunk-fkgc1wt8.js} +2 -2
  122. package/dist/{chunk-enpsx8k5.js → chunk-gsjm1wms.js} +16 -20
  123. package/dist/chunk-gsjm1wms.js.map +10 -0
  124. package/dist/{chunk-2jntasmh.js → chunk-hcbyfxbe.js} +25 -49
  125. package/dist/chunk-hcbyfxbe.js.map +12 -0
  126. package/dist/{chunk-p0dqwj3n.js → chunk-hjzdd750.js} +66 -47
  127. package/dist/{chunk-p0dqwj3n.js.map → chunk-hjzdd750.js.map} +4 -4
  128. package/dist/chunk-hkc3jct7.js.map +1 -1
  129. package/dist/{chunk-y05543x6.js → chunk-hvsb78a1.js} +4 -4
  130. package/dist/{chunk-y05543x6.js.map → chunk-hvsb78a1.js.map} +1 -1
  131. package/dist/{chunk-1b1f2d5f.js → chunk-k6q3n2sc.js} +9 -9
  132. package/dist/{chunk-1b1f2d5f.js.map → chunk-k6q3n2sc.js.map} +1 -1
  133. package/dist/{chunk-wr8qp979.js → chunk-m427qgq0.js} +9 -5
  134. package/dist/{chunk-wr8qp979.js.map → chunk-m427qgq0.js.map} +4 -3
  135. package/dist/{chunk-qq90g05n.js → chunk-n33z5bjw.js} +50 -240
  136. package/dist/{chunk-qq90g05n.js.map → chunk-n33z5bjw.js.map} +4 -4
  137. package/dist/{chunk-e1c18xjx.js → chunk-nq6gpjt7.js} +4 -45
  138. package/dist/{chunk-e1c18xjx.js.map → chunk-nq6gpjt7.js.map} +5 -5
  139. package/dist/{chunk-1hqwggsn.js → chunk-nzapm6p0.js} +1 -2
  140. package/dist/chunk-nzapm6p0.js.map +12 -0
  141. package/dist/{chunk-wt4szfec.js → chunk-pbcbn83d.js} +4 -4
  142. package/dist/{chunk-wt4szfec.js.map → chunk-pbcbn83d.js.map} +1 -1
  143. package/dist/{chunk-s4jhg8a3.js → chunk-ren4kg2j.js} +15 -15
  144. package/dist/{chunk-s4jhg8a3.js.map → chunk-ren4kg2j.js.map} +1 -1
  145. package/dist/{chunk-d0eb5yy6.js → chunk-rrzt8jdy.js} +5 -5
  146. package/dist/{chunk-d0eb5yy6.js.map → chunk-rrzt8jdy.js.map} +1 -1
  147. package/dist/{chunk-y9jmd7e5.js → chunk-s16apyk9.js} +102 -16
  148. package/dist/chunk-s16apyk9.js.map +16 -0
  149. package/dist/{chunk-6gmfggss.js → chunk-t7x8dmn0.js} +2 -2
  150. package/dist/{chunk-f1zxad2t.js → chunk-tg2cw67r.js} +6 -6
  151. package/dist/{chunk-f1zxad2t.js.map → chunk-tg2cw67r.js.map} +1 -1
  152. package/dist/{chunk-p844e0rn.js → chunk-tpn40322.js} +2 -2
  153. package/dist/{chunk-rt9p8m9t.js → chunk-v9xd5wzd.js} +1 -1
  154. package/dist/{chunk-6h5m9xjx.js → chunk-vpq4shxz.js} +49 -113
  155. package/dist/chunk-vpq4shxz.js.map +39 -0
  156. package/dist/{chunk-2vhg6ysa.js → chunk-vyf9kfqf.js} +1 -1
  157. package/dist/{chunk-bwjcehza.js → chunk-way52z4h.js} +1 -1
  158. package/dist/{chunk-qkvz64nd.js → chunk-x6m907x7.js} +3 -3
  159. package/dist/{chunk-yv9czyfr.js → chunk-xfs8x8m9.js} +5 -5
  160. package/dist/chunk-y0c4e6ex.js +16 -0
  161. package/dist/chunk-y0c4e6ex.js.map +10 -0
  162. package/dist/{chunk-v6xpd60t.js → chunk-yevzdx4y.js} +5 -5
  163. package/dist/{chunk-dfm066qg.js → chunk-yxd3nnqt.js} +2 -29
  164. package/dist/chunk-yxd3nnqt.js.map +11 -0
  165. package/dist/{chunk-70jmg2zx.js → chunk-yzwja0mj.js} +4 -19
  166. package/dist/{chunk-70jmg2zx.js.map → chunk-yzwja0mj.js.map} +3 -3
  167. package/dist/{chunk-qmnnhde6.js → chunk-z4m0yz8c.js} +1 -1
  168. package/dist/datasets/write.js +5 -5
  169. package/dist/deploy/index.d.ts +1 -1
  170. package/dist/deploy/index.d.ts.map +1 -1
  171. package/dist/deploy/internal.js +13 -10
  172. package/dist/deploy/internal.js.map +4 -4
  173. package/dist/deploy/services.d.ts +1 -2
  174. package/dist/deploy/services.d.ts.map +1 -1
  175. package/dist/deploy/types.d.ts +7 -7
  176. package/dist/deploy/types.d.ts.map +1 -1
  177. package/dist/deploy/validation.d.ts.map +1 -1
  178. package/dist/edits/index.js +3 -5
  179. package/dist/edits/index.js.map +1 -1
  180. package/dist/error-reporting/internal.js +3 -3
  181. package/dist/error-reporting/types.d.ts +2 -9
  182. package/dist/error-reporting/types.d.ts.map +1 -1
  183. package/dist/errors/catalog.d.ts +12 -0
  184. package/dist/errors/catalog.d.ts.map +1 -1
  185. package/dist/errors/internal.js +1 -1
  186. package/dist/events/definitions.d.ts +0 -5
  187. package/dist/events/definitions.d.ts.map +1 -1
  188. package/dist/events/index.d.ts +3 -3
  189. package/dist/events/index.d.ts.map +1 -1
  190. package/dist/events/index.js +6 -8
  191. package/dist/events/index.js.map +1 -1
  192. package/dist/events/scope.d.ts +0 -1
  193. package/dist/events/scope.d.ts.map +1 -1
  194. package/dist/events/scope.js +1 -1
  195. package/dist/events/selectors/builder.d.ts +1 -8
  196. package/dist/events/selectors/builder.d.ts.map +1 -1
  197. package/dist/events/selectors/index.d.ts +2 -2
  198. package/dist/events/selectors/index.d.ts.map +1 -1
  199. package/dist/events/selectors/index.js +2 -2
  200. package/dist/events/selectors/predicate.d.ts.map +1 -1
  201. package/dist/events/selectors/types.d.ts +2 -33
  202. package/dist/events/selectors/types.d.ts.map +1 -1
  203. package/dist/events/types/index.d.ts +1 -12
  204. package/dist/events/types/index.d.ts.map +1 -1
  205. package/dist/execution/agent.js +41 -44
  206. package/dist/execution/agent.js.map +1 -1
  207. package/dist/execution/authorization.d.ts.map +1 -1
  208. package/dist/execution/primitive.js +60 -91
  209. package/dist/execution/primitive.js.map +3 -4
  210. package/dist/execution/request.js +40 -43
  211. package/dist/execution/request.js.map +2 -2
  212. package/dist/index.d.ts +8 -8
  213. package/dist/index.d.ts.map +1 -1
  214. package/dist/index.js +105 -127
  215. package/dist/index.js.map +1 -1
  216. package/dist/lake-storage/index.js +5 -5
  217. package/dist/materialization/index.js +3 -3
  218. package/dist/materialization/index.js.map +1 -1
  219. package/dist/materialization/model.d.ts +19 -6
  220. package/dist/materialization/model.d.ts.map +1 -1
  221. package/dist/materializer/index.js +31 -31
  222. package/dist/materializer/index.js.map +1 -1
  223. package/dist/materializer/shared/normalize.d.ts.map +1 -1
  224. package/dist/models/execution/index.js +21 -21
  225. package/dist/objects/action/errors.d.ts +0 -9
  226. package/dist/objects/action/errors.d.ts.map +1 -1
  227. package/dist/objects/action/index.d.ts +3 -3
  228. package/dist/objects/action/index.d.ts.map +1 -1
  229. package/dist/objects/action/request.d.ts +2 -8
  230. package/dist/objects/action/request.d.ts.map +1 -1
  231. package/dist/objects/execution.d.ts +0 -2
  232. package/dist/objects/execution.d.ts.map +1 -1
  233. package/dist/objects/index.js +44 -29
  234. package/dist/objects/index.js.map +1 -1
  235. package/dist/objects/query/index.js +29 -29
  236. package/dist/objects/query/index.js.map +1 -1
  237. package/dist/objects/sdk/object-handle.d.ts.map +1 -1
  238. package/dist/objects/sdk/object-set.d.ts.map +1 -1
  239. package/dist/objects/service/index.d.ts +0 -1
  240. package/dist/objects/service/index.d.ts.map +1 -1
  241. package/dist/objects/vectors/handle.d.ts.map +1 -1
  242. package/dist/objects/vectors/profile.d.ts +5 -0
  243. package/dist/objects/vectors/profile.d.ts.map +1 -1
  244. package/dist/ontology/index.js +6 -6
  245. package/dist/ontology/index.js.map +1 -1
  246. package/dist/ontology/internal.js +2 -2
  247. package/dist/pipelines/index.js +28 -28
  248. package/dist/projections/internal.js +22 -22
  249. package/dist/projections/internal.js.map +1 -1
  250. package/dist/query.js +2 -2
  251. package/dist/queues/in-memory.d.ts +1 -2
  252. package/dist/queues/in-memory.d.ts.map +1 -1
  253. package/dist/queues/index.d.ts +1 -1
  254. package/dist/queues/index.d.ts.map +1 -1
  255. package/dist/queues/index.js +1 -1
  256. package/dist/queues/types.d.ts +0 -7
  257. package/dist/queues/types.d.ts.map +1 -1
  258. package/dist/runtime/host.d.ts.map +1 -1
  259. package/dist/runtime/internal.js +27 -28
  260. package/dist/runtime/internal.js.map +1 -1
  261. package/dist/runtime/resolve-definitions.d.ts.map +1 -1
  262. package/dist/runtime/types.d.ts +16 -36
  263. package/dist/runtime/types.d.ts.map +1 -1
  264. package/dist/sandboxes/index.js +5 -5
  265. package/dist/schedules/builders.d.ts.map +1 -1
  266. package/dist/schedules/index.js +3 -3
  267. package/dist/schedules/runtime.d.ts.map +1 -1
  268. package/dist/schedules/validation.d.ts +0 -1
  269. package/dist/schedules/validation.d.ts.map +1 -1
  270. package/dist/security/builders.d.ts.map +1 -1
  271. package/dist/security/every.d.ts +2 -5
  272. package/dist/security/every.d.ts.map +1 -1
  273. package/dist/security/grants.d.ts +2 -4
  274. package/dist/security/grants.d.ts.map +1 -1
  275. package/dist/security/index.d.ts +1 -2
  276. package/dist/security/index.d.ts.map +1 -1
  277. package/dist/security/membership-policies.d.ts.map +1 -1
  278. package/dist/security/public.d.ts +10 -0
  279. package/dist/security/public.d.ts.map +1 -0
  280. package/dist/security/public.js +10 -0
  281. package/dist/security/public.js.map +9 -0
  282. package/dist/security/registry.d.ts +0 -1
  283. package/dist/security/registry.d.ts.map +1 -1
  284. package/dist/security/types.d.ts +13 -18
  285. package/dist/security/types.d.ts.map +1 -1
  286. package/dist/security/validation.d.ts +0 -6
  287. package/dist/security/validation.d.ts.map +1 -1
  288. package/dist/shares/internal.js +20 -20
  289. package/dist/storage/action-runs/failure.js +2 -2
  290. package/dist/storage/action-runs/idempotency.d.ts +3 -4
  291. package/dist/storage/action-runs/idempotency.d.ts.map +1 -1
  292. package/dist/storage/action-runs/in-memory.d.ts +2 -9
  293. package/dist/storage/action-runs/in-memory.d.ts.map +1 -1
  294. package/dist/storage/action-runs/index.d.ts +1 -3
  295. package/dist/storage/action-runs/index.d.ts.map +1 -1
  296. package/dist/storage/action-runs/provider.js +1 -1
  297. package/dist/storage/action-runs/record.d.ts +20 -0
  298. package/dist/storage/action-runs/record.d.ts.map +1 -0
  299. package/dist/storage/action-runs/types.d.ts +39 -68
  300. package/dist/storage/action-runs/types.d.ts.map +1 -1
  301. package/dist/storage/agents/types.d.ts +1 -1
  302. package/dist/storage/ai-limits/enforcement.js +2 -2
  303. package/dist/storage/auth/in-memory/auth-storage.d.ts.map +1 -1
  304. package/dist/storage/auth/in-memory/magic-links.d.ts.map +1 -1
  305. package/dist/storage/auth/in-memory/oidc-attempts.d.ts.map +1 -1
  306. package/dist/storage/auth/in-memory/sessions.d.ts +0 -10
  307. package/dist/storage/auth/in-memory/sessions.d.ts.map +1 -1
  308. package/dist/storage/auth/in-memory/shared.d.ts +1 -2
  309. package/dist/storage/auth/in-memory/shared.d.ts.map +1 -1
  310. package/dist/storage/auth/types.d.ts +1 -17
  311. package/dist/storage/auth/types.d.ts.map +1 -1
  312. package/dist/storage/connector-connections/provider.js +1 -1
  313. package/dist/storage/file-upload-sessions/provider.js +10 -10
  314. package/dist/storage/index.d.ts +2 -2
  315. package/dist/storage/index.d.ts.map +1 -1
  316. package/dist/storage/index.js +21 -22
  317. package/dist/storage/index.js.map +1 -1
  318. package/dist/storage/internal.d.ts +1 -1
  319. package/dist/storage/internal.d.ts.map +1 -1
  320. package/dist/storage/internal.js +9 -12
  321. package/dist/storage/internal.js.map +1 -1
  322. package/dist/storage/objects/execution-limits.d.ts +1 -1
  323. package/dist/storage/objects/execution-limits.d.ts.map +1 -1
  324. package/dist/storage/ontology/provider.js +2 -2
  325. package/dist/storage/projection-runs/provider.js +2 -2
  326. package/dist/storage/types.d.ts +1 -1
  327. package/dist/storage/types.d.ts.map +1 -1
  328. package/dist/storage/workflow-runs/provider.js +10 -10
  329. package/dist/syncs/index.js +29 -29
  330. package/dist/testing/action-execution.d.ts +34 -4
  331. package/dist/testing/action-execution.d.ts.map +1 -1
  332. package/dist/testing/action-run-storage-contract.d.ts +11 -0
  333. package/dist/testing/action-run-storage-contract.d.ts.map +1 -0
  334. package/dist/testing/auth-storage-contract.d.ts.map +1 -1
  335. package/dist/testing/index.d.ts +2 -1
  336. package/dist/testing/index.d.ts.map +1 -1
  337. package/dist/testing/index.js +3205 -2946
  338. package/dist/testing/index.js.map +9 -8
  339. package/dist/testing/materializer-storage-contract.d.ts.map +1 -1
  340. package/dist/testing/queues-contract.d.ts.map +1 -1
  341. package/dist/webhooks/internal.js +26 -26
  342. package/dist/webhooks/internal.js.map +1 -1
  343. package/dist/workers/index.js +1 -1
  344. package/dist/workflows/index.js +48 -51
  345. package/dist/workflows/index.js.map +1 -1
  346. package/package.json +8 -8
  347. package/src/actions/commit-edits.ts +9 -37
  348. package/src/actions/errors.ts +0 -4
  349. package/src/actions/execution.ts +10 -10
  350. package/src/actions/index.ts +5 -24
  351. package/src/actions/request.ts +157 -295
  352. package/src/actions/run/context.ts +193 -0
  353. package/src/actions/run/edits-commit.ts +102 -0
  354. package/src/actions/run/effects.ts +105 -0
  355. package/src/actions/run/execute.ts +113 -0
  356. package/src/actions/run/executor.ts +314 -0
  357. package/src/actions/run/normalize.ts +142 -0
  358. package/src/actions/run/phase-types.ts +20 -0
  359. package/src/actions/run/phases.ts +150 -0
  360. package/src/actions/run/run-action.ts +170 -0
  361. package/src/actions/run/signals.ts +118 -0
  362. package/src/actions/run/state.ts +95 -0
  363. package/src/actions/run/types.ts +61 -0
  364. package/src/actions/run/writeback.ts +79 -0
  365. package/src/actions/run-authorization.ts +1 -1
  366. package/src/actions/run-persistence.ts +105 -0
  367. package/src/actions/types/context.ts +10 -0
  368. package/src/auth/cookies.ts +3 -20
  369. package/src/auth/index.ts +0 -6
  370. package/src/auth/runtime.ts +59 -76
  371. package/src/auth/session-cache.ts +2 -9
  372. package/src/auth/types.ts +4 -8
  373. package/src/auth/validation.ts +0 -2
  374. package/src/authorization/decision.ts +8 -23
  375. package/src/authorization/event-visibility.ts +0 -12
  376. package/src/authorization/grant-kinds.ts +20 -27
  377. package/src/authorization/index.ts +0 -1
  378. package/src/authorization/resolve.ts +10 -6
  379. package/src/deploy/index.ts +0 -1
  380. package/src/deploy/services.ts +2 -12
  381. package/src/deploy/types.ts +7 -8
  382. package/src/deploy/validation.ts +15 -7
  383. package/src/error-reporting/types.ts +2 -10
  384. package/src/errors/catalog.ts +13 -0
  385. package/src/events/definitions.ts +0 -17
  386. package/src/events/index.ts +0 -14
  387. package/src/events/scope.ts +0 -12
  388. package/src/events/selectors/builder.ts +0 -51
  389. package/src/events/selectors/index.ts +0 -6
  390. package/src/events/selectors/predicate.ts +0 -2
  391. package/src/events/selectors/types.ts +7 -65
  392. package/src/events/types/index.ts +0 -11
  393. package/src/execution/authorization.ts +11 -5
  394. package/src/index.ts +2 -33
  395. package/src/materialization/model.ts +26 -9
  396. package/src/materializer/README.md +6 -1
  397. package/src/materializer/edits/commit.ts +42 -32
  398. package/src/materializer/shared/normalize.ts +25 -14
  399. package/src/models/execution/embedding.ts +6 -6
  400. package/src/objects/action/errors.ts +0 -12
  401. package/src/objects/action/index.ts +3 -3
  402. package/src/objects/action/request.ts +2 -29
  403. package/src/objects/execution.ts +2 -2
  404. package/src/objects/sdk/object-handle.ts +3 -29
  405. package/src/objects/sdk/object-set.ts +5 -30
  406. package/src/objects/service/index.ts +0 -1
  407. package/src/objects/vectors/README.md +4 -0
  408. package/src/objects/vectors/handle.ts +11 -2
  409. package/src/objects/vectors/indexing-generate.ts +2 -2
  410. package/src/objects/vectors/profile.ts +5 -0
  411. package/src/queues/in-memory.ts +0 -6
  412. package/src/queues/index.ts +0 -2
  413. package/src/queues/types.ts +0 -11
  414. package/src/runtime/host.ts +5 -0
  415. package/src/runtime/resolve-definitions.ts +0 -1
  416. package/src/runtime/types.ts +16 -45
  417. package/src/schedules/builders.ts +1 -4
  418. package/src/schedules/runtime.ts +0 -41
  419. package/src/schedules/validation.ts +2 -16
  420. package/src/security/builders.ts +7 -2
  421. package/src/security/every.ts +1 -5
  422. package/src/security/grants.ts +5 -25
  423. package/src/security/index.ts +0 -3
  424. package/src/security/membership-policies.ts +3 -1
  425. package/src/security/public.ts +10 -0
  426. package/src/security/registry.ts +0 -8
  427. package/src/security/types.ts +19 -25
  428. package/src/security/validation.ts +19 -17
  429. package/src/storage/action-runs/idempotency.ts +13 -41
  430. package/src/storage/action-runs/in-memory.ts +20 -311
  431. package/src/storage/action-runs/index.ts +1 -16
  432. package/src/storage/action-runs/record.ts +130 -0
  433. package/src/storage/action-runs/types.ts +37 -92
  434. package/src/storage/agents/types.ts +1 -1
  435. package/src/storage/auth/in-memory/auth-storage.ts +0 -18
  436. package/src/storage/auth/in-memory/magic-links.ts +0 -3
  437. package/src/storage/auth/in-memory/oidc-attempts.ts +0 -3
  438. package/src/storage/auth/in-memory/sessions.ts +1 -25
  439. package/src/storage/auth/in-memory/shared.ts +1 -10
  440. package/src/storage/auth/types.ts +2 -18
  441. package/src/storage/index.ts +1 -9
  442. package/src/storage/internal.ts +1 -7
  443. package/src/storage/objects/execution-limits.ts +3 -2
  444. package/src/storage/types.ts +2 -4
  445. package/src/testing/action-execution.ts +73 -13
  446. package/src/testing/action-run-storage-contract.ts +335 -0
  447. package/src/testing/auth-storage-contract.ts +14 -107
  448. package/src/testing/execution-storage-contract.ts +0 -2
  449. package/src/testing/index.ts +8 -1
  450. package/src/testing/materializer-storage-contract.ts +174 -18
  451. package/src/testing/queues-contract.ts +0 -18
  452. package/dist/actions/run-dispatch.d.ts +0 -25
  453. package/dist/actions/run-dispatch.d.ts.map +0 -1
  454. package/dist/actions/worker.d.ts +0 -3
  455. package/dist/actions/worker.d.ts.map +0 -1
  456. package/dist/actions/worker.js +0 -325
  457. package/dist/actions/worker.js.map +0 -11
  458. package/dist/auth/audience.d.ts +0 -8
  459. package/dist/auth/audience.d.ts.map +0 -1
  460. package/dist/authorization/application-access.d.ts +0 -18
  461. package/dist/authorization/application-access.d.ts.map +0 -1
  462. package/dist/chunk-1hqwggsn.js.map +0 -12
  463. package/dist/chunk-2jntasmh.js.map +0 -13
  464. package/dist/chunk-6h5m9xjx.js.map +0 -40
  465. package/dist/chunk-85cd7e8c.js +0 -51
  466. package/dist/chunk-85cd7e8c.js.map +0 -10
  467. package/dist/chunk-de4z2bj6.js.map +0 -18
  468. package/dist/chunk-dfm066qg.js.map +0 -11
  469. package/dist/chunk-enpsx8k5.js.map +0 -10
  470. package/dist/chunk-fc5zfxy1.js.map +0 -11
  471. package/dist/chunk-fe52eczz.js.map +0 -49
  472. package/dist/chunk-fx93hd2n.js +0 -1614
  473. package/dist/chunk-fx93hd2n.js.map +0 -20
  474. package/dist/chunk-k6hrnf35.js.map +0 -10
  475. package/dist/chunk-qkbx3tf6.js.map +0 -24
  476. package/dist/chunk-qxvp5epv.js +0 -1329
  477. package/dist/chunk-qxvp5epv.js.map +0 -36
  478. package/dist/chunk-r2y23egw.js.map +0 -10
  479. package/dist/chunk-tffvfy6s.js +0 -593
  480. package/dist/chunk-tffvfy6s.js.map +0 -15
  481. package/dist/chunk-xt1zt7gv.js.map +0 -13
  482. package/dist/chunk-y2aq6ag9.js.map +0 -11
  483. package/dist/chunk-y9jmd7e5.js.map +0 -15
  484. package/dist/chunk-zvx7h87b.js +0 -12
  485. package/dist/chunk-zvx7h87b.js.map +0 -10
  486. package/dist/events/types/actions.d.ts +0 -39
  487. package/dist/events/types/actions.d.ts.map +0 -1
  488. package/dist/objects/service/action-service.d.ts +0 -13
  489. package/dist/objects/service/action-service.d.ts.map +0 -1
  490. package/dist/security/applications.d.ts +0 -15
  491. package/dist/security/applications.d.ts.map +0 -1
  492. package/src/actions/run-dispatch.ts +0 -282
  493. package/src/actions/worker.ts +0 -2
  494. package/src/auth/audience.ts +0 -28
  495. package/src/authorization/application-access.ts +0 -34
  496. package/src/events/types/actions.ts +0 -42
  497. package/src/objects/service/action-service.ts +0 -43
  498. package/src/security/applications.ts +0 -11
  499. /package/dist/{chunk-rz53yb4v.js.map → chunk-0yh890a4.js.map} +0 -0
  500. /package/dist/{chunk-vgk3hknm.js.map → chunk-1k89ecfr.js.map} +0 -0
  501. /package/dist/{chunk-ny3xyvcn.js.map → chunk-1zq2p6g0.js.map} +0 -0
  502. /package/dist/{chunk-dnmadg9k.js.map → chunk-3t2hgbgd.js.map} +0 -0
  503. /package/dist/{chunk-22v5bpz3.js.map → chunk-5e43w60z.js.map} +0 -0
  504. /package/dist/{chunk-7hpdd6r9.js.map → chunk-6p49a5cq.js.map} +0 -0
  505. /package/dist/{chunk-kkqwzy6h.js.map → chunk-7t429e3f.js.map} +0 -0
  506. /package/dist/{chunk-ex496vct.js.map → chunk-9dmt152s.js.map} +0 -0
  507. /package/dist/{chunk-48e3cn2d.js.map → chunk-9gyp8hg1.js.map} +0 -0
  508. /package/dist/{chunk-zxawp1n2.js.map → chunk-9w055r5b.js.map} +0 -0
  509. /package/dist/{chunk-4wn7bxxa.js.map → chunk-9ybhtmg4.js.map} +0 -0
  510. /package/dist/{chunk-vx2yp45y.js.map → chunk-c85m1hyj.js.map} +0 -0
  511. /package/dist/{chunk-bs7sqkre.js.map → chunk-d09tj99x.js.map} +0 -0
  512. /package/dist/{chunk-zb77kjth.js.map → chunk-dk8tkk5f.js.map} +0 -0
  513. /package/dist/{chunk-vjcd8d27.js.map → chunk-fa02jy15.js.map} +0 -0
  514. /package/dist/{chunk-za5yd58j.js.map → chunk-fkgc1wt8.js.map} +0 -0
  515. /package/dist/{chunk-6gmfggss.js.map → chunk-t7x8dmn0.js.map} +0 -0
  516. /package/dist/{chunk-p844e0rn.js.map → chunk-tpn40322.js.map} +0 -0
  517. /package/dist/{chunk-rt9p8m9t.js.map → chunk-v9xd5wzd.js.map} +0 -0
  518. /package/dist/{chunk-2vhg6ysa.js.map → chunk-vyf9kfqf.js.map} +0 -0
  519. /package/dist/{chunk-bwjcehza.js.map → chunk-way52z4h.js.map} +0 -0
  520. /package/dist/{chunk-qkvz64nd.js.map → chunk-x6m907x7.js.map} +0 -0
  521. /package/dist/{chunk-yv9czyfr.js.map → chunk-xfs8x8m9.js.map} +0 -0
  522. /package/dist/{chunk-v6xpd60t.js.map → chunk-yevzdx4y.js.map} +0 -0
  523. /package/dist/{chunk-qmnnhde6.js.map → chunk-z4m0yz8c.js.map} +0 -0
@@ -1,593 +0,0 @@
1
- // @bun
2
- import {
3
- assertPropertyTokenBelongsToObjectType2,
4
- assertTelemetryProperty2
5
- } from "./chunk-y05543x6.js";
6
- import {
7
- lowerEditBatch2
8
- } from "./chunk-wr8qp979.js";
9
- import {
10
- objectRefKey2,
11
- linkRefKey2,
12
- linkScopeKey
13
- } from "./chunk-b9affek3.js";
14
- import {
15
- createLinkScopeFingerprint2
16
- } from "./chunk-p0dqwj3n.js";
17
- import {
18
- ActionValidationError2
19
- } from "./chunk-6fsr7y93.js";
20
- import {
21
- ActionDefinitionError2,
22
- ActionEditCommitError2,
23
- missingActionMutationMessage,
24
- effectsWithoutEditsMessage,
25
- assertNonEmpty2,
26
- isObjectActionDefinition2
27
- } from "./chunk-6h5m9xjx.js";
28
- import {
29
- decorateObjectQueryExecutor
30
- } from "./chunk-ewqa58h9.js";
31
- import {
32
- RuntimeError2
33
- } from "./chunk-m4ehq95f.js";
34
- import {
35
- OntologyValidationError2
36
- } from "./chunk-cqr3acm1.js";
37
-
38
- // src/actions/builders/define-action.ts
39
- function defineAction2(id, options) {
40
- assertNonEmpty2(id, "id");
41
- return asPublicActionType(createActionBuilder(id, options));
42
- }
43
- function createActionBuilder(id, options) {
44
- const builder = {
45
- params(params) {
46
- return createGlobalActionPhaseBuilder(id, params, options);
47
- },
48
- on(objectType) {
49
- assertNonEmpty2(objectType.id, "target id");
50
- return createObjectActionParamsBuilder(id, objectType, options);
51
- }
52
- };
53
- return builder;
54
- }
55
- function createGlobalActionPhaseBuilder(id, params, options) {
56
- const validators = [];
57
- const builder = {
58
- validate(validator) {
59
- validators.push(validator);
60
- return builder;
61
- },
62
- writeback(handler) {
63
- return createGlobalDefinition({
64
- id,
65
- params,
66
- description: options?.description,
67
- validators,
68
- writeback: handler
69
- });
70
- },
71
- edits(handler) {
72
- return createGlobalDefinition({
73
- id,
74
- params,
75
- description: options?.description,
76
- validators,
77
- edits: handler
78
- });
79
- }
80
- };
81
- return asPublicActionType(builder);
82
- }
83
- function createObjectActionParamsBuilder(id, objectType, options) {
84
- return {
85
- params(params) {
86
- return createObjectActionPhaseBuilder(id, objectType, params, options);
87
- }
88
- };
89
- }
90
- function createObjectActionPhaseBuilder(id, objectType, params, options) {
91
- const validators = [];
92
- const builder = {
93
- validate(validator) {
94
- validators.push(validator);
95
- return builder;
96
- },
97
- writeback(handler) {
98
- return createObjectDefinition({
99
- id,
100
- objectType,
101
- params,
102
- description: options?.description,
103
- validators,
104
- writeback: handler
105
- });
106
- },
107
- edits(handler) {
108
- return createObjectDefinition({
109
- id,
110
- objectType,
111
- params,
112
- description: options?.description,
113
- validators,
114
- edits: handler
115
- });
116
- }
117
- };
118
- return asPublicActionType(builder);
119
- }
120
- function createGlobalDefinition(input) {
121
- const definition = {
122
- kind: "action",
123
- id: input.id,
124
- binding: { kind: "global" },
125
- params: input.params,
126
- phases: {
127
- validate: [...input.validators],
128
- ...input.writeback ? { writeback: input.writeback } : {},
129
- ...input.edits ? { edits: input.edits } : {},
130
- ...input.effects ? { effects: input.effects } : {}
131
- },
132
- ...input.description !== undefined ? { description: input.description } : {}
133
- };
134
- return asPublicActionType(Object.assign(definition, {
135
- edits(handler) {
136
- return createGlobalDefinition({
137
- ...input,
138
- edits: handler
139
- });
140
- },
141
- effects(handler) {
142
- if (!input.edits) {
143
- throw new ActionDefinitionError2(effectsWithoutEditsMessage(input.id));
144
- }
145
- return createGlobalDefinition({
146
- ...input,
147
- effects: handler
148
- });
149
- }
150
- }));
151
- }
152
- function createObjectDefinition(input) {
153
- const definition = {
154
- kind: "action",
155
- id: input.id,
156
- binding: { kind: "object", objectType: input.objectType },
157
- params: input.params,
158
- phases: {
159
- validate: [...input.validators],
160
- ...input.writeback ? { writeback: input.writeback } : {},
161
- ...input.edits ? { edits: input.edits } : {},
162
- ...input.effects ? { effects: input.effects } : {}
163
- },
164
- ...input.description !== undefined ? { description: input.description } : {}
165
- };
166
- return asPublicActionType(Object.assign(definition, {
167
- edits(handler) {
168
- return createObjectDefinition({
169
- ...input,
170
- edits: handler
171
- });
172
- },
173
- effects(handler) {
174
- if (!input.edits) {
175
- throw new ActionDefinitionError2(effectsWithoutEditsMessage(input.id));
176
- }
177
- return createObjectDefinition({
178
- ...input,
179
- effects: handler
180
- });
181
- }
182
- }));
183
- }
184
- function asPublicActionType(value) {
185
- return value;
186
- }
187
- // src/shared/params/builders.ts
188
- function param2(schema, options) {
189
- const result = {
190
- schema,
191
- required: true,
192
- ...options?.description !== undefined ? { description: options.description } : {},
193
- ...options?.semanticType !== undefined ? { semanticType: options.semanticType } : {},
194
- ...options?.nullable !== undefined ? { nullable: options.nullable } : {}
195
- };
196
- return result;
197
- }
198
- function optional2(paramConfig) {
199
- return {
200
- ...paramConfig,
201
- required: false
202
- };
203
- }
204
- // src/actions/commit-edits.ts
205
- var NO_READ_DEPENDENCIES = { objects: [], links: [], linkScopes: [] };
206
- async function commitActionEdits2(input) {
207
- const dependencies = input.dependencies ?? NO_READ_DEPENDENCIES;
208
- const commit = await input.mutations.commitEdits({
209
- mode: "atomic",
210
- source: { kind: "action", actionId: input.actionId, runId: input.runId },
211
- operations: lowerEditBatch2(input.batch),
212
- expectedObjects: dependencies.objects,
213
- expectedLinks: dependencies.links,
214
- expectedLinkScopes: dependencies.linkScopes
215
- });
216
- return toActionEditCommitResult(commit);
217
- }
218
- async function findActionEditCommit2(input) {
219
- const record = await input.storage.ontology.commits.getByOrigin({
220
- projectId: input.projectId,
221
- origin: { kind: "action", actionRunId: input.runId }
222
- });
223
- if (!record)
224
- return null;
225
- if (record.result.kind !== "edit") {
226
- throw new ActionEditCommitError2(`[Sixb] Action run '${input.runId}' resolved a '${record.result.kind}' commit instead of an edit commit.`);
227
- }
228
- return toActionEditCommitResult({ ...record.result, created: false });
229
- }
230
- function toActionEditCommitResult(commit) {
231
- return {
232
- commitId: commit.commitId,
233
- created: commit.created,
234
- eventCount: commit.eventCount,
235
- outcomes: commit.outcomes,
236
- changes: commit.changes,
237
- committedAt: new Date(commit.committedAt)
238
- };
239
- }
240
- // src/actions/read-facade.ts
241
- class ActionReadRecorder2 {
242
- objects = new Map;
243
- links = new Map;
244
- linkScopes = new Map;
245
- observeObject(ref, row) {
246
- const key = objectRefKey2(ref);
247
- if (this.objects.has(key))
248
- return;
249
- if (!row) {
250
- this.objects.set(key, { ref, exists: false });
251
- return;
252
- }
253
- if (row.lastCommitId === undefined)
254
- return;
255
- this.objects.set(key, {
256
- ref,
257
- exists: true,
258
- version: row.version,
259
- lastCommitId: row.lastCommitId
260
- });
261
- }
262
- observeObjectRows(rows) {
263
- for (const row of rows) {
264
- this.observeObject({ objectTypeId: row.objectTypeId, primaryId: row.primaryId }, row);
265
- for (const value of Object.values(row.links ?? {})) {
266
- this.observeObjectRows(expandedRows(value));
267
- }
268
- }
269
- }
270
- observeLinkScopes(source, linkIds, rows) {
271
- const snapshotsByLinkId = new Map;
272
- for (const linkId of linkIds)
273
- snapshotsByLinkId.set(linkId, []);
274
- const unfenceable = new Set;
275
- for (const row of rows) {
276
- if (row.sourceTypeId !== source.objectTypeId || row.sourceId !== source.primaryId)
277
- continue;
278
- const snapshots = snapshotsByLinkId.get(row.linkId);
279
- if (!snapshots)
280
- continue;
281
- const snapshot = toLinkSnapshot(row);
282
- if (!snapshot) {
283
- unfenceable.add(row.linkId);
284
- continue;
285
- }
286
- snapshots.push(snapshot);
287
- this.observeLink(snapshot.ref, snapshot);
288
- }
289
- for (const [linkId, snapshots] of snapshotsByLinkId) {
290
- if (unfenceable.has(linkId))
291
- continue;
292
- const key = linkScopeKey(source, linkId);
293
- if (this.linkScopes.has(key))
294
- continue;
295
- this.linkScopes.set(key, {
296
- source,
297
- linkId,
298
- fingerprint: createLinkScopeFingerprint2(snapshots)
299
- });
300
- }
301
- }
302
- observeLink(ref, snapshot) {
303
- const key = linkRefKey2(ref);
304
- if (this.links.has(key))
305
- return;
306
- this.links.set(key, snapshot ? { ref, exists: true, lastCommitId: snapshot.lastCommitId } : { ref, exists: false });
307
- }
308
- dependencies() {
309
- return {
310
- objects: [...this.objects.values()],
311
- links: [...this.links.values()],
312
- linkScopes: [...this.linkScopes.values()]
313
- };
314
- }
315
- }
316
- function createActionReadFacade2(reader, options) {
317
- return {
318
- telemetry: createActionTelemetryReadFacade(options?.telemetry),
319
- objects(objectType) {
320
- const objectSet = reader.objects(objectType);
321
- return options ? recordObjectReads(objectType, objectSet, options) : objectSet;
322
- }
323
- };
324
- }
325
- function createActionTelemetryReadFacade(source) {
326
- const facade = {
327
- async historyBatch(input) {
328
- if (!source) {
329
- throw new RuntimeError2("[Sixb] Action telemetry history requires a configured telemetry read source.");
330
- }
331
- if (input.series.length === 0) {
332
- return [];
333
- }
334
- const requestedSeries = input.series.map((entry) => {
335
- const objectType = source.resolveObjectType(entry.property.objectTypeId);
336
- assertPropertyTokenBelongsToObjectType2(objectType, entry.property);
337
- const registeredProperty = objectType.properties.find((property) => property.id === entry.property.id);
338
- if (!registeredProperty) {
339
- throw new OntologyValidationError2(`[Sixb] Unknown property '${entry.property.id}' for object type '${objectType.id}'`);
340
- }
341
- assertTelemetryProperty2(registeredProperty);
342
- return {
343
- objectTypeId: objectType.id,
344
- objectId: entry.objectId,
345
- propertyId: registeredProperty.id
346
- };
347
- });
348
- const results = await source.getHistoryBatch({
349
- series: requestedSeries,
350
- ...input.from !== undefined ? { from: input.from } : {},
351
- ...input.to !== undefined ? { to: input.to } : {},
352
- ...input.limitPerSeries !== undefined ? { limitPerSeries: input.limitPerSeries } : {},
353
- ...input.order !== undefined ? { order: input.order } : {}
354
- });
355
- assertTelemetryBatchResultMatchesRequest(requestedSeries, results);
356
- return input.series.map((entry, index) => ({
357
- objectId: entry.objectId,
358
- property: entry.property,
359
- points: results[index].points.map((point) => ({
360
- value: point.value,
361
- at: point.at,
362
- ...point.unit !== undefined ? { unit: point.unit } : {}
363
- }))
364
- }));
365
- }
366
- };
367
- return facade;
368
- }
369
- function assertTelemetryBatchResultMatchesRequest(requested, results) {
370
- if (results.length !== requested.length) {
371
- throw new RuntimeError2(`[Sixb] Telemetry history provider returned ${results.length} batch results for ${requested.length} requested series.`);
372
- }
373
- for (let index = 0;index < requested.length; index += 1) {
374
- const expected = requested[index];
375
- const actual = results[index];
376
- if (actual.objectTypeId !== expected.objectTypeId || actual.objectId !== expected.objectId || actual.propertyId !== expected.propertyId) {
377
- throw new RuntimeError2(`[Sixb] Telemetry history provider returned an unexpected series at batch index ${index}.`);
378
- }
379
- }
380
- }
381
- function recordObjectReads(objectType, objectSet, options) {
382
- const { recorder } = options;
383
- const ref = (primaryId) => ({
384
- objectTypeId: objectType.id,
385
- primaryId
386
- });
387
- return {
388
- async get(id) {
389
- const row = await objectSet.get(id);
390
- recorder.observeObject(ref(id), row && storageRow(row));
391
- return row;
392
- },
393
- query() {
394
- return decorateObjectQueryExecutor(objectSet.query(), (executor) => recordingExecutor(executor, recorder));
395
- },
396
- async list(input) {
397
- const result = await objectSet.list(input);
398
- recorder.observeObjectRows(result.objects.map(storageRow));
399
- return result;
400
- },
401
- byId(id) {
402
- const handle = objectSet.byId(id);
403
- return {
404
- async get() {
405
- const row = await handle.get();
406
- recorder.observeObject(ref(id), row && storageRow(row));
407
- return row;
408
- },
409
- async listLinks(link) {
410
- const rows = await handle.listLinks(link);
411
- recorder.observeLinkScopes(ref(id), link ? [link.id] : options.resolveLinkIds(objectType.id), rows);
412
- return rows;
413
- },
414
- file: handle.file
415
- };
416
- }
417
- };
418
- }
419
- function recordingExecutor(executor, recorder) {
420
- return {
421
- async list(query, listOptions) {
422
- const result = await executor.list(query, listOptions);
423
- recorder.observeObjectRows(result.objects.map(storageRow));
424
- return result;
425
- },
426
- count: (query) => executor.count(query),
427
- exists: (query) => executor.exists(query),
428
- facets: (query, facets) => executor.facets(query, facets),
429
- validate: executor.validate?.bind(executor),
430
- explain: executor.explain?.bind(executor)
431
- };
432
- }
433
- function storageRow(row) {
434
- return row;
435
- }
436
- function expandedRows(value) {
437
- if (value === null)
438
- return [];
439
- return isExpandedRowList(value) ? value : [value];
440
- }
441
- function isExpandedRowList(value) {
442
- return Array.isArray(value);
443
- }
444
- function toLinkSnapshot(row) {
445
- if (row.lastCommitId === undefined)
446
- return null;
447
- return {
448
- ref: {
449
- source: { objectTypeId: row.sourceTypeId, primaryId: row.sourceId },
450
- linkId: row.linkId,
451
- target: { objectTypeId: row.targetTypeId, primaryId: row.targetId }
452
- },
453
- ...row.properties !== undefined ? { properties: row.properties } : {},
454
- createdAt: row.createdAt.toISOString(),
455
- updatedAt: row.updatedAt.toISOString(),
456
- lastCommitId: row.lastCommitId
457
- };
458
- }
459
- // src/actions/registry.ts
460
- class ActionRegistry2 {
461
- byId = new Map;
462
- globalActions = [];
463
- byTargetId = new Map;
464
- ontology;
465
- constructor(options) {
466
- this.ontology = options.ontology;
467
- for (const action of options.actions) {
468
- const previous = this.byId.get(action.id);
469
- if (previous) {
470
- const chainDuplicate = this.getInheritanceDuplicate(action, previous);
471
- if (chainDuplicate) {
472
- throw new ActionDefinitionError2(`Duplicate action id "${action.id}" in inheritance chain of "${chainDuplicate.objectTypeId}": defined on both "${chainDuplicate.firstTargetId}" and "${chainDuplicate.secondTargetId}".`);
473
- }
474
- throw new ActionDefinitionError2(`Duplicate action id "${action.id}" declared in multiple files.`);
475
- }
476
- this.validatePhases(action);
477
- this.byId.set(action.id, action);
478
- if (!isObjectActionDefinition2(action)) {
479
- this.globalActions.push(action);
480
- continue;
481
- }
482
- const objectType = action.binding.objectType;
483
- const target = this.ontology.getObjectTypeById(objectType.id);
484
- if (!target) {
485
- throw new ActionDefinitionError2(`Action "${action.id}" targets unknown object type "${objectType.id}". Add the object type to ontology before registering the action.`);
486
- }
487
- const bucket = this.byTargetId.get(objectType.id) ?? [];
488
- bucket.push(action);
489
- this.byTargetId.set(objectType.id, bucket);
490
- }
491
- }
492
- validatePhases(action) {
493
- const hasWriteback = action.phases.writeback !== undefined;
494
- const hasEdits = action.phases.edits !== undefined;
495
- const hasEffects = action.phases.effects !== undefined;
496
- if (!hasWriteback && !hasEdits) {
497
- throw new ActionDefinitionError2(missingActionMutationMessage(action.id));
498
- }
499
- if (hasEffects && !hasEdits) {
500
- throw new ActionDefinitionError2(effectsWithoutEditsMessage(action.id));
501
- }
502
- }
503
- list() {
504
- return [...this.byId.values()];
505
- }
506
- getById(id) {
507
- return this.byId.get(id) ?? null;
508
- }
509
- listGlobal() {
510
- return [...this.globalActions];
511
- }
512
- listForType(type) {
513
- this.ontology.resolveObjectType(type.id);
514
- const seen = new Set;
515
- const result = [];
516
- for (const ancestor of this.ontology.listAncestorChain(type)) {
517
- for (const action of this.byTargetId.get(ancestor.id) ?? []) {
518
- if (seen.has(action.id))
519
- continue;
520
- seen.add(action.id);
521
- result.push(action);
522
- }
523
- }
524
- return result;
525
- }
526
- getInheritanceDuplicate(action, previous) {
527
- if (!isObjectActionDefinition2(action) || !isObjectActionDefinition2(previous)) {
528
- return null;
529
- }
530
- const actionObjectType = action.binding.objectType;
531
- const previousObjectType = previous.binding.objectType;
532
- if (actionObjectType.id === previousObjectType.id) {
533
- return null;
534
- }
535
- const actionChain = this.ontology.listAncestorChain(actionObjectType);
536
- if (actionChain.some((ancestor) => ancestor.id === previousObjectType.id)) {
537
- return {
538
- objectTypeId: actionObjectType.id,
539
- firstTargetId: previousObjectType.id,
540
- secondTargetId: actionObjectType.id
541
- };
542
- }
543
- const previousChain = this.ontology.listAncestorChain(previousObjectType);
544
- if (previousChain.some((ancestor) => ancestor.id === actionObjectType.id)) {
545
- return {
546
- objectTypeId: previousObjectType.id,
547
- firstTargetId: actionObjectType.id,
548
- secondTargetId: previousObjectType.id
549
- };
550
- }
551
- return null;
552
- }
553
- }
554
- // src/actions/validators.ts
555
- async function runActionValidators2(input) {
556
- const validators = input.action.phases.validate;
557
- if (validators.length === 0) {
558
- return;
559
- }
560
- if (!isObjectActionDefinition2(input.action)) {
561
- for (const validator of validators) {
562
- const result = await validator(input.baseContext);
563
- if (isValidatorErrorResult(result)) {
564
- throw new ActionValidationError2(result.error, {
565
- actionId: input.action.id,
566
- subject: input.subject
567
- });
568
- }
569
- }
570
- return;
571
- }
572
- if (!input.target) {
573
- throw new Error(`[Sixb] Action '${input.action.id}' requires an object target.`);
574
- }
575
- for (const validator of validators) {
576
- const result = await validator({
577
- ...input.baseContext,
578
- target: input.target
579
- });
580
- if (isValidatorErrorResult(result)) {
581
- throw new ActionValidationError2(result.error, {
582
- actionId: input.action.id,
583
- subject: input.subject
584
- });
585
- }
586
- }
587
- }
588
- function isValidatorErrorResult(value) {
589
- return typeof value === "object" && value !== null && "error" in value && typeof value.error === "string";
590
- }
591
- export { defineAction2, param2, optional2, commitActionEdits2, findActionEditCommit2, ActionReadRecorder2, createActionReadFacade2, ActionRegistry2, runActionValidators2 };
592
-
593
- //# debugId=566997B478269C6164756E2164756E21