@abloatai/transaction 0.56.0 → 0.58.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CONVENTIONS.md +54 -10
- package/README.md +3 -1
- package/dist/ai-sdk/modelTools.d.ts +3 -3
- package/dist/ai-sdk/modelTools.d.ts.map +1 -1
- package/dist/ai-sdk/modelTools.js +1 -1
- package/dist/ai-sdk/modelTools.js.map +1 -1
- package/dist/ai-sdk/updateTool.d.ts +5 -7
- package/dist/ai-sdk/updateTool.d.ts.map +1 -1
- package/dist/ai-sdk/updateTool.js +3 -5
- package/dist/ai-sdk/updateTool.js.map +1 -1
- package/dist/auth/capability.d.ts +5 -0
- package/dist/auth/capability.d.ts.map +1 -1
- package/dist/auth/capability.js +5 -0
- package/dist/auth/capability.js.map +1 -1
- package/dist/auth/capabilityLifecycle.d.ts +1 -1
- package/dist/auth/capabilityLifecycle.d.ts.map +1 -1
- package/dist/auth/credentialPolicy.d.ts +1 -1
- package/dist/auth/credentialPolicy.d.ts.map +1 -1
- package/dist/auth/identity.d.ts +3 -3
- package/dist/auth/identity.d.ts.map +1 -1
- package/dist/auth/identity.js +5 -5
- package/dist/auth/identity.js.map +1 -1
- package/dist/auth/index.d.ts +4 -208
- package/dist/auth/index.d.ts.map +1 -1
- package/dist/auth/index.js +4 -330
- package/dist/auth/index.js.map +1 -1
- package/dist/auth/runtime.d.ts +218 -0
- package/dist/auth/runtime.d.ts.map +1 -0
- package/dist/auth/runtime.js +336 -0
- package/dist/auth/runtime.js.map +1 -0
- package/dist/auth/sessionMint.d.ts +1 -1
- package/dist/auth/sessionMint.d.ts.map +1 -1
- package/dist/auth/sessionMint.js +2 -1
- package/dist/auth/sessionMint.js.map +1 -1
- package/dist/branches.d.ts +25 -21
- package/dist/branches.d.ts.map +1 -1
- package/dist/branches.js +3 -0
- package/dist/branches.js.map +1 -1
- package/dist/{coordination/awaitClaimGrant.d.ts → claims/awaitGrant.d.ts} +1 -1
- package/dist/claims/awaitGrant.d.ts.map +1 -0
- package/dist/{coordination/awaitClaimGrant.js → claims/awaitGrant.js} +4 -4
- package/dist/claims/awaitGrant.js.map +1 -0
- package/dist/{wire/claims.d.ts → claims/contract.d.ts} +1 -1
- package/dist/claims/contract.d.ts.map +1 -0
- package/dist/{wire/claims.js → claims/contract.js} +2 -2
- package/dist/claims/contract.js.map +1 -0
- package/dist/{wire/claimEvent.d.ts → claims/eventContract.d.ts} +1 -1
- package/dist/claims/eventContract.d.ts.map +1 -0
- package/dist/{wire/claimEvent.js → claims/eventContract.js} +1 -1
- package/dist/claims/eventContract.js.map +1 -0
- package/dist/{coordination → claims}/events.d.ts +7 -11
- package/dist/claims/events.d.ts.map +1 -0
- package/dist/claims/events.js +8 -0
- package/dist/claims/events.js.map +1 -0
- package/dist/{coordination/claimHeartbeatLoop.d.ts → claims/heartbeat.d.ts} +1 -1
- package/dist/claims/heartbeat.d.ts.map +1 -0
- package/dist/{coordination/claimHeartbeatLoop.js → claims/heartbeat.js} +1 -1
- package/dist/claims/heartbeat.js.map +1 -0
- package/dist/claims/index.d.ts +17 -0
- package/dist/claims/index.d.ts.map +1 -0
- package/dist/claims/index.js +16 -0
- package/dist/claims/index.js.map +1 -0
- package/dist/claims/lifetime.d.ts +26 -0
- package/dist/claims/lifetime.d.ts.map +1 -0
- package/dist/claims/lifetime.js +62 -0
- package/dist/claims/lifetime.js.map +1 -0
- package/dist/{coordination → claims}/locator.d.ts +1 -1
- package/dist/claims/locator.d.ts.map +1 -0
- package/dist/{coordination → claims}/locator.js +2 -2
- package/dist/claims/locator.js.map +1 -0
- package/dist/{coordination/claimMeta.d.ts → claims/meta.d.ts} +1 -1
- package/dist/claims/meta.d.ts.map +1 -0
- package/dist/{coordination/claimMeta.js → claims/meta.js} +1 -1
- package/dist/claims/meta.js.map +1 -0
- package/dist/claims/routes.d.ts +59 -0
- package/dist/claims/routes.d.ts.map +1 -0
- package/dist/claims/routes.js +69 -0
- package/dist/claims/routes.js.map +1 -0
- package/dist/claims/targetConflict.d.ts.map +1 -0
- package/dist/claims/targetConflict.js.map +1 -0
- package/dist/{coordination → claims}/trace.d.ts +2 -2
- package/dist/claims/trace.d.ts.map +1 -0
- package/dist/{coordination → claims}/trace.js +5 -5
- package/dist/claims/trace.js.map +1 -0
- package/dist/{ablo.d.ts → client/ablo.d.ts} +6 -15
- package/dist/client/ablo.d.ts.map +1 -0
- package/dist/{ablo.js → client/ablo.js} +2 -2
- package/dist/client/ablo.js.map +1 -0
- package/dist/{transactionLayer.d.ts → client/contract.d.ts} +12 -14
- package/dist/client/contract.d.ts.map +1 -0
- package/dist/{transactionLayer.js → client/contract.js} +4 -5
- package/dist/client/contract.js.map +1 -0
- package/dist/{headlessClient.d.ts → client/headless.d.ts} +4 -4
- package/dist/client/headless.d.ts.map +1 -0
- package/dist/{headlessClient.js → client/headless.js} +8 -10
- package/dist/{headlessClient.js.map → client/headless.js.map} +1 -1
- package/dist/client/index.d.ts +11 -0
- package/dist/client/index.d.ts.map +1 -0
- package/dist/client/index.js +11 -0
- package/dist/client/index.js.map +1 -0
- package/dist/{resources → client/resources}/functionalUpdate.d.ts +4 -4
- package/dist/client/resources/functionalUpdate.d.ts.map +1 -0
- package/dist/{resources → client/resources}/functionalUpdate.js +3 -3
- package/dist/client/resources/functionalUpdate.js.map +1 -0
- package/dist/{resources → client/resources}/httpResources.d.ts +92 -77
- package/dist/client/resources/httpResources.d.ts.map +1 -0
- package/dist/client/resources/httpResources.js +94 -0
- package/dist/client/resources/httpResources.js.map +1 -0
- package/dist/client/resources/modelCreate.d.ts +21 -0
- package/dist/client/resources/modelCreate.d.ts.map +1 -0
- package/dist/client/resources/modelCreate.js +49 -0
- package/dist/client/resources/modelCreate.js.map +1 -0
- package/dist/{resources → client/resources}/modelOperations.d.ts +57 -51
- package/dist/client/resources/modelOperations.d.ts.map +1 -0
- package/dist/{resources → client/resources}/modelOperations.js +1 -1
- package/dist/client/resources/modelOperations.js.map +1 -0
- package/dist/{resources → client/resources}/mutationOptions.d.ts +4 -17
- package/dist/client/resources/mutationOptions.d.ts.map +1 -0
- package/dist/client/resources/mutationOptions.js.map +1 -0
- package/dist/client/resources/where.d.ts.map +1 -0
- package/dist/{resources → client/resources}/where.js +1 -1
- package/dist/client/resources/where.js.map +1 -0
- package/dist/{resources → client/resources}/writeOptionsSchema.d.ts +16 -35
- package/dist/client/resources/writeOptionsSchema.d.ts.map +1 -0
- package/dist/{resources → client/resources}/writeOptionsSchema.js +25 -18
- package/dist/client/resources/writeOptionsSchema.js.map +1 -0
- package/dist/{transactions → commit}/confirmation/commitEnvelope.d.ts +1 -37
- package/dist/commit/confirmation/commitEnvelope.d.ts.map +1 -0
- package/dist/{transactions → commit}/confirmation/commitEnvelope.js +2 -7
- package/dist/commit/confirmation/commitEnvelope.js.map +1 -0
- package/dist/commit/confirmation/httpCommitEnvelope.d.ts.map +1 -0
- package/dist/{transactions → commit}/confirmation/httpCommitEnvelope.js +1 -1
- package/dist/commit/confirmation/httpCommitEnvelope.js.map +1 -0
- package/dist/commit/confirmation/idempotencyKey.d.ts.map +1 -0
- package/dist/commit/confirmation/idempotencyKey.js.map +1 -0
- package/dist/{transactions → commit}/confirmation/pendingWrite.d.ts +2 -33
- package/dist/commit/confirmation/pendingWrite.d.ts.map +1 -0
- package/dist/{transactions → commit}/confirmation/pendingWrite.js +1 -1
- package/dist/commit/confirmation/pendingWrite.js.map +1 -0
- package/dist/commit/contract.d.ts +1404 -0
- package/dist/commit/contract.d.ts.map +1 -0
- package/dist/{wire/commit.js → commit/contract.js} +26 -21
- package/dist/commit/contract.js.map +1 -0
- package/dist/{durableWrites.d.ts → commit/durableWrites.d.ts} +6 -6
- package/dist/commit/durableWrites.d.ts.map +1 -0
- package/dist/{durableWrites.js → commit/durableWrites.js} +5 -5
- package/dist/commit/durableWrites.js.map +1 -0
- package/dist/commit/httpRequest.d.ts +45 -0
- package/dist/commit/httpRequest.d.ts.map +1 -0
- package/dist/commit/httpRequest.js +66 -0
- package/dist/commit/httpRequest.js.map +1 -0
- package/dist/commit/index.d.ts +17 -0
- package/dist/commit/index.d.ts.map +1 -0
- package/dist/commit/index.js +17 -0
- package/dist/commit/index.js.map +1 -0
- package/dist/{readSetContext.d.ts → commit/readSetContext.d.ts} +7 -15
- package/dist/commit/readSetContext.d.ts.map +1 -0
- package/dist/{readSetContext.js → commit/readSetContext.js} +18 -28
- package/dist/commit/readSetContext.js.map +1 -0
- package/dist/{commitRecordRuntime.d.ts → commit/recordRuntime.d.ts} +3 -5
- package/dist/commit/recordRuntime.d.ts.map +1 -0
- package/dist/{commitRecordRuntime.js → commit/recordRuntime.js} +13 -54
- package/dist/commit/recordRuntime.js.map +1 -0
- package/dist/coordination/index.d.ts +6 -8
- package/dist/coordination/index.d.ts.map +1 -1
- package/dist/coordination/index.js +3 -9
- package/dist/coordination/index.js.map +1 -1
- package/dist/coordination/schema.d.ts +11 -466
- package/dist/coordination/schema.d.ts.map +1 -1
- package/dist/coordination/schema.js +13 -265
- package/dist/coordination/schema.js.map +1 -1
- package/dist/errorCodes.d.ts +16 -9
- package/dist/errorCodes.d.ts.map +1 -1
- package/dist/errorCodes.js +14 -6
- package/dist/errorCodes.js.map +1 -1
- package/dist/errorObservation.d.ts +2 -2
- package/dist/errors.d.ts +3 -2
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +27 -11
- package/dist/errors.js.map +1 -1
- package/dist/index.d.ts +7 -7
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/internal/read-set.d.ts +3 -3
- package/dist/internal/read-set.d.ts.map +1 -1
- package/dist/internal/read-set.js +2 -2
- package/dist/internal/read-set.js.map +1 -1
- package/dist/observability.d.ts +4 -4
- package/dist/observability.d.ts.map +1 -1
- package/dist/observability.js +2 -2
- package/dist/{wire/delta.d.ts → observation/contract.d.ts} +8 -8
- package/dist/observation/contract.d.ts.map +1 -0
- package/dist/{wire/delta.js → observation/contract.js} +3 -3
- package/dist/observation/contract.js.map +1 -0
- package/dist/{wire/feedCursor.d.ts → observation/cursor.d.ts} +1 -1
- package/dist/observation/cursor.d.ts.map +1 -0
- package/dist/{wire/feedCursor.js → observation/cursor.js} +1 -1
- package/dist/observation/cursor.js.map +1 -0
- package/dist/{wire/deltaDelivery.d.ts → observation/deliveryContract.d.ts} +1 -1
- package/dist/observation/deliveryContract.d.ts.map +1 -0
- package/dist/{wire/deltaDelivery.js → observation/deliveryContract.js} +1 -1
- package/dist/observation/deliveryContract.js.map +1 -0
- package/dist/{wire/feedEvent.d.ts → observation/feedContract.d.ts} +10 -10
- package/dist/observation/feedContract.d.ts.map +1 -0
- package/dist/{wire/feedEvent.js → observation/feedContract.js} +4 -4
- package/dist/observation/feedContract.js.map +1 -0
- package/dist/observation/httpFeed.d.ts +4 -0
- package/dist/observation/httpFeed.d.ts.map +1 -0
- package/dist/{transport → observation}/httpFeed.js +1 -1
- package/dist/{transport → observation}/httpFeed.js.map +1 -1
- package/dist/observation/index.d.ts +13 -0
- package/dist/observation/index.d.ts.map +1 -0
- package/dist/observation/index.js +13 -0
- package/dist/observation/index.js.map +1 -0
- package/dist/{log → observation/persistence}/syncDeltaRow.d.ts +8 -8
- package/dist/observation/persistence/syncDeltaRow.d.ts.map +1 -0
- package/dist/{log → observation/persistence}/syncDeltaRow.js +4 -4
- package/dist/observation/persistence/syncDeltaRow.js.map +1 -0
- package/dist/pricing.d.ts +20 -12
- package/dist/pricing.d.ts.map +1 -1
- package/dist/pricing.js +46 -26
- package/dist/pricing.js.map +1 -1
- package/dist/schema/audit.d.ts +15 -0
- package/dist/schema/audit.d.ts.map +1 -0
- package/dist/schema/audit.js +90 -0
- package/dist/schema/audit.js.map +1 -0
- package/dist/schema/ddl.d.ts.map +1 -1
- package/dist/schema/ddl.js +68 -1
- package/dist/schema/ddl.js.map +1 -1
- package/dist/schema/index.d.ts +7 -6
- package/dist/schema/index.d.ts.map +1 -1
- package/dist/schema/index.js +6 -7
- package/dist/schema/index.js.map +1 -1
- package/dist/schema/model.d.ts +14 -27
- package/dist/schema/model.d.ts.map +1 -1
- package/dist/schema/model.js +2 -2
- package/dist/schema/model.js.map +1 -1
- package/dist/schema/openapi.d.ts.map +1 -1
- package/dist/schema/openapi.js +149 -8
- package/dist/schema/openapi.js.map +1 -1
- package/dist/schema/roles.d.ts +27 -0
- package/dist/schema/roles.d.ts.map +1 -1
- package/dist/schema/roles.js +40 -0
- package/dist/schema/roles.js.map +1 -1
- package/dist/schema/schema.d.ts +34 -7
- package/dist/schema/schema.d.ts.map +1 -1
- package/dist/schema/schema.js +39 -3
- package/dist/schema/schema.js.map +1 -1
- package/dist/schema/serialize.d.ts +5 -5
- package/dist/schema/serialize.d.ts.map +1 -1
- package/dist/schema/serialize.js +5 -5
- package/dist/schema/serialize.js.map +1 -1
- package/dist/schema/subject.d.ts +18 -0
- package/dist/schema/subject.d.ts.map +1 -0
- package/dist/schema/subject.js +27 -0
- package/dist/schema/subject.js.map +1 -0
- package/dist/schema/tenancy.d.ts +1 -1
- package/dist/server/adapter.d.ts +3 -1
- package/dist/server/adapter.d.ts.map +1 -1
- package/dist/server/commit.d.ts +6 -14
- package/dist/server/commit.d.ts.map +1 -1
- package/dist/server/index.d.ts +1 -1
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js +1 -1
- package/dist/server/index.js.map +1 -1
- package/dist/server/readConfig.d.ts +3 -0
- package/dist/server/readConfig.d.ts.map +1 -1
- package/dist/server/readConfig.js +0 -21
- package/dist/server/readConfig.js.map +1 -1
- package/dist/server/storageMode.d.ts +1 -1
- package/dist/source/{adapter.d.ts → adapters/adapter.d.ts} +10 -4
- package/dist/source/adapters/adapter.d.ts.map +1 -0
- package/dist/source/adapters/adapter.js.map +1 -0
- package/dist/source/adapters/adapterFactory.d.ts.map +1 -0
- package/dist/source/{adapterFactory.js → adapters/adapterFactory.js} +1 -1
- package/dist/source/adapters/adapterFactory.js.map +1 -0
- package/dist/source/adapters/adapterProfile.d.ts.map +1 -0
- package/dist/source/adapters/adapterProfile.js.map +1 -0
- package/dist/source/{conformance.d.ts → adapters/conformance.d.ts} +1 -1
- package/dist/source/adapters/conformance.d.ts.map +1 -0
- package/dist/source/{conformance.js → adapters/conformance.js} +1 -1
- package/dist/source/adapters/conformance.js.map +1 -0
- package/dist/source/{contract.d.ts → adapters/contract.d.ts} +20 -75
- package/dist/source/adapters/contract.d.ts.map +1 -0
- package/dist/source/{contract.js → adapters/contract.js} +20 -55
- package/dist/source/adapters/contract.js.map +1 -0
- package/dist/source/adapters/drizzle.d.ts +1 -1
- package/dist/source/adapters/drizzle.d.ts.map +1 -1
- package/dist/source/adapters/drizzle.js +54 -25
- package/dist/source/adapters/drizzle.js.map +1 -1
- package/dist/source/adapters/idempotency.d.ts.map +1 -0
- package/dist/source/{idempotency.js → adapters/idempotency.js} +2 -2
- package/dist/source/adapters/idempotency.js.map +1 -0
- package/dist/source/adapters/index.d.ts +21 -0
- package/dist/source/adapters/index.d.ts.map +1 -0
- package/dist/source/adapters/index.js +21 -0
- package/dist/source/adapters/index.js.map +1 -0
- package/dist/source/adapters/kysely.d.ts +3 -1
- package/dist/source/adapters/kysely.d.ts.map +1 -1
- package/dist/source/adapters/kysely.js +49 -23
- package/dist/source/adapters/kysely.js.map +1 -1
- package/dist/source/adapters/kyselyMutationCore.d.ts +6 -3
- package/dist/source/adapters/kyselyMutationCore.d.ts.map +1 -1
- package/dist/source/adapters/kyselyMutationCore.js +17 -8
- package/dist/source/adapters/kyselyMutationCore.js.map +1 -1
- package/dist/source/adapters/memory.d.ts +3 -3
- package/dist/source/adapters/memory.d.ts.map +1 -1
- package/dist/source/adapters/memory.js +20 -7
- package/dist/source/adapters/memory.js.map +1 -1
- package/dist/source/adapters/migration.d.ts +8 -0
- package/dist/source/adapters/migration.d.ts.map +1 -0
- package/dist/source/adapters/migration.js +9 -0
- package/dist/source/adapters/migration.js.map +1 -0
- package/dist/source/{migrations.d.ts → adapters/migrations.d.ts} +3 -4
- package/dist/source/adapters/migrations.d.ts.map +1 -0
- package/dist/source/{migrations.js → adapters/migrations.js} +4 -31
- package/dist/source/adapters/migrations.js.map +1 -0
- package/dist/source/adapters/prisma.d.ts +1 -1
- package/dist/source/adapters/prisma.d.ts.map +1 -1
- package/dist/source/adapters/prisma.js +75 -30
- package/dist/source/adapters/prisma.js.map +1 -1
- package/dist/source/adapters/subjectAuthorization.d.ts +16 -0
- package/dist/source/adapters/subjectAuthorization.d.ts.map +1 -0
- package/dist/source/adapters/subjectAuthorization.js +126 -0
- package/dist/source/adapters/subjectAuthorization.js.map +1 -0
- package/dist/source/{connector.d.ts → connector/client.d.ts} +6 -1
- package/dist/source/connector/client.d.ts.map +1 -0
- package/dist/source/{connector.js → connector/client.js} +28 -11
- package/dist/source/connector/client.js.map +1 -0
- package/dist/source/connector/index.d.ts +4 -0
- package/dist/source/connector/index.d.ts.map +1 -0
- package/dist/source/connector/index.js +4 -0
- package/dist/source/connector/index.js.map +1 -0
- package/dist/source/{connectorProtocol.d.ts → connector/protocol.d.ts} +8 -1
- package/dist/source/connector/protocol.d.ts.map +1 -0
- package/dist/source/{connectorProtocol.js → connector/protocol.js} +10 -3
- package/dist/source/connector/protocol.js.map +1 -0
- package/dist/source/delivery/index.d.ts +3 -0
- package/dist/source/delivery/index.d.ts.map +1 -0
- package/dist/source/delivery/index.js +3 -0
- package/dist/source/delivery/index.js.map +1 -0
- package/dist/source/{pushQueue.d.ts → delivery/pushQueue.d.ts} +1 -1
- package/dist/source/delivery/pushQueue.d.ts.map +1 -0
- package/dist/source/{pushQueue.js → delivery/pushQueue.js} +1 -1
- package/dist/source/delivery/pushQueue.js.map +1 -0
- package/dist/source/{factory.d.ts → endpoint/factory.d.ts} +9 -3
- package/dist/source/endpoint/factory.d.ts.map +1 -0
- package/dist/source/{factory.js → endpoint/factory.js} +122 -6
- package/dist/source/endpoint/factory.js.map +1 -0
- package/dist/source/endpoint/index.d.ts +5 -0
- package/dist/source/endpoint/index.d.ts.map +1 -0
- package/dist/source/endpoint/index.js +5 -0
- package/dist/source/endpoint/index.js.map +1 -0
- package/dist/source/{next.d.ts → endpoint/next.d.ts} +2 -2
- package/dist/source/endpoint/next.d.ts.map +1 -0
- package/dist/source/{next.js → endpoint/next.js} +1 -1
- package/dist/source/endpoint/next.js.map +1 -0
- package/dist/source/{signing.d.ts → endpoint/signing.d.ts} +1 -1
- package/dist/source/endpoint/signing.d.ts.map +1 -0
- package/dist/source/{signing.js → endpoint/signing.js} +1 -1
- package/dist/source/endpoint/signing.js.map +1 -0
- package/dist/source/index.d.ts +15 -12
- package/dist/source/index.d.ts.map +1 -1
- package/dist/source/index.js +13 -10
- package/dist/source/index.js.map +1 -1
- package/dist/source/outbox/contract.d.ts +50 -0
- package/dist/source/outbox/contract.d.ts.map +1 -0
- package/dist/source/outbox/contract.js +50 -0
- package/dist/source/outbox/contract.js.map +1 -0
- package/dist/source/outbox/envelope.d.ts +9 -0
- package/dist/source/outbox/envelope.d.ts.map +1 -0
- package/dist/source/outbox/envelope.js +36 -0
- package/dist/source/outbox/envelope.js.map +1 -0
- package/dist/source/outbox/index.d.ts +11 -0
- package/dist/source/outbox/index.d.ts.map +1 -0
- package/dist/source/outbox/index.js +11 -0
- package/dist/source/outbox/index.js.map +1 -0
- package/dist/source/outbox/migrations.d.ts +4 -0
- package/dist/source/outbox/migrations.d.ts.map +1 -0
- package/dist/source/outbox/migrations.js +67 -0
- package/dist/source/outbox/migrations.js.map +1 -0
- package/dist/source/outbox/retention.d.ts +3 -0
- package/dist/source/outbox/retention.d.ts.map +1 -0
- package/dist/source/outbox/retention.js +3 -0
- package/dist/source/outbox/retention.js.map +1 -0
- package/dist/source/types.d.ts +59 -10
- package/dist/source/types.d.ts.map +1 -1
- package/dist/source/types.js +2 -0
- package/dist/source/types.js.map +1 -1
- package/dist/syncLog/contract.d.ts +19 -8
- package/dist/syncLog/contract.d.ts.map +1 -1
- package/dist/syncLog/contract.js +19 -6
- package/dist/syncLog/contract.js.map +1 -1
- package/dist/testing/fixtures/httpResponses.d.ts +6 -0
- package/dist/testing/fixtures/httpResponses.d.ts.map +1 -1
- package/dist/testing/fixtures/httpResponses.js +1 -0
- package/dist/testing/fixtures/httpResponses.js.map +1 -1
- package/dist/transport/{credentialLifecycle.d.ts → connection/credentialLifecycle.d.ts} +3 -3
- package/dist/transport/connection/credentialLifecycle.d.ts.map +1 -0
- package/dist/transport/{credentialLifecycle.js → connection/credentialLifecycle.js} +2 -2
- package/dist/transport/connection/credentialLifecycle.js.map +1 -0
- package/dist/transport/connection/index.d.ts +5 -0
- package/dist/transport/connection/index.d.ts.map +1 -0
- package/dist/transport/connection/index.js +5 -0
- package/dist/transport/connection/index.js.map +1 -0
- package/dist/transport/{connectionManager.d.ts → connection/manager.d.ts} +13 -5
- package/dist/transport/connection/manager.d.ts.map +1 -0
- package/dist/transport/{connectionManager.js → connection/manager.js} +6 -4
- package/dist/transport/connection/manager.js.map +1 -0
- package/dist/transport/{networkProbe.d.ts → connection/networkProbe.d.ts} +2 -2
- package/dist/transport/connection/networkProbe.d.ts.map +1 -0
- package/dist/transport/{networkProbe.js → connection/networkProbe.js} +4 -4
- package/dist/transport/connection/networkProbe.js.map +1 -0
- package/dist/transport/{httpClient.d.ts → http/client.d.ts} +32 -44
- package/dist/transport/http/client.d.ts.map +1 -0
- package/dist/transport/{httpClient.js → http/client.js} +96 -105
- package/dist/transport/http/client.js.map +1 -0
- package/dist/transport/http/helpers.d.ts +10 -0
- package/dist/transport/http/helpers.d.ts.map +1 -0
- package/dist/transport/http/helpers.js +46 -0
- package/dist/transport/http/helpers.js.map +1 -0
- package/dist/transport/http/index.d.ts +6 -0
- package/dist/transport/http/index.d.ts.map +1 -0
- package/dist/transport/http/index.js +6 -0
- package/dist/transport/http/index.js.map +1 -0
- package/dist/transport/{httpOptions.d.ts → http/options.d.ts} +7 -7
- package/dist/transport/{httpOptions.d.ts.map → http/options.d.ts.map} +1 -1
- package/dist/transport/{httpOptions.js → http/options.js} +1 -1
- package/dist/transport/http/options.js.map +1 -0
- package/dist/transport/http/subscription.d.ts +16 -0
- package/dist/transport/http/subscription.d.ts.map +1 -0
- package/dist/transport/http/subscription.js +146 -0
- package/dist/transport/http/subscription.js.map +1 -0
- package/dist/transport/{httpTransport.d.ts → http/transport.d.ts} +9 -6
- package/dist/transport/http/transport.d.ts.map +1 -0
- package/dist/transport/{httpTransport.js → http/transport.js} +153 -188
- package/dist/transport/http/transport.js.map +1 -0
- package/dist/transport/index.d.ts +8 -0
- package/dist/transport/index.d.ts.map +1 -0
- package/dist/transport/index.js +8 -0
- package/dist/transport/index.js.map +1 -0
- package/dist/transport/{commitFrames.d.ts → websocket/commitFrames.d.ts} +8 -20
- package/dist/transport/websocket/commitFrames.d.ts.map +1 -0
- package/dist/transport/{commitFrames.js → websocket/commitFrames.js} +6 -25
- package/dist/transport/websocket/commitFrames.js.map +1 -0
- package/dist/transport/{wsFrameHandlers.d.ts → websocket/frameHandlers.d.ts} +5 -5
- package/dist/transport/websocket/frameHandlers.d.ts.map +1 -0
- package/dist/transport/{wsFrameHandlers.js → websocket/frameHandlers.js} +10 -51
- package/dist/transport/websocket/frameHandlers.js.map +1 -0
- package/dist/transport/{heartbeat.d.ts → websocket/heartbeat.d.ts} +1 -1
- package/dist/transport/websocket/heartbeat.d.ts.map +1 -0
- package/dist/transport/{heartbeat.js → websocket/heartbeat.js} +2 -2
- package/dist/transport/websocket/heartbeat.js.map +1 -0
- package/dist/transport/websocket/index.d.ts +6 -0
- package/dist/transport/websocket/index.d.ts.map +1 -0
- package/dist/transport/websocket/index.js +6 -0
- package/dist/transport/websocket/index.js.map +1 -0
- package/dist/transport/{wsTransport.d.ts → websocket/transport.d.ts} +13 -25
- package/dist/transport/websocket/transport.d.ts.map +1 -0
- package/dist/transport/{wsTransport.js → websocket/transport.js} +14 -14
- package/dist/transport/websocket/transport.js.map +1 -0
- package/dist/types/index.d.ts +1 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/streams.d.ts +8 -48
- package/dist/types/streams.d.ts.map +1 -1
- package/dist/types/streams.js +2 -2
- package/dist/wire/accountResponses.d.ts +4 -72
- package/dist/wire/accountResponses.d.ts.map +1 -1
- package/dist/wire/accountResponses.js +2 -10
- package/dist/wire/accountResponses.js.map +1 -1
- package/dist/wire/apiLifecycle.d.ts +63 -0
- package/dist/wire/apiLifecycle.d.ts.map +1 -0
- package/dist/wire/apiLifecycle.js +89 -0
- package/dist/wire/apiLifecycle.js.map +1 -0
- package/dist/wire/frames.d.ts +6 -83
- package/dist/wire/frames.d.ts.map +1 -1
- package/dist/wire/frames.js +4 -11
- package/dist/wire/frames.js.map +1 -1
- package/dist/wire/inboundFrames.d.ts +6 -131
- package/dist/wire/inboundFrames.d.ts.map +1 -1
- package/dist/wire/inboundFrames.js +3 -3
- package/dist/wire/inboundFrames.js.map +1 -1
- package/dist/wire/index.d.ts +20 -15
- package/dist/wire/index.d.ts.map +1 -1
- package/dist/wire/index.js +22 -8
- package/dist/wire/index.js.map +1 -1
- package/dist/wire/modelMutations.d.ts +1 -32
- package/dist/wire/modelMutations.d.ts.map +1 -1
- package/dist/wire/modelMutations.js +1 -8
- package/dist/wire/modelMutations.js.map +1 -1
- package/dist/wire/rateLimit.d.ts +82 -0
- package/dist/wire/rateLimit.d.ts.map +1 -0
- package/dist/wire/rateLimit.js +142 -0
- package/dist/wire/rateLimit.js.map +1 -0
- package/package.json +130 -10
- package/src/ai-sdk/modelTools.ts +5 -5
- package/src/ai-sdk/updateTool.ts +5 -7
- package/src/auth/capability.ts +5 -0
- package/src/auth/capabilityLifecycle.ts +1 -1
- package/src/auth/credentialPolicy.ts +1 -1
- package/src/auth/identity.ts +7 -7
- package/src/auth/index.ts +4 -663
- package/src/auth/runtime.ts +669 -0
- package/src/auth/sessionMint.ts +3 -2
- package/src/branches.ts +3 -0
- package/src/{coordination/awaitClaimGrant.ts → claims/awaitGrant.ts} +4 -4
- package/src/{wire/claims.ts → claims/contract.ts} +1 -1
- package/src/{coordination → claims}/events.ts +7 -11
- package/src/claims/index.ts +21 -0
- package/src/claims/lifetime.ts +78 -0
- package/src/{coordination → claims}/locator.ts +3 -3
- package/src/claims/routes.ts +81 -0
- package/src/{coordination → claims}/trace.ts +5 -5
- package/src/{ablo.ts → client/ablo.ts} +8 -20
- package/src/{transactionLayer.ts → client/contract.ts} +11 -13
- package/src/{headlessClient.ts → client/headless.ts} +13 -15
- package/src/client/index.ts +10 -0
- package/src/{resources → client/resources}/functionalUpdate.ts +4 -4
- package/src/{resources → client/resources}/httpResources.ts +163 -92
- package/src/client/resources/modelCreate.ts +73 -0
- package/src/{resources → client/resources}/modelOperations.ts +73 -55
- package/src/{resources → client/resources}/mutationOptions.ts +4 -17
- package/src/{resources → client/resources}/where.ts +1 -1
- package/src/{resources → client/resources}/writeOptionsSchema.ts +35 -27
- package/src/{transactions → commit}/confirmation/commitEnvelope.ts +2 -12
- package/src/{transactions → commit}/confirmation/httpCommitEnvelope.ts +1 -1
- package/src/{transactions → commit}/confirmation/pendingWrite.ts +1 -1
- package/src/{wire/commit.ts → commit/contract.ts} +27 -26
- package/src/{durableWrites.ts → commit/durableWrites.ts} +7 -7
- package/src/commit/httpRequest.ts +103 -0
- package/src/commit/index.ts +16 -0
- package/src/{readSetContext.ts → commit/readSetContext.ts} +24 -43
- package/src/{commitRecordRuntime.ts → commit/recordRuntime.ts} +12 -67
- package/src/coordination/index.ts +4 -54
- package/src/coordination/schema.ts +15 -309
- package/src/errorCodes.ts +62 -10
- package/src/errors.ts +32 -10
- package/src/index.ts +8 -8
- package/src/internal/read-set.ts +3 -6
- package/src/observability.ts +4 -4
- package/src/{wire/delta.ts → observation/contract.ts} +2 -2
- package/src/{wire/feedEvent.ts → observation/feedContract.ts} +3 -4
- package/src/{transport → observation}/httpFeed.ts +3 -3
- package/src/observation/index.ts +12 -0
- package/src/{log → observation/persistence}/syncDeltaRow.ts +6 -7
- package/src/pricing.ts +46 -25
- package/src/schema/audit.ts +121 -0
- package/src/schema/ddl.ts +71 -1
- package/src/schema/index.ts +20 -20
- package/src/schema/model.ts +17 -33
- package/src/schema/openapi.ts +170 -9
- package/src/schema/roles.ts +53 -0
- package/src/schema/schema.ts +91 -6
- package/src/schema/serialize.ts +8 -9
- package/src/schema/subject.ts +43 -0
- package/src/server/adapter.ts +3 -1
- package/src/server/commit.ts +6 -14
- package/src/server/index.ts +1 -1
- package/src/server/readConfig.ts +4 -0
- package/src/source/{adapter.ts → adapters/adapter.ts} +9 -5
- package/src/source/{adapterFactory.ts → adapters/adapterFactory.ts} +1 -1
- package/src/source/{conformance.ts → adapters/conformance.ts} +1 -1
- package/src/source/{contract.ts → adapters/contract.ts} +24 -61
- package/src/source/adapters/drizzle.ts +75 -29
- package/src/source/{idempotency.ts → adapters/idempotency.ts} +2 -2
- package/src/source/adapters/index.ts +20 -0
- package/src/source/adapters/kysely.ts +77 -27
- package/src/source/adapters/kyselyMutationCore.ts +23 -11
- package/src/source/adapters/memory.ts +26 -9
- package/src/source/adapters/migration.ts +11 -0
- package/src/source/{migrations.ts → adapters/migrations.ts} +6 -33
- package/src/source/adapters/prisma.ts +98 -34
- package/src/source/adapters/subjectAuthorization.ts +182 -0
- package/src/source/{connector.ts → connector/client.ts} +35 -12
- package/src/source/connector/index.ts +3 -0
- package/src/source/{connectorProtocol.ts → connector/protocol.ts} +10 -2
- package/src/source/delivery/index.ts +2 -0
- package/src/source/{pushQueue.ts → delivery/pushQueue.ts} +2 -2
- package/src/source/{factory.ts → endpoint/factory.ts} +150 -9
- package/src/source/endpoint/index.ts +4 -0
- package/src/source/{next.ts → endpoint/next.ts} +2 -2
- package/src/source/{signing.ts → endpoint/signing.ts} +1 -1
- package/src/source/index.ts +27 -18
- package/src/source/outbox/contract.ts +56 -0
- package/src/source/outbox/envelope.ts +47 -0
- package/src/source/outbox/index.ts +15 -0
- package/src/source/outbox/migrations.ts +71 -0
- package/src/source/outbox/retention.ts +2 -0
- package/src/source/types.ts +64 -10
- package/src/syncLog/contract.ts +19 -9
- package/src/testing/fixtures/httpResponses.ts +7 -0
- package/src/transport/{credentialLifecycle.ts → connection/credentialLifecycle.ts} +3 -3
- package/src/transport/connection/index.ts +4 -0
- package/src/transport/{connectionManager.ts → connection/manager.ts} +13 -4
- package/src/transport/{networkProbe.ts → connection/networkProbe.ts} +4 -4
- package/src/transport/{httpClient.ts → http/client.ts} +165 -184
- package/src/transport/http/helpers.ts +63 -0
- package/src/transport/http/index.ts +5 -0
- package/src/transport/{httpOptions.ts → http/options.ts} +6 -6
- package/src/transport/http/subscription.ts +174 -0
- package/src/transport/{httpTransport.ts → http/transport.ts} +210 -246
- package/src/transport/index.ts +7 -0
- package/src/transport/{commitFrames.ts → websocket/commitFrames.ts} +14 -46
- package/src/transport/{wsFrameHandlers.ts → websocket/frameHandlers.ts} +11 -54
- package/src/transport/{heartbeat.ts → websocket/heartbeat.ts} +2 -2
- package/src/transport/websocket/index.ts +5 -0
- package/src/transport/{wsTransport.ts → websocket/transport.ts} +16 -30
- package/src/types/index.ts +2 -6
- package/src/types/streams.ts +7 -61
- package/src/webhooks/events.ts +1 -1
- package/src/wire/accountResponses.ts +3 -12
- package/src/wire/apiLifecycle.ts +94 -0
- package/src/wire/frames.ts +5 -15
- package/src/wire/inboundFrames.ts +3 -3
- package/src/wire/index.ts +50 -15
- package/src/wire/modelMutations.ts +1 -14
- package/src/wire/rateLimit.ts +155 -0
- package/dist/ablo.d.ts.map +0 -1
- package/dist/ablo.js.map +0 -1
- package/dist/commitRecordRuntime.d.ts.map +0 -1
- package/dist/commitRecordRuntime.js.map +0 -1
- package/dist/coordination/awaitClaimGrant.d.ts.map +0 -1
- package/dist/coordination/awaitClaimGrant.js.map +0 -1
- package/dist/coordination/claimHeartbeatLoop.d.ts.map +0 -1
- package/dist/coordination/claimHeartbeatLoop.js.map +0 -1
- package/dist/coordination/claimMeta.d.ts.map +0 -1
- package/dist/coordination/claimMeta.js.map +0 -1
- package/dist/coordination/events.d.ts.map +0 -1
- package/dist/coordination/events.js +0 -8
- package/dist/coordination/events.js.map +0 -1
- package/dist/coordination/locator.d.ts.map +0 -1
- package/dist/coordination/locator.js.map +0 -1
- package/dist/coordination/targetConflict.d.ts.map +0 -1
- package/dist/coordination/targetConflict.js.map +0 -1
- package/dist/coordination/trace.d.ts.map +0 -1
- package/dist/coordination/trace.js.map +0 -1
- package/dist/durableWrites.d.ts.map +0 -1
- package/dist/durableWrites.js.map +0 -1
- package/dist/headlessClient.d.ts.map +0 -1
- package/dist/log/syncDeltaRow.d.ts.map +0 -1
- package/dist/log/syncDeltaRow.js.map +0 -1
- package/dist/policy/types.d.ts +0 -226
- package/dist/policy/types.d.ts.map +0 -1
- package/dist/policy/types.js +0 -127
- package/dist/policy/types.js.map +0 -1
- package/dist/readSetContext.d.ts.map +0 -1
- package/dist/readSetContext.js.map +0 -1
- package/dist/resources/functionalUpdate.d.ts.map +0 -1
- package/dist/resources/functionalUpdate.js.map +0 -1
- package/dist/resources/httpResources.d.ts.map +0 -1
- package/dist/resources/httpResources.js +0 -17
- package/dist/resources/httpResources.js.map +0 -1
- package/dist/resources/modelOperations.d.ts.map +0 -1
- package/dist/resources/modelOperations.js.map +0 -1
- package/dist/resources/mutationOptions.d.ts.map +0 -1
- package/dist/resources/mutationOptions.js.map +0 -1
- package/dist/resources/where.d.ts.map +0 -1
- package/dist/resources/where.js.map +0 -1
- package/dist/resources/writeOptionsSchema.d.ts.map +0 -1
- package/dist/resources/writeOptionsSchema.js.map +0 -1
- package/dist/schema/coordination.d.ts +0 -113
- package/dist/schema/coordination.d.ts.map +0 -1
- package/dist/schema/coordination.js +0 -134
- package/dist/schema/coordination.js.map +0 -1
- package/dist/source/adapter.d.ts.map +0 -1
- package/dist/source/adapter.js.map +0 -1
- package/dist/source/adapterFactory.d.ts.map +0 -1
- package/dist/source/adapterFactory.js.map +0 -1
- package/dist/source/adapterProfile.d.ts.map +0 -1
- package/dist/source/adapterProfile.js.map +0 -1
- package/dist/source/conformance.d.ts.map +0 -1
- package/dist/source/conformance.js.map +0 -1
- package/dist/source/connector.d.ts.map +0 -1
- package/dist/source/connector.js.map +0 -1
- package/dist/source/connectorProtocol.d.ts.map +0 -1
- package/dist/source/connectorProtocol.js.map +0 -1
- package/dist/source/contract.d.ts.map +0 -1
- package/dist/source/contract.js.map +0 -1
- package/dist/source/drizzle.d.ts +0 -2
- package/dist/source/drizzle.d.ts.map +0 -1
- package/dist/source/drizzle.js +0 -2
- package/dist/source/drizzle.js.map +0 -1
- package/dist/source/factory.d.ts.map +0 -1
- package/dist/source/factory.js.map +0 -1
- package/dist/source/idempotency.d.ts.map +0 -1
- package/dist/source/idempotency.js.map +0 -1
- package/dist/source/kysely.d.ts +0 -3
- package/dist/source/kysely.d.ts.map +0 -1
- package/dist/source/kysely.js +0 -3
- package/dist/source/kysely.js.map +0 -1
- package/dist/source/migrations.d.ts.map +0 -1
- package/dist/source/migrations.js.map +0 -1
- package/dist/source/next.d.ts.map +0 -1
- package/dist/source/next.js.map +0 -1
- package/dist/source/pushQueue.d.ts.map +0 -1
- package/dist/source/pushQueue.js.map +0 -1
- package/dist/source/signing.d.ts.map +0 -1
- package/dist/source/signing.js.map +0 -1
- package/dist/transactionLayer.d.ts.map +0 -1
- package/dist/transactionLayer.js.map +0 -1
- package/dist/transactions/confirmation/commitEnvelope.d.ts.map +0 -1
- package/dist/transactions/confirmation/commitEnvelope.js.map +0 -1
- package/dist/transactions/confirmation/httpCommitEnvelope.d.ts.map +0 -1
- package/dist/transactions/confirmation/httpCommitEnvelope.js.map +0 -1
- package/dist/transactions/confirmation/idempotencyKey.d.ts.map +0 -1
- package/dist/transactions/confirmation/idempotencyKey.js.map +0 -1
- package/dist/transactions/confirmation/pendingWrite.d.ts.map +0 -1
- package/dist/transactions/confirmation/pendingWrite.js.map +0 -1
- package/dist/transport/commitFrames.d.ts.map +0 -1
- package/dist/transport/commitFrames.js.map +0 -1
- package/dist/transport/connectionManager.d.ts.map +0 -1
- package/dist/transport/connectionManager.js.map +0 -1
- package/dist/transport/credentialLifecycle.d.ts.map +0 -1
- package/dist/transport/credentialLifecycle.js.map +0 -1
- package/dist/transport/heartbeat.d.ts.map +0 -1
- package/dist/transport/heartbeat.js.map +0 -1
- package/dist/transport/httpClient.d.ts.map +0 -1
- package/dist/transport/httpClient.js.map +0 -1
- package/dist/transport/httpFeed.d.ts +0 -4
- package/dist/transport/httpFeed.d.ts.map +0 -1
- package/dist/transport/httpOptions.js.map +0 -1
- package/dist/transport/httpTransport.d.ts.map +0 -1
- package/dist/transport/httpTransport.js.map +0 -1
- package/dist/transport/networkProbe.d.ts.map +0 -1
- package/dist/transport/networkProbe.js.map +0 -1
- package/dist/transport/wsFrameHandlers.d.ts.map +0 -1
- package/dist/transport/wsFrameHandlers.js.map +0 -1
- package/dist/transport/wsTransport.d.ts.map +0 -1
- package/dist/transport/wsTransport.js.map +0 -1
- package/dist/wire/claimEvent.d.ts.map +0 -1
- package/dist/wire/claimEvent.js.map +0 -1
- package/dist/wire/claims.d.ts.map +0 -1
- package/dist/wire/claims.js.map +0 -1
- package/dist/wire/commit.d.ts +0 -2801
- package/dist/wire/commit.d.ts.map +0 -1
- package/dist/wire/commit.js.map +0 -1
- package/dist/wire/delta.d.ts.map +0 -1
- package/dist/wire/delta.js.map +0 -1
- package/dist/wire/deltaDelivery.d.ts.map +0 -1
- package/dist/wire/deltaDelivery.js.map +0 -1
- package/dist/wire/feedCursor.d.ts.map +0 -1
- package/dist/wire/feedCursor.js.map +0 -1
- package/dist/wire/feedEvent.d.ts.map +0 -1
- package/dist/wire/feedEvent.js.map +0 -1
- package/src/policy/types.ts +0 -300
- package/src/schema/coordination.ts +0 -161
- package/src/source/drizzle.ts +0 -1
- package/src/source/kysely.ts +0 -2
- /package/dist/{coordination → claims}/targetConflict.d.ts +0 -0
- /package/dist/{coordination → claims}/targetConflict.js +0 -0
- /package/dist/{resources → client/resources}/mutationOptions.js +0 -0
- /package/dist/{resources → client/resources}/where.d.ts +0 -0
- /package/dist/{transactions → commit}/confirmation/httpCommitEnvelope.d.ts +0 -0
- /package/dist/{transactions → commit}/confirmation/idempotencyKey.d.ts +0 -0
- /package/dist/{transactions → commit}/confirmation/idempotencyKey.js +0 -0
- /package/dist/source/{adapter.js → adapters/adapter.js} +0 -0
- /package/dist/source/{adapterFactory.d.ts → adapters/adapterFactory.d.ts} +0 -0
- /package/dist/source/{adapterProfile.d.ts → adapters/adapterProfile.d.ts} +0 -0
- /package/dist/source/{adapterProfile.js → adapters/adapterProfile.js} +0 -0
- /package/dist/source/{idempotency.d.ts → adapters/idempotency.d.ts} +0 -0
- /package/src/{wire/claimEvent.ts → claims/eventContract.ts} +0 -0
- /package/src/{coordination/claimHeartbeatLoop.ts → claims/heartbeat.ts} +0 -0
- /package/src/{coordination/claimMeta.ts → claims/meta.ts} +0 -0
- /package/src/{coordination → claims}/targetConflict.ts +0 -0
- /package/src/{transactions → commit}/confirmation/idempotencyKey.ts +0 -0
- /package/src/{wire/feedCursor.ts → observation/cursor.ts} +0 -0
- /package/src/{wire/deltaDelivery.ts → observation/deliveryContract.ts} +0 -0
- /package/src/source/{adapterProfile.ts → adapters/adapterProfile.ts} +0 -0
|
@@ -17,12 +17,14 @@
|
|
|
17
17
|
* mutation. This gives same-key concurrency one database arbiter and one effect.
|
|
18
18
|
*/
|
|
19
19
|
import { AbloValidationError } from '../../errors.js';
|
|
20
|
-
import { defineDatabaseAdapter } from '
|
|
21
|
-
import { postgresAdapterProfile } from '
|
|
22
|
-
import { changeSetSchema,
|
|
23
|
-
import { assertSourceIdempotencyIntent, assertSourceIdempotencyRetention, sourceChangeIntentHash, SOURCE_IDEMPOTENCY_RETENTION, } from '
|
|
24
|
-
import { adapterTableMigrations, idempotencyLedgerMigrations, } from '
|
|
20
|
+
import { defineDatabaseAdapter } from './adapterFactory.js';
|
|
21
|
+
import { postgresAdapterProfile } from './adapterProfile.js';
|
|
22
|
+
import { changeSetSchema, sourceCommitEchoMarkerSchema, sourceCommitEchoIntentSchema, } from './contract.js';
|
|
23
|
+
import { assertSourceIdempotencyIntent, assertSourceIdempotencyRetention, sourceChangeIntentHash, SOURCE_IDEMPOTENCY_RETENTION, } from './idempotency.js';
|
|
24
|
+
import { adapterTableMigrations, idempotencyLedgerMigrations, } from './migrations.js';
|
|
25
25
|
import { ABLO_POSTGRES_COMMIT_ECHO_PREFIX } from '../types.js';
|
|
26
|
+
import { authorizeSourceChange, authorizeSourceRead, lockSourceSubjectCreates, rethrowStrictCreateConflict, sourceSyncGroups, } from './subjectAuthorization.js';
|
|
27
|
+
import { decodeDatabaseOutboxEvent, ENDPOINT_OUTBOX_PRUNE_BATCH_SIZE, } from '../outbox/index.js';
|
|
26
28
|
import { createKyselyMutationCore, kyselyOperationRowId, } from './kyselyMutationCore.js';
|
|
27
29
|
export { createKyselyMutationCore, kyselyOperationRowId, } from './kyselyMutationCore.js';
|
|
28
30
|
function rawQuery(queryId, sql, parameters) {
|
|
@@ -160,8 +162,9 @@ export function createKyselyMutationAdapter(db, core, mode, options = {}) {
|
|
|
160
162
|
? adapterTableMigrations()
|
|
161
163
|
: idempotencyLedgerMigrations();
|
|
162
164
|
},
|
|
163
|
-
read(request) {
|
|
164
|
-
|
|
165
|
+
async read(request) {
|
|
166
|
+
const rows = await core.read(request);
|
|
167
|
+
return options.schema ? authorizeSourceRead(options.schema, request, rows) : rows;
|
|
165
168
|
},
|
|
166
169
|
async commit(change) {
|
|
167
170
|
const request = changeSetSchema.parse(change);
|
|
@@ -187,6 +190,17 @@ export function createKyselyMutationAdapter(db, core, mode, options = {}) {
|
|
|
187
190
|
assertSourceIdempotencyRetention(cachedRow.expires_at);
|
|
188
191
|
return { rows: parseCachedRows(cachedRow.response) };
|
|
189
192
|
}
|
|
193
|
+
if (options.schema) {
|
|
194
|
+
await lockSourceSubjectCreates(options.schema, request, async (_operation, key) => {
|
|
195
|
+
await transaction.executeQuery(rawQuery('subject-create-lock', 'SELECT pg_advisory_xact_lock(hashtextextended($1, 0))', [key]));
|
|
196
|
+
});
|
|
197
|
+
await authorizeSourceChange(options.schema, request, async (operation) => {
|
|
198
|
+
if (!operation.id)
|
|
199
|
+
return null;
|
|
200
|
+
const rows = await core.read({ kind: 'load', model: operation.model, id: operation.id }, transaction, { forUpdate: true });
|
|
201
|
+
return rows[0] ?? null;
|
|
202
|
+
});
|
|
203
|
+
}
|
|
190
204
|
// Direct mode dispatches every operation before awaiting any of them, so
|
|
191
205
|
// the driver pipelines them into one trip instead of paying a full
|
|
192
206
|
// round trip per row. Postgres still executes them IN ORDER on the
|
|
@@ -200,8 +214,18 @@ export function createKyselyMutationAdapter(db, core, mode, options = {}) {
|
|
|
200
214
|
// returned row, so operation i+1's write cannot be dispatched before
|
|
201
215
|
// operation i has answered.
|
|
202
216
|
const rows = [];
|
|
217
|
+
const applyStrict = async (operation) => {
|
|
218
|
+
try {
|
|
219
|
+
return await core.applyOperation(transaction, operation);
|
|
220
|
+
}
|
|
221
|
+
catch (error) {
|
|
222
|
+
if (operation.type === 'CREATE')
|
|
223
|
+
rethrowStrictCreateConflict(error, operation);
|
|
224
|
+
throw error;
|
|
225
|
+
}
|
|
226
|
+
};
|
|
203
227
|
if (mode === 'direct') {
|
|
204
|
-
const dispatched = request.operations.map((operation) =>
|
|
228
|
+
const dispatched = request.operations.map((operation) => applyStrict(operation));
|
|
205
229
|
// Settle every dispatch before inspecting, so a later rejection is
|
|
206
230
|
// never an unhandled rejection, then surface the FIRST failure in
|
|
207
231
|
// operation order — the one the caller's request actually tripped on.
|
|
@@ -216,7 +240,7 @@ export function createKyselyMutationAdapter(db, core, mode, options = {}) {
|
|
|
216
240
|
}
|
|
217
241
|
else {
|
|
218
242
|
for (const [index, operation] of request.operations.entries()) {
|
|
219
|
-
const row = await
|
|
243
|
+
const row = await applyStrict(operation);
|
|
220
244
|
rows.push(row);
|
|
221
245
|
const entityId = String(row.id ?? kyselyOperationRowId(operation));
|
|
222
246
|
await transaction
|
|
@@ -227,6 +251,10 @@ export function createKyselyMutationAdapter(db, core, mode, options = {}) {
|
|
|
227
251
|
entity_id: entityId,
|
|
228
252
|
type: operation.type,
|
|
229
253
|
data: operation.type === 'DELETE' ? null : JSON.stringify(row),
|
|
254
|
+
event_version: 2,
|
|
255
|
+
sync_groups: options.schema
|
|
256
|
+
? sourceSyncGroups(options.schema, operation.model, row)
|
|
257
|
+
: [],
|
|
230
258
|
correlation_id: request.correlationId,
|
|
231
259
|
transaction_id: operation.transactionId ?? null,
|
|
232
260
|
occurred_at: Date.now(),
|
|
@@ -251,10 +279,19 @@ export function createKyselyMutationAdapter(db, core, mode, options = {}) {
|
|
|
251
279
|
}
|
|
252
280
|
/** Endpoint wrapper: mutation + ledger + outbox, with an optional marker. */
|
|
253
281
|
export function kyselyDataSource(db, schema) {
|
|
254
|
-
const mutation = createKyselyMutationAdapter(db, createKyselyMutationCore(db, schema), 'endpoint');
|
|
282
|
+
const mutation = createKyselyMutationAdapter(db, createKyselyMutationCore(db, schema), 'endpoint', { schema });
|
|
255
283
|
return defineDatabaseAdapter({
|
|
256
284
|
...mutation,
|
|
257
285
|
capabilities: { ...mutation.capabilities, outboxEvents: true },
|
|
286
|
+
async acknowledgeEvents(acknowledgedThrough) {
|
|
287
|
+
await db.transaction().execute(async (transaction) => {
|
|
288
|
+
await transaction.executeQuery(rawQuery('ablo-outbox-prune-acknowledged', `DELETE FROM ablo_outbox
|
|
289
|
+
WHERE cursor IN (
|
|
290
|
+
SELECT cursor FROM ablo_outbox
|
|
291
|
+
WHERE cursor <= $1 ORDER BY cursor ASC LIMIT $2
|
|
292
|
+
)`, [acknowledgedThrough, ENDPOINT_OUTBOX_PRUNE_BATCH_SIZE]));
|
|
293
|
+
});
|
|
294
|
+
},
|
|
258
295
|
async events(cursor, limit) {
|
|
259
296
|
const rows = await db
|
|
260
297
|
.selectFrom('ablo_outbox')
|
|
@@ -263,19 +300,7 @@ export function kyselyDataSource(db, schema) {
|
|
|
263
300
|
.orderBy('cursor', 'asc')
|
|
264
301
|
.limit(limit)
|
|
265
302
|
.execute();
|
|
266
|
-
const events = rows.map(
|
|
267
|
-
id: row.id,
|
|
268
|
-
model: row.model,
|
|
269
|
-
entityId: row.entity_id,
|
|
270
|
-
type: row.type,
|
|
271
|
-
data: typeof row.data === 'string' ? JSON.parse(row.data) : row.data ?? null,
|
|
272
|
-
organizationId: row.organization_id ?? null,
|
|
273
|
-
clientTxId: row.client_tx_id ?? null,
|
|
274
|
-
correlationId: row.correlation_id ?? null,
|
|
275
|
-
transactionId: row.transaction_id ?? null,
|
|
276
|
-
occurredAt: row.occurred_at != null ? Number(row.occurred_at) : null,
|
|
277
|
-
cursor: String(row.cursor),
|
|
278
|
-
}));
|
|
303
|
+
const events = rows.map(decodeDatabaseOutboxEvent);
|
|
279
304
|
return { events, nextCursor: events.at(-1)?.cursor ?? null };
|
|
280
305
|
},
|
|
281
306
|
});
|
|
@@ -294,6 +319,7 @@ export function kyselyDirectMutation(db, schema) {
|
|
|
294
319
|
markerModelFor: (operationModel) => markerModels.get(operationModel) ??
|
|
295
320
|
markerModels.get(operationModel.toLowerCase()) ??
|
|
296
321
|
operationModel,
|
|
322
|
+
schema,
|
|
297
323
|
});
|
|
298
324
|
}
|
|
299
325
|
//# sourceMappingURL=kysely.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kysely.js","sourceRoot":"","sources":["../../../src/source/adapters/kysely.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"kysely.js","sourceRoot":"","sources":["../../../src/source/adapters/kysely.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,8 +8,8 @@
|
|
|
8
8
|
* drift into separate hand-written mappers.
|
|
9
9
|
*/
|
|
10
10
|
import type { Schema, SchemaRecord } from '../../schema/schema.js';
|
|
11
|
-
import type { AdapterReadRequest, Row } from '
|
|
12
|
-
import type { Operation } from '
|
|
11
|
+
import type { AdapterReadRequest, Row } from './adapter.js';
|
|
12
|
+
import type { Operation } from './contract.js';
|
|
13
13
|
/** The subset of a Kysely instance, or transaction handle, used by the core. */
|
|
14
14
|
export interface KyselyLike {
|
|
15
15
|
selectFrom(table: string): KyselySelectBuilder;
|
|
@@ -43,6 +43,7 @@ export interface KyselySelectBuilder {
|
|
|
43
43
|
where(column: string, operator: string, value: unknown): KyselySelectBuilder;
|
|
44
44
|
orderBy(column: string, direction: 'asc' | 'desc'): KyselySelectBuilder;
|
|
45
45
|
limit(limit: number): KyselySelectBuilder;
|
|
46
|
+
forUpdate(): KyselySelectBuilder;
|
|
46
47
|
execute(): Promise<readonly Row[]>;
|
|
47
48
|
}
|
|
48
49
|
export interface KyselyReturningExecutable {
|
|
@@ -70,7 +71,9 @@ export interface KyselyDeleteBuilder {
|
|
|
70
71
|
export declare function kyselyOperationRowId(operation: Operation): string;
|
|
71
72
|
/** The transport-independent Kysely field/column mutation boundary. */
|
|
72
73
|
export interface KyselyMutationCore {
|
|
73
|
-
read(request: AdapterReadRequest
|
|
74
|
+
read(request: AdapterReadRequest, database?: KyselyLike, options?: {
|
|
75
|
+
readonly forUpdate?: boolean;
|
|
76
|
+
}): Promise<readonly Row[]>;
|
|
74
77
|
applyOperation(transaction: KyselyLike, operation: Operation): Promise<Row>;
|
|
75
78
|
}
|
|
76
79
|
export declare function createKyselyMutationCore<S extends SchemaRecord>(db: KyselyLike, schema: Schema<S>): KyselyMutationCore;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kyselyMutationCore.d.ts","sourceRoot":"","sources":["../../../src/source/adapters/kyselyMutationCore.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAInE,OAAO,KAAK,EAAE,kBAAkB,EAAE,GAAG,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"kyselyMutationCore.d.ts","sourceRoot":"","sources":["../../../src/source/adapters/kyselyMutationCore.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,7 @@ import { AbloValidationError } from '../../errors.js';
|
|
|
11
11
|
import { toSchemaJSON } from '../../schema/serialize.js';
|
|
12
12
|
import { camelToSnake, snakeToCamel } from '../../schema/ddl.js';
|
|
13
13
|
import { tenancyColumn } from '../../schema/tenancy.js';
|
|
14
|
+
import { sourceSubjectRule, sourceSubjectValues } from './subjectAuthorization.js';
|
|
14
15
|
function buildColumnMaps(schema) {
|
|
15
16
|
const json = toSchemaJSON(schema);
|
|
16
17
|
const out = new Map();
|
|
@@ -92,22 +93,30 @@ export function createKyselyMutationCore(db, schema) {
|
|
|
92
93
|
return out;
|
|
93
94
|
};
|
|
94
95
|
return {
|
|
95
|
-
async read(request) {
|
|
96
|
+
async read(request, database = db, options) {
|
|
96
97
|
const columns = modelColumns(request.model);
|
|
97
98
|
if (request.kind === 'load') {
|
|
98
|
-
|
|
99
|
+
let query = database
|
|
99
100
|
.selectFrom(columns.table)
|
|
100
101
|
.selectAll()
|
|
101
102
|
.where(columnFor(columns, 'id'), '=', request.id)
|
|
102
|
-
.limit(1)
|
|
103
|
-
|
|
103
|
+
.limit(1);
|
|
104
|
+
if (options?.forUpdate)
|
|
105
|
+
query = query.forUpdate();
|
|
106
|
+
const rows = await query.execute();
|
|
104
107
|
return rows.map((row) => toFields(columns, row));
|
|
105
108
|
}
|
|
106
|
-
|
|
109
|
+
let query = database
|
|
107
110
|
.selectFrom(columns.table)
|
|
108
|
-
.selectAll()
|
|
109
|
-
|
|
110
|
-
|
|
111
|
+
.selectAll();
|
|
112
|
+
const rule = sourceSubjectRule(schema, request.model);
|
|
113
|
+
const subjects = sourceSubjectValues(rule, request.scope?.syncGroups);
|
|
114
|
+
if (subjects) {
|
|
115
|
+
if (subjects.length === 0)
|
|
116
|
+
return [];
|
|
117
|
+
query = query.where(columnFor(columns, rule.field), 'in', subjects);
|
|
118
|
+
}
|
|
119
|
+
const rows = await query.limit(request.query?.limit ?? 1000).execute();
|
|
111
120
|
return rows.map((row) => toFields(columns, row));
|
|
112
121
|
},
|
|
113
122
|
async applyOperation(transaction, operation) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kyselyMutationCore.js","sourceRoot":"","sources":["../../../src/source/adapters/kyselyMutationCore.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"kyselyMutationCore.js","sourceRoot":"","sources":["../../../src/source/adapters/kyselyMutationCore.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,9 +6,9 @@
|
|
|
6
6
|
* mapper is complete when it passes the same suite this one passes.
|
|
7
7
|
*
|
|
8
8
|
* It models the semantics minimally but faithfully: one row store per model, an
|
|
9
|
-
* idempotency ledger keyed by scoped correlation, and an
|
|
10
|
-
* monotonic cursor.
|
|
9
|
+
* idempotency ledger keyed by scoped correlation, and an acknowledgement-pruned
|
|
10
|
+
* outbox with a monotonic cursor.
|
|
11
11
|
*/
|
|
12
|
-
import type { DataSourceAdapter } from '
|
|
12
|
+
import type { DataSourceAdapter } from './adapter.js';
|
|
13
13
|
export declare function memoryDataSource(): DataSourceAdapter;
|
|
14
14
|
//# sourceMappingURL=memory.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../../src/source/adapters/memory.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,EAGV,iBAAiB,EAElB,MAAM,
|
|
1
|
+
{"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../../src/source/adapters/memory.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,EAGV,iBAAiB,EAElB,MAAM,cAAc,CAAC;AAmBtB,wBAAgB,gBAAgB,IAAI,iBAAiB,CA6IpD"}
|
|
@@ -6,13 +6,13 @@
|
|
|
6
6
|
* mapper is complete when it passes the same suite this one passes.
|
|
7
7
|
*
|
|
8
8
|
* It models the semantics minimally but faithfully: one row store per model, an
|
|
9
|
-
* idempotency ledger keyed by scoped correlation, and an
|
|
10
|
-
* monotonic cursor.
|
|
9
|
+
* idempotency ledger keyed by scoped correlation, and an acknowledgement-pruned
|
|
10
|
+
* outbox with a monotonic cursor.
|
|
11
11
|
*/
|
|
12
12
|
import { AbloValidationError } from '../../errors.js';
|
|
13
|
-
import { defineDatabaseAdapter } from '
|
|
14
|
-
import { memoryAdapterProfile } from '
|
|
15
|
-
import { assertSourceIdempotencyIntent, sourceChangeIntentHash, } from '
|
|
13
|
+
import { defineDatabaseAdapter } from './adapterFactory.js';
|
|
14
|
+
import { memoryAdapterProfile } from './adapterProfile.js';
|
|
15
|
+
import { assertSourceIdempotencyIntent, sourceChangeIntentHash, } from './idempotency.js';
|
|
16
16
|
function rowId(op) {
|
|
17
17
|
const id = op.id ?? op.input?.id;
|
|
18
18
|
if (typeof id !== 'string' || id.length === 0) {
|
|
@@ -25,8 +25,9 @@ export function memoryDataSource() {
|
|
|
25
25
|
const store = new Map();
|
|
26
26
|
/** Permanent correlationId → intent hash + original response ledger. */
|
|
27
27
|
const idempotency = new Map();
|
|
28
|
-
/**
|
|
28
|
+
/** Acknowledgement-pruned outbox with a monotonic cursor. */
|
|
29
29
|
const outbox = [];
|
|
30
|
+
let nextOutboxCursor = 1;
|
|
30
31
|
const modelStore = (model) => {
|
|
31
32
|
let m = store.get(model);
|
|
32
33
|
if (!m) {
|
|
@@ -113,19 +114,31 @@ export function memoryDataSource() {
|
|
|
113
114
|
rows.push(row);
|
|
114
115
|
// Transactional outbox: one event per op, monotonic cursor.
|
|
115
116
|
outbox.push({
|
|
117
|
+
version: 2,
|
|
116
118
|
id: `${change.correlationId}:${index}`,
|
|
117
119
|
model: op.model,
|
|
118
120
|
entityId: String(row.id ?? rowId(op)),
|
|
119
121
|
type: op.type,
|
|
120
122
|
data: op.type === 'DELETE' ? null : row,
|
|
123
|
+
syncGroups: [],
|
|
121
124
|
correlationId: change.correlationId,
|
|
122
125
|
...(op.transactionId ? { transactionId: op.transactionId } : {}),
|
|
123
|
-
cursor: String(
|
|
126
|
+
cursor: String(nextOutboxCursor++),
|
|
124
127
|
});
|
|
125
128
|
}
|
|
126
129
|
idempotency.set(change.correlationId, { requestHash, rows });
|
|
127
130
|
return { rows };
|
|
128
131
|
},
|
|
132
|
+
async acknowledgeEvents(acknowledgedThrough) {
|
|
133
|
+
const after = Number(acknowledgedThrough);
|
|
134
|
+
let acknowledgedCount = 0;
|
|
135
|
+
while (acknowledgedCount < outbox.length &&
|
|
136
|
+
Number(outbox[acknowledgedCount]?.cursor) <= after) {
|
|
137
|
+
acknowledgedCount += 1;
|
|
138
|
+
}
|
|
139
|
+
if (acknowledgedCount > 0)
|
|
140
|
+
outbox.splice(0, acknowledgedCount);
|
|
141
|
+
},
|
|
129
142
|
async events(cursor, limit) {
|
|
130
143
|
const after = cursor ? Number(cursor) : 0;
|
|
131
144
|
const page = outbox.filter((e) => Number(e.cursor) > after).slice(0, limit);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory.js","sourceRoot":"","sources":["../../../src/source/adapters/memory.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAOtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"memory.js","sourceRoot":"","sources":["../../../src/source/adapters/memory.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
/** One forward-only infrastructure migration shipped by an adapter. */
|
|
3
|
+
export declare const migrationSchema: z.ZodObject<{
|
|
4
|
+
name: z.ZodString;
|
|
5
|
+
up: z.ZodString;
|
|
6
|
+
}, z.core.$strip>;
|
|
7
|
+
export type Migration = z.infer<typeof migrationSchema>;
|
|
8
|
+
//# sourceMappingURL=migration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migration.d.ts","sourceRoot":"","sources":["../../../src/source/adapters/migration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,uEAAuE;AACvE,eAAO,MAAM,eAAe;;;iBAK1B,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
/** One forward-only infrastructure migration shipped by an adapter. */
|
|
3
|
+
export const migrationSchema = z.object({
|
|
4
|
+
/** Stable name, used as the migration filename + applied-ledger key. */
|
|
5
|
+
name: z.string().min(1),
|
|
6
|
+
/** The forward SQL. */
|
|
7
|
+
up: z.string().min(1),
|
|
8
|
+
});
|
|
9
|
+
//# sourceMappingURL=migration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migration.js","sourceRoot":"","sources":["../../../src/source/adapters/migration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,uEAAuE;AACvE,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,wEAAwE;IACxE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,uBAAuB;IACvB,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CACtB,CAAC,CAAC"}
|
|
@@ -9,14 +9,13 @@
|
|
|
9
9
|
* own database when you run a Data Source. Ablo's hosted storage does not use them;
|
|
10
10
|
* it records changes in its own `sync_deltas` log instead.
|
|
11
11
|
*/
|
|
12
|
-
import type { Migration } from './
|
|
12
|
+
import type { Migration } from './migration.js';
|
|
13
|
+
export { endpointOutboxMigrations } from '../outbox/index.js';
|
|
13
14
|
/** The idempotency ledger shared by direct and endpoint mutation wrappers. New
|
|
14
15
|
* rows carry a bounded `expires_at` (set by the adapter at write time) so the
|
|
15
16
|
* customer can prune them; the `infinity` column default is only a fallback for
|
|
16
17
|
* a row inserted without one. */
|
|
17
18
|
export declare function idempotencyLedgerMigrations(schema?: string): readonly Migration[];
|
|
18
|
-
/** Endpoint-only transactional outbox and its correlation columns. */
|
|
19
|
-
export declare function endpointOutboxMigrations(): readonly Migration[];
|
|
20
19
|
/** Full endpoint adapter migrations (ledger + outbox). */
|
|
21
|
-
export declare function adapterTableMigrations(): readonly Migration[];
|
|
20
|
+
export declare function adapterTableMigrations(schema?: string): readonly Migration[];
|
|
22
21
|
//# sourceMappingURL=migrations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../../src/source/adapters/migrations.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAGhD,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAsC9D;;;kCAGkC;AAClC,wBAAgB,2BAA2B,CAAC,MAAM,SAAW,GAAG,SAAS,SAAS,EAAE,CAiCnF;AAED,0DAA0D;AAC1D,wBAAgB,sBAAsB,CAAC,MAAM,SAAW,GAAG,SAAS,SAAS,EAAE,CAE9E"}
|
|
@@ -9,6 +9,8 @@
|
|
|
9
9
|
* own database when you run a Data Source. Ablo's hosted storage does not use them;
|
|
10
10
|
* it records changes in its own `sync_deltas` log instead.
|
|
11
11
|
*/
|
|
12
|
+
import { endpointOutboxMigrations } from '../outbox/index.js';
|
|
13
|
+
export { endpointOutboxMigrations } from '../outbox/index.js';
|
|
12
14
|
/**
|
|
13
15
|
* Add a column to `ablo_idempotency` only when it is genuinely missing.
|
|
14
16
|
*
|
|
@@ -79,37 +81,8 @@ export function idempotencyLedgerMigrations(schema = 'public') {
|
|
|
79
81
|
},
|
|
80
82
|
];
|
|
81
83
|
}
|
|
82
|
-
/** Endpoint-only transactional outbox and its correlation columns. */
|
|
83
|
-
export function endpointOutboxMigrations() {
|
|
84
|
-
return [
|
|
85
|
-
{
|
|
86
|
-
name: 'ablo_outbox',
|
|
87
|
-
up: `CREATE TABLE IF NOT EXISTS ablo_outbox (
|
|
88
|
-
cursor BIGSERIAL PRIMARY KEY,
|
|
89
|
-
id TEXT NOT NULL UNIQUE,
|
|
90
|
-
model TEXT NOT NULL,
|
|
91
|
-
entity_id TEXT NOT NULL,
|
|
92
|
-
type TEXT NOT NULL,
|
|
93
|
-
data JSONB,
|
|
94
|
-
organization_id TEXT,
|
|
95
|
-
client_tx_id TEXT,
|
|
96
|
-
correlation_id TEXT,
|
|
97
|
-
transaction_id TEXT,
|
|
98
|
-
occurred_at BIGINT,
|
|
99
|
-
created_at TIMESTAMPTZ NOT NULL DEFAULT now()
|
|
100
|
-
);`,
|
|
101
|
-
},
|
|
102
|
-
{
|
|
103
|
-
name: 'ablo_outbox_correlation',
|
|
104
|
-
up: `ALTER TABLE ablo_outbox
|
|
105
|
-
ADD COLUMN IF NOT EXISTS correlation_id TEXT;
|
|
106
|
-
ALTER TABLE ablo_outbox
|
|
107
|
-
ADD COLUMN IF NOT EXISTS transaction_id TEXT;`,
|
|
108
|
-
},
|
|
109
|
-
];
|
|
110
|
-
}
|
|
111
84
|
/** Full endpoint adapter migrations (ledger + outbox). */
|
|
112
|
-
export function adapterTableMigrations() {
|
|
113
|
-
return [...idempotencyLedgerMigrations(), ...endpointOutboxMigrations()];
|
|
85
|
+
export function adapterTableMigrations(schema = 'public') {
|
|
86
|
+
return [...idempotencyLedgerMigrations(schema), ...endpointOutboxMigrations(schema)];
|
|
114
87
|
}
|
|
115
88
|
//# sourceMappingURL=migrations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migrations.js","sourceRoot":"","sources":["../../../src/source/adapters/migrations.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAE9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAE9D;;;;;;;;;GASG;AACH,SAAS,UAAU,CAAC,KAAa;IAC/B,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC;AAC1C,CAAC;AAED,SAAS,YAAY,CAAC,KAAa;IACjC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC;AAC1C,CAAC;AAED,SAAS,SAAS,CAAC,MAAc,EAAE,QAAgB;IACjD,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;AACzD,CAAC;AAED,SAAS,iBAAiB,CAAC,MAAc,EAAE,MAAc,EAAE,UAAkB;IAC3E,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IACrD,OAAO;yCACgC,YAAY,CAAC,MAAM,CAAC;;;;6CAIhB,MAAM;;kBAEjC,MAAM,eAAe,UAAU,CAAC,MAAM,CAAC,IAAI,UAAU;;QAE/D,CAAC;AACT,CAAC;AAED;;;kCAGkC;AAClC,MAAM,UAAU,2BAA2B,CAAC,MAAM,GAAG,QAAQ;IAC3D,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IACrD,OAAO;QACL;YACE,IAAI,EAAE,kBAAkB;YACxB,EAAE,EAAE,8BAA8B,MAAM;;;;;;GAM3C;SACE;QACD;YACE,IAAI,EAAE,+BAA+B;YACrC,uEAAuE;YACvE,uEAAuE;YACvE,oDAAoD;YACpD,EAAE;YACF,mEAAmE;YACnE,mEAAmE;YACnE,sEAAsE;YACtE,sEAAsE;YACtE,0EAA0E;YAC1E,uEAAuE;YACvE,uEAAuE;YACvE,EAAE,EAAE,iBAAiB,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,CAAC;SACtD;QACD;YACE,IAAI,EAAE,sCAAsC;YAC5C,EAAE,EAAE,iBAAiB,CAAC,MAAM,EAAE,YAAY,EAAE,yCAAyC,CAAC;SACvF;KACF,CAAC;AACJ,CAAC;AAED,0DAA0D;AAC1D,MAAM,UAAU,sBAAsB,CAAC,MAAM,GAAG,QAAQ;IACtD,OAAO,CAAC,GAAG,2BAA2B,CAAC,MAAM,CAAC,EAAE,GAAG,wBAAwB,CAAC,MAAM,CAAC,CAAC,CAAC;AACvF,CAAC"}
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
* be tested with a fake, while a real `PrismaClient` satisfies the shape at the
|
|
14
14
|
* call site.
|
|
15
15
|
*/
|
|
16
|
-
import type { DataSourceAdapter, Row } from '
|
|
16
|
+
import type { DataSourceAdapter, Row } from './adapter.js';
|
|
17
17
|
import type { SchemaRecord, Schema } from '../../schema/schema.js';
|
|
18
18
|
/** A Prisma model delegate — the subset of its methods the adapter calls. */
|
|
19
19
|
export interface PrismaDelegate {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prisma.d.ts","sourceRoot":"","sources":["../../../src/source/adapters/prisma.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,EAGV,iBAAiB,EACjB,GAAG,EACJ,MAAM,
|
|
1
|
+
{"version":3,"file":"prisma.d.ts","sourceRoot":"","sources":["../../../src/source/adapters/prisma.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,EAGV,iBAAiB,EACjB,GAAG,EACJ,MAAM,cAAc,CAAC;AAatB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAsBnE,6EAA6E;AAC7E,MAAM,WAAW,cAAc;IAC7B,UAAU,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE;YAAE,EAAE,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,GAAG,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC;IACjE,QAAQ,CAAC,IAAI,EAAE;QACb,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAChC,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,GAAG,MAAM,CAAC,CAAC;KAC1C,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACnB,MAAM,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,GAAG,CAAA;KAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAC1C,MAAM,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE;YAAE,EAAE,EAAE,MAAM,CAAA;SAAE,CAAC;QAAC,IAAI,EAAE,GAAG,CAAA;KAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IACjE,MAAM,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE;YAAE,EAAE,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;CACvD;AAED,6DAA6D;AAC7D,MAAM,WAAW,SAAS;IACxB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACxE,eAAe,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CAC/E;AAED;;;;;GAKG;AACH,MAAM,WAAW,UAAW,SAAQ,SAAS;IAC3C,YAAY,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CAChE;AAED,MAAM,WAAW,uBAAuB;IACtC,uFAAuF;IACvF,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;CACnD;AAqED,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,YAAY,EACrD,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,EACjB,OAAO,GAAE,uBAA4B,GACpC,iBAAiB,CA+LnB"}
|