@abloatai/ablo 0.26.0 → 0.28.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 (418) hide show
  1. package/CHANGELOG.md +42 -2
  2. package/README.md +102 -86
  3. package/dist/BaseSyncedStore.d.ts +85 -88
  4. package/dist/BaseSyncedStore.js +134 -151
  5. package/dist/Database.d.ts +68 -69
  6. package/dist/Database.js +316 -135
  7. package/dist/{ObjectPool.d.ts → InstanceCache.d.ts} +10 -13
  8. package/dist/{ObjectPool.js → InstanceCache.js} +85 -83
  9. package/dist/LazyReferenceCollection.d.ts +11 -15
  10. package/dist/LazyReferenceCollection.js +12 -16
  11. package/dist/Model.d.ts +54 -52
  12. package/dist/Model.js +78 -62
  13. package/dist/ModelRegistry.d.ts +21 -19
  14. package/dist/ModelRegistry.js +23 -27
  15. package/dist/NetworkMonitor.d.ts +5 -6
  16. package/dist/NetworkMonitor.js +5 -6
  17. package/dist/SyncClient.d.ts +122 -118
  18. package/dist/SyncClient.js +541 -245
  19. package/dist/adapters/alwaysOnline.d.ts +6 -8
  20. package/dist/adapters/alwaysOnline.js +6 -8
  21. package/dist/adapters/inMemoryStorage.d.ts +10 -9
  22. package/dist/adapters/inMemoryStorage.js +21 -9
  23. package/dist/agent/Agent.d.ts +27 -32
  24. package/dist/agent/Agent.js +18 -19
  25. package/dist/agent/index.d.ts +4 -4
  26. package/dist/agent/index.js +5 -5
  27. package/dist/agent/session.d.ts +47 -44
  28. package/dist/agent/session.js +37 -48
  29. package/dist/agent/types.d.ts +26 -31
  30. package/dist/agent/types.js +6 -7
  31. package/dist/ai-sdk/coordinatedTool.d.ts +108 -0
  32. package/dist/ai-sdk/{coordinated-tool.js → coordinatedTool.js} +44 -38
  33. package/dist/ai-sdk/coordinationContext.d.ts +46 -0
  34. package/dist/ai-sdk/{coordination-context.js → coordinationContext.js} +26 -33
  35. package/dist/ai-sdk/index.d.ts +25 -22
  36. package/dist/ai-sdk/index.js +25 -22
  37. package/dist/ai-sdk/wrap.d.ts +6 -7
  38. package/dist/ai-sdk/wrap.js +1 -1
  39. package/dist/auth/credentialPolicy.d.ts +69 -74
  40. package/dist/auth/credentialPolicy.js +51 -56
  41. package/dist/auth/credentialSource.d.ts +6 -5
  42. package/dist/auth/credentialSource.js +9 -10
  43. package/dist/auth/index.d.ts +59 -58
  44. package/dist/auth/index.js +31 -37
  45. package/dist/auth/schemas.d.ts +5 -4
  46. package/dist/auth/schemas.js +5 -4
  47. package/dist/batching/index.d.ts +19 -21
  48. package/dist/batching/index.js +14 -17
  49. package/dist/cli.cjs +173 -121
  50. package/dist/client/Ablo.d.ts +97 -74
  51. package/dist/client/Ablo.js +129 -163
  52. package/dist/client/ApiClient.d.ts +30 -19
  53. package/dist/client/ApiClient.js +442 -81
  54. package/dist/client/auth.d.ts +47 -47
  55. package/dist/client/auth.js +108 -117
  56. package/dist/client/claimHeartbeatLoop.d.ts +50 -0
  57. package/dist/client/claimHeartbeatLoop.js +88 -0
  58. package/dist/client/consoleLogger.d.ts +5 -6
  59. package/dist/client/consoleLogger.js +5 -6
  60. package/dist/client/createInternalComponents.d.ts +16 -17
  61. package/dist/client/createInternalComponents.js +26 -31
  62. package/dist/client/createModelProxy.d.ts +130 -120
  63. package/dist/client/createModelProxy.js +152 -122
  64. package/dist/client/credentialEndpoint.d.ts +40 -42
  65. package/dist/client/credentialEndpoint.js +35 -36
  66. package/dist/client/functionalUpdate.d.ts +29 -27
  67. package/dist/client/functionalUpdate.js +21 -21
  68. package/dist/client/hostedEndpoints.d.ts +9 -12
  69. package/dist/client/hostedEndpoints.js +9 -12
  70. package/dist/client/httpClient.d.ts +59 -53
  71. package/dist/client/httpClient.js +29 -31
  72. package/dist/client/identity.d.ts +15 -20
  73. package/dist/client/identity.js +47 -58
  74. package/dist/client/modelRegistration.d.ts +5 -9
  75. package/dist/client/modelRegistration.js +78 -87
  76. package/dist/client/options.d.ts +157 -157
  77. package/dist/client/options.js +3 -7
  78. package/dist/client/registerDataSource.d.ts +9 -9
  79. package/dist/client/registerDataSource.js +15 -16
  80. package/dist/client/resourceTypes.d.ts +64 -75
  81. package/dist/client/resourceTypes.js +4 -10
  82. package/dist/client/schemaConfig.d.ts +31 -43
  83. package/dist/client/schemaConfig.js +38 -50
  84. package/dist/client/sessionMint.d.ts +16 -12
  85. package/dist/client/sessionMint.js +26 -31
  86. package/dist/client/validateAbloOptions.d.ts +12 -14
  87. package/dist/client/validateAbloOptions.js +8 -9
  88. package/dist/client/writeOptionsSchema.d.ts +18 -16
  89. package/dist/client/writeOptionsSchema.js +23 -20
  90. package/dist/client/wsMutationExecutor.d.ts +16 -20
  91. package/dist/client/wsMutationExecutor.js +18 -23
  92. package/dist/commit/contract.d.ts +493 -0
  93. package/dist/commit/contract.js +187 -0
  94. package/dist/commit/index.d.ts +6 -0
  95. package/dist/commit/index.js +5 -0
  96. package/dist/context.d.ts +6 -4
  97. package/dist/context.js +6 -4
  98. package/dist/coordination/index.d.ts +10 -8
  99. package/dist/coordination/index.js +14 -12
  100. package/dist/coordination/schema.d.ts +176 -128
  101. package/dist/coordination/schema.js +197 -133
  102. package/dist/coordination/trace.d.ts +9 -10
  103. package/dist/coordination/trace.js +13 -14
  104. package/dist/core/DatabaseManager.d.ts +5 -7
  105. package/dist/core/DatabaseManager.js +15 -19
  106. package/dist/core/QueryProcessor.d.ts +7 -9
  107. package/dist/core/QueryProcessor.js +22 -28
  108. package/dist/core/QueryView.d.ts +8 -8
  109. package/dist/core/QueryView.js +2 -2
  110. package/dist/core/StoreManager.d.ts +14 -14
  111. package/dist/core/StoreManager.js +33 -24
  112. package/dist/core/ViewRegistry.d.ts +5 -5
  113. package/dist/core/ViewRegistry.js +4 -4
  114. package/dist/core/index.d.ts +17 -12
  115. package/dist/core/index.js +32 -26
  116. package/dist/core/openIDBWithTimeout.d.ts +38 -36
  117. package/dist/core/openIDBWithTimeout.js +42 -43
  118. package/dist/core/queryUtils.d.ts +45 -0
  119. package/dist/core/queryUtils.js +69 -0
  120. package/dist/core/storeContract.d.ts +63 -61
  121. package/dist/core/storeContract.js +8 -12
  122. package/dist/environment.d.ts +28 -0
  123. package/dist/environment.js +21 -0
  124. package/dist/errorCodes.d.ts +107 -99
  125. package/dist/errorCodes.js +137 -134
  126. package/dist/errors.d.ts +160 -166
  127. package/dist/errors.js +155 -158
  128. package/dist/index.d.ts +36 -27
  129. package/dist/index.js +91 -86
  130. package/dist/interfaces/index.d.ts +102 -113
  131. package/dist/interfaces/index.js +5 -4
  132. package/dist/keys/index.d.ts +27 -29
  133. package/dist/keys/index.js +41 -40
  134. package/dist/mutators/RecordingTransaction.d.ts +16 -16
  135. package/dist/mutators/RecordingTransaction.js +31 -37
  136. package/dist/mutators/Transaction.d.ts +18 -26
  137. package/dist/mutators/Transaction.js +14 -20
  138. package/dist/mutators/UndoManager.d.ts +124 -131
  139. package/dist/mutators/UndoManager.js +177 -156
  140. package/dist/mutators/defineMutators.d.ts +23 -34
  141. package/dist/mutators/defineMutators.js +14 -20
  142. package/dist/mutators/inverseOp.d.ts +12 -15
  143. package/dist/mutators/inverseOp.js +12 -15
  144. package/dist/mutators/mutateActions.d.ts +10 -9
  145. package/dist/mutators/mutateActions.js +1 -1
  146. package/dist/mutators/readerActions.d.ts +9 -8
  147. package/dist/mutators/readerActions.js +2 -2
  148. package/dist/mutators/undoApply.d.ts +31 -27
  149. package/dist/mutators/undoApply.js +26 -24
  150. package/dist/policy/index.d.ts +5 -3
  151. package/dist/policy/index.js +5 -3
  152. package/dist/policy/types.d.ts +104 -100
  153. package/dist/policy/types.js +67 -66
  154. package/dist/query/client.d.ts +28 -23
  155. package/dist/query/client.js +45 -43
  156. package/dist/query/types.d.ts +37 -60
  157. package/dist/query/types.js +13 -33
  158. package/dist/react/AbloProvider.d.ts +1 -1
  159. package/dist/react/AbloProvider.js +2 -2
  160. package/dist/react/context.d.ts +25 -28
  161. package/dist/react/context.js +9 -10
  162. package/dist/react/index.d.ts +41 -42
  163. package/dist/react/index.js +37 -38
  164. package/dist/react/internalContext.d.ts +17 -19
  165. package/dist/react/useAblo.d.ts +28 -25
  166. package/dist/react/useAblo.js +41 -17
  167. package/dist/react/useCurrentUserId.d.ts +8 -7
  168. package/dist/react/useCurrentUserId.js +8 -7
  169. package/dist/react/useErrorListener.d.ts +7 -7
  170. package/dist/react/useErrorListener.js +10 -11
  171. package/dist/react/useMutationFailureListener.d.ts +8 -8
  172. package/dist/react/useMutationFailureListener.js +8 -8
  173. package/dist/react/useMutators.d.ts +11 -11
  174. package/dist/react/useMutators.js +3 -3
  175. package/dist/react/useReactive.js +2 -2
  176. package/dist/react/useSyncStatus.d.ts +4 -6
  177. package/dist/react/useUndoScope.d.ts +7 -9
  178. package/dist/react/useUndoScope.js +1 -1
  179. package/dist/schema/coordination.d.ts +21 -25
  180. package/dist/schema/coordination.js +21 -25
  181. package/dist/schema/ddl.d.ts +43 -39
  182. package/dist/schema/ddl.js +75 -68
  183. package/dist/schema/ddlLock.d.ts +20 -24
  184. package/dist/schema/ddlLock.js +18 -23
  185. package/dist/schema/diff.d.ts +99 -61
  186. package/dist/schema/diff.js +43 -34
  187. package/dist/schema/field.d.ts +37 -42
  188. package/dist/schema/field.js +35 -48
  189. package/dist/schema/generate.d.ts +12 -12
  190. package/dist/schema/generate.js +12 -12
  191. package/dist/schema/index.d.ts +3 -3
  192. package/dist/schema/index.js +21 -23
  193. package/dist/schema/model.d.ts +118 -143
  194. package/dist/schema/model.js +22 -33
  195. package/dist/schema/openapi.d.ts +10 -9
  196. package/dist/schema/openapi.js +5 -3
  197. package/dist/schema/queries.d.ts +29 -31
  198. package/dist/schema/queries.js +23 -25
  199. package/dist/schema/relation.d.ts +89 -99
  200. package/dist/schema/relation.js +13 -13
  201. package/dist/schema/residency.d.ts +16 -13
  202. package/dist/schema/residency.js +16 -13
  203. package/dist/schema/roles.d.ts +36 -43
  204. package/dist/schema/roles.js +31 -37
  205. package/dist/schema/schema.d.ts +64 -43
  206. package/dist/schema/schema.js +31 -32
  207. package/dist/schema/select.d.ts +13 -13
  208. package/dist/schema/select.js +13 -13
  209. package/dist/schema/serialize.d.ts +28 -31
  210. package/dist/schema/serialize.js +27 -31
  211. package/dist/schema/sugar.d.ts +17 -32
  212. package/dist/schema/sugar.js +14 -29
  213. package/dist/schema/{sync-delta-row.d.ts → syncDeltaRow.d.ts} +26 -49
  214. package/dist/schema/syncDeltaRow.js +89 -0
  215. package/dist/schema/tenancy.d.ts +44 -46
  216. package/dist/schema/tenancy.js +46 -48
  217. package/dist/server/adapter.d.ts +58 -58
  218. package/dist/server/adapter.js +13 -14
  219. package/dist/server/commit.d.ts +60 -64
  220. package/dist/server/index.d.ts +9 -10
  221. package/dist/server/index.js +1 -1
  222. package/dist/server/readConfig.d.ts +70 -0
  223. package/dist/server/readConfig.js +8 -0
  224. package/dist/server/storageMode.d.ts +23 -0
  225. package/dist/server/storageMode.js +17 -0
  226. package/dist/source/adapter.d.ts +30 -25
  227. package/dist/source/adapter.js +10 -10
  228. package/dist/source/adapters/drizzle.d.ts +28 -23
  229. package/dist/source/adapters/drizzle.js +30 -25
  230. package/dist/source/adapters/kysely.d.ts +27 -25
  231. package/dist/source/adapters/kysely.js +24 -23
  232. package/dist/source/adapters/memory.d.ts +8 -7
  233. package/dist/source/adapters/memory.js +9 -8
  234. package/dist/source/adapters/prisma.d.ts +13 -12
  235. package/dist/source/adapters/prisma.js +22 -25
  236. package/dist/source/conformance.d.ts +18 -11
  237. package/dist/source/conformance.js +17 -11
  238. package/dist/source/connector.d.ts +31 -32
  239. package/dist/source/connector.js +28 -28
  240. package/dist/source/connectorProtocol.d.ts +160 -0
  241. package/dist/source/connectorProtocol.js +162 -0
  242. package/dist/source/contract.d.ts +26 -27
  243. package/dist/source/contract.js +28 -29
  244. package/dist/source/factory.d.ts +46 -58
  245. package/dist/source/factory.js +22 -27
  246. package/dist/source/index.d.ts +7 -9
  247. package/dist/source/index.js +12 -14
  248. package/dist/source/migrations.d.ts +9 -9
  249. package/dist/source/migrations.js +9 -9
  250. package/dist/source/next.d.ts +9 -10
  251. package/dist/source/next.js +6 -7
  252. package/dist/source/pushQueue.d.ts +69 -47
  253. package/dist/source/pushQueue.js +32 -28
  254. package/dist/source/signing.d.ts +46 -17
  255. package/dist/source/signing.js +28 -11
  256. package/dist/source/types.d.ts +121 -104
  257. package/dist/source/types.js +13 -14
  258. package/dist/stores/ObjectStore.d.ts +24 -12
  259. package/dist/stores/ObjectStore.js +38 -16
  260. package/dist/stores/ObjectStoreContract.d.ts +14 -15
  261. package/dist/stores/SyncActionStore.d.ts +7 -11
  262. package/dist/stores/SyncActionStore.js +13 -17
  263. package/dist/surface.d.ts +28 -21
  264. package/dist/surface.js +29 -20
  265. package/dist/sync/{BootstrapHelper.d.ts → BootstrapFetcher.d.ts} +36 -42
  266. package/dist/sync/{BootstrapHelper.js → BootstrapFetcher.js} +76 -76
  267. package/dist/sync/ConnectionManager.d.ts +39 -50
  268. package/dist/sync/ConnectionManager.js +55 -66
  269. package/dist/sync/NetworkProbe.d.ts +24 -29
  270. package/dist/sync/NetworkProbe.js +63 -69
  271. package/dist/sync/{HydrationCoordinator.d.ts → OnDemandLoader.d.ts} +42 -41
  272. package/dist/sync/{HydrationCoordinator.js → OnDemandLoader.js} +59 -54
  273. package/dist/sync/{AreaOfInterestManager.d.ts → SubscriptionManager.d.ts} +43 -57
  274. package/dist/sync/{AreaOfInterestManager.js → SubscriptionManager.js} +43 -51
  275. package/dist/sync/SyncWebSocket.d.ts +141 -166
  276. package/dist/sync/SyncWebSocket.js +191 -223
  277. package/dist/sync/awaitClaimGrant.d.ts +18 -18
  278. package/dist/sync/awaitClaimGrant.js +11 -11
  279. package/dist/sync/bootstrapApply.d.ts +34 -24
  280. package/dist/sync/bootstrapApply.js +27 -19
  281. package/dist/sync/commitFrames.d.ts +21 -20
  282. package/dist/sync/commitFrames.js +18 -18
  283. package/dist/sync/createClaimStream.d.ts +23 -22
  284. package/dist/sync/createClaimStream.js +105 -23
  285. package/dist/sync/createPresenceStream.d.ts +19 -18
  286. package/dist/sync/createPresenceStream.js +25 -26
  287. package/dist/sync/createSnapshot.d.ts +12 -14
  288. package/dist/sync/createSnapshot.js +20 -26
  289. package/dist/sync/credentialLifecycle.d.ts +104 -104
  290. package/dist/sync/credentialLifecycle.js +140 -147
  291. package/dist/sync/deltaPipeline.d.ts +36 -34
  292. package/dist/sync/deltaPipeline.js +64 -65
  293. package/dist/sync/groupChange.d.ts +63 -61
  294. package/dist/sync/groupChange.js +74 -78
  295. package/dist/sync/heartbeat.d.ts +34 -33
  296. package/dist/sync/heartbeat.js +31 -31
  297. package/dist/sync/participants.d.ts +19 -19
  298. package/dist/sync/persistedPrefix.d.ts +12 -0
  299. package/dist/sync/persistedPrefix.js +22 -0
  300. package/dist/sync/schemas.d.ts +3 -2
  301. package/dist/sync/schemas.js +14 -10
  302. package/dist/sync/syncCursor.d.ts +17 -21
  303. package/dist/sync/syncCursor.js +17 -21
  304. package/dist/sync/syncPlan.d.ts +28 -36
  305. package/dist/sync/syncPlan.js +18 -19
  306. package/dist/sync/syncPosition.d.ts +54 -49
  307. package/dist/sync/syncPosition.js +57 -52
  308. package/dist/sync/wsFrameHandlers.d.ts +35 -36
  309. package/dist/sync/wsFrameHandlers.js +63 -67
  310. package/dist/testing/fixtures/bootstrap.d.ts +12 -6
  311. package/dist/testing/fixtures/bootstrap.js +12 -6
  312. package/dist/testing/fixtures/deltas.d.ts +30 -33
  313. package/dist/testing/fixtures/deltas.js +30 -33
  314. package/dist/testing/fixtures/models.d.ts +11 -10
  315. package/dist/testing/fixtures/models.js +11 -10
  316. package/dist/testing/helpers/{react-wrapper.d.ts → reactWrapper.d.ts} +13 -10
  317. package/dist/testing/helpers/{react-wrapper.js → reactWrapper.js} +15 -12
  318. package/dist/testing/helpers/{sync-engine-harness.d.ts → syncEngineHarness.d.ts} +17 -15
  319. package/dist/testing/helpers/{sync-engine-harness.js → syncEngineHarness.js} +12 -10
  320. package/dist/testing/helpers/wait.d.ts +13 -8
  321. package/dist/testing/helpers/wait.js +13 -8
  322. package/dist/testing/index.d.ts +5 -3
  323. package/dist/testing/index.js +3 -2
  324. package/dist/testing/mocks/FakeDatabase.d.ts +18 -0
  325. package/dist/testing/mocks/FakeDatabase.js +10 -0
  326. package/dist/testing/mocks/MockMutationExecutor.d.ts +18 -17
  327. package/dist/testing/mocks/MockMutationExecutor.js +15 -14
  328. package/dist/testing/mocks/MockNetworkMonitor.d.ts +8 -8
  329. package/dist/testing/mocks/MockNetworkMonitor.js +8 -8
  330. package/dist/testing/mocks/MockSyncContext.d.ts +20 -17
  331. package/dist/testing/mocks/MockSyncContext.js +15 -13
  332. package/dist/testing/mocks/MockSyncStore.d.ts +10 -10
  333. package/dist/testing/mocks/MockSyncStore.js +11 -11
  334. package/dist/testing/mocks/MockWebSocket.d.ts +28 -23
  335. package/dist/testing/mocks/MockWebSocket.js +22 -21
  336. package/dist/transactions/TransactionQueue.d.ts +244 -181
  337. package/dist/transactions/TransactionQueue.js +929 -423
  338. package/dist/transactions/TransactionStore.d.ts +6 -4
  339. package/dist/transactions/TransactionStore.js +6 -4
  340. package/dist/transactions/UnconfirmedWrites.d.ts +82 -0
  341. package/dist/transactions/UnconfirmedWrites.js +104 -0
  342. package/dist/transactions/coalesceRules.d.ts +41 -17
  343. package/dist/transactions/coalesceRules.js +40 -17
  344. package/dist/transactions/commitEnvelope.d.ts +132 -0
  345. package/dist/transactions/commitEnvelope.js +139 -0
  346. package/dist/transactions/commitOutboxStore.d.ts +32 -0
  347. package/dist/transactions/commitOutboxStore.js +26 -0
  348. package/dist/transactions/commitPayload.d.ts +63 -52
  349. package/dist/transactions/commitPayload.js +54 -57
  350. package/dist/transactions/deltaConfirmation.d.ts +20 -22
  351. package/dist/transactions/deltaConfirmation.js +37 -45
  352. package/dist/transactions/httpCommitEnvelope.d.ts +43 -0
  353. package/dist/transactions/httpCommitEnvelope.js +179 -0
  354. package/dist/transactions/optimisticApply.d.ts +49 -0
  355. package/dist/transactions/optimisticApply.js +65 -0
  356. package/dist/transactions/replayValidation.d.ts +182 -0
  357. package/dist/transactions/replayValidation.js +156 -0
  358. package/dist/types/global.d.ts +46 -41
  359. package/dist/types/global.js +20 -19
  360. package/dist/types/index.d.ts +71 -77
  361. package/dist/types/index.js +22 -22
  362. package/dist/types/modelData.d.ts +6 -8
  363. package/dist/types/modelData.js +5 -7
  364. package/dist/types/participant.d.ts +10 -11
  365. package/dist/types/participant.js +6 -8
  366. package/dist/types/streams.d.ts +208 -195
  367. package/dist/types/streams.js +7 -7
  368. package/dist/utils/asyncIterator.d.ts +25 -32
  369. package/dist/utils/asyncIterator.js +25 -32
  370. package/dist/utils/duration.d.ts +12 -15
  371. package/dist/utils/duration.js +12 -15
  372. package/dist/utils/mobxSetup.d.ts +53 -0
  373. package/dist/utils/{mobx-setup.js → mobxSetup.js} +42 -98
  374. package/dist/webhooks/events.d.ts +21 -16
  375. package/dist/webhooks/events.js +10 -8
  376. package/dist/webhooks/index.d.ts +5 -7
  377. package/dist/webhooks/index.js +5 -7
  378. package/dist/wire/bootstrapReason.d.ts +9 -0
  379. package/dist/wire/bootstrapReason.js +8 -0
  380. package/dist/{schema/sync-delta-wire.d.ts → wire/delta.d.ts} +58 -41
  381. package/dist/wire/delta.js +114 -0
  382. package/dist/wire/errorEnvelope.d.ts +30 -31
  383. package/dist/wire/errorEnvelope.js +34 -40
  384. package/dist/wire/frames.d.ts +315 -86
  385. package/dist/wire/frames.js +47 -33
  386. package/dist/wire/index.d.ts +18 -14
  387. package/dist/wire/index.js +32 -27
  388. package/dist/wire/listEnvelope.d.ts +16 -23
  389. package/dist/wire/listEnvelope.js +7 -6
  390. package/dist/wire/protocol.d.ts +25 -32
  391. package/dist/wire/protocol.js +25 -32
  392. package/dist/wire/protocolVersion.d.ts +44 -40
  393. package/dist/wire/protocolVersion.js +44 -40
  394. package/docs/api.md +10 -10
  395. package/docs/coordination.md +59 -0
  396. package/docs/mcp.md +1 -1
  397. package/package.json +17 -11
  398. package/dist/ai-sdk/coordinated-tool.d.ts +0 -101
  399. package/dist/ai-sdk/coordination-context.d.ts +0 -52
  400. package/dist/core/query-utils.d.ts +0 -34
  401. package/dist/core/query-utils.js +0 -59
  402. package/dist/schema/sync-delta-row.js +0 -103
  403. package/dist/schema/sync-delta-wire.js +0 -102
  404. package/dist/server/read-config.d.ts +0 -67
  405. package/dist/server/read-config.js +0 -8
  406. package/dist/server/storage-mode.d.ts +0 -8
  407. package/dist/server/storage-mode.js +0 -28
  408. package/dist/source/connector-protocol.d.ts +0 -159
  409. package/dist/source/connector-protocol.js +0 -161
  410. package/dist/transactions/OptimisticEchoTracker.d.ts +0 -82
  411. package/dist/transactions/OptimisticEchoTracker.js +0 -104
  412. package/dist/transactions/mutation-error-handler.d.ts +0 -5
  413. package/dist/transactions/mutation-error-handler.js +0 -39
  414. package/dist/transactions/optimistic.d.ts +0 -24
  415. package/dist/transactions/optimistic.js +0 -45
  416. package/dist/transactions/persistedReplay.d.ts +0 -93
  417. package/dist/transactions/persistedReplay.js +0 -105
  418. package/dist/utils/mobx-setup.d.ts +0 -42
@@ -0,0 +1,493 @@
1
+ /**
2
+ * The transport-independent v2 commit contract.
3
+ *
4
+ * A commit is a caller's atomic write intent. It contains ordered operations,
5
+ * a stable idempotency key, and explicit write preconditions. HTTP and
6
+ * WebSocket transports wrap these schemas; they do not redefine their data.
7
+ * Every public data type in this module is inferred from the Zod schema that
8
+ * validates it at a trust boundary.
9
+ */
10
+ import { z } from 'zod';
11
+ /** Current version of the transport-independent commit contract. */
12
+ export declare const COMMIT_CONTRACT_VERSION: 2;
13
+ /** Stable identity of one logical commit. Reused unchanged for every retry. */
14
+ export declare const idempotencyKeySchema: z.core.$ZodBranded<z.ZodString, "IdempotencyKey", "out">;
15
+ export type IdempotencyKey = z.output<typeof idempotencyKeySchema>;
16
+ /** Server-issued identity of a durable commit execution. */
17
+ export declare const commitIdSchema: z.core.$ZodBranded<z.ZodUUID, "CommitId", "out">;
18
+ export type CommitId = z.output<typeof commitIdSchema>;
19
+ /** Stable identity of one operation within a commit. */
20
+ export declare const operationIdSchema: z.core.$ZodBranded<z.ZodString, "OperationId", "out">;
21
+ export type OperationId = z.output<typeof operationIdSchema>;
22
+ /** Identity of a pessimistic claim whose generation fences a write. */
23
+ export declare const claimIdSchema: z.core.$ZodBranded<z.ZodString, "ClaimId", "out">;
24
+ export type ClaimId = z.output<typeof claimIdSchema>;
25
+ /**
26
+ * Internal committed-log offset. Decimal strings preserve PostgreSQL BIGINT
27
+ * precision across JavaScript and JSON boundaries.
28
+ */
29
+ export declare const syncOffsetSchema: z.core.$ZodBranded<z.ZodString, "SyncOffset", "out">;
30
+ export type SyncOffset = z.output<typeof syncOffsetSchema>;
31
+ /** Opaque resumable cursor returned to clients; consumers must not inspect it. */
32
+ export declare const syncCursorSchema: z.core.$ZodBranded<z.ZodString, "SyncCursor", "out">;
33
+ export type SyncCursor = z.output<typeof syncCursorSchema>;
34
+ /** JSON-safe value accepted by a persisted or fingerprinted commit payload. */
35
+ export declare const jsonValueSchema: z.ZodJSONSchema;
36
+ export type JsonValue = z.output<typeof jsonValueSchema>;
37
+ /** JSON object accepted for entity values, patches, and structured details. */
38
+ export declare const jsonObjectSchema: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
39
+ export type JsonObject = z.output<typeof jsonObjectSchema>;
40
+ /** Model and row addressed by an operation. */
41
+ export declare const entityRefSchema: z.ZodObject<{
42
+ model: z.ZodString;
43
+ id: z.ZodString;
44
+ }, z.core.$strict>;
45
+ export type EntityRef = z.output<typeof entityRefSchema>;
46
+ /**
47
+ * A condition that must still hold when an operation is applied. Preconditions
48
+ * are data rather than option flags so they are included in the request
49
+ * fingerprint and can be reported precisely when a commit conflicts.
50
+ */
51
+ export declare const writePreconditionSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
52
+ type: z.ZodLiteral<"unchanged_since">;
53
+ cursor: z.core.$ZodBranded<z.ZodString, "SyncOffset", "out">;
54
+ fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
55
+ }, z.core.$strict>, z.ZodObject<{
56
+ type: z.ZodLiteral<"version_matches">;
57
+ version: z.ZodNumber;
58
+ }, z.core.$strict>, z.ZodObject<{
59
+ type: z.ZodLiteral<"claim_fence">;
60
+ claimId: z.core.$ZodBranded<z.ZodString, "ClaimId", "out">;
61
+ generation: z.ZodNumber;
62
+ }, z.core.$strict>], "type">;
63
+ export type WritePrecondition = z.output<typeof writePreconditionSchema>;
64
+ /**
65
+ * One ordered entity change within a commit. The discriminant makes illegal
66
+ * combinations unrepresentable: only create carries `value`, only patch
67
+ * carries `changes`, and destructive actions carry neither.
68
+ */
69
+ export declare const commitOperationSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
70
+ type: z.ZodLiteral<"create">;
71
+ value: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
72
+ operationId: z.core.$ZodBranded<z.ZodString, "OperationId", "out">;
73
+ target: z.ZodObject<{
74
+ model: z.ZodString;
75
+ id: z.ZodString;
76
+ }, z.core.$strict>;
77
+ preconditions: z.ZodDefault<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
78
+ type: z.ZodLiteral<"unchanged_since">;
79
+ cursor: z.core.$ZodBranded<z.ZodString, "SyncOffset", "out">;
80
+ fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
81
+ }, z.core.$strict>, z.ZodObject<{
82
+ type: z.ZodLiteral<"version_matches">;
83
+ version: z.ZodNumber;
84
+ }, z.core.$strict>, z.ZodObject<{
85
+ type: z.ZodLiteral<"claim_fence">;
86
+ claimId: z.core.$ZodBranded<z.ZodString, "ClaimId", "out">;
87
+ generation: z.ZodNumber;
88
+ }, z.core.$strict>], "type">>>;
89
+ }, z.core.$strict>, z.ZodObject<{
90
+ type: z.ZodLiteral<"patch">;
91
+ changes: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
92
+ operationId: z.core.$ZodBranded<z.ZodString, "OperationId", "out">;
93
+ target: z.ZodObject<{
94
+ model: z.ZodString;
95
+ id: z.ZodString;
96
+ }, z.core.$strict>;
97
+ preconditions: z.ZodDefault<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
98
+ type: z.ZodLiteral<"unchanged_since">;
99
+ cursor: z.core.$ZodBranded<z.ZodString, "SyncOffset", "out">;
100
+ fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
101
+ }, z.core.$strict>, z.ZodObject<{
102
+ type: z.ZodLiteral<"version_matches">;
103
+ version: z.ZodNumber;
104
+ }, z.core.$strict>, z.ZodObject<{
105
+ type: z.ZodLiteral<"claim_fence">;
106
+ claimId: z.core.$ZodBranded<z.ZodString, "ClaimId", "out">;
107
+ generation: z.ZodNumber;
108
+ }, z.core.$strict>], "type">>>;
109
+ }, z.core.$strict>, z.ZodObject<{
110
+ type: z.ZodLiteral<"delete">;
111
+ operationId: z.core.$ZodBranded<z.ZodString, "OperationId", "out">;
112
+ target: z.ZodObject<{
113
+ model: z.ZodString;
114
+ id: z.ZodString;
115
+ }, z.core.$strict>;
116
+ preconditions: z.ZodDefault<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
117
+ type: z.ZodLiteral<"unchanged_since">;
118
+ cursor: z.core.$ZodBranded<z.ZodString, "SyncOffset", "out">;
119
+ fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
120
+ }, z.core.$strict>, z.ZodObject<{
121
+ type: z.ZodLiteral<"version_matches">;
122
+ version: z.ZodNumber;
123
+ }, z.core.$strict>, z.ZodObject<{
124
+ type: z.ZodLiteral<"claim_fence">;
125
+ claimId: z.core.$ZodBranded<z.ZodString, "ClaimId", "out">;
126
+ generation: z.ZodNumber;
127
+ }, z.core.$strict>], "type">>>;
128
+ }, z.core.$strict>, z.ZodObject<{
129
+ type: z.ZodLiteral<"archive">;
130
+ operationId: z.core.$ZodBranded<z.ZodString, "OperationId", "out">;
131
+ target: z.ZodObject<{
132
+ model: z.ZodString;
133
+ id: z.ZodString;
134
+ }, z.core.$strict>;
135
+ preconditions: z.ZodDefault<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
136
+ type: z.ZodLiteral<"unchanged_since">;
137
+ cursor: z.core.$ZodBranded<z.ZodString, "SyncOffset", "out">;
138
+ fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
139
+ }, z.core.$strict>, z.ZodObject<{
140
+ type: z.ZodLiteral<"version_matches">;
141
+ version: z.ZodNumber;
142
+ }, z.core.$strict>, z.ZodObject<{
143
+ type: z.ZodLiteral<"claim_fence">;
144
+ claimId: z.core.$ZodBranded<z.ZodString, "ClaimId", "out">;
145
+ generation: z.ZodNumber;
146
+ }, z.core.$strict>], "type">>>;
147
+ }, z.core.$strict>, z.ZodObject<{
148
+ type: z.ZodLiteral<"unarchive">;
149
+ operationId: z.core.$ZodBranded<z.ZodString, "OperationId", "out">;
150
+ target: z.ZodObject<{
151
+ model: z.ZodString;
152
+ id: z.ZodString;
153
+ }, z.core.$strict>;
154
+ preconditions: z.ZodDefault<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
155
+ type: z.ZodLiteral<"unchanged_since">;
156
+ cursor: z.core.$ZodBranded<z.ZodString, "SyncOffset", "out">;
157
+ fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
158
+ }, z.core.$strict>, z.ZodObject<{
159
+ type: z.ZodLiteral<"version_matches">;
160
+ version: z.ZodNumber;
161
+ }, z.core.$strict>, z.ZodObject<{
162
+ type: z.ZodLiteral<"claim_fence">;
163
+ claimId: z.core.$ZodBranded<z.ZodString, "ClaimId", "out">;
164
+ generation: z.ZodNumber;
165
+ }, z.core.$strict>], "type">>>;
166
+ }, z.core.$strict>], "type">;
167
+ export type CommitOperationInput = z.input<typeof commitOperationSchema>;
168
+ export type CommitOperation = z.output<typeof commitOperationSchema>;
169
+ /** Semantic lineage included in the durable intent and its fingerprint. */
170
+ export declare const commitMetadataSchema: z.ZodObject<{
171
+ label: z.ZodOptional<z.ZodString>;
172
+ causedByTaskId: z.ZodOptional<z.ZodString>;
173
+ }, z.core.$strict>;
174
+ export type CommitMetadata = z.output<typeof commitMetadataSchema>;
175
+ /** The portion of a request that is fingerprinted, preserving operation order. */
176
+ export declare const commitIntentSchema: z.ZodObject<{
177
+ schemaVersion: z.ZodLiteral<2>;
178
+ operations: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
179
+ type: z.ZodLiteral<"create">;
180
+ value: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
181
+ operationId: z.core.$ZodBranded<z.ZodString, "OperationId", "out">;
182
+ target: z.ZodObject<{
183
+ model: z.ZodString;
184
+ id: z.ZodString;
185
+ }, z.core.$strict>;
186
+ preconditions: z.ZodDefault<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
187
+ type: z.ZodLiteral<"unchanged_since">;
188
+ cursor: z.core.$ZodBranded<z.ZodString, "SyncOffset", "out">;
189
+ fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
190
+ }, z.core.$strict>, z.ZodObject<{
191
+ type: z.ZodLiteral<"version_matches">;
192
+ version: z.ZodNumber;
193
+ }, z.core.$strict>, z.ZodObject<{
194
+ type: z.ZodLiteral<"claim_fence">;
195
+ claimId: z.core.$ZodBranded<z.ZodString, "ClaimId", "out">;
196
+ generation: z.ZodNumber;
197
+ }, z.core.$strict>], "type">>>;
198
+ }, z.core.$strict>, z.ZodObject<{
199
+ type: z.ZodLiteral<"patch">;
200
+ changes: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
201
+ operationId: z.core.$ZodBranded<z.ZodString, "OperationId", "out">;
202
+ target: z.ZodObject<{
203
+ model: z.ZodString;
204
+ id: z.ZodString;
205
+ }, z.core.$strict>;
206
+ preconditions: z.ZodDefault<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
207
+ type: z.ZodLiteral<"unchanged_since">;
208
+ cursor: z.core.$ZodBranded<z.ZodString, "SyncOffset", "out">;
209
+ fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
210
+ }, z.core.$strict>, z.ZodObject<{
211
+ type: z.ZodLiteral<"version_matches">;
212
+ version: z.ZodNumber;
213
+ }, z.core.$strict>, z.ZodObject<{
214
+ type: z.ZodLiteral<"claim_fence">;
215
+ claimId: z.core.$ZodBranded<z.ZodString, "ClaimId", "out">;
216
+ generation: z.ZodNumber;
217
+ }, z.core.$strict>], "type">>>;
218
+ }, z.core.$strict>, z.ZodObject<{
219
+ type: z.ZodLiteral<"delete">;
220
+ operationId: z.core.$ZodBranded<z.ZodString, "OperationId", "out">;
221
+ target: z.ZodObject<{
222
+ model: z.ZodString;
223
+ id: z.ZodString;
224
+ }, z.core.$strict>;
225
+ preconditions: z.ZodDefault<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
226
+ type: z.ZodLiteral<"unchanged_since">;
227
+ cursor: z.core.$ZodBranded<z.ZodString, "SyncOffset", "out">;
228
+ fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
229
+ }, z.core.$strict>, z.ZodObject<{
230
+ type: z.ZodLiteral<"version_matches">;
231
+ version: z.ZodNumber;
232
+ }, z.core.$strict>, z.ZodObject<{
233
+ type: z.ZodLiteral<"claim_fence">;
234
+ claimId: z.core.$ZodBranded<z.ZodString, "ClaimId", "out">;
235
+ generation: z.ZodNumber;
236
+ }, z.core.$strict>], "type">>>;
237
+ }, z.core.$strict>, z.ZodObject<{
238
+ type: z.ZodLiteral<"archive">;
239
+ operationId: z.core.$ZodBranded<z.ZodString, "OperationId", "out">;
240
+ target: z.ZodObject<{
241
+ model: z.ZodString;
242
+ id: z.ZodString;
243
+ }, z.core.$strict>;
244
+ preconditions: z.ZodDefault<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
245
+ type: z.ZodLiteral<"unchanged_since">;
246
+ cursor: z.core.$ZodBranded<z.ZodString, "SyncOffset", "out">;
247
+ fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
248
+ }, z.core.$strict>, z.ZodObject<{
249
+ type: z.ZodLiteral<"version_matches">;
250
+ version: z.ZodNumber;
251
+ }, z.core.$strict>, z.ZodObject<{
252
+ type: z.ZodLiteral<"claim_fence">;
253
+ claimId: z.core.$ZodBranded<z.ZodString, "ClaimId", "out">;
254
+ generation: z.ZodNumber;
255
+ }, z.core.$strict>], "type">>>;
256
+ }, z.core.$strict>, z.ZodObject<{
257
+ type: z.ZodLiteral<"unarchive">;
258
+ operationId: z.core.$ZodBranded<z.ZodString, "OperationId", "out">;
259
+ target: z.ZodObject<{
260
+ model: z.ZodString;
261
+ id: z.ZodString;
262
+ }, z.core.$strict>;
263
+ preconditions: z.ZodDefault<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
264
+ type: z.ZodLiteral<"unchanged_since">;
265
+ cursor: z.core.$ZodBranded<z.ZodString, "SyncOffset", "out">;
266
+ fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
267
+ }, z.core.$strict>, z.ZodObject<{
268
+ type: z.ZodLiteral<"version_matches">;
269
+ version: z.ZodNumber;
270
+ }, z.core.$strict>, z.ZodObject<{
271
+ type: z.ZodLiteral<"claim_fence">;
272
+ claimId: z.core.$ZodBranded<z.ZodString, "ClaimId", "out">;
273
+ generation: z.ZodNumber;
274
+ }, z.core.$strict>], "type">>>;
275
+ }, z.core.$strict>], "type">>;
276
+ metadata: z.ZodOptional<z.ZodObject<{
277
+ label: z.ZodOptional<z.ZodString>;
278
+ causedByTaskId: z.ZodOptional<z.ZodString>;
279
+ }, z.core.$strict>>;
280
+ }, z.core.$strict>;
281
+ export type CommitIntentInput = z.input<typeof commitIntentSchema>;
282
+ export type CommitIntent = z.output<typeof commitIntentSchema>;
283
+ /** A caller's stable idempotency identity plus the intent it identifies. */
284
+ export declare const commitRequestSchema: z.ZodObject<{
285
+ idempotencyKey: z.core.$ZodBranded<z.ZodString, "IdempotencyKey", "out">;
286
+ schemaVersion: z.ZodLiteral<2>;
287
+ operations: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
288
+ type: z.ZodLiteral<"create">;
289
+ value: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
290
+ operationId: z.core.$ZodBranded<z.ZodString, "OperationId", "out">;
291
+ target: z.ZodObject<{
292
+ model: z.ZodString;
293
+ id: z.ZodString;
294
+ }, z.core.$strict>;
295
+ preconditions: z.ZodDefault<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
296
+ type: z.ZodLiteral<"unchanged_since">;
297
+ cursor: z.core.$ZodBranded<z.ZodString, "SyncOffset", "out">;
298
+ fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
299
+ }, z.core.$strict>, z.ZodObject<{
300
+ type: z.ZodLiteral<"version_matches">;
301
+ version: z.ZodNumber;
302
+ }, z.core.$strict>, z.ZodObject<{
303
+ type: z.ZodLiteral<"claim_fence">;
304
+ claimId: z.core.$ZodBranded<z.ZodString, "ClaimId", "out">;
305
+ generation: z.ZodNumber;
306
+ }, z.core.$strict>], "type">>>;
307
+ }, z.core.$strict>, z.ZodObject<{
308
+ type: z.ZodLiteral<"patch">;
309
+ changes: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
310
+ operationId: z.core.$ZodBranded<z.ZodString, "OperationId", "out">;
311
+ target: z.ZodObject<{
312
+ model: z.ZodString;
313
+ id: z.ZodString;
314
+ }, z.core.$strict>;
315
+ preconditions: z.ZodDefault<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
316
+ type: z.ZodLiteral<"unchanged_since">;
317
+ cursor: z.core.$ZodBranded<z.ZodString, "SyncOffset", "out">;
318
+ fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
319
+ }, z.core.$strict>, z.ZodObject<{
320
+ type: z.ZodLiteral<"version_matches">;
321
+ version: z.ZodNumber;
322
+ }, z.core.$strict>, z.ZodObject<{
323
+ type: z.ZodLiteral<"claim_fence">;
324
+ claimId: z.core.$ZodBranded<z.ZodString, "ClaimId", "out">;
325
+ generation: z.ZodNumber;
326
+ }, z.core.$strict>], "type">>>;
327
+ }, z.core.$strict>, z.ZodObject<{
328
+ type: z.ZodLiteral<"delete">;
329
+ operationId: z.core.$ZodBranded<z.ZodString, "OperationId", "out">;
330
+ target: z.ZodObject<{
331
+ model: z.ZodString;
332
+ id: z.ZodString;
333
+ }, z.core.$strict>;
334
+ preconditions: z.ZodDefault<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
335
+ type: z.ZodLiteral<"unchanged_since">;
336
+ cursor: z.core.$ZodBranded<z.ZodString, "SyncOffset", "out">;
337
+ fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
338
+ }, z.core.$strict>, z.ZodObject<{
339
+ type: z.ZodLiteral<"version_matches">;
340
+ version: z.ZodNumber;
341
+ }, z.core.$strict>, z.ZodObject<{
342
+ type: z.ZodLiteral<"claim_fence">;
343
+ claimId: z.core.$ZodBranded<z.ZodString, "ClaimId", "out">;
344
+ generation: z.ZodNumber;
345
+ }, z.core.$strict>], "type">>>;
346
+ }, z.core.$strict>, z.ZodObject<{
347
+ type: z.ZodLiteral<"archive">;
348
+ operationId: z.core.$ZodBranded<z.ZodString, "OperationId", "out">;
349
+ target: z.ZodObject<{
350
+ model: z.ZodString;
351
+ id: z.ZodString;
352
+ }, z.core.$strict>;
353
+ preconditions: z.ZodDefault<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
354
+ type: z.ZodLiteral<"unchanged_since">;
355
+ cursor: z.core.$ZodBranded<z.ZodString, "SyncOffset", "out">;
356
+ fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
357
+ }, z.core.$strict>, z.ZodObject<{
358
+ type: z.ZodLiteral<"version_matches">;
359
+ version: z.ZodNumber;
360
+ }, z.core.$strict>, z.ZodObject<{
361
+ type: z.ZodLiteral<"claim_fence">;
362
+ claimId: z.core.$ZodBranded<z.ZodString, "ClaimId", "out">;
363
+ generation: z.ZodNumber;
364
+ }, z.core.$strict>], "type">>>;
365
+ }, z.core.$strict>, z.ZodObject<{
366
+ type: z.ZodLiteral<"unarchive">;
367
+ operationId: z.core.$ZodBranded<z.ZodString, "OperationId", "out">;
368
+ target: z.ZodObject<{
369
+ model: z.ZodString;
370
+ id: z.ZodString;
371
+ }, z.core.$strict>;
372
+ preconditions: z.ZodDefault<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
373
+ type: z.ZodLiteral<"unchanged_since">;
374
+ cursor: z.core.$ZodBranded<z.ZodString, "SyncOffset", "out">;
375
+ fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
376
+ }, z.core.$strict>, z.ZodObject<{
377
+ type: z.ZodLiteral<"version_matches">;
378
+ version: z.ZodNumber;
379
+ }, z.core.$strict>, z.ZodObject<{
380
+ type: z.ZodLiteral<"claim_fence">;
381
+ claimId: z.core.$ZodBranded<z.ZodString, "ClaimId", "out">;
382
+ generation: z.ZodNumber;
383
+ }, z.core.$strict>], "type">>>;
384
+ }, z.core.$strict>], "type">>;
385
+ metadata: z.ZodOptional<z.ZodObject<{
386
+ label: z.ZodOptional<z.ZodString>;
387
+ causedByTaskId: z.ZodOptional<z.ZodString>;
388
+ }, z.core.$strict>>;
389
+ }, z.core.$strict>;
390
+ export type CommitRequestInput = z.input<typeof commitRequestSchema>;
391
+ export type CommitRequest = z.output<typeof commitRequestSchema>;
392
+ /** Returns the exact semantic value that an idempotency fingerprint covers. */
393
+ export declare function commitIntentOf(request: CommitRequest): CommitIntent;
394
+ /** Machine-readable failure code carried by a rejected v2 commit. */
395
+ export declare const commitErrorCodeSchema: z.ZodUnion<readonly [z.ZodEnum<{}>, z.ZodCustom<`policy:${string}`, `policy:${string}`>]>;
396
+ export type CommitErrorCode = z.output<typeof commitErrorCodeSchema>;
397
+ /** Structured capability a rejected commit would require on retry. */
398
+ export declare const requiredCapabilitySchema: z.ZodObject<{
399
+ scope: z.ZodString;
400
+ constraints: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>>;
401
+ issuer: z.ZodOptional<z.ZodString>;
402
+ ttlSeconds: z.ZodOptional<z.ZodNumber>;
403
+ nonce: z.ZodOptional<z.ZodString>;
404
+ }, z.core.$strict>;
405
+ export type RequiredCapability = z.output<typeof requiredCapabilitySchema>;
406
+ /** Structured terminal error for a commit that did not apply. */
407
+ export declare const commitErrorSchema: z.ZodObject<{
408
+ code: z.ZodUnion<readonly [z.ZodEnum<{}>, z.ZodCustom<`policy:${string}`, `policy:${string}`>]>;
409
+ message: z.ZodString;
410
+ field: z.ZodOptional<z.ZodString>;
411
+ requiredCapability: z.ZodOptional<z.ZodObject<{
412
+ scope: z.ZodString;
413
+ constraints: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>>;
414
+ issuer: z.ZodOptional<z.ZodString>;
415
+ ttlSeconds: z.ZodOptional<z.ZodNumber>;
416
+ nonce: z.ZodOptional<z.ZodString>;
417
+ }, z.core.$strict>>;
418
+ details: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
419
+ }, z.core.$strict>;
420
+ export type CommitError = z.output<typeof commitErrorSchema>;
421
+ /** One failed precondition and the smallest current state needed to reconcile. */
422
+ export declare const commitConflictSchema: z.ZodObject<{
423
+ operationId: z.core.$ZodBranded<z.ZodString, "OperationId", "out">;
424
+ target: z.ZodObject<{
425
+ model: z.ZodString;
426
+ id: z.ZodString;
427
+ }, z.core.$strict>;
428
+ fields: z.ZodArray<z.ZodString>;
429
+ currentValues: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
430
+ observedAt: z.core.$ZodBranded<z.ZodString, "SyncOffset", "out">;
431
+ }, z.core.$strict>;
432
+ export type CommitConflict = z.output<typeof commitConflictSchema>;
433
+ /**
434
+ * Terminal result of a commit execution. Expected outcomes are a discriminated
435
+ * union, so committed, conflicted, and rejected results cannot expose fields
436
+ * belonging to another state.
437
+ */
438
+ export declare const commitReceiptSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
439
+ status: z.ZodLiteral<"committed">;
440
+ syncCursor: z.core.$ZodBranded<z.ZodString, "SyncCursor", "out">;
441
+ operationCount: z.ZodNumber;
442
+ object: z.ZodLiteral<"commit_receipt">;
443
+ schemaVersion: z.ZodLiteral<2>;
444
+ idempotencyKey: z.core.$ZodBranded<z.ZodString, "IdempotencyKey", "out">;
445
+ commitId: z.core.$ZodBranded<z.ZodUUID, "CommitId", "out">;
446
+ }, z.core.$strict>, z.ZodObject<{
447
+ status: z.ZodLiteral<"conflicted">;
448
+ syncCursor: z.core.$ZodBranded<z.ZodString, "SyncCursor", "out">;
449
+ conflicts: z.ZodArray<z.ZodObject<{
450
+ operationId: z.core.$ZodBranded<z.ZodString, "OperationId", "out">;
451
+ target: z.ZodObject<{
452
+ model: z.ZodString;
453
+ id: z.ZodString;
454
+ }, z.core.$strict>;
455
+ fields: z.ZodArray<z.ZodString>;
456
+ currentValues: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
457
+ observedAt: z.core.$ZodBranded<z.ZodString, "SyncOffset", "out">;
458
+ }, z.core.$strict>>;
459
+ object: z.ZodLiteral<"commit_receipt">;
460
+ schemaVersion: z.ZodLiteral<2>;
461
+ idempotencyKey: z.core.$ZodBranded<z.ZodString, "IdempotencyKey", "out">;
462
+ commitId: z.core.$ZodBranded<z.ZodUUID, "CommitId", "out">;
463
+ }, z.core.$strict>, z.ZodObject<{
464
+ status: z.ZodLiteral<"rejected">;
465
+ error: z.ZodObject<{
466
+ code: z.ZodUnion<readonly [z.ZodEnum<{}>, z.ZodCustom<`policy:${string}`, `policy:${string}`>]>;
467
+ message: z.ZodString;
468
+ field: z.ZodOptional<z.ZodString>;
469
+ requiredCapability: z.ZodOptional<z.ZodObject<{
470
+ scope: z.ZodString;
471
+ constraints: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>>;
472
+ issuer: z.ZodOptional<z.ZodString>;
473
+ ttlSeconds: z.ZodOptional<z.ZodNumber>;
474
+ nonce: z.ZodOptional<z.ZodString>;
475
+ }, z.core.$strict>>;
476
+ details: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
477
+ }, z.core.$strict>;
478
+ object: z.ZodLiteral<"commit_receipt">;
479
+ schemaVersion: z.ZodLiteral<2>;
480
+ idempotencyKey: z.core.$ZodBranded<z.ZodString, "IdempotencyKey", "out">;
481
+ commitId: z.core.$ZodBranded<z.ZodUUID, "CommitId", "out">;
482
+ }, z.core.$strict>], "status">;
483
+ export type CommitReceiptInput = z.input<typeof commitReceiptSchema>;
484
+ export type CommitReceipt = z.output<typeof commitReceiptSchema>;
485
+ export type CommittedCommitReceipt = Extract<CommitReceipt, {
486
+ status: 'committed';
487
+ }>;
488
+ export type ConflictedCommitReceipt = Extract<CommitReceipt, {
489
+ status: 'conflicted';
490
+ }>;
491
+ export type RejectedCommitReceipt = Extract<CommitReceipt, {
492
+ status: 'rejected';
493
+ }>;