@abloatai/transaction 0.50.0 → 0.52.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/dist/ablo.d.ts +1 -1
- package/dist/ablo.js +1 -1
- package/dist/ai-sdk/updateTool.d.ts +1 -1
- package/dist/ai-sdk/updateTool.js +1 -1
- package/dist/auth/capability.d.ts +2 -2
- package/dist/auth/capability.js +1 -1
- package/dist/auth/index.d.ts +9 -3
- package/dist/auth/index.d.ts.map +1 -1
- package/dist/auth/index.js +25 -20
- package/dist/auth/index.js.map +1 -1
- package/dist/auth/schemas.d.ts +24 -1
- package/dist/auth/schemas.d.ts.map +1 -1
- package/dist/auth/schemas.js +8 -2
- package/dist/auth/schemas.js.map +1 -1
- package/dist/auth/sessionIssuanceProtocol.d.ts +41 -0
- package/dist/auth/sessionIssuanceProtocol.d.ts.map +1 -0
- package/dist/auth/sessionIssuanceProtocol.js +48 -0
- package/dist/auth/sessionIssuanceProtocol.js.map +1 -0
- package/dist/auth/sessionMint.d.ts.map +1 -1
- package/dist/auth/sessionMint.js +3 -2
- package/dist/auth/sessionMint.js.map +1 -1
- package/dist/branches.d.ts +4 -4
- package/dist/coordination/schema.d.ts +3 -2
- package/dist/coordination/schema.d.ts.map +1 -1
- package/dist/coordination/schema.js +7 -2
- package/dist/coordination/schema.js.map +1 -1
- package/dist/errorCodes.d.ts +3 -2
- package/dist/errorCodes.d.ts.map +1 -1
- package/dist/errorCodes.js +4 -3
- package/dist/errorCodes.js.map +1 -1
- package/dist/errors.d.ts +1 -1
- package/dist/errors.js +1 -1
- package/dist/resources/httpResources.d.ts +11 -2
- package/dist/resources/httpResources.d.ts.map +1 -1
- package/dist/resources/modelOperations.d.ts +6 -6
- package/dist/schema/ddl.d.ts.map +1 -1
- package/dist/schema/ddl.js +9 -12
- package/dist/schema/ddl.js.map +1 -1
- package/dist/schema/field.d.ts +3 -3
- package/dist/schema/field.js +2 -2
- package/dist/schema/fieldRef.d.ts +1 -1
- package/dist/schema/generate.d.ts +2 -3
- package/dist/schema/generate.d.ts.map +1 -1
- package/dist/schema/generate.js +2 -8
- package/dist/schema/generate.js.map +1 -1
- package/dist/schema/index.d.ts +2 -2
- package/dist/schema/index.js +3 -3
- package/dist/schema/model.d.ts +7 -7
- package/dist/schema/model.js +2 -2
- package/dist/schema/openapi.d.ts.map +1 -1
- package/dist/schema/openapi.js +4 -7
- package/dist/schema/openapi.js.map +1 -1
- package/dist/schema/queries.d.ts +1 -1
- package/dist/schema/queries.js +1 -1
- package/dist/schema/relation.d.ts +8 -8
- package/dist/schema/relation.js +5 -5
- package/dist/schema/schema.d.ts +24 -37
- package/dist/schema/schema.d.ts.map +1 -1
- package/dist/schema/schema.js +15 -28
- package/dist/schema/schema.js.map +1 -1
- package/dist/schema/sugar.d.ts +7 -7
- package/dist/schema/sugar.js +5 -5
- package/dist/server/commit.d.ts +5 -1
- package/dist/server/commit.d.ts.map +1 -1
- package/dist/source/adapters/drizzle.d.ts.map +1 -1
- package/dist/source/adapters/drizzle.js +5 -0
- package/dist/source/adapters/drizzle.js.map +1 -1
- package/dist/source/adapters/kysely.d.ts.map +1 -1
- package/dist/source/adapters/kysely.js +33 -8
- package/dist/source/adapters/kysely.js.map +1 -1
- package/dist/source/adapters/kyselyMutationCore.d.ts +1 -1
- package/dist/source/adapters/kyselyMutationCore.d.ts.map +1 -1
- package/dist/source/adapters/kyselyMutationCore.js +58 -20
- 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 +5 -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 +6 -1
- package/dist/source/adapters/prisma.js.map +1 -1
- package/dist/source/conformance.js +21 -21
- package/dist/source/contract.d.ts +17 -0
- package/dist/source/contract.d.ts.map +1 -1
- package/dist/source/contract.js +31 -0
- package/dist/source/contract.js.map +1 -1
- package/dist/source/index.d.ts +1 -1
- package/dist/source/index.d.ts.map +1 -1
- package/dist/source/index.js +1 -1
- package/dist/source/index.js.map +1 -1
- package/dist/source/types.d.ts +1 -0
- package/dist/source/types.d.ts.map +1 -1
- package/dist/source/types.js.map +1 -1
- package/dist/transactionLayer.d.ts +3 -3
- package/dist/transactionLayer.js +3 -3
- package/dist/transport/httpClient.d.ts +6 -2
- package/dist/transport/httpClient.d.ts.map +1 -1
- package/dist/transport/httpClient.js.map +1 -1
- package/dist/transport/httpTransport.d.ts +1 -0
- package/dist/transport/httpTransport.d.ts.map +1 -1
- package/dist/transport/httpTransport.js +50 -4
- package/dist/transport/httpTransport.js.map +1 -1
- package/dist/transport/wsFrameHandlers.d.ts.map +1 -1
- package/dist/transport/wsFrameHandlers.js +3 -0
- package/dist/transport/wsFrameHandlers.js.map +1 -1
- package/dist/types/streams.d.ts +2 -2
- package/dist/wire/accountResponses.js +2 -2
- package/dist/wire/accountResponses.js.map +1 -1
- package/dist/wire/auth.d.ts.map +1 -1
- package/dist/wire/auth.js +4 -3
- package/dist/wire/auth.js.map +1 -1
- package/dist/wire/commit.d.ts +144 -0
- package/dist/wire/commit.d.ts.map +1 -1
- package/dist/wire/commit.js +22 -1
- package/dist/wire/commit.js.map +1 -1
- package/dist/wire/frames.d.ts +4 -0
- package/dist/wire/frames.d.ts.map +1 -1
- package/dist/wire/inboundFrames.d.ts +22 -0
- package/dist/wire/inboundFrames.d.ts.map +1 -1
- package/dist/wire/index.d.ts +2 -2
- package/dist/wire/index.d.ts.map +1 -1
- package/dist/wire/index.js +1 -1
- package/dist/wire/index.js.map +1 -1
- package/dist/wire/protocol.d.ts +1 -1
- package/dist/wire/protocol.js +1 -1
- package/package.json +1 -1
- package/src/ablo.ts +1 -1
- package/src/ai-sdk/updateTool.ts +1 -1
- package/src/auth/capability.ts +3 -3
- package/src/auth/index.ts +54 -22
- package/src/auth/schemas.ts +16 -2
- package/src/auth/sessionIssuanceProtocol.ts +57 -0
- package/src/auth/sessionMint.ts +3 -2
- package/src/coordination/schema.ts +7 -2
- package/src/errorCodes.ts +10 -4
- package/src/errors.ts +1 -1
- package/src/resources/httpResources.ts +11 -2
- package/src/resources/modelOperations.ts +6 -6
- package/src/schema/ddl.ts +9 -13
- package/src/schema/field.ts +3 -3
- package/src/schema/fieldRef.ts +1 -1
- package/src/schema/generate.ts +2 -8
- package/src/schema/index.ts +3 -3
- package/src/schema/model.ts +7 -7
- package/src/schema/openapi.ts +4 -7
- package/src/schema/queries.ts +1 -1
- package/src/schema/relation.ts +8 -8
- package/src/schema/residency.ts +0 -1
- package/src/schema/schema.ts +33 -58
- package/src/schema/sugar.ts +7 -7
- package/src/server/commit.ts +5 -1
- package/src/source/adapters/drizzle.ts +5 -0
- package/src/source/adapters/kysely.ts +48 -10
- package/src/source/adapters/kyselyMutationCore.ts +69 -22
- package/src/source/adapters/memory.ts +5 -0
- package/src/source/adapters/prisma.ts +6 -1
- package/src/source/conformance.ts +21 -21
- package/src/source/contract.ts +34 -0
- package/src/source/index.ts +2 -0
- package/src/source/types.ts +1 -0
- package/src/transactionLayer.ts +3 -3
- package/src/transport/httpClient.ts +6 -2
- package/src/transport/httpTransport.ts +59 -4
- package/src/transport/wsFrameHandlers.ts +3 -0
- package/src/types/global.ts +1 -1
- package/src/types/streams.ts +2 -2
- package/src/wire/accountResponses.ts +2 -2
- package/src/wire/auth.ts +4 -3
- package/src/wire/commit.ts +31 -1
- package/src/wire/index.ts +3 -0
- package/src/wire/protocol.ts +1 -1
package/dist/schema/schema.d.ts
CHANGED
|
@@ -8,16 +8,16 @@
|
|
|
8
8
|
* import { defineSchema, model, relation } from '@abloatai/transaction/schema';
|
|
9
9
|
*
|
|
10
10
|
* const schema = defineSchema({
|
|
11
|
-
*
|
|
11
|
+
* items: model({
|
|
12
12
|
* title: z.string(),
|
|
13
13
|
* status: z.enum(['todo', 'doing', 'done']).default('todo'),
|
|
14
|
-
*
|
|
14
|
+
* workspaceId: z.string().optional(),
|
|
15
15
|
* }, {
|
|
16
|
-
*
|
|
16
|
+
* workspace: relation.belongsTo('workspaces', 'workspaceId'),
|
|
17
17
|
* }),
|
|
18
18
|
* });
|
|
19
19
|
*
|
|
20
|
-
* type
|
|
20
|
+
* type Item = InferModel<typeof schema, 'items'>;
|
|
21
21
|
*/
|
|
22
22
|
import { z } from 'zod';
|
|
23
23
|
import type { ModelDef, RelationRecord } from './model.js';
|
|
@@ -112,7 +112,7 @@ export interface DefineSchemaOptions {
|
|
|
112
112
|
/** A record of model names → model definitions */
|
|
113
113
|
export type SchemaRecord = Record<string, ModelDef>;
|
|
114
114
|
/**
|
|
115
|
-
*
|
|
115
|
+
* The logical identity every model gets automatically.
|
|
116
116
|
*
|
|
117
117
|
* Exported (internal) so `parseSchema` can rebuild a model's validator the
|
|
118
118
|
* same way `defineSchema` does — `baseFieldsSchema.merge(modelSchema)` — when
|
|
@@ -120,20 +120,12 @@ export type SchemaRecord = Record<string, ModelDef>;
|
|
|
120
120
|
*/
|
|
121
121
|
export declare const baseFieldsSchema: z.ZodObject<{
|
|
122
122
|
id: z.ZodString;
|
|
123
|
-
createdAt: z.ZodDate;
|
|
124
|
-
updatedAt: z.ZodDate;
|
|
125
|
-
organizationId: z.ZodOptional<z.ZodString>;
|
|
126
|
-
createdBy: z.ZodOptional<z.ZodString>;
|
|
127
123
|
}, z.core.$strip>;
|
|
128
124
|
/**
|
|
129
|
-
* The
|
|
130
|
-
*
|
|
131
|
-
* generation reads it to avoid emitting a base column twice, and
|
|
132
|
-
* {@link defineSchema} uses it to reject a model that redeclares one, since
|
|
133
|
-
* merging the user's field over the base field would produce a `string & Date`
|
|
134
|
-
* type and break the build.
|
|
125
|
+
* The universal model field names. Audit and application metadata is declared
|
|
126
|
+
* by the application or carried by the commit record, never injected here.
|
|
135
127
|
*/
|
|
136
|
-
export declare const BASE_FIELDS: readonly ["id"
|
|
128
|
+
export declare const BASE_FIELDS: readonly ["id"];
|
|
137
129
|
/** The base fields type — pure data columns. */
|
|
138
130
|
export type BaseModelFields = z.infer<typeof baseFieldsSchema>;
|
|
139
131
|
/**
|
|
@@ -153,22 +145,22 @@ export interface Schema<S extends SchemaRecord = SchemaRecord> {
|
|
|
153
145
|
readonly models: S;
|
|
154
146
|
/**
|
|
155
147
|
* Every declared field as a {@link FieldRef} — the field as a value rather
|
|
156
|
-
* than a quoted name: `schema.fields.
|
|
148
|
+
* than a quoted name: `schema.fields.items.status`.
|
|
157
149
|
*
|
|
158
150
|
* A surface that names a field takes one of these instead of a string, so a
|
|
159
151
|
* name that does not exist stops compiling and a rename is a compile error at
|
|
160
152
|
* every use. Claims are the first caller; anything else that has to say
|
|
161
153
|
* "which field" should take a reference for the same reason.
|
|
162
154
|
*
|
|
163
|
-
*
|
|
164
|
-
*
|
|
155
|
+
* Automatically supplied `id` is not here. Every application-declared field
|
|
156
|
+
* does appear here.
|
|
165
157
|
*/
|
|
166
158
|
readonly fields: {
|
|
167
159
|
readonly [K in keyof S & string]: S[K] extends ModelDef<infer Shape> ? {
|
|
168
160
|
readonly [F in Extract<keyof Shape, string>]: FieldRef<K, F>;
|
|
169
161
|
} : never;
|
|
170
162
|
};
|
|
171
|
-
/** Zod schemas with
|
|
163
|
+
/** Zod schemas with logical identity merged into each declared model shape. */
|
|
172
164
|
readonly validators: {
|
|
173
165
|
readonly [K in keyof S]: S[K] extends ModelDef<infer Shape> ? z.ZodObject<Shape & typeof baseFieldsSchema.shape> : never;
|
|
174
166
|
};
|
|
@@ -217,7 +209,7 @@ export interface Schema<S extends SchemaRecord = SchemaRecord> {
|
|
|
217
209
|
* Includes base fields (id, createdAt, updatedAt, etc.)
|
|
218
210
|
*
|
|
219
211
|
* ```ts
|
|
220
|
-
* type
|
|
212
|
+
* type Item = InferModel<typeof schema, 'items'>;
|
|
221
213
|
* ```
|
|
222
214
|
*/
|
|
223
215
|
/** The schema bound via `declare module … interface Register { Schema: … }`
|
|
@@ -226,26 +218,25 @@ type RegisteredSchema = import('../types/global.js').Register extends {
|
|
|
226
218
|
Schema: infer S extends Schema;
|
|
227
219
|
} ? S : never;
|
|
228
220
|
/**
|
|
229
|
-
* The primary model-type helper. Once your
|
|
221
|
+
* The primary model-type helper. Once your workspace's `ablo/register.ts`
|
|
230
222
|
* registers the schema, a single argument is all it takes:
|
|
231
223
|
*
|
|
232
224
|
* ```ts
|
|
233
|
-
* type
|
|
225
|
+
* type Item = Model<'items'>;
|
|
234
226
|
* ```
|
|
235
227
|
*
|
|
236
228
|
* Without that registration, or for a second schema, pass the schema
|
|
237
|
-
* explicitly: `Model<typeof schema, '
|
|
229
|
+
* explicitly: `Model<typeof schema, 'items'>`.
|
|
238
230
|
*/
|
|
239
231
|
export type Model<A, B = never> = [B] extends [never] ? A extends keyof RegisteredSchema['models'] ? InferModel<RegisteredSchema, A> : never : A extends Schema ? InferModel<A, B extends keyof A['models'] ? B : never> : never;
|
|
240
232
|
/**
|
|
241
233
|
* The row type {@link Model} resolves to. Internal: `Model<typeof schema,
|
|
242
|
-
* '
|
|
234
|
+
* 'items'>` is the published spelling, because it reads as the domain rather
|
|
243
235
|
* than the machinery. This one is no longer exported from any subpath — it
|
|
244
236
|
* stays because `Model` is defined in terms of it, not as a second name for
|
|
245
237
|
* the same idea.
|
|
246
238
|
*/
|
|
247
|
-
export type InferModel<S extends Schema, ModelName extends keyof S['models']> = S['models'][ModelName] extends ModelDef<infer Shape, infer R, infer C> ?
|
|
248
|
-
Omit<z.infer<z.ZodObject<Shape>>, keyof BaseModelFields> & BaseModelFields & BaseModelMethods & InferComputed<C> & InferRelations<S, R> : never;
|
|
239
|
+
export type InferModel<S extends Schema, ModelName extends keyof S['models']> = S['models'][ModelName] extends ModelDef<infer Shape, infer R, infer C> ? Omit<z.infer<z.ZodObject<Shape>>, 'id'> & BaseModelFields & BaseModelMethods & InferComputed<C> & InferRelations<S, R> : never;
|
|
249
240
|
/**
|
|
250
241
|
* Infer the relation accessor types from a model's relations record.
|
|
251
242
|
*
|
|
@@ -278,10 +269,9 @@ export type InferRelations<S extends Schema, R extends RelationRecord> = string
|
|
|
278
269
|
* with relations added per-query, Prisma's scalar-only model types with
|
|
279
270
|
* `GetPayload<{ include }>`, mobx-state-tree's `Instance<T>` / `SnapshotOut<T>`.
|
|
280
271
|
*/
|
|
281
|
-
export type InferRow<S extends Schema, ModelName extends keyof S['models']> = S['models'][ModelName] extends ModelDef<infer Shape, RelationRecord, infer C> ?
|
|
282
|
-
Omit<z.infer<z.ZodObject<Shape>>, keyof BaseModelFields> & BaseModelFields & InferComputed<C> : never;
|
|
272
|
+
export type InferRow<S extends Schema, ModelName extends keyof S['models']> = S['models'][ModelName] extends ModelDef<infer Shape, RelationRecord, infer C> ? Omit<z.infer<z.ZodObject<Shape>>, 'id'> & BaseModelFields & InferComputed<C> : never;
|
|
283
273
|
/**
|
|
284
|
-
* The reactive-row companion to {@link Model}. Once your
|
|
274
|
+
* The reactive-row companion to {@link Model}. Once your workspace's
|
|
285
275
|
* `ablo/register.ts` registers the schema, a single argument is all it takes:
|
|
286
276
|
*
|
|
287
277
|
* ```ts
|
|
@@ -306,22 +296,19 @@ export type InferComputed<C> = string extends keyof C ? unknown : {
|
|
|
306
296
|
readonly [K in keyof C]: C[K] extends (...args: any[]) => infer R ? R : never;
|
|
307
297
|
};
|
|
308
298
|
/**
|
|
309
|
-
* Infer the create input type.
|
|
310
|
-
*
|
|
311
|
-
* and cannot be passed by the consumer.
|
|
299
|
+
* Infer the create input type. Application fields retain their declared input
|
|
300
|
+
* requirements and types.
|
|
312
301
|
*
|
|
313
302
|
* The only exception is `id`: consumers can optionally provide one for
|
|
314
303
|
* client-generated IDs (useful for optimistic UI that needs to reference
|
|
315
304
|
* the entity before the server confirms).
|
|
316
305
|
*
|
|
317
306
|
* ```ts
|
|
318
|
-
* type
|
|
307
|
+
* type CreateItem = InferCreate<typeof schema, 'items'>;
|
|
319
308
|
* // { title: string; status?: 'todo' | 'doing' | 'done'; id?: string }
|
|
320
|
-
* // createdAt, updatedAt are NOT accepted — they're auto-generated
|
|
321
309
|
* ```
|
|
322
310
|
*/
|
|
323
|
-
export type InferCreate<S extends Schema, ModelName extends keyof S['models']> = S['models'][ModelName] extends ModelDef<infer Shape> ?
|
|
324
|
-
Omit<z.input<z.ZodObject<Shape>>, keyof BaseModelFields> & Partial<BaseModelFields> : never;
|
|
311
|
+
export type InferCreate<S extends Schema, ModelName extends keyof S['models']> = S['models'][ModelName] extends ModelDef<infer Shape> ? Omit<z.input<z.ZodObject<Shape>>, 'id'> & Partial<Pick<BaseModelFields, 'id'>> : never;
|
|
325
312
|
/**
|
|
326
313
|
* Extract all model names from a schema.
|
|
327
314
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/schema/schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/schema/schema.ts"],"names":[],"mappings":"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"}
|
package/dist/schema/schema.js
CHANGED
|
@@ -8,16 +8,16 @@
|
|
|
8
8
|
* import { defineSchema, model, relation } from '@abloatai/transaction/schema';
|
|
9
9
|
*
|
|
10
10
|
* const schema = defineSchema({
|
|
11
|
-
*
|
|
11
|
+
* items: model({
|
|
12
12
|
* title: z.string(),
|
|
13
13
|
* status: z.enum(['todo', 'doing', 'done']).default('todo'),
|
|
14
|
-
*
|
|
14
|
+
* workspaceId: z.string().optional(),
|
|
15
15
|
* }, {
|
|
16
|
-
*
|
|
16
|
+
* workspace: relation.belongsTo('workspaces', 'workspaceId'),
|
|
17
17
|
* }),
|
|
18
18
|
* });
|
|
19
19
|
*
|
|
20
|
-
* type
|
|
20
|
+
* type Item = InferModel<typeof schema, 'items'>;
|
|
21
21
|
*/
|
|
22
22
|
import { z } from 'zod';
|
|
23
23
|
import { AbloValidationError } from '../errors.js';
|
|
@@ -67,7 +67,7 @@ export const RESERVED_SESSION_SETTINGS = [
|
|
|
67
67
|
'app.current_user_id',
|
|
68
68
|
];
|
|
69
69
|
/**
|
|
70
|
-
*
|
|
70
|
+
* The logical identity every model gets automatically.
|
|
71
71
|
*
|
|
72
72
|
* Exported (internal) so `parseSchema` can rebuild a model's validator the
|
|
73
73
|
* same way `defineSchema` does — `baseFieldsSchema.merge(modelSchema)` — when
|
|
@@ -75,25 +75,13 @@ export const RESERVED_SESSION_SETTINGS = [
|
|
|
75
75
|
*/
|
|
76
76
|
export const baseFieldsSchema = z.object({
|
|
77
77
|
id: z.string(),
|
|
78
|
-
createdAt: z.date(),
|
|
79
|
-
updatedAt: z.date(),
|
|
80
|
-
organizationId: z.string().optional(),
|
|
81
|
-
createdBy: z.string().optional(),
|
|
82
78
|
});
|
|
83
79
|
/**
|
|
84
|
-
* The
|
|
85
|
-
*
|
|
86
|
-
* generation reads it to avoid emitting a base column twice, and
|
|
87
|
-
* {@link defineSchema} uses it to reject a model that redeclares one, since
|
|
88
|
-
* merging the user's field over the base field would produce a `string & Date`
|
|
89
|
-
* type and break the build.
|
|
80
|
+
* The universal model field names. Audit and application metadata is declared
|
|
81
|
+
* by the application or carried by the commit record, never injected here.
|
|
90
82
|
*/
|
|
91
83
|
export const BASE_FIELDS = [
|
|
92
84
|
'id',
|
|
93
|
-
'createdAt',
|
|
94
|
-
'updatedAt',
|
|
95
|
-
'organizationId',
|
|
96
|
-
'createdBy',
|
|
97
85
|
];
|
|
98
86
|
// ── Factory ───────────────────────────────────────────────────────────────
|
|
99
87
|
/**
|
|
@@ -101,8 +89,8 @@ export const BASE_FIELDS = [
|
|
|
101
89
|
*
|
|
102
90
|
* ```ts
|
|
103
91
|
* const schema = defineSchema({
|
|
104
|
-
*
|
|
105
|
-
*
|
|
92
|
+
* items: model({ title: z.string(), status: z.string().default('todo') }),
|
|
93
|
+
* workspaces: model({ name: z.string() }),
|
|
106
94
|
* });
|
|
107
95
|
* ```
|
|
108
96
|
*/
|
|
@@ -201,15 +189,14 @@ export function defineSchema(models, options) {
|
|
|
201
189
|
// failure immediate and unambiguous.
|
|
202
190
|
for (const fieldName of Object.keys(def.shape)) {
|
|
203
191
|
assertRoundTrippableCamelCase(name, fieldName);
|
|
204
|
-
//
|
|
205
|
-
//
|
|
206
|
-
//
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
if (BASE_FIELDS.includes(fieldName)) {
|
|
192
|
+
// Logical identity is the only universal model field. Application
|
|
193
|
+
// timestamps, tenancy columns and attribution columns are ordinary
|
|
194
|
+
// fields when an application declares them.
|
|
195
|
+
const reservedFields = ['id'];
|
|
196
|
+
if (reservedFields.includes(fieldName)) {
|
|
210
197
|
throw new AbloValidationError(`[defineSchema] ${name}.${fieldName}: field \`${fieldName}\` collides with a ` +
|
|
211
198
|
`reserved field that the SDK provides automatically ` +
|
|
212
|
-
`(${
|
|
199
|
+
`(${reservedFields.join(', ')}). Remove it from your model — redeclaring it ` +
|
|
213
200
|
`produces a \`string & Date\` type and breaks the build.`, { code: 'schema_reserved_field', param: `${name}.${fieldName}` });
|
|
214
201
|
}
|
|
215
202
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/schema/schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAEnD,OAAO,EAAE,QAAQ,EAAiB,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE1D,yEAAyE;AACzE,sEAAsE;AACtE,wCAAwC;AACxC,OAAO,EAYL,YAAY,EACZ,UAAU,EACV,kBAAkB,EAClB,gBAAgB,EAChB,yBAAyB,EACzB,uBAAuB,EACvB,6BAA6B,EAC7B,SAAS,EACT,eAAe,EACf,kBAAkB,EAClB,oBAAoB,EACpB,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,UAAU,EACV,gBAAgB,EAChB,WAAW,EACX,eAAe,EACf,iBAAiB,GAElB,MAAM,YAAY,CAAC;AAqBpB,SAAS,aAAa,CAAC,EAAsB;IAC3C,IAAI,EAAE,KAAK,SAAS;QAAE,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IACtC,IAAI,OAAO,EAAE,KAAK,UAAU;QAAE,OAAO,EAAE,CAAC;IACxC,QAAQ,EAAE,EAAE,CAAC;QACX,KAAK,YAAY;YACf,OAAO,YAAY,CAAC;QACtB,KAAK,WAAW;YACd,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IACpB,CAAC;AACH,CAAC;AAED;;kBAEkB;AAClB,SAAS,YAAY,CAAC,UAAkB;IACtC,OAAO,UAAU,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;AACtE,CAAC;AA2BD;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAsB;IAC1D,mBAAmB;IACnB,cAAc;IACd,cAAc;IACd,aAAa;IACb,oBAAoB;IACpB,wBAAwB;IACxB,yBAAyB;IACzB,wBAAwB;IACxB,4BAA4B;IAC5B,8BAA8B;IAC9B,qBAAqB;CACtB,CAAC;AA8DF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/schema/schema.ts"],"names":[],"mappings":"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"}
|
package/dist/schema/sugar.d.ts
CHANGED
|
@@ -15,10 +15,10 @@
|
|
|
15
15
|
*
|
|
16
16
|
* @example
|
|
17
17
|
* ```ts
|
|
18
|
-
*
|
|
19
|
-
* typename: '
|
|
18
|
+
* items: mutable.lazy({ title: z.string() }, {
|
|
19
|
+
* typename: 'Item', tableName: 'items',
|
|
20
20
|
* relations: { ... },
|
|
21
|
-
* computed:
|
|
21
|
+
* computed: itemsComputed,
|
|
22
22
|
* }),
|
|
23
23
|
* ```
|
|
24
24
|
*/
|
|
@@ -36,13 +36,13 @@ export interface SugarOptions<R extends RelationRecord = RelationRecord, C exten
|
|
|
36
36
|
/** Computed getters installed on the model class prototype. */
|
|
37
37
|
computed?: C;
|
|
38
38
|
/**
|
|
39
|
-
* Wire `__typename` (PascalCase, e.g. `'
|
|
39
|
+
* Wire `__typename` (PascalCase, e.g. `'Item'`). Defaults to the schema
|
|
40
40
|
* key via `defineSchema` — override when the wire shape differs from
|
|
41
41
|
* the camelCase schema key.
|
|
42
42
|
*/
|
|
43
43
|
typename?: string;
|
|
44
44
|
/**
|
|
45
|
-
* The
|
|
45
|
+
* The database table name. Override it when the table name differs from the
|
|
46
46
|
* snake_case of the typename — for example, a `Member` type stored in a table
|
|
47
47
|
* named `'member'` rather than `'members'`.
|
|
48
48
|
*/
|
|
@@ -77,9 +77,9 @@ export interface SugarOptions<R extends RelationRecord = RelationRecord, C exten
|
|
|
77
77
|
* `{ mutable: true, load: X }` on `model()`.
|
|
78
78
|
*
|
|
79
79
|
* Pick the load suffix by data-access pattern:
|
|
80
|
-
* - `.instant` — small, always-needed
|
|
80
|
+
* - `.instant` — small, always-needed control rows
|
|
81
81
|
* - `.lazy` — large collections fetched on first query
|
|
82
|
-
* (Block, Message,
|
|
82
|
+
* (Block, Message, Item)
|
|
83
83
|
*/
|
|
84
84
|
export declare const mutable: {
|
|
85
85
|
instant: <Shape extends z.ZodRawShape, R extends RelationRecord = Record<string, never>, C extends ComputedRecord = Record<string, never>>(shape: Shape, opts?: SugarOptions<R, C>) => ModelDef<Shape, R, C>;
|
package/dist/schema/sugar.js
CHANGED
|
@@ -15,10 +15,10 @@
|
|
|
15
15
|
*
|
|
16
16
|
* @example
|
|
17
17
|
* ```ts
|
|
18
|
-
*
|
|
19
|
-
* typename: '
|
|
18
|
+
* items: mutable.lazy({ title: z.string() }, {
|
|
19
|
+
* typename: 'Item', tableName: 'items',
|
|
20
20
|
* relations: { ... },
|
|
21
|
-
* computed:
|
|
21
|
+
* computed: itemsComputed,
|
|
22
22
|
* }),
|
|
23
23
|
* ```
|
|
24
24
|
*/
|
|
@@ -43,9 +43,9 @@ function build(shape, opts, baseline) {
|
|
|
43
43
|
* `{ mutable: true, load: X }` on `model()`.
|
|
44
44
|
*
|
|
45
45
|
* Pick the load suffix by data-access pattern:
|
|
46
|
-
* - `.instant` — small, always-needed
|
|
46
|
+
* - `.instant` — small, always-needed control rows
|
|
47
47
|
* - `.lazy` — large collections fetched on first query
|
|
48
|
-
* (Block, Message,
|
|
48
|
+
* (Block, Message, Item)
|
|
49
49
|
*/
|
|
50
50
|
export const mutable = {
|
|
51
51
|
instant: (shape, opts) =>
|
package/dist/server/commit.d.ts
CHANGED
|
@@ -16,6 +16,7 @@
|
|
|
16
16
|
import type { ParticipantKind, ConfirmationState } from '../log/syncDeltaRow.js';
|
|
17
17
|
import type { ParticipantRef } from '../wire/delta.js';
|
|
18
18
|
import type { CommitExecutionResultInput } from '../wire/commit.js';
|
|
19
|
+
import type { CommitOperationResult } from '../wire/commit.js';
|
|
19
20
|
import type { ReadDependency, TrackDependency } from '../coordination/schema.js';
|
|
20
21
|
import type { EffectiveAuthority } from '../auth/capability.js';
|
|
21
22
|
export interface CommitContext {
|
|
@@ -97,5 +98,8 @@ export interface CommitContext {
|
|
|
97
98
|
* lives with the HTTP/WS confirmation contract so queued correlation cannot drift
|
|
98
99
|
* between cache, transport, and client.
|
|
99
100
|
*/
|
|
100
|
-
export type CommitExecutionResult = CommitExecutionResultInput
|
|
101
|
+
export type CommitExecutionResult = CommitExecutionResultInput & {
|
|
102
|
+
/** Response-time projection from the exact writing transaction. Never persisted. */
|
|
103
|
+
readonly operationResults?: readonly CommitOperationResult[];
|
|
104
|
+
};
|
|
101
105
|
//# sourceMappingURL=commit.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commit.d.ts","sourceRoot":"","sources":["../../src/server/commit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AACjF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACjF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAEhE,MAAM,WAAW,aAAa;IAC5B,aAAa,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,eAAe,EAAE,eAAe,CAAC;IACjC,oFAAoF;IACpF,SAAS,CAAC,EAAE,kBAAkB,CAAC;IAC/B,8EAA8E;IAC9E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG,UAAU,CAAC;IAC9C,cAAc,EAAE,MAAM,CAAC;IACvB,iEAAiE;IACjE,QAAQ,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sEAAsE;IACtE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/B;;;;OAIG;IACH,UAAU,CAAC,EAAE,cAAc,GAAG,IAAI,CAAC;IACnC;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B;;;;OAIG;IACH,yBAAyB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1C;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC;IAChC;;;;;OAKG;IACH,KAAK,CAAC,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC;CAClC;AAED;;;;GAIG;AACH,MAAM,MAAM,qBAAqB,GAAG,0BAA0B,CAAC"}
|
|
1
|
+
{"version":3,"file":"commit.d.ts","sourceRoot":"","sources":["../../src/server/commit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AACjF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACjF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAEhE,MAAM,WAAW,aAAa;IAC5B,aAAa,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,eAAe,EAAE,eAAe,CAAC;IACjC,oFAAoF;IACpF,SAAS,CAAC,EAAE,kBAAkB,CAAC;IAC/B,8EAA8E;IAC9E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG,UAAU,CAAC;IAC9C,cAAc,EAAE,MAAM,CAAC;IACvB,iEAAiE;IACjE,QAAQ,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sEAAsE;IACtE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/B;;;;OAIG;IACH,UAAU,CAAC,EAAE,cAAc,GAAG,IAAI,CAAC;IACnC;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B;;;;OAIG;IACH,yBAAyB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1C;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC;IAChC;;;;;OAKG;IACH,KAAK,CAAC,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC;CAClC;AAED;;;;GAIG;AACH,MAAM,MAAM,qBAAqB,GAAG,0BAA0B,GAAG;IAC/D,oFAAoF;IACpF,QAAQ,CAAC,gBAAgB,CAAC,EAAE,SAAS,qBAAqB,EAAE,CAAC;CAC9D,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drizzle.d.ts","sourceRoot":"","sources":["../../../src/source/adapters/drizzle.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAGH,OAAO,EAAO,KAAK,GAAG,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,EAGV,iBAAiB,EACjB,GAAG,EACJ,MAAM,eAAe,CAAC;AAYvB,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAMnE,6EAA6E;AAC7E,MAAM,WAAW,WAAW;IAC1B,OAAO,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACnD,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,WAAW,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CACjE;AAED,8EAA8E;AAC9E,MAAM,MAAM,oBAAoB,GAAG,SAAS,GAAG,EAAE,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,EAAE,CAAA;CAAE,CAAC;AAuDtF,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,YAAY,EACtD,EAAE,EAAE,WAAW,EACf,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,GAChB,iBAAiB,
|
|
1
|
+
{"version":3,"file":"drizzle.d.ts","sourceRoot":"","sources":["../../../src/source/adapters/drizzle.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAGH,OAAO,EAAO,KAAK,GAAG,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,EAGV,iBAAiB,EACjB,GAAG,EACJ,MAAM,eAAe,CAAC;AAYvB,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAMnE,6EAA6E;AAC7E,MAAM,WAAW,WAAW;IAC1B,OAAO,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACnD,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,WAAW,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CACjE;AAED,8EAA8E;AAC9E,MAAM,MAAM,oBAAoB,GAAG,SAAS,GAAG,EAAE,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,EAAE,CAAA;CAAE,CAAC;AAuDtF,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,YAAY,EACtD,EAAE,EAAE,WAAW,EACf,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,GAChB,iBAAiB,CA4KnB"}
|
|
@@ -106,6 +106,11 @@ export function drizzleDataSource(db, schema) {
|
|
|
106
106
|
return out;
|
|
107
107
|
};
|
|
108
108
|
const applyOperation = async (tx, op) => {
|
|
109
|
+
if (op.where) {
|
|
110
|
+
throw new AbloValidationError('The Drizzle adapter does not support conditional operations', {
|
|
111
|
+
code: 'source_adapter_misconfigured',
|
|
112
|
+
});
|
|
113
|
+
}
|
|
109
114
|
const mc = modelColumns(op.model);
|
|
110
115
|
const table = sql.identifier(mc.table);
|
|
111
116
|
const id = rowId(op);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drizzle.js","sourceRoot":"","sources":["../../../src/source/adapters/drizzle.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"drizzle.js","sourceRoot":"","sources":["../../../src/source/adapters/drizzle.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kysely.d.ts","sourceRoot":"","sources":["../../../src/source/adapters/kysely.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAGH,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,KAAK,EAEV,iBAAiB,EACjB,eAAe,EAEhB,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"kysely.d.ts","sourceRoot":"","sources":["../../../src/source/adapters/kysely.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAGH,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,KAAK,EAEV,iBAAiB,EACjB,eAAe,EAEhB,MAAM,eAAe,CAAC;AAsBvB,OAAO,EAIL,KAAK,UAAU,EACf,KAAK,kBAAkB,EACxB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,wBAAwB,EACxB,oBAAoB,EACpB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,EAC9B,KAAK,UAAU,EACf,KAAK,kBAAkB,EACvB,KAAK,yBAAyB,EAC9B,KAAK,mBAAmB,EACxB,KAAK,wBAAwB,EAC7B,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,GAC5B,MAAM,yBAAyB,CAAC;AAEjC,KAAK,kBAAkB,GAAG,UAAU,GAAG,QAAQ,CAAC;AA0IhD;;;;GAIG;AACH,MAAM,WAAW,4BAA4B;IAC3C;;;;;OAKG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,MAAM,CAAC;CAC9D;AAED,wBAAgB,2BAA2B,CACzC,EAAE,EAAE,UAAU,EACd,IAAI,EAAE,kBAAkB,EACxB,IAAI,EAAE,kBAAkB,EACxB,OAAO,GAAE,4BAAiC,GACzC,eAAe,CAkGjB;AAED,6EAA6E;AAC7E,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,YAAY,EACrD,EAAE,EAAE,UAAU,EACd,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,GAChB,iBAAiB,CAqCnB;AAED,iFAAiF;AACjF,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,YAAY,EACzD,EAAE,EAAE,UAAU,EACd,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,GAChB,eAAe,CAoBjB"}
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
import { AbloValidationError } from '../../errors.js';
|
|
20
20
|
import { defineDatabaseAdapter } from '../adapterFactory.js';
|
|
21
21
|
import { postgresAdapterProfile } from '../adapterProfile.js';
|
|
22
|
-
import { changeSetSchema, outboxEventSchema, sourceCommitEchoMarkerSchema, } from '../contract.js';
|
|
22
|
+
import { changeSetSchema, outboxEventSchema, sourceCommitEchoMarkerSchema, sourceCommitEchoIntentSchema, } from '../contract.js';
|
|
23
23
|
import { assertSourceIdempotencyIntent, assertSourceIdempotencyRetention, sourceChangeIntentHash, SOURCE_IDEMPOTENCY_RETENTION, } from '../idempotency.js';
|
|
24
24
|
import { adapterTableMigrations, idempotencyLedgerMigrations, } from '../migrations.js';
|
|
25
25
|
import { ABLO_POSTGRES_COMMIT_ECHO_PREFIX } from '../types.js';
|
|
@@ -61,13 +61,13 @@ function markerAction(type) {
|
|
|
61
61
|
return 'D';
|
|
62
62
|
return 'U';
|
|
63
63
|
}
|
|
64
|
-
function
|
|
64
|
+
function parseEchoIntent(change, markerModelFor, required) {
|
|
65
65
|
const payload = change.echo?.payload;
|
|
66
66
|
if (!payload) {
|
|
67
|
-
|
|
67
|
+
return undefined;
|
|
68
68
|
}
|
|
69
69
|
try {
|
|
70
|
-
const marker =
|
|
70
|
+
const marker = sourceCommitEchoIntentSchema.parse(JSON.parse(payload));
|
|
71
71
|
if (marker.correlationId !== change.correlationId) {
|
|
72
72
|
throw new Error('marker correlation does not match the ledger key');
|
|
73
73
|
}
|
|
@@ -82,19 +82,39 @@ function assertDirectLogicalMarker(change, markerModelFor) {
|
|
|
82
82
|
// key through the schema so the two vocabularies compare correctly.
|
|
83
83
|
if (!markerOperation ||
|
|
84
84
|
markerOperation.model !== markerModelFor(operation.model) ||
|
|
85
|
-
markerOperation.id !== kyselyOperationRowId(operation) ||
|
|
85
|
+
(markerOperation.id != null && markerOperation.id !== kyselyOperationRowId(operation)) ||
|
|
86
|
+
(markerOperation.id == null && operation.type !== 'CREATE') ||
|
|
86
87
|
markerOperation.action !== markerAction(operation.type) ||
|
|
87
88
|
markerOperation.transactionId !== operation.transactionId) {
|
|
88
89
|
throw new Error(`marker operation ${index} does not match the mutation`);
|
|
89
90
|
}
|
|
90
91
|
}
|
|
92
|
+
return marker;
|
|
91
93
|
}
|
|
92
94
|
catch (error) {
|
|
93
95
|
if (error instanceof AbloValidationError)
|
|
94
96
|
throw error;
|
|
97
|
+
if (!required)
|
|
98
|
+
return undefined;
|
|
95
99
|
throw new AbloValidationError(`The direct Postgres logical marker is invalid: ${error instanceof Error ? error.message : 'unknown marker error'}`, { code: 'source_adapter_misconfigured' });
|
|
96
100
|
}
|
|
97
101
|
}
|
|
102
|
+
function resolveEchoMarker(intent, rows) {
|
|
103
|
+
return sourceCommitEchoMarkerSchema.parse({
|
|
104
|
+
...intent,
|
|
105
|
+
operations: intent.operations.map((operation, index) => {
|
|
106
|
+
const returnedId = rows[index]?.id;
|
|
107
|
+
const id = operation.id ?? returnedId;
|
|
108
|
+
if (typeof id !== 'string' || id.length === 0) {
|
|
109
|
+
throw new AbloValidationError(`source operation ${index} did not return a canonical id for WAL correlation`, { code: 'source_adapter_misconfigured' });
|
|
110
|
+
}
|
|
111
|
+
if (returnedId != null && String(returnedId) !== id) {
|
|
112
|
+
throw new AbloValidationError(`source operation ${index} returned an id that does not match its WAL correlation`, { code: 'source_adapter_misconfigured' });
|
|
113
|
+
}
|
|
114
|
+
return { ...operation, id };
|
|
115
|
+
}),
|
|
116
|
+
});
|
|
117
|
+
}
|
|
98
118
|
export function createKyselyMutationAdapter(db, core, mode, options = {}) {
|
|
99
119
|
const markerModelFor = options.markerModelFor ?? ((model) => model);
|
|
100
120
|
return defineDatabaseAdapter({
|
|
@@ -116,8 +136,10 @@ export function createKyselyMutationAdapter(db, core, mode, options = {}) {
|
|
|
116
136
|
},
|
|
117
137
|
async commit(change) {
|
|
118
138
|
const request = changeSetSchema.parse(change);
|
|
119
|
-
if (mode === 'direct')
|
|
120
|
-
|
|
139
|
+
if (mode === 'direct' && !request.echo) {
|
|
140
|
+
throw new AbloValidationError('A direct Kysely mutation requires a transactional Postgres logical marker', { code: 'source_adapter_misconfigured' });
|
|
141
|
+
}
|
|
142
|
+
const echoIntent = parseEchoIntent(request, markerModelFor, mode === 'direct');
|
|
121
143
|
const requestHash = sourceChangeIntentHash(request);
|
|
122
144
|
return db.transaction().execute(async (transaction) => {
|
|
123
145
|
const reservation = await transaction.executeQuery(reserveLedgerQuery(request.correlationId, requestHash));
|
|
@@ -159,7 +181,10 @@ export function createKyselyMutationAdapter(db, core, mode, options = {}) {
|
|
|
159
181
|
}
|
|
160
182
|
await transaction.executeQuery(completeLedgerQuery(request.correlationId, rows));
|
|
161
183
|
if (request.echo?.kind === 'postgres-wal') {
|
|
162
|
-
|
|
184
|
+
const payload = echoIntent
|
|
185
|
+
? JSON.stringify(resolveEchoMarker(echoIntent, rows))
|
|
186
|
+
: request.echo.payload;
|
|
187
|
+
await transaction.executeQuery(postgresLogicalMarkerQuery(payload));
|
|
163
188
|
}
|
|
164
189
|
return { rows };
|
|
165
190
|
});
|