@abloatai/transaction 0.56.0 → 0.57.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 +34 -0
- package/dist/coordination/index.d.ts +2 -2
- package/dist/coordination/index.d.ts.map +1 -1
- package/dist/coordination/index.js +1 -1
- package/dist/coordination/index.js.map +1 -1
- package/dist/coordination/schema.d.ts +0 -7
- package/dist/coordination/schema.d.ts.map +1 -1
- package/dist/coordination/schema.js +0 -4
- package/dist/coordination/schema.js.map +1 -1
- package/dist/errorCodes.d.ts +1 -0
- package/dist/errorCodes.d.ts.map +1 -1
- package/dist/errorCodes.js +1 -0
- package/dist/errorCodes.js.map +1 -1
- package/dist/readSetContext.d.ts.map +1 -1
- package/dist/readSetContext.js +8 -3
- package/dist/readSetContext.js.map +1 -1
- package/dist/resources/httpResources.d.ts +43 -22
- package/dist/resources/httpResources.d.ts.map +1 -1
- package/dist/resources/httpResources.js +81 -4
- package/dist/resources/httpResources.js.map +1 -1
- package/dist/resources/modelCreate.d.ts +21 -0
- package/dist/resources/modelCreate.d.ts.map +1 -0
- package/dist/resources/modelCreate.js +49 -0
- package/dist/resources/modelCreate.js.map +1 -0
- package/dist/resources/modelOperations.d.ts +24 -2
- package/dist/resources/modelOperations.d.ts.map +1 -1
- package/dist/resources/modelOperations.js.map +1 -1
- package/dist/resources/writeOptionsSchema.d.ts +14 -0
- package/dist/resources/writeOptionsSchema.d.ts.map +1 -1
- package/dist/resources/writeOptionsSchema.js +20 -0
- package/dist/resources/writeOptionsSchema.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 +3 -1
- package/dist/schema/index.d.ts.map +1 -1
- package/dist/schema/index.js +3 -1
- package/dist/schema/index.js.map +1 -1
- package/dist/schema/model.d.ts +14 -0
- package/dist/schema/model.d.ts.map +1 -1
- package/dist/schema/model.js +2 -0
- package/dist/schema/model.js.map +1 -1
- package/dist/schema/openapi.d.ts.map +1 -1
- package/dist/schema/openapi.js +104 -2
- 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 +23 -4
- package/dist/schema/schema.d.ts.map +1 -1
- package/dist/schema/schema.js +30 -1
- package/dist/schema/schema.js.map +1 -1
- package/dist/schema/serialize.d.ts +4 -1
- package/dist/schema/serialize.d.ts.map +1 -1
- package/dist/schema/serialize.js +5 -1
- 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/server/adapter.d.ts +2 -0
- package/dist/server/adapter.d.ts.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/source/adapters/drizzle.d.ts.map +1 -1
- package/dist/source/adapters/drizzle.js +37 -6
- package/dist/source/adapters/drizzle.js.map +1 -1
- package/dist/source/adapters/kysely.d.ts +2 -0
- package/dist/source/adapters/kysely.d.ts.map +1 -1
- package/dist/source/adapters/kysely.js +33 -5
- package/dist/source/adapters/kysely.js.map +1 -1
- package/dist/source/adapters/kyselyMutationCore.d.ts +4 -1
- 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.map +1 -1
- package/dist/source/adapters/memory.js +1 -0
- package/dist/source/adapters/memory.js.map +1 -1
- package/dist/source/adapters/prisma.d.ts.map +1 -1
- package/dist/source/adapters/prisma.js +59 -7
- package/dist/source/adapters/prisma.js.map +1 -1
- package/dist/source/contract.d.ts +14 -0
- package/dist/source/contract.d.ts.map +1 -1
- package/dist/source/contract.js +10 -0
- package/dist/source/contract.js.map +1 -1
- package/dist/source/factory.d.ts +7 -1
- package/dist/source/factory.d.ts.map +1 -1
- package/dist/source/factory.js +116 -5
- package/dist/source/factory.js.map +1 -1
- package/dist/source/index.d.ts +2 -1
- package/dist/source/index.d.ts.map +1 -1
- package/dist/source/index.js +1 -0
- package/dist/source/index.js.map +1 -1
- package/dist/source/migrations.d.ts.map +1 -1
- package/dist/source/migrations.js +21 -0
- package/dist/source/migrations.js.map +1 -1
- package/dist/source/subjectAuthorization.d.ts +16 -0
- package/dist/source/subjectAuthorization.d.ts.map +1 -0
- package/dist/source/subjectAuthorization.js +126 -0
- package/dist/source/subjectAuthorization.js.map +1 -0
- package/dist/source/types.d.ts +52 -2
- package/dist/source/types.d.ts.map +1 -1
- package/dist/source/types.js +1 -0
- package/dist/source/types.js.map +1 -1
- package/dist/syncLog/contract.d.ts +0 -6
- package/dist/syncLog/contract.d.ts.map +1 -1
- package/dist/syncLog/contract.js +0 -4
- 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/httpClient.d.ts +8 -1
- package/dist/transport/httpClient.d.ts.map +1 -1
- package/dist/transport/httpClient.js +51 -20
- package/dist/transport/httpClient.js.map +1 -1
- package/dist/transport/httpCommitRequest.d.ts +45 -0
- package/dist/transport/httpCommitRequest.d.ts.map +1 -0
- package/dist/transport/httpCommitRequest.js +67 -0
- package/dist/transport/httpCommitRequest.js.map +1 -0
- package/dist/transport/httpTransport.d.ts.map +1 -1
- package/dist/transport/httpTransport.js +69 -106
- package/dist/transport/httpTransport.js.map +1 -1
- package/dist/transport/httpTransportHelpers.d.ts +10 -0
- package/dist/transport/httpTransportHelpers.d.ts.map +1 -0
- package/dist/transport/httpTransportHelpers.js +46 -0
- package/dist/transport/httpTransportHelpers.js.map +1 -0
- 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/commit.d.ts +74 -9
- package/dist/wire/commit.d.ts.map +1 -1
- package/dist/wire/commit.js +13 -1
- package/dist/wire/commit.js.map +1 -1
- package/dist/wire/index.d.ts +5 -2
- package/dist/wire/index.d.ts.map +1 -1
- package/dist/wire/index.js +12 -1
- package/dist/wire/index.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 +1 -1
- package/src/coordination/index.ts +0 -2
- package/src/coordination/schema.ts +0 -7
- package/src/errorCodes.ts +6 -0
- package/src/readSetContext.ts +8 -2
- package/src/resources/httpResources.ts +116 -25
- package/src/resources/modelCreate.ts +73 -0
- package/src/resources/modelOperations.ts +29 -2
- package/src/resources/writeOptionsSchema.ts +28 -0
- package/src/schema/audit.ts +121 -0
- package/src/schema/ddl.ts +71 -1
- package/src/schema/index.ts +16 -0
- package/src/schema/model.ts +17 -0
- package/src/schema/openapi.ts +123 -2
- package/src/schema/roles.ts +53 -0
- package/src/schema/schema.ts +68 -3
- package/src/schema/serialize.ts +8 -1
- package/src/schema/subject.ts +43 -0
- package/src/server/adapter.ts +2 -0
- package/src/server/readConfig.ts +4 -0
- package/src/source/adapters/drizzle.ts +50 -6
- package/src/source/adapters/kysely.ts +47 -4
- package/src/source/adapters/kyselyMutationCore.ts +21 -9
- package/src/source/adapters/memory.ts +1 -0
- package/src/source/adapters/prisma.ts +70 -7
- package/src/source/contract.ts +11 -0
- package/src/source/factory.ts +141 -5
- package/src/source/index.ts +6 -0
- package/src/source/migrations.ts +21 -0
- package/src/source/subjectAuthorization.ts +182 -0
- package/src/source/types.ts +56 -2
- package/src/syncLog/contract.ts +0 -7
- package/src/testing/fixtures/httpResponses.ts +7 -0
- package/src/transport/httpClient.ts +85 -23
- package/src/transport/httpCommitRequest.ts +104 -0
- package/src/transport/httpTransport.ts +92 -142
- package/src/transport/httpTransportHelpers.ts +63 -0
- package/src/wire/apiLifecycle.ts +94 -0
- package/src/wire/commit.ts +16 -1
- package/src/wire/index.ts +31 -0
- package/src/wire/rateLimit.ts +155 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"httpClient.js","sourceRoot":"","sources":["../../src/transport/httpClient.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"httpClient.js","sourceRoot":"","sources":["../../src/transport/httpClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The HTTP commit as a VALUE: what it is keyed by, the operations it carries,
|
|
3
|
+
* the exact bytes it is replayed as, and the error when its echo never lands.
|
|
4
|
+
*
|
|
5
|
+
* None of this touches the transport's state. It was written inside
|
|
6
|
+
* `createHttpTransport` because that is where it was first needed, which made a
|
|
7
|
+
* two-thousand-line closure the only place the shape of a commit was stated.
|
|
8
|
+
* Read together here, the four say one thing: a commit is identified by its
|
|
9
|
+
* idempotency key, normalized once so every operation carries the same
|
|
10
|
+
* defaults, replayed byte for byte, and abandoned only when the source accepted
|
|
11
|
+
* it and the replication echo did not arrive.
|
|
12
|
+
*/
|
|
13
|
+
import { AbloConnectionError } from '../errors.js';
|
|
14
|
+
import type { BatchFence } from '../coordination/locator.js';
|
|
15
|
+
import type { Claim } from '../types/streams.js';
|
|
16
|
+
import type { CommitCreateOptions, CommitOperationInput } from '../resources/httpResources.js';
|
|
17
|
+
import type { CommitReceiptWire } from '../wire/commit.js';
|
|
18
|
+
import type { DurableHttpCommitMethod } from '../transactions/confirmation/httpCommitEnvelope.js';
|
|
19
|
+
/**
|
|
20
|
+
* One commit, exactly as it will be sent and re-sent. A replay that changed any
|
|
21
|
+
* of these would be a different request wearing the same idempotency key.
|
|
22
|
+
*/
|
|
23
|
+
export interface ExactHttpCommitRequest {
|
|
24
|
+
readonly idempotencyKey: string;
|
|
25
|
+
readonly method: DurableHttpCommitMethod;
|
|
26
|
+
readonly path: string;
|
|
27
|
+
readonly body: string;
|
|
28
|
+
readonly sealedProtocolVersion?: number;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* The key a commit is replayed under. A caller's idempotency key wins, because
|
|
32
|
+
* it is the caller's statement that two attempts are the same write.
|
|
33
|
+
*/
|
|
34
|
+
export declare function createClientTxId(idempotencyKey?: string | null): string;
|
|
35
|
+
/** One operation with the batch's defaults resolved onto it. */
|
|
36
|
+
export declare function normalizeCommitOperation(op: CommitOperationInput, defaults: Pick<CommitCreateOptions, 'readAt' | 'onStale'>, fence: BatchFence | null, claim: Claim | null): CommitOperationInput;
|
|
37
|
+
/** Every operation in a batch, normalized against the batch's own options. */
|
|
38
|
+
export declare function normalizeCommitOperations(commitOptions: CommitCreateOptions, fence: BatchFence | null): readonly CommitOperationInput[];
|
|
39
|
+
/**
|
|
40
|
+
* The source accepted the write and its replication echo did not arrive in
|
|
41
|
+
* time. `accepted: true` is the load-bearing detail: the row may well be
|
|
42
|
+
* written, so this is a confirmation timeout and never a reason to write again.
|
|
43
|
+
*/
|
|
44
|
+
export declare function replicationLagTimeout(request: ExactHttpCommitRequest, response: CommitReceiptWire, requestTimeoutMs: number): AbloConnectionError;
|
|
45
|
+
//# sourceMappingURL=httpCommitRequest.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"httpCommitRequest.d.ts","sourceRoot":"","sources":["../../src/transport/httpCommitRequest.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,mBAAmB,EAAuB,MAAM,cAAc,CAAC;AACxE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAE7D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,KAAK,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAC/F,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oDAAoD,CAAC;AAElG;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,uBAAuB,CAAC;IACzC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,qBAAqB,CAAC,EAAE,MAAM,CAAC;CACzC;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAKvE;AAED,gEAAgE;AAChE,wBAAgB,wBAAwB,CACtC,EAAE,EAAE,oBAAoB,EACxB,QAAQ,EAAE,IAAI,CAAC,mBAAmB,EAAE,QAAQ,GAAG,SAAS,CAAC,EACzD,KAAK,EAAE,UAAU,GAAG,IAAI,EACxB,KAAK,EAAE,KAAK,GAAG,IAAI,GAClB,oBAAoB,CAatB;AAED,8EAA8E;AAC9E,wBAAgB,yBAAyB,CACvC,aAAa,EAAE,mBAAmB,EAClC,KAAK,EAAE,UAAU,GAAG,IAAI,GACvB,SAAS,oBAAoB,EAAE,CASjC;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,sBAAsB,EAC/B,QAAQ,EAAE,iBAAiB,EAC3B,gBAAgB,EAAE,MAAM,GACvB,mBAAmB,CAcrB"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The HTTP commit as a VALUE: what it is keyed by, the operations it carries,
|
|
3
|
+
* the exact bytes it is replayed as, and the error when its echo never lands.
|
|
4
|
+
*
|
|
5
|
+
* None of this touches the transport's state. It was written inside
|
|
6
|
+
* `createHttpTransport` because that is where it was first needed, which made a
|
|
7
|
+
* two-thousand-line closure the only place the shape of a commit was stated.
|
|
8
|
+
* Read together here, the four say one thing: a commit is identified by its
|
|
9
|
+
* idempotency key, normalized once so every operation carries the same
|
|
10
|
+
* defaults, replayed byte for byte, and abandoned only when the source accepted
|
|
11
|
+
* it and the replication echo did not arrive.
|
|
12
|
+
*/
|
|
13
|
+
import { AbloConnectionError, AbloValidationError } from '../errors.js';
|
|
14
|
+
import { claimIdFor, fenceTokenFor } from '../coordination/locator.js';
|
|
15
|
+
/**
|
|
16
|
+
* The key a commit is replayed under. A caller's idempotency key wins, because
|
|
17
|
+
* it is the caller's statement that two attempts are the same write.
|
|
18
|
+
*/
|
|
19
|
+
export function createClientTxId(idempotencyKey) {
|
|
20
|
+
if (idempotencyKey && idempotencyKey.length > 0)
|
|
21
|
+
return idempotencyKey;
|
|
22
|
+
return typeof crypto !== 'undefined' && typeof crypto.randomUUID === 'function'
|
|
23
|
+
? crypto.randomUUID()
|
|
24
|
+
: `tx_${Date.now()}_${Math.random().toString(36).slice(2, 10)}`;
|
|
25
|
+
}
|
|
26
|
+
/** One operation with the batch's defaults resolved onto it. */
|
|
27
|
+
export function normalizeCommitOperation(op, defaults, fence, claim) {
|
|
28
|
+
return {
|
|
29
|
+
action: op.action,
|
|
30
|
+
model: op.model,
|
|
31
|
+
id: op.id ?? null,
|
|
32
|
+
data: op.data ?? null,
|
|
33
|
+
where: op.where ?? null,
|
|
34
|
+
transactionId: op.transactionId ?? null,
|
|
35
|
+
claimId: op.claimId ?? claimIdFor(claim?.target, claim?.id, op.model, op.id ?? null),
|
|
36
|
+
readAt: op.readAt ?? defaults.readAt ?? null,
|
|
37
|
+
onStale: op.onStale ?? defaults.onStale ?? null,
|
|
38
|
+
fenceToken: op.fenceToken ?? fenceTokenFor(fence, op.model, op.id ?? null),
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
/** Every operation in a batch, normalized against the batch's own options. */
|
|
42
|
+
export function normalizeCommitOperations(commitOptions, fence) {
|
|
43
|
+
if (commitOptions.operations.length === 0) {
|
|
44
|
+
throw new AbloValidationError('Commit requires a non-empty `operations` array.', {
|
|
45
|
+
code: 'commit_operation_required',
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
return commitOptions.operations.map((op) => normalizeCommitOperation(op, commitOptions, fence, commitOptions.claim ?? null));
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* The source accepted the write and its replication echo did not arrive in
|
|
52
|
+
* time. `accepted: true` is the load-bearing detail: the row may well be
|
|
53
|
+
* written, so this is a confirmation timeout and never a reason to write again.
|
|
54
|
+
*/
|
|
55
|
+
export function replicationLagTimeout(request, response, requestTimeoutMs) {
|
|
56
|
+
return new AbloConnectionError(`The source accepted commit ${request.idempotencyKey}, but its replication echo did not arrive within ${requestTimeoutMs}ms.`, {
|
|
57
|
+
code: 'replication_lag_timeout',
|
|
58
|
+
httpStatus: 504,
|
|
59
|
+
details: {
|
|
60
|
+
clientTxId: request.idempotencyKey,
|
|
61
|
+
...(response.correlationId ? { correlationId: response.correlationId } : {}),
|
|
62
|
+
timeoutMs: requestTimeoutMs,
|
|
63
|
+
accepted: true,
|
|
64
|
+
},
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=httpCommitRequest.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"httpCommitRequest.js","sourceRoot":"","sources":["../../src/transport/httpCommitRequest.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAExE,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAkBvE;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,cAA8B;IAC7D,IAAI,cAAc,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,cAAc,CAAC;IACvE,OAAO,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,MAAM,CAAC,UAAU,KAAK,UAAU;QAC7E,CAAC,CAAC,MAAM,CAAC,UAAU,EAAE;QACrB,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;AACpE,CAAC;AAED,gEAAgE;AAChE,MAAM,UAAU,wBAAwB,CACtC,EAAwB,EACxB,QAAyD,EACzD,KAAwB,EACxB,KAAmB;IAEnB,OAAO;QACL,MAAM,EAAE,EAAE,CAAC,MAAM;QACjB,KAAK,EAAE,EAAE,CAAC,KAAK;QACf,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,IAAI;QACjB,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,IAAI;QACrB,KAAK,EAAE,EAAE,CAAC,KAAK,IAAI,IAAI;QACvB,aAAa,EAAE,EAAE,CAAC,aAAa,IAAI,IAAI;QACvC,OAAO,EAAE,EAAE,CAAC,OAAO,IAAI,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,IAAI,IAAI,CAAC;QACpF,MAAM,EAAE,EAAE,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM,IAAI,IAAI;QAC5C,OAAO,EAAE,EAAE,CAAC,OAAO,IAAI,QAAQ,CAAC,OAAO,IAAI,IAAI;QAC/C,UAAU,EAAE,EAAE,CAAC,UAAU,IAAI,aAAa,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,IAAI,IAAI,CAAC;KAC3E,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,MAAM,UAAU,yBAAyB,CACvC,aAAkC,EAClC,KAAwB;IAExB,IAAI,aAAa,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,mBAAmB,CAAC,iDAAiD,EAAE;YAC/E,IAAI,EAAE,2BAA2B;SAClC,CAAC,CAAC;IACL,CAAC;IACD,OAAO,aAAa,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CACzC,wBAAwB,CAAC,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,CAAC,KAAK,IAAI,IAAI,CAAC,CAChF,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CACnC,OAA+B,EAC/B,QAA2B,EAC3B,gBAAwB;IAExB,OAAO,IAAI,mBAAmB,CAC5B,8BAA8B,OAAO,CAAC,cAAc,oDAAoD,gBAAgB,KAAK,EAC7H;QACE,IAAI,EAAE,yBAAyB;QAC/B,UAAU,EAAE,GAAG;QACf,OAAO,EAAE;YACP,UAAU,EAAE,OAAO,CAAC,cAAc;YAClC,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5E,SAAS,EAAE,gBAAgB;YAC3B,QAAQ,EAAE,IAAI;SACf;KACF,CACF,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"httpTransport.d.ts","sourceRoot":"","sources":["../../src/transport/httpTransport.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;
|
|
1
|
+
{"version":3,"file":"httpTransport.d.ts","sourceRoot":"","sources":["../../src/transport/httpTransport.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AA+DH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAKV,cAAc,EAGd,kBAAkB,EAClB,kBAAkB,EAMlB,gBAAgB,EAIhB,eAAe,EAChB,MAAM,+BAA+B,CAAC;AAOvC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAOhE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAiCxD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AA6BrE,iFAAiF;AACjF,MAAM,MAAM,oBAAoB,GAAG,IAAI,CAAC,gBAAgB,EAAE,QAAQ,CAAC,GAAG;IACpE,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/C,iFAAiF;IACjF,QAAQ,CAAC,cAAc,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,SAAS,CAAC;IACvE;;;;OAIG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,yBAAyB,CAAC;IACnD;;;;;;;;OAQG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B,CAAC;AAEF,6EAA6E;AAC7E,eAAO,MAAM,0BAA0B,QAAS,CAAC;AAYjD,sEAAsE;AACtE,MAAM,WAAW,aAAa;IAC5B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9B,oDAAoD;IACpD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACzB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;IACjC;;;;OAIG;IACH,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC;IACpC,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAChC,+EAA+E;IAC/E,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAC7C,KAAK,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,CAAC,EAC3C,IAAI,EAAE,MAAM,GACX,kBAAkB,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IACjC;;;;;;OAMG;IACH,YAAY,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACvC;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC,YAAY,CAAC,CAAC;CAClD;AAID,2DAA2D;AAC3D,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,oBAAoB,GAAG,aAAa,CAk3DhF"}
|
|
@@ -6,11 +6,10 @@
|
|
|
6
6
|
* transport envelopes, watermarks, replay, and route details.
|
|
7
7
|
*/
|
|
8
8
|
import { AbloClaimedError, AbloError, AbloAuthenticationError, AbloConnectionError, AbloIdempotencyError, AbloValidationError, AbloNotFoundError, claimedError, translateHttpError, } from '../errors.js';
|
|
9
|
-
import { v5 as uuidv5 } from 'uuid';
|
|
10
9
|
import { reconcileFunctionalUpdate, } from '../resources/functionalUpdate.js';
|
|
11
10
|
import { assertBrowserSafety, readProcessEnv, resolveApiKey, resolveApiKeyValue, resolveAuthToken, resolveBaseURL, resolveBootstrapBaseUrl, rejectRemovedDatabaseUrlOption, warnIfCliKeyMismatch, } from '../auth/apiKey.js';
|
|
12
11
|
import { PROTOCOL_VERSION, PROTOCOL_VERSION_HEADER } from '../wire/protocolVersion.js';
|
|
13
|
-
import {
|
|
12
|
+
import { commitRecordSchema, commitRecordListSchema, commitRecordListOptionsSchema, commitRecordWhereSchema, } from '../wire/commit.js';
|
|
14
13
|
import { logListResponseSchema } from '../wire/feedEvent.js';
|
|
15
14
|
import { claimAcquireResponseSchema, claimHeartbeatBatchReplySchema, claimHeartbeatReplySchema, claimListResponseSchema, claimStateSchema, } from '../wire/claims.js';
|
|
16
15
|
import { modelListResponseSchema, modelReadResponseSchema, } from '../wire/modelResponses.js';
|
|
@@ -19,29 +18,16 @@ import { heartbeatCadenceMs, resolveHeartbeatOptions, resolveHeartbeatPlan, star
|
|
|
19
18
|
import { mintSession } from '../auth/sessionMint.js';
|
|
20
19
|
import { revokeCapability, rotateCapability, } from '../auth/capabilityLifecycle.js';
|
|
21
20
|
import { parseIdentityResolveResponse } from '../auth/schemas.js';
|
|
22
|
-
|
|
23
|
-
* Interpret a heartbeat reply for a lease this handle HOLDS: anything other
|
|
24
|
-
* than `held` means the lease is no longer ours (a holder cannot be `queued`;
|
|
25
|
-
* `lost` rides a 409 that the wire error mapping already surfaces as
|
|
26
|
-
* AbloClaimedError before reaching here). The thrown loss is the definitive
|
|
27
|
-
* signal that stops the auto-heartbeat loop.
|
|
28
|
-
*/
|
|
29
|
-
function heldHeartbeatReply(reply, label) {
|
|
30
|
-
if (reply.status === 'held' && typeof reply.expiresAt === 'number') {
|
|
31
|
-
return {
|
|
32
|
-
expiresAt: reply.expiresAt,
|
|
33
|
-
...(reply.queueDepth !== undefined ? { queueDepth: reply.queueDepth } : {}),
|
|
34
|
-
};
|
|
35
|
-
}
|
|
36
|
-
throw new AbloClaimedError(`The lease behind ${label} is no longer held — it expired or was granted onward. Re-acquire the claim and retry; a write attempted under the old lease is rejected by its \`readAt\` guard.`, { code: 'claim_lost' });
|
|
37
|
-
}
|
|
21
|
+
import { claimFromModelClaim, heldHeartbeatReply, parseSuccessfulCommitResponse, } from './httpTransportHelpers.js';
|
|
38
22
|
import { claimAttemptFailure, claimQueueView, emitClaimStatus, resolveClaimContentionOptions, } from '../resources/modelOperations.js';
|
|
39
23
|
import { claimDescription } from '../coordination/schema.js';
|
|
40
|
-
import { subTarget, streamTarget, batchFence,
|
|
24
|
+
import { subTarget, streamTarget, batchFence, } from '../coordination/locator.js';
|
|
41
25
|
import { declaredMeta, wireMeta } from '../coordination/claimMeta.js';
|
|
42
|
-
import { assertWriteOptions } from '../resources/writeOptionsSchema.js';
|
|
26
|
+
import { assertWriteOptions, assertWriteTarget, } from '../resources/writeOptionsSchema.js';
|
|
27
|
+
import { createModelId, resolveCreatedRows, resolveCreateId, } from '../resources/modelCreate.js';
|
|
43
28
|
import { normalizeWhere } from '../resources/where.js';
|
|
44
29
|
import { createDurableHttpCommitEnvelope, canonicalHttpCommitBody, durableHttpCommitEnvelopeSchema, httpCommitEnvelopeRecordId, isHttpCommitReplayExpired, } from '../transactions/confirmation/httpCommitEnvelope.js';
|
|
30
|
+
import { createClientTxId, normalizeCommitOperations, replicationLagTimeout, } from './httpCommitRequest.js';
|
|
45
31
|
import { resolveDurableWrites } from '../durableWrites.js';
|
|
46
32
|
/** @internal Default per-request deadline for the private HTTP transport. */
|
|
47
33
|
export const DEFAULT_REQUEST_TIMEOUT_MS = 30_000;
|
|
@@ -51,41 +37,6 @@ const HTTP_CONFIRMATION_POLL_INTERVAL_MS = 250;
|
|
|
51
37
|
* claim that names no `ttl` — it sets the auto-heartbeat cadence.
|
|
52
38
|
*/
|
|
53
39
|
const DEFAULT_CLAIM_TTL_MS = 60_000;
|
|
54
|
-
function parseSuccessfulCommitResponse(value, idempotencyKey) {
|
|
55
|
-
const parsed = commitReceiptSchema.safeParse(value);
|
|
56
|
-
if (!parsed.success || parsed.data.clientTxId !== idempotencyKey) {
|
|
57
|
-
throw new AbloConnectionError('The commit endpoint returned an invalid success receipt; its outcome remains pending and is safe to retry.', {
|
|
58
|
-
code: 'commit_no_result',
|
|
59
|
-
cause: parsed.success
|
|
60
|
-
? new Error('Commit receipt clientTxId did not match its idempotency key')
|
|
61
|
-
: parsed.error,
|
|
62
|
-
});
|
|
63
|
-
}
|
|
64
|
-
return parsed.data;
|
|
65
|
-
}
|
|
66
|
-
/** Decode the HTTP claim DTO into the one public Claim shape. */
|
|
67
|
-
function claimFromModelClaim(claim) {
|
|
68
|
-
// The handle a caller reads back is a public claim, so its `meta` is the
|
|
69
|
-
// declared shape; the rest of the sub-entity locator crosses whole rather
|
|
70
|
-
// than member by member, which is how `fields` used to die on this hop.
|
|
71
|
-
const { meta, ...details } = subTarget(claim.target);
|
|
72
|
-
return {
|
|
73
|
-
object: 'claim',
|
|
74
|
-
id: claim.id,
|
|
75
|
-
...(claim.status ? { status: claim.status } : {}),
|
|
76
|
-
// The server always stamps a description; default only for total safety.
|
|
77
|
-
description: claim.description ?? 'editing',
|
|
78
|
-
heldBy: claim.actor,
|
|
79
|
-
participantKind: claim.participantKind,
|
|
80
|
-
expiresAt: claim.expiresAt,
|
|
81
|
-
...(claim.position !== undefined ? { position: claim.position } : {}),
|
|
82
|
-
target: {
|
|
83
|
-
...streamTarget(claim.target),
|
|
84
|
-
...details,
|
|
85
|
-
...(meta !== undefined ? { meta: declaredMeta(meta) } : {}),
|
|
86
|
-
},
|
|
87
|
-
};
|
|
88
|
-
}
|
|
89
40
|
/** @internal Constructed only by the typed HTTP facade. */
|
|
90
41
|
export function createHttpTransport(options) {
|
|
91
42
|
const env = readProcessEnv();
|
|
@@ -456,18 +407,6 @@ export function createHttpTransport(options) {
|
|
|
456
407
|
// Receipt observation must never change the commit outcome.
|
|
457
408
|
}
|
|
458
409
|
}
|
|
459
|
-
function replicationLagTimeout(request, response) {
|
|
460
|
-
return new AbloConnectionError(`The source accepted commit ${request.idempotencyKey}, but its replication echo did not arrive within ${requestTimeoutMs}ms.`, {
|
|
461
|
-
code: 'replication_lag_timeout',
|
|
462
|
-
httpStatus: 504,
|
|
463
|
-
details: {
|
|
464
|
-
clientTxId: request.idempotencyKey,
|
|
465
|
-
...(response.correlationId ? { correlationId: response.correlationId } : {}),
|
|
466
|
-
timeoutMs: requestTimeoutMs,
|
|
467
|
-
accepted: true,
|
|
468
|
-
},
|
|
469
|
-
});
|
|
470
|
-
}
|
|
471
410
|
/**
|
|
472
411
|
* Replays one byte-identical, idempotent HTTP commit until mutation-log
|
|
473
412
|
* replay reports the source echo as confirmed. `queued` is acceptance only:
|
|
@@ -485,7 +424,7 @@ export function createHttpTransport(options) {
|
|
|
485
424
|
while (current.status === 'queued') {
|
|
486
425
|
const remaining = deadlineAt === null ? null : deadlineAt - Date.now();
|
|
487
426
|
if (remaining !== null && remaining <= 0) {
|
|
488
|
-
throw replicationLagTimeout(request, current);
|
|
427
|
+
throw replicationLagTimeout(request, current, requestTimeoutMs);
|
|
489
428
|
}
|
|
490
429
|
const confirmationController = new AbortController();
|
|
491
430
|
const confirmationDeadline = remaining !== null
|
|
@@ -513,7 +452,7 @@ export function createHttpTransport(options) {
|
|
|
513
452
|
catch (error) {
|
|
514
453
|
if (confirmationController.signal.aborted ||
|
|
515
454
|
(deadlineAt !== null && Date.now() >= deadlineAt)) {
|
|
516
|
-
throw replicationLagTimeout(request, current);
|
|
455
|
+
throw replicationLagTimeout(request, current, requestTimeoutMs);
|
|
517
456
|
}
|
|
518
457
|
throw error;
|
|
519
458
|
}
|
|
@@ -762,43 +701,6 @@ export function createHttpTransport(options) {
|
|
|
762
701
|
return response;
|
|
763
702
|
});
|
|
764
703
|
}
|
|
765
|
-
function createClientTxId(idempotencyKey) {
|
|
766
|
-
if (idempotencyKey && idempotencyKey.length > 0)
|
|
767
|
-
return idempotencyKey;
|
|
768
|
-
return typeof crypto !== 'undefined' && typeof crypto.randomUUID === 'function'
|
|
769
|
-
? crypto.randomUUID()
|
|
770
|
-
: `tx_${Date.now()}_${Math.random().toString(36).slice(2, 10)}`;
|
|
771
|
-
}
|
|
772
|
-
function createModelId(modelName, idempotencyKey) {
|
|
773
|
-
if (idempotencyKey) {
|
|
774
|
-
return uuidv5(`${modelName}:${idempotencyKey}`, 'aa4ba6d4-bf0b-5b38-9c45-116f79a6e548');
|
|
775
|
-
}
|
|
776
|
-
return typeof crypto !== 'undefined' && typeof crypto.randomUUID === 'function'
|
|
777
|
-
? crypto.randomUUID()
|
|
778
|
-
: `id_${Date.now()}_${Math.random().toString(36).slice(2, 10)}`;
|
|
779
|
-
}
|
|
780
|
-
function normalizeCommitOperation(op, defaults, fence, claim) {
|
|
781
|
-
return {
|
|
782
|
-
action: op.action,
|
|
783
|
-
model: op.model,
|
|
784
|
-
id: op.id ?? null,
|
|
785
|
-
data: op.data ?? null,
|
|
786
|
-
where: op.where ?? null,
|
|
787
|
-
transactionId: op.transactionId ?? null,
|
|
788
|
-
claimId: op.claimId ?? claimIdFor(claim?.target, claim?.id, op.model, op.id ?? null),
|
|
789
|
-
readAt: op.readAt ?? defaults.readAt ?? null,
|
|
790
|
-
onStale: op.onStale ?? defaults.onStale ?? null,
|
|
791
|
-
fenceToken: op.fenceToken ?? fenceTokenFor(fence, op.model, op.id ?? null),
|
|
792
|
-
};
|
|
793
|
-
}
|
|
794
|
-
function normalizeCommitOperations(commitOptions, fence) {
|
|
795
|
-
if (commitOptions.operations.length === 0) {
|
|
796
|
-
throw new AbloValidationError('Commit requires a non-empty `operations` array.', {
|
|
797
|
-
code: 'commit_operation_required',
|
|
798
|
-
});
|
|
799
|
-
}
|
|
800
|
-
return commitOptions.operations.map((op) => normalizeCommitOperation(op, commitOptions, fence, commitOptions.claim ?? null));
|
|
801
|
-
}
|
|
802
704
|
async function listClaimState(target) {
|
|
803
705
|
const params = new URLSearchParams();
|
|
804
706
|
if (target?.model)
|
|
@@ -1130,6 +1032,8 @@ export function createHttpTransport(options) {
|
|
|
1130
1032
|
reads: options.reads,
|
|
1131
1033
|
track: options.track,
|
|
1132
1034
|
}, `${modelName} ${action}`);
|
|
1035
|
+
if (action !== 'create')
|
|
1036
|
+
assertWriteTarget(action, modelName, id);
|
|
1133
1037
|
const clientTxId = createClientTxId(options?.idempotencyKey);
|
|
1134
1038
|
const encModel = encodeURIComponent(modelName);
|
|
1135
1039
|
const path = action === 'create'
|
|
@@ -1396,12 +1300,26 @@ export function createHttpTransport(options) {
|
|
|
1396
1300
|
if (!claimInput)
|
|
1397
1301
|
return run(input);
|
|
1398
1302
|
if (isClaimHandle(claimInput)) {
|
|
1303
|
+
// The lease's watermark travels with it. Unwrapping the handle to a
|
|
1304
|
+
// `claimRef` is what put this here: `mutateModel` reads `readAt` off a
|
|
1305
|
+
// handle on `claim`, and this sets `claim: undefined` before it looks,
|
|
1306
|
+
// so the stale guard was silently dropped on every write that named a
|
|
1307
|
+
// handle. The result was mutual exclusion without lost-update
|
|
1308
|
+
// detection, on the transport agents run, under code that reads as
|
|
1309
|
+
// though it had both. The reactive client binds the same three values
|
|
1310
|
+
// from the claim it holds; a caller's own `readAt`/`onStale` win.
|
|
1399
1311
|
return run({
|
|
1400
1312
|
...input,
|
|
1401
1313
|
claimRef: { id: claimInput.id },
|
|
1402
1314
|
...(claimInput.fenceToken !== undefined
|
|
1403
1315
|
? { fenceToken: claimInput.fenceToken }
|
|
1404
1316
|
: {}),
|
|
1317
|
+
...(input?.readAt === undefined && claimInput.readAt !== undefined
|
|
1318
|
+
? { readAt: claimInput.readAt }
|
|
1319
|
+
: {}),
|
|
1320
|
+
...(input?.onStale === undefined && claimInput.readAt !== undefined
|
|
1321
|
+
? { onStale: 'reject' }
|
|
1322
|
+
: {}),
|
|
1405
1323
|
claim: undefined,
|
|
1406
1324
|
});
|
|
1407
1325
|
}
|
|
@@ -1490,6 +1408,51 @@ export function createHttpTransport(options) {
|
|
|
1490
1408
|
return created;
|
|
1491
1409
|
});
|
|
1492
1410
|
},
|
|
1411
|
+
/**
|
|
1412
|
+
* Creates many rows as ONE commit, and returns them.
|
|
1413
|
+
*
|
|
1414
|
+
* Atomic on purpose: a batch that half-lands leaves the caller to work
|
|
1415
|
+
* out which half, and every other write door here declines whole. One
|
|
1416
|
+
* rejected row declines the batch.
|
|
1417
|
+
*
|
|
1418
|
+
* A fresh receipt returns the authoritative rows directly from the
|
|
1419
|
+
* writing transaction. A durable idempotency replay deliberately redacts
|
|
1420
|
+
* those rows, so that path verifies every deterministic id with a point
|
|
1421
|
+
* read and fails loudly if policy prevents a complete answer. Neither
|
|
1422
|
+
* path can report a partial collection as success.
|
|
1423
|
+
*
|
|
1424
|
+
* Ids are resolved here rather than left to the server, so the results
|
|
1425
|
+
* can be returned in the caller's own order rather than the order the
|
|
1426
|
+
* transaction happened to settle them.
|
|
1427
|
+
*/
|
|
1428
|
+
async createMany(params) {
|
|
1429
|
+
if (params.data.length === 0)
|
|
1430
|
+
return [];
|
|
1431
|
+
// A claim/stale guard addresses one existing row, so the canonical
|
|
1432
|
+
// batch-create options do not admit those fields at all.
|
|
1433
|
+
const { data, ...options } = params;
|
|
1434
|
+
const ids = data.map((row, index) => resolveCreateId(undefined, row) ??
|
|
1435
|
+
createModelId(name, params.idempotencyKey ? `${params.idempotencyKey}:${index}` : null));
|
|
1436
|
+
const receipt = await commits.create({
|
|
1437
|
+
...options,
|
|
1438
|
+
operations: data.map((row, index) => ({
|
|
1439
|
+
action: 'create',
|
|
1440
|
+
model: name,
|
|
1441
|
+
id: ids[index] ?? null,
|
|
1442
|
+
data: row,
|
|
1443
|
+
})),
|
|
1444
|
+
wait: 'confirmed',
|
|
1445
|
+
});
|
|
1446
|
+
return resolveCreatedRows({
|
|
1447
|
+
modelName: name,
|
|
1448
|
+
ids,
|
|
1449
|
+
operationResults: receipt.operationResults,
|
|
1450
|
+
readRow: async (id) => {
|
|
1451
|
+
const read = await retrieveModel(name, { id });
|
|
1452
|
+
return read.data;
|
|
1453
|
+
},
|
|
1454
|
+
});
|
|
1455
|
+
},
|
|
1493
1456
|
update: updateModel,
|
|
1494
1457
|
async delete(params) {
|
|
1495
1458
|
return withMutationClaim(params.id, params, async (options) => {
|