@beignet/provider-db-drizzle 0.0.36 → 0.0.38
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/CHANGELOG.md +17 -0
- package/README.md +130 -11
- package/dist/mysql/index.d.ts +27 -8
- package/dist/mysql/index.d.ts.map +1 -1
- package/dist/mysql/index.js +50 -52
- package/dist/mysql/index.js.map +1 -1
- package/dist/mysql/schema.d.ts +17 -0
- package/dist/mysql/schema.d.ts.map +1 -1
- package/dist/mysql/schema.js +1 -0
- package/dist/mysql/schema.js.map +1 -1
- package/dist/postgres/index.d.ts +31 -5
- package/dist/postgres/index.d.ts.map +1 -1
- package/dist/postgres/index.js +41 -51
- package/dist/postgres/index.js.map +1 -1
- package/dist/postgres/schema.d.ts +17 -0
- package/dist/postgres/schema.d.ts.map +1 -1
- package/dist/postgres/schema.js +1 -0
- package/dist/postgres/schema.js.map +1 -1
- package/dist/shared/idempotency-core.d.ts +2 -0
- package/dist/shared/idempotency-core.d.ts.map +1 -1
- package/dist/shared/idempotency-core.js +56 -8
- package/dist/shared/idempotency-core.js.map +1 -1
- package/dist/shared/outbox-core.d.ts.map +1 -1
- package/dist/shared/outbox-core.js +2 -0
- package/dist/shared/outbox-core.js.map +1 -1
- package/dist/shared/rows.d.ts +1 -0
- package/dist/shared/rows.d.ts.map +1 -1
- package/dist/shared/rows.js +13 -0
- package/dist/shared/rows.js.map +1 -1
- package/dist/sqlite/index.d.ts +20 -2
- package/dist/sqlite/index.d.ts.map +1 -1
- package/dist/sqlite/index.js +38 -50
- package/dist/sqlite/index.js.map +1 -1
- package/dist/sqlite/schema.d.ts +19 -0
- package/dist/sqlite/schema.d.ts.map +1 -1
- package/dist/sqlite/schema.js +1 -0
- package/dist/sqlite/schema.js.map +1 -1
- package/package.json +3 -2
- package/skills/database-provider/SKILL.md +29 -1
- package/src/mysql/index.ts +122 -45
- package/src/mysql/schema.ts +1 -0
- package/src/postgres/index.ts +119 -42
- package/src/postgres/schema.ts +1 -0
- package/src/shared/idempotency-core.ts +88 -7
- package/src/shared/outbox-core.ts +2 -0
- package/src/shared/rows.ts +13 -0
- package/src/sqlite/index.ts +103 -36
- package/src/sqlite/schema.ts +1 -0
package/dist/shared/rows.js
CHANGED
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
* orchestration in `outbox-core.ts` and `idempotency-core.ts`.
|
|
10
10
|
*/
|
|
11
11
|
import { OutboxClaimError, } from "@beignet/core/outbox";
|
|
12
|
+
import { parseTraceCarrier } from "@beignet/core/tracing";
|
|
12
13
|
/**
|
|
13
14
|
* Encode a timestamp for storage. All dialects store ISO-8601 UTC strings.
|
|
14
15
|
*/
|
|
@@ -33,15 +34,27 @@ export function parseNullableDate(value) {
|
|
|
33
34
|
export function parseLastError(value) {
|
|
34
35
|
return value ? JSON.parse(value) : null;
|
|
35
36
|
}
|
|
37
|
+
function parseStoredTrace(value) {
|
|
38
|
+
if (!value)
|
|
39
|
+
return undefined;
|
|
40
|
+
try {
|
|
41
|
+
return parseTraceCarrier(JSON.parse(value));
|
|
42
|
+
}
|
|
43
|
+
catch {
|
|
44
|
+
return undefined;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
36
47
|
/**
|
|
37
48
|
* Decode a raw outbox row into an `OutboxMessage`.
|
|
38
49
|
*/
|
|
39
50
|
export function rowToMessage(row) {
|
|
51
|
+
const trace = parseStoredTrace(row.trace_context_json);
|
|
40
52
|
return {
|
|
41
53
|
id: row.id,
|
|
42
54
|
kind: row.kind,
|
|
43
55
|
name: row.name,
|
|
44
56
|
payload: JSON.parse(row.payload_json),
|
|
57
|
+
...(trace ? { trace } : {}),
|
|
45
58
|
status: row.status,
|
|
46
59
|
attempts: row.attempts,
|
|
47
60
|
maxAttempts: row.max_attempts,
|
package/dist/shared/rows.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rows.js","sourceRoot":"","sources":["../../src/shared/rows.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAEL,gBAAgB,GAMjB,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"rows.js","sourceRoot":"","sources":["../../src/shared/rows.ts"],"names":[],"mappings":"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"}
|
package/dist/sqlite/index.d.ts
CHANGED
|
@@ -227,12 +227,14 @@ export interface SqliteConfig {
|
|
|
227
227
|
* Drizzle SQLite lifecycle provider with typed schema and port name.
|
|
228
228
|
*/
|
|
229
229
|
export type DrizzleSqliteProvider<TSchema extends Record<string, unknown>, PortName extends string = "db"> = ServiceProvider<unknown, AnyProviderConfigSchema<SqliteConfig>, Record<PortName, DbPort<TSchema>>>;
|
|
230
|
+
/** Drizzle SQLite provider backed by an app-supplied libSQL client. */
|
|
231
|
+
export type InjectedDrizzleSqliteProvider<TSchema extends Record<string, unknown>, PortName extends string = "db"> = ServiceProvider<unknown, AnyProviderConfigSchema<void>, Record<PortName, DbPort<TSchema>>>;
|
|
230
232
|
/**
|
|
231
233
|
* Options for creating a Drizzle SQLite provider.
|
|
232
234
|
*
|
|
233
235
|
* @template TSchema - The Drizzle schema type
|
|
234
236
|
*/
|
|
235
|
-
|
|
237
|
+
interface DrizzleSqliteProviderBaseOptions<TSchema extends Record<string, unknown>, PortName extends string = "db"> {
|
|
236
238
|
/**
|
|
237
239
|
* The Drizzle schema object (e.g. `import * as schema from '@/db/schema'`).
|
|
238
240
|
* This schema is used to create a typed Drizzle database instance.
|
|
@@ -246,6 +248,15 @@ export interface DrizzleSqliteProviderOptions<TSchema extends Record<string, unk
|
|
|
246
248
|
*/
|
|
247
249
|
portName?: PortName;
|
|
248
250
|
}
|
|
251
|
+
export type DrizzleSqliteProviderOptions<TSchema extends Record<string, unknown>, PortName extends string = "db"> = DrizzleSqliteProviderBaseOptions<TSchema, PortName> & ({
|
|
252
|
+
client?: never;
|
|
253
|
+
closeOnStop?: never;
|
|
254
|
+
} | {
|
|
255
|
+
/** App-supplied libSQL client, caller-owned by default. */
|
|
256
|
+
client: Client;
|
|
257
|
+
/** Close the injected client when the provider stops. @default false */
|
|
258
|
+
closeOnStop?: boolean;
|
|
259
|
+
});
|
|
249
260
|
/**
|
|
250
261
|
* Create a Drizzle SQLite provider factory.
|
|
251
262
|
*
|
|
@@ -268,5 +279,12 @@ export interface DrizzleSqliteProviderOptions<TSchema extends Record<string, unk
|
|
|
268
279
|
* export const drizzleSqliteProvider = createDrizzleSqliteProvider({ schema });
|
|
269
280
|
* ```
|
|
270
281
|
*/
|
|
271
|
-
export declare function createDrizzleSqliteProvider<TSchema extends Record<string, unknown>, PortName extends string = "db">(options:
|
|
282
|
+
export declare function createDrizzleSqliteProvider<TSchema extends Record<string, unknown>, PortName extends string = "db">(options: DrizzleSqliteProviderBaseOptions<TSchema, PortName> & {
|
|
283
|
+
client: Client;
|
|
284
|
+
closeOnStop?: boolean;
|
|
285
|
+
}): InjectedDrizzleSqliteProvider<TSchema, PortName>;
|
|
286
|
+
export declare function createDrizzleSqliteProvider<TSchema extends Record<string, unknown>, PortName extends string = "db">(options: DrizzleSqliteProviderBaseOptions<TSchema, PortName> & {
|
|
287
|
+
client?: never;
|
|
288
|
+
closeOnStop?: never;
|
|
289
|
+
}): DrizzleSqliteProvider<TSchema, PortName>;
|
|
272
290
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/sqlite/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,2BAA2B,EAEhC,KAAK,YAAY,EAEjB,KAAK,cAAc,EACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,KAAK,uBAAuB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/sqlite/index.ts"],"names":[],"mappings":"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"}
|
package/dist/sqlite/index.js
CHANGED
|
@@ -190,6 +190,7 @@ export function createDrizzleSqliteOutboxSetupStatements(options = {}) {
|
|
|
190
190
|
kind text NOT NULL,
|
|
191
191
|
name text NOT NULL,
|
|
192
192
|
payload_json text NOT NULL,
|
|
193
|
+
trace_context_json text,
|
|
193
194
|
status text NOT NULL,
|
|
194
195
|
attempts integer DEFAULT 0 NOT NULL,
|
|
195
196
|
max_attempts integer DEFAULT 3 NOT NULL,
|
|
@@ -321,30 +322,44 @@ const SqliteConfigSchema = z.object({
|
|
|
321
322
|
*/
|
|
322
323
|
DB_AUTH_TOKEN: z.string().optional(),
|
|
323
324
|
});
|
|
324
|
-
/**
|
|
325
|
-
* Create a Drizzle SQLite provider factory.
|
|
326
|
-
*
|
|
327
|
-
* This factory creates a service provider that:
|
|
328
|
-
* - Uses libSQL via @libsql/client, for local `file:` SQLite databases and
|
|
329
|
-
* Turso's hosted libSQL service
|
|
330
|
-
* - Uses Drizzle ORM via drizzle-orm/libsql
|
|
331
|
-
* - Exposes a typed DbPort<TSchema> on ports
|
|
332
|
-
* - Uses SQLITE_-prefixed env vars for connection config
|
|
333
|
-
*
|
|
334
|
-
* @template TSchema - The Drizzle schema type (inferred from the schema parameter)
|
|
335
|
-
* @param options - Configuration options including the schema
|
|
336
|
-
* @returns A service provider that can be used with createNextServer
|
|
337
|
-
*
|
|
338
|
-
* @example
|
|
339
|
-
* ```ts
|
|
340
|
-
* import * as schema from "@/db/schema";
|
|
341
|
-
* import { createDrizzleSqliteProvider } from "@beignet/provider-db-drizzle/sqlite";
|
|
342
|
-
*
|
|
343
|
-
* export const drizzleSqliteProvider = createDrizzleSqliteProvider({ schema });
|
|
344
|
-
* ```
|
|
345
|
-
*/
|
|
346
325
|
export function createDrizzleSqliteProvider(options) {
|
|
347
326
|
const { schema, portName = "db" } = options;
|
|
327
|
+
const setupClient = (ports, client, closeOnStop) => {
|
|
328
|
+
const instrumentation = createProviderInstrumentation(ports, {
|
|
329
|
+
providerName: "drizzle-sqlite",
|
|
330
|
+
watcher: "db",
|
|
331
|
+
});
|
|
332
|
+
const logger = createDbQueryLogger(instrumentation, portName);
|
|
333
|
+
const db = logger
|
|
334
|
+
? drizzle(client, { schema, logger })
|
|
335
|
+
: drizzle(client, { schema });
|
|
336
|
+
const dbPort = {
|
|
337
|
+
drizzle: db,
|
|
338
|
+
client,
|
|
339
|
+
checkHealth: () => checkSqliteHealth(client),
|
|
340
|
+
};
|
|
341
|
+
return {
|
|
342
|
+
ports: { [portName]: dbPort },
|
|
343
|
+
async stop() {
|
|
344
|
+
if (!closeOnStop)
|
|
345
|
+
return;
|
|
346
|
+
try {
|
|
347
|
+
await client.close();
|
|
348
|
+
}
|
|
349
|
+
catch (error) {
|
|
350
|
+
console.error("[drizzleSqliteProvider] Error closing database connection:", error);
|
|
351
|
+
}
|
|
352
|
+
},
|
|
353
|
+
};
|
|
354
|
+
};
|
|
355
|
+
if (options.client) {
|
|
356
|
+
return createProvider({
|
|
357
|
+
name: "drizzle-sqlite",
|
|
358
|
+
setup({ ports }) {
|
|
359
|
+
return setupClient(ports, options.client, options.closeOnStop ?? false);
|
|
360
|
+
},
|
|
361
|
+
});
|
|
362
|
+
}
|
|
348
363
|
return createProvider({
|
|
349
364
|
name: "drizzle-sqlite",
|
|
350
365
|
config: {
|
|
@@ -360,34 +375,7 @@ export function createDrizzleSqliteProvider(options) {
|
|
|
360
375
|
url: config.DB_URL,
|
|
361
376
|
authToken: config.DB_AUTH_TOKEN,
|
|
362
377
|
});
|
|
363
|
-
|
|
364
|
-
providerName: "drizzle-sqlite",
|
|
365
|
-
watcher: "db",
|
|
366
|
-
});
|
|
367
|
-
const logger = createDbQueryLogger(instrumentation, portName);
|
|
368
|
-
// 2. Create typed Drizzle instance
|
|
369
|
-
const db = logger
|
|
370
|
-
? drizzle(client, { schema, logger })
|
|
371
|
-
: drizzle(client, { schema });
|
|
372
|
-
// 3. Build a typed DbPort
|
|
373
|
-
const dbPort = {
|
|
374
|
-
drizzle: db,
|
|
375
|
-
client,
|
|
376
|
-
checkHealth: () => checkSqliteHealth(client),
|
|
377
|
-
};
|
|
378
|
-
return {
|
|
379
|
-
ports: { [portName]: dbPort },
|
|
380
|
-
async stop() {
|
|
381
|
-
// Gracefully close the database connection
|
|
382
|
-
try {
|
|
383
|
-
await dbPort.client.close();
|
|
384
|
-
}
|
|
385
|
-
catch (error) {
|
|
386
|
-
// Log error but don't throw - we're shutting down anyway
|
|
387
|
-
console.error("[drizzleSqliteProvider] Error closing database connection:", error);
|
|
388
|
-
}
|
|
389
|
-
},
|
|
390
|
-
};
|
|
378
|
+
return setupClient(ports, client, true);
|
|
391
379
|
},
|
|
392
380
|
});
|
|
393
381
|
}
|
package/dist/sqlite/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/sqlite/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAIH,OAAO,EAGL,yBAAyB,GAI1B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAEL,cAAc,EACd,6BAA6B,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/sqlite/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAIH,OAAO,EAGL,yBAAyB,GAI1B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAEL,cAAc,EACd,6BAA6B,GAG9B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAe,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAA6C,GAAG,EAAE,MAAM,aAAa,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAuB,MAAM,oBAAoB,CAAC;AAGlE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,yBAAyB,EACzB,oBAAoB,GAErB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAiB,aAAa,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,EACL,yBAAyB,EACzB,qCAAqC,GAEtC,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EACL,yBAAyB,EACzB,oBAAoB,GAGrB,MAAM,0BAA0B,CAAC;AAkDlC,MAAM,sBAAsB,GAAG,IAAI,OAAO,EAAyB,CAAC;AAEpE;;;;GAIG;AACH,SAAS,8BAA8B,CACrC,EAAU,EACV,WAAkC;IAElC,MAAM,QAAQ,GAAG,sBAAsB,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IACrE,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC1C,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CACtB,GAAG,EAAE,CAAC,SAAS,EACf,GAAG,EAAE,CAAC,SAAS,CAChB,CAAC;IACF,sBAAsB,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IAErC,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE;QACzB,IAAI,sBAAsB,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC;YAC5C,sBAAsB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACpC,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,MAAc;IAC7C,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACjC,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC9B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,aAAa,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACxC,CAAC;AACH,CAAC;AAoCD;;;;;;GAMG;AACH,MAAM,UAAU,6BAA6B,CAI3C,OAAyD;IAEzD,OAAO;QACL,KAAK,CAAC,WAAW,CACf,IAAyC;YAEzC,MAAM,MAAM,GAAG,yBAAyB,EAAE,CAAC;YAE3C,MAAM,MAAM,GAAG,MAAM,8BAA8B,CAAC,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,CACnE,OAAO,CAAC,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;gBAClC,MAAM,OAAO,GAAG,OAAO,CAAC,sBAAsB,CAC5C,EAAuC,EACvC,MAAM,CACP,CAAC;gBACF,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC;YACvB,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAC9B,CAAC;YAEF,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;gBACrB,MAAM,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACvC,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;KACF,CAAC;AACJ,CAAC;AAeD;;;;;GAKG;AACH,MAAM,UAAU,0CAA0C,CACxD,UAAwC,EAAE;IAE1C,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,WAAW,CAAC;IACnD,MAAM,KAAK,GAAG,eAAe,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IAC9C,MAAM,WAAW,GAAG,SAAS,CAAC,UAAU,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;IAEhE,OAAO;QACL,8BAA8B,KAAK;;;;;;;;;;;;;;;;;;;;MAoBjC;QACF,8BAA8B,eAAe,CAAC,GAAG,WAAW,aAAa,EAAE,GAAG,CAAC,OAAO,KAAK,WAAW;QACtG,8BAA8B,eAAe,CAAC,GAAG,WAAW,YAAY,EAAE,GAAG,CAAC,OAAO,KAAK,yBAAyB;QACnH,8BAA8B,eAAe,CAAC,GAAG,WAAW,kBAAkB,EAAE,GAAG,CAAC,OAAO,KAAK,gBAAgB;QAChH,8BAA8B,eAAe,CAAC,GAAG,WAAW,cAAc,EAAE,GAAG,CAAC,OAAO,KAAK,eAAe;QAC3G,8BAA8B,eAAe,CAAC,GAAG,WAAW,eAAe,EAAE,GAAG,CAAC,OAAO,KAAK,+BAA+B;QAC5H,8BAA8B,eAAe,CAAC,GAAG,WAAW,aAAa,EAAE,GAAG,CAAC,OAAO,KAAK,cAAc;KAC1G,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,+BAA+B,CAG7C,EAAkC,EAClC,iBAA+C,EAAE;IAEjD,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CACnB,eAAe,CAAC,cAAc,CAAC,SAAS,IAAI,WAAW,EAAE,GAAG,CAAC,CAC9D,CAAC;IAEF,OAAO;QACL,KAAK,CAAC,MAAM,CAAC,KAAK;YAChB,MAAM,EAAE,CAAC,GAAG,CACV,yBAAyB,CACvB,KAAK,EACL,oBAAoB,CAAC,KAAK,EAAE,cAAc,CAAC,CAC5C,CACF,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC;AAmBD,SAAS,gBAAgB,CAAC,MAAe;IACvC,MAAM,YAAY,GAAI,MAAqC,CAAC,YAAY,CAAC;IACzE,OAAO,OAAO,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC;AACrE,CAAC;AAaD,SAAS,oBAAoB,CAC3B,EAAkC,EAClC,KAAU;IAEV,OAAO;QACL,KAAK;QACL,wEAAwE;QACxE,eAAe,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;QAC5B,YAAY,EAAE,GAAG,CAAC,GAAG,CAAC,uBAAuB,CAAC;QAC9C,oBAAoB,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;QAEjC,KAAK,CAAC,IAAI,CAAC,KAAK;YACd,OAAO,EAAE,CAAC,GAAG,CAA0B,KAAK,CAAC,CAAC;QAChD,CAAC;QAED,KAAK,CAAC,GAAG,CAAC,KAAK;YACb,IAAI,KAAK,IAAI,EAAE,IAAI,OAAO,EAAE,CAAC,GAAG,KAAK,UAAU,EAAE,CAAC;gBAChD,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,GAAG,CAA0B,KAAK,CAAC,CAAC;gBAC1D,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC;YACjB,CAAC;YAED,OAAO,EAAE,CAAC,GAAG,CAAsC,KAAK,CAAC,CAAC;QAC5D,CAAC;QAED,KAAK,CAAC,GAAG,CAAC,KAAK;YACb,OAAO,gBAAgB,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;QAC/C,CAAC;QAED,eAAe,CAAC,EAAE;YAChB,IAAI,aAAa,IAAI,EAAE,IAAI,OAAO,EAAE,CAAC,WAAW,KAAK,UAAU,EAAE,CAAC;gBAChE,OAAO,8BAA8B,CAAC,EAAE,EAAE,GAAG,EAAE,CAC7C,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,CACpB,EAAE,CACA,oBAAoB,CAAC,EAAoC,EAAE,KAAK,CAAC,CAClE,CACF,CACF,CAAC;YACJ,CAAC;YAED,OAAO,SAAS,CAAC;QACnB,CAAC;KACF,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,wCAAwC,CACtD,UAAsC,EAAE;IAExC,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,iBAAiB,CAAC;IACzD,MAAM,KAAK,GAAG,eAAe,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IAC9C,MAAM,WAAW,GAAG,SAAS,CAAC,UAAU,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;IAEhE,OAAO;QACL,8BAA8B,KAAK;;;;;;;;;;;;;;;;;MAiBjC;QACF,8BAA8B,eAAe,CAAC,GAAG,WAAW,gBAAgB,EAAE,GAAG,CAAC,OAAO,KAAK,yBAAyB;QACvH,8BAA8B,eAAe,CAAC,GAAG,WAAW,aAAa,EAAE,GAAG,CAAC,OAAO,KAAK,yBAAyB;KACrH,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,6BAA6B,CAG3C,EAAkC,EAClC,iBAA6C,EAAE;IAE/C,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CACnB,eAAe,CAAC,cAAc,CAAC,SAAS,IAAI,iBAAiB,EAAE,GAAG,CAAC,CACpE,CAAC;IACF,MAAM,QAAQ,GAAsB,oBAAoB,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IAEpE,OAAO,oBAAoB,CAAC,QAAQ,EAAE,EAAE,GAAG,EAAE,cAAc,CAAC,GAAG,EAAE,CAAC,CAAC;AACrE,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kCAAkC,CAGhD,EAAkC,EAClC,iBAA6C,EAAE;IAE/C,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CACnB,eAAe,CAAC,cAAc,CAAC,SAAS,IAAI,iBAAiB,EAAE,GAAG,CAAC,CACpE,CAAC;IACF,MAAM,QAAQ,GAAsB,oBAAoB,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IAEpE,OAAO,yBAAyB,CAAC,QAAQ,EAAE,EAAE,GAAG,EAAE,cAAc,CAAC,GAAG,EAAE,CAAC,CAAC;AAC1E,CAAC;AAmBD;;;;;;;GAOG;AACH,MAAM,OAAO,qCAAsC,SAAQ,KAAK;IACrD,MAAM,CAAsB;IAC5B,SAAS,CAAS;IAClB,GAAG,CAAS;IACZ,QAAQ,CAAS;IAE1B,YAAY,IAKX;QACC,KAAK,CAAC,qCAAqC,CAAC,IAAI,CAAC,CAAC,CAAC;QACnD,IAAI,CAAC,IAAI,GAAG,uCAAuC,CAAC;QACpD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAChC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;QACpB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IAChC,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,UAAU,6CAA6C,CAC3D,UAA2C,EAAE;IAE7C,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,qBAAqB,CAAC;IAC7D,MAAM,KAAK,GAAG,eAAe,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IAC9C,MAAM,WAAW,GAAG,SAAS,CAAC,UAAU,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;IAEhE,OAAO;QACL,8BAA8B,KAAK;;;;;;;;;;;;MAYjC;QACF,8BAA8B,eAAe,CAAC,GAAG,WAAW,aAAa,EAAE,GAAG,CAAC,OAAO,KAAK,0CAA0C;QACrI,8BAA8B,eAAe,CAAC,GAAG,WAAW,cAAc,EAAE,GAAG,CAAC,OAAO,KAAK,eAAe;KAC5G,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,kCAAkC,CAGhD,EAAkC,EAClC,iBAAkD,EAAE;IAEpD,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CACnB,eAAe,CAAC,cAAc,CAAC,SAAS,IAAI,qBAAqB,EAAE,GAAG,CAAC,CACxE,CAAC;IACF,MAAM,QAAQ,GAA2B,oBAAoB,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IAEzE,OAAO,yBAAyB,CAC9B,QAAQ,EACR,EAAE,GAAG,EAAE,cAAc,CAAC,GAAG,EAAE,EAC3B,qCAAqC,CACtC,CAAC;AACJ,CAAC;AAED,MAAM,sBAAsB,GAAG;IAC7B,WAAW;IACX,OAAO;IACP,SAAS;IACT,UAAU;IACV,OAAO;IACP,QAAQ;CACA,CAAC;AAEX;;;GAGG;AACH,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC;;;;;OAKG;IACH,MAAM,EAAE,CAAC;SACN,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,MAAM,CACL,CAAC,GAAG,EAAE,EAAE,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,EACxE;QACE,OAAO,EACL,8KAA8K;KACjL,CACF;IAEH;;;OAGG;IACH,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACrC,CAAmC,CAAC;AAiHrC,MAAM,UAAU,2BAA2B,CAIzC,OAAwD;IAIxD,MAAM,EAAE,MAAM,EAAE,QAAQ,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;IAE5C,MAAM,WAAW,GAAG,CAClB,KAAc,EACd,MAAc,EACd,WAAoB,EACpB,EAAE;QACF,MAAM,eAAe,GAAG,6BAA6B,CACnD,KAAsC,EACtC;YACE,YAAY,EAAE,gBAAgB;YAC9B,OAAO,EAAE,IAAI;SACd,CACF,CAAC;QACF,MAAM,MAAM,GAAG,mBAAmB,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;QAC9D,MAAM,EAAE,GAA4B,MAAM;YACxC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;YACrC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QAChC,MAAM,MAAM,GAAoB;YAC9B,OAAO,EAAE,EAAE;YACX,MAAM;YACN,WAAW,EAAE,GAAG,EAAE,CAAC,iBAAiB,CAAC,MAAM,CAAC;SAC7C,CAAC;QAEF,OAAO;YACL,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAuC;YAClE,KAAK,CAAC,IAAI;gBACR,IAAI,CAAC,WAAW;oBAAE,OAAO;gBACzB,IAAI,CAAC;oBACH,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;gBACvB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,KAAK,CACX,4DAA4D,EAC5D,KAAK,CACN,CAAC;gBACJ,CAAC;YACH,CAAC;SACF,CAAC;IACJ,CAAC,CAAC;IAEF,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,OAAO,cAAc,CAInB;YACA,IAAI,EAAE,gBAAgB;YACtB,KAAK,CAAC,EAAE,KAAK,EAAE;gBACb,OAAO,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,WAAW,IAAI,KAAK,CAAC,CAAC;YAC1E,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAED,OAAO,cAAc,CAAC;QACpB,IAAI,EAAE,gBAAgB;QAEtB,MAAM,EAAE;YACN,MAAM,EAAE,kBAAkB;YAC1B,SAAS,EAAE,SAAS;SACrB;QAED,KAAK,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE;YAC3B,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,IAAI,KAAK,CACb,gGAAgG,CACjG,CAAC;YACJ,CAAC;YAED,0BAA0B;YAC1B,MAAM,MAAM,GAAW,YAAY,CAAC;gBAClC,GAAG,EAAE,MAAM,CAAC,MAAM;gBAClB,SAAS,EAAE,MAAM,CAAC,aAAa;aAChC,CAAC,CAAC;YAEH,OAAO,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;QAC1C,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
|
package/dist/sqlite/schema.d.ts
CHANGED
|
@@ -446,6 +446,25 @@ export declare const outboxMessages: import("drizzle-orm/sqlite-core").SQLiteTab
|
|
|
446
446
|
}, {}, {
|
|
447
447
|
length: number | undefined;
|
|
448
448
|
}>;
|
|
449
|
+
traceContextJson: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
450
|
+
name: "trace_context_json";
|
|
451
|
+
tableName: "outbox_messages";
|
|
452
|
+
dataType: "string";
|
|
453
|
+
columnType: "SQLiteText";
|
|
454
|
+
data: string;
|
|
455
|
+
driverParam: string;
|
|
456
|
+
notNull: false;
|
|
457
|
+
hasDefault: false;
|
|
458
|
+
isPrimaryKey: false;
|
|
459
|
+
isAutoincrement: false;
|
|
460
|
+
hasRuntimeDefault: false;
|
|
461
|
+
enumValues: [string, ...string[]];
|
|
462
|
+
baseColumn: never;
|
|
463
|
+
identity: undefined;
|
|
464
|
+
generated: undefined;
|
|
465
|
+
}, {}, {
|
|
466
|
+
length: number | undefined;
|
|
467
|
+
}>;
|
|
449
468
|
status: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
450
469
|
name: "status";
|
|
451
470
|
tableName: "outbox_messages";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/sqlite/schema.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkCpB,CAAC;AAEF,eAAO,MAAM,cAAc
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/sqlite/schema.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkCpB,CAAC;AAEF,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8B1B,CAAC;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuB9B,CAAC"}
|
package/dist/sqlite/schema.js
CHANGED
|
@@ -32,6 +32,7 @@ export const outboxMessages = sqliteTable("outbox_messages", {
|
|
|
32
32
|
kind: text("kind").notNull(),
|
|
33
33
|
name: text("name").notNull(),
|
|
34
34
|
payloadJson: text("payload_json").notNull(),
|
|
35
|
+
traceContextJson: text("trace_context_json"),
|
|
35
36
|
status: text("status").notNull(),
|
|
36
37
|
attempts: integer("attempts").notNull().default(0),
|
|
37
38
|
maxAttempts: integer("max_attempts").notNull().default(3),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/sqlite/schema.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/sqlite/schema.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@beignet/provider-db-drizzle",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.38",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Drizzle ORM database providers for Beignet — typed DbPort, unit of work, audit logs, outbox, and idempotency for SQLite (libSQL/Turso), Postgres, and MySQL.",
|
|
6
6
|
"exports": {
|
|
@@ -44,8 +44,9 @@
|
|
|
44
44
|
"prepack": "bun run build",
|
|
45
45
|
"dev": "tsc --watch",
|
|
46
46
|
"clean": "rm -rf dist coverage .turbo",
|
|
47
|
-
"test": "bun test",
|
|
47
|
+
"test": "bun test && bun run typecheck:types",
|
|
48
48
|
"test:coverage": "bun test --coverage",
|
|
49
|
+
"typecheck:types": "tsc -p tsconfig.type-tests.json",
|
|
49
50
|
"lint": "biome check ."
|
|
50
51
|
},
|
|
51
52
|
"keywords": [
|
|
@@ -27,6 +27,7 @@ policies, routes, and UI should keep depending on app-owned ports.
|
|
|
27
27
|
Keep Drizzle schema and migrations in the app, normally:
|
|
28
28
|
|
|
29
29
|
```txt
|
|
30
|
+
infra/db/client.ts
|
|
30
31
|
infra/db/schema/
|
|
31
32
|
drizzle/
|
|
32
33
|
drizzle.config.ts
|
|
@@ -54,9 +55,13 @@ and register it before app-local providers that require `ctx.ports.db`.
|
|
|
54
55
|
|
|
55
56
|
```ts
|
|
56
57
|
import { createDrizzleSqliteProvider } from "@beignet/provider-db-drizzle/sqlite";
|
|
58
|
+
import { databaseClient } from "@/infra/db/client";
|
|
57
59
|
import * as schema from "@/infra/db/schema";
|
|
58
60
|
|
|
59
|
-
const drizzleSqliteProvider = createDrizzleSqliteProvider({
|
|
61
|
+
const drizzleSqliteProvider = createDrizzleSqliteProvider({
|
|
62
|
+
schema,
|
|
63
|
+
client: databaseClient,
|
|
64
|
+
});
|
|
60
65
|
|
|
61
66
|
export const providers = [drizzleSqliteProvider] as const;
|
|
62
67
|
```
|
|
@@ -67,6 +72,27 @@ Provider env vars:
|
|
|
67
72
|
- Postgres: `POSTGRES_DB_URL`
|
|
68
73
|
- MySQL: `MYSQL_DB_URL`
|
|
69
74
|
|
|
75
|
+
Generated apps create one module-scoped client in `infra/db/client.ts` and
|
|
76
|
+
share it between Better Auth and the Drizzle provider. Injected clients are
|
|
77
|
+
caller-owned unless `closeOnStop: true` explicitly delegates shutdown. Keep a
|
|
78
|
+
client shared with auth caller-owned because server initialization can fail,
|
|
79
|
+
clean up providers, and retry against that same module-scoped client. Use
|
|
80
|
+
`closeOnStop` only for a client owned exclusively by one server. Generated
|
|
81
|
+
`server/index.ts` wraps the successfully created server's public `stop()` and
|
|
82
|
+
then calls an idempotent `closeDatabaseClient()` so operational commands exit
|
|
83
|
+
without breaking failed-boot retries. When a provider creates its own
|
|
84
|
+
env-backed client, the provider always closes it.
|
|
85
|
+
|
|
86
|
+
If a custom injected client does not use the provider's standard URL env var,
|
|
87
|
+
list that exact variable under `providerAudit.ignoreRequiredEnv` in
|
|
88
|
+
`beignet.config.ts`. The exception affects static CLI audit only.
|
|
89
|
+
|
|
90
|
+
Postgres and MySQL starters expose `POSTGRES_DB_POOL_MAX` or
|
|
91
|
+
`MYSQL_DB_POOL_MAX`, defaulting to `5`. Size that value from the database
|
|
92
|
+
connection limit divided across maximum web, worker, preview, task, and
|
|
93
|
+
migration process concurrency. In serverless deployments, keep each instance's
|
|
94
|
+
pool small and use a provider-managed pooled endpoint when available.
|
|
95
|
+
|
|
70
96
|
`beignet doctor --strict` checks required env, provider registration,
|
|
71
97
|
Drizzle config, schema exports, scripts, seed/reset entrypoints, and
|
|
72
98
|
registration drift in generated apps.
|
|
@@ -156,6 +182,8 @@ the current transaction unless rebuilt from `tx`.
|
|
|
156
182
|
dependency for contracts, use cases, policies, routes, or UI.
|
|
157
183
|
- Register Drizzle before app-local providers that call `ports.db.drizzle` in
|
|
158
184
|
`setup(...)`.
|
|
185
|
+
- Do not create database clients in routes or context factories. Cache the
|
|
186
|
+
server and database client at module scope so warm requests reuse them.
|
|
159
187
|
- Operational ports must be rebuilt from `tx` when they need to commit with
|
|
160
188
|
the business write.
|
|
161
189
|
- SQLite is a single-writer backend. Beignet queues its own Unit of Work,
|