@abloatai/transaction 0.57.0 → 0.58.0

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 (737) hide show
  1. package/CONVENTIONS.md +51 -41
  2. package/README.md +3 -1
  3. package/dist/ai-sdk/modelTools.d.ts +3 -3
  4. package/dist/ai-sdk/modelTools.d.ts.map +1 -1
  5. package/dist/ai-sdk/modelTools.js +1 -1
  6. package/dist/ai-sdk/modelTools.js.map +1 -1
  7. package/dist/ai-sdk/updateTool.d.ts +5 -7
  8. package/dist/ai-sdk/updateTool.d.ts.map +1 -1
  9. package/dist/ai-sdk/updateTool.js +3 -5
  10. package/dist/ai-sdk/updateTool.js.map +1 -1
  11. package/dist/auth/capability.d.ts +5 -0
  12. package/dist/auth/capability.d.ts.map +1 -1
  13. package/dist/auth/capability.js +5 -0
  14. package/dist/auth/capability.js.map +1 -1
  15. package/dist/auth/capabilityLifecycle.d.ts +1 -1
  16. package/dist/auth/capabilityLifecycle.d.ts.map +1 -1
  17. package/dist/auth/credentialPolicy.d.ts +1 -1
  18. package/dist/auth/credentialPolicy.d.ts.map +1 -1
  19. package/dist/auth/identity.d.ts +3 -3
  20. package/dist/auth/identity.d.ts.map +1 -1
  21. package/dist/auth/identity.js +5 -5
  22. package/dist/auth/identity.js.map +1 -1
  23. package/dist/auth/index.d.ts +4 -208
  24. package/dist/auth/index.d.ts.map +1 -1
  25. package/dist/auth/index.js +4 -330
  26. package/dist/auth/index.js.map +1 -1
  27. package/dist/auth/runtime.d.ts +218 -0
  28. package/dist/auth/runtime.d.ts.map +1 -0
  29. package/dist/auth/runtime.js +336 -0
  30. package/dist/auth/runtime.js.map +1 -0
  31. package/dist/auth/sessionMint.d.ts +1 -1
  32. package/dist/auth/sessionMint.d.ts.map +1 -1
  33. package/dist/auth/sessionMint.js +2 -1
  34. package/dist/auth/sessionMint.js.map +1 -1
  35. package/dist/branches.d.ts +25 -21
  36. package/dist/branches.d.ts.map +1 -1
  37. package/dist/branches.js +3 -0
  38. package/dist/branches.js.map +1 -1
  39. package/dist/{coordination/awaitClaimGrant.d.ts → claims/awaitGrant.d.ts} +1 -1
  40. package/dist/claims/awaitGrant.d.ts.map +1 -0
  41. package/dist/{coordination/awaitClaimGrant.js → claims/awaitGrant.js} +4 -4
  42. package/dist/claims/awaitGrant.js.map +1 -0
  43. package/dist/{wire/claims.d.ts → claims/contract.d.ts} +1 -1
  44. package/dist/claims/contract.d.ts.map +1 -0
  45. package/dist/{wire/claims.js → claims/contract.js} +2 -2
  46. package/dist/claims/contract.js.map +1 -0
  47. package/dist/{wire/claimEvent.d.ts → claims/eventContract.d.ts} +1 -1
  48. package/dist/claims/eventContract.d.ts.map +1 -0
  49. package/dist/{wire/claimEvent.js → claims/eventContract.js} +1 -1
  50. package/dist/claims/eventContract.js.map +1 -0
  51. package/dist/{coordination → claims}/events.d.ts +7 -11
  52. package/dist/claims/events.d.ts.map +1 -0
  53. package/dist/claims/events.js +8 -0
  54. package/dist/claims/events.js.map +1 -0
  55. package/dist/{coordination/claimHeartbeatLoop.d.ts → claims/heartbeat.d.ts} +1 -1
  56. package/dist/claims/heartbeat.d.ts.map +1 -0
  57. package/dist/{coordination/claimHeartbeatLoop.js → claims/heartbeat.js} +1 -1
  58. package/dist/claims/heartbeat.js.map +1 -0
  59. package/dist/claims/index.d.ts +17 -0
  60. package/dist/claims/index.d.ts.map +1 -0
  61. package/dist/claims/index.js +16 -0
  62. package/dist/claims/index.js.map +1 -0
  63. package/dist/claims/lifetime.d.ts +26 -0
  64. package/dist/claims/lifetime.d.ts.map +1 -0
  65. package/dist/claims/lifetime.js +62 -0
  66. package/dist/claims/lifetime.js.map +1 -0
  67. package/dist/{coordination → claims}/locator.d.ts +1 -1
  68. package/dist/claims/locator.d.ts.map +1 -0
  69. package/dist/{coordination → claims}/locator.js +2 -2
  70. package/dist/claims/locator.js.map +1 -0
  71. package/dist/{coordination/claimMeta.d.ts → claims/meta.d.ts} +1 -1
  72. package/dist/claims/meta.d.ts.map +1 -0
  73. package/dist/{coordination/claimMeta.js → claims/meta.js} +1 -1
  74. package/dist/claims/meta.js.map +1 -0
  75. package/dist/claims/routes.d.ts +59 -0
  76. package/dist/claims/routes.d.ts.map +1 -0
  77. package/dist/claims/routes.js +69 -0
  78. package/dist/claims/routes.js.map +1 -0
  79. package/dist/claims/targetConflict.d.ts.map +1 -0
  80. package/dist/claims/targetConflict.js.map +1 -0
  81. package/dist/{coordination → claims}/trace.d.ts +2 -2
  82. package/dist/claims/trace.d.ts.map +1 -0
  83. package/dist/{coordination → claims}/trace.js +5 -5
  84. package/dist/claims/trace.js.map +1 -0
  85. package/dist/{ablo.d.ts → client/ablo.d.ts} +6 -15
  86. package/dist/client/ablo.d.ts.map +1 -0
  87. package/dist/{ablo.js → client/ablo.js} +2 -2
  88. package/dist/client/ablo.js.map +1 -0
  89. package/dist/{transactionLayer.d.ts → client/contract.d.ts} +12 -14
  90. package/dist/client/contract.d.ts.map +1 -0
  91. package/dist/{transactionLayer.js → client/contract.js} +4 -5
  92. package/dist/client/contract.js.map +1 -0
  93. package/dist/{headlessClient.d.ts → client/headless.d.ts} +4 -4
  94. package/dist/client/headless.d.ts.map +1 -0
  95. package/dist/{headlessClient.js → client/headless.js} +8 -10
  96. package/dist/{headlessClient.js.map → client/headless.js.map} +1 -1
  97. package/dist/client/index.d.ts +11 -0
  98. package/dist/client/index.d.ts.map +1 -0
  99. package/dist/client/index.js +11 -0
  100. package/dist/client/index.js.map +1 -0
  101. package/dist/{resources → client/resources}/functionalUpdate.d.ts +4 -4
  102. package/dist/client/resources/functionalUpdate.d.ts.map +1 -0
  103. package/dist/{resources → client/resources}/functionalUpdate.js +3 -3
  104. package/dist/client/resources/functionalUpdate.js.map +1 -0
  105. package/dist/{resources → client/resources}/httpResources.d.ts +51 -57
  106. package/dist/client/resources/httpResources.d.ts.map +1 -0
  107. package/dist/{resources → client/resources}/httpResources.js +1 -1
  108. package/dist/client/resources/httpResources.js.map +1 -0
  109. package/dist/{resources → client/resources}/modelCreate.d.ts +1 -1
  110. package/dist/client/resources/modelCreate.d.ts.map +1 -0
  111. package/dist/{resources → client/resources}/modelCreate.js +1 -1
  112. package/dist/client/resources/modelCreate.js.map +1 -0
  113. package/dist/{resources → client/resources}/modelOperations.d.ts +35 -51
  114. package/dist/client/resources/modelOperations.d.ts.map +1 -0
  115. package/dist/{resources → client/resources}/modelOperations.js +1 -1
  116. package/dist/client/resources/modelOperations.js.map +1 -0
  117. package/dist/{resources → client/resources}/mutationOptions.d.ts +4 -17
  118. package/dist/client/resources/mutationOptions.d.ts.map +1 -0
  119. package/dist/client/resources/mutationOptions.js.map +1 -0
  120. package/dist/client/resources/where.d.ts.map +1 -0
  121. package/dist/{resources → client/resources}/where.js +1 -1
  122. package/dist/client/resources/where.js.map +1 -0
  123. package/dist/{resources → client/resources}/writeOptionsSchema.d.ts +2 -35
  124. package/dist/client/resources/writeOptionsSchema.d.ts.map +1 -0
  125. package/dist/{resources → client/resources}/writeOptionsSchema.js +5 -18
  126. package/dist/client/resources/writeOptionsSchema.js.map +1 -0
  127. package/dist/{transactions → commit}/confirmation/commitEnvelope.d.ts +1 -37
  128. package/dist/commit/confirmation/commitEnvelope.d.ts.map +1 -0
  129. package/dist/{transactions → commit}/confirmation/commitEnvelope.js +2 -7
  130. package/dist/commit/confirmation/commitEnvelope.js.map +1 -0
  131. package/dist/commit/confirmation/httpCommitEnvelope.d.ts.map +1 -0
  132. package/dist/{transactions → commit}/confirmation/httpCommitEnvelope.js +1 -1
  133. package/dist/commit/confirmation/httpCommitEnvelope.js.map +1 -0
  134. package/dist/commit/confirmation/idempotencyKey.d.ts.map +1 -0
  135. package/dist/commit/confirmation/idempotencyKey.js.map +1 -0
  136. package/dist/{transactions → commit}/confirmation/pendingWrite.d.ts +2 -33
  137. package/dist/commit/confirmation/pendingWrite.d.ts.map +1 -0
  138. package/dist/{transactions → commit}/confirmation/pendingWrite.js +1 -1
  139. package/dist/commit/confirmation/pendingWrite.js.map +1 -0
  140. package/dist/commit/contract.d.ts +1404 -0
  141. package/dist/commit/contract.d.ts.map +1 -0
  142. package/dist/{wire/commit.js → commit/contract.js} +13 -20
  143. package/dist/commit/contract.js.map +1 -0
  144. package/dist/{durableWrites.d.ts → commit/durableWrites.d.ts} +6 -6
  145. package/dist/commit/durableWrites.d.ts.map +1 -0
  146. package/dist/{durableWrites.js → commit/durableWrites.js} +5 -5
  147. package/dist/commit/durableWrites.js.map +1 -0
  148. package/dist/{transport/httpCommitRequest.d.ts → commit/httpRequest.d.ts} +6 -6
  149. package/dist/commit/httpRequest.d.ts.map +1 -0
  150. package/dist/{transport/httpCommitRequest.js → commit/httpRequest.js} +2 -3
  151. package/dist/commit/httpRequest.js.map +1 -0
  152. package/dist/commit/index.d.ts +17 -0
  153. package/dist/commit/index.d.ts.map +1 -0
  154. package/dist/commit/index.js +17 -0
  155. package/dist/commit/index.js.map +1 -0
  156. package/dist/{readSetContext.d.ts → commit/readSetContext.d.ts} +7 -15
  157. package/dist/commit/readSetContext.d.ts.map +1 -0
  158. package/dist/{readSetContext.js → commit/readSetContext.js} +10 -25
  159. package/dist/commit/readSetContext.js.map +1 -0
  160. package/dist/{commitRecordRuntime.d.ts → commit/recordRuntime.d.ts} +3 -5
  161. package/dist/commit/recordRuntime.d.ts.map +1 -0
  162. package/dist/{commitRecordRuntime.js → commit/recordRuntime.js} +13 -54
  163. package/dist/commit/recordRuntime.js.map +1 -0
  164. package/dist/coordination/index.d.ts +6 -8
  165. package/dist/coordination/index.d.ts.map +1 -1
  166. package/dist/coordination/index.js +3 -9
  167. package/dist/coordination/index.js.map +1 -1
  168. package/dist/coordination/schema.d.ts +11 -459
  169. package/dist/coordination/schema.d.ts.map +1 -1
  170. package/dist/coordination/schema.js +13 -261
  171. package/dist/coordination/schema.js.map +1 -1
  172. package/dist/errorCodes.d.ts +15 -9
  173. package/dist/errorCodes.d.ts.map +1 -1
  174. package/dist/errorCodes.js +13 -6
  175. package/dist/errorCodes.js.map +1 -1
  176. package/dist/errorObservation.d.ts +2 -2
  177. package/dist/errors.d.ts +3 -2
  178. package/dist/errors.d.ts.map +1 -1
  179. package/dist/errors.js +27 -11
  180. package/dist/errors.js.map +1 -1
  181. package/dist/index.d.ts +7 -7
  182. package/dist/index.d.ts.map +1 -1
  183. package/dist/index.js +3 -3
  184. package/dist/index.js.map +1 -1
  185. package/dist/internal/read-set.d.ts +3 -3
  186. package/dist/internal/read-set.d.ts.map +1 -1
  187. package/dist/internal/read-set.js +2 -2
  188. package/dist/internal/read-set.js.map +1 -1
  189. package/dist/observability.d.ts +4 -4
  190. package/dist/observability.d.ts.map +1 -1
  191. package/dist/observability.js +2 -2
  192. package/dist/{wire/delta.d.ts → observation/contract.d.ts} +8 -8
  193. package/dist/observation/contract.d.ts.map +1 -0
  194. package/dist/{wire/delta.js → observation/contract.js} +3 -3
  195. package/dist/observation/contract.js.map +1 -0
  196. package/dist/{wire/feedCursor.d.ts → observation/cursor.d.ts} +1 -1
  197. package/dist/observation/cursor.d.ts.map +1 -0
  198. package/dist/{wire/feedCursor.js → observation/cursor.js} +1 -1
  199. package/dist/observation/cursor.js.map +1 -0
  200. package/dist/{wire/deltaDelivery.d.ts → observation/deliveryContract.d.ts} +1 -1
  201. package/dist/observation/deliveryContract.d.ts.map +1 -0
  202. package/dist/{wire/deltaDelivery.js → observation/deliveryContract.js} +1 -1
  203. package/dist/observation/deliveryContract.js.map +1 -0
  204. package/dist/{wire/feedEvent.d.ts → observation/feedContract.d.ts} +10 -10
  205. package/dist/observation/feedContract.d.ts.map +1 -0
  206. package/dist/{wire/feedEvent.js → observation/feedContract.js} +4 -4
  207. package/dist/observation/feedContract.js.map +1 -0
  208. package/dist/observation/httpFeed.d.ts +4 -0
  209. package/dist/observation/httpFeed.d.ts.map +1 -0
  210. package/dist/{transport → observation}/httpFeed.js +1 -1
  211. package/dist/{transport → observation}/httpFeed.js.map +1 -1
  212. package/dist/observation/index.d.ts +13 -0
  213. package/dist/observation/index.d.ts.map +1 -0
  214. package/dist/observation/index.js +13 -0
  215. package/dist/observation/index.js.map +1 -0
  216. package/dist/{log → observation/persistence}/syncDeltaRow.d.ts +8 -8
  217. package/dist/observation/persistence/syncDeltaRow.d.ts.map +1 -0
  218. package/dist/{log → observation/persistence}/syncDeltaRow.js +4 -4
  219. package/dist/observation/persistence/syncDeltaRow.js.map +1 -0
  220. package/dist/pricing.d.ts +20 -12
  221. package/dist/pricing.d.ts.map +1 -1
  222. package/dist/pricing.js +46 -26
  223. package/dist/pricing.js.map +1 -1
  224. package/dist/schema/index.d.ts +5 -6
  225. package/dist/schema/index.d.ts.map +1 -1
  226. package/dist/schema/index.js +4 -7
  227. package/dist/schema/index.js.map +1 -1
  228. package/dist/schema/model.d.ts +0 -27
  229. package/dist/schema/model.d.ts.map +1 -1
  230. package/dist/schema/model.js +0 -2
  231. package/dist/schema/model.js.map +1 -1
  232. package/dist/schema/openapi.d.ts.map +1 -1
  233. package/dist/schema/openapi.js +45 -6
  234. package/dist/schema/openapi.js.map +1 -1
  235. package/dist/schema/schema.d.ts +11 -3
  236. package/dist/schema/schema.d.ts.map +1 -1
  237. package/dist/schema/schema.js +9 -2
  238. package/dist/schema/schema.js.map +1 -1
  239. package/dist/schema/serialize.d.ts +1 -4
  240. package/dist/schema/serialize.d.ts.map +1 -1
  241. package/dist/schema/serialize.js +0 -4
  242. package/dist/schema/serialize.js.map +1 -1
  243. package/dist/schema/tenancy.d.ts +1 -1
  244. package/dist/server/adapter.d.ts +1 -1
  245. package/dist/server/adapter.d.ts.map +1 -1
  246. package/dist/server/commit.d.ts +6 -14
  247. package/dist/server/commit.d.ts.map +1 -1
  248. package/dist/server/index.d.ts +1 -1
  249. package/dist/server/index.d.ts.map +1 -1
  250. package/dist/server/index.js +1 -1
  251. package/dist/server/index.js.map +1 -1
  252. package/dist/server/storageMode.d.ts +1 -1
  253. package/dist/source/{adapter.d.ts → adapters/adapter.d.ts} +10 -4
  254. package/dist/source/adapters/adapter.d.ts.map +1 -0
  255. package/dist/source/adapters/adapter.js.map +1 -0
  256. package/dist/source/adapters/adapterFactory.d.ts.map +1 -0
  257. package/dist/source/{adapterFactory.js → adapters/adapterFactory.js} +1 -1
  258. package/dist/source/adapters/adapterFactory.js.map +1 -0
  259. package/dist/source/adapters/adapterProfile.d.ts.map +1 -0
  260. package/dist/source/adapters/adapterProfile.js.map +1 -0
  261. package/dist/source/{conformance.d.ts → adapters/conformance.d.ts} +1 -1
  262. package/dist/source/adapters/conformance.d.ts.map +1 -0
  263. package/dist/source/{conformance.js → adapters/conformance.js} +1 -1
  264. package/dist/source/adapters/conformance.js.map +1 -0
  265. package/dist/source/{contract.d.ts → adapters/contract.d.ts} +8 -77
  266. package/dist/source/adapters/contract.d.ts.map +1 -0
  267. package/dist/source/{contract.js → adapters/contract.js} +12 -57
  268. package/dist/source/adapters/contract.js.map +1 -0
  269. package/dist/source/adapters/drizzle.d.ts +1 -1
  270. package/dist/source/adapters/drizzle.d.ts.map +1 -1
  271. package/dist/source/adapters/drizzle.js +21 -23
  272. package/dist/source/adapters/drizzle.js.map +1 -1
  273. package/dist/source/adapters/idempotency.d.ts.map +1 -0
  274. package/dist/source/{idempotency.js → adapters/idempotency.js} +2 -2
  275. package/dist/source/adapters/idempotency.js.map +1 -0
  276. package/dist/source/adapters/index.d.ts +21 -0
  277. package/dist/source/adapters/index.d.ts.map +1 -0
  278. package/dist/source/adapters/index.js +21 -0
  279. package/dist/source/adapters/index.js.map +1 -0
  280. package/dist/source/adapters/kysely.d.ts +1 -1
  281. package/dist/source/adapters/kysely.d.ts.map +1 -1
  282. package/dist/source/adapters/kysely.js +18 -20
  283. package/dist/source/adapters/kysely.js.map +1 -1
  284. package/dist/source/adapters/kyselyMutationCore.d.ts +2 -2
  285. package/dist/source/adapters/kyselyMutationCore.d.ts.map +1 -1
  286. package/dist/source/adapters/kyselyMutationCore.js +1 -1
  287. package/dist/source/adapters/kyselyMutationCore.js.map +1 -1
  288. package/dist/source/adapters/memory.d.ts +3 -3
  289. package/dist/source/adapters/memory.d.ts.map +1 -1
  290. package/dist/source/adapters/memory.js +19 -7
  291. package/dist/source/adapters/memory.js.map +1 -1
  292. package/dist/source/adapters/migration.d.ts +8 -0
  293. package/dist/source/adapters/migration.d.ts.map +1 -0
  294. package/dist/source/adapters/migration.js +9 -0
  295. package/dist/source/adapters/migration.js.map +1 -0
  296. package/dist/source/{migrations.d.ts → adapters/migrations.d.ts} +3 -4
  297. package/dist/source/adapters/migrations.d.ts.map +1 -0
  298. package/dist/source/{migrations.js → adapters/migrations.js} +4 -52
  299. package/dist/source/adapters/migrations.js.map +1 -0
  300. package/dist/source/adapters/prisma.d.ts +1 -1
  301. package/dist/source/adapters/prisma.d.ts.map +1 -1
  302. package/dist/source/adapters/prisma.js +21 -28
  303. package/dist/source/adapters/prisma.js.map +1 -1
  304. package/dist/source/{subjectAuthorization.d.ts → adapters/subjectAuthorization.d.ts} +1 -1
  305. package/dist/source/adapters/subjectAuthorization.d.ts.map +1 -0
  306. package/dist/source/{subjectAuthorization.js → adapters/subjectAuthorization.js} +2 -2
  307. package/dist/source/adapters/subjectAuthorization.js.map +1 -0
  308. package/dist/source/{connector.d.ts → connector/client.d.ts} +6 -1
  309. package/dist/source/connector/client.d.ts.map +1 -0
  310. package/dist/source/{connector.js → connector/client.js} +28 -11
  311. package/dist/source/connector/client.js.map +1 -0
  312. package/dist/source/connector/index.d.ts +4 -0
  313. package/dist/source/connector/index.d.ts.map +1 -0
  314. package/dist/source/connector/index.js +4 -0
  315. package/dist/source/connector/index.js.map +1 -0
  316. package/dist/source/{connectorProtocol.d.ts → connector/protocol.d.ts} +8 -1
  317. package/dist/source/connector/protocol.d.ts.map +1 -0
  318. package/dist/source/{connectorProtocol.js → connector/protocol.js} +10 -3
  319. package/dist/source/connector/protocol.js.map +1 -0
  320. package/dist/source/delivery/index.d.ts +3 -0
  321. package/dist/source/delivery/index.d.ts.map +1 -0
  322. package/dist/source/delivery/index.js +3 -0
  323. package/dist/source/delivery/index.js.map +1 -0
  324. package/dist/source/{pushQueue.d.ts → delivery/pushQueue.d.ts} +1 -1
  325. package/dist/source/delivery/pushQueue.d.ts.map +1 -0
  326. package/dist/source/{pushQueue.js → delivery/pushQueue.js} +1 -1
  327. package/dist/source/delivery/pushQueue.js.map +1 -0
  328. package/dist/source/{factory.d.ts → endpoint/factory.d.ts} +3 -3
  329. package/dist/source/endpoint/factory.d.ts.map +1 -0
  330. package/dist/source/{factory.js → endpoint/factory.js} +9 -4
  331. package/dist/source/endpoint/factory.js.map +1 -0
  332. package/dist/source/endpoint/index.d.ts +5 -0
  333. package/dist/source/endpoint/index.d.ts.map +1 -0
  334. package/dist/source/endpoint/index.js +5 -0
  335. package/dist/source/endpoint/index.js.map +1 -0
  336. package/dist/source/{next.d.ts → endpoint/next.d.ts} +2 -2
  337. package/dist/source/endpoint/next.d.ts.map +1 -0
  338. package/dist/source/{next.js → endpoint/next.js} +1 -1
  339. package/dist/source/endpoint/next.js.map +1 -0
  340. package/dist/source/{signing.d.ts → endpoint/signing.d.ts} +1 -1
  341. package/dist/source/endpoint/signing.d.ts.map +1 -0
  342. package/dist/source/{signing.js → endpoint/signing.js} +1 -1
  343. package/dist/source/endpoint/signing.js.map +1 -0
  344. package/dist/source/index.d.ts +14 -12
  345. package/dist/source/index.d.ts.map +1 -1
  346. package/dist/source/index.js +13 -11
  347. package/dist/source/index.js.map +1 -1
  348. package/dist/source/outbox/contract.d.ts +50 -0
  349. package/dist/source/outbox/contract.d.ts.map +1 -0
  350. package/dist/source/outbox/contract.js +50 -0
  351. package/dist/source/outbox/contract.js.map +1 -0
  352. package/dist/source/outbox/envelope.d.ts +9 -0
  353. package/dist/source/outbox/envelope.d.ts.map +1 -0
  354. package/dist/source/outbox/envelope.js +36 -0
  355. package/dist/source/outbox/envelope.js.map +1 -0
  356. package/dist/source/outbox/index.d.ts +11 -0
  357. package/dist/source/outbox/index.d.ts.map +1 -0
  358. package/dist/source/outbox/index.js +11 -0
  359. package/dist/source/outbox/index.js.map +1 -0
  360. package/dist/source/outbox/migrations.d.ts +4 -0
  361. package/dist/source/outbox/migrations.d.ts.map +1 -0
  362. package/dist/source/outbox/migrations.js +67 -0
  363. package/dist/source/outbox/migrations.js.map +1 -0
  364. package/dist/source/outbox/retention.d.ts +3 -0
  365. package/dist/source/outbox/retention.d.ts.map +1 -0
  366. package/dist/source/outbox/retention.js +3 -0
  367. package/dist/source/outbox/retention.js.map +1 -0
  368. package/dist/source/types.d.ts +16 -17
  369. package/dist/source/types.d.ts.map +1 -1
  370. package/dist/source/types.js +1 -0
  371. package/dist/source/types.js.map +1 -1
  372. package/dist/syncLog/contract.d.ts +19 -2
  373. package/dist/syncLog/contract.d.ts.map +1 -1
  374. package/dist/syncLog/contract.js +19 -2
  375. package/dist/syncLog/contract.js.map +1 -1
  376. package/dist/transport/{credentialLifecycle.d.ts → connection/credentialLifecycle.d.ts} +3 -3
  377. package/dist/transport/connection/credentialLifecycle.d.ts.map +1 -0
  378. package/dist/transport/{credentialLifecycle.js → connection/credentialLifecycle.js} +2 -2
  379. package/dist/transport/connection/credentialLifecycle.js.map +1 -0
  380. package/dist/transport/connection/index.d.ts +5 -0
  381. package/dist/transport/connection/index.d.ts.map +1 -0
  382. package/dist/transport/connection/index.js +5 -0
  383. package/dist/transport/connection/index.js.map +1 -0
  384. package/dist/transport/{connectionManager.d.ts → connection/manager.d.ts} +13 -5
  385. package/dist/transport/connection/manager.d.ts.map +1 -0
  386. package/dist/transport/{connectionManager.js → connection/manager.js} +6 -4
  387. package/dist/transport/connection/manager.js.map +1 -0
  388. package/dist/transport/{networkProbe.d.ts → connection/networkProbe.d.ts} +2 -2
  389. package/dist/transport/connection/networkProbe.d.ts.map +1 -0
  390. package/dist/transport/{networkProbe.js → connection/networkProbe.js} +4 -4
  391. package/dist/transport/connection/networkProbe.js.map +1 -0
  392. package/dist/transport/{httpClient.d.ts → http/client.d.ts} +26 -45
  393. package/dist/transport/http/client.d.ts.map +1 -0
  394. package/dist/transport/{httpClient.js → http/client.js} +84 -124
  395. package/dist/transport/http/client.js.map +1 -0
  396. package/dist/transport/{httpTransportHelpers.d.ts → http/helpers.d.ts} +5 -5
  397. package/dist/transport/http/helpers.d.ts.map +1 -0
  398. package/dist/transport/{httpTransportHelpers.js → http/helpers.js} +5 -5
  399. package/dist/transport/http/helpers.js.map +1 -0
  400. package/dist/transport/http/index.d.ts +6 -0
  401. package/dist/transport/http/index.d.ts.map +1 -0
  402. package/dist/transport/http/index.js +6 -0
  403. package/dist/transport/http/index.js.map +1 -0
  404. package/dist/transport/{httpOptions.d.ts → http/options.d.ts} +7 -7
  405. package/dist/transport/{httpOptions.d.ts.map → http/options.d.ts.map} +1 -1
  406. package/dist/transport/{httpOptions.js → http/options.js} +1 -1
  407. package/dist/transport/http/options.js.map +1 -0
  408. package/dist/transport/http/subscription.d.ts +16 -0
  409. package/dist/transport/http/subscription.d.ts.map +1 -0
  410. package/dist/transport/http/subscription.js +146 -0
  411. package/dist/transport/http/subscription.js.map +1 -0
  412. package/dist/transport/{httpTransport.d.ts → http/transport.d.ts} +9 -6
  413. package/dist/transport/http/transport.d.ts.map +1 -0
  414. package/dist/transport/{httpTransport.js → http/transport.js} +95 -93
  415. package/dist/transport/http/transport.js.map +1 -0
  416. package/dist/transport/index.d.ts +8 -0
  417. package/dist/transport/index.d.ts.map +1 -0
  418. package/dist/transport/index.js +8 -0
  419. package/dist/transport/index.js.map +1 -0
  420. package/dist/transport/{commitFrames.d.ts → websocket/commitFrames.d.ts} +8 -20
  421. package/dist/transport/websocket/commitFrames.d.ts.map +1 -0
  422. package/dist/transport/{commitFrames.js → websocket/commitFrames.js} +6 -25
  423. package/dist/transport/websocket/commitFrames.js.map +1 -0
  424. package/dist/transport/{wsFrameHandlers.d.ts → websocket/frameHandlers.d.ts} +5 -5
  425. package/dist/transport/websocket/frameHandlers.d.ts.map +1 -0
  426. package/dist/transport/{wsFrameHandlers.js → websocket/frameHandlers.js} +10 -51
  427. package/dist/transport/websocket/frameHandlers.js.map +1 -0
  428. package/dist/transport/{heartbeat.d.ts → websocket/heartbeat.d.ts} +1 -1
  429. package/dist/transport/websocket/heartbeat.d.ts.map +1 -0
  430. package/dist/transport/{heartbeat.js → websocket/heartbeat.js} +2 -2
  431. package/dist/transport/websocket/heartbeat.js.map +1 -0
  432. package/dist/transport/websocket/index.d.ts +6 -0
  433. package/dist/transport/websocket/index.d.ts.map +1 -0
  434. package/dist/transport/websocket/index.js +6 -0
  435. package/dist/transport/websocket/index.js.map +1 -0
  436. package/dist/transport/{wsTransport.d.ts → websocket/transport.d.ts} +13 -25
  437. package/dist/transport/websocket/transport.d.ts.map +1 -0
  438. package/dist/transport/{wsTransport.js → websocket/transport.js} +14 -14
  439. package/dist/transport/websocket/transport.js.map +1 -0
  440. package/dist/types/index.d.ts +1 -1
  441. package/dist/types/index.d.ts.map +1 -1
  442. package/dist/types/streams.d.ts +8 -48
  443. package/dist/types/streams.d.ts.map +1 -1
  444. package/dist/types/streams.js +2 -2
  445. package/dist/wire/accountResponses.d.ts +4 -72
  446. package/dist/wire/accountResponses.d.ts.map +1 -1
  447. package/dist/wire/accountResponses.js +2 -10
  448. package/dist/wire/accountResponses.js.map +1 -1
  449. package/dist/wire/frames.d.ts +6 -83
  450. package/dist/wire/frames.d.ts.map +1 -1
  451. package/dist/wire/frames.js +4 -11
  452. package/dist/wire/frames.js.map +1 -1
  453. package/dist/wire/inboundFrames.d.ts +6 -131
  454. package/dist/wire/inboundFrames.d.ts.map +1 -1
  455. package/dist/wire/inboundFrames.js +3 -3
  456. package/dist/wire/inboundFrames.js.map +1 -1
  457. package/dist/wire/index.d.ts +17 -15
  458. package/dist/wire/index.d.ts.map +1 -1
  459. package/dist/wire/index.js +11 -8
  460. package/dist/wire/index.js.map +1 -1
  461. package/dist/wire/modelMutations.d.ts +1 -32
  462. package/dist/wire/modelMutations.d.ts.map +1 -1
  463. package/dist/wire/modelMutations.js +1 -8
  464. package/dist/wire/modelMutations.js.map +1 -1
  465. package/package.json +130 -10
  466. package/src/ai-sdk/modelTools.ts +5 -5
  467. package/src/ai-sdk/updateTool.ts +5 -7
  468. package/src/auth/capability.ts +5 -0
  469. package/src/auth/capabilityLifecycle.ts +1 -1
  470. package/src/auth/credentialPolicy.ts +1 -1
  471. package/src/auth/identity.ts +7 -7
  472. package/src/auth/index.ts +4 -663
  473. package/src/auth/runtime.ts +669 -0
  474. package/src/auth/sessionMint.ts +3 -2
  475. package/src/branches.ts +3 -0
  476. package/src/{coordination/awaitClaimGrant.ts → claims/awaitGrant.ts} +4 -4
  477. package/src/{wire/claims.ts → claims/contract.ts} +1 -1
  478. package/src/{coordination → claims}/events.ts +7 -11
  479. package/src/claims/index.ts +21 -0
  480. package/src/claims/lifetime.ts +78 -0
  481. package/src/{coordination → claims}/locator.ts +3 -3
  482. package/src/claims/routes.ts +81 -0
  483. package/src/{coordination → claims}/trace.ts +5 -5
  484. package/src/{ablo.ts → client/ablo.ts} +8 -20
  485. package/src/{transactionLayer.ts → client/contract.ts} +11 -13
  486. package/src/{headlessClient.ts → client/headless.ts} +13 -15
  487. package/src/client/index.ts +10 -0
  488. package/src/{resources → client/resources}/functionalUpdate.ts +4 -4
  489. package/src/{resources → client/resources}/httpResources.ts +48 -68
  490. package/src/{resources → client/resources}/modelCreate.ts +2 -2
  491. package/src/{resources → client/resources}/modelOperations.ts +46 -55
  492. package/src/{resources → client/resources}/mutationOptions.ts +4 -17
  493. package/src/{resources → client/resources}/where.ts +1 -1
  494. package/src/{resources → client/resources}/writeOptionsSchema.ts +7 -27
  495. package/src/{transactions → commit}/confirmation/commitEnvelope.ts +2 -12
  496. package/src/{transactions → commit}/confirmation/httpCommitEnvelope.ts +1 -1
  497. package/src/{transactions → commit}/confirmation/pendingWrite.ts +1 -1
  498. package/src/{wire/commit.ts → commit/contract.ts} +11 -25
  499. package/src/{durableWrites.ts → commit/durableWrites.ts} +7 -7
  500. package/src/{transport/httpCommitRequest.ts → commit/httpRequest.ts} +6 -7
  501. package/src/commit/index.ts +16 -0
  502. package/src/{readSetContext.ts → commit/readSetContext.ts} +16 -41
  503. package/src/{commitRecordRuntime.ts → commit/recordRuntime.ts} +12 -67
  504. package/src/coordination/index.ts +4 -52
  505. package/src/coordination/schema.ts +15 -302
  506. package/src/errorCodes.ts +56 -10
  507. package/src/errors.ts +32 -10
  508. package/src/index.ts +8 -8
  509. package/src/internal/read-set.ts +3 -6
  510. package/src/observability.ts +4 -4
  511. package/src/{wire/delta.ts → observation/contract.ts} +2 -2
  512. package/src/{wire/feedEvent.ts → observation/feedContract.ts} +3 -4
  513. package/src/{transport → observation}/httpFeed.ts +3 -3
  514. package/src/observation/index.ts +12 -0
  515. package/src/{log → observation/persistence}/syncDeltaRow.ts +6 -7
  516. package/src/pricing.ts +46 -25
  517. package/src/schema/index.ts +4 -20
  518. package/src/schema/model.ts +0 -33
  519. package/src/schema/openapi.ts +47 -7
  520. package/src/schema/schema.ts +23 -3
  521. package/src/schema/serialize.ts +0 -8
  522. package/src/server/adapter.ts +1 -1
  523. package/src/server/commit.ts +6 -14
  524. package/src/server/index.ts +1 -1
  525. package/src/source/{adapter.ts → adapters/adapter.ts} +9 -5
  526. package/src/source/{adapterFactory.ts → adapters/adapterFactory.ts} +1 -1
  527. package/src/source/{conformance.ts → adapters/conformance.ts} +1 -1
  528. package/src/source/{contract.ts → adapters/contract.ts} +16 -64
  529. package/src/source/adapters/drizzle.ts +29 -27
  530. package/src/source/{idempotency.ts → adapters/idempotency.ts} +2 -2
  531. package/src/source/adapters/index.ts +20 -0
  532. package/src/source/adapters/kysely.ts +32 -25
  533. package/src/source/adapters/kyselyMutationCore.ts +3 -3
  534. package/src/source/adapters/memory.ts +25 -9
  535. package/src/source/adapters/migration.ts +11 -0
  536. package/src/source/{migrations.ts → adapters/migrations.ts} +6 -54
  537. package/src/source/adapters/prisma.ts +33 -32
  538. package/src/source/{subjectAuthorization.ts → adapters/subjectAuthorization.ts} +2 -2
  539. package/src/source/{connector.ts → connector/client.ts} +35 -12
  540. package/src/source/connector/index.ts +3 -0
  541. package/src/source/{connectorProtocol.ts → connector/protocol.ts} +10 -2
  542. package/src/source/delivery/index.ts +2 -0
  543. package/src/source/{pushQueue.ts → delivery/pushQueue.ts} +2 -2
  544. package/src/source/{factory.ts → endpoint/factory.ts} +13 -8
  545. package/src/source/endpoint/index.ts +4 -0
  546. package/src/source/{next.ts → endpoint/next.ts} +2 -2
  547. package/src/source/{signing.ts → endpoint/signing.ts} +1 -1
  548. package/src/source/index.ts +22 -19
  549. package/src/source/outbox/contract.ts +56 -0
  550. package/src/source/outbox/envelope.ts +47 -0
  551. package/src/source/outbox/index.ts +15 -0
  552. package/src/source/outbox/migrations.ts +71 -0
  553. package/src/source/outbox/retention.ts +2 -0
  554. package/src/source/types.ts +17 -17
  555. package/src/syncLog/contract.ts +19 -2
  556. package/src/transport/{credentialLifecycle.ts → connection/credentialLifecycle.ts} +3 -3
  557. package/src/transport/connection/index.ts +4 -0
  558. package/src/transport/{connectionManager.ts → connection/manager.ts} +13 -4
  559. package/src/transport/{networkProbe.ts → connection/networkProbe.ts} +4 -4
  560. package/src/transport/{httpClient.ts → http/client.ts} +128 -209
  561. package/src/transport/{httpTransportHelpers.ts → http/helpers.ts} +7 -7
  562. package/src/transport/http/index.ts +5 -0
  563. package/src/transport/{httpOptions.ts → http/options.ts} +6 -6
  564. package/src/transport/http/subscription.ts +174 -0
  565. package/src/transport/{httpTransport.ts → http/transport.ts} +127 -113
  566. package/src/transport/index.ts +7 -0
  567. package/src/transport/{commitFrames.ts → websocket/commitFrames.ts} +14 -46
  568. package/src/transport/{wsFrameHandlers.ts → websocket/frameHandlers.ts} +11 -54
  569. package/src/transport/{heartbeat.ts → websocket/heartbeat.ts} +2 -2
  570. package/src/transport/websocket/index.ts +5 -0
  571. package/src/transport/{wsTransport.ts → websocket/transport.ts} +16 -30
  572. package/src/types/index.ts +2 -6
  573. package/src/types/streams.ts +7 -61
  574. package/src/webhooks/events.ts +1 -1
  575. package/src/wire/accountResponses.ts +3 -12
  576. package/src/wire/frames.ts +5 -15
  577. package/src/wire/inboundFrames.ts +3 -3
  578. package/src/wire/index.ts +19 -15
  579. package/src/wire/modelMutations.ts +1 -14
  580. package/dist/ablo.d.ts.map +0 -1
  581. package/dist/ablo.js.map +0 -1
  582. package/dist/commitRecordRuntime.d.ts.map +0 -1
  583. package/dist/commitRecordRuntime.js.map +0 -1
  584. package/dist/coordination/awaitClaimGrant.d.ts.map +0 -1
  585. package/dist/coordination/awaitClaimGrant.js.map +0 -1
  586. package/dist/coordination/claimHeartbeatLoop.d.ts.map +0 -1
  587. package/dist/coordination/claimHeartbeatLoop.js.map +0 -1
  588. package/dist/coordination/claimMeta.d.ts.map +0 -1
  589. package/dist/coordination/claimMeta.js.map +0 -1
  590. package/dist/coordination/events.d.ts.map +0 -1
  591. package/dist/coordination/events.js +0 -8
  592. package/dist/coordination/events.js.map +0 -1
  593. package/dist/coordination/locator.d.ts.map +0 -1
  594. package/dist/coordination/locator.js.map +0 -1
  595. package/dist/coordination/targetConflict.d.ts.map +0 -1
  596. package/dist/coordination/targetConflict.js.map +0 -1
  597. package/dist/coordination/trace.d.ts.map +0 -1
  598. package/dist/coordination/trace.js.map +0 -1
  599. package/dist/durableWrites.d.ts.map +0 -1
  600. package/dist/durableWrites.js.map +0 -1
  601. package/dist/headlessClient.d.ts.map +0 -1
  602. package/dist/log/syncDeltaRow.d.ts.map +0 -1
  603. package/dist/log/syncDeltaRow.js.map +0 -1
  604. package/dist/policy/types.d.ts +0 -226
  605. package/dist/policy/types.d.ts.map +0 -1
  606. package/dist/policy/types.js +0 -127
  607. package/dist/policy/types.js.map +0 -1
  608. package/dist/readSetContext.d.ts.map +0 -1
  609. package/dist/readSetContext.js.map +0 -1
  610. package/dist/resources/functionalUpdate.d.ts.map +0 -1
  611. package/dist/resources/functionalUpdate.js.map +0 -1
  612. package/dist/resources/httpResources.d.ts.map +0 -1
  613. package/dist/resources/httpResources.js.map +0 -1
  614. package/dist/resources/modelCreate.d.ts.map +0 -1
  615. package/dist/resources/modelCreate.js.map +0 -1
  616. package/dist/resources/modelOperations.d.ts.map +0 -1
  617. package/dist/resources/modelOperations.js.map +0 -1
  618. package/dist/resources/mutationOptions.d.ts.map +0 -1
  619. package/dist/resources/mutationOptions.js.map +0 -1
  620. package/dist/resources/where.d.ts.map +0 -1
  621. package/dist/resources/where.js.map +0 -1
  622. package/dist/resources/writeOptionsSchema.d.ts.map +0 -1
  623. package/dist/resources/writeOptionsSchema.js.map +0 -1
  624. package/dist/schema/coordination.d.ts +0 -113
  625. package/dist/schema/coordination.d.ts.map +0 -1
  626. package/dist/schema/coordination.js +0 -134
  627. package/dist/schema/coordination.js.map +0 -1
  628. package/dist/source/adapter.d.ts.map +0 -1
  629. package/dist/source/adapter.js.map +0 -1
  630. package/dist/source/adapterFactory.d.ts.map +0 -1
  631. package/dist/source/adapterFactory.js.map +0 -1
  632. package/dist/source/adapterProfile.d.ts.map +0 -1
  633. package/dist/source/adapterProfile.js.map +0 -1
  634. package/dist/source/conformance.d.ts.map +0 -1
  635. package/dist/source/conformance.js.map +0 -1
  636. package/dist/source/connector.d.ts.map +0 -1
  637. package/dist/source/connector.js.map +0 -1
  638. package/dist/source/connectorProtocol.d.ts.map +0 -1
  639. package/dist/source/connectorProtocol.js.map +0 -1
  640. package/dist/source/contract.d.ts.map +0 -1
  641. package/dist/source/contract.js.map +0 -1
  642. package/dist/source/drizzle.d.ts +0 -2
  643. package/dist/source/drizzle.d.ts.map +0 -1
  644. package/dist/source/drizzle.js +0 -2
  645. package/dist/source/drizzle.js.map +0 -1
  646. package/dist/source/factory.d.ts.map +0 -1
  647. package/dist/source/factory.js.map +0 -1
  648. package/dist/source/idempotency.d.ts.map +0 -1
  649. package/dist/source/idempotency.js.map +0 -1
  650. package/dist/source/kysely.d.ts +0 -3
  651. package/dist/source/kysely.d.ts.map +0 -1
  652. package/dist/source/kysely.js +0 -3
  653. package/dist/source/kysely.js.map +0 -1
  654. package/dist/source/migrations.d.ts.map +0 -1
  655. package/dist/source/migrations.js.map +0 -1
  656. package/dist/source/next.d.ts.map +0 -1
  657. package/dist/source/next.js.map +0 -1
  658. package/dist/source/pushQueue.d.ts.map +0 -1
  659. package/dist/source/pushQueue.js.map +0 -1
  660. package/dist/source/signing.d.ts.map +0 -1
  661. package/dist/source/signing.js.map +0 -1
  662. package/dist/source/subjectAuthorization.d.ts.map +0 -1
  663. package/dist/source/subjectAuthorization.js.map +0 -1
  664. package/dist/transactionLayer.d.ts.map +0 -1
  665. package/dist/transactionLayer.js.map +0 -1
  666. package/dist/transactions/confirmation/commitEnvelope.d.ts.map +0 -1
  667. package/dist/transactions/confirmation/commitEnvelope.js.map +0 -1
  668. package/dist/transactions/confirmation/httpCommitEnvelope.d.ts.map +0 -1
  669. package/dist/transactions/confirmation/httpCommitEnvelope.js.map +0 -1
  670. package/dist/transactions/confirmation/idempotencyKey.d.ts.map +0 -1
  671. package/dist/transactions/confirmation/idempotencyKey.js.map +0 -1
  672. package/dist/transactions/confirmation/pendingWrite.d.ts.map +0 -1
  673. package/dist/transactions/confirmation/pendingWrite.js.map +0 -1
  674. package/dist/transport/commitFrames.d.ts.map +0 -1
  675. package/dist/transport/commitFrames.js.map +0 -1
  676. package/dist/transport/connectionManager.d.ts.map +0 -1
  677. package/dist/transport/connectionManager.js.map +0 -1
  678. package/dist/transport/credentialLifecycle.d.ts.map +0 -1
  679. package/dist/transport/credentialLifecycle.js.map +0 -1
  680. package/dist/transport/heartbeat.d.ts.map +0 -1
  681. package/dist/transport/heartbeat.js.map +0 -1
  682. package/dist/transport/httpClient.d.ts.map +0 -1
  683. package/dist/transport/httpClient.js.map +0 -1
  684. package/dist/transport/httpCommitRequest.d.ts.map +0 -1
  685. package/dist/transport/httpCommitRequest.js.map +0 -1
  686. package/dist/transport/httpFeed.d.ts +0 -4
  687. package/dist/transport/httpFeed.d.ts.map +0 -1
  688. package/dist/transport/httpOptions.js.map +0 -1
  689. package/dist/transport/httpTransport.d.ts.map +0 -1
  690. package/dist/transport/httpTransport.js.map +0 -1
  691. package/dist/transport/httpTransportHelpers.d.ts.map +0 -1
  692. package/dist/transport/httpTransportHelpers.js.map +0 -1
  693. package/dist/transport/networkProbe.d.ts.map +0 -1
  694. package/dist/transport/networkProbe.js.map +0 -1
  695. package/dist/transport/wsFrameHandlers.d.ts.map +0 -1
  696. package/dist/transport/wsFrameHandlers.js.map +0 -1
  697. package/dist/transport/wsTransport.d.ts.map +0 -1
  698. package/dist/transport/wsTransport.js.map +0 -1
  699. package/dist/wire/claimEvent.d.ts.map +0 -1
  700. package/dist/wire/claimEvent.js.map +0 -1
  701. package/dist/wire/claims.d.ts.map +0 -1
  702. package/dist/wire/claims.js.map +0 -1
  703. package/dist/wire/commit.d.ts +0 -2866
  704. package/dist/wire/commit.d.ts.map +0 -1
  705. package/dist/wire/commit.js.map +0 -1
  706. package/dist/wire/delta.d.ts.map +0 -1
  707. package/dist/wire/delta.js.map +0 -1
  708. package/dist/wire/deltaDelivery.d.ts.map +0 -1
  709. package/dist/wire/deltaDelivery.js.map +0 -1
  710. package/dist/wire/feedCursor.d.ts.map +0 -1
  711. package/dist/wire/feedCursor.js.map +0 -1
  712. package/dist/wire/feedEvent.d.ts.map +0 -1
  713. package/dist/wire/feedEvent.js.map +0 -1
  714. package/src/policy/types.ts +0 -300
  715. package/src/schema/coordination.ts +0 -161
  716. package/src/source/drizzle.ts +0 -1
  717. package/src/source/kysely.ts +0 -2
  718. /package/dist/{coordination → claims}/targetConflict.d.ts +0 -0
  719. /package/dist/{coordination → claims}/targetConflict.js +0 -0
  720. /package/dist/{resources → client/resources}/mutationOptions.js +0 -0
  721. /package/dist/{resources → client/resources}/where.d.ts +0 -0
  722. /package/dist/{transactions → commit}/confirmation/httpCommitEnvelope.d.ts +0 -0
  723. /package/dist/{transactions → commit}/confirmation/idempotencyKey.d.ts +0 -0
  724. /package/dist/{transactions → commit}/confirmation/idempotencyKey.js +0 -0
  725. /package/dist/source/{adapter.js → adapters/adapter.js} +0 -0
  726. /package/dist/source/{adapterFactory.d.ts → adapters/adapterFactory.d.ts} +0 -0
  727. /package/dist/source/{adapterProfile.d.ts → adapters/adapterProfile.d.ts} +0 -0
  728. /package/dist/source/{adapterProfile.js → adapters/adapterProfile.js} +0 -0
  729. /package/dist/source/{idempotency.d.ts → adapters/idempotency.d.ts} +0 -0
  730. /package/src/{wire/claimEvent.ts → claims/eventContract.ts} +0 -0
  731. /package/src/{coordination/claimHeartbeatLoop.ts → claims/heartbeat.ts} +0 -0
  732. /package/src/{coordination/claimMeta.ts → claims/meta.ts} +0 -0
  733. /package/src/{coordination → claims}/targetConflict.ts +0 -0
  734. /package/src/{transactions → commit}/confirmation/idempotencyKey.ts +0 -0
  735. /package/src/{wire/feedCursor.ts → observation/cursor.ts} +0 -0
  736. /package/src/{wire/deltaDelivery.ts → observation/deliveryContract.ts} +0 -0
  737. /package/src/source/{adapterProfile.ts → adapters/adapterProfile.ts} +0 -0
@@ -0,0 +1,71 @@
1
+ import type { Migration } from '../adapters/migration.js';
2
+
3
+ function quoteIdent(value: string): string {
4
+ return `"${value.replace(/"/g, '""')}"`;
5
+ }
6
+
7
+ function quoteLiteral(value: string): string {
8
+ return `'${value.replace(/'/g, "''")}'`;
9
+ }
10
+
11
+ function qualified(schema: string, relation: string): string {
12
+ return `${quoteIdent(schema)}.${quoteIdent(relation)}`;
13
+ }
14
+
15
+ /** Schema for the endpoint-only, versioned transactional outbox. */
16
+ export function endpointOutboxMigrations(schema = 'public'): readonly Migration[] {
17
+ const outbox = qualified(schema, 'ablo_outbox');
18
+ return [
19
+ {
20
+ name: 'ablo_outbox',
21
+ up: `CREATE TABLE IF NOT EXISTS ${outbox} (
22
+ cursor BIGSERIAL PRIMARY KEY,
23
+ id TEXT NOT NULL UNIQUE,
24
+ model TEXT NOT NULL,
25
+ entity_id TEXT NOT NULL,
26
+ type TEXT NOT NULL,
27
+ data JSONB,
28
+ event_version SMALLINT NOT NULL DEFAULT 1,
29
+ sync_groups TEXT[],
30
+ organization_id TEXT,
31
+ client_tx_id TEXT,
32
+ correlation_id TEXT,
33
+ transaction_id TEXT,
34
+ occurred_at BIGINT,
35
+ created_at TIMESTAMPTZ NOT NULL DEFAULT now(),
36
+ CONSTRAINT ablo_outbox_event_envelope_valid CHECK (
37
+ (event_version = 1 AND sync_groups IS NULL) OR
38
+ (event_version = 2 AND sync_groups IS NOT NULL)
39
+ )
40
+ );`,
41
+ },
42
+ {
43
+ name: 'ablo_outbox_add_correlation',
44
+ up: `ALTER TABLE ${outbox}
45
+ ADD COLUMN IF NOT EXISTS correlation_id TEXT;
46
+ ALTER TABLE ${outbox}
47
+ ADD COLUMN IF NOT EXISTS transaction_id TEXT;`,
48
+ },
49
+ {
50
+ name: 'ablo_outbox_add_event_version_and_sync_groups',
51
+ up: `ALTER TABLE ${outbox}
52
+ ADD COLUMN IF NOT EXISTS event_version SMALLINT NOT NULL DEFAULT 1;
53
+ ALTER TABLE ${outbox}
54
+ ADD COLUMN IF NOT EXISTS sync_groups TEXT[];
55
+ DO $$
56
+ BEGIN
57
+ IF NOT EXISTS (
58
+ SELECT 1 FROM pg_constraint
59
+ WHERE conrelid = to_regclass(${quoteLiteral(outbox)})
60
+ AND conname = 'ablo_outbox_event_envelope_valid'
61
+ ) THEN
62
+ ALTER TABLE ${outbox}
63
+ ADD CONSTRAINT ablo_outbox_event_envelope_valid CHECK (
64
+ (event_version = 1 AND sync_groups IS NULL) OR
65
+ (event_version = 2 AND sync_groups IS NOT NULL)
66
+ ) NOT VALID;
67
+ END IF;
68
+ END $$;`,
69
+ },
70
+ ];
71
+ }
@@ -0,0 +1,2 @@
1
+ /** Bounds acknowledgement cleanup when an installation retained a large history. */
2
+ export const ENDPOINT_OUTBOX_PRUNE_BATCH_SIZE = 1_000;
@@ -11,7 +11,7 @@
11
11
  */
12
12
 
13
13
  import { AbloValidationError } from '../errors.js';
14
- import type { CommitOperationType, OnStaleMode } from '../coordination/schema.js';
14
+ import type { CommitOperationType } from '../coordination/schema.js';
15
15
  import type { ParticipantKind } from '../types/participant.js';
16
16
 
17
17
  /** A scalar value that can appear in a source filter. */
@@ -93,21 +93,13 @@ export interface SourceRequestContext {
93
93
  /** Trusted project selected by the authenticating credential. */
94
94
  readonly projectId?: string;
95
95
  readonly syncGroups?: readonly string[];
96
- /**
97
- * @deprecated Renamed to {@link SourceRequestContext.syncGroups}. Removed in
98
- * 0.58.0. Ablo populates both spellings with the same value for this release,
99
- * so an adapter still reading this one gets the groups rather than
100
- * `undefined`, which on a routing field would read as "no groups" rather than
101
- * as a missing field.
102
- */
103
- readonly requiredSyncGroups?: readonly string[];
104
96
  }
105
97
 
106
98
  /**
107
99
  * A single change Ablo asks your source to apply — a create, update, delete,
108
100
  * archive, or unarchive of one row of `model`. Operations arrive in your
109
- * `commit` handler through {@link SourceCommitParams}. `onStale` says what to
110
- * do when the row changed since it was read at `readAt`.
101
+ * `commit` handler through {@link SourceCommitParams}. A `readAt` makes the
102
+ * operation conditional and a stale value rejects it.
111
103
  */
112
104
  export interface SourceOperation {
113
105
  readonly type: CommitOperationType;
@@ -117,7 +109,6 @@ export interface SourceOperation {
117
109
  readonly where?: Record<string, unknown> | null;
118
110
  readonly transactionId?: string | null;
119
111
  readonly readAt?: number | null;
120
- readonly onStale?: OnStaleMode | null;
121
112
  }
122
113
 
123
114
  /**
@@ -148,6 +139,8 @@ export interface SourceDelta {
148
139
  * the event is durably appended. External writes omit them.
149
140
  */
150
141
  export interface SourceEvent {
142
+ /** Event envelope version. When omitted, syncGroups implies v2; their absence implies v1. */
143
+ readonly version?: 1 | 2;
151
144
  /**
152
145
  * A globally unique event id from your outbox. Ablo uses it for replay
153
146
  * protection, so re-delivering the same id is a no-op.
@@ -173,8 +166,8 @@ export interface SourceEvent {
173
166
  * a tenant boundary.
174
167
  */
175
168
  readonly data?: Record<string, unknown> | null;
176
- /** Exact record routes captured while the changed row was transactionally visible. */
177
- readonly syncGroups: readonly string[];
169
+ /** Exact record routes captured while the changed row was transactionally visible. Required in version 2. */
170
+ readonly syncGroups?: readonly string[];
178
171
  /**
179
172
  * The tenant this event belongs to. Populate it from the row's organization
180
173
  * column for multi-tenant data; a single-tenant source may omit it and let
@@ -253,6 +246,7 @@ export function sourceEventForOperation(
253
246
  const occurredAt = normalizeEventOccurredAt(options.occurredAt);
254
247
  const transactionId = options.transactionId ?? options.operation.transactionId ?? undefined;
255
248
  return {
249
+ version: 2,
256
250
  id: options.eventId,
257
251
  model: options.operation.model,
258
252
  entityId,
@@ -381,11 +375,14 @@ export interface SourceEventsResult {
381
375
  */
382
376
  export type SourceEventsHandler<TAuth = unknown> = (params: {
383
377
  /**
384
- * The cursor from a previous `events` call, or undefined on the first poll of
385
- * a newly connected source. You decide what it encodes — a last event id, a
386
- * timestamp, a log sequence number.
378
+ * The consumer position Ablo has durably committed, or undefined on the first
379
+ * poll of a newly connected source. It acknowledges every event through that
380
+ * position, so a handler may prune them before returning the next page. You
381
+ * decide what it encodes — a last event id, timestamp, or log sequence number.
387
382
  */
388
383
  readonly cursor?: string;
384
+ /** Explicit durable acknowledgement. Safe to use for bounded retention cleanup. */
385
+ readonly acknowledgedThrough?: string;
389
386
  /**
390
387
  * A suggested upper bound on how many events to return. You may return fewer;
391
388
  * returning many more risks tripping Ablo's per-poll cap.
@@ -539,7 +536,10 @@ export interface SourceCommitRequest {
539
536
 
540
537
  export interface SourceEventsRequest {
541
538
  readonly type: 'events';
539
+ /** Exclusive read position. */
542
540
  readonly cursor?: string;
541
+ /** Durable consumer acknowledgement, independent of the read position. */
542
+ readonly acknowledgedThrough?: string;
543
543
  readonly limit?: number;
544
544
  readonly scope?: SourceRequestContext;
545
545
  }
@@ -15,8 +15,10 @@
15
15
  * | `current_settled_sync_id()` | nothing at or below is still in flight |
16
16
  * | `getCommittedSyncId` | committed, without waiting for the barrier|
17
17
  * | `sync_broadcast_cursors.published_through` | the fan-out published through |
18
- * | `Client.lastSentSyncId` | this recipient was offered through |
19
- * | `Client.lastAckedSyncId` | this recipient confirmed through |
18
+ * | `log_subscriptions.position` | this participant was served through, in
19
+ * the area the same row names |
20
+ * | `Client.lastSentSyncId` | this socket was offered through |
21
+ * | `Client.lastAckedSyncId` | this socket confirmed through |
20
22
  * | `LogPosition.applied` | the client processed on arrival through |
21
23
  * | `LogPosition.persisted` | the client durably holds through, in
22
24
  * DELIVERED order, not numeric order |
@@ -36,6 +38,21 @@
36
38
  * own head, re-taking the plane lock on every catch-up poll
37
39
  * (docs/plans/delivery-verify-at-read.md). Before comparing two positions, say
38
40
  * out loud which owner each belongs to.
41
+ *
42
+ * ## The owner is a relation, not just a name
43
+ *
44
+ * This doc did its job on the NUMBER and could not do it for the relation that
45
+ * holds one. `log_subscriptions.position` is the durable answer to "where is
46
+ * this participant, in this area" (ADR 0036) — one record per
47
+ * `(participant, area)`, with no connection axis, from which delivery and
48
+ * liveness are projected. The two `Client` fields above are deliberately NOT
49
+ * folded into it: they are an in-flight socket's frame accounting, which is why
50
+ * they name a socket rather than a participant.
51
+ *
52
+ * The rest of the table is ENGINE-owned and stays separate on purpose. The
53
+ * fan-out's progress, the compaction checkpoint and the settled head answer a
54
+ * different question from "where is this participant", and collapsing them
55
+ * would recreate the exact comparison this doc warns about.
39
56
  */
40
57
 
41
58
  import { z } from 'zod';
@@ -7,14 +7,14 @@
7
7
  * so the two can reference each other without an import cycle.
8
8
  */
9
9
 
10
- import type { RecoveryClass } from '../errorCodes.js';
11
- import { noopLogger, type Logger } from '../logger.js';
10
+ import type { RecoveryClass } from '../../errorCodes.js';
11
+ import { noopLogger, type Logger } from '../../logger.js';
12
12
  import {
13
13
  credentialExpiry,
14
14
  credentialToken,
15
15
  type CredentialProvider,
16
16
  type CredentialProviderResult,
17
- } from '../auth/credentialResult.js';
17
+ } from '../../auth/credentialResult.js';
18
18
 
19
19
  /**
20
20
  * Tri-state outcome of a credential re-mint, mirroring the `getToken`
@@ -0,0 +1,4 @@
1
+ /** Shared connection lifecycle boundary. */
2
+ export * from './manager.js';
3
+ export * from './credentialLifecycle.js';
4
+ export * from './networkProbe.js';
@@ -41,13 +41,13 @@
41
41
  */
42
42
 
43
43
  import { probeNetwork, type ProbeResult } from './networkProbe.js';
44
- import type { AuthTokenGetter } from '../auth/credentialSource.js';
44
+ import type { AuthTokenGetter } from '../../auth/credentialSource.js';
45
45
  import type { CredentialRefreshOutcome } from './credentialLifecycle.js';
46
- import { noopLogger, type Logger } from '../logger.js';
46
+ import { noopLogger, type Logger } from '../../logger.js';
47
47
  import {
48
48
  noopSocketObservability,
49
49
  type TransportObservability,
50
- } from '../observability.js';
50
+ } from '../../observability.js';
51
51
 
52
52
  // ─── State ────────────────────────────────────────────────────────────────
53
53
 
@@ -134,6 +134,13 @@ export interface ConnectionManagerOptions {
134
134
  getAuthToken?: AuthTokenGetter;
135
135
  /** Override retry ceilings / jitter. Production should leave defaults. */
136
136
  backoff?: Partial<typeof DEFAULT_BACKOFF>;
137
+ /**
138
+ * Connectivity probe. Defaults to {@link probeNetwork}. Declared so a caller
139
+ * can drive recovery from a deterministic outcome: `probeNetwork` is a
140
+ * sibling inside this module, so a test cannot reach it through the
141
+ * package's `transport/connection` boundary to substitute one.
142
+ */
143
+ probe?: typeof probeNetwork;
137
144
  /** Where transitions are logged. Defaults to silent. */
138
145
  logger?: Logger;
139
146
  /** Where dead-end states are reported. Defaults to silent. */
@@ -179,6 +186,7 @@ export class ConnectionManager {
179
186
  private readonly baseUrl?: string;
180
187
  private readonly getAuthToken?: AuthTokenGetter;
181
188
  private readonly backoff: typeof DEFAULT_BACKOFF;
189
+ private readonly probe: typeof probeNetwork;
182
190
  private readonly logger: Logger;
183
191
  private readonly observability: TransportObservability;
184
192
 
@@ -190,6 +198,7 @@ export class ConnectionManager {
190
198
  this.baseUrl = options.baseUrl;
191
199
  this.getAuthToken = options.getAuthToken;
192
200
  this.backoff = { ...DEFAULT_BACKOFF, ...(options.backoff ?? {}) };
201
+ this.probe = options.probe ?? probeNetwork;
193
202
  this.logger = options.logger ?? noopLogger;
194
203
  this.observability = options.observability ?? noopSocketObservability;
195
204
  }
@@ -539,7 +548,7 @@ export class ConnectionManager {
539
548
 
540
549
  private async runProbe(): Promise<void> {
541
550
  try {
542
- const result = await probeNetwork({
551
+ const result = await this.probe({
543
552
  baseUrl: this.baseUrl,
544
553
  getAuthToken: this.getAuthToken,
545
554
  logger: this.logger,
@@ -23,10 +23,10 @@
23
23
  */
24
24
 
25
25
  import { z } from 'zod';
26
- import { classifyRecovery } from '../errors.js';
27
- import { withAuthHeaders, type AuthTokenGetter } from '../auth/credentialSource.js';
28
- import { ABLO_DEFAULT_BASE_URL } from '../auth/hostedEndpoints.js';
29
- import { noopLogger, type Logger } from '../logger.js';
26
+ import { classifyRecovery } from '../../errors.js';
27
+ import { withAuthHeaders, type AuthTokenGetter } from '../../auth/credentialSource.js';
28
+ import { ABLO_DEFAULT_BASE_URL } from '../../auth/hostedEndpoints.js';
29
+ import { noopLogger, type Logger } from '../../logger.js';
30
30
 
31
31
  /**
32
32
  * The complete set of probe outcomes. Each value carries both reachability and