@sixb/core 0.1.17 → 0.1.19

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 (715) 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 +56 -52
  11. package/dist/actions/index.js.map +1 -1
  12. package/dist/actions/read-facade.d.ts +1 -1
  13. package/dist/actions/request.d.ts +14 -25
  14. package/dist/actions/request.d.ts.map +1 -1
  15. package/dist/actions/run/context.d.ts +40 -0
  16. package/dist/actions/run/context.d.ts.map +1 -0
  17. package/dist/actions/run/edits-commit.d.ts +31 -0
  18. package/dist/actions/run/edits-commit.d.ts.map +1 -0
  19. package/dist/actions/run/effects.d.ts +23 -0
  20. package/dist/actions/run/effects.d.ts.map +1 -0
  21. package/dist/actions/run/execute.d.ts +30 -0
  22. package/dist/actions/run/execute.d.ts.map +1 -0
  23. package/dist/actions/run/executor.d.ts +95 -0
  24. package/dist/actions/run/executor.d.ts.map +1 -0
  25. package/dist/actions/run/normalize.d.ts +36 -0
  26. package/dist/actions/run/normalize.d.ts.map +1 -0
  27. package/dist/actions/run/phase-types.d.ts +18 -0
  28. package/dist/actions/run/phase-types.d.ts.map +1 -0
  29. package/dist/actions/run/phases.d.ts +20 -0
  30. package/dist/actions/run/phases.d.ts.map +1 -0
  31. package/dist/actions/run/run-action.d.ts +25 -0
  32. package/dist/actions/run/run-action.d.ts.map +1 -0
  33. package/dist/actions/run/signals.d.ts +67 -0
  34. package/dist/actions/run/signals.d.ts.map +1 -0
  35. package/dist/actions/run/state.d.ts +47 -0
  36. package/dist/actions/run/state.d.ts.map +1 -0
  37. package/dist/actions/run/types.d.ts +54 -0
  38. package/dist/actions/run/types.d.ts.map +1 -0
  39. package/dist/actions/run/writeback.d.ts +17 -0
  40. package/dist/actions/run/writeback.d.ts.map +1 -0
  41. package/dist/actions/run-authorization.d.ts +1 -1
  42. package/dist/actions/run-authorization.d.ts.map +1 -1
  43. package/dist/actions/run-persistence.d.ts +53 -0
  44. package/dist/actions/run-persistence.d.ts.map +1 -0
  45. package/dist/actions/types/context.d.ts +10 -0
  46. package/dist/actions/types/context.d.ts.map +1 -1
  47. package/dist/actions/validation.d.ts.map +1 -1
  48. package/dist/agents/adapters.d.ts +7 -0
  49. package/dist/agents/adapters.d.ts.map +1 -1
  50. package/dist/agents/authority.d.ts +7 -0
  51. package/dist/agents/authority.d.ts.map +1 -1
  52. package/dist/agents/context/entries.d.ts +10 -1
  53. package/dist/agents/context/entries.d.ts.map +1 -1
  54. package/dist/agents/context/index.d.ts +1 -1
  55. package/dist/agents/context/index.d.ts.map +1 -1
  56. package/dist/agents/context/index.js +4 -2
  57. package/dist/agents/context/index.js.map +1 -1
  58. package/dist/agents/context-compaction.d.ts.map +1 -1
  59. package/dist/agents/errors.d.ts +1 -1
  60. package/dist/agents/errors.d.ts.map +1 -1
  61. package/dist/agents/index.d.ts +6 -4
  62. package/dist/agents/index.d.ts.map +1 -1
  63. package/dist/agents/index.js +63 -59
  64. package/dist/agents/index.js.map +1 -1
  65. package/dist/agents/message.d.ts +8 -1
  66. package/dist/agents/message.d.ts.map +1 -1
  67. package/dist/agents/request.d.ts +19 -5
  68. package/dist/agents/request.d.ts.map +1 -1
  69. package/dist/agents/skills.d.ts +41 -0
  70. package/dist/agents/skills.d.ts.map +1 -0
  71. package/dist/agents/streams/index.js +2 -2
  72. package/dist/agents/streams/internal.js +2 -2
  73. package/dist/agents/types.d.ts +33 -4
  74. package/dist/agents/types.d.ts.map +1 -1
  75. package/dist/auth/index.js +12 -9
  76. package/dist/auth/index.js.map +1 -1
  77. package/dist/auth/runtime.d.ts.map +1 -1
  78. package/dist/auth/types.d.ts +6 -0
  79. package/dist/auth/types.d.ts.map +1 -1
  80. package/dist/authorization/event-visibility.d.ts.map +1 -1
  81. package/dist/authorization/index.js +6 -4
  82. package/dist/authorization/index.js.map +1 -1
  83. package/dist/authorization/resolve.d.ts +1 -1
  84. package/dist/authorization/resolve.d.ts.map +1 -1
  85. package/dist/authorization/types.d.ts +7 -0
  86. package/dist/authorization/types.d.ts.map +1 -1
  87. package/dist/blob-storage/browser.js +1 -1
  88. package/dist/blob-storage/execution.d.ts.map +1 -1
  89. package/dist/blob-storage/file-content.d.ts +18 -0
  90. package/dist/blob-storage/file-content.d.ts.map +1 -0
  91. package/dist/blob-storage/index.d.ts +1 -1
  92. package/dist/blob-storage/index.d.ts.map +1 -1
  93. package/dist/blob-storage/index.js +2 -2
  94. package/dist/blob-storage/internal.d.ts +2 -0
  95. package/dist/blob-storage/internal.d.ts.map +1 -1
  96. package/dist/blob-storage/internal.js +16 -4
  97. package/dist/blob-storage/internal.js.map +1 -1
  98. package/dist/blob-storage/media-type.d.ts +8 -0
  99. package/dist/blob-storage/media-type.d.ts.map +1 -0
  100. package/dist/blob-storage/types.d.ts +12 -1
  101. package/dist/blob-storage/types.d.ts.map +1 -1
  102. package/dist/blob-storage/validation.d.ts +6 -0
  103. package/dist/blob-storage/validation.d.ts.map +1 -1
  104. package/dist/bootstrap/agent-context.d.ts +33 -0
  105. package/dist/bootstrap/agent-context.d.ts.map +1 -0
  106. package/dist/bootstrap/discovery.d.ts +23 -3
  107. package/dist/bootstrap/discovery.d.ts.map +1 -1
  108. package/dist/bootstrap/index.d.ts +2 -1
  109. package/dist/bootstrap/index.d.ts.map +1 -1
  110. package/dist/bootstrap/index.js +285 -77
  111. package/dist/bootstrap/index.js.map +4 -3
  112. package/dist/bootstrap/ontology-type-manifest.d.ts.map +1 -1
  113. package/dist/{chunk-t9shqx3w.js → chunk-1f7wpmyp.js} +143 -7
  114. package/dist/chunk-1f7wpmyp.js.map +14 -0
  115. package/dist/{chunk-jjrn5v0p.js → chunk-1k89ecfr.js} +1 -1
  116. package/dist/{chunk-9vx5e9g1.js → chunk-1sr8ryzk.js} +3 -3
  117. package/dist/chunk-1sr8ryzk.js.map +11 -0
  118. package/dist/{chunk-s7ftxrdr.js → chunk-29yx306f.js} +20 -3
  119. package/dist/{chunk-s7ftxrdr.js.map → chunk-29yx306f.js.map} +3 -3
  120. package/dist/{chunk-svabwqdq.js → chunk-3gnrh4ve.js} +44 -420
  121. package/dist/{chunk-svabwqdq.js.map → chunk-3gnrh4ve.js.map} +9 -13
  122. package/dist/{chunk-4ra628t7.js → chunk-3zxk45er.js} +70 -6
  123. package/dist/{chunk-4ra628t7.js.map → chunk-3zxk45er.js.map} +5 -4
  124. package/dist/{chunk-pja9jfz6.js → chunk-4tcx876c.js} +126 -64
  125. package/dist/chunk-4tcx876c.js.map +19 -0
  126. package/dist/{chunk-vre348sb.js → chunk-52bk93x8.js} +2 -2
  127. package/dist/{chunk-4gmng3vf.js → chunk-5e43w60z.js} +2 -2
  128. package/dist/{chunk-91kcnbf0.js → chunk-6gmfggss.js} +22 -9
  129. package/dist/chunk-6gmfggss.js.map +10 -0
  130. package/dist/{chunk-33saed7g.js → chunk-7kg3k1m9.js} +1 -1
  131. package/dist/{chunk-7ecp4v7a.js → chunk-7mbzgd9m.js} +10 -4
  132. package/dist/{chunk-7ecp4v7a.js.map → chunk-7mbzgd9m.js.map} +3 -3
  133. package/dist/{chunk-b9affek3.js → chunk-7n440zgt.js} +30 -30
  134. package/dist/{chunk-b9affek3.js.map → chunk-7n440zgt.js.map} +4 -4
  135. package/dist/{chunk-kkqwzy6h.js → chunk-7t429e3f.js} +1 -1
  136. package/dist/{chunk-xcy5ddha.js → chunk-80mc0971.js} +356 -301
  137. package/dist/chunk-80mc0971.js.map +15 -0
  138. package/dist/{chunk-gf7yht60.js → chunk-85yvv5n0.js} +27 -10
  139. package/dist/chunk-85yvv5n0.js.map +12 -0
  140. package/dist/{chunk-6fsr7y93.js → chunk-8mx7qw3y.js} +14 -13
  141. package/dist/{chunk-6fsr7y93.js.map → chunk-8mx7qw3y.js.map} +4 -4
  142. package/dist/{chunk-kpx7jrmn.js → chunk-91mg3nj9.js} +59 -59
  143. package/dist/{chunk-kpx7jrmn.js.map → chunk-91mg3nj9.js.map} +5 -5
  144. package/dist/{chunk-2am3db31.js → chunk-9gyp8hg1.js} +2 -2
  145. package/dist/{chunk-ewqa58h9.js → chunk-9k93ah50.js} +4 -4
  146. package/dist/{chunk-ewqa58h9.js.map → chunk-9k93ah50.js.map} +1 -1
  147. package/dist/{chunk-4wn7bxxa.js → chunk-9ybhtmg4.js} +1 -1
  148. package/dist/{chunk-fc5zfxy1.js → chunk-a40ad1ft.js} +5 -13
  149. package/dist/chunk-a40ad1ft.js.map +10 -0
  150. package/dist/{chunk-dam456ve.js → chunk-aff7cyea.js} +431 -70
  151. package/dist/{chunk-dam456ve.js.map → chunk-aff7cyea.js.map} +10 -7
  152. package/dist/{chunk-y2aq6ag9.js → chunk-b38szspf.js} +5 -14
  153. package/dist/chunk-b38szspf.js.map +11 -0
  154. package/dist/{chunk-r2y23egw.js → chunk-bkpke1sg.js} +1 -10
  155. package/dist/chunk-bkpke1sg.js.map +10 -0
  156. package/dist/{chunk-xyvy73tj.js → chunk-bpgy64fw.js} +8 -3
  157. package/dist/chunk-bpgy64fw.js.map +12 -0
  158. package/dist/{chunk-rb143ggb.js → chunk-bwjcehza.js} +1 -1
  159. package/dist/{chunk-5thzcb8g.js → chunk-c85m1hyj.js} +2 -2
  160. package/dist/{chunk-e67ynxcr.js → chunk-d2ync1v3.js} +5 -5
  161. package/dist/{chunk-3rrezgyc.js → chunk-dnmadg9k.js} +2 -2
  162. package/dist/chunk-enpsx8k5.js +127 -0
  163. package/dist/chunk-enpsx8k5.js.map +10 -0
  164. package/dist/chunk-ey3pyej1.js +8807 -0
  165. package/dist/chunk-ey3pyej1.js.map +106 -0
  166. package/dist/{chunk-vjcd8d27.js → chunk-fa02jy15.js} +1 -1
  167. package/dist/{chunk-9se093qz.js → chunk-gc4ntf7d.js} +4 -4
  168. package/dist/{chunk-9se093qz.js.map → chunk-gc4ntf7d.js.map} +1 -1
  169. package/dist/{chunk-98cw09sw.js → chunk-hkc3jct7.js} +4 -2
  170. package/dist/chunk-hkc3jct7.js.map +10 -0
  171. package/dist/{chunk-rpxz486p.js → chunk-hvsb78a1.js} +24 -8
  172. package/dist/{chunk-rpxz486p.js.map → chunk-hvsb78a1.js.map} +3 -3
  173. package/dist/{chunk-5yd8cchh.js → chunk-j2bp5ryw.js} +55 -246
  174. package/dist/{chunk-5yd8cchh.js.map → chunk-j2bp5ryw.js.map} +4 -4
  175. package/dist/{chunk-h3v76ams.js → chunk-jhm3zsa7.js} +25 -2
  176. package/dist/chunk-jhm3zsa7.js.map +12 -0
  177. package/dist/{chunk-w9yycd3t.js → chunk-kg5j6fct.js} +4 -8
  178. package/dist/{chunk-w9yycd3t.js.map → chunk-kg5j6fct.js.map} +3 -3
  179. package/dist/{chunk-vp3z1ckh.js → chunk-kyzq4wy9.js} +7 -7
  180. package/dist/{chunk-wr8qp979.js → chunk-m427qgq0.js} +9 -5
  181. package/dist/{chunk-wr8qp979.js.map → chunk-m427qgq0.js.map} +4 -3
  182. package/dist/{chunk-c2rga5cx.js → chunk-mfs23znk.js} +1 -1
  183. package/dist/{chunk-e1c18xjx.js → chunk-nq6gpjt7.js} +4 -45
  184. package/dist/{chunk-e1c18xjx.js.map → chunk-nq6gpjt7.js.map} +5 -5
  185. package/dist/{chunk-a7er86jd.js → chunk-nre82s12.js} +1 -1
  186. package/dist/{chunk-1hqwggsn.js → chunk-nzapm6p0.js} +1 -2
  187. package/dist/chunk-nzapm6p0.js.map +12 -0
  188. package/dist/{chunk-wt4szfec.js → chunk-pbcbn83d.js} +4 -4
  189. package/dist/{chunk-wt4szfec.js.map → chunk-pbcbn83d.js.map} +1 -1
  190. package/dist/{chunk-dmn70ztd.js → chunk-pfp1txq2.js} +25 -6
  191. package/dist/chunk-pfp1txq2.js.map +11 -0
  192. package/dist/chunk-pqajwytd.js.map +2 -2
  193. package/dist/{chunk-f1xh7a32.js → chunk-q1vkr2ys.js} +4 -4
  194. package/dist/chunk-rdghfsss.js.map +2 -2
  195. package/dist/{chunk-23xs4qp9.js → chunk-rhg02hxq.js} +4 -4
  196. package/dist/{chunk-cd234ba4.js → chunk-rz53yb4v.js} +10 -5
  197. package/dist/chunk-rz53yb4v.js.map +14 -0
  198. package/dist/{chunk-aq39q04r.js → chunk-s16apyk9.js} +104 -18
  199. package/dist/chunk-s16apyk9.js.map +16 -0
  200. package/dist/{chunk-69266efg.js → chunk-s54c868q.js} +12 -4
  201. package/dist/chunk-s54c868q.js.map +12 -0
  202. package/dist/{chunk-k4g51s47.js → chunk-t6vq7bff.js} +5 -5
  203. package/dist/{chunk-sk0hcjsz.js → chunk-tjb1mk5t.js} +3 -3
  204. package/dist/{chunk-cnb5kv05.js → chunk-tpn40322.js} +23 -8
  205. package/dist/chunk-tpn40322.js.map +19 -0
  206. package/dist/{chunk-rx7h5fdx.js → chunk-v9xd5wzd.js} +1 -1
  207. package/dist/{chunk-2vhg6ysa.js → chunk-vyf9kfqf.js} +1 -1
  208. package/dist/chunk-wwdfe68s.js +128 -0
  209. package/dist/chunk-wwdfe68s.js.map +11 -0
  210. package/dist/{chunk-jnfxmr3f.js → chunk-wz0xs816.js} +6 -6
  211. package/dist/{chunk-jnfxmr3f.js.map → chunk-wz0xs816.js.map} +1 -1
  212. package/dist/chunk-xt1zt7gv.js +471 -0
  213. package/dist/chunk-xt1zt7gv.js.map +13 -0
  214. package/dist/chunk-y0c4e6ex.js +16 -0
  215. package/dist/chunk-y0c4e6ex.js.map +10 -0
  216. package/dist/{chunk-5be2ath4.js → chunk-y7rqfrgg.js} +20 -138
  217. package/dist/{chunk-5be2ath4.js.map → chunk-y7rqfrgg.js.map} +8 -9
  218. package/dist/{chunk-z5rnrmz1.js → chunk-yw9pyg66.js} +5 -3
  219. package/dist/chunk-yw9pyg66.js.map +11 -0
  220. package/dist/{chunk-dfm066qg.js → chunk-yxd3nnqt.js} +2 -29
  221. package/dist/chunk-yxd3nnqt.js.map +11 -0
  222. package/dist/{chunk-70jmg2zx.js → chunk-yzwja0mj.js} +4 -19
  223. package/dist/{chunk-70jmg2zx.js.map → chunk-yzwja0mj.js.map} +3 -3
  224. package/dist/{chunk-fggq3d9k.js → chunk-zrmy8zvw.js} +66 -47
  225. package/dist/{chunk-fggq3d9k.js.map → chunk-zrmy8zvw.js.map} +4 -4
  226. package/dist/datasets/builders.d.ts +12 -1
  227. package/dist/datasets/builders.d.ts.map +1 -1
  228. package/dist/datasets/execution.d.ts +27 -1
  229. package/dist/datasets/execution.d.ts.map +1 -1
  230. package/dist/datasets/index.d.ts +1 -1
  231. package/dist/datasets/index.d.ts.map +1 -1
  232. package/dist/datasets/types.d.ts +2 -0
  233. package/dist/datasets/types.d.ts.map +1 -1
  234. package/dist/datasets/write.d.ts +5 -0
  235. package/dist/datasets/write.d.ts.map +1 -1
  236. package/dist/datasets/write.js +10 -5
  237. package/dist/datasets/write.js.map +1 -1
  238. package/dist/deploy/index.d.ts +1 -1
  239. package/dist/deploy/index.d.ts.map +1 -1
  240. package/dist/deploy/internal.js +10 -8
  241. package/dist/deploy/internal.js.map +4 -4
  242. package/dist/deploy/services.d.ts +1 -2
  243. package/dist/deploy/services.d.ts.map +1 -1
  244. package/dist/deploy/types.d.ts +6 -5
  245. package/dist/deploy/types.d.ts.map +1 -1
  246. package/dist/deploy/validation.d.ts.map +1 -1
  247. package/dist/edits/index.js +3 -5
  248. package/dist/edits/index.js.map +1 -1
  249. package/dist/edits/properties.d.ts.map +1 -1
  250. package/dist/error-reporting/internal.js +3 -3
  251. package/dist/error-reporting/types.d.ts +2 -9
  252. package/dist/error-reporting/types.d.ts.map +1 -1
  253. package/dist/errors/catalog.d.ts +12 -0
  254. package/dist/errors/catalog.d.ts.map +1 -1
  255. package/dist/errors/internal.js +1 -1
  256. package/dist/events/definitions.d.ts +0 -5
  257. package/dist/events/definitions.d.ts.map +1 -1
  258. package/dist/events/execution.d.ts +2 -1
  259. package/dist/events/execution.d.ts.map +1 -1
  260. package/dist/events/index.d.ts +3 -3
  261. package/dist/events/index.d.ts.map +1 -1
  262. package/dist/events/index.js +6 -8
  263. package/dist/events/index.js.map +1 -1
  264. package/dist/events/scope.d.ts +0 -1
  265. package/dist/events/scope.d.ts.map +1 -1
  266. package/dist/events/scope.js +1 -1
  267. package/dist/events/selectors/builder.d.ts +1 -8
  268. package/dist/events/selectors/builder.d.ts.map +1 -1
  269. package/dist/events/selectors/index.d.ts +2 -2
  270. package/dist/events/selectors/index.d.ts.map +1 -1
  271. package/dist/events/selectors/index.js +2 -2
  272. package/dist/events/selectors/predicate.d.ts.map +1 -1
  273. package/dist/events/selectors/types.d.ts +2 -33
  274. package/dist/events/selectors/types.d.ts.map +1 -1
  275. package/dist/events/types/index.d.ts +1 -12
  276. package/dist/events/types/index.d.ts.map +1 -1
  277. package/dist/events/types/objects.d.ts +5 -0
  278. package/dist/events/types/objects.d.ts.map +1 -1
  279. package/dist/execution/agent.d.ts +10 -0
  280. package/dist/execution/agent.d.ts.map +1 -1
  281. package/dist/execution/agent.js +50 -48
  282. package/dist/execution/agent.js.map +1 -1
  283. package/dist/execution/authorized-object-reader.d.ts +6 -1
  284. package/dist/execution/authorized-object-reader.d.ts.map +1 -1
  285. package/dist/execution/primitive.js +60 -88
  286. package/dist/execution/primitive.js.map +3 -4
  287. package/dist/execution/request.js +46 -46
  288. package/dist/execution/request.js.map +1 -1
  289. package/dist/http/api-routes.d.ts.map +1 -1
  290. package/dist/http/index.js +1 -1
  291. package/dist/index.d.ts +12 -11
  292. package/dist/index.d.ts.map +1 -1
  293. package/dist/index.js +120 -124
  294. package/dist/index.js.map +1 -1
  295. package/dist/lake-storage/index.js +8 -5
  296. package/dist/lake-storage/index.js.map +1 -1
  297. package/dist/materialization/index.js +3 -3
  298. package/dist/materialization/index.js.map +1 -1
  299. package/dist/materialization/model.d.ts +19 -6
  300. package/dist/materialization/model.d.ts.map +1 -1
  301. package/dist/materializer/index.js +35 -32
  302. package/dist/materializer/index.js.map +1 -1
  303. package/dist/materializer/shared/normalize.d.ts.map +1 -1
  304. package/dist/models/catalog.d.ts +1 -1
  305. package/dist/models/catalog.d.ts.map +1 -1
  306. package/dist/models/execution/binding.d.ts +6 -0
  307. package/dist/models/execution/binding.d.ts.map +1 -1
  308. package/dist/models/execution/index.js +26 -23
  309. package/dist/models/execution/index.js.map +1 -1
  310. package/dist/models/execution/model-call-recorder.d.ts +4 -0
  311. package/dist/models/execution/model-call-recorder.d.ts.map +1 -1
  312. package/dist/models/execution.d.ts.map +1 -1
  313. package/dist/models/index.js +1 -1
  314. package/dist/models/language-model.d.ts +6 -0
  315. package/dist/models/language-model.d.ts.map +1 -1
  316. package/dist/objects/action/errors.d.ts +0 -9
  317. package/dist/objects/action/errors.d.ts.map +1 -1
  318. package/dist/objects/action/index.d.ts +3 -3
  319. package/dist/objects/action/index.d.ts.map +1 -1
  320. package/dist/objects/action/request.d.ts +2 -8
  321. package/dist/objects/action/request.d.ts.map +1 -1
  322. package/dist/objects/context/index.d.ts +1 -1
  323. package/dist/objects/context/index.d.ts.map +1 -1
  324. package/dist/objects/context/types.d.ts +6 -0
  325. package/dist/objects/context/types.d.ts.map +1 -1
  326. package/dist/objects/execution.d.ts +2 -3
  327. package/dist/objects/execution.d.ts.map +1 -1
  328. package/dist/objects/index.js +49 -30
  329. package/dist/objects/index.js.map +1 -1
  330. package/dist/objects/materializer-adapter.d.ts.map +1 -1
  331. package/dist/objects/object/upsert-batch.d.ts.map +1 -1
  332. package/dist/objects/object/upsert.d.ts.map +1 -1
  333. package/dist/objects/property-clearance.d.ts +41 -0
  334. package/dist/objects/property-clearance.d.ts.map +1 -0
  335. package/dist/objects/query/executor.d.ts +3 -0
  336. package/dist/objects/query/executor.d.ts.map +1 -1
  337. package/dist/objects/query/index.js +34 -31
  338. package/dist/objects/query/index.js.map +1 -1
  339. package/dist/objects/query/validate.d.ts +10 -1
  340. package/dist/objects/query/validate.d.ts.map +1 -1
  341. package/dist/objects/sdk/file-handle.d.ts +6 -0
  342. package/dist/objects/sdk/file-handle.d.ts.map +1 -0
  343. package/dist/objects/sdk/object-handle.d.ts +2 -2
  344. package/dist/objects/sdk/object-handle.d.ts.map +1 -1
  345. package/dist/objects/sdk/object-set.d.ts +2 -0
  346. package/dist/objects/sdk/object-set.d.ts.map +1 -1
  347. package/dist/objects/service/index.d.ts +0 -1
  348. package/dist/objects/service/index.d.ts.map +1 -1
  349. package/dist/ontology/builders.d.ts +12 -1
  350. package/dist/ontology/builders.d.ts.map +1 -1
  351. package/dist/ontology/docs-markdown.d.ts +35 -0
  352. package/dist/ontology/docs-markdown.d.ts.map +1 -0
  353. package/dist/ontology/docs.d.ts +50 -0
  354. package/dist/ontology/docs.d.ts.map +1 -0
  355. package/dist/ontology/index.js +7 -4
  356. package/dist/ontology/index.js.map +1 -1
  357. package/dist/ontology/inference/index.d.ts +19 -0
  358. package/dist/ontology/inference/index.d.ts.map +1 -1
  359. package/dist/ontology/internal.d.ts +3 -1
  360. package/dist/ontology/internal.d.ts.map +1 -1
  361. package/dist/ontology/internal.js +276 -3
  362. package/dist/ontology/internal.js.map +4 -3
  363. package/dist/ontology/tokens.d.ts +8 -1
  364. package/dist/ontology/tokens.d.ts.map +1 -1
  365. package/dist/ontology/types.d.ts +5 -0
  366. package/dist/ontology/types.d.ts.map +1 -1
  367. package/dist/ontology/validation/index.d.ts +1 -1
  368. package/dist/ontology/validation/index.d.ts.map +1 -1
  369. package/dist/ontology/validation/schema.d.ts +7 -0
  370. package/dist/ontology/validation/schema.d.ts.map +1 -1
  371. package/dist/pipelines/index.js +34 -31
  372. package/dist/pipelines/index.js.map +1 -1
  373. package/dist/projections/internal.js +27 -24
  374. package/dist/projections/internal.js.map +1 -1
  375. package/dist/query.js +2 -2
  376. package/dist/queues/in-memory.d.ts +1 -2
  377. package/dist/queues/in-memory.d.ts.map +1 -1
  378. package/dist/queues/index.d.ts +1 -1
  379. package/dist/queues/index.d.ts.map +1 -1
  380. package/dist/queues/index.js +1 -1
  381. package/dist/queues/types.d.ts +0 -7
  382. package/dist/queues/types.d.ts.map +1 -1
  383. package/dist/runtime/create.d.ts +11 -2
  384. package/dist/runtime/create.d.ts.map +1 -1
  385. package/dist/runtime/definitions.d.ts +3 -1
  386. package/dist/runtime/definitions.d.ts.map +1 -1
  387. package/dist/runtime/host.d.ts +13 -2
  388. package/dist/runtime/host.d.ts.map +1 -1
  389. package/dist/runtime/index.d.ts +1 -1
  390. package/dist/runtime/index.d.ts.map +1 -1
  391. package/dist/runtime/internal.js +30 -28
  392. package/dist/runtime/internal.js.map +1 -1
  393. package/dist/runtime/locale.d.ts +9 -0
  394. package/dist/runtime/locale.d.ts.map +1 -0
  395. package/dist/runtime/resolve-definitions.d.ts +4 -2
  396. package/dist/runtime/resolve-definitions.d.ts.map +1 -1
  397. package/dist/runtime/types.d.ts +46 -39
  398. package/dist/runtime/types.d.ts.map +1 -1
  399. package/dist/sandboxes/index.js +7 -6
  400. package/dist/sandboxes/index.js.map +1 -1
  401. package/dist/scheduler/index.js +1 -1
  402. package/dist/scheduler/runtime.d.ts +3 -0
  403. package/dist/scheduler/runtime.d.ts.map +1 -1
  404. package/dist/schedules/builders.d.ts.map +1 -1
  405. package/dist/schedules/index.js +3 -3
  406. package/dist/schedules/runtime.d.ts.map +1 -1
  407. package/dist/schedules/validation.d.ts +0 -1
  408. package/dist/schedules/validation.d.ts.map +1 -1
  409. package/dist/security/builders.d.ts +11 -2
  410. package/dist/security/builders.d.ts.map +1 -1
  411. package/dist/security/every.d.ts +1 -1
  412. package/dist/security/index.d.ts +4 -4
  413. package/dist/security/index.d.ts.map +1 -1
  414. package/dist/security/markings.d.ts +19 -0
  415. package/dist/security/markings.d.ts.map +1 -0
  416. package/dist/security/redactions.d.ts +4 -0
  417. package/dist/security/redactions.d.ts.map +1 -0
  418. package/dist/security/registry.d.ts +7 -1
  419. package/dist/security/registry.d.ts.map +1 -1
  420. package/dist/security/types.d.ts +25 -0
  421. package/dist/security/types.d.ts.map +1 -1
  422. package/dist/security/validation.d.ts +4 -1
  423. package/dist/security/validation.d.ts.map +1 -1
  424. package/dist/shares/internal.js +24 -21
  425. package/dist/shares/internal.js.map +2 -2
  426. package/dist/storage/action-runs/failure.js +2 -2
  427. package/dist/storage/action-runs/idempotency.d.ts +3 -4
  428. package/dist/storage/action-runs/idempotency.d.ts.map +1 -1
  429. package/dist/storage/action-runs/in-memory.d.ts +2 -9
  430. package/dist/storage/action-runs/in-memory.d.ts.map +1 -1
  431. package/dist/storage/action-runs/index.d.ts +1 -3
  432. package/dist/storage/action-runs/index.d.ts.map +1 -1
  433. package/dist/storage/action-runs/provider.js +1 -1
  434. package/dist/storage/action-runs/record.d.ts +20 -0
  435. package/dist/storage/action-runs/record.d.ts.map +1 -0
  436. package/dist/storage/action-runs/types.d.ts +39 -68
  437. package/dist/storage/action-runs/types.d.ts.map +1 -1
  438. package/dist/storage/agents/provider.d.ts.map +1 -1
  439. package/dist/storage/agents/provider.js +5 -4
  440. package/dist/storage/agents/provider.js.map +1 -1
  441. package/dist/storage/agents/types.d.ts +15 -9
  442. package/dist/storage/agents/types.d.ts.map +1 -1
  443. package/dist/storage/ai-limits/enforcement.js +2 -2
  444. package/dist/storage/connector-connections/provider.js +1 -1
  445. package/dist/storage/file-upload-sessions/provider.js +12 -9
  446. package/dist/storage/file-upload-sessions/provider.js.map +1 -1
  447. package/dist/storage/index.d.ts +3 -2
  448. package/dist/storage/index.d.ts.map +1 -1
  449. package/dist/storage/index.js +36 -34
  450. package/dist/storage/index.js.map +1 -1
  451. package/dist/storage/internal.d.ts +1 -1
  452. package/dist/storage/internal.d.ts.map +1 -1
  453. package/dist/storage/internal.js +11 -13
  454. package/dist/storage/internal.js.map +1 -1
  455. package/dist/storage/objects/execution-limits.d.ts +1 -1
  456. package/dist/storage/objects/execution-limits.d.ts.map +1 -1
  457. package/dist/storage/objects/types.d.ts +7 -0
  458. package/dist/storage/objects/types.d.ts.map +1 -1
  459. package/dist/storage/ontology/provider.js +2 -2
  460. package/dist/storage/projection-runs/provider.js +2 -2
  461. package/dist/storage/types.d.ts +1 -1
  462. package/dist/storage/types.d.ts.map +1 -1
  463. package/dist/storage/workflow-runs/provider.js +12 -9
  464. package/dist/storage/workflow-runs/provider.js.map +1 -1
  465. package/dist/syncs/index.js +35 -32
  466. package/dist/syncs/index.js.map +1 -1
  467. package/dist/testing/action-execution.d.ts +34 -4
  468. package/dist/testing/action-execution.d.ts.map +1 -1
  469. package/dist/testing/action-run-storage-contract.d.ts +11 -0
  470. package/dist/testing/action-run-storage-contract.d.ts.map +1 -0
  471. package/dist/testing/index.d.ts +2 -1
  472. package/dist/testing/index.d.ts.map +1 -1
  473. package/dist/testing/index.js +3213 -2869
  474. package/dist/testing/index.js.map +7 -6
  475. package/dist/testing/materializer-storage-contract.d.ts.map +1 -1
  476. package/dist/testing/queues-contract.d.ts.map +1 -1
  477. package/dist/webhooks/internal.js +29 -26
  478. package/dist/webhooks/internal.js.map +2 -2
  479. package/dist/workers/index.js +1 -1
  480. package/dist/workflows/builders.d.ts.map +1 -1
  481. package/dist/workflows/index.js +55 -55
  482. package/dist/workflows/index.js.map +1 -1
  483. package/dist/workflows/request.d.ts.map +1 -1
  484. package/dist/workflows/types.d.ts +6 -3
  485. package/dist/workflows/types.d.ts.map +1 -1
  486. package/dist/workflows/validation.d.ts +2 -1
  487. package/dist/workflows/validation.d.ts.map +1 -1
  488. package/package.json +1 -7
  489. package/src/actions/commit-edits.ts +9 -37
  490. package/src/actions/errors.ts +0 -4
  491. package/src/actions/execution.ts +10 -10
  492. package/src/actions/index.ts +5 -24
  493. package/src/actions/read-facade.ts +2 -1
  494. package/src/actions/request.ts +157 -295
  495. package/src/actions/run/context.ts +193 -0
  496. package/src/actions/run/edits-commit.ts +102 -0
  497. package/src/actions/run/effects.ts +105 -0
  498. package/src/actions/run/execute.ts +113 -0
  499. package/src/actions/run/executor.ts +314 -0
  500. package/src/actions/run/normalize.ts +142 -0
  501. package/src/actions/run/phase-types.ts +20 -0
  502. package/src/actions/run/phases.ts +150 -0
  503. package/src/actions/run/run-action.ts +170 -0
  504. package/src/actions/run/signals.ts +118 -0
  505. package/src/actions/run/state.ts +95 -0
  506. package/src/actions/run/types.ts +61 -0
  507. package/src/actions/run/writeback.ts +79 -0
  508. package/src/actions/run-authorization.ts +1 -1
  509. package/src/actions/run-persistence.ts +105 -0
  510. package/src/actions/types/context.ts +10 -0
  511. package/src/actions/validation.ts +4 -1
  512. package/src/agents/adapters.ts +15 -0
  513. package/src/agents/authority.ts +15 -0
  514. package/src/agents/context/entries.ts +48 -4
  515. package/src/agents/context/index.ts +1 -0
  516. package/src/agents/context-compaction.ts +6 -0
  517. package/src/agents/errors.ts +3 -0
  518. package/src/agents/index.ts +13 -1
  519. package/src/agents/message.ts +9 -0
  520. package/src/agents/request.ts +178 -22
  521. package/src/agents/skills.ts +63 -0
  522. package/src/agents/types.ts +35 -5
  523. package/src/auth/runtime.ts +14 -0
  524. package/src/auth/types.ts +6 -0
  525. package/src/authorization/event-visibility.ts +0 -12
  526. package/src/authorization/resolve.ts +6 -1
  527. package/src/authorization/types.ts +7 -0
  528. package/src/blob-storage/execution.ts +12 -0
  529. package/src/blob-storage/file-content.ts +106 -0
  530. package/src/blob-storage/index.ts +1 -0
  531. package/src/blob-storage/internal.ts +7 -0
  532. package/src/blob-storage/media-type.ts +29 -0
  533. package/src/blob-storage/types.ts +13 -1
  534. package/src/blob-storage/validation.ts +13 -0
  535. package/src/bootstrap/agent-context.ts +356 -0
  536. package/src/bootstrap/discovery.ts +100 -33
  537. package/src/bootstrap/index.ts +1 -1
  538. package/src/bootstrap/ontology-type-manifest.ts +3 -38
  539. package/src/datasets/builders.ts +17 -1
  540. package/src/datasets/execution.ts +110 -2
  541. package/src/datasets/index.ts +7 -1
  542. package/src/datasets/types.ts +2 -0
  543. package/src/datasets/write.ts +21 -2
  544. package/src/deploy/index.ts +0 -1
  545. package/src/deploy/services.ts +2 -11
  546. package/src/deploy/types.ts +6 -6
  547. package/src/deploy/validation.ts +12 -6
  548. package/src/edits/properties.ts +3 -0
  549. package/src/error-reporting/types.ts +2 -10
  550. package/src/errors/catalog.ts +13 -0
  551. package/src/events/definitions.ts +0 -17
  552. package/src/events/execution.ts +15 -16
  553. package/src/events/index.ts +0 -14
  554. package/src/events/scope.ts +0 -12
  555. package/src/events/selectors/builder.ts +0 -51
  556. package/src/events/selectors/index.ts +0 -6
  557. package/src/events/selectors/predicate.ts +0 -2
  558. package/src/events/selectors/types.ts +7 -65
  559. package/src/events/types/index.ts +0 -11
  560. package/src/events/types/objects.ts +5 -0
  561. package/src/execution/agent.ts +27 -0
  562. package/src/execution/authorization.ts +1 -0
  563. package/src/execution/authorized-object-reader.ts +96 -34
  564. package/src/execution/scopes.ts +2 -6
  565. package/src/http/api-routes.ts +4 -3
  566. package/src/index.ts +28 -21
  567. package/src/materialization/model.ts +26 -9
  568. package/src/materializer/README.md +6 -1
  569. package/src/materializer/edits/commit.ts +42 -32
  570. package/src/materializer/shared/normalize.ts +25 -14
  571. package/src/models/catalog.ts +26 -2
  572. package/src/models/execution/README.md +4 -3
  573. package/src/models/execution/binding.ts +6 -0
  574. package/src/models/execution/model-call-recorder.ts +10 -0
  575. package/src/models/execution/session.ts +2 -2
  576. package/src/models/execution.ts +6 -2
  577. package/src/models/language-model.ts +6 -0
  578. package/src/objects/action/errors.ts +0 -12
  579. package/src/objects/action/index.ts +3 -3
  580. package/src/objects/action/request.ts +2 -29
  581. package/src/objects/context/index.ts +1 -0
  582. package/src/objects/context/types.ts +7 -0
  583. package/src/objects/execution.ts +6 -3
  584. package/src/objects/materializer-adapter.ts +3 -0
  585. package/src/objects/object/upsert-batch.ts +4 -1
  586. package/src/objects/object/upsert.ts +3 -1
  587. package/src/objects/property-clearance.ts +209 -0
  588. package/src/objects/query/executor.ts +43 -36
  589. package/src/objects/query/validate.ts +133 -14
  590. package/src/objects/sdk/file-handle.ts +77 -0
  591. package/src/objects/sdk/object-handle.ts +11 -33
  592. package/src/objects/sdk/object-set.ts +10 -32
  593. package/src/objects/service/index.ts +0 -1
  594. package/src/ontology/builders.ts +18 -2
  595. package/src/ontology/docs-markdown.ts +394 -0
  596. package/src/ontology/docs.ts +196 -0
  597. package/src/ontology/inference/index.ts +25 -0
  598. package/src/ontology/internal.ts +7 -0
  599. package/src/ontology/tokens.ts +13 -2
  600. package/src/ontology/types.ts +5 -0
  601. package/src/ontology/validation/index.ts +1 -0
  602. package/src/ontology/validation/schema.ts +26 -1
  603. package/src/queues/in-memory.ts +0 -6
  604. package/src/queues/index.ts +0 -2
  605. package/src/queues/types.ts +0 -11
  606. package/src/runtime/create.ts +34 -4
  607. package/src/runtime/definitions.ts +3 -1
  608. package/src/runtime/host.ts +50 -1
  609. package/src/runtime/index.ts +3 -0
  610. package/src/runtime/locale.ts +26 -0
  611. package/src/runtime/resolve-definitions.ts +28 -2
  612. package/src/runtime/sixb.ts +1 -1
  613. package/src/runtime/types.ts +55 -48
  614. package/src/scheduler/runtime.ts +11 -2
  615. package/src/schedules/builders.ts +1 -4
  616. package/src/schedules/runtime.ts +0 -41
  617. package/src/schedules/validation.ts +2 -16
  618. package/src/security/builders.ts +49 -5
  619. package/src/security/every.ts +1 -1
  620. package/src/security/index.ts +6 -1
  621. package/src/security/markings.ts +313 -0
  622. package/src/security/redactions.ts +6 -0
  623. package/src/security/registry.ts +21 -1
  624. package/src/security/types.ts +26 -0
  625. package/src/security/validation.ts +59 -2
  626. package/src/storage/action-runs/idempotency.ts +13 -41
  627. package/src/storage/action-runs/in-memory.ts +20 -311
  628. package/src/storage/action-runs/index.ts +1 -16
  629. package/src/storage/action-runs/record.ts +130 -0
  630. package/src/storage/action-runs/types.ts +37 -92
  631. package/src/storage/agents/provider.ts +11 -0
  632. package/src/storage/agents/types.ts +15 -7
  633. package/src/storage/index.ts +2 -9
  634. package/src/storage/internal.ts +1 -7
  635. package/src/storage/objects/execution-limits.ts +3 -2
  636. package/src/storage/objects/types.ts +7 -0
  637. package/src/storage/types.ts +2 -4
  638. package/src/testing/action-execution.ts +73 -13
  639. package/src/testing/action-run-storage-contract.ts +335 -0
  640. package/src/testing/index.ts +8 -1
  641. package/src/testing/materializer-storage-contract.ts +174 -18
  642. package/src/testing/queues-contract.ts +0 -18
  643. package/src/workflows/builders.ts +24 -1
  644. package/src/workflows/request.ts +3 -0
  645. package/src/workflows/types.ts +6 -3
  646. package/src/workflows/validation.ts +32 -4
  647. package/dist/actions/run-dispatch.d.ts +0 -25
  648. package/dist/actions/run-dispatch.d.ts.map +0 -1
  649. package/dist/actions/worker.d.ts +0 -3
  650. package/dist/actions/worker.d.ts.map +0 -1
  651. package/dist/actions/worker.js +0 -321
  652. package/dist/actions/worker.js.map +0 -11
  653. package/dist/chunk-10styjgk.js +0 -1572
  654. package/dist/chunk-10styjgk.js.map +0 -20
  655. package/dist/chunk-1hqwggsn.js.map +0 -12
  656. package/dist/chunk-52c5zb0z.js +0 -81
  657. package/dist/chunk-52c5zb0z.js.map +0 -10
  658. package/dist/chunk-69266efg.js.map +0 -12
  659. package/dist/chunk-6wbm6ymz.js +0 -4399
  660. package/dist/chunk-6wbm6ymz.js.map +0 -48
  661. package/dist/chunk-85cd7e8c.js +0 -51
  662. package/dist/chunk-85cd7e8c.js.map +0 -10
  663. package/dist/chunk-91kcnbf0.js.map +0 -10
  664. package/dist/chunk-98cw09sw.js.map +0 -10
  665. package/dist/chunk-9g6jz9kk.js +0 -592
  666. package/dist/chunk-9g6jz9kk.js.map +0 -15
  667. package/dist/chunk-9vx5e9g1.js.map +0 -11
  668. package/dist/chunk-aq39q04r.js.map +0 -15
  669. package/dist/chunk-cd234ba4.js.map +0 -14
  670. package/dist/chunk-cnb5kv05.js.map +0 -19
  671. package/dist/chunk-dfm066qg.js.map +0 -11
  672. package/dist/chunk-dmn70ztd.js.map +0 -11
  673. package/dist/chunk-fc5zfxy1.js.map +0 -11
  674. package/dist/chunk-gf7yht60.js.map +0 -12
  675. package/dist/chunk-h3v76ams.js.map +0 -11
  676. package/dist/chunk-pja9jfz6.js.map +0 -19
  677. package/dist/chunk-r2y23egw.js.map +0 -10
  678. package/dist/chunk-t9shqx3w.js.map +0 -12
  679. package/dist/chunk-tjjgy3z4.js +0 -1277
  680. package/dist/chunk-tjjgy3z4.js.map +0 -35
  681. package/dist/chunk-xcy5ddha.js.map +0 -15
  682. package/dist/chunk-xyvy73tj.js.map +0 -12
  683. package/dist/chunk-y2aq6ag9.js.map +0 -11
  684. package/dist/chunk-z5rnrmz1.js.map +0 -11
  685. package/dist/chunk-zvx7h87b.js +0 -12
  686. package/dist/chunk-zvx7h87b.js.map +0 -10
  687. package/dist/events/types/actions.d.ts +0 -39
  688. package/dist/events/types/actions.d.ts.map +0 -1
  689. package/dist/objects/service/action-service.d.ts +0 -13
  690. package/dist/objects/service/action-service.d.ts.map +0 -1
  691. package/src/actions/run-dispatch.ts +0 -282
  692. package/src/actions/worker.ts +0 -2
  693. package/src/events/types/actions.ts +0 -42
  694. package/src/objects/service/action-service.ts +0 -43
  695. /package/dist/{chunk-jjrn5v0p.js.map → chunk-1k89ecfr.js.map} +0 -0
  696. /package/dist/{chunk-vre348sb.js.map → chunk-52bk93x8.js.map} +0 -0
  697. /package/dist/{chunk-4gmng3vf.js.map → chunk-5e43w60z.js.map} +0 -0
  698. /package/dist/{chunk-33saed7g.js.map → chunk-7kg3k1m9.js.map} +0 -0
  699. /package/dist/{chunk-kkqwzy6h.js.map → chunk-7t429e3f.js.map} +0 -0
  700. /package/dist/{chunk-2am3db31.js.map → chunk-9gyp8hg1.js.map} +0 -0
  701. /package/dist/{chunk-4wn7bxxa.js.map → chunk-9ybhtmg4.js.map} +0 -0
  702. /package/dist/{chunk-rb143ggb.js.map → chunk-bwjcehza.js.map} +0 -0
  703. /package/dist/{chunk-5thzcb8g.js.map → chunk-c85m1hyj.js.map} +0 -0
  704. /package/dist/{chunk-e67ynxcr.js.map → chunk-d2ync1v3.js.map} +0 -0
  705. /package/dist/{chunk-3rrezgyc.js.map → chunk-dnmadg9k.js.map} +0 -0
  706. /package/dist/{chunk-vjcd8d27.js.map → chunk-fa02jy15.js.map} +0 -0
  707. /package/dist/{chunk-vp3z1ckh.js.map → chunk-kyzq4wy9.js.map} +0 -0
  708. /package/dist/{chunk-c2rga5cx.js.map → chunk-mfs23znk.js.map} +0 -0
  709. /package/dist/{chunk-a7er86jd.js.map → chunk-nre82s12.js.map} +0 -0
  710. /package/dist/{chunk-f1xh7a32.js.map → chunk-q1vkr2ys.js.map} +0 -0
  711. /package/dist/{chunk-23xs4qp9.js.map → chunk-rhg02hxq.js.map} +0 -0
  712. /package/dist/{chunk-k4g51s47.js.map → chunk-t6vq7bff.js.map} +0 -0
  713. /package/dist/{chunk-sk0hcjsz.js.map → chunk-tjb1mk5t.js.map} +0 -0
  714. /package/dist/{chunk-rx7h5fdx.js.map → chunk-v9xd5wzd.js.map} +0 -0
  715. /package/dist/{chunk-2vhg6ysa.js.map → chunk-vyf9kfqf.js.map} +0 -0
@@ -1,11 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/storage/action-runs/types.ts", "../src/storage/action-runs/failure.ts"],
4
- "sourcesContent": [
5
- "import type { ActionSubject } from \"../../actions\"\nimport type { SixbErrorCode, SixbFailure } from \"../../errors/types\"\nimport type { JsonValue } from \"../../json\"\n\nexport type ActionRunStatus = \"queued\" | \"running\" | \"succeeded\" | \"failed\" | \"cancelled\"\n\nexport const ACTION_RUN_PHASES = [\n \"request\",\n \"enqueue\",\n \"validation\",\n \"writeback\",\n \"edits\",\n \"commit\",\n \"effects\",\n \"cancelled\",\n] as const\n\nexport type ActionRunPhase = (typeof ACTION_RUN_PHASES)[number]\n\nexport type ActionRunParams = Readonly<Record<string, JsonValue>>\n\nexport type ActionRunPhaseStatus = \"succeeded\" | \"failed\"\n\n/** Error codes an action run or phase record can persist and expose. */\nexport const ACTION_RUN_FAILURE_CODES = [\n \"internal.unexpected\",\n \"runtime.cancelled\",\n \"queue.enqueue_failed\",\n \"action.phase_failed\",\n \"action.read_conflict\",\n] as const satisfies readonly [SixbErrorCode, ...SixbErrorCode[]]\n\nexport type ActionRunFailureCode = (typeof ACTION_RUN_FAILURE_CODES)[number]\n\nexport interface ActionRunFailureDetails<TPhase extends ActionRunPhase = ActionRunPhase> {\n readonly actionId: string\n readonly runId: string\n readonly phase: TPhase\n}\n\n/** Portable failure record with Action's required correlation details. */\nexport interface ActionRunFailure<TPhase extends ActionRunPhase = ActionRunPhase>\n extends Omit<SixbFailure<ActionRunFailureCode>, \"details\"> {\n readonly details: ActionRunFailureDetails<TPhase>\n}\n\nexport type ActionRunWritebackRecord =\n | {\n readonly status: \"succeeded\"\n readonly completedAt: Date\n readonly result: JsonValue\n readonly error?: never\n }\n | {\n readonly status: \"failed\"\n readonly completedAt: Date\n readonly result?: never\n readonly error: ActionRunFailure<\"writeback\">\n }\n\nexport type ActionRunEffectsRecord =\n | {\n readonly status: \"succeeded\"\n readonly completedAt: Date\n readonly error?: never\n }\n | {\n readonly status: \"failed\"\n readonly completedAt: Date\n readonly error: ActionRunFailure<\"effects\">\n }\n\nexport interface ActionRunRecord {\n readonly id: string\n readonly projectId: string\n readonly executionId: string\n readonly actionId: string\n readonly subject: ActionSubject\n readonly status: ActionRunStatus\n readonly phase?: ActionRunPhase\n readonly queuedAt: Date\n readonly startedAt?: Date\n readonly finishedAt?: Date\n readonly params: ActionRunParams\n readonly idempotencyKey: string\n readonly writeback?: ActionRunWritebackRecord\n readonly effects?: ActionRunEffectsRecord\n readonly error?: ActionRunFailure\n}\n\nexport interface QueueActionRunInput {\n readonly id: string\n readonly projectId: string\n readonly executionId: string\n readonly actionId: string\n readonly subject: ActionSubject\n readonly params: ActionRunParams\n readonly idempotencyKey: string\n readonly queuedAt?: Date\n}\n\nexport interface StartActionRunInput {\n readonly id: string\n readonly projectId: string\n readonly startedAt?: Date\n readonly phase?: Extract<ActionRunPhase, \"validation\">\n}\n\nexport interface EnterActionRunPhaseInput {\n readonly id: string\n readonly projectId: string\n readonly phase: Extract<\n ActionRunPhase,\n \"validation\" | \"writeback\" | \"edits\" | \"commit\" | \"effects\"\n >\n}\n\nexport type RecordActionWritebackInput =\n | {\n readonly id: string\n readonly projectId: string\n readonly status: \"succeeded\"\n readonly completedAt?: Date\n readonly result: JsonValue\n }\n | {\n readonly id: string\n readonly projectId: string\n readonly status: \"failed\"\n readonly completedAt?: Date\n readonly error: ActionRunFailure<\"writeback\">\n }\n\nexport type RecordActionEffectsInput =\n | {\n readonly id: string\n readonly projectId: string\n readonly status: \"succeeded\"\n readonly completedAt?: Date\n }\n | {\n readonly id: string\n readonly projectId: string\n readonly status: \"failed\"\n readonly completedAt?: Date\n readonly error: ActionRunFailure<\"effects\">\n }\n\nexport type FinishActionRunInput =\n | {\n readonly id: string\n readonly projectId: string\n readonly status: \"succeeded\"\n readonly finishedAt?: Date\n readonly phase?: ActionRunPhase\n }\n | {\n readonly id: string\n readonly projectId: string\n readonly status: \"failed\" | \"cancelled\"\n readonly finishedAt?: Date\n readonly error: ActionRunFailure\n }\n\nexport interface ListActionRunsInput {\n readonly projectId: string\n readonly actionId?: string\n readonly actionIds?: readonly string[]\n readonly subject?: ActionSubject\n readonly objectTypeId?: string\n readonly objectTypeIds?: readonly string[]\n readonly primaryId?: string\n readonly statuses?: readonly ActionRunStatus[]\n readonly startedAfter?: Date\n readonly startedBefore?: Date\n readonly limit?: number\n readonly offset?: number\n readonly order?: \"asc\" | \"desc\"\n}\n\nexport interface ListActionRunsResult {\n readonly runs: readonly ActionRunRecord[]\n readonly hasMore: boolean\n readonly total: number\n}\n\nexport interface LockActionMaterializationRunInput {\n readonly projectId: string\n readonly actionId: string\n readonly runId: string\n}\n\nexport interface ActionRunStorage {\n /** Transactional fence for Action identity and running state before a new ontology commit. */\n lockForMaterialization(input: LockActionMaterializationRunInput): Promise<ActionRunRecord>\n queue(input: QueueActionRunInput): Promise<ActionRunRecord>\n start(input: StartActionRunInput): Promise<ActionRunRecord>\n enterPhase(input: EnterActionRunPhaseInput): Promise<ActionRunRecord>\n recordWriteback(input: RecordActionWritebackInput): Promise<ActionRunRecord>\n recordEffects(input: RecordActionEffectsInput): Promise<ActionRunRecord>\n finish(input: FinishActionRunInput): Promise<ActionRunRecord>\n getById(params: { projectId: string; id: string }): Promise<ActionRunRecord | null>\n list(input: ListActionRunsInput): Promise<ListActionRunsResult>\n}\n",
6
- "import { parseSixbFailure } from \"../../errors/internal\"\nimport { isPlainRecord } from \"../../json\"\nimport {\n ACTION_RUN_FAILURE_CODES,\n ACTION_RUN_PHASES,\n type ActionRunFailure,\n type ActionRunFailureDetails,\n type ActionRunPhase,\n} from \"./types\"\n\n/** Serializes the canonical failure plus Action's typed lifecycle extension. */\nexport function serializeActionRunFailure<TPhase extends ActionRunPhase>(\n failure: ActionRunFailure<TPhase>,\n expectedPhase?: TPhase\n): string {\n const parsed =\n expectedPhase === undefined\n ? parseActionRunFailure(failure)\n : parseActionRunFailure(failure, expectedPhase)\n return JSON.stringify(parsed)\n}\n\n/** Validates and detaches an Action failure read from a storage boundary. */\nexport function parseActionRunFailure<TPhase extends ActionRunPhase>(\n value: unknown,\n expectedPhase: TPhase\n): ActionRunFailure<TPhase>\nexport function parseActionRunFailure(value: unknown): ActionRunFailure\nexport function parseActionRunFailure(\n value: unknown,\n expectedPhase?: ActionRunPhase\n): ActionRunFailure {\n const candidate = parseStoredActionRunFailureValue(value)\n const failure = parseSixbFailure(candidate, ACTION_RUN_FAILURE_CODES)\n const details = failure.details\n if (\n !isPlainRecord(details) ||\n typeof details.actionId !== \"string\" ||\n typeof details.runId !== \"string\" ||\n typeof details.phase !== \"string\" ||\n !(ACTION_RUN_PHASES as readonly string[]).includes(details.phase)\n ) {\n throw new Error(\n \"[Sixb] Stored failure is invalid: Action details must contain actionId, runId, and a known phase.\"\n )\n }\n if (expectedPhase !== undefined && details.phase !== expectedPhase) {\n throw new Error(`[Sixb] Stored Action ${expectedPhase} failure has phase '${details.phase}'.`)\n }\n\n return {\n ...failure,\n details: details as unknown as ActionRunFailureDetails,\n }\n}\n\nfunction parseStoredActionRunFailureValue(value: unknown): unknown {\n if (typeof value !== \"string\") return value\n try {\n return JSON.parse(value) as unknown\n } catch {\n throw new Error(\"[Sixb] Stored failure is invalid: value is not valid JSON.\")\n }\n}\n"
7
- ],
8
- "mappings": ";;;;;;;;;AAMO,IAAM,qBAAoB;AAAA,EAC/B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AASO,IAAM,4BAA2B;AAAA,EACtC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;;;ACnBO,SAAS,0BAAwD,CACtE,SACA,eACQ;AAAA,EACR,MAAM,SACJ,kBAAkB,YACd,uBAAsB,OAAO,IAC7B,uBAAsB,SAAS,aAAa;AAAA,EAClD,OAAO,KAAK,UAAU,MAAM;AAAA;AASvB,SAAS,sBAAqB,CACnC,OACA,eACkB;AAAA,EAClB,MAAM,YAAY,iCAAiC,KAAK;AAAA,EACxD,MAAM,UAAU,kBAAiB,WAAW,yBAAwB;AAAA,EACpE,MAAM,UAAU,QAAQ;AAAA,EACxB,IACE,CAAC,cAAc,OAAO,KACtB,OAAO,QAAQ,aAAa,YAC5B,OAAO,QAAQ,UAAU,YACzB,OAAO,QAAQ,UAAU,YACzB,CAAE,mBAAwC,SAAS,QAAQ,KAAK,GAChE;AAAA,IACA,MAAM,IAAI,MACR,mGACF;AAAA,EACF;AAAA,EACA,IAAI,kBAAkB,aAAa,QAAQ,UAAU,eAAe;AAAA,IAClE,MAAM,IAAI,MAAM,wBAAwB,oCAAoC,QAAQ,SAAS;AAAA,EAC/F;AAAA,EAEA,OAAO;AAAA,OACF;AAAA,IACH;AAAA,EACF;AAAA;AAGF,SAAS,gCAAgC,CAAC,OAAyB;AAAA,EACjE,IAAI,OAAO,UAAU;AAAA,IAAU,OAAO;AAAA,EACtC,IAAI;AAAA,IACF,OAAO,KAAK,MAAM,KAAK;AAAA,IACvB,MAAM;AAAA,IACN,MAAM,IAAI,MAAM,4DAA4D;AAAA;AAAA;",
9
- "debugId": "4C1D77261542AF7164756E2164756E21",
10
- "names": []
11
- }
@@ -1,11 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/scheduler/errors.ts", "../src/scheduler/runtime.ts"],
4
- "sourcesContent": [
5
- "export class SchedulerError extends Error {\n readonly name = \"SchedulerError\"\n}\n\nexport class SchedulerValidationError extends Error {\n readonly name = \"SchedulerValidationError\"\n}\n",
6
- "import type { DomainEventLog } from \"../events\"\nimport { nextCronOccurrence } from \"../schedules/next-occurrence\"\nimport type { CronScheduleDefinition, ScheduleDefinition } from \"../schedules/types\"\nimport { SchedulerValidationError } from \"./errors\"\n\n/** Matches the `onError` flush budget: long enough for a healthy broker, short enough to shut down. */\nconst DEFAULT_EMIT_DRAIN_TIMEOUT_MS = 5_000\n\n/**\n * Largest delay `setTimeout` accepts before it overflows its 32-bit counter.\n *\n * Node coerces anything larger to `1`, so an unclamped monthly or yearly occurrence would fire\n * immediately, find nothing due, and re-arm on the next tick -- spinning the event loop and\n * emitting a `TimeoutOverflowWarning` for every re-arm until the occurrence came into range.\n */\nconst MAX_TIMER_DELAY_MS = 2_147_483_647\n\nexport interface SchedulerRuntimeOptions {\n schedules: readonly ScheduleDefinition[]\n events: DomainEventLog\n now?: () => Date\n}\n\n/** Process lifecycle surface exposed by SixbHost. */\nexport interface SchedulerController {\n start(): Promise<void>\n stop(): Promise<void>\n}\n\nexport class SchedulerRuntime implements SchedulerController {\n private readonly schedules: readonly CronScheduleDefinition[]\n private readonly events: DomainEventLog\n private readonly now: () => Date\n private started = false\n private timer: ReturnType<typeof setTimeout> | null = null\n private readonly nextOccurrences = new Map<string, Date>()\n private readonly pendingEmits = new Set<Promise<void>>()\n\n constructor(options: SchedulerRuntimeOptions) {\n this.schedules = options.schedules.filter(isCronSchedule)\n this.events = options.events\n this.now = options.now ?? (() => new Date())\n }\n\n async start(): Promise<void> {\n if (this.started) return\n\n const seenIds = new Set<string>()\n for (const schedule of this.schedules) {\n if (seenIds.has(schedule.id)) {\n throw new SchedulerValidationError(`Duplicate schedule id '${schedule.id}'.`)\n }\n seenIds.add(schedule.id)\n }\n\n const now = this.now()\n for (const schedule of this.schedules) {\n // Syntactically valid expressions can still have no reachable occurrence -- `0 0 30 2 *`\n // parses but never matches. `tick()` already tolerates that per schedule; start-up must\n // agree, or one unschedulable expression stops every other schedule in the project and\n // crash-loops the scheduler role.\n try {\n const next = nextCronOccurrence(schedule.trigger.expression, now, schedule.trigger.timezone)\n this.nextOccurrences.set(schedule.id, next)\n } catch (error) {\n console.error(\n `[Sixb] Scheduler failed to compute next occurrence for '${schedule.id}':`,\n error\n )\n }\n }\n\n this.armTimer()\n this.started = true\n }\n\n async stop(): Promise<void> {\n if (this.timer !== null) {\n clearTimeout(this.timer)\n this.timer = null\n }\n this.nextOccurrences.clear()\n this.started = false\n await this.drainEmits()\n }\n\n /**\n * Wait for in-flight `schedule.triggered` emits so shutdown does not return mid-delivery.\n *\n * Bounded on purpose. `emit` never rejects, so an emit that never *settles* — a broker that accepts\n * the call and then hangs — would make `stop()` wait forever, turning a provider stall into a\n * process that cannot shut down. Losing the wait is recoverable; losing shutdown is not.\n */\n private async drainEmits(timeoutMs = DEFAULT_EMIT_DRAIN_TIMEOUT_MS): Promise<void> {\n if (this.pendingEmits.size === 0) return\n\n let timer: ReturnType<typeof setTimeout> | undefined\n try {\n const drained = await Promise.race([\n Promise.all([...this.pendingEmits]).then(() => true),\n new Promise<false>((resolve) => {\n timer = setTimeout(() => resolve(false), timeoutMs)\n }),\n ])\n if (!drained) {\n console.error(\n `[Sixb] Timed out after ${timeoutMs}ms waiting for ${this.pendingEmits.size} schedule emit(s) to settle.`\n )\n }\n } finally {\n if (timer) clearTimeout(timer)\n }\n }\n\n private armTimer(): void {\n if (this.timer !== null) {\n clearTimeout(this.timer)\n this.timer = null\n }\n\n let earliest: Date | null = null\n for (const date of this.nextOccurrences.values()) {\n if (earliest === null || date.getTime() < earliest.getTime()) {\n earliest = date\n }\n }\n\n if (earliest === null) return\n\n // Waking early is harmless: `tick()` re-arms from the same occurrence map, so a clamped delay\n // just becomes several sleeps instead of one.\n const delayMs = Math.min(\n Math.max(0, earliest.getTime() - this.now().getTime()),\n MAX_TIMER_DELAY_MS\n )\n this.timer = setTimeout(() => this.tick(), delayMs)\n }\n\n private tick(): void {\n const now = this.now()\n\n // Collect all due schedules\n const dueSchedules: Array<{ schedule: CronScheduleDefinition; occurrenceAt: Date }> = []\n for (const schedule of this.schedules) {\n const occurrence = this.nextOccurrences.get(schedule.id)\n if (occurrence && occurrence.getTime() <= now.getTime()) {\n dueSchedules.push({ schedule, occurrenceAt: occurrence })\n }\n }\n\n // Emit events and recalculate next occurrences\n for (const { schedule, occurrenceAt } of dueSchedules) {\n const occurrenceAtIso = occurrenceAt.toISOString()\n // `emit` reports instead of rejecting, so nothing is swallowed here. The previous\n // `void this.events.append(...)` inside a `try` could not observe a rejection at all: a broker\n // outage meant the schedule silently never fired.\n this.track(\n this.events.emit(\n {\n events: [\n {\n type: \"schedule.triggered\",\n payload: {\n scheduleId: schedule.id,\n occurrenceAt: occurrenceAtIso,\n triggeredAt: now.toISOString(),\n occurrenceKey: `${schedule.id}:${occurrenceAtIso}`,\n },\n },\n ],\n },\n { source: \"Sixb\" }\n )\n )\n\n // Calculate next from the logical occurrence time (not now) to avoid drift\n try {\n const next = nextCronOccurrence(\n schedule.trigger.expression,\n occurrenceAt,\n schedule.trigger.timezone\n )\n this.nextOccurrences.set(schedule.id, next)\n } catch (error) {\n console.error(\n `[Sixb] Scheduler failed to compute next occurrence for '${schedule.id}':`,\n error\n )\n this.nextOccurrences.delete(schedule.id)\n }\n }\n\n this.armTimer()\n }\n\n /** Keep in-flight emits awaitable so `stop()` does not return mid-delivery. */\n private track(emit: Promise<void>): void {\n const tracked = emit.finally(() => this.pendingEmits.delete(tracked))\n this.pendingEmits.add(tracked)\n }\n}\n\nfunction isCronSchedule(schedule: ScheduleDefinition): schedule is CronScheduleDefinition {\n return schedule.trigger.type === \"cron\"\n}\n"
7
- ],
8
- "mappings": "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",
9
- "debugId": "70376D7DF936561764756E2164756E21",
10
- "names": []
11
- }
@@ -1,12 +0,0 @@
1
- // @bun
2
- // src/edits/errors.ts
3
- class EditBatchError2 extends Error {
4
- constructor(message) {
5
- super(message);
6
- this.name = "EditBatchError";
7
- }
8
- }
9
-
10
- export { EditBatchError2 };
11
-
12
- //# debugId=EB0A82B55DCF58C664756E2164756E21
@@ -1,10 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/edits/errors.ts"],
4
- "sourcesContent": [
5
- "export class EditBatchError extends Error {\n constructor(message: string) {\n super(message)\n this.name = \"EditBatchError\"\n }\n}\n"
6
- ],
7
- "mappings": ";;AAAO,MAAM,wBAAuB,MAAM;AAAA,EACxC,WAAW,CAAC,SAAiB;AAAA,IAC3B,MAAM,OAAO;AAAA,IACb,KAAK,OAAO;AAAA;AAEhB;",
8
- "debugId": "EB0A82B55DCF58C664756E2164756E21",
9
- "names": []
10
- }
@@ -1,39 +0,0 @@
1
- import type { ActionSubject } from "../../actions";
2
- import type { ActionRunFailure } from "../../storage";
3
- import type { EventEnvelope } from "../envelope";
4
- export interface ActionRequestedEvent extends EventEnvelope {
5
- type: "action.requested";
6
- topic: "actions";
7
- partitionKey: string;
8
- payload: {
9
- actionId: string;
10
- subject: ActionSubject;
11
- params: Record<string, unknown>;
12
- runId: string;
13
- };
14
- }
15
- export interface ActionCompletedEvent extends EventEnvelope {
16
- type: "action.completed";
17
- topic: "actions";
18
- partitionKey: string;
19
- payload: {
20
- actionId: string;
21
- runId: string;
22
- subject: ActionSubject;
23
- finishedAt: string;
24
- };
25
- }
26
- export interface ActionFailedEvent extends EventEnvelope {
27
- type: "action.failed";
28
- topic: "actions";
29
- partitionKey: string;
30
- payload: {
31
- actionId: string;
32
- runId: string;
33
- subject: ActionSubject;
34
- error: ActionRunFailure;
35
- finishedAt: string;
36
- };
37
- }
38
- export type ActionEvent = ActionRequestedEvent | ActionCompletedEvent | ActionFailedEvent;
39
- //# sourceMappingURL=actions.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../../src/events/types/actions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAClD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAEhD,MAAM,WAAW,oBAAqB,SAAQ,aAAa;IACzD,IAAI,EAAE,kBAAkB,CAAA;IACxB,KAAK,EAAE,SAAS,CAAA;IAChB,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE;QACP,QAAQ,EAAE,MAAM,CAAA;QAChB,OAAO,EAAE,aAAa,CAAA;QACtB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAC/B,KAAK,EAAE,MAAM,CAAA;KACd,CAAA;CACF;AAED,MAAM,WAAW,oBAAqB,SAAQ,aAAa;IACzD,IAAI,EAAE,kBAAkB,CAAA;IACxB,KAAK,EAAE,SAAS,CAAA;IAChB,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE;QACP,QAAQ,EAAE,MAAM,CAAA;QAChB,KAAK,EAAE,MAAM,CAAA;QACb,OAAO,EAAE,aAAa,CAAA;QACtB,UAAU,EAAE,MAAM,CAAA;KACnB,CAAA;CACF;AAED,MAAM,WAAW,iBAAkB,SAAQ,aAAa;IACtD,IAAI,EAAE,eAAe,CAAA;IACrB,KAAK,EAAE,SAAS,CAAA;IAChB,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE;QACP,QAAQ,EAAE,MAAM,CAAA;QAChB,KAAK,EAAE,MAAM,CAAA;QACb,OAAO,EAAE,aAAa,CAAA;QACtB,KAAK,EAAE,gBAAgB,CAAA;QACvB,UAAU,EAAE,MAAM,CAAA;KACnB,CAAA;CACF;AAED,MAAM,MAAM,WAAW,GAAG,oBAAoB,GAAG,oBAAoB,GAAG,iBAAiB,CAAA"}
@@ -1,13 +0,0 @@
1
- /**
2
- * Service layer for action operations.
3
- *
4
- * Resolves objectTypeId to a typed context and delegates to the leaf function.
5
- */
6
- import type { RequestActionResult } from "../../actions/request";
7
- import type { ExecutionContext } from "../../execution";
8
- import type { SixbRuntimeContext } from "../../runtime/types";
9
- import type { ActionRunRecord } from "../../storage";
10
- import { type RequestActionAndWaitOptions, type RequestActionOptions } from "../action";
11
- export declare function requestAction(runtime: SixbRuntimeContext, execution: ExecutionContext, objectTypeId: string, primaryId: string, actionId: string, params?: Record<string, unknown>, options?: RequestActionOptions): Promise<RequestActionResult>;
12
- export declare function requestActionAndWait(runtime: SixbRuntimeContext, execution: ExecutionContext, objectTypeId: string, primaryId: string, actionId: string, params?: Record<string, unknown>, options?: RequestActionAndWaitOptions): Promise<ActionRunRecord>;
13
- //# sourceMappingURL=action-service.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"action-service.d.ts","sourceRoot":"","sources":["../../../src/objects/service/action-service.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAChE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AACvD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AACpD,OAAO,EACL,KAAK,2BAA2B,EAChC,KAAK,oBAAoB,EAG1B,MAAM,WAAW,CAAA;AAGlB,wBAAsB,aAAa,CACjC,OAAO,EAAE,kBAAkB,EAC3B,SAAS,EAAE,gBAAgB,EAC3B,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,OAAO,CAAC,EAAE,oBAAoB,GAC7B,OAAO,CAAC,mBAAmB,CAAC,CAG9B;AAED,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,kBAAkB,EAC3B,SAAS,EAAE,gBAAgB,EAC3B,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,OAAO,CAAC,EAAE,2BAA2B,GACpC,OAAO,CAAC,eAAe,CAAC,CAG1B"}
@@ -1,282 +0,0 @@
1
- import { randomUUID } from "node:crypto"
2
- import { reportRunFailure } from "../error-reporting/capability"
3
- import { createSixbError, toSixbFailure } from "../errors/internal"
4
- import type { DomainEventLog } from "../events"
5
- import type { Queues } from "../queues"
6
- import type {
7
- ActionRunFailure,
8
- ActionRunParams,
9
- ActionRunRecord,
10
- CreateExecutionInput,
11
- Storage,
12
- } from "../storage"
13
- import { ACTION_RUN_FAILURE_CODES, ActionRunError } from "../storage"
14
- import { parseActionRunFailure } from "../storage/action-runs/failure"
15
- import { actionRunParamsEqual, actionSubjectsEqual } from "../storage/action-runs/idempotency"
16
- import type { RequestActionResult } from "./request"
17
- import { createActionRunId, createActionRunIdempotencyKey } from "./run-id"
18
- import type { ActionSubject } from "./types"
19
-
20
- interface DispatchActionRunInput {
21
- readonly errorReporterHost: object
22
- readonly projectId: string
23
- readonly storage: Storage
24
- readonly queue: Queues["actions"]
25
- readonly events: DomainEventLog
26
- readonly actionId: string
27
- readonly subject: ActionSubject
28
- readonly params: ActionRunParams
29
- readonly runId?: string
30
- readonly createExecution: (executionId: string, runId: string) => Promise<CreateExecutionInput>
31
- /** Runs before payload comparison or retry so an existing run cannot cross authority owners. */
32
- readonly assertCanReuseExisting?: (storage: Storage, run: ActionRunRecord) => void | Promise<void>
33
- /** Checks that hold only for a run this call creates; a replayed run keeps its accepted params. */
34
- readonly assertNewRun?: () => Promise<void>
35
- }
36
-
37
- interface PreparedActionRun {
38
- readonly runId: string
39
- readonly idempotencyKey: string
40
- }
41
-
42
- type PersistedActionRun =
43
- | { readonly publish: false; readonly run: ActionRunRecord }
44
- | {
45
- readonly publish: true
46
- readonly run: ActionRunRecord
47
- readonly execution: CreateExecutionInput
48
- readonly queuedAt: Date
49
- readonly created: boolean
50
- }
51
-
52
- /** Persist an Action execution and run before publishing its queue job. */
53
- export async function dispatchActionRun(
54
- input: DispatchActionRunInput
55
- ): Promise<RequestActionResult> {
56
- const request = prepareActionRun(input)
57
- const persisted = await persistActionRun(input, request)
58
- if (!persisted.publish) return existingActionRunResult(persisted.run)
59
- return publishActionRun(input, persisted)
60
- }
61
-
62
- function prepareActionRun(input: DispatchActionRunInput): PreparedActionRun {
63
- const runId = createActionRunId(input.runId)
64
- return {
65
- runId,
66
- idempotencyKey: createActionRunIdempotencyKey(input.projectId, runId),
67
- }
68
- }
69
-
70
- async function persistActionRun(
71
- input: DispatchActionRunInput,
72
- request: PreparedActionRun
73
- ): Promise<PersistedActionRun> {
74
- const actionRuns = requireActionRunStorage(input.storage)
75
- const existing = await actionRuns.getById({ projectId: input.projectId, id: request.runId })
76
- if (existing) {
77
- await input.assertCanReuseExisting?.(input.storage, existing)
78
- return reuseActionRun(input, existing)
79
- }
80
-
81
- await input.assertNewRun?.()
82
- const execution = await input.createExecution(`exec_${randomUUID()}`, request.runId)
83
- const queuedAt = new Date()
84
- try {
85
- return await input.storage.transaction(
86
- async (tx): Promise<PersistedActionRun> => {
87
- const transactionalRuns = requireActionRunStorage(tx)
88
- const raced = await transactionalRuns.getById({
89
- projectId: input.projectId,
90
- id: request.runId,
91
- })
92
- if (raced) {
93
- await input.assertCanReuseExisting?.(tx, raced)
94
- assertExistingRunMatchesRequest(raced, input)
95
- return { publish: false, run: raced }
96
- }
97
-
98
- await tx.executions.create(execution)
99
- const run = await transactionalRuns.queue({
100
- projectId: input.projectId,
101
- id: request.runId,
102
- executionId: execution.id,
103
- actionId: input.actionId,
104
- subject: input.subject,
105
- params: input.params,
106
- idempotencyKey: request.idempotencyKey,
107
- queuedAt,
108
- })
109
- return { publish: true, run, execution, queuedAt, created: true }
110
- },
111
- { isolation: "serializable" }
112
- )
113
- } catch (error) {
114
- if (!(error instanceof ActionRunError)) throw error
115
- const raced = await actionRuns.getById({ projectId: input.projectId, id: request.runId })
116
- if (!raced) throw error
117
- await input.assertCanReuseExisting?.(input.storage, raced)
118
- assertExistingRunMatchesRequest(raced, input)
119
- return { publish: false, run: raced }
120
- }
121
- }
122
-
123
- async function reuseActionRun(
124
- input: DispatchActionRunInput,
125
- existing: ActionRunRecord
126
- ): Promise<PersistedActionRun> {
127
- assertExistingRunMatchesRequest(existing, input)
128
- if (!isRetryableEnqueueFailure(existing)) return { publish: false, run: existing }
129
-
130
- const execution = await input.storage.executions.getById({
131
- projectId: input.projectId,
132
- id: existing.executionId,
133
- })
134
- if (!execution) {
135
- throw new ActionRunError(
136
- `[Sixb] Execution '${existing.executionId}' for Action run '${existing.id}' was not found.`
137
- )
138
- }
139
-
140
- const queuedAt = new Date()
141
- const run = await requireActionRunStorage(input.storage).queue({
142
- projectId: input.projectId,
143
- id: existing.id,
144
- executionId: existing.executionId,
145
- actionId: existing.actionId,
146
- subject: existing.subject,
147
- params: existing.params,
148
- idempotencyKey: existing.idempotencyKey,
149
- queuedAt,
150
- })
151
- return { publish: true, run, execution, queuedAt, created: false }
152
- }
153
-
154
- async function publishActionRun(
155
- input: DispatchActionRunInput,
156
- persisted: Extract<PersistedActionRun, { readonly publish: true }>
157
- ): Promise<RequestActionResult> {
158
- let job: Awaited<ReturnType<Queues["actions"]["enqueue"]>>[number] | undefined
159
- try {
160
- const jobs = await input.queue.enqueue({
161
- projectId: input.projectId,
162
- jobs: [
163
- {
164
- id: persisted.run.id,
165
- type: "action.run.requested",
166
- payload: {
167
- runId: persisted.run.id,
168
- },
169
- },
170
- ],
171
- })
172
- job = jobs[0]
173
- } catch (error) {
174
- await failActionRunPublication(input, persisted.run, error)
175
- throw error
176
- }
177
-
178
- await input.events.emit(
179
- {
180
- events: [
181
- {
182
- type: "action.requested",
183
- payload: {
184
- actionId: persisted.run.actionId,
185
- subject: persisted.run.subject,
186
- params: persisted.run.params,
187
- runId: persisted.run.id,
188
- },
189
- },
190
- ],
191
- correlationId: persisted.execution.correlationId,
192
- },
193
- { source: "Sixb" }
194
- )
195
-
196
- return {
197
- runId: persisted.run.id,
198
- queuedAt: persisted.queuedAt.toISOString(),
199
- ...(job?.id ? { jobId: job.id } : {}),
200
- created: persisted.created,
201
- }
202
- }
203
-
204
- async function failActionRunPublication(
205
- input: DispatchActionRunInput,
206
- run: ActionRunRecord,
207
- error: unknown
208
- ): Promise<void> {
209
- const failedAt = new Date()
210
- const failure = toActionRunFailure(error, run, failedAt)
211
- await requireActionRunStorage(input.storage).finish({
212
- projectId: input.projectId,
213
- id: run.id,
214
- status: "failed",
215
- finishedAt: failedAt,
216
- error: failure,
217
- })
218
- reportRunFailure(input.errorReporterHost, error, {
219
- projectId: input.projectId,
220
- runKind: "action",
221
- run: { runId: run.id, actionId: run.actionId },
222
- failure,
223
- })
224
- }
225
-
226
- function requireActionRunStorage(storage: Storage): NonNullable<Storage["actionRuns"]> {
227
- if (!storage.actionRuns) {
228
- throw new ActionRunError("[Sixb] Action run storage is not configured.")
229
- }
230
- return storage.actionRuns
231
- }
232
-
233
- function assertExistingRunMatchesRequest(
234
- existing: ActionRunRecord,
235
- request: Pick<DispatchActionRunInput, "actionId" | "subject" | "params">
236
- ): void {
237
- if (
238
- existing.actionId !== request.actionId ||
239
- !actionSubjectsEqual(existing.subject, request.subject) ||
240
- !actionRunParamsEqual(existing.params, request.params)
241
- ) {
242
- throw new ActionRunError(
243
- `[Sixb] Action run '${existing.id}' already exists with a different request payload.`
244
- )
245
- }
246
- }
247
-
248
- function isRetryableEnqueueFailure(record: ActionRunRecord): boolean {
249
- return (
250
- record.status === "failed" && record.phase === "enqueue" && record.error?.retryable === true
251
- )
252
- }
253
-
254
- function existingActionRunResult(existing: ActionRunRecord): RequestActionResult {
255
- return {
256
- runId: existing.id,
257
- queuedAt: existing.queuedAt.toISOString(),
258
- created: false,
259
- }
260
- }
261
-
262
- function toActionRunFailure(
263
- error: unknown,
264
- run: ActionRunRecord,
265
- at: Date
266
- ): ActionRunFailure<"enqueue"> {
267
- const enqueueError = createSixbError(
268
- "queue.enqueue_failed",
269
- `[Sixb] Could not enqueue Action run '${run.id}'.`,
270
- {
271
- cause: error,
272
- details: { actionId: run.actionId, runId: run.id, phase: "enqueue" },
273
- }
274
- )
275
- return parseActionRunFailure(
276
- toSixbFailure(enqueueError, {
277
- allowedCodes: ACTION_RUN_FAILURE_CODES,
278
- at,
279
- }),
280
- "enqueue"
281
- )
282
- }
@@ -1,2 +0,0 @@
1
- export type { RecordEditsHandler, RecordEditsOptions } from "../edits/recorder"
2
- export { recordEdits } from "../edits/recorder"
@@ -1,42 +0,0 @@
1
- import type { ActionSubject } from "../../actions"
2
- import type { ActionRunFailure } from "../../storage"
3
- import type { EventEnvelope } from "../envelope"
4
-
5
- export interface ActionRequestedEvent extends EventEnvelope {
6
- type: "action.requested"
7
- topic: "actions"
8
- partitionKey: string
9
- payload: {
10
- actionId: string
11
- subject: ActionSubject
12
- params: Record<string, unknown>
13
- runId: string
14
- }
15
- }
16
-
17
- export interface ActionCompletedEvent extends EventEnvelope {
18
- type: "action.completed"
19
- topic: "actions"
20
- partitionKey: string
21
- payload: {
22
- actionId: string
23
- runId: string
24
- subject: ActionSubject
25
- finishedAt: string
26
- }
27
- }
28
-
29
- export interface ActionFailedEvent extends EventEnvelope {
30
- type: "action.failed"
31
- topic: "actions"
32
- partitionKey: string
33
- payload: {
34
- actionId: string
35
- runId: string
36
- subject: ActionSubject
37
- error: ActionRunFailure
38
- finishedAt: string
39
- }
40
- }
41
-
42
- export type ActionEvent = ActionRequestedEvent | ActionCompletedEvent | ActionFailedEvent
@@ -1,43 +0,0 @@
1
- /**
2
- * Service layer for action operations.
3
- *
4
- * Resolves objectTypeId to a typed context and delegates to the leaf function.
5
- */
6
-
7
- import type { RequestActionResult } from "../../actions/request"
8
- import type { ExecutionContext } from "../../execution"
9
- import type { SixbRuntimeContext } from "../../runtime/types"
10
- import type { ActionRunRecord } from "../../storage"
11
- import {
12
- type RequestActionAndWaitOptions,
13
- type RequestActionOptions,
14
- requestActionAndWait as requestActionAndWaitLeaf,
15
- requestAction as requestActionLeaf,
16
- } from "../action"
17
- import { resolveObjectContext } from "../context"
18
-
19
- export async function requestAction(
20
- runtime: SixbRuntimeContext,
21
- execution: ExecutionContext,
22
- objectTypeId: string,
23
- primaryId: string,
24
- actionId: string,
25
- params?: Record<string, unknown>,
26
- options?: RequestActionOptions
27
- ): Promise<RequestActionResult> {
28
- const ctx = { ...resolveObjectContext(runtime, objectTypeId), execution }
29
- return requestActionLeaf(ctx, { primaryId, actionId, params, options })
30
- }
31
-
32
- export async function requestActionAndWait(
33
- runtime: SixbRuntimeContext,
34
- execution: ExecutionContext,
35
- objectTypeId: string,
36
- primaryId: string,
37
- actionId: string,
38
- params?: Record<string, unknown>,
39
- options?: RequestActionAndWaitOptions
40
- ): Promise<ActionRunRecord> {
41
- const ctx = { ...resolveObjectContext(runtime, objectTypeId), execution }
42
- return requestActionAndWaitLeaf(ctx, { primaryId, actionId, params, options })
43
- }