@abloatai/ablo 0.36.0 → 0.37.1

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 (597) hide show
  1. package/AGENTS.md +2 -2
  2. package/CHANGELOG.md +55 -2014
  3. package/NOTICE +2 -2
  4. package/README.md +45 -63
  5. package/assets/banner.png +0 -0
  6. package/dist/auth.d.ts +2 -0
  7. package/dist/auth.d.ts.map +1 -0
  8. package/dist/auth.js +2 -0
  9. package/dist/auth.js.map +1 -0
  10. package/dist/client.d.ts +3 -0
  11. package/dist/client.d.ts.map +1 -0
  12. package/dist/client.js +3 -0
  13. package/dist/client.js.map +1 -0
  14. package/dist/coordination.d.ts +2 -0
  15. package/dist/coordination.d.ts.map +1 -0
  16. package/dist/coordination.js +2 -0
  17. package/dist/coordination.js.map +1 -0
  18. package/dist/index.d.ts +3 -114
  19. package/dist/index.d.ts.map +1 -0
  20. package/dist/index.js +3 -163
  21. package/dist/index.js.map +1 -0
  22. package/dist/react.d.ts +4 -0
  23. package/dist/react.d.ts.map +1 -0
  24. package/dist/react.js +3 -0
  25. package/dist/react.js.map +1 -0
  26. package/dist/schema.d.ts +2 -0
  27. package/dist/schema.d.ts.map +1 -0
  28. package/dist/schema.js +2 -0
  29. package/dist/schema.js.map +1 -0
  30. package/dist/server.d.ts +2 -0
  31. package/dist/server.d.ts.map +1 -0
  32. package/dist/server.js +2 -0
  33. package/dist/server.js.map +1 -0
  34. package/dist/source-conformance.d.ts +2 -0
  35. package/dist/source-conformance.d.ts.map +1 -0
  36. package/dist/source-conformance.js +2 -0
  37. package/dist/source-conformance.js.map +1 -0
  38. package/dist/source-drizzle.d.ts +2 -0
  39. package/dist/source-drizzle.d.ts.map +1 -0
  40. package/dist/source-drizzle.js +2 -0
  41. package/dist/source-drizzle.js.map +1 -0
  42. package/dist/source-kysely.d.ts +2 -0
  43. package/dist/source-kysely.d.ts.map +1 -0
  44. package/dist/source-kysely.js +2 -0
  45. package/dist/source-kysely.js.map +1 -0
  46. package/dist/source-next.d.ts +2 -0
  47. package/dist/source-next.d.ts.map +1 -0
  48. package/dist/source-next.js +2 -0
  49. package/dist/source-next.js.map +1 -0
  50. package/dist/source.d.ts +2 -0
  51. package/dist/source.d.ts.map +1 -0
  52. package/dist/source.js +2 -0
  53. package/dist/source.js.map +1 -0
  54. package/dist/wire.d.ts +2 -0
  55. package/dist/wire.d.ts.map +1 -0
  56. package/dist/wire.js +2 -0
  57. package/dist/wire.js.map +1 -0
  58. package/docs/agents.md +1 -1
  59. package/docs/api-keys.md +7 -6
  60. package/docs/api.md +10 -10
  61. package/docs/client-behavior.md +5 -5
  62. package/docs/coordination.md +52 -62
  63. package/docs/data-sources.md +1 -1
  64. package/docs/examples/agent-human.md +4 -4
  65. package/docs/examples/ai-sdk-tool.md +1 -1
  66. package/docs/examples/existing-python-backend.md +15 -4
  67. package/docs/examples/nextjs.md +27 -6
  68. package/docs/examples/server-agent.md +2 -2
  69. package/docs/how-it-works.md +4 -4
  70. package/docs/identity.md +2 -1
  71. package/docs/integration-guide.md +24 -13
  72. package/docs/internal/README.md +18 -0
  73. package/docs/internal/agent-fleet-coordination-design.md +171 -0
  74. package/docs/internal/agent-orchestration.md +58 -0
  75. package/docs/internal/commit-identifiers.md +91 -0
  76. package/docs/internal/concurrency-open-decisions.md +37 -0
  77. package/docs/internal/data-source-reverse-channel.md +150 -0
  78. package/docs/internal/per-field-conflict-detection.md +165 -0
  79. package/docs/internal/postgres-replication.md +64 -0
  80. package/docs/internal/serializable-schema.md +119 -0
  81. package/docs/internal/structure.md +32 -0
  82. package/docs/mcp.md +2 -2
  83. package/docs/migration.md +3 -3
  84. package/docs/quickstart.md +2 -2
  85. package/docs/react.md +5 -5
  86. package/docs/schema-contract.md +3 -3
  87. package/docs/sessions.md +91 -37
  88. package/examples/README.md +2 -2
  89. package/examples/data-source/README.md +1 -1
  90. package/examples/data-source/ablo-driver.ts +1 -1
  91. package/examples/data-source/customer-server.ts +1 -1
  92. package/examples/data-source/run.ts +1 -1
  93. package/examples/data-source/schema.ts +1 -1
  94. package/examples/quickstart.ts +2 -2
  95. package/llms.txt +8 -8
  96. package/package.json +63 -166
  97. package/bin/ablo.cjs +0 -39
  98. package/dist/BaseSyncedStore.d.ts +0 -843
  99. package/dist/BaseSyncedStore.js +0 -1971
  100. package/dist/Database.d.ts +0 -323
  101. package/dist/Database.js +0 -1502
  102. package/dist/InstanceCache.d.ts +0 -237
  103. package/dist/InstanceCache.js +0 -1166
  104. package/dist/LazyReferenceCollection.d.ts +0 -177
  105. package/dist/LazyReferenceCollection.js +0 -461
  106. package/dist/Model.d.ts +0 -454
  107. package/dist/Model.js +0 -919
  108. package/dist/ModelRegistry.d.ts +0 -225
  109. package/dist/ModelRegistry.js +0 -539
  110. package/dist/NetworkMonitor.d.ts +0 -28
  111. package/dist/NetworkMonitor.js +0 -79
  112. package/dist/RuntimeContext.d.ts +0 -52
  113. package/dist/RuntimeContext.js +0 -80
  114. package/dist/SyncClient.d.ts +0 -541
  115. package/dist/SyncClient.js +0 -2202
  116. package/dist/adapters/alwaysOnline.d.ts +0 -14
  117. package/dist/adapters/alwaysOnline.js +0 -17
  118. package/dist/adapters/inMemoryStorage.d.ts +0 -31
  119. package/dist/adapters/inMemoryStorage.js +0 -110
  120. package/dist/ai-sdk/coordinatedTool.d.ts +0 -120
  121. package/dist/ai-sdk/coordinatedTool.js +0 -134
  122. package/dist/ai-sdk/coordinationContext.d.ts +0 -46
  123. package/dist/ai-sdk/coordinationContext.js +0 -106
  124. package/dist/ai-sdk/index.d.ts +0 -121
  125. package/dist/ai-sdk/index.js +0 -121
  126. package/dist/ai-sdk/wrap.d.ts +0 -65
  127. package/dist/ai-sdk/wrap.js +0 -39
  128. package/dist/auth/index.d.ts +0 -1
  129. package/dist/auth/index.js +0 -8
  130. package/dist/batching/index.d.ts +0 -55
  131. package/dist/batching/index.js +0 -147
  132. package/dist/client/Ablo.d.ts +0 -231
  133. package/dist/client/Ablo.js +0 -160
  134. package/dist/client/abloClient.d.ts +0 -309
  135. package/dist/client/abloClient.js +0 -13
  136. package/dist/client/clientPrelude.d.ts +0 -52
  137. package/dist/client/clientPrelude.js +0 -60
  138. package/dist/client/consoleLogger.d.ts +0 -35
  139. package/dist/client/consoleLogger.js +0 -44
  140. package/dist/client/coreClient.d.ts +0 -60
  141. package/dist/client/coreClient.js +0 -118
  142. package/dist/client/createInternalComponents.d.ts +0 -50
  143. package/dist/client/createInternalComponents.js +0 -98
  144. package/dist/client/createModelProxy.d.ts +0 -248
  145. package/dist/client/createModelProxy.js +0 -884
  146. package/dist/client/humans.d.ts +0 -69
  147. package/dist/client/humans.js +0 -78
  148. package/dist/client/modelRegistration.d.ts +0 -10
  149. package/dist/client/modelRegistration.js +0 -312
  150. package/dist/client/options.d.ts +0 -461
  151. package/dist/client/options.js +0 -7
  152. package/dist/client/reactiveEngine.d.ts +0 -53
  153. package/dist/client/reactiveEngine.js +0 -688
  154. package/dist/client/resourceTypes.d.ts +0 -12
  155. package/dist/client/resourceTypes.js +0 -10
  156. package/dist/client/schemaConfig.d.ts +0 -44
  157. package/dist/client/schemaConfig.js +0 -185
  158. package/dist/client/storeCluster.d.ts +0 -47
  159. package/dist/client/storeCluster.js +0 -118
  160. package/dist/client/storeLifecycle.d.ts +0 -61
  161. package/dist/client/storeLifecycle.js +0 -231
  162. package/dist/client/validateAbloOptions.d.ts +0 -42
  163. package/dist/client/validateAbloOptions.js +0 -43
  164. package/dist/client/wsMutationExecutor.d.ts +0 -27
  165. package/dist/client/wsMutationExecutor.js +0 -72
  166. package/dist/context.d.ts +0 -42
  167. package/dist/context.js +0 -81
  168. package/dist/coordination/ClaimLog.d.ts +0 -26
  169. package/dist/coordination/ClaimLog.js +0 -32
  170. package/dist/coordination/index.d.ts +0 -1
  171. package/dist/coordination/index.js +0 -8
  172. package/dist/core/index.d.ts +0 -33
  173. package/dist/core/index.js +0 -48
  174. package/dist/docs/catalog.d.ts +0 -72
  175. package/dist/docs/catalog.js +0 -230
  176. package/dist/docs/index.d.ts +0 -10
  177. package/dist/docs/index.js +0 -10
  178. package/dist/environment.d.ts +0 -1
  179. package/dist/environment.js +0 -8
  180. package/dist/interfaces/index.d.ts +0 -311
  181. package/dist/interfaces/index.js +0 -9
  182. package/dist/keys/index.d.ts +0 -1
  183. package/dist/keys/index.js +0 -8
  184. package/dist/mutators/RecordingMutation.d.ts +0 -36
  185. package/dist/mutators/RecordingMutation.js +0 -182
  186. package/dist/mutators/Transaction.d.ts +0 -40
  187. package/dist/mutators/Transaction.js +0 -58
  188. package/dist/mutators/UndoManager.d.ts +0 -258
  189. package/dist/mutators/UndoManager.js +0 -658
  190. package/dist/mutators/defineMutators.d.ts +0 -60
  191. package/dist/mutators/defineMutators.js +0 -18
  192. package/dist/mutators/inverseOp.d.ts +0 -126
  193. package/dist/mutators/inverseOp.js +0 -71
  194. package/dist/mutators/mutateActions.d.ts +0 -45
  195. package/dist/mutators/mutateActions.js +0 -105
  196. package/dist/mutators/readerActions.d.ts +0 -33
  197. package/dist/mutators/readerActions.js +0 -57
  198. package/dist/mutators/undoApply.d.ts +0 -51
  199. package/dist/mutators/undoApply.js +0 -117
  200. package/dist/policy/index.d.ts +0 -21
  201. package/dist/policy/index.js +0 -20
  202. package/dist/query/QueryProcessor.d.ts +0 -75
  203. package/dist/query/QueryProcessor.js +0 -255
  204. package/dist/query/client.d.ts +0 -64
  205. package/dist/query/client.js +0 -138
  206. package/dist/query/types.d.ts +0 -85
  207. package/dist/query/types.js +0 -16
  208. package/dist/react/AbloProvider.d.ts +0 -242
  209. package/dist/react/AbloProvider.js +0 -458
  210. package/dist/react/ClientSideSuspense.d.ts +0 -36
  211. package/dist/react/ClientSideSuspense.js +0 -17
  212. package/dist/react/DefaultFallback.d.ts +0 -24
  213. package/dist/react/DefaultFallback.js +0 -43
  214. package/dist/react/context.d.ts +0 -55
  215. package/dist/react/context.js +0 -29
  216. package/dist/react/createAbloReact.d.ts +0 -56
  217. package/dist/react/createAbloReact.js +0 -51
  218. package/dist/react/index.d.ts +0 -62
  219. package/dist/react/index.js +0 -69
  220. package/dist/react/internalContext.d.ts +0 -33
  221. package/dist/react/internalContext.js +0 -3
  222. package/dist/react/useAblo.d.ts +0 -82
  223. package/dist/react/useAblo.js +0 -120
  224. package/dist/react/useCurrentUserId.d.ts +0 -22
  225. package/dist/react/useCurrentUserId.js +0 -34
  226. package/dist/react/useErrorListener.d.ts +0 -20
  227. package/dist/react/useErrorListener.js +0 -38
  228. package/dist/react/useMutationFailureListener.d.ts +0 -26
  229. package/dist/react/useMutationFailureListener.js +0 -38
  230. package/dist/react/useMutators.d.ts +0 -56
  231. package/dist/react/useMutators.js +0 -84
  232. package/dist/react/useReactive.d.ts +0 -35
  233. package/dist/react/useReactive.js +0 -123
  234. package/dist/react/useSyncStatus.d.ts +0 -59
  235. package/dist/react/useSyncStatus.js +0 -76
  236. package/dist/react/useUndoScope.d.ts +0 -34
  237. package/dist/react/useUndoScope.js +0 -81
  238. package/dist/schema/coordination.d.ts +0 -112
  239. package/dist/schema/coordination.js +0 -133
  240. package/dist/schema/ddl.d.ts +0 -97
  241. package/dist/schema/ddl.js +0 -491
  242. package/dist/schema/ddlLock.d.ts +0 -35
  243. package/dist/schema/ddlLock.js +0 -46
  244. package/dist/schema/diff.d.ts +0 -225
  245. package/dist/schema/diff.js +0 -289
  246. package/dist/schema/generate.d.ts +0 -19
  247. package/dist/schema/generate.js +0 -86
  248. package/dist/schema/index.d.ts +0 -42
  249. package/dist/schema/index.js +0 -80
  250. package/dist/schema/queries.d.ts +0 -201
  251. package/dist/schema/queries.js +0 -144
  252. package/dist/schema/select.d.ts +0 -40
  253. package/dist/schema/select.js +0 -90
  254. package/dist/schema/serialize.d.ts +0 -115
  255. package/dist/schema/serialize.js +0 -265
  256. package/dist/schema/sugar.d.ts +0 -109
  257. package/dist/schema/sugar.js +0 -83
  258. package/dist/schema/syncDeltaRow.d.ts +0 -6
  259. package/dist/schema/syncDeltaRow.js +0 -6
  260. package/dist/server/adapter.d.ts +0 -173
  261. package/dist/server/adapter.js +0 -18
  262. package/dist/server/commit.d.ts +0 -107
  263. package/dist/server/commit.js +0 -1
  264. package/dist/server/index.d.ts +0 -14
  265. package/dist/server/index.js +0 -2
  266. package/dist/server/readConfig.d.ts +0 -80
  267. package/dist/server/readConfig.js +0 -8
  268. package/dist/server/storageMode.d.ts +0 -23
  269. package/dist/server/storageMode.js +0 -17
  270. package/dist/source/adapter.d.ts +0 -83
  271. package/dist/source/adapter.js +0 -24
  272. package/dist/source/adapters/drizzle.d.ts +0 -48
  273. package/dist/source/adapters/drizzle.js +0 -219
  274. package/dist/source/adapters/kysely.d.ts +0 -42
  275. package/dist/source/adapters/kysely.js +0 -205
  276. package/dist/source/adapters/kyselyMutationCore.d.ts +0 -76
  277. package/dist/source/adapters/kyselyMutationCore.js +0 -125
  278. package/dist/source/adapters/memory.d.ts +0 -13
  279. package/dist/source/adapters/memory.js +0 -130
  280. package/dist/source/adapters/prisma.d.ts +0 -63
  281. package/dist/source/adapters/prisma.js +0 -202
  282. package/dist/source/conformance.d.ts +0 -37
  283. package/dist/source/conformance.js +0 -215
  284. package/dist/source/connector.d.ts +0 -95
  285. package/dist/source/connector.js +0 -266
  286. package/dist/source/connectorProtocol.d.ts +0 -154
  287. package/dist/source/connectorProtocol.js +0 -163
  288. package/dist/source/contract.d.ts +0 -195
  289. package/dist/source/contract.js +0 -164
  290. package/dist/source/factory.d.ts +0 -92
  291. package/dist/source/factory.js +0 -286
  292. package/dist/source/idempotency.d.ts +0 -61
  293. package/dist/source/idempotency.js +0 -144
  294. package/dist/source/index.d.ts +0 -23
  295. package/dist/source/index.js +0 -30
  296. package/dist/source/migrations.d.ts +0 -21
  297. package/dist/source/migrations.js +0 -103
  298. package/dist/source/next.d.ts +0 -32
  299. package/dist/source/next.js +0 -25
  300. package/dist/source/pushQueue.d.ts +0 -134
  301. package/dist/source/pushQueue.js +0 -256
  302. package/dist/source/signing.d.ts +0 -92
  303. package/dist/source/signing.js +0 -162
  304. package/dist/source/types.d.ts +0 -401
  305. package/dist/source/types.js +0 -59
  306. package/dist/storeContract.d.ts +0 -145
  307. package/dist/storeContract.js +0 -12
  308. package/dist/stores/DatabaseManager.d.ts +0 -107
  309. package/dist/stores/DatabaseManager.js +0 -388
  310. package/dist/stores/ObjectStore.d.ts +0 -115
  311. package/dist/stores/ObjectStore.js +0 -393
  312. package/dist/stores/ObjectStoreContract.d.ts +0 -38
  313. package/dist/stores/ObjectStoreContract.js +0 -1
  314. package/dist/stores/StoreManager.d.ts +0 -114
  315. package/dist/stores/StoreManager.js +0 -304
  316. package/dist/stores/SyncActionStore.d.ts +0 -99
  317. package/dist/stores/SyncActionStore.js +0 -506
  318. package/dist/stores/openIDBWithTimeout.d.ts +0 -65
  319. package/dist/stores/openIDBWithTimeout.js +0 -153
  320. package/dist/stores/syncAction.d.ts +0 -26
  321. package/dist/stores/syncAction.js +0 -16
  322. package/dist/surface.d.ts +0 -36
  323. package/dist/surface.js +0 -75
  324. package/dist/sync/BootstrapFetcher.d.ts +0 -284
  325. package/dist/sync/BootstrapFetcher.js +0 -964
  326. package/dist/sync/ConnectionManager.d.ts +0 -8
  327. package/dist/sync/ConnectionManager.js +0 -8
  328. package/dist/sync/OnDemandLoader.d.ts +0 -231
  329. package/dist/sync/OnDemandLoader.js +0 -743
  330. package/dist/sync/SubscriptionManager.d.ts +0 -159
  331. package/dist/sync/SubscriptionManager.js +0 -243
  332. package/dist/sync/SyncWebSocket.d.ts +0 -173
  333. package/dist/sync/SyncWebSocket.js +0 -438
  334. package/dist/sync/awaitClaimGrant.d.ts +0 -6
  335. package/dist/sync/awaitClaimGrant.js +0 -6
  336. package/dist/sync/bootstrapApply.d.ts +0 -73
  337. package/dist/sync/bootstrapApply.js +0 -73
  338. package/dist/sync/commitFrames.d.ts +0 -8
  339. package/dist/sync/commitFrames.js +0 -8
  340. package/dist/sync/contextPorts.d.ts +0 -18
  341. package/dist/sync/contextPorts.js +0 -31
  342. package/dist/sync/createClaimStream.d.ts +0 -7
  343. package/dist/sync/createClaimStream.js +0 -7
  344. package/dist/sync/createPresenceStream.d.ts +0 -69
  345. package/dist/sync/createPresenceStream.js +0 -200
  346. package/dist/sync/createSnapshot.d.ts +0 -29
  347. package/dist/sync/createSnapshot.js +0 -118
  348. package/dist/sync/credentialLifecycle.d.ts +0 -7
  349. package/dist/sync/credentialLifecycle.js +0 -7
  350. package/dist/sync/deltaPipeline.d.ts +0 -114
  351. package/dist/sync/deltaPipeline.js +0 -278
  352. package/dist/sync/groupChange.d.ts +0 -116
  353. package/dist/sync/groupChange.js +0 -244
  354. package/dist/sync/participants.d.ts +0 -132
  355. package/dist/sync/participants.js +0 -346
  356. package/dist/sync/persistedPrefix.d.ts +0 -12
  357. package/dist/sync/persistedPrefix.js +0 -22
  358. package/dist/sync/schemaDrift.d.ts +0 -55
  359. package/dist/sync/schemaDrift.js +0 -53
  360. package/dist/sync/schemas.d.ts +0 -71
  361. package/dist/sync/schemas.js +0 -94
  362. package/dist/sync/syncCursor.d.ts +0 -40
  363. package/dist/sync/syncCursor.js +0 -55
  364. package/dist/sync/syncPlan.d.ts +0 -54
  365. package/dist/sync/syncPlan.js +0 -50
  366. package/dist/sync/wsFrameHandlers.d.ts +0 -8
  367. package/dist/sync/wsFrameHandlers.js +0 -8
  368. package/dist/syncLog/contract.d.ts +0 -20
  369. package/dist/syncLog/contract.js +0 -19
  370. package/dist/syncLog/index.d.ts +0 -1
  371. package/dist/syncLog/index.js +0 -1
  372. package/dist/transaction/ablo.d.ts +0 -88
  373. package/dist/transaction/ablo.js +0 -33
  374. package/dist/transaction/auth/apiKey.d.ts +0 -152
  375. package/dist/transaction/auth/apiKey.js +0 -419
  376. package/dist/transaction/auth/bootstrapScope.d.ts +0 -15
  377. package/dist/transaction/auth/bootstrapScope.js +0 -1
  378. package/dist/transaction/auth/capability.d.ts +0 -212
  379. package/dist/transaction/auth/capability.js +0 -224
  380. package/dist/transaction/auth/credentialEndpoint.d.ts +0 -61
  381. package/dist/transaction/auth/credentialEndpoint.js +0 -86
  382. package/dist/transaction/auth/credentialPolicy.d.ts +0 -148
  383. package/dist/transaction/auth/credentialPolicy.js +0 -125
  384. package/dist/transaction/auth/credentialSource.d.ts +0 -30
  385. package/dist/transaction/auth/credentialSource.js +0 -55
  386. package/dist/transaction/auth/hostedEndpoints.d.ts +0 -21
  387. package/dist/transaction/auth/hostedEndpoints.js +0 -21
  388. package/dist/transaction/auth/identity.d.ts +0 -55
  389. package/dist/transaction/auth/identity.js +0 -210
  390. package/dist/transaction/auth/index.d.ts +0 -162
  391. package/dist/transaction/auth/index.js +0 -304
  392. package/dist/transaction/auth/schemas.d.ts +0 -59
  393. package/dist/transaction/auth/schemas.js +0 -85
  394. package/dist/transaction/auth/sessionMint.d.ts +0 -28
  395. package/dist/transaction/auth/sessionMint.js +0 -85
  396. package/dist/transaction/coordination/awaitClaimGrant.d.ts +0 -56
  397. package/dist/transaction/coordination/awaitClaimGrant.js +0 -124
  398. package/dist/transaction/coordination/claimHeartbeatLoop.d.ts +0 -84
  399. package/dist/transaction/coordination/claimHeartbeatLoop.js +0 -108
  400. package/dist/transaction/coordination/claimMeta.d.ts +0 -49
  401. package/dist/transaction/coordination/claimMeta.js +0 -52
  402. package/dist/transaction/coordination/createClaimStream.d.ts +0 -64
  403. package/dist/transaction/coordination/createClaimStream.js +0 -475
  404. package/dist/transaction/coordination/events.d.ts +0 -74
  405. package/dist/transaction/coordination/events.js +0 -7
  406. package/dist/transaction/coordination/index.d.ts +0 -19
  407. package/dist/transaction/coordination/index.js +0 -45
  408. package/dist/transaction/coordination/locator.d.ts +0 -104
  409. package/dist/transaction/coordination/locator.js +0 -102
  410. package/dist/transaction/coordination/schema.d.ts +0 -1536
  411. package/dist/transaction/coordination/schema.js +0 -1177
  412. package/dist/transaction/coordination/targetConflict.d.ts +0 -2
  413. package/dist/transaction/coordination/targetConflict.js +0 -107
  414. package/dist/transaction/coordination/trace.d.ts +0 -78
  415. package/dist/transaction/coordination/trace.js +0 -138
  416. package/dist/transaction/durableWrites.d.ts +0 -62
  417. package/dist/transaction/durableWrites.js +0 -71
  418. package/dist/transaction/environment.d.ts +0 -105
  419. package/dist/transaction/environment.js +0 -108
  420. package/dist/transaction/errorCodes.d.ts +0 -403
  421. package/dist/transaction/errorCodes.js +0 -484
  422. package/dist/transaction/errors.d.ts +0 -428
  423. package/dist/transaction/errors.js +0 -686
  424. package/dist/transaction/footprint.d.ts +0 -111
  425. package/dist/transaction/footprint.js +0 -0
  426. package/dist/transaction/index.d.ts +0 -20
  427. package/dist/transaction/index.js +0 -20
  428. package/dist/transaction/keys/index.d.ts +0 -87
  429. package/dist/transaction/keys/index.js +0 -207
  430. package/dist/transaction/log/syncDeltaRow.d.ts +0 -158
  431. package/dist/transaction/log/syncDeltaRow.js +0 -95
  432. package/dist/transaction/logPosition.d.ts +0 -97
  433. package/dist/transaction/logPosition.js +0 -125
  434. package/dist/transaction/logger.d.ts +0 -16
  435. package/dist/transaction/logger.js +0 -7
  436. package/dist/transaction/observability.d.ts +0 -53
  437. package/dist/transaction/observability.js +0 -19
  438. package/dist/transaction/persistence.d.ts +0 -12
  439. package/dist/transaction/persistence.js +0 -11
  440. package/dist/transaction/plugin.d.ts +0 -285
  441. package/dist/transaction/plugin.js +0 -106
  442. package/dist/transaction/policy/types.d.ts +0 -217
  443. package/dist/transaction/policy/types.js +0 -126
  444. package/dist/transaction/resources/functionalUpdate.d.ts +0 -79
  445. package/dist/transaction/resources/functionalUpdate.js +0 -87
  446. package/dist/transaction/resources/httpResources.d.ts +0 -321
  447. package/dist/transaction/resources/httpResources.js +0 -7
  448. package/dist/transaction/resources/modelOperations.d.ts +0 -427
  449. package/dist/transaction/resources/modelOperations.js +0 -12
  450. package/dist/transaction/resources/mutationOptions.d.ts +0 -66
  451. package/dist/transaction/resources/mutationOptions.js +0 -9
  452. package/dist/transaction/resources/where.d.ts +0 -101
  453. package/dist/transaction/resources/where.js +0 -115
  454. package/dist/transaction/resources/writeOptionsSchema.d.ts +0 -47
  455. package/dist/transaction/resources/writeOptionsSchema.js +0 -73
  456. package/dist/transaction/schema/field.d.ts +0 -120
  457. package/dist/transaction/schema/field.js +0 -265
  458. package/dist/transaction/schema/fieldRef.d.ts +0 -38
  459. package/dist/transaction/schema/fieldRef.js +0 -11
  460. package/dist/transaction/schema/loadStrategy.d.ts +0 -45
  461. package/dist/transaction/schema/loadStrategy.js +0 -46
  462. package/dist/transaction/schema/model.d.ts +0 -379
  463. package/dist/transaction/schema/model.js +0 -123
  464. package/dist/transaction/schema/openapi.d.ts +0 -58
  465. package/dist/transaction/schema/openapi.js +0 -501
  466. package/dist/transaction/schema/relation.d.ts +0 -204
  467. package/dist/transaction/schema/relation.js +0 -104
  468. package/dist/transaction/schema/residency.d.ts +0 -29
  469. package/dist/transaction/schema/residency.js +0 -25
  470. package/dist/transaction/schema/roles.d.ts +0 -249
  471. package/dist/transaction/schema/roles.js +0 -230
  472. package/dist/transaction/schema/schema.d.ts +0 -351
  473. package/dist/transaction/schema/schema.js +0 -325
  474. package/dist/transaction/schema/tenancy.d.ts +0 -139
  475. package/dist/transaction/schema/tenancy.js +0 -190
  476. package/dist/transaction/transactionLayer.d.ts +0 -82
  477. package/dist/transaction/transactionLayer.js +0 -24
  478. package/dist/transaction/transactions/settlement/commitEnvelope.d.ts +0 -143
  479. package/dist/transaction/transactions/settlement/commitEnvelope.js +0 -161
  480. package/dist/transaction/transactions/settlement/httpCommitEnvelope.d.ts +0 -53
  481. package/dist/transaction/transactions/settlement/httpCommitEnvelope.js +0 -207
  482. package/dist/transaction/transactions/settlement/idempotencyKey.d.ts +0 -10
  483. package/dist/transaction/transactions/settlement/idempotencyKey.js +0 -9
  484. package/dist/transaction/transactions/settlement/pendingWrite.d.ts +0 -112
  485. package/dist/transaction/transactions/settlement/pendingWrite.js +0 -20
  486. package/dist/transaction/transport/commitFrames.d.ts +0 -90
  487. package/dist/transaction/transport/commitFrames.js +0 -134
  488. package/dist/transaction/transport/connectionManager.d.ts +0 -215
  489. package/dist/transaction/transport/connectionManager.js +0 -673
  490. package/dist/transaction/transport/credentialLifecycle.d.ts +0 -177
  491. package/dist/transaction/transport/credentialLifecycle.js +0 -324
  492. package/dist/transaction/transport/heartbeat.d.ts +0 -65
  493. package/dist/transaction/transport/heartbeat.js +0 -93
  494. package/dist/transaction/transport/httpClient.d.ts +0 -131
  495. package/dist/transaction/transport/httpClient.js +0 -146
  496. package/dist/transaction/transport/httpOptions.d.ts +0 -33
  497. package/dist/transaction/transport/httpOptions.js +0 -12
  498. package/dist/transaction/transport/httpTransport.d.ts +0 -8
  499. package/dist/transaction/transport/httpTransport.js +0 -1388
  500. package/dist/transaction/transport/networkProbe.d.ts +0 -84
  501. package/dist/transaction/transport/networkProbe.js +0 -207
  502. package/dist/transaction/transport/wsFrameHandlers.d.ts +0 -128
  503. package/dist/transaction/transport/wsFrameHandlers.js +0 -429
  504. package/dist/transaction/transport/wsTransport.d.ts +0 -574
  505. package/dist/transaction/transport/wsTransport.js +0 -1023
  506. package/dist/transaction/types/assertExact.d.ts +0 -17
  507. package/dist/transaction/types/assertExact.js +0 -1
  508. package/dist/transaction/types/global.d.ts +0 -107
  509. package/dist/transaction/types/global.js +0 -40
  510. package/dist/transaction/types/index.d.ts +0 -205
  511. package/dist/transaction/types/index.js +0 -56
  512. package/dist/transaction/types/modelData.d.ts +0 -10
  513. package/dist/transaction/types/modelData.js +0 -9
  514. package/dist/transaction/types/participant.d.ts +0 -20
  515. package/dist/transaction/types/participant.js +0 -10
  516. package/dist/transaction/types/streams.d.ts +0 -550
  517. package/dist/transaction/types/streams.js +0 -11
  518. package/dist/transaction/utils/asyncIterator.d.ts +0 -34
  519. package/dist/transaction/utils/asyncIterator.js +0 -135
  520. package/dist/transaction/utils/duration.d.ts +0 -50
  521. package/dist/transaction/utils/duration.js +0 -77
  522. package/dist/transaction/utils/json.d.ts +0 -57
  523. package/dist/transaction/utils/json.js +0 -276
  524. package/dist/transaction/wire/accountResponses.d.ts +0 -420
  525. package/dist/transaction/wire/accountResponses.js +0 -290
  526. package/dist/transaction/wire/auth.d.ts +0 -56
  527. package/dist/transaction/wire/auth.js +0 -63
  528. package/dist/transaction/wire/bootstrapReason.d.ts +0 -9
  529. package/dist/transaction/wire/bootstrapReason.js +0 -8
  530. package/dist/transaction/wire/claimEvent.d.ts +0 -76
  531. package/dist/transaction/wire/claimEvent.js +0 -73
  532. package/dist/transaction/wire/claims.d.ts +0 -530
  533. package/dist/transaction/wire/claims.js +0 -327
  534. package/dist/transaction/wire/commit.d.ts +0 -603
  535. package/dist/transaction/wire/commit.js +0 -321
  536. package/dist/transaction/wire/delta.d.ts +0 -250
  537. package/dist/transaction/wire/delta.js +0 -147
  538. package/dist/transaction/wire/errorEnvelope.d.ts +0 -72
  539. package/dist/transaction/wire/errorEnvelope.js +0 -123
  540. package/dist/transaction/wire/feedCursor.d.ts +0 -60
  541. package/dist/transaction/wire/feedCursor.js +0 -82
  542. package/dist/transaction/wire/feedEvent.d.ts +0 -204
  543. package/dist/transaction/wire/feedEvent.js +0 -65
  544. package/dist/transaction/wire/frames.d.ts +0 -194
  545. package/dist/transaction/wire/frames.js +0 -50
  546. package/dist/transaction/wire/inboundFrames.d.ts +0 -562
  547. package/dist/transaction/wire/inboundFrames.js +0 -116
  548. package/dist/transaction/wire/index.d.ts +0 -54
  549. package/dist/transaction/wire/index.js +0 -83
  550. package/dist/transaction/wire/listEnvelope.d.ts +0 -37
  551. package/dist/transaction/wire/listEnvelope.js +0 -42
  552. package/dist/transaction/wire/modelMutations.d.ts +0 -31
  553. package/dist/transaction/wire/modelMutations.js +0 -52
  554. package/dist/transaction/wire/modelResponses.d.ts +0 -85
  555. package/dist/transaction/wire/modelResponses.js +0 -43
  556. package/dist/transaction/wire/modelShape.d.ts +0 -78
  557. package/dist/transaction/wire/modelShape.js +0 -74
  558. package/dist/transaction/wire/protocol.d.ts +0 -38
  559. package/dist/transaction/wire/protocol.js +0 -38
  560. package/dist/transaction/wire/protocolVersion.d.ts +0 -73
  561. package/dist/transaction/wire/protocolVersion.js +0 -83
  562. package/dist/transactions/mutations/MutationQueue.d.ts +0 -661
  563. package/dist/transactions/mutations/MutationQueue.js +0 -2807
  564. package/dist/transactions/mutations/MutationStore.d.ts +0 -20
  565. package/dist/transactions/mutations/MutationStore.js +0 -53
  566. package/dist/transactions/mutations/UnconfirmedWrites.d.ts +0 -82
  567. package/dist/transactions/mutations/UnconfirmedWrites.js +0 -104
  568. package/dist/transactions/mutations/coalesceRules.d.ts +0 -58
  569. package/dist/transactions/mutations/coalesceRules.js +0 -140
  570. package/dist/transactions/mutations/commitLatency.d.ts +0 -52
  571. package/dist/transactions/mutations/commitLatency.js +0 -130
  572. package/dist/transactions/mutations/commitOutboxStore.d.ts +0 -28
  573. package/dist/transactions/mutations/commitOutboxStore.js +0 -26
  574. package/dist/transactions/mutations/commitPayload.d.ts +0 -165
  575. package/dist/transactions/mutations/commitPayload.js +0 -152
  576. package/dist/transactions/mutations/deltaConfirmation.d.ts +0 -63
  577. package/dist/transactions/mutations/deltaConfirmation.js +0 -235
  578. package/dist/transactions/mutations/durableWriteStore.d.ts +0 -14
  579. package/dist/transactions/mutations/durableWriteStore.js +0 -12
  580. package/dist/transactions/mutations/optimisticApply.d.ts +0 -49
  581. package/dist/transactions/mutations/optimisticApply.js +0 -65
  582. package/dist/transactions/mutations/replayValidation.d.ts +0 -187
  583. package/dist/transactions/mutations/replayValidation.js +0 -164
  584. package/dist/utils/mobxSetup.d.ts +0 -53
  585. package/dist/utils/mobxSetup.js +0 -330
  586. package/dist/views/QueryView.d.ts +0 -79
  587. package/dist/views/QueryView.js +0 -218
  588. package/dist/views/ViewRegistry.d.ts +0 -20
  589. package/dist/views/ViewRegistry.js +0 -55
  590. package/dist/views/incrementalView.d.ts +0 -45
  591. package/dist/views/incrementalView.js +0 -69
  592. package/dist/webhooks/events.d.ts +0 -43
  593. package/dist/webhooks/events.js +0 -42
  594. package/dist/webhooks/index.d.ts +0 -8
  595. package/dist/webhooks/index.js +0 -8
  596. package/dist/wire/index.d.ts +0 -1
  597. package/dist/wire/index.js +0 -8
@@ -1,290 +0,0 @@
1
- /**
2
- * What the ACCOUNT routes answer with — the surface you reach through the
3
- * `ablo` CLI rather than through a model: `GET /v1/projects`, `GET /api/schema`,
4
- * `GET /v1/logs`, `GET /v1/usage`.
5
- *
6
- * These are the shapes the server, the CLI, and the MCP server all have to
7
- * agree on. Before this module each of them spelled the shape out again — the
8
- * server inline in `c.json({ … })`, the others in hand-written interfaces — so
9
- * a renamed field broke a consumer at runtime with nothing failing in between.
10
- *
11
- * None of these endpoints appear in the published OpenAPI contract yet (they
12
- * sit in the spec test's `NOT_YET_PUBLISHED` set). Deriving the spec from these
13
- * schemas is what removes them from it.
14
- */
15
- import { z } from 'zod';
16
- // Composed, never restated: these are the artifact's own shapes, and a
17
- // hand-written mirror here would be a second copy of the exact record this
18
- // response exists to stop withholding.
19
- import { fieldMetaSchema, relationMetaSchema } from './modelShape.js';
20
- import { onStaleModeSchema } from '../coordination/schema.js';
21
- /**
22
- * One project — an app's own schema, data planes, and keys. `default` marks the
23
- * organization's implicit project, whose id is the organization's own.
24
- */
25
- export const projectResponseSchema = z.object({
26
- object: z.literal('project'),
27
- id: z.string(),
28
- slug: z.string(),
29
- name: z.string(),
30
- default: z.boolean(),
31
- created_at: z.string(),
32
- });
33
- /**
34
- * `GET /v1/projects`.
35
- *
36
- * Note what this is NOT: the canonical {@link ListEnvelope}. An org's projects
37
- * are returned whole, so the route emits `data` with no `has_more`/`next_cursor`
38
- * beside it. That divergence is real and this schema states it rather than
39
- * describing a pagination the endpoint does not implement — adding the two
40
- * fields is an API change, not a documentation fix.
41
- */
42
- export const projectListResponseSchema = z.object({
43
- object: z.literal('list'),
44
- data: z.array(projectResponseSchema).readonly(),
45
- });
46
- /** One minted key, returned exactly once — the plaintext is never readable again. */
47
- export const provisionedKeySchema = z.object({
48
- apiKey: z.string(),
49
- expiresAt: z.string().optional(),
50
- });
51
- /**
52
- * What the CLI device flow gets back once a browser approval is exchanged for
53
- * credentials: the sandbox key `ablo push` authors with, and the restricted
54
- * production key that only observes.
55
- *
56
- * `project` is the project both keys are scoped to, resolved SERVER-SIDE from
57
- * the requested slug — null means the organization's default. The server's
58
- * answer is authoritative because it is what resolved the slug to an id, so the
59
- * CLI stores keys under the project named here rather than the one it asked
60
- * for.
61
- */
62
- export const provisionKeyResponseSchema = z.object({
63
- test: provisionedKeySchema,
64
- live: provisionedKeySchema.optional(),
65
- organizationId: z.string().optional(),
66
- organizationSlug: z.string().optional(),
67
- project: z.object({ id: z.string(), slug: z.string() }).nullable().optional(),
68
- });
69
- /**
70
- * A model's declared conflict disposition as it travels on the wire, keyed by
71
- * committer kind.
72
- *
73
- * Spelled here rather than imported from the policy layer, which states the same
74
- * three members as a TypeScript interface: `wire/` holds runtime-validatable
75
- * schemas, and it is the protocol leaf — everything depends on it and it depends
76
- * on nothing. The check that the two never drift therefore lives on the policy
77
- * side of that edge, next to the interface, in `../policy/types.ts`.
78
- */
79
- export const conflictAxisWireSchema = z.object({
80
- user: onStaleModeSchema.optional(),
81
- agent: onStaleModeSchema.optional(),
82
- system: onStaleModeSchema.optional(),
83
- });
84
- /** One model in the deployed schema, as the schema read reports it. */
85
- export const schemaModelResponseSchema = z.object({
86
- /** The key local code addresses (`ablo.documents`). */
87
- key: z.string(),
88
- /** The wire typename the engine routes and gates on. */
89
- typename: z.string(),
90
- /** Declared disposition, or null for the engine default. */
91
- conflict: conflictAxisWireSchema.nullable(),
92
- /**
93
- * Per-model content hash — the unit of the client's drift check, and the
94
- * revalidation key for everything below it.
95
- *
96
- * `fields` and `relations` change only when this does, so a client reads the
97
- * shape once and thereafter compares hashes: a cheap poll that refetches on a
98
- * push and never otherwise. Introspection that costs one request per schema
99
- * version rather than one per question.
100
- */
101
- hash: z.string(),
102
- /**
103
- * The model's fields, by name.
104
- *
105
- * The schema artifact has always carried these and this response dropped
106
- * them, so a caller with no local schema declaration — which is every caller
107
- * that is not TypeScript — had no way to learn that `task.title` is a
108
- * required string. It found out from a 400 at the end of a round trip.
109
- *
110
- * For an agent that is not merely slow, it is a reasoning detour: a typo
111
- * discovered through a rejected write costs a turn and an explanation, where
112
- * the same typo checked locally costs a millisecond.
113
- *
114
- * Absent on an artifact written before this was reported, which is why it is
115
- * optional rather than empty — "this server does not tell me" and "this model
116
- * has no fields" are different facts.
117
- */
118
- fields: z.record(z.string(), fieldMetaSchema).optional(),
119
- /**
120
- * The model's relations, by name — what a caller may expand, and into what.
121
- *
122
- * Optional for the same reason as {@link fields}.
123
- */
124
- relations: z.record(z.string(), relationMetaSchema).optional(),
125
- });
126
- /**
127
- * `GET /api/schema` — the schema active on the caller's plane.
128
- *
129
- * A discriminated union because the two answers carry different fields, and the
130
- * difference is the one a caller must act on: `active: false` means nothing has
131
- * been pushed to this plane, so `models` is empty and `ablo push` is the fix.
132
- * Reporting that as an inactive artifact with absent metadata, rather than as
133
- * optional fields on one shape, is what stops a consumer from reading a missing
134
- * `version` as a version of zero.
135
- */
136
- export const schemaReadResponseSchema = z.discriminatedUnion('active', [
137
- z.object({
138
- active: z.literal(false),
139
- environment: z.string(),
140
- project: z.string().nullable(),
141
- models: z.array(schemaModelResponseSchema).readonly(),
142
- }),
143
- z.object({
144
- active: z.literal(true),
145
- environment: z.string(),
146
- project: z.string().nullable(),
147
- models: z.array(schemaModelResponseSchema).readonly(),
148
- schemaId: z.string(),
149
- version: z.number(),
150
- hash: z.string(),
151
- pushedAt: z.string().nullable(),
152
- }),
153
- ]);
154
- /**
155
- * What a log reader calls each kind of entry.
156
- *
157
- * The log carries the full delta vocabulary, not just writes, so this has a
158
- * word for every one of them — a reader should never be shown the stored
159
- * letter. The eight are the plain-language face of {@link SyncDeltaAction}.
160
- */
161
- export const logOpSchema = z.enum([
162
- 'create',
163
- 'update',
164
- 'delete',
165
- 'archive',
166
- 'revive',
167
- 'visible',
168
- 'group_added',
169
- 'group_removed',
170
- ]);
171
- /**
172
- * The stored action letter, as a log reader sees it.
173
- *
174
- * Typed against {@link SyncDeltaAction} so it is total by construction: adding
175
- * a ninth action to the vocabulary stops this compiling until it has a word.
176
- * The alternative — a lookup with a fallback — is what let `A` reach callers
177
- * as the bare letter "a".
178
- */
179
- export const LOG_OP_BY_ACTION = {
180
- I: 'create',
181
- U: 'update',
182
- D: 'delete',
183
- A: 'archive',
184
- V: 'revive',
185
- C: 'visible',
186
- G: 'group_added',
187
- S: 'group_removed',
188
- };
189
- /** One entry in the log: what changed, and who changed it. */
190
- export const logEventSchema = z.object({
191
- /**
192
- * Which arm of the feed this is. `GET /v1/logs` can carry claim transitions
193
- * alongside commits, and the two are told apart by this tag rather than by
194
- * sniffing for `op` versus `status` — a discriminator a consumer has to infer
195
- * is one every consumer infers differently.
196
- */
197
- object: z.literal('log_event'),
198
- id: z.number(),
199
- at: z.string(),
200
- model: z.string(),
201
- op: logOpSchema,
202
- recordId: z.string(),
203
- /** `kind:id` of the committer, or null when the log recorded none. */
204
- actor: z.string().nullable(),
205
- });
206
- /**
207
- * One day's usage. `results` is one row per `group_by` combination, carrying
208
- * the requested dimensions plus `total` and `count`; with no `group_by` it is a
209
- * single ungrouped row. The keys therefore depend on the request, which is why
210
- * the row stays open rather than claiming a fixed shape.
211
- *
212
- * `total` arrives as a string — it is a bigint in the database, and JSON has no
213
- * lossless number for it.
214
- */
215
- export const usageBucketSchema = z.object({
216
- starting_at: z.string(),
217
- ending_at: z.string(),
218
- results: z.array(z.record(z.string(), z.unknown())).readonly(),
219
- });
220
- /**
221
- * One of the org's keys, as a management surface may show it.
222
- *
223
- * Everything here is safe to display: the prefix identifies a key without being
224
- * one. There is deliberately no field for the key itself — plaintext exists only
225
- * in the response to the mint that created it, and the store keeps a SHA-256
226
- * hash, so no later read can return it.
227
- */
228
- export const controlKeySchema = z.object({
229
- id: z.string(),
230
- /** The leading, non-secret segment — enough to recognise a key by. */
231
- keyPrefix: z.string(),
232
- label: z.string().nullable(),
233
- kind: z.string(),
234
- scopes: z.array(z.string()).readonly(),
235
- createdAt: z.string(),
236
- lastUsedAt: z.string().nullable(),
237
- expiresAt: z.string().nullable(),
238
- /** The project this key is scoped to; null = the org-default project. */
239
- projectId: z.string().nullable(),
240
- });
241
- /**
242
- * `GET /v1/dashboard/keys` — the org's live, hand-managed keys.
243
- *
244
- * Like the project list, this is not the canonical {@link ListEnvelope}: it
245
- * answers with a bare `keys` array. Stated as it is rather than as the envelope
246
- * it resembles.
247
- */
248
- export const controlKeyListResponseSchema = z.object({
249
- keys: z.array(controlKeySchema).readonly(),
250
- });
251
- /**
252
- * `POST /v1/dashboard/keys` — the mint.
253
- *
254
- * `plaintext` is the only place the secret ever appears. The store keeps a
255
- * SHA-256 hash, so nothing can return it again: a consumer that reads the wrong
256
- * field name here does not get an error, it gets `undefined`, and the key is
257
- * gone. That is the whole reason this shape is defined once rather than
258
- * described at each end.
259
- */
260
- export const keyMintedResponseSchema = z.object({
261
- id: z.string(),
262
- label: z.string().nullable(),
263
- keyPrefix: z.string(),
264
- createdAt: z.string(),
265
- createdBy: z.string().nullable(),
266
- projectId: z.string().nullable(),
267
- /** The secret, in the only response that will ever carry it. */
268
- plaintext: z.string(),
269
- });
270
- /**
271
- * `DELETE /v1/dashboard/keys/:id`. `activeSessionsClosed` reports how many live
272
- * connections the revocation cut, so a caller can see it took effect on sessions
273
- * already open rather than only on future ones. A second revoke of the same key
274
- * is not an error — it answers `alreadyRevoked` and closes nothing.
275
- */
276
- export const keyRevokedResponseSchema = z.object({
277
- id: z.string(),
278
- revoked: z.literal(true),
279
- revokedAt: z.string().optional(),
280
- alreadyRevoked: z.boolean().optional(),
281
- activeSessionsClosed: z.number().optional(),
282
- });
283
- /** `GET /v1/usage` — daily buckets, shaped after a usage report. */
284
- export const usageReportResponseSchema = z.object({
285
- object: z.literal('usage_report'),
286
- buckets: z.array(usageBucketSchema).readonly(),
287
- has_more: z.boolean(),
288
- /** How stale the rollup behind these numbers may be. */
289
- data_freshness_seconds: z.number(),
290
- });
@@ -1,56 +0,0 @@
1
- /**
2
- * The request body for minting a session credential.
3
- *
4
- * `POST /v1/ephemeral_keys` is the first call any caller makes — nothing else in
5
- * the API is reachable without the credential it returns. That makes it the one
6
- * route a published contract cannot omit, so its shape lives here beside the
7
- * rest of the boundary rather than being read field-by-field out of the handler.
8
- *
9
- * The response side already had a home: `EphemeralKeyResponseSchema` in
10
- * `auth/schemas.ts`.
11
- */
12
- import { z } from 'zod';
13
- /** The participant this session acts as. */
14
- export declare const ephemeralKeyUserSchema: z.ZodObject<{
15
- id: z.ZodString;
16
- teamIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
17
- }, z.core.$strip>;
18
- export type EphemeralKeyUser = z.infer<typeof ephemeralKeyUserSchema>;
19
- /**
20
- * `POST /v1/ephemeral_keys` — mint a short-lived session credential.
21
- *
22
- * Only a secret key (`sk_`) may call this: a session cannot mint itself. By
23
- * default the key mints into the caller's own organization; naming a different
24
- * `organizationId` is the multi-tenant case and requires the
25
- * `ephemeral:mint-any-org` scope, which is the same privilege that allows
26
- * binding the session's schema to another organization's project.
27
- */
28
- export declare const ephemeralKeyRequestSchema: z.ZodObject<{
29
- user: z.ZodOptional<z.ZodObject<{
30
- id: z.ZodString;
31
- teamIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
32
- }, z.core.$strip>>;
33
- userId: z.ZodOptional<z.ZodString>;
34
- organizationId: z.ZodOptional<z.ZodString>;
35
- schemaProjectId: z.ZodOptional<z.ZodString>;
36
- schemaOwnerOrgId: z.ZodOptional<z.ZodString>;
37
- syncGroups: z.ZodOptional<z.ZodArray<z.ZodString>>;
38
- ttlSeconds: z.ZodOptional<z.ZodNumber>;
39
- label: z.ZodOptional<z.ZodString>;
40
- }, z.core.$strip>;
41
- export type EphemeralKeyRequest = z.infer<typeof ephemeralKeyRequestSchema>;
42
- /**
43
- * The capability mint body lives with the rest of the capability vocabulary in
44
- * `auth/capability.ts` — the grant is one structure, and its request form is a
45
- * face of it rather than a separate shape. Re-exported here so the wire barrel
46
- * stays the single import path for the boundary.
47
- *
48
- * This is the only import wire makes for something larger than a schema leaf,
49
- * so it carries exactly the shape the barrel forwards and nothing else: the
50
- * grant's own vocabulary — the verb enum, the `model.verb` spelling, the
51
- * helpers that derive one from the other — is read from `auth/capability.ts`
52
- * by the callers that build a grant, not through here.
53
- */
54
- export { capabilityRequestSchema, capabilityMintResponseSchema, } from '../auth/capability.js';
55
- export type { CapabilityMintResponse } from '../auth/capability.js';
56
- export type { CapabilityRequest } from '../auth/capability.js';
@@ -1,63 +0,0 @@
1
- /**
2
- * The request body for minting a session credential.
3
- *
4
- * `POST /v1/ephemeral_keys` is the first call any caller makes — nothing else in
5
- * the API is reachable without the credential it returns. That makes it the one
6
- * route a published contract cannot omit, so its shape lives here beside the
7
- * rest of the boundary rather than being read field-by-field out of the handler.
8
- *
9
- * The response side already had a home: `EphemeralKeyResponseSchema` in
10
- * `auth/schemas.ts`.
11
- */
12
- import { z } from 'zod';
13
- /** The participant this session acts as. */
14
- export const ephemeralKeyUserSchema = z.object({
15
- id: z.string().min(1),
16
- teamIds: z.array(z.string()).optional(),
17
- });
18
- /**
19
- * `POST /v1/ephemeral_keys` — mint a short-lived session credential.
20
- *
21
- * Only a secret key (`sk_`) may call this: a session cannot mint itself. By
22
- * default the key mints into the caller's own organization; naming a different
23
- * `organizationId` is the multi-tenant case and requires the
24
- * `ephemeral:mint-any-org` scope, which is the same privilege that allows
25
- * binding the session's schema to another organization's project.
26
- */
27
- export const ephemeralKeyRequestSchema = z.object({
28
- /** The participant this session acts as. `userId` is the older spelling. */
29
- user: ephemeralKeyUserSchema.optional(),
30
- userId: z.string().min(1).optional(),
31
- /**
32
- * Mint into this organization instead of the caller's own. Requires the
33
- * `ephemeral:mint-any-org` scope — without it a secret key can never mint a
34
- * session into another tenant.
35
- */
36
- organizationId: z.string().min(1).optional(),
37
- /**
38
- * Resolve this session's schema from a shared project rather than from the
39
- * target organization, while its data stays scoped to that organization.
40
- * Both fields are set together, and both require `ephemeral:mint-any-org`.
41
- */
42
- schemaProjectId: z.string().min(1).optional(),
43
- schemaOwnerOrgId: z.string().min(1).optional(),
44
- /** Narrow the session to these sync groups. */
45
- syncGroups: z.array(z.string()).optional(),
46
- /** Lifetime in seconds. Capped by the server's maximum. */
47
- ttlSeconds: z.number().int().positive().optional(),
48
- /** A human-readable tag recorded with the key, for debugging. */
49
- label: z.string().optional(),
50
- });
51
- /**
52
- * The capability mint body lives with the rest of the capability vocabulary in
53
- * `auth/capability.ts` — the grant is one structure, and its request form is a
54
- * face of it rather than a separate shape. Re-exported here so the wire barrel
55
- * stays the single import path for the boundary.
56
- *
57
- * This is the only import wire makes for something larger than a schema leaf,
58
- * so it carries exactly the shape the barrel forwards and nothing else: the
59
- * grant's own vocabulary — the verb enum, the `model.verb` spelling, the
60
- * helpers that derive one from the other — is read from `auth/capability.ts`
61
- * by the callers that build a grant, not through here.
62
- */
63
- export { capabilityRequestSchema, capabilityMintResponseSchema, } from '../auth/capability.js';
@@ -1,9 +0,0 @@
1
- import { z } from 'zod';
2
- /** Machine-readable reasons a live delta stream must resume via catch-up. */
3
- export declare const bootstrapReasonSchema: z.ZodEnum<{
4
- too_far_behind: "too_far_behind";
5
- too_many_deltas: "too_many_deltas";
6
- missing_entities: "missing_entities";
7
- stream_gap: "stream_gap";
8
- }>;
9
- export type BootstrapReason = z.infer<typeof bootstrapReasonSchema>;
@@ -1,8 +0,0 @@
1
- import { z } from 'zod';
2
- /** Machine-readable reasons a live delta stream must resume via catch-up. */
3
- export const bootstrapReasonSchema = z.enum([
4
- 'too_far_behind',
5
- 'too_many_deltas',
6
- 'missing_entities',
7
- 'stream_gap',
8
- ]);
@@ -1,76 +0,0 @@
1
- /**
2
- * A claim transition, as an entry in the log feed.
3
- *
4
- * `claimRecordSchema` answers "what is true about this lease right now"; this
5
- * answers "what happened to it, and when". It is the fourth projection of that
6
- * record and is built like the other three — a `.pick` off the record, never a
7
- * second object — so a field added to a claim reaches this feed or fails to
8
- * compile.
9
- *
10
- * The transition IS the state entered, so the vocabulary is
11
- * {@link publicClaimStatusSchema} rather than a parallel set of verbs. An event
12
- * saying `active` means exactly what `active` means to a caller polling
13
- * `GET /v1/claims/{claimId}` — the same five states, widened from the record's
14
- * two for the same reason the polling shape widens them: an observer can arrive
15
- * after the claim ended, and `committed`, `expired`, and `canceled` are answers
16
- * this feed must be able to give. A claim that vanishes without one of them is
17
- * indistinguishable from a claim that was never made.
18
- *
19
- * Two fields are deliberately dropped from the projection, and the coverage
20
- * assertion below names both so neither can be dropped by forgetting:
21
- *
22
- * **`id`** — spelled `claimId` here, because this event names a claim it is not
23
- * itself. The same distinction the record's own comment draws.
24
- *
25
- * **`meta`** — the record calls it "presence, not a checkpoint: it dies with
26
- * the lease." A heartbeat's last-beat-wins progress is a live reading, and
27
- * writing it into a durable event would preserve, forever, whichever beat
28
- * happened to land last. The feed records that the lease ended, not what its
29
- * holder was mid-sentence about when it did.
30
- */
31
- import { z } from 'zod';
32
- export declare const claimEventSchema: z.ZodReadonly<z.ZodObject<{
33
- target: z.ZodReadonly<z.ZodObject<{
34
- model: z.ZodString;
35
- id: z.ZodString;
36
- path: z.ZodOptional<z.ZodString>;
37
- range: z.ZodOptional<z.ZodObject<{
38
- startLine: z.ZodNumber;
39
- endLine: z.ZodNumber;
40
- startColumn: z.ZodOptional<z.ZodNumber>;
41
- endColumn: z.ZodOptional<z.ZodNumber>;
42
- }, z.core.$strip>>;
43
- field: z.ZodOptional<z.ZodString>;
44
- fields: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodString>>>;
45
- meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
46
- }, z.core.$strip>>;
47
- description: z.ZodString;
48
- expiresAt: z.ZodNumber;
49
- onBehalfOfId: z.ZodNullable<z.ZodString>;
50
- onBehalfOfKind: z.ZodNullable<z.ZodPreprocess<z.ZodEnum<{
51
- user: "user";
52
- agent: "agent";
53
- system: "system";
54
- }>>>;
55
- capabilityId: z.ZodNullable<z.ZodString>;
56
- fenceToken: z.ZodOptional<z.ZodNumber>;
57
- position: z.ZodOptional<z.ZodNumber>;
58
- participantKind: z.ZodPreprocess<z.ZodEnum<{
59
- user: "user";
60
- agent: "agent";
61
- system: "system";
62
- }>>;
63
- actor: z.ZodString;
64
- object: z.ZodLiteral<"claim_event">;
65
- seq: z.ZodNumber;
66
- at: z.ZodString;
67
- claimId: z.ZodString;
68
- status: z.ZodEnum<{
69
- active: "active";
70
- committed: "committed";
71
- expired: "expired";
72
- canceled: "canceled";
73
- queued: "queued";
74
- }>;
75
- }, z.core.$strip>>;
76
- export type ClaimEvent = z.infer<typeof claimEventSchema>;
@@ -1,73 +0,0 @@
1
- /**
2
- * A claim transition, as an entry in the log feed.
3
- *
4
- * `claimRecordSchema` answers "what is true about this lease right now"; this
5
- * answers "what happened to it, and when". It is the fourth projection of that
6
- * record and is built like the other three — a `.pick` off the record, never a
7
- * second object — so a field added to a claim reaches this feed or fails to
8
- * compile.
9
- *
10
- * The transition IS the state entered, so the vocabulary is
11
- * {@link publicClaimStatusSchema} rather than a parallel set of verbs. An event
12
- * saying `active` means exactly what `active` means to a caller polling
13
- * `GET /v1/claims/{claimId}` — the same five states, widened from the record's
14
- * two for the same reason the polling shape widens them: an observer can arrive
15
- * after the claim ended, and `committed`, `expired`, and `canceled` are answers
16
- * this feed must be able to give. A claim that vanishes without one of them is
17
- * indistinguishable from a claim that was never made.
18
- *
19
- * Two fields are deliberately dropped from the projection, and the coverage
20
- * assertion below names both so neither can be dropped by forgetting:
21
- *
22
- * **`id`** — spelled `claimId` here, because this event names a claim it is not
23
- * itself. The same distinction the record's own comment draws.
24
- *
25
- * **`meta`** — the record calls it "presence, not a checkpoint: it dies with
26
- * the lease." A heartbeat's last-beat-wins progress is a live reading, and
27
- * writing it into a durable event would preserve, forever, whichever beat
28
- * happened to land last. The feed records that the lease ended, not what its
29
- * holder was mid-sentence about when it did.
30
- */
31
- import { z } from 'zod';
32
- import { claimRecordSchema, publicClaimStatusSchema, } from '../coordination/schema.js';
33
- export const claimEventSchema = claimRecordSchema
34
- .omit({ id: true, meta: true })
35
- .partial({
36
- /** Absent while queued — the token is minted at grant, never at enqueue. */
37
- fenceToken: true,
38
- /** Absent once held — a holder has no place in the line. */
39
- position: true,
40
- })
41
- .extend({
42
- object: z.literal('claim_event'),
43
- /**
44
- * Position in the claim-event sequence. NOT a fence token: fence tokens
45
- * order by acquisition and are minted only at grant, so they cannot
46
- * position an enqueue, a release, or an expiry. Conflating the two would
47
- * break the monotonicity `claim_fence_watermark` depends on.
48
- */
49
- seq: z.number().int().nonnegative(),
50
- /**
51
- * When the transition happened, ISO-8601.
52
- *
53
- * The claim family carries epoch milliseconds everywhere else and says so
54
- * emphatically. This one field breaks with that on purpose: it shares an
55
- * envelope with {@link logEventSchema}, whose `at` is ISO, and a consumer
56
- * sorting the merged `data` array by `at` must not be comparing two
57
- * encodings. Uniformity within the envelope beats uniformity within the
58
- * family, because the envelope is what gets iterated.
59
- */
60
- at: z.string(),
61
- /** The claim named, rather than the claim as a resource. */
62
- claimId: z.string(),
63
- /** The state entered. Widened from the record's two — see the preamble. */
64
- status: publicClaimStatusSchema,
65
- })
66
- .readonly();
67
- /**
68
- * The feed's view covers the record. A field added to a claim is either carried
69
- * into the feed or deliberately dropped by the `.omit` above — never missing
70
- * because nobody remembered the fourth projection.
71
- */
72
- const _claimEventCoversRecord = true;
73
- void _claimEventCoversRecord;