@sixb/core 0.1.7 → 0.1.8

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 (612) hide show
  1. package/dist/actions/delegated-admission.d.ts +24 -0
  2. package/dist/actions/delegated-admission.d.ts.map +1 -0
  3. package/dist/actions/descriptor.d.ts +29 -0
  4. package/dist/actions/descriptor.d.ts.map +1 -0
  5. package/dist/actions/execution.d.ts +5 -5
  6. package/dist/actions/execution.d.ts.map +1 -1
  7. package/dist/actions/index.js +36 -30
  8. package/dist/actions/index.js.map +1 -1
  9. package/dist/actions/request.d.ts.map +1 -1
  10. package/dist/actions/run-authorization.d.ts +20 -0
  11. package/dist/actions/run-authorization.d.ts.map +1 -0
  12. package/dist/actions/run-dispatch.d.ts +3 -1
  13. package/dist/actions/run-dispatch.d.ts.map +1 -1
  14. package/dist/actions/worker.js +3 -3
  15. package/dist/actions/worker.js.map +1 -1
  16. package/dist/agents/adapters.d.ts +5 -122
  17. package/dist/agents/adapters.d.ts.map +1 -1
  18. package/dist/agents/authority.d.ts +1 -1
  19. package/dist/agents/authority.d.ts.map +1 -1
  20. package/dist/agents/context-resolution.d.ts.map +1 -1
  21. package/dist/agents/context.js +1 -1
  22. package/dist/agents/errors.d.ts +0 -9
  23. package/dist/agents/errors.d.ts.map +1 -1
  24. package/dist/agents/execution.d.ts.map +1 -1
  25. package/dist/agents/identity.d.ts +3 -0
  26. package/dist/agents/identity.d.ts.map +1 -0
  27. package/dist/agents/index.d.ts +3 -3
  28. package/dist/agents/index.d.ts.map +1 -1
  29. package/dist/agents/index.js +43 -43
  30. package/dist/agents/index.js.map +1 -1
  31. package/dist/agents/message.d.ts +4 -5
  32. package/dist/agents/message.d.ts.map +1 -1
  33. package/dist/agents/model-loop.d.ts +2 -0
  34. package/dist/agents/model-loop.d.ts.map +1 -1
  35. package/dist/agents/request.d.ts.map +1 -1
  36. package/dist/agents/tool-definition.d.ts +0 -1
  37. package/dist/agents/tool-definition.d.ts.map +1 -1
  38. package/dist/agents/validation.d.ts +0 -4
  39. package/dist/agents/validation.d.ts.map +1 -1
  40. package/dist/ai-usage/execution.d.ts.map +1 -1
  41. package/dist/auth/index.js +8 -5
  42. package/dist/auth/index.js.map +1 -1
  43. package/dist/authorization/decision.d.ts +10 -2
  44. package/dist/authorization/decision.d.ts.map +1 -1
  45. package/dist/authorization/grant-kinds.d.ts +2 -1
  46. package/dist/authorization/grant-kinds.d.ts.map +1 -1
  47. package/dist/authorization/index.d.ts +1 -1
  48. package/dist/authorization/index.d.ts.map +1 -1
  49. package/dist/authorization/index.js +7 -4
  50. package/dist/authorization/index.js.map +1 -1
  51. package/dist/bootstrap/discovery.d.ts +7 -1
  52. package/dist/bootstrap/discovery.d.ts.map +1 -1
  53. package/dist/bootstrap/index.js +46 -39
  54. package/dist/bootstrap/index.js.map +1 -1
  55. package/dist/bootstrap/ontology-type-manifest.d.ts.map +1 -1
  56. package/dist/chunk-19jp6g9d.js +131 -0
  57. package/dist/chunk-19jp6g9d.js.map +11 -0
  58. package/dist/{chunk-x0qhkqje.js → chunk-2dw777qw.js} +50 -5
  59. package/dist/{chunk-x0qhkqje.js.map → chunk-2dw777qw.js.map} +4 -3
  60. package/dist/chunk-359jm1jw.js +147 -0
  61. package/dist/chunk-359jm1jw.js.map +10 -0
  62. package/dist/{chunk-2b5qtban.js → chunk-3xep5cjx.js} +56 -21
  63. package/dist/chunk-3xep5cjx.js.map +15 -0
  64. package/dist/{chunk-qjycjdj6.js → chunk-3z1qec12.js} +6 -8
  65. package/dist/{chunk-qjycjdj6.js.map → chunk-3z1qec12.js.map} +2 -2
  66. package/dist/{chunk-5jcdmjam.js → chunk-4jjp5k14.js} +1 -1
  67. package/dist/{chunk-n2arzn6e.js → chunk-4qfkag59.js} +44 -221
  68. package/dist/chunk-4qfkag59.js.map +20 -0
  69. package/dist/{chunk-rre42skh.js → chunk-4sm0aznx.js} +515 -80
  70. package/dist/{chunk-rre42skh.js.map → chunk-4sm0aznx.js.map} +11 -7
  71. package/dist/chunk-4yqmp43v.js +159 -0
  72. package/dist/chunk-4yqmp43v.js.map +11 -0
  73. package/dist/{chunk-atmkaf60.js → chunk-5e3pq99w.js} +2 -6
  74. package/dist/{chunk-atmkaf60.js.map → chunk-5e3pq99w.js.map} +3 -3
  75. package/dist/{chunk-agsvg9ar.js → chunk-5ntny1qx.js} +1 -1
  76. package/dist/{chunk-z2sery1b.js → chunk-9nbmsvn5.js} +60 -20
  77. package/dist/chunk-9nbmsvn5.js.map +11 -0
  78. package/dist/{chunk-e4rvtvpw.js → chunk-aa2pen2v.js} +250 -78
  79. package/dist/chunk-aa2pen2v.js.map +34 -0
  80. package/dist/{chunk-64sr682n.js → chunk-ajnan18g.js} +11 -8
  81. package/dist/chunk-ajnan18g.js.map +12 -0
  82. package/dist/{chunk-9aehf39w.js → chunk-f26bck4t.js} +4 -4
  83. package/dist/{chunk-7ds9620f.js → chunk-fvt9rjsa.js} +23 -7
  84. package/dist/chunk-fvt9rjsa.js.map +10 -0
  85. package/dist/{chunk-kt81c11h.js → chunk-gbejpkex.js} +5 -5
  86. package/dist/{chunk-kt81c11h.js.map → chunk-gbejpkex.js.map} +1 -1
  87. package/dist/{chunk-vjjv9mrb.js → chunk-gzasd5b6.js} +5 -5
  88. package/dist/{chunk-vjjv9mrb.js.map → chunk-gzasd5b6.js.map} +3 -3
  89. package/dist/{chunk-d63tybny.js → chunk-h0k55pc7.js} +4 -4
  90. package/dist/{chunk-d63tybny.js.map → chunk-h0k55pc7.js.map} +1 -1
  91. package/dist/chunk-h5vqbfmd.js +1537 -0
  92. package/dist/chunk-h5vqbfmd.js.map +19 -0
  93. package/dist/{chunk-3kv70xwp.js → chunk-j1sbhm7p.js} +18 -2
  94. package/dist/chunk-j1sbhm7p.js.map +10 -0
  95. package/dist/{chunk-hdz94br2.js → chunk-k522z7v6.js} +10 -5
  96. package/dist/chunk-k522z7v6.js.map +10 -0
  97. package/dist/{chunk-wjgm6jjt.js → chunk-mth82m8t.js} +128 -94
  98. package/dist/chunk-mth82m8t.js.map +14 -0
  99. package/dist/{chunk-qv38twt8.js → chunk-mwsxn98e.js} +46 -25
  100. package/dist/{chunk-qv38twt8.js.map → chunk-mwsxn98e.js.map} +6 -6
  101. package/dist/chunk-n4khvw9n.js +111 -0
  102. package/dist/chunk-n4khvw9n.js.map +11 -0
  103. package/dist/{chunk-qjzp9xyb.js → chunk-nn0tekr1.js} +6 -8
  104. package/dist/chunk-nn0tekr1.js.map +12 -0
  105. package/dist/chunk-nx7k8tpr.js +436 -0
  106. package/dist/chunk-nx7k8tpr.js.map +12 -0
  107. package/dist/{chunk-08twe8m6.js → chunk-p1rzczbt.js} +1 -1
  108. package/dist/{chunk-37wk412q.js → chunk-p1x242ad.js} +587 -70
  109. package/dist/chunk-p1x242ad.js.map +25 -0
  110. package/dist/{chunk-tn7xcs2n.js → chunk-pc7ys28c.js} +68 -5
  111. package/dist/chunk-pc7ys28c.js.map +14 -0
  112. package/dist/{chunk-3fqt22c4.js → chunk-q0k9nc5a.js} +280 -88
  113. package/dist/chunk-q0k9nc5a.js.map +14 -0
  114. package/dist/chunk-r8jrnexe.js +403 -0
  115. package/dist/chunk-r8jrnexe.js.map +10 -0
  116. package/dist/{chunk-gbrpsx4m.js → chunk-rafagrwr.js} +30 -2
  117. package/dist/chunk-rafagrwr.js.map +11 -0
  118. package/dist/{chunk-xdpwpkha.js → chunk-rv2hkwwa.js} +1 -1
  119. package/dist/{chunk-6ed5bwnd.js → chunk-sbzzr4kx.js} +1203 -691
  120. package/dist/{chunk-6ed5bwnd.js.map → chunk-sbzzr4kx.js.map} +15 -9
  121. package/dist/{chunk-d2ndstdf.js → chunk-v1xppd0y.js} +13 -11
  122. package/dist/{chunk-d2ndstdf.js.map → chunk-v1xppd0y.js.map} +2 -2
  123. package/dist/chunk-v4en4jc2.js +252 -0
  124. package/dist/chunk-v4en4jc2.js.map +10 -0
  125. package/dist/{chunk-1kamz6j0.js → chunk-w1tvjszy.js} +1 -1
  126. package/dist/{chunk-rp1mvzb4.js → chunk-w9tg6yyb.js} +11 -6
  127. package/dist/{chunk-rp1mvzb4.js.map → chunk-w9tg6yyb.js.map} +3 -3
  128. package/dist/{chunk-4nxeacx7.js → chunk-wdage1eb.js} +1 -1
  129. package/dist/{chunk-ha58tjtt.js → chunk-wtf06et8.js} +9 -5
  130. package/dist/{chunk-ha58tjtt.js.map → chunk-wtf06et8.js.map} +3 -3
  131. package/dist/{chunk-h0knpbz5.js → chunk-xajtptbw.js} +782 -211
  132. package/dist/chunk-xajtptbw.js.map +40 -0
  133. package/dist/{chunk-xc7hq65b.js → chunk-yp8ee62z.js} +49 -2
  134. package/dist/chunk-yp8ee62z.js.map +11 -0
  135. package/dist/chunk-z4ccwbkz.js +139 -0
  136. package/dist/chunk-z4ccwbkz.js.map +10 -0
  137. package/dist/datasets/builders.d.ts +11 -2
  138. package/dist/datasets/builders.d.ts.map +1 -1
  139. package/dist/datasets/changes.d.ts +14 -4
  140. package/dist/datasets/changes.d.ts.map +1 -1
  141. package/dist/datasets/execution.d.ts +15 -1
  142. package/dist/datasets/execution.d.ts.map +1 -1
  143. package/dist/datasets/index.d.ts +1 -0
  144. package/dist/datasets/index.d.ts.map +1 -1
  145. package/dist/datasets/sequence.d.ts +7 -0
  146. package/dist/datasets/sequence.d.ts.map +1 -0
  147. package/dist/datasets/types.d.ts +1 -0
  148. package/dist/datasets/types.d.ts.map +1 -1
  149. package/dist/datasets/validation.d.ts.map +1 -1
  150. package/dist/datasets/write.d.ts +37 -0
  151. package/dist/datasets/write.d.ts.map +1 -0
  152. package/dist/datasets/write.js +17 -0
  153. package/dist/datasets/write.js.map +9 -0
  154. package/dist/events/execution.d.ts.map +1 -1
  155. package/dist/events/types/datasets.d.ts +2 -6
  156. package/dist/events/types/datasets.d.ts.map +1 -1
  157. package/dist/execution/agent.d.ts.map +1 -1
  158. package/dist/execution/agent.js +39 -32
  159. package/dist/execution/agent.js.map +1 -1
  160. package/dist/execution/authorization.d.ts +58 -20
  161. package/dist/execution/authorization.d.ts.map +1 -1
  162. package/dist/execution/authorized-object-reader.d.ts +69 -0
  163. package/dist/execution/authorized-object-reader.d.ts.map +1 -0
  164. package/dist/execution/durable.d.ts.map +1 -1
  165. package/dist/execution/index.d.ts +1 -1
  166. package/dist/execution/index.d.ts.map +1 -1
  167. package/dist/execution/primitive.js +39 -32
  168. package/dist/execution/primitive.js.map +2 -2
  169. package/dist/execution/request.d.ts +11 -0
  170. package/dist/execution/request.d.ts.map +1 -1
  171. package/dist/execution/request.js +76 -40
  172. package/dist/execution/request.js.map +3 -3
  173. package/dist/execution/scopes.d.ts +16 -0
  174. package/dist/execution/scopes.d.ts.map +1 -1
  175. package/dist/execution/types.d.ts +9 -0
  176. package/dist/execution/types.d.ts.map +1 -1
  177. package/dist/http/api-routes.d.ts +2 -0
  178. package/dist/http/api-routes.d.ts.map +1 -1
  179. package/dist/http/index.js +1 -1
  180. package/dist/index.d.ts +8 -5
  181. package/dist/index.d.ts.map +1 -1
  182. package/dist/index.js +92 -78
  183. package/dist/index.js.map +1 -1
  184. package/dist/lake-storage/definition-updates.d.ts.map +1 -1
  185. package/dist/lake-storage/errors.d.ts +5 -1
  186. package/dist/lake-storage/errors.d.ts.map +1 -1
  187. package/dist/lake-storage/in-memory.d.ts +1 -0
  188. package/dist/lake-storage/in-memory.d.ts.map +1 -1
  189. package/dist/lake-storage/index.d.ts +6 -1
  190. package/dist/lake-storage/index.d.ts.map +1 -1
  191. package/dist/lake-storage/index.js +24 -7
  192. package/dist/lake-storage/index.js.map +1 -1
  193. package/dist/lake-storage/merge-validation.d.ts.map +1 -1
  194. package/dist/lake-storage/merge.d.ts +13 -2
  195. package/dist/lake-storage/merge.d.ts.map +1 -1
  196. package/dist/lake-storage/source-ordering.d.ts +19 -0
  197. package/dist/lake-storage/source-ordering.d.ts.map +1 -0
  198. package/dist/lake-storage/sql-transforms.d.ts +2 -1
  199. package/dist/lake-storage/sql-transforms.d.ts.map +1 -1
  200. package/dist/lake-storage/types.d.ts +10 -5
  201. package/dist/lake-storage/types.d.ts.map +1 -1
  202. package/dist/lake-storage/version-inputs.d.ts +4 -0
  203. package/dist/lake-storage/version-inputs.d.ts.map +1 -0
  204. package/dist/materializer/index.js +25 -22
  205. package/dist/materializer/index.js.map +1 -1
  206. package/dist/objects/authorized-ontology-view.d.ts +25 -0
  207. package/dist/objects/authorized-ontology-view.d.ts.map +1 -0
  208. package/dist/objects/execution.d.ts +1 -1
  209. package/dist/objects/execution.d.ts.map +1 -1
  210. package/dist/objects/index.js +29 -26
  211. package/dist/objects/index.js.map +1 -1
  212. package/dist/objects/link/authorization.d.ts +2 -7
  213. package/dist/objects/link/authorization.d.ts.map +1 -1
  214. package/dist/objects/query/executor.d.ts +4 -2
  215. package/dist/objects/query/executor.d.ts.map +1 -1
  216. package/dist/objects/query/index.js +24 -21
  217. package/dist/objects/query/index.js.map +1 -1
  218. package/dist/objects/query/links.d.ts +22 -1
  219. package/dist/objects/query/links.d.ts.map +1 -1
  220. package/dist/objects/query/selected-read-admission.d.ts +27 -0
  221. package/dist/objects/query/selected-read-admission.d.ts.map +1 -0
  222. package/dist/objects/query/validate.d.ts +60 -2
  223. package/dist/objects/query/validate.d.ts.map +1 -1
  224. package/dist/objects/sdk/object-handle.d.ts.map +1 -1
  225. package/dist/objects/sdk/object-set.d.ts.map +1 -1
  226. package/dist/objects/sdk/runtime-query-executor.d.ts +2 -7
  227. package/dist/objects/sdk/runtime-query-executor.d.ts.map +1 -1
  228. package/dist/objects/sdk/telemetry-channel.d.ts.map +1 -1
  229. package/dist/objects/service/list-service.d.ts +2 -3
  230. package/dist/objects/service/list-service.d.ts.map +1 -1
  231. package/dist/objects/telemetry/history.d.ts +8 -6
  232. package/dist/objects/telemetry/history.d.ts.map +1 -1
  233. package/dist/objects/telemetry/index.d.ts +2 -2
  234. package/dist/objects/telemetry/index.d.ts.map +1 -1
  235. package/dist/objects/telemetry/workload.d.ts +11 -0
  236. package/dist/objects/telemetry/workload.d.ts.map +1 -0
  237. package/dist/ontology/index.d.ts +2 -1
  238. package/dist/ontology/index.d.ts.map +1 -1
  239. package/dist/ontology/index.js +13 -12
  240. package/dist/ontology/index.js.map +1 -1
  241. package/dist/ontology/inference/index.d.ts +2 -1
  242. package/dist/ontology/inference/index.d.ts.map +1 -1
  243. package/dist/ontology/internal.d.ts +0 -1
  244. package/dist/ontology/internal.d.ts.map +1 -1
  245. package/dist/ontology/internal.js +5 -10
  246. package/dist/ontology/internal.js.map +3 -3
  247. package/dist/ontology/json-schema.d.ts +10 -6
  248. package/dist/ontology/json-schema.d.ts.map +1 -1
  249. package/dist/ontology/link-path-selection.d.ts +35 -0
  250. package/dist/ontology/link-path-selection.d.ts.map +1 -0
  251. package/dist/ontology/refs.d.ts +2 -0
  252. package/dist/ontology/refs.d.ts.map +1 -1
  253. package/dist/ontology/tokens.d.ts +2 -1
  254. package/dist/ontology/tokens.d.ts.map +1 -1
  255. package/dist/pipelines/execution.d.ts.map +1 -1
  256. package/dist/pipelines/index.js +27 -24
  257. package/dist/pipelines/index.js.map +1 -1
  258. package/dist/pipelines/request.d.ts.map +1 -1
  259. package/dist/projections/execution.d.ts.map +1 -1
  260. package/dist/projections/internal.js +25 -22
  261. package/dist/projections/internal.js.map +1 -1
  262. package/dist/projections/run-dispatch.d.ts.map +1 -1
  263. package/dist/rules/execution.d.ts.map +1 -1
  264. package/dist/runtime/create.d.ts +4 -1
  265. package/dist/runtime/create.d.ts.map +1 -1
  266. package/dist/runtime/definitions.d.ts +2 -0
  267. package/dist/runtime/definitions.d.ts.map +1 -1
  268. package/dist/runtime/host.d.ts +2 -0
  269. package/dist/runtime/host.d.ts.map +1 -1
  270. package/dist/runtime/internal.d.ts +1 -0
  271. package/dist/runtime/internal.d.ts.map +1 -1
  272. package/dist/runtime/resolve-definitions.d.ts +2 -0
  273. package/dist/runtime/resolve-definitions.d.ts.map +1 -1
  274. package/dist/runtime/sixb.d.ts +4 -0
  275. package/dist/runtime/sixb.d.ts.map +1 -1
  276. package/dist/runtime/types.d.ts +3 -0
  277. package/dist/runtime/types.d.ts.map +1 -1
  278. package/dist/schedules/execution.d.ts +2 -1
  279. package/dist/schedules/execution.d.ts.map +1 -1
  280. package/dist/security/every.d.ts +4 -1
  281. package/dist/security/every.d.ts.map +1 -1
  282. package/dist/security/grants.d.ts +7 -2
  283. package/dist/security/grants.d.ts.map +1 -1
  284. package/dist/security/index.d.ts +1 -1
  285. package/dist/security/index.d.ts.map +1 -1
  286. package/dist/security/registry.d.ts +1 -0
  287. package/dist/security/registry.d.ts.map +1 -1
  288. package/dist/security/types.d.ts +7 -1
  289. package/dist/security/types.d.ts.map +1 -1
  290. package/dist/security/validation.d.ts +2 -0
  291. package/dist/security/validation.d.ts.map +1 -1
  292. package/dist/shares/access-plan.d.ts +22 -0
  293. package/dist/shares/access-plan.d.ts.map +1 -0
  294. package/dist/shares/builders.d.ts +14 -0
  295. package/dist/shares/builders.d.ts.map +1 -0
  296. package/dist/shares/compiler.d.ts +14 -0
  297. package/dist/shares/compiler.d.ts.map +1 -0
  298. package/dist/shares/errors.d.ts +4 -0
  299. package/dist/shares/errors.d.ts.map +1 -0
  300. package/dist/shares/execution.d.ts +57 -0
  301. package/dist/shares/execution.d.ts.map +1 -0
  302. package/dist/shares/index.d.ts +10 -0
  303. package/dist/shares/index.d.ts.map +1 -0
  304. package/dist/shares/internal.d.ts +3 -0
  305. package/dist/shares/internal.d.ts.map +1 -0
  306. package/dist/shares/internal.js +239 -0
  307. package/dist/shares/internal.js.map +10 -0
  308. package/dist/shares/intersection.d.ts +9 -0
  309. package/dist/shares/intersection.d.ts.map +1 -0
  310. package/dist/shares/session-protocol.d.ts +41 -0
  311. package/dist/shares/session-protocol.d.ts.map +1 -0
  312. package/dist/shares/types.d.ts +51 -0
  313. package/dist/shares/types.d.ts.map +1 -0
  314. package/dist/shares/validation.d.ts +11 -0
  315. package/dist/shares/validation.d.ts.map +1 -0
  316. package/dist/storage/action-runs/provider.js +2 -2
  317. package/dist/storage/agents/provider.js +2 -2
  318. package/dist/storage/executions/in-memory.d.ts +3 -0
  319. package/dist/storage/executions/in-memory.d.ts.map +1 -1
  320. package/dist/storage/executions/provider.d.ts +4 -1
  321. package/dist/storage/executions/provider.d.ts.map +1 -1
  322. package/dist/storage/executions/provider.js +23 -3
  323. package/dist/storage/executions/provider.js.map +3 -3
  324. package/dist/storage/executions/run-link.d.ts +7 -0
  325. package/dist/storage/executions/run-link.d.ts.map +1 -1
  326. package/dist/storage/executions/validation.d.ts +6 -0
  327. package/dist/storage/executions/validation.d.ts.map +1 -1
  328. package/dist/storage/in-memory/index.d.ts +8 -0
  329. package/dist/storage/in-memory/index.d.ts.map +1 -1
  330. package/dist/storage/index.d.ts +8 -2
  331. package/dist/storage/index.d.ts.map +1 -1
  332. package/dist/storage/index.js +65 -36
  333. package/dist/storage/index.js.map +1 -1
  334. package/dist/storage/objects/execution-limits.d.ts +25 -0
  335. package/dist/storage/objects/execution-limits.d.ts.map +1 -0
  336. package/dist/storage/objects/guard.d.ts +16 -0
  337. package/dist/storage/objects/guard.d.ts.map +1 -0
  338. package/dist/storage/objects/in-memory/index.d.ts +3 -0
  339. package/dist/storage/objects/in-memory/index.d.ts.map +1 -0
  340. package/dist/storage/objects/in-memory/keys.d.ts +10 -0
  341. package/dist/storage/objects/in-memory/keys.d.ts.map +1 -0
  342. package/dist/storage/objects/in-memory/query.d.ts +31 -0
  343. package/dist/storage/objects/in-memory/query.d.ts.map +1 -0
  344. package/dist/storage/objects/in-memory/read-scope.d.ts +18 -0
  345. package/dist/storage/objects/in-memory/read-scope.d.ts.map +1 -0
  346. package/dist/storage/objects/in-memory/read-source.d.ts +10 -0
  347. package/dist/storage/objects/in-memory/read-source.d.ts.map +1 -0
  348. package/dist/storage/objects/in-memory/selected-reader.d.ts +9 -0
  349. package/dist/storage/objects/in-memory/selected-reader.d.ts.map +1 -0
  350. package/dist/storage/objects/{in-memory.d.ts → in-memory/storage.d.ts} +13 -10
  351. package/dist/storage/objects/in-memory/storage.d.ts.map +1 -0
  352. package/dist/storage/objects/index.d.ts +4 -1
  353. package/dist/storage/objects/index.d.ts.map +1 -1
  354. package/dist/storage/objects/keys.d.ts +1 -1
  355. package/dist/storage/objects/keys.d.ts.map +1 -1
  356. package/dist/storage/objects/read-scope.d.ts +25 -0
  357. package/dist/storage/objects/read-scope.d.ts.map +1 -0
  358. package/dist/storage/objects/types.d.ts +114 -22
  359. package/dist/storage/objects/types.d.ts.map +1 -1
  360. package/dist/storage/operation-scope.d.ts +3 -0
  361. package/dist/storage/operation-scope.d.ts.map +1 -1
  362. package/dist/storage/operation-scope.js +4 -2
  363. package/dist/storage/operation-scope.js.map +1 -1
  364. package/dist/storage/pipeline-runs/provider.js +2 -2
  365. package/dist/storage/projection-runs/provider.js +2 -2
  366. package/dist/storage/share-grants/errors.d.ts +8 -0
  367. package/dist/storage/share-grants/errors.d.ts.map +1 -0
  368. package/dist/storage/share-grants/in-memory.d.ts +11 -0
  369. package/dist/storage/share-grants/in-memory.d.ts.map +1 -0
  370. package/dist/storage/share-grants/index.d.ts +5 -0
  371. package/dist/storage/share-grants/index.d.ts.map +1 -0
  372. package/dist/storage/share-grants/provider.d.ts +4 -0
  373. package/dist/storage/share-grants/provider.d.ts.map +1 -0
  374. package/dist/storage/share-grants/provider.js +24 -0
  375. package/dist/storage/share-grants/provider.js.map +9 -0
  376. package/dist/storage/share-grants/record.d.ts +11 -0
  377. package/dist/storage/share-grants/record.d.ts.map +1 -0
  378. package/dist/storage/share-grants/types.d.ts +97 -0
  379. package/dist/storage/share-grants/types.d.ts.map +1 -0
  380. package/dist/storage/share-sessions/errors.d.ts +8 -0
  381. package/dist/storage/share-sessions/errors.d.ts.map +1 -0
  382. package/dist/storage/share-sessions/in-memory.d.ts +14 -0
  383. package/dist/storage/share-sessions/in-memory.d.ts.map +1 -0
  384. package/dist/storage/share-sessions/index.d.ts +5 -0
  385. package/dist/storage/share-sessions/index.d.ts.map +1 -0
  386. package/dist/storage/share-sessions/provider.d.ts +3 -0
  387. package/dist/storage/share-sessions/provider.d.ts.map +1 -0
  388. package/dist/storage/share-sessions/provider.js +20 -0
  389. package/dist/storage/share-sessions/provider.js.map +9 -0
  390. package/dist/storage/share-sessions/record.d.ts +8 -0
  391. package/dist/storage/share-sessions/record.d.ts.map +1 -0
  392. package/dist/storage/share-sessions/types.d.ts +50 -0
  393. package/dist/storage/share-sessions/types.d.ts.map +1 -0
  394. package/dist/storage/sync-runs/provider.js +2 -2
  395. package/dist/storage/transaction.d.ts +2 -1
  396. package/dist/storage/transaction.d.ts.map +1 -1
  397. package/dist/storage/types.d.ts +8 -0
  398. package/dist/storage/types.d.ts.map +1 -1
  399. package/dist/storage/webhook-runs/provider.js +2 -2
  400. package/dist/storage/workflow-runs/provider.js +10 -7
  401. package/dist/storage/workflow-runs/provider.js.map +1 -1
  402. package/dist/syncs/execution.d.ts.map +1 -1
  403. package/dist/syncs/index.js +27 -24
  404. package/dist/syncs/index.js.map +1 -1
  405. package/dist/syncs/request.d.ts.map +1 -1
  406. package/dist/testing/dataset-sequence-contract.d.ts +4 -0
  407. package/dist/testing/dataset-sequence-contract.d.ts.map +1 -0
  408. package/dist/testing/effective-storage-contract.d.ts.map +1 -1
  409. package/dist/testing/execution-storage-contract.d.ts +4 -0
  410. package/dist/testing/execution-storage-contract.d.ts.map +1 -1
  411. package/dist/testing/index.d.ts +3 -0
  412. package/dist/testing/index.d.ts.map +1 -1
  413. package/dist/testing/index.js +2555 -908
  414. package/dist/testing/index.js.map +11 -7
  415. package/dist/testing/lake-merge-storage-contract.d.ts +1 -0
  416. package/dist/testing/lake-merge-storage-contract.d.ts.map +1 -1
  417. package/dist/testing/lake-storage-contract.d.ts.map +1 -1
  418. package/dist/testing/object-read-scope-contract.d.ts +22 -0
  419. package/dist/testing/object-read-scope-contract.d.ts.map +1 -0
  420. package/dist/testing/share-grant-storage-contract.d.ts +10 -0
  421. package/dist/testing/share-grant-storage-contract.d.ts.map +1 -0
  422. package/dist/testing/share-session-storage-contract.d.ts +9 -0
  423. package/dist/testing/share-session-storage-contract.d.ts.map +1 -0
  424. package/dist/webhooks/internal.js +24 -21
  425. package/dist/webhooks/internal.js.map +2 -2
  426. package/dist/workflows/execution.d.ts.map +1 -1
  427. package/dist/workflows/index.js +42 -35
  428. package/dist/workflows/index.js.map +1 -1
  429. package/dist/workflows/request.d.ts.map +1 -1
  430. package/package.json +25 -1
  431. package/src/actions/delegated-admission.ts +72 -0
  432. package/src/actions/descriptor.ts +58 -0
  433. package/src/actions/execution.ts +99 -24
  434. package/src/actions/request.ts +136 -19
  435. package/src/actions/run-authorization.ts +53 -0
  436. package/src/actions/run-dispatch.ts +8 -1
  437. package/src/agents/adapters.ts +30 -420
  438. package/src/agents/authority.ts +3 -4
  439. package/src/agents/context-resolution.ts +1 -4
  440. package/src/agents/errors.ts +0 -10
  441. package/src/agents/execution.ts +13 -5
  442. package/src/agents/identity.ts +4 -0
  443. package/src/agents/index.ts +1 -20
  444. package/src/agents/message.ts +4 -5
  445. package/src/agents/model-loop.ts +54 -6
  446. package/src/agents/request.ts +16 -3
  447. package/src/agents/tool-definition.ts +0 -19
  448. package/src/agents/validation.ts +6 -65
  449. package/src/ai-usage/execution.ts +4 -11
  450. package/src/authorization/decision.ts +29 -14
  451. package/src/authorization/grant-kinds.ts +10 -0
  452. package/src/authorization/index.ts +1 -0
  453. package/src/bootstrap/discovery.ts +3 -0
  454. package/src/bootstrap/ontology-type-manifest.ts +12 -6
  455. package/src/datasets/builders.ts +23 -2
  456. package/src/datasets/changes.ts +16 -4
  457. package/src/datasets/execution.ts +76 -5
  458. package/src/datasets/index.ts +1 -0
  459. package/src/datasets/sequence.ts +77 -0
  460. package/src/datasets/types.ts +1 -0
  461. package/src/datasets/validation.ts +26 -0
  462. package/src/datasets/write.ts +240 -0
  463. package/src/events/execution.ts +57 -7
  464. package/src/events/types/datasets.ts +2 -6
  465. package/src/execution/agent.ts +1 -4
  466. package/src/execution/authorization.ts +470 -90
  467. package/src/execution/authorized-object-reader.ts +695 -0
  468. package/src/execution/durable.ts +10 -2
  469. package/src/execution/index.ts +1 -0
  470. package/src/execution/request.ts +63 -13
  471. package/src/execution/scopes.ts +36 -6
  472. package/src/execution/types.ts +8 -0
  473. package/src/http/api-routes.ts +45 -0
  474. package/src/index.ts +36 -15
  475. package/src/lake-storage/definition-updates.ts +9 -0
  476. package/src/lake-storage/errors.ts +6 -1
  477. package/src/lake-storage/in-memory.ts +53 -17
  478. package/src/lake-storage/index.ts +10 -1
  479. package/src/lake-storage/merge-validation.ts +12 -2
  480. package/src/lake-storage/merge.ts +40 -2
  481. package/src/lake-storage/source-ordering.ts +95 -0
  482. package/src/lake-storage/sql-transforms.ts +2 -1
  483. package/src/lake-storage/types.ts +10 -5
  484. package/src/lake-storage/version-inputs.ts +14 -0
  485. package/src/objects/authorized-ontology-view.ts +512 -0
  486. package/src/objects/execution.ts +98 -143
  487. package/src/objects/link/authorization.ts +3 -2
  488. package/src/objects/query/executor.ts +45 -34
  489. package/src/objects/query/links.ts +84 -25
  490. package/src/objects/query/selected-read-admission.ts +310 -0
  491. package/src/objects/query/validate.ts +353 -36
  492. package/src/objects/sdk/object-handle.ts +2 -8
  493. package/src/objects/sdk/object-set.ts +10 -11
  494. package/src/objects/sdk/runtime-query-executor.ts +8 -28
  495. package/src/objects/sdk/telemetry-channel.ts +11 -7
  496. package/src/objects/service/list-service.ts +15 -29
  497. package/src/objects/telemetry/history.ts +297 -17
  498. package/src/objects/telemetry/index.ts +2 -2
  499. package/src/objects/telemetry/workload.ts +79 -0
  500. package/src/ontology/index.ts +7 -1
  501. package/src/ontology/inference/index.ts +4 -1
  502. package/src/ontology/internal.ts +0 -1
  503. package/src/ontology/json-schema.ts +13 -12
  504. package/src/ontology/link-path-selection.ts +193 -0
  505. package/src/ontology/refs.ts +19 -0
  506. package/src/ontology/tokens.ts +15 -8
  507. package/src/pipelines/execution.ts +30 -7
  508. package/src/pipelines/request.ts +5 -0
  509. package/src/projections/execution.ts +72 -11
  510. package/src/projections/run-dispatch.ts +6 -12
  511. package/src/rules/execution.ts +20 -8
  512. package/src/runtime/create.ts +5 -1
  513. package/src/runtime/definitions.ts +2 -0
  514. package/src/runtime/host.ts +25 -6
  515. package/src/runtime/internal.ts +1 -0
  516. package/src/runtime/resolve-definitions.ts +9 -0
  517. package/src/runtime/sixb.ts +23 -2
  518. package/src/runtime/types.ts +3 -0
  519. package/src/schedules/execution.ts +24 -2
  520. package/src/security/every.ts +4 -0
  521. package/src/security/grants.ts +45 -3
  522. package/src/security/index.ts +1 -0
  523. package/src/security/registry.ts +3 -0
  524. package/src/security/types.ts +8 -0
  525. package/src/security/validation.ts +3 -0
  526. package/src/shares/access-plan.ts +225 -0
  527. package/src/shares/builders.ts +381 -0
  528. package/src/shares/compiler.ts +359 -0
  529. package/src/shares/errors.ts +3 -0
  530. package/src/shares/execution.ts +394 -0
  531. package/src/shares/index.ts +28 -0
  532. package/src/shares/internal.ts +9 -0
  533. package/src/shares/intersection.ts +178 -0
  534. package/src/shares/session-protocol.ts +258 -0
  535. package/src/shares/types.ts +76 -0
  536. package/src/shares/validation.ts +40 -0
  537. package/src/storage/executions/in-memory.ts +9 -1
  538. package/src/storage/executions/provider.ts +30 -1
  539. package/src/storage/executions/run-link.ts +29 -0
  540. package/src/storage/executions/validation.ts +46 -1
  541. package/src/storage/in-memory/index.ts +21 -2
  542. package/src/storage/index.ts +51 -0
  543. package/src/storage/objects/execution-limits.ts +283 -0
  544. package/src/storage/objects/guard.ts +55 -0
  545. package/src/storage/objects/in-memory/index.ts +2 -0
  546. package/src/storage/objects/in-memory/keys.ts +46 -0
  547. package/src/storage/objects/in-memory/query.ts +754 -0
  548. package/src/storage/objects/in-memory/read-scope.ts +211 -0
  549. package/src/storage/objects/in-memory/read-source.ts +10 -0
  550. package/src/storage/objects/in-memory/selected-reader.ts +252 -0
  551. package/src/storage/objects/in-memory/storage.ts +589 -0
  552. package/src/storage/objects/index.ts +21 -0
  553. package/src/storage/objects/keys.ts +1 -1
  554. package/src/storage/objects/read-scope.ts +672 -0
  555. package/src/storage/objects/types.ts +123 -19
  556. package/src/storage/operation-scope.ts +16 -0
  557. package/src/storage/share-grants/errors.ts +14 -0
  558. package/src/storage/share-grants/in-memory.ts +107 -0
  559. package/src/storage/share-grants/index.ts +14 -0
  560. package/src/storage/share-grants/provider.ts +11 -0
  561. package/src/storage/share-grants/record.ts +347 -0
  562. package/src/storage/share-grants/types.ts +112 -0
  563. package/src/storage/share-sessions/errors.ts +14 -0
  564. package/src/storage/share-sessions/in-memory.ts +105 -0
  565. package/src/storage/share-sessions/index.ts +11 -0
  566. package/src/storage/share-sessions/provider.ts +9 -0
  567. package/src/storage/share-sessions/record.ts +176 -0
  568. package/src/storage/share-sessions/types.ts +57 -0
  569. package/src/storage/transaction.ts +14 -2
  570. package/src/storage/types.ts +27 -0
  571. package/src/syncs/execution.ts +25 -5
  572. package/src/syncs/request.ts +5 -0
  573. package/src/testing/dataset-sequence-contract.ts +373 -0
  574. package/src/testing/effective-storage-contract.ts +34 -0
  575. package/src/testing/execution-storage-contract.ts +79 -0
  576. package/src/testing/index.ts +16 -0
  577. package/src/testing/lake-merge-storage-contract.ts +3 -0
  578. package/src/testing/lake-storage-contract.ts +58 -0
  579. package/src/testing/object-read-scope-contract.ts +939 -0
  580. package/src/testing/share-grant-storage-contract.ts +325 -0
  581. package/src/testing/share-session-storage-contract.ts +235 -0
  582. package/src/workflows/execution.ts +53 -14
  583. package/src/workflows/request.ts +5 -0
  584. package/dist/chunk-2b5qtban.js.map +0 -14
  585. package/dist/chunk-37wk412q.js.map +0 -23
  586. package/dist/chunk-3fqt22c4.js.map +0 -14
  587. package/dist/chunk-3kv70xwp.js.map +0 -10
  588. package/dist/chunk-64sr682n.js.map +0 -12
  589. package/dist/chunk-7ds9620f.js.map +0 -10
  590. package/dist/chunk-dqn23610.js +0 -72
  591. package/dist/chunk-dqn23610.js.map +0 -11
  592. package/dist/chunk-e4rvtvpw.js.map +0 -34
  593. package/dist/chunk-gbrpsx4m.js.map +0 -11
  594. package/dist/chunk-h0knpbz5.js.map +0 -38
  595. package/dist/chunk-hdz94br2.js.map +0 -10
  596. package/dist/chunk-n2arzn6e.js.map +0 -20
  597. package/dist/chunk-qjzp9xyb.js.map +0 -12
  598. package/dist/chunk-tn7xcs2n.js.map +0 -13
  599. package/dist/chunk-wjgm6jjt.js.map +0 -13
  600. package/dist/chunk-xc7hq65b.js.map +0 -10
  601. package/dist/chunk-y35ma3mj.js +0 -551
  602. package/dist/chunk-y35ma3mj.js.map +0 -15
  603. package/dist/chunk-z2sery1b.js.map +0 -11
  604. package/dist/storage/objects/in-memory.d.ts.map +0 -1
  605. package/src/storage/objects/in-memory.ts +0 -1241
  606. /package/dist/{chunk-5jcdmjam.js.map → chunk-4jjp5k14.js.map} +0 -0
  607. /package/dist/{chunk-agsvg9ar.js.map → chunk-5ntny1qx.js.map} +0 -0
  608. /package/dist/{chunk-9aehf39w.js.map → chunk-f26bck4t.js.map} +0 -0
  609. /package/dist/{chunk-08twe8m6.js.map → chunk-p1rzczbt.js.map} +0 -0
  610. /package/dist/{chunk-xdpwpkha.js.map → chunk-rv2hkwwa.js.map} +0 -0
  611. /package/dist/{chunk-1kamz6j0.js.map → chunk-w1tvjszy.js.map} +0 -0
  612. /package/dist/{chunk-4nxeacx7.js.map → chunk-wdage1eb.js.map} +0 -0
@@ -0,0 +1,159 @@
1
+ // @bun
2
+ // src/storage/share-sessions/errors.ts
3
+ class ShareSessionStorageError extends Error {
4
+ code;
5
+ name = "ShareSessionStorageError";
6
+ constructor(code, message, options) {
7
+ super(message, options);
8
+ this.code = code;
9
+ }
10
+ }
11
+
12
+ // src/storage/share-sessions/record.ts
13
+ var SHA256_HEX = /^[0-9a-f]{64}$/;
14
+ function normalizeShareSessionCreate(input) {
15
+ if (!isRecord(input))
16
+ throw invalidInput("Share session create input must be an object.");
17
+ const createdAt = inputDate(input.createdAt, "Share session creation time");
18
+ const expiresAt = inputDate(input.expiresAt, "Share session inactivity expiry");
19
+ const absoluteExpiresAt = inputDate(input.absoluteExpiresAt, "Share session absolute expiry");
20
+ if (expiresAt.getTime() <= createdAt.getTime()) {
21
+ throw invalidInput("Share session inactivity expiry must be later than creation time.");
22
+ }
23
+ if (absoluteExpiresAt.getTime() <= createdAt.getTime()) {
24
+ throw invalidInput("Share session absolute expiry must be later than creation time.");
25
+ }
26
+ if (expiresAt.getTime() > absoluteExpiresAt.getTime()) {
27
+ throw invalidInput("Share session inactivity expiry must not exceed its absolute expiry.");
28
+ }
29
+ return {
30
+ id: identifier(input.id, "Share session id"),
31
+ projectId: identifier(input.projectId, "Project id"),
32
+ grantId: identifier(input.grantId, "Share grant id"),
33
+ tokenHash: sha256(input.tokenHash, "Share session token hash"),
34
+ createdAt,
35
+ expiresAt,
36
+ absoluteExpiresAt
37
+ };
38
+ }
39
+ function parseShareSessionRecord(input) {
40
+ if (!isRecord(input))
41
+ throw invalidRecord("Share session row must be an object.");
42
+ try {
43
+ const createdAt = storedDate(input.createdAt, "Share session creation time");
44
+ const expiresAt = storedDate(input.expiresAt, "Share session inactivity expiry");
45
+ const absoluteExpiresAt = storedDate(input.absoluteExpiresAt, "Share session absolute expiry");
46
+ if (expiresAt.getTime() <= createdAt.getTime()) {
47
+ throw invalidRecord("Share session inactivity expiry must be later than creation time.");
48
+ }
49
+ if (absoluteExpiresAt.getTime() <= createdAt.getTime()) {
50
+ throw invalidRecord("Share session absolute expiry must be later than creation time.");
51
+ }
52
+ if (expiresAt.getTime() > absoluteExpiresAt.getTime()) {
53
+ throw invalidRecord("Share session inactivity expiry exceeds its absolute expiry.");
54
+ }
55
+ const revokedAtValue = input.revokedAt;
56
+ if (revokedAtValue === null) {
57
+ throw invalidRecord("Share session revocation time must be omitted rather than null.");
58
+ }
59
+ const revokedAt = revokedAtValue === undefined ? undefined : storedDate(revokedAtValue, "Share session revocation time");
60
+ if (revokedAt && revokedAt.getTime() < createdAt.getTime()) {
61
+ throw invalidRecord("Share session revocation time must not precede creation time.");
62
+ }
63
+ return {
64
+ id: identifier(input.id, "Share session id"),
65
+ projectId: identifier(input.projectId, "Project id"),
66
+ grantId: identifier(input.grantId, "Share grant id"),
67
+ tokenHash: sha256(input.tokenHash, "Share session token hash"),
68
+ createdAt,
69
+ expiresAt,
70
+ absoluteExpiresAt,
71
+ ...revokedAt === undefined ? {} : { revokedAt }
72
+ };
73
+ } catch (error) {
74
+ if (error instanceof ShareSessionStorageError) {
75
+ if (error.code === "invalid_record")
76
+ throw error;
77
+ throw invalidRecord(error.message.replace(/^\[Sixb\] /, ""), error);
78
+ }
79
+ throw error;
80
+ }
81
+ }
82
+ function normalizeGetShareSessionByIdInput(input) {
83
+ if (!isRecord(input))
84
+ throw invalidInput("Share session lookup input must be an object.");
85
+ return {
86
+ projectId: identifier(input.projectId, "Project id"),
87
+ id: identifier(input.id, "Share session id")
88
+ };
89
+ }
90
+ function normalizeRenewShareSessionIfValidInput(input) {
91
+ if (!isRecord(input))
92
+ throw invalidInput("Share session renewal input must be an object.");
93
+ const now = inputDate(input.now, "Share session renewal time");
94
+ const expiresAt = inputDate(input.expiresAt, "Requested Share session expiry");
95
+ if (expiresAt.getTime() <= now.getTime()) {
96
+ throw invalidInput("Requested Share session expiry must be later than renewal time.");
97
+ }
98
+ return {
99
+ projectId: identifier(input.projectId, "Project id"),
100
+ id: identifier(input.id, "Share session id"),
101
+ grantId: identifier(input.grantId, "Share grant id"),
102
+ tokenHash: sha256(input.tokenHash, "Share session token hash"),
103
+ now,
104
+ expiresAt
105
+ };
106
+ }
107
+ function normalizeRevokeShareSessionInput(input, createdAt) {
108
+ if (!isRecord(input))
109
+ throw invalidInput("Share session revocation input must be an object.");
110
+ const normalized = {
111
+ projectId: identifier(input.projectId, "Project id"),
112
+ id: identifier(input.id, "Share session id"),
113
+ revokedAt: inputDate(input.revokedAt, "Share session revocation time")
114
+ };
115
+ if (createdAt && normalized.revokedAt.getTime() < createdAt.getTime()) {
116
+ throw invalidInput("Share session revocation time must not precede creation time.");
117
+ }
118
+ return normalized;
119
+ }
120
+ function cloneShareSessionRecord(input) {
121
+ return structuredClone(input);
122
+ }
123
+ function identifier(value, label) {
124
+ if (typeof value !== "string" || value.trim().length === 0 || value.includes("\x00")) {
125
+ throw invalidInput(`${label} must be a non-empty string without NUL bytes.`);
126
+ }
127
+ return value;
128
+ }
129
+ function sha256(value, label) {
130
+ if (typeof value !== "string" || !SHA256_HEX.test(value)) {
131
+ throw invalidInput(`${label} must be a lowercase SHA-256 hex digest.`);
132
+ }
133
+ return value;
134
+ }
135
+ function inputDate(value, label) {
136
+ if (!(value instanceof Date) || !Number.isFinite(value.getTime())) {
137
+ throw invalidInput(`${label} must be a valid Date.`);
138
+ }
139
+ return new Date(value);
140
+ }
141
+ function storedDate(value, label) {
142
+ const parsed = value instanceof Date ? new Date(value) : typeof value === "string" ? new Date(value) : new Date(Number.NaN);
143
+ if (!Number.isFinite(parsed.getTime()))
144
+ throw invalidRecord(`${label} is invalid.`);
145
+ return parsed;
146
+ }
147
+ function isRecord(value) {
148
+ return typeof value === "object" && value !== null && !Array.isArray(value);
149
+ }
150
+ function invalidInput(message, cause) {
151
+ return new ShareSessionStorageError("invalid_input", `[Sixb] ${message}`, { cause });
152
+ }
153
+ function invalidRecord(message, cause) {
154
+ return new ShareSessionStorageError("invalid_record", `[Sixb] ${message}`, { cause });
155
+ }
156
+
157
+ export { ShareSessionStorageError, normalizeShareSessionCreate, parseShareSessionRecord, normalizeGetShareSessionByIdInput, normalizeRenewShareSessionIfValidInput, normalizeRevokeShareSessionInput, cloneShareSessionRecord };
158
+
159
+ //# debugId=D3828EEEA2F9B76B64756E2164756E21
@@ -0,0 +1,11 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/storage/share-sessions/errors.ts", "../src/storage/share-sessions/record.ts"],
4
+ "sourcesContent": [
5
+ "export type ShareSessionStorageErrorCode = \"duplicate\" | \"invalid_input\" | \"invalid_record\"\n\n/** Provider-level control signal for durable Share session persistence. */\nexport class ShareSessionStorageError extends Error {\n readonly name = \"ShareSessionStorageError\"\n\n constructor(\n readonly code: ShareSessionStorageErrorCode,\n message: string,\n options?: ErrorOptions\n ) {\n super(message, options)\n }\n}\n",
6
+ "import { ShareSessionStorageError } from \"./errors\"\nimport type {\n CreateShareSessionInput,\n GetShareSessionByIdInput,\n RenewShareSessionIfValidInput,\n RevokeShareSessionInput,\n ShareSessionRecord,\n} from \"./types\"\n\nconst SHA256_HEX = /^[0-9a-f]{64}$/\n\nexport function normalizeShareSessionCreate(input: CreateShareSessionInput): ShareSessionRecord {\n if (!isRecord(input)) throw invalidInput(\"Share session create input must be an object.\")\n const createdAt = inputDate(input.createdAt, \"Share session creation time\")\n const expiresAt = inputDate(input.expiresAt, \"Share session inactivity expiry\")\n const absoluteExpiresAt = inputDate(input.absoluteExpiresAt, \"Share session absolute expiry\")\n if (expiresAt.getTime() <= createdAt.getTime()) {\n throw invalidInput(\"Share session inactivity expiry must be later than creation time.\")\n }\n if (absoluteExpiresAt.getTime() <= createdAt.getTime()) {\n throw invalidInput(\"Share session absolute expiry must be later than creation time.\")\n }\n if (expiresAt.getTime() > absoluteExpiresAt.getTime()) {\n throw invalidInput(\"Share session inactivity expiry must not exceed its absolute expiry.\")\n }\n\n return {\n id: identifier(input.id, \"Share session id\"),\n projectId: identifier(input.projectId, \"Project id\"),\n grantId: identifier(input.grantId, \"Share grant id\"),\n tokenHash: sha256(input.tokenHash, \"Share session token hash\"),\n createdAt,\n expiresAt,\n absoluteExpiresAt,\n }\n}\n\nexport function parseShareSessionRecord(input: unknown): ShareSessionRecord {\n if (!isRecord(input)) throw invalidRecord(\"Share session row must be an object.\")\n try {\n const createdAt = storedDate(input.createdAt, \"Share session creation time\")\n const expiresAt = storedDate(input.expiresAt, \"Share session inactivity expiry\")\n const absoluteExpiresAt = storedDate(input.absoluteExpiresAt, \"Share session absolute expiry\")\n if (expiresAt.getTime() <= createdAt.getTime()) {\n throw invalidRecord(\"Share session inactivity expiry must be later than creation time.\")\n }\n if (absoluteExpiresAt.getTime() <= createdAt.getTime()) {\n throw invalidRecord(\"Share session absolute expiry must be later than creation time.\")\n }\n if (expiresAt.getTime() > absoluteExpiresAt.getTime()) {\n throw invalidRecord(\"Share session inactivity expiry exceeds its absolute expiry.\")\n }\n\n const revokedAtValue = input.revokedAt\n if (revokedAtValue === null) {\n throw invalidRecord(\"Share session revocation time must be omitted rather than null.\")\n }\n const revokedAt =\n revokedAtValue === undefined\n ? undefined\n : storedDate(revokedAtValue, \"Share session revocation time\")\n if (revokedAt && revokedAt.getTime() < createdAt.getTime()) {\n throw invalidRecord(\"Share session revocation time must not precede creation time.\")\n }\n\n return {\n id: identifier(input.id, \"Share session id\"),\n projectId: identifier(input.projectId, \"Project id\"),\n grantId: identifier(input.grantId, \"Share grant id\"),\n tokenHash: sha256(input.tokenHash, \"Share session token hash\"),\n createdAt,\n expiresAt,\n absoluteExpiresAt,\n ...(revokedAt === undefined ? {} : { revokedAt }),\n }\n } catch (error) {\n if (error instanceof ShareSessionStorageError) {\n if (error.code === \"invalid_record\") throw error\n throw invalidRecord(error.message.replace(/^\\[Sixb\\] /, \"\"), error)\n }\n throw error\n }\n}\n\nexport function normalizeGetShareSessionByIdInput(\n input: GetShareSessionByIdInput\n): GetShareSessionByIdInput {\n if (!isRecord(input)) throw invalidInput(\"Share session lookup input must be an object.\")\n return {\n projectId: identifier(input.projectId, \"Project id\"),\n id: identifier(input.id, \"Share session id\"),\n }\n}\n\nexport function normalizeRenewShareSessionIfValidInput(\n input: RenewShareSessionIfValidInput\n): RenewShareSessionIfValidInput {\n if (!isRecord(input)) throw invalidInput(\"Share session renewal input must be an object.\")\n const now = inputDate(input.now, \"Share session renewal time\")\n const expiresAt = inputDate(input.expiresAt, \"Requested Share session expiry\")\n if (expiresAt.getTime() <= now.getTime()) {\n throw invalidInput(\"Requested Share session expiry must be later than renewal time.\")\n }\n return {\n projectId: identifier(input.projectId, \"Project id\"),\n id: identifier(input.id, \"Share session id\"),\n grantId: identifier(input.grantId, \"Share grant id\"),\n tokenHash: sha256(input.tokenHash, \"Share session token hash\"),\n now,\n expiresAt,\n }\n}\n\nexport function normalizeRevokeShareSessionInput(\n input: RevokeShareSessionInput,\n createdAt?: Date\n): RevokeShareSessionInput {\n if (!isRecord(input)) throw invalidInput(\"Share session revocation input must be an object.\")\n const normalized = {\n projectId: identifier(input.projectId, \"Project id\"),\n id: identifier(input.id, \"Share session id\"),\n revokedAt: inputDate(input.revokedAt, \"Share session revocation time\"),\n }\n if (createdAt && normalized.revokedAt.getTime() < createdAt.getTime()) {\n throw invalidInput(\"Share session revocation time must not precede creation time.\")\n }\n return normalized\n}\n\nexport function cloneShareSessionRecord(input: ShareSessionRecord): ShareSessionRecord {\n return structuredClone(input)\n}\n\nfunction identifier(value: unknown, label: string): string {\n if (typeof value !== \"string\" || value.trim().length === 0 || value.includes(\"\\0\")) {\n throw invalidInput(`${label} must be a non-empty string without NUL bytes.`)\n }\n return value\n}\n\nfunction sha256(value: unknown, label: string): string {\n if (typeof value !== \"string\" || !SHA256_HEX.test(value)) {\n throw invalidInput(`${label} must be a lowercase SHA-256 hex digest.`)\n }\n return value\n}\n\nfunction inputDate(value: unknown, label: string): Date {\n if (!(value instanceof Date) || !Number.isFinite(value.getTime())) {\n throw invalidInput(`${label} must be a valid Date.`)\n }\n return new Date(value)\n}\n\nfunction storedDate(value: unknown, label: string): Date {\n const parsed =\n value instanceof Date\n ? new Date(value)\n : typeof value === \"string\"\n ? new Date(value)\n : new Date(Number.NaN)\n if (!Number.isFinite(parsed.getTime())) throw invalidRecord(`${label} is invalid.`)\n return parsed\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === \"object\" && value !== null && !Array.isArray(value)\n}\n\nfunction invalidInput(message: string, cause?: unknown): ShareSessionStorageError {\n return new ShareSessionStorageError(\"invalid_input\", `[Sixb] ${message}`, { cause })\n}\n\nfunction invalidRecord(message: string, cause?: unknown): ShareSessionStorageError {\n return new ShareSessionStorageError(\"invalid_record\", `[Sixb] ${message}`, { cause })\n}\n"
7
+ ],
8
+ "mappings": "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",
9
+ "debugId": "D3828EEEA2F9B76B64756E2164756E21",
10
+ "names": []
11
+ }
@@ -10,10 +10,6 @@ class AgentDefinitionError extends Error {
10
10
  name = "AgentDefinitionError";
11
11
  }
12
12
 
13
- class AgentMessageAdapterError extends Error {
14
- name = "AgentMessageAdapterError";
15
- }
16
-
17
13
  class AgentToolPublicError extends Error {
18
14
  name = "AgentToolPublicError";
19
15
  }
@@ -151,6 +147,6 @@ function invalidContext(message) {
151
147
  throw new AgentRequestError("invalid_context", `[Sixb] Invalid agent context: ${message}.`);
152
148
  }
153
149
 
154
- export { AgentDefinitionError, AgentMessageAdapterError, AgentToolPublicError, AgentToolResultValidationError, AgentRequestError, MAX_AGENT_CONTEXT_ENTRIES, MAX_AGENT_APP_STATE_ENTRY_BYTES, MAX_AGENT_APP_STATE_TOTAL_BYTES, agentContext, agentContextIdentity, agentContextFingerprint, normalizeAgentContextEntries };
150
+ export { AgentDefinitionError, AgentToolPublicError, AgentToolResultValidationError, AgentRequestError, MAX_AGENT_CONTEXT_ENTRIES, MAX_AGENT_APP_STATE_ENTRY_BYTES, MAX_AGENT_APP_STATE_TOTAL_BYTES, agentContext, agentContextIdentity, agentContextFingerprint, normalizeAgentContextEntries };
155
151
 
156
- //# debugId=0BA2036A5CD1F1D964756E2164756E21
152
+ //# debugId=202524EF09E2878864756E2164756E21
@@ -2,10 +2,10 @@
2
2
  "version": 3,
3
3
  "sources": ["../src/agents/errors.ts", "../src/agents/context.ts"],
4
4
  "sourcesContent": [
5
- "/**\n * Base error for the agents module. Specific subclasses extend this so callers\n * can catch any agent-scoped failure with a single `instanceof AgentDefinitionError` check.\n */\nexport class AgentDefinitionError extends Error {\n readonly name: string = \"AgentDefinitionError\"\n}\n\n/**\n * Raised by the message adapters. `fromUiMessage` is **total**: rather than silently dropping a part it\n * cannot model, it throws this — which both prevents data loss and pinpoints exactly when the\n * {@link AgentMessage} part union must be extended. It also fires on transient/streaming parts that\n * must never be persisted, and on out-of-contract (non-JSON) payloads.\n */\nexport class AgentMessageAdapterError extends Error {\n readonly name = \"AgentMessageAdapterError\"\n}\n\n/**\n * An agent-tool failure whose message is intentionally safe to expose to the model and persist in\n * the durable trace. Tool authors must keep the message free of credentials and internal details;\n * unknown errors remain masked by the worker.\n */\nexport class AgentToolPublicError extends Error {\n readonly name: string = \"AgentToolPublicError\"\n}\n\n/** Raised when an agent tool result cannot cross the durable message boundary. */\nexport class AgentToolResultValidationError extends Error {\n readonly name = \"AgentToolResultValidationError\"\n\n constructor(\n readonly toolName: string,\n readonly reason: string,\n options?: ErrorOptions\n ) {\n super(`[Sixb] Agent tool '${toolName}' returned an invalid result; ${reason}.`, options)\n }\n}\n\nexport type AgentRequestErrorCode =\n | \"agent_selector_removed\"\n | \"agent_not_found\"\n | \"model_not_found\"\n | \"invalid_model_selection\"\n | \"run_not_found\"\n | \"run_not_retryable\"\n | \"thread_not_found\"\n | \"active_run_exists\"\n | \"authority_not_inheritable\"\n | \"invalid_context\"\n | \"storage_unavailable\"\n\n/**\n * Raised by {@link requestAgentRun} (the trigger). Callers branch on `code` rather than message text\n * — e.g. the HTTP layer maps `active_run_exists` to 409 and `agent_not_found` to 404.\n */\nexport class AgentRequestError extends Error {\n readonly name = \"AgentRequestError\"\n\n constructor(\n readonly code: AgentRequestErrorCode,\n message: string\n ) {\n super(message)\n }\n}\n",
5
+ "/**\n * Base error for the agents module. Specific subclasses extend this so callers\n * can catch any agent-scoped failure with a single `instanceof AgentDefinitionError` check.\n */\nexport class AgentDefinitionError extends Error {\n readonly name: string = \"AgentDefinitionError\"\n}\n\n/**\n * An agent-tool failure whose message is intentionally safe to expose to the model and persist in\n * the durable trace. Tool authors must keep the message free of credentials and internal details;\n * unknown errors remain masked by the worker.\n */\nexport class AgentToolPublicError extends Error {\n readonly name: string = \"AgentToolPublicError\"\n}\n\n/** Raised when an agent tool result cannot cross the durable message boundary. */\nexport class AgentToolResultValidationError extends Error {\n readonly name = \"AgentToolResultValidationError\"\n\n constructor(\n readonly toolName: string,\n readonly reason: string,\n options?: ErrorOptions\n ) {\n super(`[Sixb] Agent tool '${toolName}' returned an invalid result; ${reason}.`, options)\n }\n}\n\nexport type AgentRequestErrorCode =\n | \"agent_selector_removed\"\n | \"agent_not_found\"\n | \"model_not_found\"\n | \"invalid_model_selection\"\n | \"run_not_found\"\n | \"run_not_retryable\"\n | \"thread_not_found\"\n | \"active_run_exists\"\n | \"authority_not_inheritable\"\n | \"invalid_context\"\n | \"storage_unavailable\"\n\n/**\n * Raised by {@link requestAgentRun} (the trigger). Callers branch on `code` rather than message text\n * — e.g. the HTTP layer maps `active_run_exists` to 409 and `agent_not_found` to 404.\n */\nexport class AgentRequestError extends Error {\n readonly name = \"AgentRequestError\"\n\n constructor(\n readonly code: AgentRequestErrorCode,\n message: string\n ) {\n super(message)\n }\n}\n",
6
6
  "import type { JsonValue } from \"../json\"\nimport { cloneJsonValue, getInvalidJsonValueReason, stableJsonStringify } from \"../json\"\nimport type { ObjectRef } from \"../ontology/refs\"\nimport { AgentRequestError } from \"./errors\"\n\nexport type AgentContextInput =\n | { readonly kind: \"object\"; readonly ref: ObjectRef }\n | {\n readonly kind: \"app-state\"\n readonly id: string\n readonly label: string\n readonly description: string\n readonly value: JsonValue\n }\n\nexport type AgentContextOrigin = \"ambient\" | \"explicit\"\n\nexport interface AgentContextEntryInput {\n readonly context: AgentContextInput\n readonly origin: AgentContextOrigin\n}\n\n/** Durable user-message part. Origin is display provenance, never an authorization grant. */\nexport interface AgentContextPart extends AgentContextEntryInput {\n readonly type: \"context\"\n}\n\nexport const MAX_AGENT_CONTEXT_ENTRIES = 12\nexport const MAX_AGENT_APP_STATE_ENTRY_BYTES = 16 * 1024\nexport const MAX_AGENT_APP_STATE_TOTAL_BYTES = 64 * 1024\n\n/** Typed constructors for context values shared by custom apps and agent clients. */\nexport const agentContext = {\n object<const TObjectTypeId extends string>(\n objectType: { readonly id: TObjectTypeId },\n primaryId: string\n ) {\n return {\n kind: \"object\" as const,\n ref: { objectTypeId: objectType.id, primaryId },\n }\n },\n\n appState<const TValue extends JsonValue>(\n id: string,\n input: {\n readonly label: string\n readonly description: string\n readonly value: TValue\n }\n ) {\n return { kind: \"app-state\" as const, id, ...input }\n },\n}\n\n/** Stable identity shared by core deduplication and context-aware clients. */\nexport function agentContextIdentity(context: AgentContextInput): string {\n return context.kind === \"object\"\n ? `object:${encodeURIComponent(context.ref.objectTypeId)}:${encodeURIComponent(context.ref.primaryId)}`\n : `app-state:${encodeURIComponent(context.id)}`\n}\n\n/** Stable semantic key for client-side comparisons. */\nexport function agentContextFingerprint(context: AgentContextInput): string {\n return stableJsonStringify(context)\n}\n\n/**\n * Validate transport-independent context rules and clone mutable app state before it can become\n * durable. Object existence and visibility are resolved separately because they require a runtime.\n */\nexport function normalizeAgentContextEntries(\n input: readonly AgentContextEntryInput[] | undefined\n): readonly AgentContextEntryInput[] {\n if (input === undefined) return []\n if (!Array.isArray(input)) invalidContext(\"context must be an array\")\n if (input.length > MAX_AGENT_CONTEXT_ENTRIES) {\n invalidContext(`context cannot contain more than ${MAX_AGENT_CONTEXT_ENTRIES} entries`)\n }\n\n const entries: AgentContextEntryInput[] = []\n const byIdentity = new Map<string, string>()\n let totalAppStateBytes = 0\n\n for (const [index, rawEntry] of input.entries()) {\n const entry = normalizeEntry(rawEntry, index)\n const identity = agentContextIdentity(entry.context)\n const serialized = stableJsonStringify(entry)\n const existing = byIdentity.get(identity)\n\n if (existing !== undefined) {\n if (existing === serialized) continue\n invalidContext(`context contains conflicting entries for '${identity}'`)\n }\n\n if (entry.context.kind === \"app-state\") {\n const bytes = utf8ByteLength(serialized)\n if (bytes > MAX_AGENT_APP_STATE_ENTRY_BYTES) {\n invalidContext(\n `context entry '${identity}' exceeds the ${MAX_AGENT_APP_STATE_ENTRY_BYTES}-byte limit`\n )\n }\n totalAppStateBytes += bytes\n if (totalAppStateBytes > MAX_AGENT_APP_STATE_TOTAL_BYTES) {\n invalidContext(\n `app-state context exceeds the ${MAX_AGENT_APP_STATE_TOTAL_BYTES}-byte message limit`\n )\n }\n }\n\n byIdentity.set(identity, serialized)\n entries.push(entry)\n }\n\n return entries\n}\n\nfunction normalizeEntry(rawEntry: unknown, index: number): AgentContextEntryInput {\n if (!isRecord(rawEntry)) invalidContext(`context[${index}] must be an object`)\n if (rawEntry.origin !== \"ambient\" && rawEntry.origin !== \"explicit\") {\n invalidContext(`context[${index}].origin must be 'ambient' or 'explicit'`)\n }\n if (!isRecord(rawEntry.context)) invalidContext(`context[${index}].context must be an object`)\n\n const context = rawEntry.context\n if (context.kind === \"object\") {\n if (!isRecord(context.ref)) invalidContext(`context[${index}].context.ref must be an object`)\n const objectTypeId = requireNonEmptyString(\n context.ref.objectTypeId,\n `context[${index}].context.ref.objectTypeId`\n )\n const primaryId = requireNonEmptyString(\n context.ref.primaryId,\n `context[${index}].context.ref.primaryId`\n )\n return {\n context: { kind: \"object\", ref: { objectTypeId, primaryId } },\n origin: rawEntry.origin,\n }\n }\n\n if (context.kind === \"app-state\") {\n const id = requireNonEmptyString(context.id, `context[${index}].context.id`)\n const label = requireNonEmptyString(context.label, `context[${index}].context.label`)\n const description = requireNonEmptyString(\n context.description,\n `context[${index}].context.description`\n )\n const reason = getInvalidJsonValueReason(context.value, `context[${index}].context.value`)\n if (reason) {\n invalidContext(`context[${index}].context.value must be a JSON value; ${reason}`)\n }\n return {\n context: {\n kind: \"app-state\",\n id,\n label,\n description,\n value: cloneJsonValue(context.value as JsonValue),\n },\n origin: rawEntry.origin,\n }\n }\n\n invalidContext(`context[${index}].context.kind must be 'object' or 'app-state'`)\n}\n\nfunction requireNonEmptyString(value: unknown, label: string): string {\n if (typeof value !== \"string\" || value.trim().length === 0) {\n invalidContext(`${label} must be a non-empty string`)\n }\n return value\n}\n\nfunction utf8ByteLength(value: string): number {\n return new TextEncoder().encode(value).byteLength\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === \"object\" && value !== null && !Array.isArray(value)\n}\n\nfunction invalidContext(message: string): never {\n throw new AgentRequestError(\"invalid_context\", `[Sixb] Invalid agent context: ${message}.`)\n}\n"
7
7
  ],
8
- "mappings": ";;;;;;;;AAIO,MAAM,6BAA6B,MAAM;AAAA,EACrC,OAAe;AAC1B;AAAA;AAQO,MAAM,iCAAiC,MAAM;AAAA,EACzC,OAAO;AAClB;AAAA;AAOO,MAAM,6BAA6B,MAAM;AAAA,EACrC,OAAe;AAC1B;AAAA;AAGO,MAAM,uCAAuC,MAAM;AAAA,EAI7C;AAAA,EACA;AAAA,EAJF,OAAO;AAAA,EAEhB,WAAW,CACA,UACA,QACT,SACA;AAAA,IACA,MAAM,sBAAsB,yCAAyC,WAAW,OAAO;AAAA,IAJ9E;AAAA,IACA;AAAA;AAKb;AAAA;AAmBO,MAAM,0BAA0B,MAAM;AAAA,EAIhC;AAAA,EAHF,OAAO;AAAA,EAEhB,WAAW,CACA,MACT,SACA;AAAA,IACA,MAAM,OAAO;AAAA,IAHJ;AAAA;AAKb;;;ACvCO,IAAM,4BAA4B;AAClC,IAAM,kCAAkC,KAAK;AAC7C,IAAM,kCAAkC,KAAK;AAG7C,IAAM,eAAe;AAAA,EAC1B,MAA0C,CACxC,YACA,WACA;AAAA,IACA,OAAO;AAAA,MACL,MAAM;AAAA,MACN,KAAK,EAAE,cAAc,WAAW,IAAI,UAAU;AAAA,IAChD;AAAA;AAAA,EAGF,QAAwC,CACtC,IACA,OAKA;AAAA,IACA,OAAO,EAAE,MAAM,aAAsB,OAAO,MAAM;AAAA;AAEtD;AAGO,SAAS,oBAAoB,CAAC,SAAoC;AAAA,EACvE,OAAO,QAAQ,SAAS,WACpB,UAAU,mBAAmB,QAAQ,IAAI,YAAY,KAAK,mBAAmB,QAAQ,IAAI,SAAS,MAClG,aAAa,mBAAmB,QAAQ,EAAE;AAAA;AAIzC,SAAS,uBAAuB,CAAC,SAAoC;AAAA,EAC1E,OAAO,oBAAoB,OAAO;AAAA;AAO7B,SAAS,4BAA4B,CAC1C,OACmC;AAAA,EACnC,IAAI,UAAU;AAAA,IAAW,OAAO,CAAC;AAAA,EACjC,IAAI,CAAC,MAAM,QAAQ,KAAK;AAAA,IAAG,eAAe,0BAA0B;AAAA,EACpE,IAAI,MAAM,SAAS,2BAA2B;AAAA,IAC5C,eAAe,oCAAoC,mCAAmC;AAAA,EACxF;AAAA,EAEA,MAAM,UAAoC,CAAC;AAAA,EAC3C,MAAM,aAAa,IAAI;AAAA,EACvB,IAAI,qBAAqB;AAAA,EAEzB,YAAY,OAAO,aAAa,MAAM,QAAQ,GAAG;AAAA,IAC/C,MAAM,QAAQ,eAAe,UAAU,KAAK;AAAA,IAC5C,MAAM,WAAW,qBAAqB,MAAM,OAAO;AAAA,IACnD,MAAM,aAAa,oBAAoB,KAAK;AAAA,IAC5C,MAAM,WAAW,WAAW,IAAI,QAAQ;AAAA,IAExC,IAAI,aAAa,WAAW;AAAA,MAC1B,IAAI,aAAa;AAAA,QAAY;AAAA,MAC7B,eAAe,6CAA6C,WAAW;AAAA,IACzE;AAAA,IAEA,IAAI,MAAM,QAAQ,SAAS,aAAa;AAAA,MACtC,MAAM,QAAQ,eAAe,UAAU;AAAA,MACvC,IAAI,QAAQ,iCAAiC;AAAA,QAC3C,eACE,kBAAkB,yBAAyB,4CAC7C;AAAA,MACF;AAAA,MACA,sBAAsB;AAAA,MACtB,IAAI,qBAAqB,iCAAiC;AAAA,QACxD,eACE,iCAAiC,oDACnC;AAAA,MACF;AAAA,IACF;AAAA,IAEA,WAAW,IAAI,UAAU,UAAU;AAAA,IACnC,QAAQ,KAAK,KAAK;AAAA,EACpB;AAAA,EAEA,OAAO;AAAA;AAGT,SAAS,cAAc,CAAC,UAAmB,OAAuC;AAAA,EAChF,IAAI,CAAC,SAAS,QAAQ;AAAA,IAAG,eAAe,WAAW,0BAA0B;AAAA,EAC7E,IAAI,SAAS,WAAW,aAAa,SAAS,WAAW,YAAY;AAAA,IACnE,eAAe,WAAW,+CAA+C;AAAA,EAC3E;AAAA,EACA,IAAI,CAAC,SAAS,SAAS,OAAO;AAAA,IAAG,eAAe,WAAW,kCAAkC;AAAA,EAE7F,MAAM,UAAU,SAAS;AAAA,EACzB,IAAI,QAAQ,SAAS,UAAU;AAAA,IAC7B,IAAI,CAAC,SAAS,QAAQ,GAAG;AAAA,MAAG,eAAe,WAAW,sCAAsC;AAAA,IAC5F,MAAM,eAAe,sBACnB,QAAQ,IAAI,cACZ,WAAW,iCACb;AAAA,IACA,MAAM,YAAY,sBAChB,QAAQ,IAAI,WACZ,WAAW,8BACb;AAAA,IACA,OAAO;AAAA,MACL,SAAS,EAAE,MAAM,UAAU,KAAK,EAAE,cAAc,UAAU,EAAE;AAAA,MAC5D,QAAQ,SAAS;AAAA,IACnB;AAAA,EACF;AAAA,EAEA,IAAI,QAAQ,SAAS,aAAa;AAAA,IAChC,MAAM,KAAK,sBAAsB,QAAQ,IAAI,WAAW,mBAAmB;AAAA,IAC3E,MAAM,QAAQ,sBAAsB,QAAQ,OAAO,WAAW,sBAAsB;AAAA,IACpF,MAAM,cAAc,sBAClB,QAAQ,aACR,WAAW,4BACb;AAAA,IACA,MAAM,SAAS,0BAA0B,QAAQ,OAAO,WAAW,sBAAsB;AAAA,IACzF,IAAI,QAAQ;AAAA,MACV,eAAe,WAAW,8CAA8C,QAAQ;AAAA,IAClF;AAAA,IACA,OAAO;AAAA,MACL,SAAS;AAAA,QACP,MAAM;AAAA,QACN;AAAA,QACA;AAAA,QACA;AAAA,QACA,OAAO,eAAe,QAAQ,KAAkB;AAAA,MAClD;AAAA,MACA,QAAQ,SAAS;AAAA,IACnB;AAAA,EACF;AAAA,EAEA,eAAe,WAAW,qDAAqD;AAAA;AAGjF,SAAS,qBAAqB,CAAC,OAAgB,OAAuB;AAAA,EACpE,IAAI,OAAO,UAAU,YAAY,MAAM,KAAK,EAAE,WAAW,GAAG;AAAA,IAC1D,eAAe,GAAG,kCAAkC;AAAA,EACtD;AAAA,EACA,OAAO;AAAA;AAGT,SAAS,cAAc,CAAC,OAAuB;AAAA,EAC7C,OAAO,IAAI,YAAY,EAAE,OAAO,KAAK,EAAE;AAAA;AAGzC,SAAS,QAAQ,CAAC,OAAkD;AAAA,EAClE,OAAO,OAAO,UAAU,YAAY,UAAU,QAAQ,CAAC,MAAM,QAAQ,KAAK;AAAA;AAG5E,SAAS,cAAc,CAAC,SAAwB;AAAA,EAC9C,MAAM,IAAI,kBAAkB,mBAAmB,iCAAiC,UAAU;AAAA;",
9
- "debugId": "0BA2036A5CD1F1D964756E2164756E21",
8
+ "mappings": "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",
9
+ "debugId": "202524EF09E2878864756E2164756E21",
10
10
  "names": []
11
11
  }
@@ -1,7 +1,7 @@
1
1
  // @bun
2
2
  import {
3
3
  findPrimitiveRunExecution
4
- } from "./chunk-3kv70xwp.js";
4
+ } from "./chunk-j1sbhm7p.js";
5
5
 
6
6
  // src/storage/webhook-runs/errors.ts
7
7
  class WebhookRunError extends Error {
@@ -78,68 +78,98 @@ var SIXB_API_ROUTES = [
78
78
  accessToken: true,
79
79
  agentApi: false
80
80
  },
81
+ {
82
+ operationId: "issueSharedAccessGrant",
83
+ method: "POST",
84
+ path: "/api/share-grants",
85
+ accessToken: true,
86
+ agentApi: false
87
+ },
88
+ {
89
+ operationId: "listSharedAccessGrants",
90
+ method: "GET",
91
+ path: "/api/share-grants",
92
+ accessToken: true,
93
+ agentApi: false
94
+ },
95
+ {
96
+ operationId: "revokeSharedAccessGrant",
97
+ method: "DELETE",
98
+ path: "/api/share-grants/:grantId",
99
+ accessToken: true,
100
+ agentApi: false
101
+ },
81
102
  {
82
103
  operationId: "listObjectTypes",
83
104
  method: "GET",
84
105
  path: "/api/object-types",
85
106
  accessToken: true,
86
- agentApi: true
107
+ agentApi: true,
108
+ sharedSession: true
87
109
  },
88
110
  {
89
111
  operationId: "getObjectType",
90
112
  method: "GET",
91
113
  path: "/api/object-types/:objectTypeId",
92
114
  accessToken: true,
93
- agentApi: true
115
+ agentApi: true,
116
+ sharedSession: true
94
117
  },
95
118
  {
96
119
  operationId: "listObjects",
97
120
  method: "GET",
98
121
  path: "/api/objects",
99
122
  accessToken: true,
100
- agentApi: true
123
+ agentApi: true,
124
+ sharedSession: true
101
125
  },
102
126
  {
103
127
  operationId: "queryObjects",
104
128
  method: "POST",
105
129
  path: "/api/objects/query",
106
130
  accessToken: true,
107
- agentApi: true
131
+ agentApi: true,
132
+ sharedSession: true
108
133
  },
109
134
  {
110
135
  operationId: "queryObjectLinks",
111
136
  method: "POST",
112
137
  path: "/api/objects/query/links",
113
138
  accessToken: true,
114
- agentApi: true
139
+ agentApi: true,
140
+ sharedSession: true
115
141
  },
116
142
  {
117
143
  operationId: "countObjects",
118
144
  method: "POST",
119
145
  path: "/api/objects/query/count",
120
146
  accessToken: true,
121
- agentApi: true
147
+ agentApi: true,
148
+ sharedSession: true
122
149
  },
123
150
  {
124
151
  operationId: "existsObjects",
125
152
  method: "POST",
126
153
  path: "/api/objects/query/exists",
127
154
  accessToken: true,
128
- agentApi: true
155
+ agentApi: true,
156
+ sharedSession: true
129
157
  },
130
158
  {
131
159
  operationId: "facetObjects",
132
160
  method: "POST",
133
161
  path: "/api/objects/query/facets",
134
162
  accessToken: true,
135
- agentApi: true
163
+ agentApi: true,
164
+ sharedSession: true
136
165
  },
137
166
  {
138
167
  operationId: "getObject",
139
168
  method: "GET",
140
169
  path: "/api/objects/:objectTypeId/:objectId",
141
170
  accessToken: true,
142
- agentApi: true
171
+ agentApi: true,
172
+ sharedSession: true
143
173
  },
144
174
  {
145
175
  operationId: "upsertObject",
@@ -174,56 +204,64 @@ var SIXB_API_ROUTES = [
174
204
  method: "POST",
175
205
  path: "/api/telemetry/history",
176
206
  accessToken: true,
177
- agentApi: true
207
+ agentApi: true,
208
+ sharedSession: true
178
209
  },
179
210
  {
180
211
  operationId: "getTelemetryHistory",
181
212
  method: "GET",
182
213
  path: "/api/objects/:objectTypeId/:objectId/telemetry/:propertyId/history",
183
214
  accessToken: true,
184
- agentApi: true
215
+ agentApi: true,
216
+ sharedSession: true
185
217
  },
186
218
  {
187
219
  operationId: "getLatestTelemetry",
188
220
  method: "GET",
189
221
  path: "/api/objects/:objectTypeId/:objectId/telemetry/:propertyId/latest",
190
222
  accessToken: true,
191
- agentApi: true
223
+ agentApi: true,
224
+ sharedSession: true
192
225
  },
193
226
  {
194
227
  operationId: "getObjectFileContent",
195
228
  method: "GET",
196
229
  path: "/api/objects/:objectTypeId/:objectId/files/content",
197
230
  accessToken: true,
198
- agentApi: true
231
+ agentApi: true,
232
+ sharedSession: true
199
233
  },
200
234
  {
201
235
  operationId: "headObjectFileContent",
202
236
  method: "HEAD",
203
237
  path: "/api/objects/:objectTypeId/:objectId/files/content",
204
238
  accessToken: true,
205
- agentApi: false
239
+ agentApi: false,
240
+ sharedSession: true
206
241
  },
207
242
  {
208
243
  operationId: "listActions",
209
244
  method: "GET",
210
245
  path: "/api/actions",
211
246
  accessToken: true,
212
- agentApi: true
247
+ agentApi: true,
248
+ sharedSession: true
213
249
  },
214
250
  {
215
251
  operationId: "getAction",
216
252
  method: "GET",
217
253
  path: "/api/actions/:actionId",
218
254
  accessToken: true,
219
- agentApi: true
255
+ agentApi: true,
256
+ sharedSession: true
220
257
  },
221
258
  {
222
259
  operationId: "requestAction",
223
260
  method: "POST",
224
261
  path: "/api/actions/:actionId",
225
262
  accessToken: true,
226
- agentApi: true
263
+ agentApi: true,
264
+ sharedSession: true
227
265
  },
228
266
  {
229
267
  operationId: "uploadFileRaw",
@@ -244,7 +282,8 @@ var SIXB_API_ROUTES = [
244
282
  method: "GET",
245
283
  path: "/api/action-runs/:runId",
246
284
  accessToken: true,
247
- agentApi: true
285
+ agentApi: true,
286
+ sharedSession: true
248
287
  },
249
288
  {
250
289
  operationId: "getActionRunFileContent",
@@ -356,7 +395,8 @@ var SIXB_API_ROUTES = [
356
395
  method: "GET",
357
396
  path: "/api/objects/search",
358
397
  accessToken: true,
359
- agentApi: true
398
+ agentApi: true,
399
+ sharedSession: true
360
400
  },
361
401
  {
362
402
  operationId: "listEvents",
@@ -468,4 +508,4 @@ function normalizeRoutePath(pathname) {
468
508
 
469
509
  export { SIXB_API_ROUTES, pathSegmentsFor, matchesPathPattern, normalizeRoutePath };
470
510
 
471
- //# debugId=41C2B1BD60423DB364756E2164756E21
511
+ //# debugId=27FCBA73C4A04A7064756E2164756E21
@@ -0,0 +1,11 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/http/api-routes.ts", "../src/http/route-pattern.ts"],
4
+ "sourcesContent": [
5
+ "/**\n * The single source of truth for the Sixb HTTP API surface and its auth capabilities.\n *\n * Two views are derived from this one table:\n * - `AGENT_API_ROUTES` (@sixb/core agent gateway) = the `agentApi` rows, projected to {method, path}.\n * - `ACCESS_TOKEN_ROUTES` (@sixb/server bearer boundary) = the `accessToken` rows, with operationId.\n *\n * Because both views are projections of this table, the agent gateway allow-list is structurally a\n * subset of the bearer boundary — the invariant below enforces `agentApi ⇒ accessToken` at load\n * time. This table lives in @sixb/core (never @sixb/server) because @sixb/server depends on core,\n * not the reverse; the operationId strings are opaque here.\n */\nexport interface SixbApiRoute {\n /** OpenAPI operationId — the server keys its bearer security requirement off this. */\n readonly operationId: string\n readonly method: string\n readonly path: string\n /** The route accepts a bearer access token (enforced by the server access-token boundary). */\n readonly accessToken: boolean\n /** The route is proxied by the agent API gateway (a strict subset of the accessToken routes). */\n readonly agentApi: boolean\n /** The canonical handler may run under an explicitly selected shared session. */\n readonly sharedSession?: boolean\n}\n\nexport const SIXB_API_ROUTES: readonly SixbApiRoute[] = [\n {\n operationId: \"getProjectInfo\",\n method: \"GET\",\n path: \"/api/project\",\n accessToken: true,\n agentApi: true,\n },\n // Token and service-account management is bearer-capable so the CLI can authenticate with a\n // personal access token. It is NOT exposed to agents. The runtime still confines every operation\n // to the caller's own groups, and service-account tokens are rejected (only user principals may\n // manage credentials).\n {\n operationId: \"getAuthAccessManagementOptions\",\n method: \"GET\",\n path: \"/api/auth/access-management-options\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"listAuthAccessTokens\",\n method: \"GET\",\n path: \"/api/auth/access-tokens\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"createAuthPersonalAccessToken\",\n method: \"POST\",\n path: \"/api/auth/access-tokens\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"revokeAuthAccessToken\",\n method: \"POST\",\n path: \"/api/auth/access-tokens/:tokenId/revoke\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"listAuthServiceAccounts\",\n method: \"GET\",\n path: \"/api/auth/service-accounts\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"createAuthServiceAccount\",\n method: \"POST\",\n path: \"/api/auth/service-accounts\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"disableAuthServiceAccount\",\n method: \"POST\",\n path: \"/api/auth/service-accounts/:serviceAccountId/disable\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"listAuthServiceAccountAccessTokens\",\n method: \"GET\",\n path: \"/api/auth/service-accounts/:serviceAccountId/access-tokens\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"createAuthServiceAccountAccessToken\",\n method: \"POST\",\n path: \"/api/auth/service-accounts/:serviceAccountId/access-tokens\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"revokeAuthServiceAccountAccessToken\",\n method: \"POST\",\n path: \"/api/auth/service-accounts/:serviceAccountId/access-tokens/:tokenId/revoke\",\n accessToken: true,\n agentApi: false,\n },\n // Share lifecycle management is bearer-capable for programmatic administration but never\n // agent-proxied. Shared sessions themselves use the canonical object/action routes and land in\n // the request boundary separately.\n {\n operationId: \"issueSharedAccessGrant\",\n method: \"POST\",\n path: \"/api/share-grants\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"listSharedAccessGrants\",\n method: \"GET\",\n path: \"/api/share-grants\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"revokeSharedAccessGrant\",\n method: \"DELETE\",\n path: \"/api/share-grants/:grantId\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"listObjectTypes\",\n method: \"GET\",\n path: \"/api/object-types\",\n accessToken: true,\n agentApi: true,\n sharedSession: true,\n },\n {\n operationId: \"getObjectType\",\n method: \"GET\",\n path: \"/api/object-types/:objectTypeId\",\n accessToken: true,\n agentApi: true,\n sharedSession: true,\n },\n {\n operationId: \"listObjects\",\n method: \"GET\",\n path: \"/api/objects\",\n accessToken: true,\n agentApi: true,\n sharedSession: true,\n },\n {\n operationId: \"queryObjects\",\n method: \"POST\",\n path: \"/api/objects/query\",\n accessToken: true,\n agentApi: true,\n sharedSession: true,\n },\n {\n operationId: \"queryObjectLinks\",\n method: \"POST\",\n path: \"/api/objects/query/links\",\n accessToken: true,\n agentApi: true,\n sharedSession: true,\n },\n {\n operationId: \"countObjects\",\n method: \"POST\",\n path: \"/api/objects/query/count\",\n accessToken: true,\n agentApi: true,\n sharedSession: true,\n },\n {\n operationId: \"existsObjects\",\n method: \"POST\",\n path: \"/api/objects/query/exists\",\n accessToken: true,\n agentApi: true,\n sharedSession: true,\n },\n {\n operationId: \"facetObjects\",\n method: \"POST\",\n path: \"/api/objects/query/facets\",\n accessToken: true,\n agentApi: true,\n sharedSession: true,\n },\n {\n operationId: \"getObject\",\n method: \"GET\",\n path: \"/api/objects/:objectTypeId/:objectId\",\n accessToken: true,\n agentApi: true,\n sharedSession: true,\n },\n // The four write routes. Bearer-capable because their execution facade enforces authorization\n // (`edit:object` / `append:telemetry`), which is exactly the precondition this table requires.\n // NOT agent-proxied: letting an agent turn write objects on its own is a separate decision, and\n // the gateway already hands routes an execution SDK, so flipping `agentApi` later needs no\n // authorization work — only that decision.\n {\n operationId: \"upsertObject\",\n method: \"PUT\",\n path: \"/api/objects/:objectTypeId/:objectId\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"upsertObjectLink\",\n method: \"PUT\",\n path: \"/api/objects/:objectTypeId/:objectId/links/:linkId\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"removeObjectLink\",\n method: \"DELETE\",\n path: \"/api/objects/:objectTypeId/:objectId/links/:linkId\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"appendTelemetry\",\n method: \"POST\",\n path: \"/api/objects/:objectTypeId/:objectId/telemetry/:propertyId\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"getBulkTelemetryHistory\",\n method: \"POST\",\n path: \"/api/telemetry/history\",\n accessToken: true,\n agentApi: true,\n sharedSession: true,\n },\n {\n operationId: \"getTelemetryHistory\",\n method: \"GET\",\n path: \"/api/objects/:objectTypeId/:objectId/telemetry/:propertyId/history\",\n accessToken: true,\n agentApi: true,\n sharedSession: true,\n },\n {\n operationId: \"getLatestTelemetry\",\n method: \"GET\",\n path: \"/api/objects/:objectTypeId/:objectId/telemetry/:propertyId/latest\",\n accessToken: true,\n agentApi: true,\n sharedSession: true,\n },\n {\n operationId: \"getObjectFileContent\",\n method: \"GET\",\n path: \"/api/objects/:objectTypeId/:objectId/files/content\",\n accessToken: true,\n agentApi: true,\n sharedSession: true,\n },\n {\n // Bearer-capable (CLI/programmatic existence + range probes) but NOT agent-proxied: the agent\n // API gateway only forwards GET/POST, and an agent gains nothing from HEAD over GET (a file's\n // size already travels in its FileRef). Keeping this agentApi:true would throw at gateway\n // registration (\"Unsupported agent API gateway method 'HEAD'\") and stop the server booting.\n operationId: \"headObjectFileContent\",\n method: \"HEAD\",\n path: \"/api/objects/:objectTypeId/:objectId/files/content\",\n accessToken: true,\n agentApi: false,\n sharedSession: true,\n },\n {\n operationId: \"listActions\",\n method: \"GET\",\n path: \"/api/actions\",\n accessToken: true,\n agentApi: true,\n sharedSession: true,\n },\n {\n operationId: \"getAction\",\n method: \"GET\",\n path: \"/api/actions/:actionId\",\n accessToken: true,\n agentApi: true,\n sharedSession: true,\n },\n {\n operationId: \"requestAction\",\n method: \"POST\",\n path: \"/api/actions/:actionId\",\n accessToken: true,\n agentApi: true,\n sharedSession: true,\n },\n {\n operationId: \"uploadFileRaw\",\n method: \"POST\",\n path: \"/api/files\",\n accessToken: true,\n agentApi: true,\n },\n {\n operationId: \"listActionRuns\",\n method: \"GET\",\n path: \"/api/action-runs\",\n accessToken: true,\n agentApi: true,\n },\n {\n operationId: \"getActionRun\",\n method: \"GET\",\n path: \"/api/action-runs/:runId\",\n accessToken: true,\n agentApi: true,\n sharedSession: true,\n },\n {\n operationId: \"getActionRunFileContent\",\n method: \"GET\",\n path: \"/api/action-runs/:runId/files/content\",\n accessToken: true,\n agentApi: true,\n },\n {\n operationId: \"headActionRunFileContent\",\n method: \"HEAD\",\n path: \"/api/action-runs/:runId/files/content\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"listWorkflows\",\n method: \"GET\",\n path: \"/api/workflows\",\n accessToken: true,\n agentApi: true,\n },\n {\n operationId: \"getWorkflow\",\n method: \"GET\",\n path: \"/api/workflows/:workflowId\",\n accessToken: true,\n agentApi: true,\n },\n {\n operationId: \"requestWorkflowRun\",\n method: \"POST\",\n path: \"/api/workflows/:workflowId/runs\",\n accessToken: true,\n agentApi: true,\n },\n {\n operationId: \"listWorkflowRuns\",\n method: \"GET\",\n path: \"/api/workflow-runs\",\n accessToken: true,\n agentApi: true,\n },\n {\n operationId: \"getWorkflowRun\",\n method: \"GET\",\n path: \"/api/workflow-runs/:runId\",\n accessToken: true,\n agentApi: true,\n },\n {\n operationId: \"cancelWorkflowRun\",\n method: \"POST\",\n path: \"/api/workflow-runs/:runId/cancel\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"getWorkflowAgentNodeExecution\",\n method: \"GET\",\n path: \"/api/workflow-runs/:runId/nodes/:nodeKey/agent-execution\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"getWorkflowRunFileContent\",\n method: \"GET\",\n path: \"/api/workflow-runs/:runId/files/content\",\n accessToken: true,\n agentApi: true,\n },\n {\n operationId: \"headWorkflowRunFileContent\",\n method: \"HEAD\",\n path: \"/api/workflow-runs/:runId/files/content\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"getWorkflowNodeRunFileContent\",\n method: \"GET\",\n path: \"/api/workflow-runs/:runId/nodes/:nodeKey/files/content\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"headWorkflowNodeRunFileContent\",\n method: \"HEAD\",\n path: \"/api/workflow-runs/:runId/nodes/:nodeKey/files/content\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"getAgentMessageFileContent\",\n method: \"GET\",\n path: \"/api/agent-threads/:threadId/messages/:messageId/files/content\",\n accessToken: true,\n agentApi: true,\n },\n {\n operationId: \"headAgentMessageFileContent\",\n method: \"HEAD\",\n path: \"/api/agent-threads/:threadId/messages/:messageId/files/content\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"searchObjects\",\n method: \"GET\",\n path: \"/api/objects/search\",\n accessToken: true,\n agentApi: true,\n sharedSession: true,\n },\n {\n operationId: \"listEvents\",\n method: \"GET\",\n path: \"/api/events\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"listLogs\",\n method: \"GET\",\n path: \"/api/logs\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"getAiAccountingOverview\",\n method: \"GET\",\n path: \"/api/ai/accounting/overview\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"listAiModelCalls\",\n method: \"GET\",\n path: \"/api/ai/model-calls\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"listAiModelCallGroups\",\n method: \"GET\",\n path: \"/api/ai/model-call-groups\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"listAiLimitPolicies\",\n method: \"GET\",\n path: \"/api/ai/limits\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"getAiLimitStatus\",\n method: \"GET\",\n path: \"/api/ai/limits/status\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"getAiLimitSubjectOptions\",\n method: \"GET\",\n path: \"/api/ai/limits/subjects\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"createAiLimitPolicy\",\n method: \"POST\",\n path: \"/api/ai/limits\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"updateAiLimitPolicy\",\n method: \"PUT\",\n path: \"/api/ai/limits/:limitId\",\n accessToken: true,\n agentApi: false,\n },\n {\n operationId: \"deleteAiLimitPolicy\",\n method: \"DELETE\",\n path: \"/api/ai/limits/:limitId\",\n accessToken: true,\n agentApi: false,\n },\n]\n\n// Enforce the subset invariant at module load: a gateway-proxied route must also be a bearer route,\n// or the gateway would expose a surface the access-token boundary does not recognize.\nfor (const route of SIXB_API_ROUTES) {\n if (route.agentApi && !route.accessToken) {\n throw new Error(\n `[Sixb] agent API route '${route.method} ${route.path}' must also be an access-token route.`\n )\n }\n}\n",
6
+ "/**\n * Shared HTTP route-pattern matching. Used by both the agent API gateway allow-list (@sixb/core)\n * and the server's access-token boundary (@sixb/server) so the two never drift.\n */\n\n/** Split a path into its non-empty segments (drops leading/trailing/empty parts). */\nexport function pathSegmentsFor(pathname: string): string[] {\n return pathname.split(\"/\").filter(Boolean)\n}\n\n/**\n * Match a concrete pathname against a route pattern. A `:param` pattern segment matches any single\n * non-empty segment; every other segment must match exactly. Segment counts must be equal.\n */\nexport function matchesPathPattern(pathname: string, pattern: string): boolean {\n const pathSegments = pathSegmentsFor(pathname)\n const patternSegments = pathSegmentsFor(pattern)\n\n if (pathSegments.length !== patternSegments.length) {\n return false\n }\n\n return patternSegments.every((patternSegment, index) => {\n if (patternSegment.startsWith(\":\")) {\n return pathSegments[index] !== \"\"\n }\n return patternSegment === pathSegments[index]\n })\n}\n\n/** Strip a single trailing slash so `/api/foo` and `/api/foo/` compare equal (leaves \"/\" alone). */\nexport function normalizeRoutePath(pathname: string): string {\n if (pathname.length > 1 && pathname.endsWith(\"/\")) {\n return pathname.slice(0, -1)\n }\n return pathname\n}\n"
7
+ ],
8
+ "mappings": "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",
9
+ "debugId": "27FCBA73C4A04A7064756E2164756E21",
10
+ "names": []
11
+ }