@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
@@ -2,32 +2,26 @@ import type { ActionSubject } from "../../actions"
2
2
  import type { SixbErrorCode, SixbFailure } from "../../errors/types"
3
3
  import type { JsonValue } from "../../json"
4
4
 
5
- export type ActionRunStatus = "queued" | "running" | "succeeded" | "failed" | "cancelled"
6
-
7
- export const ACTION_RUN_PHASES = [
8
- "request",
9
- "enqueue",
10
- "validation",
11
- "writeback",
12
- "edits",
13
- "commit",
14
- "effects",
15
- "cancelled",
16
- ] as const
5
+ /**
6
+ * How a run ended. A run is recorded once, when it ends: while it executes, the request that runs
7
+ * it is its only state.
8
+ */
9
+ export type ActionRunStatus = "succeeded" | "failed"
10
+
11
+ /** The phases of a run, in the order it reaches them. */
12
+ export const ACTION_RUN_PHASES = ["validation", "writeback", "edits", "commit", "effects"] as const
17
13
 
18
14
  export type ActionRunPhase = (typeof ACTION_RUN_PHASES)[number]
19
15
 
20
16
  export type ActionRunParams = Readonly<Record<string, JsonValue>>
21
17
 
22
- export type ActionRunPhaseStatus = "succeeded" | "failed"
23
-
24
18
  /** Error codes an action run or phase record can persist and expose. */
25
19
  export const ACTION_RUN_FAILURE_CODES = [
26
20
  "internal.unexpected",
27
21
  "runtime.cancelled",
28
- "queue.enqueue_failed",
29
22
  "action.phase_failed",
30
23
  "action.read_conflict",
24
+ "action.timeout",
31
25
  ] as const satisfies readonly [SixbErrorCode, ...SixbErrorCode[]]
32
26
 
33
27
  export type ActionRunFailureCode = (typeof ACTION_RUN_FAILURE_CODES)[number]
@@ -70,67 +64,34 @@ export type ActionRunEffectsRecord =
70
64
  readonly error: ActionRunFailure<"effects">
71
65
  }
72
66
 
73
- export interface ActionRunRecord {
67
+ interface ActionRunRecordFields {
74
68
  readonly id: string
75
69
  readonly projectId: string
76
70
  readonly executionId: string
77
71
  readonly actionId: string
78
72
  readonly subject: ActionSubject
79
- readonly status: ActionRunStatus
80
- readonly phase?: ActionRunPhase
81
- readonly queuedAt: Date
82
- readonly startedAt?: Date
83
- readonly finishedAt?: Date
73
+ /** The last phase the run reached. */
74
+ readonly phase: ActionRunPhase
75
+ readonly startedAt: Date
76
+ readonly finishedAt: Date
84
77
  readonly params: ActionRunParams
85
78
  readonly idempotencyKey: string
86
79
  readonly writeback?: ActionRunWritebackRecord
87
- readonly effects?: ActionRunEffectsRecord
88
- readonly error?: ActionRunFailure
89
- }
90
-
91
- export interface QueueActionRunInput {
92
- readonly id: string
93
- readonly projectId: string
94
- readonly executionId: string
95
- readonly actionId: string
96
- readonly subject: ActionSubject
97
- readonly params: ActionRunParams
98
- readonly idempotencyKey: string
99
- readonly queuedAt?: Date
100
80
  }
101
81
 
102
- export interface StartActionRunInput {
103
- readonly id: string
104
- readonly projectId: string
105
- readonly startedAt?: Date
106
- readonly phase?: Extract<ActionRunPhase, "validation">
107
- }
82
+ /** A run's terminal record, as it is written once when the run ends. */
83
+ export type RecordActionRunInput =
84
+ | (ActionRunRecordFields & { readonly status: "succeeded"; readonly error?: never })
85
+ | (ActionRunRecordFields & { readonly status: "failed"; readonly error: ActionRunFailure })
108
86
 
109
- export interface EnterActionRunPhaseInput {
110
- readonly id: string
111
- readonly projectId: string
112
- readonly phase: Extract<
113
- ActionRunPhase,
114
- "validation" | "writeback" | "edits" | "commit" | "effects"
115
- >
87
+ /**
88
+ * A recorded run. Its effects run after its record is written, so their outcome is the one part
89
+ * recorded later, on a succeeded run that committed edits.
90
+ */
91
+ export type ActionRunRecord = RecordActionRunInput & {
92
+ readonly effects?: ActionRunEffectsRecord
116
93
  }
117
94
 
118
- export type RecordActionWritebackInput =
119
- | {
120
- readonly id: string
121
- readonly projectId: string
122
- readonly status: "succeeded"
123
- readonly completedAt?: Date
124
- readonly result: JsonValue
125
- }
126
- | {
127
- readonly id: string
128
- readonly projectId: string
129
- readonly status: "failed"
130
- readonly completedAt?: Date
131
- readonly error: ActionRunFailure<"writeback">
132
- }
133
-
134
95
  export type RecordActionEffectsInput =
135
96
  | {
136
97
  readonly id: string
@@ -146,22 +107,6 @@ export type RecordActionEffectsInput =
146
107
  readonly error: ActionRunFailure<"effects">
147
108
  }
148
109
 
149
- export type FinishActionRunInput =
150
- | {
151
- readonly id: string
152
- readonly projectId: string
153
- readonly status: "succeeded"
154
- readonly finishedAt?: Date
155
- readonly phase?: ActionRunPhase
156
- }
157
- | {
158
- readonly id: string
159
- readonly projectId: string
160
- readonly status: "failed" | "cancelled"
161
- readonly finishedAt?: Date
162
- readonly error: ActionRunFailure
163
- }
164
-
165
110
  export interface ListActionRunsInput {
166
111
  readonly projectId: string
167
112
  readonly actionId?: string
@@ -184,21 +129,21 @@ export interface ListActionRunsResult {
184
129
  readonly total: number
185
130
  }
186
131
 
187
- export interface LockActionMaterializationRunInput {
188
- readonly projectId: string
189
- readonly actionId: string
190
- readonly runId: string
191
- }
192
-
193
132
  export interface ActionRunStorage {
194
- /** Transactional fence for Action identity and running state before a new ontology commit. */
195
- lockForMaterialization(input: LockActionMaterializationRunInput): Promise<ActionRunRecord>
196
- queue(input: QueueActionRunInput): Promise<ActionRunRecord>
197
- start(input: StartActionRunInput): Promise<ActionRunRecord>
198
- enterPhase(input: EnterActionRunPhaseInput): Promise<ActionRunRecord>
199
- recordWriteback(input: RecordActionWritebackInput): Promise<ActionRunRecord>
133
+ /**
134
+ * Insert a run's terminal record.
135
+ *
136
+ * A run is recorded once: a run id that already has a record is refused with an
137
+ * `ActionRunError`, and so is an execution that already recorded another run. The execution must
138
+ * be the trusted primitive execution created for this run.
139
+ */
140
+ record(input: RecordActionRunInput): Promise<ActionRunRecord>
141
+ /**
142
+ * Record the outcome of the effects of a succeeded run that committed edits, once. Recording an
143
+ * equal outcome again returns the run unchanged.
144
+ */
200
145
  recordEffects(input: RecordActionEffectsInput): Promise<ActionRunRecord>
201
- finish(input: FinishActionRunInput): Promise<ActionRunRecord>
202
146
  getById(params: { projectId: string; id: string }): Promise<ActionRunRecord | null>
147
+ /** Runs ordered by `startedAt`, then id. */
203
148
  list(input: ListActionRunsInput): Promise<ListActionRunsResult>
204
149
  }
@@ -172,7 +172,7 @@ export const AGENT_RUN_DIAGNOSTIC_CODES = [
172
172
  *
173
173
  * Sixb writes these codes and the generated client is what reads them, so an open union would only
174
174
  * be honest if the HTTP schema were open too — and that costs the OpenAPI enum, the client's
175
- * autocompletion, and Atlas's exhaustive `switch`. Sixb owns both ends, so a new code is a minor
175
+ * autocompletion, and the app's exhaustive `switch`. Sixb owns both ends, so a new code is a minor
176
176
  * version bump: cheap here, and a broken `switch` is better than a 500 from `z.enum`.
177
177
  */
178
178
  export type AgentRunDiagnosticCode = (typeof AGENT_RUN_DIAGNOSTIC_CODES)[number]
@@ -222,7 +222,6 @@ export class InMemoryAuthStorage implements AuthStorage {
222
222
  }
223
223
 
224
224
  validateCompleteSessionInput(this.state, projectId, input.session)
225
- assertSignInSessionAudience(projectId, input.session.audience, magicLink.audience)
226
225
 
227
226
  let newUserId: string | undefined
228
227
  if (shouldCreateUser) {
@@ -353,7 +352,6 @@ export class InMemoryAuthStorage implements AuthStorage {
353
352
  }
354
353
 
355
354
  validateCompleteSessionInput(this.state, projectId, input.session)
356
- assertSignInSessionAudience(projectId, input.session.audience, attempt.audience)
357
355
 
358
356
  let newUserId: string | undefined
359
357
  if (shouldCreateUser) {
@@ -555,7 +553,6 @@ export class InMemoryAuthStorage implements AuthStorage {
555
553
  projectId: input.projectId,
556
554
  userId: input.userId,
557
555
  strategyId: input.strategyId,
558
- audience: input.session.audience,
559
556
  tokenHash: input.session.tokenHash,
560
557
  createdAt: input.session.createdAt,
561
558
  expiresAt: input.session.expiresAt,
@@ -587,18 +584,3 @@ function restoreMap<TKey, TValue>(target: Map<TKey, TValue>, snapshot: Map<TKey,
587
584
  target.set(key, value)
588
585
  }
589
586
  }
590
-
591
- function assertSignInSessionAudience(
592
- projectId: string,
593
- sessionAudience: string,
594
- storedAudience: string
595
- ): void {
596
- if (sessionAudience === storedAudience) {
597
- return
598
- }
599
-
600
- throw new AuthStorageError(
601
- "invalid_input",
602
- `[Sixb] Sign-in session audience '${sessionAudience}' does not match stored auth audience '${storedAudience}' for project '${projectId}'.`
603
- )
604
- }
@@ -1,4 +1,3 @@
1
- import { resolveAuthSessionAudience } from "../../../auth/audience"
2
1
  import { AuthStorageError } from "../errors"
3
2
  import type { AuthMagicLinkStore, CreateAuthMagicLinkInput, MagicLinkRecord } from "../types"
4
3
  import type { AuthStorageState } from "./shared"
@@ -22,7 +21,6 @@ export class InMemoryAuthMagicLinkStore implements AuthMagicLinkStore {
22
21
  const id = assertNonEmpty(input.id, "Magic link id")
23
22
  const projectId = assertNonEmpty(input.projectId, "Project id")
24
23
  const strategyId = assertNonEmpty(input.strategyId, "Strategy id")
25
- const audience = resolveAuthSessionAudience(input.audience)
26
24
  const email = normalizeEmail(input.email)
27
25
  const tokenHash = assertNonEmpty(input.tokenHash, "Magic link token hash")
28
26
  const key = magicLinkKey(projectId, id)
@@ -40,7 +38,6 @@ export class InMemoryAuthMagicLinkStore implements AuthMagicLinkStore {
40
38
  id,
41
39
  projectId,
42
40
  strategyId,
43
- audience,
44
41
  email,
45
42
  tokenHash,
46
43
  returnTo: input.returnTo,
@@ -1,4 +1,3 @@
1
- import { resolveAuthSessionAudience } from "../../../auth/audience"
2
1
  import { AuthStorageError } from "../errors"
3
2
  import type {
4
3
  AuthOidcAuthorizationAttemptStore,
@@ -26,7 +25,6 @@ export class InMemoryAuthOidcAuthorizationAttemptStore
26
25
  const id = assertNonEmpty(input.id, "OIDC authorization attempt id")
27
26
  const projectId = assertNonEmpty(input.projectId, "Project id")
28
27
  const strategyId = assertNonEmpty(input.strategyId, "Strategy id")
29
- const audience = resolveAuthSessionAudience(input.audience)
30
28
  const stateHash = assertNonEmpty(input.stateHash, "OIDC state hash")
31
29
  const nonceHash = assertNonEmpty(input.nonceHash, "OIDC nonce hash")
32
30
  const codeVerifier = assertNonEmpty(input.codeVerifier, "OIDC code verifier")
@@ -43,7 +41,6 @@ export class InMemoryAuthOidcAuthorizationAttemptStore
43
41
  id,
44
42
  projectId,
45
43
  strategyId,
46
- audience,
47
44
  stateHash,
48
45
  nonceHash,
49
46
  codeVerifier,
@@ -1,4 +1,3 @@
1
- import type { AuthSessionAudience } from "../../../auth/audience"
2
1
  import { AuthStorageError } from "../errors"
3
2
  import type {
4
3
  AuthSessionStore,
@@ -11,7 +10,6 @@ import {
11
10
  cloneDate,
12
11
  cloneOptionalRecord,
13
12
  cloneRecord,
14
- compareByCreatedAt,
15
13
  createSessionRecord,
16
14
  isActiveSession,
17
15
  revokeActiveSessionsForUser,
@@ -33,22 +31,6 @@ export class InMemoryAuthSessionStore implements AuthSessionStore {
33
31
  return cloneOptionalRecord(record)
34
32
  }
35
33
 
36
- async getActiveByUserId(params: {
37
- readonly projectId: string
38
- readonly userId: string
39
- readonly audience: AuthSessionAudience
40
- readonly now: Date
41
- }): Promise<SessionRecord | null> {
42
- const sessions = [...this.state.sessions.values()]
43
- .filter((session) => session.projectId === params.projectId)
44
- .filter((session) => session.userId === params.userId)
45
- .filter((session) => session.audience === params.audience)
46
- .filter((session) => isActiveSession(session, params.now))
47
- .sort((a, b) => compareByCreatedAt(a, b, "desc"))
48
-
49
- return cloneOptionalRecord(sessions[0] ?? null)
50
- }
51
-
52
34
  async listActiveByUserId(params: {
53
35
  readonly projectId: string
54
36
  readonly userId: string
@@ -71,7 +53,6 @@ export class InMemoryAuthSessionStore implements AuthSessionStore {
71
53
  async findValidByTokenHash(params: {
72
54
  readonly projectId: string
73
55
  readonly id: string
74
- readonly audience: AuthSessionAudience
75
56
  readonly tokenHash: string
76
57
  readonly now: Date
77
58
  }): Promise<SessionRecord | null> {
@@ -79,7 +60,6 @@ export class InMemoryAuthSessionStore implements AuthSessionStore {
79
60
  if (
80
61
  !session ||
81
62
  session.bearer ||
82
- session.audience !== params.audience ||
83
63
  session.tokenHash !== params.tokenHash ||
84
64
  !isActiveSession(session, params.now)
85
65
  ) {
@@ -153,7 +133,6 @@ export class InMemoryAuthSessionStore implements AuthSessionStore {
153
133
  async renewIfValid(params: {
154
134
  readonly projectId: string
155
135
  readonly id: string
156
- readonly audience: AuthSessionAudience
157
136
  readonly tokenHash: string
158
137
  readonly now: Date
159
138
  readonly expiresAt: Date
@@ -163,7 +142,6 @@ export class InMemoryAuthSessionStore implements AuthSessionStore {
163
142
  if (
164
143
  !session ||
165
144
  session.bearer ||
166
- session.audience !== params.audience ||
167
145
  session.tokenHash !== params.tokenHash ||
168
146
  !isActiveSession(session, params.now)
169
147
  ) {
@@ -208,15 +186,13 @@ export class InMemoryAuthSessionStore implements AuthSessionStore {
208
186
  async revokeActiveForUser(params: {
209
187
  readonly projectId: string
210
188
  readonly userId: string
211
- readonly audience?: AuthSessionAudience
212
189
  readonly revokedAt: Date
213
190
  }): Promise<readonly SessionRecord[]> {
214
191
  return revokeActiveSessionsForUser(
215
192
  this.state,
216
193
  params.projectId,
217
194
  params.userId,
218
- params.revokedAt,
219
- params.audience
195
+ params.revokedAt
220
196
  ).map(cloneRecord)
221
197
  }
222
198
 
@@ -1,4 +1,3 @@
1
- import { type AuthSessionAudience, resolveAuthSessionAudience } from "../../../auth/audience"
2
1
  import { AuthStorageError } from "../errors"
3
2
  import type {
4
3
  AccessTokenRecord,
@@ -213,8 +212,7 @@ export function revokeActiveSessionsForUser(
213
212
  state: AuthStorageState,
214
213
  projectId: string,
215
214
  userId: string,
216
- revokedAt: Date,
217
- audience?: AuthSessionAudience
215
+ revokedAt: Date
218
216
  ): readonly SessionRecord[] {
219
217
  const revoked: SessionRecord[] = []
220
218
 
@@ -223,10 +221,6 @@ export function revokeActiveSessionsForUser(
223
221
  continue
224
222
  }
225
223
 
226
- if (audience !== undefined && session.audience !== audience) {
227
- continue
228
- }
229
-
230
224
  if (!isActiveSession(session, revokedAt)) {
231
225
  continue
232
226
  }
@@ -290,7 +284,6 @@ export function validateCompleteSessionInput(
290
284
  session: CompleteAuthSessionInput
291
285
  ): void {
292
286
  const sessionId = assertNonEmpty(session.id, "Session id")
293
- assertNonEmpty(session.audience, "Session audience")
294
287
  assertNonEmpty(session.tokenHash, "Session token hash")
295
288
  assertSessionIdAvailable(state, projectId, sessionId)
296
289
  }
@@ -303,7 +296,6 @@ export function createSessionRecord(
303
296
  const projectId = assertNonEmpty(input.projectId, "Project id")
304
297
  const userId = assertNonEmpty(input.userId, "User id")
305
298
  const strategyId = assertNonEmpty(input.strategyId, "Strategy id")
306
- const audience = resolveAuthSessionAudience(input.audience)
307
299
  const tokenHash = assertNonEmpty(input.tokenHash, "Session token hash")
308
300
 
309
301
  assertSessionIdAvailable(state, projectId, id)
@@ -313,7 +305,6 @@ export function createSessionRecord(
313
305
  projectId,
314
306
  userId,
315
307
  strategyId,
316
- audience,
317
308
  tokenHash,
318
309
  createdAt: cloneDate(input.createdAt),
319
310
  expiresAt: cloneDate(input.expiresAt),
@@ -1,4 +1,4 @@
1
- import type { AccessTokenKind, AuthSessionAudience, Principal } from "../../auth"
1
+ import type { AccessTokenKind, Principal } from "../../auth"
2
2
  import type { AuthorizablePrincipal } from "../../execution/types"
3
3
 
4
4
  export type UserStatus = "active" | "suspended"
@@ -57,7 +57,6 @@ export interface SessionRecord {
57
57
  readonly userId: string
58
58
  readonly strategyId: string
59
59
  /** The web app a browser session belongs to. A bearer session belongs to none and ignores it. */
60
- readonly audience: AuthSessionAudience
61
60
  readonly tokenHash: string
62
61
  readonly createdAt: Date
63
62
  readonly expiresAt: Date
@@ -142,7 +141,6 @@ export interface MagicLinkRecord {
142
141
  readonly id: string
143
142
  readonly projectId: string
144
143
  readonly strategyId: string
145
- readonly audience: AuthSessionAudience
146
144
  readonly email: string
147
145
  readonly tokenHash: string
148
146
  readonly returnTo?: string
@@ -156,7 +154,6 @@ export interface OidcAuthorizationAttemptRecord {
156
154
  readonly id: string
157
155
  readonly projectId: string
158
156
  readonly strategyId: string
159
- readonly audience: AuthSessionAudience
160
157
  readonly stateHash: string
161
158
  readonly nonceHash: string
162
159
  readonly codeVerifier: string
@@ -288,7 +285,6 @@ export interface CreateAuthSessionInput {
288
285
  readonly projectId: string
289
286
  readonly userId: string
290
287
  readonly strategyId: string
291
- readonly audience: AuthSessionAudience
292
288
  readonly tokenHash: string
293
289
  readonly createdAt: Date
294
290
  readonly expiresAt: Date
@@ -330,7 +326,6 @@ export interface ListAuthAccessTokensResult {
330
326
 
331
327
  export interface CompleteAuthSessionInput {
332
328
  readonly id: string
333
- readonly audience: AuthSessionAudience
334
329
  readonly tokenHash: string
335
330
  readonly createdAt: Date
336
331
  readonly expiresAt: Date
@@ -379,7 +374,6 @@ export interface CreateAuthMagicLinkInput {
379
374
  readonly id: string
380
375
  readonly projectId: string
381
376
  readonly strategyId: string
382
- readonly audience: AuthSessionAudience
383
377
  readonly email: string
384
378
  readonly tokenHash: string
385
379
  readonly returnTo?: string
@@ -391,7 +385,6 @@ export interface CreateOidcAuthorizationAttemptInput {
391
385
  readonly id: string
392
386
  readonly projectId: string
393
387
  readonly strategyId: string
394
- readonly audience: AuthSessionAudience
395
388
  readonly stateHash: string
396
389
  readonly nonceHash: string
397
390
  readonly codeVerifier: string
@@ -536,13 +529,7 @@ export interface AuthSessionStore {
536
529
  readonly projectId: string
537
530
  readonly id: string
538
531
  }): Promise<SessionRecord | null>
539
- getActiveByUserId(params: {
540
- readonly projectId: string
541
- readonly userId: string
542
- readonly audience: AuthSessionAudience
543
- readonly now: Date
544
- }): Promise<SessionRecord | null>
545
- // All active sessions for a user across every audience, most-recently-active
532
+ // All active sessions for a user, most-recently-active
546
533
  // first. Backs the active-sessions view.
547
534
  listActiveByUserId(params: {
548
535
  readonly projectId: string
@@ -553,7 +540,6 @@ export interface AuthSessionStore {
553
540
  findValidByTokenHash(params: {
554
541
  readonly projectId: string
555
542
  readonly id: string
556
- readonly audience: AuthSessionAudience
557
543
  readonly tokenHash: string
558
544
  readonly now: Date
559
545
  }): Promise<SessionRecord | null>
@@ -585,7 +571,6 @@ export interface AuthSessionStore {
585
571
  renewIfValid(params: {
586
572
  readonly projectId: string
587
573
  readonly id: string
588
- readonly audience: AuthSessionAudience
589
574
  readonly tokenHash: string
590
575
  readonly now: Date
591
576
  readonly expiresAt: Date
@@ -598,7 +583,6 @@ export interface AuthSessionStore {
598
583
  revokeActiveForUser(params: {
599
584
  readonly projectId: string
600
585
  readonly userId: string
601
- readonly audience?: AuthSessionAudience
602
586
  readonly revokedAt: Date
603
587
  }): Promise<readonly SessionRecord[]>
604
588
  touch(params: {
@@ -35,28 +35,20 @@ export type {
35
35
  ActionRunFailureDetails,
36
36
  ActionRunParams,
37
37
  ActionRunPhase,
38
- ActionRunPhaseRecord,
39
- ActionRunPhaseStatus,
40
38
  ActionRunRecord,
41
39
  ActionRunStatus,
42
40
  ActionRunStorage,
43
41
  ActionRunWritebackRecord,
44
- EnterActionRunPhaseInput,
45
- FinishActionRunInput,
46
42
  ListActionRunsInput,
47
43
  ListActionRunsResult,
48
- LockActionMaterializationRunInput,
49
- QueueActionRunInput,
50
44
  RecordActionEffectsInput,
51
- RecordActionWritebackInput,
52
- StartActionRunInput,
45
+ RecordActionRunInput,
53
46
  } from "./action-runs"
54
47
  export {
55
48
  ACTION_RUN_FAILURE_CODES,
56
49
  ACTION_RUN_PHASES,
57
50
  ActionRunError,
58
51
  InMemoryActionRunStorage,
59
- isTerminalActionRun,
60
52
  } from "./action-runs"
61
53
  export type {
62
54
  AgentContextCheckpointReason,
@@ -1,12 +1,6 @@
1
1
  /** Implementation exports for Sixb packages only. */
2
2
 
3
- export {
4
- actionRunParamsEqual,
5
- actionRunPhaseRecordsEqual,
6
- actionSubjectsEqual,
7
- canRequeueActionRunAfterEnqueueFailure,
8
- finishActionRunPhase,
9
- } from "./action-runs/idempotency"
3
+ export { normalizeRecordActionRunInput, resolveActionRunEffects } from "./action-runs/record"
10
4
  export { assertAiUsageExecutionId, normalizeAiModelCallRecord } from "./ai-usage/record"
11
5
  export { normalizeAiModelCallUsage } from "./ai-usage/usage"
12
6
  export { parseFileDownloadGrantRow } from "./file-download-grants/record"
@@ -20,9 +20,10 @@ export class ObjectReadLimitExceededError extends Error {
20
20
 
21
21
  constructor(
22
22
  readonly metric: ObjectReadLimitMetric,
23
- readonly limit: number
23
+ readonly limit: number,
24
+ message = `[Sixb] Object read exceeded its ${metric} limit (${limit}).`
24
25
  ) {
25
- super(`[Sixb] Object read exceeded its ${metric} limit (${limit}).`)
26
+ super(message)
26
27
  }
27
28
  }
28
29
 
@@ -35,12 +35,10 @@ export type {
35
35
  ActionRunRecord,
36
36
  ActionRunStatus,
37
37
  ActionRunStorage,
38
- FinishActionRunInput,
39
38
  ListActionRunsInput,
40
39
  ListActionRunsResult,
41
- LockActionMaterializationRunInput,
42
- QueueActionRunInput,
43
- StartActionRunInput,
40
+ RecordActionEffectsInput,
41
+ RecordActionRunInput,
44
42
  } from "./action-runs"
45
43
  export { ACTION_RUN_FAILURE_CODES, ACTION_RUN_PHASES, ActionRunError } from "./action-runs"
46
44
  export type {