@abloatai/ablo 0.35.0 → 0.37.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.
- package/AGENTS.md +2 -2
- package/CHANGELOG.md +71 -1929
- package/NOTICE +2 -2
- package/README.md +23 -532
- package/assets/banner.png +0 -0
- package/dist/auth.d.ts +2 -0
- package/dist/auth.d.ts.map +1 -0
- package/dist/auth.js +2 -0
- package/dist/auth.js.map +1 -0
- package/dist/client.d.ts +3 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +3 -0
- package/dist/client.js.map +1 -0
- package/dist/coordination.d.ts +2 -0
- package/dist/coordination.d.ts.map +1 -0
- package/dist/coordination.js +2 -0
- package/dist/coordination.js.map +1 -0
- package/dist/index.d.ts +3 -112
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +3 -161
- package/dist/index.js.map +1 -0
- package/dist/react.d.ts +4 -0
- package/dist/react.d.ts.map +1 -0
- package/dist/react.js +3 -0
- package/dist/react.js.map +1 -0
- package/dist/schema.d.ts +2 -0
- package/dist/schema.d.ts.map +1 -0
- package/dist/schema.js +2 -0
- package/dist/schema.js.map +1 -0
- package/dist/server.d.ts +2 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +2 -0
- package/dist/server.js.map +1 -0
- package/dist/source-conformance.d.ts +2 -0
- package/dist/source-conformance.d.ts.map +1 -0
- package/dist/source-conformance.js +2 -0
- package/dist/source-conformance.js.map +1 -0
- package/dist/source-drizzle.d.ts +2 -0
- package/dist/source-drizzle.d.ts.map +1 -0
- package/dist/source-drizzle.js +2 -0
- package/dist/source-drizzle.js.map +1 -0
- package/dist/source-kysely.d.ts +2 -0
- package/dist/source-kysely.d.ts.map +1 -0
- package/dist/source-kysely.js +2 -0
- package/dist/source-kysely.js.map +1 -0
- package/dist/source-next.d.ts +2 -0
- package/dist/source-next.d.ts.map +1 -0
- package/dist/source-next.js +2 -0
- package/dist/source-next.js.map +1 -0
- package/dist/source.d.ts +2 -0
- package/dist/source.d.ts.map +1 -0
- package/dist/source.js +2 -0
- package/dist/source.js.map +1 -0
- package/dist/wire.d.ts +2 -0
- package/dist/wire.d.ts.map +1 -0
- package/dist/wire.js +2 -0
- package/dist/wire.js.map +1 -0
- package/docs/agents.md +2 -2
- package/docs/api-keys.md +13 -12
- package/docs/api.md +15 -53
- package/docs/audit.md +4 -3
- package/docs/cli.md +11 -11
- package/docs/client-behavior.md +9 -9
- package/docs/concurrency-convention.md +28 -42
- package/docs/coordination.md +228 -86
- package/docs/data-sources.md +5 -5
- package/docs/debugging.md +34 -12
- package/docs/deployment.md +8 -8
- package/docs/examples/agent-human.md +4 -4
- package/docs/examples/ai-sdk-tool.md +1 -1
- package/docs/examples/existing-python-backend.md +15 -4
- package/docs/examples/nextjs.md +27 -6
- package/docs/examples/scoped-agent.md +3 -3
- package/docs/examples/server-agent.md +2 -2
- package/docs/groups.md +57 -3
- package/docs/guarantees.md +37 -10
- package/docs/how-it-works.md +32 -8
- package/docs/idempotency.md +6 -6
- package/docs/identity.md +24 -24
- package/docs/index.md +8 -8
- package/docs/integration-guide.md +38 -16
- package/docs/internal/README.md +18 -0
- package/docs/internal/agent-fleet-coordination-design.md +171 -0
- package/docs/internal/agent-orchestration.md +58 -0
- package/docs/internal/commit-identifiers.md +91 -0
- package/docs/internal/concurrency-open-decisions.md +37 -0
- package/docs/internal/data-source-reverse-channel.md +150 -0
- package/docs/internal/per-field-conflict-detection.md +165 -0
- package/docs/internal/postgres-replication.md +64 -0
- package/docs/internal/serializable-schema.md +119 -0
- package/docs/internal/structure.md +32 -0
- package/docs/mcp.md +9 -9
- package/docs/migration.md +37 -18
- package/docs/projects.md +1 -1
- package/docs/quickstart.md +2 -2
- package/docs/react.md +24 -13
- package/docs/schema-contract.md +3 -3
- package/docs/sessions.md +91 -37
- package/docs/webhooks.md +9 -9
- package/examples/README.md +2 -2
- package/examples/data-source/README.md +1 -1
- package/examples/data-source/ablo-driver.ts +1 -1
- package/examples/data-source/customer-server.ts +1 -1
- package/examples/data-source/run.ts +1 -1
- package/examples/data-source/schema.ts +1 -1
- package/examples/quickstart.ts +2 -2
- package/llms.txt +12 -12
- package/package.json +64 -174
- package/dist/BaseSyncedStore.d.ts +0 -823
- package/dist/BaseSyncedStore.js +0 -1955
- package/dist/Database.d.ts +0 -335
- package/dist/Database.js +0 -1500
- package/dist/InstanceCache.d.ts +0 -233
- package/dist/InstanceCache.js +0 -1164
- package/dist/LazyReferenceCollection.d.ts +0 -177
- package/dist/LazyReferenceCollection.js +0 -461
- package/dist/Model.d.ts +0 -444
- package/dist/Model.js +0 -909
- package/dist/ModelRegistry.d.ts +0 -221
- package/dist/ModelRegistry.js +0 -537
- package/dist/NetworkMonitor.d.ts +0 -26
- package/dist/NetworkMonitor.js +0 -77
- package/dist/RuntimeContext.d.ts +0 -52
- package/dist/RuntimeContext.js +0 -80
- package/dist/SyncClient.d.ts +0 -551
- package/dist/SyncClient.js +0 -2199
- package/dist/adapters/alwaysOnline.d.ts +0 -14
- package/dist/adapters/alwaysOnline.js +0 -17
- package/dist/adapters/inMemoryStorage.d.ts +0 -31
- package/dist/adapters/inMemoryStorage.js +0 -110
- package/dist/ai-sdk/coordinatedTool.d.ts +0 -120
- package/dist/ai-sdk/coordinatedTool.js +0 -134
- package/dist/ai-sdk/coordinationContext.d.ts +0 -46
- package/dist/ai-sdk/coordinationContext.js +0 -106
- package/dist/ai-sdk/index.d.ts +0 -121
- package/dist/ai-sdk/index.js +0 -121
- package/dist/ai-sdk/wrap.d.ts +0 -65
- package/dist/ai-sdk/wrap.js +0 -39
- package/dist/auth/index.d.ts +0 -1
- package/dist/auth/index.js +0 -8
- package/dist/batching/index.d.ts +0 -55
- package/dist/batching/index.js +0 -147
- package/dist/cli.cjs +0 -288600
- package/dist/client/Ablo.d.ts +0 -231
- package/dist/client/Ablo.js +0 -149
- package/dist/client/abloClient.d.ts +0 -309
- package/dist/client/abloClient.js +0 -13
- package/dist/client/clientPrelude.d.ts +0 -52
- package/dist/client/clientPrelude.js +0 -60
- package/dist/client/consoleLogger.d.ts +0 -35
- package/dist/client/consoleLogger.js +0 -44
- package/dist/client/coreClient.d.ts +0 -60
- package/dist/client/coreClient.js +0 -118
- package/dist/client/createInternalComponents.d.ts +0 -46
- package/dist/client/createInternalComponents.js +0 -92
- package/dist/client/createModelProxy.d.ts +0 -228
- package/dist/client/createModelProxy.js +0 -818
- package/dist/client/humans.d.ts +0 -48
- package/dist/client/humans.js +0 -52
- package/dist/client/modelRegistration.d.ts +0 -10
- package/dist/client/modelRegistration.js +0 -312
- package/dist/client/options.d.ts +0 -461
- package/dist/client/options.js +0 -7
- package/dist/client/reactiveEngine.d.ts +0 -48
- package/dist/client/reactiveEngine.js +0 -910
- package/dist/client/resourceTypes.d.ts +0 -12
- package/dist/client/resourceTypes.js +0 -10
- package/dist/client/schemaConfig.d.ts +0 -44
- package/dist/client/schemaConfig.js +0 -185
- package/dist/client/validateAbloOptions.d.ts +0 -42
- package/dist/client/validateAbloOptions.js +0 -43
- package/dist/client/wsMutationExecutor.d.ts +0 -27
- package/dist/client/wsMutationExecutor.js +0 -72
- package/dist/context.d.ts +0 -29
- package/dist/context.js +0 -58
- package/dist/coordination/ClaimLog.d.ts +0 -26
- package/dist/coordination/ClaimLog.js +0 -32
- package/dist/coordination/index.d.ts +0 -1
- package/dist/coordination/index.js +0 -8
- package/dist/core/DatabaseManager.d.ts +0 -105
- package/dist/core/DatabaseManager.js +0 -387
- package/dist/core/QueryProcessor.d.ts +0 -75
- package/dist/core/QueryProcessor.js +0 -255
- package/dist/core/QueryView.d.ts +0 -79
- package/dist/core/QueryView.js +0 -218
- package/dist/core/StoreManager.d.ts +0 -112
- package/dist/core/StoreManager.js +0 -302
- package/dist/core/ViewRegistry.d.ts +0 -20
- package/dist/core/ViewRegistry.js +0 -55
- package/dist/core/index.d.ts +0 -33
- package/dist/core/index.js +0 -48
- package/dist/core/openIDBWithTimeout.d.ts +0 -65
- package/dist/core/openIDBWithTimeout.js +0 -153
- package/dist/core/queryUtils.d.ts +0 -45
- package/dist/core/queryUtils.js +0 -69
- package/dist/core/storeContract.d.ts +0 -145
- package/dist/core/storeContract.js +0 -12
- package/dist/docs/catalog.d.ts +0 -72
- package/dist/docs/catalog.js +0 -227
- package/dist/docs/index.d.ts +0 -10
- package/dist/docs/index.js +0 -10
- package/dist/environment.d.ts +0 -1
- package/dist/environment.js +0 -8
- package/dist/interfaces/index.d.ts +0 -311
- package/dist/interfaces/index.js +0 -9
- package/dist/keys/index.d.ts +0 -1
- package/dist/keys/index.js +0 -8
- package/dist/mutators/RecordingMutation.d.ts +0 -36
- package/dist/mutators/RecordingMutation.js +0 -182
- package/dist/mutators/Transaction.d.ts +0 -40
- package/dist/mutators/Transaction.js +0 -58
- package/dist/mutators/UndoManager.d.ts +0 -258
- package/dist/mutators/UndoManager.js +0 -658
- package/dist/mutators/defineMutators.d.ts +0 -60
- package/dist/mutators/defineMutators.js +0 -18
- package/dist/mutators/inverseOp.d.ts +0 -126
- package/dist/mutators/inverseOp.js +0 -71
- package/dist/mutators/mutateActions.d.ts +0 -45
- package/dist/mutators/mutateActions.js +0 -105
- package/dist/mutators/readerActions.d.ts +0 -33
- package/dist/mutators/readerActions.js +0 -57
- package/dist/mutators/undoApply.d.ts +0 -51
- package/dist/mutators/undoApply.js +0 -117
- package/dist/policy/index.d.ts +0 -21
- package/dist/policy/index.js +0 -20
- package/dist/query/client.d.ts +0 -61
- package/dist/query/client.js +0 -137
- package/dist/query/types.d.ts +0 -85
- package/dist/query/types.js +0 -16
- package/dist/react/AbloProvider.d.ts +0 -230
- package/dist/react/AbloProvider.js +0 -455
- package/dist/react/ClientSideSuspense.d.ts +0 -36
- package/dist/react/ClientSideSuspense.js +0 -17
- package/dist/react/DefaultFallback.d.ts +0 -24
- package/dist/react/DefaultFallback.js +0 -43
- package/dist/react/context.d.ts +0 -55
- package/dist/react/context.js +0 -29
- package/dist/react/index.d.ts +0 -61
- package/dist/react/index.js +0 -66
- package/dist/react/internalContext.d.ts +0 -33
- package/dist/react/internalContext.js +0 -3
- package/dist/react/useAblo.d.ts +0 -75
- package/dist/react/useAblo.js +0 -102
- package/dist/react/useCurrentUserId.d.ts +0 -22
- package/dist/react/useCurrentUserId.js +0 -34
- package/dist/react/useErrorListener.d.ts +0 -20
- package/dist/react/useErrorListener.js +0 -38
- package/dist/react/useMutationFailureListener.d.ts +0 -26
- package/dist/react/useMutationFailureListener.js +0 -38
- package/dist/react/useMutators.d.ts +0 -56
- package/dist/react/useMutators.js +0 -84
- package/dist/react/useReactive.d.ts +0 -35
- package/dist/react/useReactive.js +0 -123
- package/dist/react/useSyncStatus.d.ts +0 -59
- package/dist/react/useSyncStatus.js +0 -76
- package/dist/react/useUndoScope.d.ts +0 -34
- package/dist/react/useUndoScope.js +0 -81
- package/dist/schema/coordination.d.ts +0 -112
- package/dist/schema/coordination.js +0 -129
- package/dist/schema/ddl.d.ts +0 -97
- package/dist/schema/ddl.js +0 -491
- package/dist/schema/ddlLock.d.ts +0 -35
- package/dist/schema/ddlLock.js +0 -46
- package/dist/schema/diff.d.ts +0 -225
- package/dist/schema/diff.js +0 -289
- package/dist/schema/generate.d.ts +0 -19
- package/dist/schema/generate.js +0 -86
- package/dist/schema/index.d.ts +0 -41
- package/dist/schema/index.js +0 -76
- package/dist/schema/queries.d.ts +0 -201
- package/dist/schema/queries.js +0 -144
- package/dist/schema/select.d.ts +0 -40
- package/dist/schema/select.js +0 -87
- package/dist/schema/serialize.d.ts +0 -115
- package/dist/schema/serialize.js +0 -262
- package/dist/schema/sugar.d.ts +0 -109
- package/dist/schema/sugar.js +0 -83
- package/dist/schema/syncDeltaRow.d.ts +0 -6
- package/dist/schema/syncDeltaRow.js +0 -6
- package/dist/server/adapter.d.ts +0 -173
- package/dist/server/adapter.js +0 -18
- package/dist/server/commit.d.ts +0 -107
- package/dist/server/commit.js +0 -1
- package/dist/server/index.d.ts +0 -14
- package/dist/server/index.js +0 -2
- package/dist/server/readConfig.d.ts +0 -80
- package/dist/server/readConfig.js +0 -8
- package/dist/server/storageMode.d.ts +0 -23
- package/dist/server/storageMode.js +0 -17
- package/dist/source/adapter.d.ts +0 -81
- package/dist/source/adapter.js +0 -22
- package/dist/source/adapters/drizzle.d.ts +0 -48
- package/dist/source/adapters/drizzle.js +0 -219
- package/dist/source/adapters/kysely.d.ts +0 -42
- package/dist/source/adapters/kysely.js +0 -205
- package/dist/source/adapters/kyselyMutationCore.d.ts +0 -76
- package/dist/source/adapters/kyselyMutationCore.js +0 -125
- package/dist/source/adapters/memory.d.ts +0 -13
- package/dist/source/adapters/memory.js +0 -130
- package/dist/source/adapters/prisma.d.ts +0 -63
- package/dist/source/adapters/prisma.js +0 -202
- package/dist/source/conformance.d.ts +0 -37
- package/dist/source/conformance.js +0 -215
- package/dist/source/connector.d.ts +0 -95
- package/dist/source/connector.js +0 -266
- package/dist/source/connectorProtocol.d.ts +0 -154
- package/dist/source/connectorProtocol.js +0 -163
- package/dist/source/contract.d.ts +0 -195
- package/dist/source/contract.js +0 -164
- package/dist/source/factory.d.ts +0 -92
- package/dist/source/factory.js +0 -286
- package/dist/source/footprint.d.ts +0 -111
- package/dist/source/footprint.js +0 -0
- package/dist/source/idempotency.d.ts +0 -61
- package/dist/source/idempotency.js +0 -144
- package/dist/source/index.d.ts +0 -23
- package/dist/source/index.js +0 -30
- package/dist/source/migrations.d.ts +0 -21
- package/dist/source/migrations.js +0 -103
- package/dist/source/next.d.ts +0 -32
- package/dist/source/next.js +0 -25
- package/dist/source/pushQueue.d.ts +0 -134
- package/dist/source/pushQueue.js +0 -256
- package/dist/source/signing.d.ts +0 -92
- package/dist/source/signing.js +0 -162
- package/dist/source/types.d.ts +0 -401
- package/dist/source/types.js +0 -59
- package/dist/stores/ObjectStore.d.ts +0 -115
- package/dist/stores/ObjectStore.js +0 -393
- package/dist/stores/ObjectStoreContract.d.ts +0 -38
- package/dist/stores/ObjectStoreContract.js +0 -1
- package/dist/stores/SyncActionStore.d.ts +0 -97
- package/dist/stores/SyncActionStore.js +0 -504
- package/dist/stores/syncAction.d.ts +0 -26
- package/dist/stores/syncAction.js +0 -16
- package/dist/surface.d.ts +0 -36
- package/dist/surface.js +0 -75
- package/dist/sync/BootstrapFetcher.d.ts +0 -280
- package/dist/sync/BootstrapFetcher.js +0 -962
- package/dist/sync/ConnectionManager.d.ts +0 -8
- package/dist/sync/ConnectionManager.js +0 -8
- package/dist/sync/OnDemandLoader.d.ts +0 -228
- package/dist/sync/OnDemandLoader.js +0 -742
- package/dist/sync/SubscriptionManager.d.ts +0 -159
- package/dist/sync/SubscriptionManager.js +0 -243
- package/dist/sync/SyncWebSocket.d.ts +0 -173
- package/dist/sync/SyncWebSocket.js +0 -438
- package/dist/sync/awaitClaimGrant.d.ts +0 -6
- package/dist/sync/awaitClaimGrant.js +0 -6
- package/dist/sync/bootstrapApply.d.ts +0 -70
- package/dist/sync/bootstrapApply.js +0 -73
- package/dist/sync/commitFrames.d.ts +0 -8
- package/dist/sync/commitFrames.js +0 -8
- package/dist/sync/contextPorts.d.ts +0 -18
- package/dist/sync/contextPorts.js +0 -31
- package/dist/sync/createClaimStream.d.ts +0 -7
- package/dist/sync/createClaimStream.js +0 -7
- package/dist/sync/createPresenceStream.d.ts +0 -69
- package/dist/sync/createPresenceStream.js +0 -200
- package/dist/sync/createSnapshot.d.ts +0 -29
- package/dist/sync/createSnapshot.js +0 -118
- package/dist/sync/credentialLifecycle.d.ts +0 -7
- package/dist/sync/credentialLifecycle.js +0 -7
- package/dist/sync/deltaPipeline.d.ts +0 -113
- package/dist/sync/deltaPipeline.js +0 -261
- package/dist/sync/groupChange.d.ts +0 -113
- package/dist/sync/groupChange.js +0 -242
- package/dist/sync/participants.d.ts +0 -115
- package/dist/sync/participants.js +0 -344
- package/dist/sync/persistedPrefix.d.ts +0 -12
- package/dist/sync/persistedPrefix.js +0 -22
- package/dist/sync/schemaDrift.d.ts +0 -55
- package/dist/sync/schemaDrift.js +0 -53
- package/dist/sync/schemas.d.ts +0 -70
- package/dist/sync/schemas.js +0 -94
- package/dist/sync/syncCursor.d.ts +0 -40
- package/dist/sync/syncCursor.js +0 -55
- package/dist/sync/syncPlan.d.ts +0 -54
- package/dist/sync/syncPlan.js +0 -50
- package/dist/sync/wsFrameHandlers.d.ts +0 -8
- package/dist/sync/wsFrameHandlers.js +0 -8
- package/dist/testing/fixtures/bootstrap.d.ts +0 -49
- package/dist/testing/fixtures/bootstrap.js +0 -59
- package/dist/testing/fixtures/deltas.d.ts +0 -83
- package/dist/testing/fixtures/deltas.js +0 -136
- package/dist/testing/fixtures/httpResponses.d.ts +0 -70
- package/dist/testing/fixtures/httpResponses.js +0 -90
- package/dist/testing/fixtures/models.d.ts +0 -83
- package/dist/testing/fixtures/models.js +0 -272
- package/dist/testing/helpers/reactWrapper.d.ts +0 -69
- package/dist/testing/helpers/reactWrapper.js +0 -67
- package/dist/testing/helpers/syncEngineHarness.d.ts +0 -54
- package/dist/testing/helpers/syncEngineHarness.js +0 -73
- package/dist/testing/helpers/wait.d.ts +0 -30
- package/dist/testing/helpers/wait.js +0 -49
- package/dist/testing/index.d.ts +0 -23
- package/dist/testing/index.js +0 -33
- package/dist/testing/mocks/FakeDatabase.d.ts +0 -18
- package/dist/testing/mocks/FakeDatabase.js +0 -10
- package/dist/testing/mocks/MockMutationExecutor.d.ts +0 -87
- package/dist/testing/mocks/MockMutationExecutor.js +0 -186
- package/dist/testing/mocks/MockNetworkMonitor.d.ts +0 -20
- package/dist/testing/mocks/MockNetworkMonitor.js +0 -46
- package/dist/testing/mocks/MockSyncContext.d.ts +0 -51
- package/dist/testing/mocks/MockSyncContext.js +0 -72
- package/dist/testing/mocks/MockSyncStore.d.ts +0 -88
- package/dist/testing/mocks/MockSyncStore.js +0 -171
- package/dist/testing/mocks/MockWebSocket.d.ts +0 -71
- package/dist/testing/mocks/MockWebSocket.js +0 -118
- package/dist/transaction/ablo.d.ts +0 -88
- package/dist/transaction/ablo.js +0 -33
- package/dist/transaction/auth/apiKey.d.ts +0 -152
- package/dist/transaction/auth/apiKey.js +0 -419
- package/dist/transaction/auth/bootstrapScope.d.ts +0 -15
- package/dist/transaction/auth/bootstrapScope.js +0 -1
- package/dist/transaction/auth/capability.d.ts +0 -177
- package/dist/transaction/auth/capability.js +0 -199
- package/dist/transaction/auth/credentialEndpoint.d.ts +0 -61
- package/dist/transaction/auth/credentialEndpoint.js +0 -86
- package/dist/transaction/auth/credentialPolicy.d.ts +0 -148
- package/dist/transaction/auth/credentialPolicy.js +0 -125
- package/dist/transaction/auth/credentialSource.d.ts +0 -30
- package/dist/transaction/auth/credentialSource.js +0 -55
- package/dist/transaction/auth/hostedEndpoints.d.ts +0 -21
- package/dist/transaction/auth/hostedEndpoints.js +0 -21
- package/dist/transaction/auth/identity.d.ts +0 -55
- package/dist/transaction/auth/identity.js +0 -210
- package/dist/transaction/auth/index.d.ts +0 -162
- package/dist/transaction/auth/index.js +0 -304
- package/dist/transaction/auth/schemas.d.ts +0 -59
- package/dist/transaction/auth/schemas.js +0 -85
- package/dist/transaction/auth/sessionMint.d.ts +0 -28
- package/dist/transaction/auth/sessionMint.js +0 -85
- package/dist/transaction/coordination/awaitClaimGrant.d.ts +0 -49
- package/dist/transaction/coordination/awaitClaimGrant.js +0 -112
- package/dist/transaction/coordination/claimHeartbeatLoop.d.ts +0 -50
- package/dist/transaction/coordination/claimHeartbeatLoop.js +0 -88
- package/dist/transaction/coordination/claimMeta.d.ts +0 -49
- package/dist/transaction/coordination/claimMeta.js +0 -52
- package/dist/transaction/coordination/createClaimStream.d.ts +0 -64
- package/dist/transaction/coordination/createClaimStream.js +0 -475
- package/dist/transaction/coordination/events.d.ts +0 -74
- package/dist/transaction/coordination/events.js +0 -7
- package/dist/transaction/coordination/index.d.ts +0 -19
- package/dist/transaction/coordination/index.js +0 -44
- package/dist/transaction/coordination/locator.d.ts +0 -83
- package/dist/transaction/coordination/locator.js +0 -82
- package/dist/transaction/coordination/schema.d.ts +0 -1473
- package/dist/transaction/coordination/schema.js +0 -1013
- package/dist/transaction/coordination/targetConflict.d.ts +0 -2
- package/dist/transaction/coordination/targetConflict.js +0 -103
- package/dist/transaction/coordination/trace.d.ts +0 -78
- package/dist/transaction/coordination/trace.js +0 -138
- package/dist/transaction/durableWrites.d.ts +0 -62
- package/dist/transaction/durableWrites.js +0 -71
- package/dist/transaction/environment.d.ts +0 -105
- package/dist/transaction/environment.js +0 -108
- package/dist/transaction/errorCodes.d.ts +0 -403
- package/dist/transaction/errorCodes.js +0 -480
- package/dist/transaction/errors.d.ts +0 -428
- package/dist/transaction/errors.js +0 -686
- package/dist/transaction/index.d.ts +0 -20
- package/dist/transaction/index.js +0 -20
- package/dist/transaction/keys/index.d.ts +0 -87
- package/dist/transaction/keys/index.js +0 -207
- package/dist/transaction/log/syncDeltaRow.d.ts +0 -158
- package/dist/transaction/log/syncDeltaRow.js +0 -95
- package/dist/transaction/logPosition.d.ts +0 -97
- package/dist/transaction/logPosition.js +0 -125
- package/dist/transaction/logger.d.ts +0 -16
- package/dist/transaction/logger.js +0 -7
- package/dist/transaction/observability.d.ts +0 -53
- package/dist/transaction/observability.js +0 -19
- package/dist/transaction/persistence.d.ts +0 -12
- package/dist/transaction/persistence.js +0 -11
- package/dist/transaction/plugin.d.ts +0 -192
- package/dist/transaction/plugin.js +0 -87
- package/dist/transaction/policy/types.d.ts +0 -217
- package/dist/transaction/policy/types.js +0 -126
- package/dist/transaction/resources/functionalUpdate.d.ts +0 -79
- package/dist/transaction/resources/functionalUpdate.js +0 -87
- package/dist/transaction/resources/httpResources.d.ts +0 -266
- package/dist/transaction/resources/httpResources.js +0 -7
- package/dist/transaction/resources/modelOperations.d.ts +0 -319
- package/dist/transaction/resources/modelOperations.js +0 -12
- package/dist/transaction/resources/mutationOptions.d.ts +0 -66
- package/dist/transaction/resources/mutationOptions.js +0 -9
- package/dist/transaction/resources/where.d.ts +0 -85
- package/dist/transaction/resources/where.js +0 -70
- package/dist/transaction/resources/writeOptionsSchema.d.ts +0 -47
- package/dist/transaction/resources/writeOptionsSchema.js +0 -73
- package/dist/transaction/schema/field.d.ts +0 -126
- package/dist/transaction/schema/field.js +0 -265
- package/dist/transaction/schema/loadStrategy.d.ts +0 -45
- package/dist/transaction/schema/loadStrategy.js +0 -46
- package/dist/transaction/schema/model.d.ts +0 -379
- package/dist/transaction/schema/model.js +0 -123
- package/dist/transaction/schema/openapi.d.ts +0 -57
- package/dist/transaction/schema/openapi.js +0 -340
- package/dist/transaction/schema/relation.d.ts +0 -199
- package/dist/transaction/schema/relation.js +0 -104
- package/dist/transaction/schema/residency.d.ts +0 -29
- package/dist/transaction/schema/residency.js +0 -25
- package/dist/transaction/schema/roles.d.ts +0 -249
- package/dist/transaction/schema/roles.js +0 -230
- package/dist/transaction/schema/schema.d.ts +0 -324
- package/dist/transaction/schema/schema.js +0 -305
- package/dist/transaction/schema/tenancy.d.ts +0 -139
- package/dist/transaction/schema/tenancy.js +0 -190
- package/dist/transaction/transactionLayer.d.ts +0 -82
- package/dist/transaction/transactionLayer.js +0 -24
- package/dist/transaction/transactions/settlement/commitEnvelope.d.ts +0 -143
- package/dist/transaction/transactions/settlement/commitEnvelope.js +0 -161
- package/dist/transaction/transactions/settlement/httpCommitEnvelope.d.ts +0 -53
- package/dist/transaction/transactions/settlement/httpCommitEnvelope.js +0 -207
- package/dist/transaction/transactions/settlement/idempotencyKey.d.ts +0 -10
- package/dist/transaction/transactions/settlement/idempotencyKey.js +0 -9
- package/dist/transaction/transactions/settlement/pendingWrite.d.ts +0 -112
- package/dist/transaction/transactions/settlement/pendingWrite.js +0 -20
- package/dist/transaction/transport/commitFrames.d.ts +0 -90
- package/dist/transaction/transport/commitFrames.js +0 -134
- package/dist/transaction/transport/connectionManager.d.ts +0 -215
- package/dist/transaction/transport/connectionManager.js +0 -673
- package/dist/transaction/transport/credentialLifecycle.d.ts +0 -177
- package/dist/transaction/transport/credentialLifecycle.js +0 -324
- package/dist/transaction/transport/heartbeat.d.ts +0 -65
- package/dist/transaction/transport/heartbeat.js +0 -93
- package/dist/transaction/transport/httpClient.d.ts +0 -123
- package/dist/transaction/transport/httpClient.js +0 -145
- package/dist/transaction/transport/httpOptions.d.ts +0 -33
- package/dist/transaction/transport/httpOptions.js +0 -12
- package/dist/transaction/transport/httpTransport.d.ts +0 -8
- package/dist/transaction/transport/httpTransport.js +0 -1276
- package/dist/transaction/transport/networkProbe.d.ts +0 -84
- package/dist/transaction/transport/networkProbe.js +0 -207
- package/dist/transaction/transport/wsFrameHandlers.d.ts +0 -128
- package/dist/transaction/transport/wsFrameHandlers.js +0 -429
- package/dist/transaction/transport/wsTransport.d.ts +0 -576
- package/dist/transaction/transport/wsTransport.js +0 -1017
- package/dist/transaction/types/assertExact.d.ts +0 -17
- package/dist/transaction/types/assertExact.js +0 -1
- package/dist/transaction/types/global.d.ts +0 -107
- package/dist/transaction/types/global.js +0 -40
- package/dist/transaction/types/index.d.ts +0 -205
- package/dist/transaction/types/index.js +0 -56
- package/dist/transaction/types/modelData.d.ts +0 -10
- package/dist/transaction/types/modelData.js +0 -9
- package/dist/transaction/types/participant.d.ts +0 -20
- package/dist/transaction/types/participant.js +0 -10
- package/dist/transaction/types/streams.d.ts +0 -540
- package/dist/transaction/types/streams.js +0 -11
- package/dist/transaction/utils/asyncIterator.d.ts +0 -34
- package/dist/transaction/utils/asyncIterator.js +0 -135
- package/dist/transaction/utils/duration.d.ts +0 -25
- package/dist/transaction/utils/duration.js +0 -45
- package/dist/transaction/utils/json.d.ts +0 -57
- package/dist/transaction/utils/json.js +0 -276
- package/dist/transaction/wire/accountResponses.d.ts +0 -351
- package/dist/transaction/wire/accountResponses.js +0 -255
- package/dist/transaction/wire/auth.d.ts +0 -49
- package/dist/transaction/wire/auth.js +0 -57
- package/dist/transaction/wire/bootstrapReason.d.ts +0 -9
- package/dist/transaction/wire/bootstrapReason.js +0 -8
- package/dist/transaction/wire/claimEvent.d.ts +0 -76
- package/dist/transaction/wire/claimEvent.js +0 -73
- package/dist/transaction/wire/claims.d.ts +0 -463
- package/dist/transaction/wire/claims.js +0 -229
- package/dist/transaction/wire/commit.d.ts +0 -603
- package/dist/transaction/wire/commit.js +0 -321
- package/dist/transaction/wire/delta.d.ts +0 -250
- package/dist/transaction/wire/delta.js +0 -147
- package/dist/transaction/wire/errorEnvelope.d.ts +0 -72
- package/dist/transaction/wire/errorEnvelope.js +0 -123
- package/dist/transaction/wire/feedCursor.d.ts +0 -60
- package/dist/transaction/wire/feedCursor.js +0 -82
- package/dist/transaction/wire/feedEvent.d.ts +0 -177
- package/dist/transaction/wire/feedEvent.js +0 -39
- package/dist/transaction/wire/frames.d.ts +0 -194
- package/dist/transaction/wire/frames.js +0 -50
- package/dist/transaction/wire/inboundFrames.d.ts +0 -552
- package/dist/transaction/wire/inboundFrames.js +0 -116
- package/dist/transaction/wire/index.d.ts +0 -50
- package/dist/transaction/wire/index.js +0 -74
- package/dist/transaction/wire/listEnvelope.d.ts +0 -37
- package/dist/transaction/wire/listEnvelope.js +0 -42
- package/dist/transaction/wire/modelResponses.d.ts +0 -85
- package/dist/transaction/wire/modelResponses.js +0 -43
- package/dist/transaction/wire/protocol.d.ts +0 -38
- package/dist/transaction/wire/protocol.js +0 -38
- package/dist/transaction/wire/protocolVersion.d.ts +0 -73
- package/dist/transaction/wire/protocolVersion.js +0 -83
- package/dist/transactions/mutations/MutationQueue.d.ts +0 -655
- package/dist/transactions/mutations/MutationQueue.js +0 -2797
- package/dist/transactions/mutations/MutationStore.d.ts +0 -20
- package/dist/transactions/mutations/MutationStore.js +0 -53
- package/dist/transactions/mutations/UnconfirmedWrites.d.ts +0 -82
- package/dist/transactions/mutations/UnconfirmedWrites.js +0 -104
- package/dist/transactions/mutations/coalesceRules.d.ts +0 -58
- package/dist/transactions/mutations/coalesceRules.js +0 -140
- package/dist/transactions/mutations/commitLatency.d.ts +0 -52
- package/dist/transactions/mutations/commitLatency.js +0 -130
- package/dist/transactions/mutations/commitOutboxStore.d.ts +0 -28
- package/dist/transactions/mutations/commitOutboxStore.js +0 -26
- package/dist/transactions/mutations/commitPayload.d.ts +0 -164
- package/dist/transactions/mutations/commitPayload.js +0 -152
- package/dist/transactions/mutations/deltaConfirmation.d.ts +0 -59
- package/dist/transactions/mutations/deltaConfirmation.js +0 -233
- package/dist/transactions/mutations/durableWriteStore.d.ts +0 -14
- package/dist/transactions/mutations/durableWriteStore.js +0 -12
- package/dist/transactions/mutations/optimisticApply.d.ts +0 -49
- package/dist/transactions/mutations/optimisticApply.js +0 -65
- package/dist/transactions/mutations/replayValidation.d.ts +0 -186
- package/dist/transactions/mutations/replayValidation.js +0 -163
- package/dist/utils/mobxSetup.d.ts +0 -53
- package/dist/utils/mobxSetup.js +0 -330
- package/dist/webhooks/events.d.ts +0 -43
- package/dist/webhooks/events.js +0 -42
- package/dist/webhooks/index.d.ts +0 -8
- package/dist/webhooks/index.js +0 -8
- package/dist/wire/index.d.ts +0 -1
- package/dist/wire/index.js +0 -8
- package/docs/interaction-model.md +0 -99
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* What `GET /v1/logs` returns: one envelope, two arms.
|
|
3
|
-
*
|
|
4
|
-
* The feed answers two questions that a caller without a socket cannot
|
|
5
|
-
* otherwise ask — "what changed" and "who is working on what" — and it answers
|
|
6
|
-
* them through one endpoint, one envelope, and one cursor grammar rather than
|
|
7
|
-
* growing a second feed with its own pagination dialect beside the first.
|
|
8
|
-
*
|
|
9
|
-
* The arms stay separately sequenced. A claim is a lease, not a settled fact,
|
|
10
|
-
* and putting one into the log that clients materialize rows from — and that
|
|
11
|
-
* WAL-echo promotion and compaction operate over — would make a claim-churn
|
|
12
|
-
* storm indistinguishable from committed change. They share a reading, not a
|
|
13
|
-
* sequence; {@link FeedCursor} is what carries both positions.
|
|
14
|
-
*/
|
|
15
|
-
import { z } from 'zod';
|
|
16
|
-
import { logEventSchema } from './accountResponses.js';
|
|
17
|
-
import { claimEventSchema } from './claimEvent.js';
|
|
18
|
-
import { listEnvelopeSchema } from './listEnvelope.js';
|
|
19
|
-
/**
|
|
20
|
-
* One entry, from either source. Discriminated on `object`, so a consumer
|
|
21
|
-
* reading an arm it does not know still parses the page and can skip the entry
|
|
22
|
-
* — which is what lets the claim arm be added to a running feed at all.
|
|
23
|
-
*/
|
|
24
|
-
export const feedEventSchema = z.discriminatedUnion('object', [
|
|
25
|
-
logEventSchema,
|
|
26
|
-
claimEventSchema,
|
|
27
|
-
]);
|
|
28
|
-
/** `GET /v1/logs` — the canonical list envelope over the feed. */
|
|
29
|
-
export const logListResponseSchema = listEnvelopeSchema(feedEventSchema);
|
|
30
|
-
/**
|
|
31
|
-
* The claim arm has no producer yet: claim transitions are broadcast today and
|
|
32
|
-
* recorded nowhere, so there is no sequence to read `seq` from. Until that log
|
|
33
|
-
* exists the route emits only `log_event`s, and there is deliberately NO
|
|
34
|
-
* request parameter for selecting arms — a knob that cannot be honoured is how
|
|
35
|
-
* a contract comes to describe a server that does not exist.
|
|
36
|
-
*
|
|
37
|
-
* What is here is the definition the producer will fill: the union parses
|
|
38
|
-
* today's pages unchanged, and the cursor already carries the second position.
|
|
39
|
-
*/
|
|
@@ -1,194 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The write-path message shapes for the sync protocol. These cover the frames
|
|
3
|
-
* a client sends to commit work — {@link CommitMessage}, a batch of raw
|
|
4
|
-
* operations — and the server's {@link MutationResultMessage}
|
|
5
|
-
* acknowledgement. The same frames flow over a WebSocket connection and over
|
|
6
|
-
* the HTTP commit endpoint.
|
|
7
|
-
*
|
|
8
|
-
* Both the client and the server import these definitions from here, so the two
|
|
9
|
-
* sides cannot drift. Zod schemas are the definition site and every TypeScript
|
|
10
|
-
* shape is inferred from them. Changing any schema in this file changes the
|
|
11
|
-
* wire contract and requires the client and server to update together.
|
|
12
|
-
*/
|
|
13
|
-
import { z } from 'zod';
|
|
14
|
-
import type { MutationResultMessageWire } from './commit.js';
|
|
15
|
-
/**
|
|
16
|
-
* A single operation within a commit batch and its authoritative runtime
|
|
17
|
-
* validator. Each operation is the smallest unit the server applies atomically
|
|
18
|
-
* — one create, update, delete, archive, or unarchive against one model row.
|
|
19
|
-
* Both commit transports — the WebSocket `commit` frame and the HTTP
|
|
20
|
-
* `/v1/commits` endpoint — run this check
|
|
21
|
-
* on every operation before it is applied, so a malformed operation is rejected
|
|
22
|
-
* at the edge. It builds on the shared coordination schema, widening `bypass`
|
|
23
|
-
* to also accept `null`. The TypeScript type is inferred from this schema so
|
|
24
|
-
* the runtime and compile-time contracts have one definition site.
|
|
25
|
-
*/
|
|
26
|
-
export declare const wireCommitOperationSchema: z.ZodObject<{
|
|
27
|
-
readAt: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
28
|
-
onStale: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
|
|
29
|
-
reject: "reject";
|
|
30
|
-
overwrite: "overwrite";
|
|
31
|
-
notify: "notify";
|
|
32
|
-
}>>>;
|
|
33
|
-
type: z.ZodEnum<{
|
|
34
|
-
CREATE: "CREATE";
|
|
35
|
-
UPDATE: "UPDATE";
|
|
36
|
-
DELETE: "DELETE";
|
|
37
|
-
ARCHIVE: "ARCHIVE";
|
|
38
|
-
UNARCHIVE: "UNARCHIVE";
|
|
39
|
-
}>;
|
|
40
|
-
model: z.ZodString;
|
|
41
|
-
id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
42
|
-
input: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
43
|
-
transactionId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
44
|
-
fenceToken: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
45
|
-
bypass: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
|
|
46
|
-
}, z.core.$strip>;
|
|
47
|
-
export type WireCommitOperation = z.infer<typeof wireCommitOperationSchema>;
|
|
48
|
-
/**
|
|
49
|
-
* @deprecated Renamed to {@link WireCommitOperation} — coordination/schema owns
|
|
50
|
-
* the base `CommitOperation`; this is the wire-extended form, and the two are
|
|
51
|
-
* different types that shared one name. Removed in 0.36.0.
|
|
52
|
-
*/
|
|
53
|
-
export type CommitOperation = WireCommitOperation;
|
|
54
|
-
/** @deprecated Renamed to {@link wireCommitOperationSchema}. Removed in 0.36.0. */
|
|
55
|
-
export declare const commitOperationSchema: z.ZodObject<{
|
|
56
|
-
readAt: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
57
|
-
onStale: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
|
|
58
|
-
reject: "reject";
|
|
59
|
-
overwrite: "overwrite";
|
|
60
|
-
notify: "notify";
|
|
61
|
-
}>>>;
|
|
62
|
-
type: z.ZodEnum<{
|
|
63
|
-
CREATE: "CREATE";
|
|
64
|
-
UPDATE: "UPDATE";
|
|
65
|
-
DELETE: "DELETE";
|
|
66
|
-
ARCHIVE: "ARCHIVE";
|
|
67
|
-
UNARCHIVE: "UNARCHIVE";
|
|
68
|
-
}>;
|
|
69
|
-
model: z.ZodString;
|
|
70
|
-
id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
71
|
-
input: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
72
|
-
transactionId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
73
|
-
fenceToken: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
74
|
-
bypass: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
|
|
75
|
-
}, z.core.$strip>;
|
|
76
|
-
/**
|
|
77
|
-
* The authoritative payload schema for a client-to-server commit frame. It
|
|
78
|
-
* checks every field the server acts on — `operations`, `clientTxId`, and
|
|
79
|
-
* `reads` — validating each operation with {@link wireCommitOperationSchema} and
|
|
80
|
-
* each premise entry with the shared {@link readDependencySchema}.
|
|
81
|
-
*/
|
|
82
|
-
export declare const commitPayloadSchema: z.ZodObject<{
|
|
83
|
-
operations: z.ZodArray<z.ZodObject<{
|
|
84
|
-
readAt: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
85
|
-
onStale: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
|
|
86
|
-
reject: "reject";
|
|
87
|
-
overwrite: "overwrite";
|
|
88
|
-
notify: "notify";
|
|
89
|
-
}>>>;
|
|
90
|
-
type: z.ZodEnum<{
|
|
91
|
-
CREATE: "CREATE";
|
|
92
|
-
UPDATE: "UPDATE";
|
|
93
|
-
DELETE: "DELETE";
|
|
94
|
-
ARCHIVE: "ARCHIVE";
|
|
95
|
-
UNARCHIVE: "UNARCHIVE";
|
|
96
|
-
}>;
|
|
97
|
-
model: z.ZodString;
|
|
98
|
-
id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
99
|
-
input: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
100
|
-
transactionId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
101
|
-
fenceToken: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
102
|
-
bypass: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
|
|
103
|
-
}, z.core.$strip>>;
|
|
104
|
-
clientTxId: z.ZodString;
|
|
105
|
-
reads: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
|
|
106
|
-
model: z.ZodString;
|
|
107
|
-
id: z.ZodString;
|
|
108
|
-
readAt: z.ZodNumber;
|
|
109
|
-
fields: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodString>>>;
|
|
110
|
-
onStale: z.ZodOptional<z.ZodEnum<{
|
|
111
|
-
reject: "reject";
|
|
112
|
-
overwrite: "overwrite";
|
|
113
|
-
notify: "notify";
|
|
114
|
-
}>>;
|
|
115
|
-
}, z.core.$strip>, z.ZodObject<{
|
|
116
|
-
group: z.ZodString;
|
|
117
|
-
readAt: z.ZodNumber;
|
|
118
|
-
onStale: z.ZodOptional<z.ZodEnum<{
|
|
119
|
-
reject: "reject";
|
|
120
|
-
overwrite: "overwrite";
|
|
121
|
-
notify: "notify";
|
|
122
|
-
}>>;
|
|
123
|
-
}, z.core.$strip>]>>>>;
|
|
124
|
-
track: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
|
|
125
|
-
model: z.ZodString;
|
|
126
|
-
id: z.ZodString;
|
|
127
|
-
readAt: z.ZodOptional<z.ZodNumber>;
|
|
128
|
-
}, z.core.$strip>, z.ZodObject<{
|
|
129
|
-
group: z.ZodString;
|
|
130
|
-
readAt: z.ZodOptional<z.ZodNumber>;
|
|
131
|
-
}, z.core.$strip>]>>>>;
|
|
132
|
-
}, z.core.$strip>;
|
|
133
|
-
/** A client-to-server frame that asks the server to commit a batch atomically. */
|
|
134
|
-
export declare const commitMessageSchema: z.ZodObject<{
|
|
135
|
-
type: z.ZodLiteral<"commit">;
|
|
136
|
-
payload: z.ZodObject<{
|
|
137
|
-
operations: z.ZodArray<z.ZodObject<{
|
|
138
|
-
readAt: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
139
|
-
onStale: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
|
|
140
|
-
reject: "reject";
|
|
141
|
-
overwrite: "overwrite";
|
|
142
|
-
notify: "notify";
|
|
143
|
-
}>>>;
|
|
144
|
-
type: z.ZodEnum<{
|
|
145
|
-
CREATE: "CREATE";
|
|
146
|
-
UPDATE: "UPDATE";
|
|
147
|
-
DELETE: "DELETE";
|
|
148
|
-
ARCHIVE: "ARCHIVE";
|
|
149
|
-
UNARCHIVE: "UNARCHIVE";
|
|
150
|
-
}>;
|
|
151
|
-
model: z.ZodString;
|
|
152
|
-
id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
153
|
-
input: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
154
|
-
transactionId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
155
|
-
fenceToken: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
156
|
-
bypass: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
|
|
157
|
-
}, z.core.$strip>>;
|
|
158
|
-
clientTxId: z.ZodString;
|
|
159
|
-
reads: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
|
|
160
|
-
model: z.ZodString;
|
|
161
|
-
id: z.ZodString;
|
|
162
|
-
readAt: z.ZodNumber;
|
|
163
|
-
fields: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodString>>>;
|
|
164
|
-
onStale: z.ZodOptional<z.ZodEnum<{
|
|
165
|
-
reject: "reject";
|
|
166
|
-
overwrite: "overwrite";
|
|
167
|
-
notify: "notify";
|
|
168
|
-
}>>;
|
|
169
|
-
}, z.core.$strip>, z.ZodObject<{
|
|
170
|
-
group: z.ZodString;
|
|
171
|
-
readAt: z.ZodNumber;
|
|
172
|
-
onStale: z.ZodOptional<z.ZodEnum<{
|
|
173
|
-
reject: "reject";
|
|
174
|
-
overwrite: "overwrite";
|
|
175
|
-
notify: "notify";
|
|
176
|
-
}>>;
|
|
177
|
-
}, z.core.$strip>]>>>>;
|
|
178
|
-
track: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
|
|
179
|
-
model: z.ZodString;
|
|
180
|
-
id: z.ZodString;
|
|
181
|
-
readAt: z.ZodOptional<z.ZodNumber>;
|
|
182
|
-
}, z.core.$strip>, z.ZodObject<{
|
|
183
|
-
group: z.ZodString;
|
|
184
|
-
readAt: z.ZodOptional<z.ZodNumber>;
|
|
185
|
-
}, z.core.$strip>]>>>>;
|
|
186
|
-
}, z.core.$strip>;
|
|
187
|
-
}, z.core.$strip>;
|
|
188
|
-
export type CommitMessage = z.infer<typeof commitMessageSchema>;
|
|
189
|
-
/**
|
|
190
|
-
* The server's acknowledgement of a {@link CommitMessage}. Runtime shape and
|
|
191
|
-
* TypeScript type are both owned by `wire/commit.ts`; HTTP, WebSocket, and
|
|
192
|
-
* cached replay no longer maintain parallel receipt declarations.
|
|
193
|
-
*/
|
|
194
|
-
export type MutationResultMessage = MutationResultMessageWire;
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The write-path message shapes for the sync protocol. These cover the frames
|
|
3
|
-
* a client sends to commit work — {@link CommitMessage}, a batch of raw
|
|
4
|
-
* operations — and the server's {@link MutationResultMessage}
|
|
5
|
-
* acknowledgement. The same frames flow over a WebSocket connection and over
|
|
6
|
-
* the HTTP commit endpoint.
|
|
7
|
-
*
|
|
8
|
-
* Both the client and the server import these definitions from here, so the two
|
|
9
|
-
* sides cannot drift. Zod schemas are the definition site and every TypeScript
|
|
10
|
-
* shape is inferred from them. Changing any schema in this file changes the
|
|
11
|
-
* wire contract and requires the client and server to update together.
|
|
12
|
-
*/
|
|
13
|
-
import { z } from 'zod';
|
|
14
|
-
// The runtime schema primitives are imported straight from the coordination
|
|
15
|
-
// schema module to keep this file's runtime dependencies limited to Zod.
|
|
16
|
-
import { commitOperationSchema as coordinationCommitOperationSchema, readDependencySchema, trackDependencySchema, } from '../coordination/schema.js';
|
|
17
|
-
// ── Client → Server ────────────────────────────────────────────────────────
|
|
18
|
-
/**
|
|
19
|
-
* A single operation within a commit batch and its authoritative runtime
|
|
20
|
-
* validator. Each operation is the smallest unit the server applies atomically
|
|
21
|
-
* — one create, update, delete, archive, or unarchive against one model row.
|
|
22
|
-
* Both commit transports — the WebSocket `commit` frame and the HTTP
|
|
23
|
-
* `/v1/commits` endpoint — run this check
|
|
24
|
-
* on every operation before it is applied, so a malformed operation is rejected
|
|
25
|
-
* at the edge. It builds on the shared coordination schema, widening `bypass`
|
|
26
|
-
* to also accept `null`. The TypeScript type is inferred from this schema so
|
|
27
|
-
* the runtime and compile-time contracts have one definition site.
|
|
28
|
-
*/
|
|
29
|
-
export const wireCommitOperationSchema = coordinationCommitOperationSchema.extend({
|
|
30
|
-
bypass: z.boolean().nullish(),
|
|
31
|
-
});
|
|
32
|
-
/** @deprecated Renamed to {@link wireCommitOperationSchema}. Removed in 0.36.0. */
|
|
33
|
-
export const commitOperationSchema = wireCommitOperationSchema;
|
|
34
|
-
/**
|
|
35
|
-
* The authoritative payload schema for a client-to-server commit frame. It
|
|
36
|
-
* checks every field the server acts on — `operations`, `clientTxId`, and
|
|
37
|
-
* `reads` — validating each operation with {@link wireCommitOperationSchema} and
|
|
38
|
-
* each premise entry with the shared {@link readDependencySchema}.
|
|
39
|
-
*/
|
|
40
|
-
export const commitPayloadSchema = z.object({
|
|
41
|
-
operations: z.array(wireCommitOperationSchema),
|
|
42
|
-
clientTxId: z.string(),
|
|
43
|
-
reads: z.array(readDependencySchema).nullish(),
|
|
44
|
-
track: z.array(trackDependencySchema).nullish(),
|
|
45
|
-
});
|
|
46
|
-
/** A client-to-server frame that asks the server to commit a batch atomically. */
|
|
47
|
-
export const commitMessageSchema = z.object({
|
|
48
|
-
type: z.literal('commit'),
|
|
49
|
-
payload: commitPayloadSchema,
|
|
50
|
-
});
|