@mastra/libsql 1.25.2-alpha.1 → 1.26.0-alpha.3
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/_types/@internal_core/dist/knowledge-compat/index.d.ts +594 -0
- package/dist/_types/@internal_core/package.json +1 -0
- package/dist/docs/SKILL.md +1 -1
- package/dist/docs/assets/SOURCE_MAP.json +1 -1
- package/dist/docs/references/docs-memory-message-history.md +15 -8
- package/dist/docs/references/reference-core-mastra-class.md +12 -4
- package/dist/docs/references/reference-storage-retention.md +21 -18
- package/dist/index.cjs +2048 -292
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +2049 -293
- package/dist/index.js.map +1 -1
- package/dist/shared/file-transaction-gate.d.ts +28 -0
- package/dist/shared/file-transaction-gate.d.ts.map +1 -0
- package/dist/shared/reset-after-busy-client.d.ts +34 -0
- package/dist/shared/reset-after-busy-client.d.ts.map +1 -0
- package/dist/storage/db/index.d.ts +14 -6
- package/dist/storage/db/index.d.ts.map +1 -1
- package/dist/storage/db/run-fencing.d.ts +41 -0
- package/dist/storage/db/run-fencing.d.ts.map +1 -0
- package/dist/storage/db/utils.d.ts.map +1 -1
- package/dist/storage/domains/knowledge/index.d.ts +30 -7
- package/dist/storage/domains/knowledge/index.d.ts.map +1 -1
- package/dist/storage/domains/memory/index.d.ts +21 -7
- package/dist/storage/domains/memory/index.d.ts.map +1 -1
- package/dist/storage/domains/workflows/index.d.ts +21 -6
- package/dist/storage/domains/workflows/index.d.ts.map +1 -1
- package/dist/storage/factory-storage.d.ts.map +1 -1
- package/dist/storage/index.d.ts +6 -0
- package/dist/storage/index.d.ts.map +1 -1
- package/dist/storage/retention.d.ts +3 -3
- package/dist/storage/retention.d.ts.map +1 -1
- package/dist/vector/index.d.ts.map +1 -1
- package/package.json +5 -4
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { Client } from '@libsql/client';
|
|
2
|
+
/** The database file a local `file:` url points at, or `undefined` for anything else. */
|
|
3
|
+
export declare function localDatabaseFileKey(url: string): string | undefined;
|
|
4
|
+
/**
|
|
5
|
+
* Wraps a local `file:` client so its calls wait for interactive transactions
|
|
6
|
+
* that other clients in this process hold open on the same database file,
|
|
7
|
+
* instead of blocking the thread.
|
|
8
|
+
*
|
|
9
|
+
* `@libsql/client` runs local statements synchronously. When one client holds
|
|
10
|
+
* a write transaction open across an `await` and another client writes the same
|
|
11
|
+
* file, SQLite's busy handler spins on the event loop's only thread for
|
|
12
|
+
* `busy_timeout`, so the transaction holding the lock can't resume and the write
|
|
13
|
+
* fails with `SQLITE_BUSY`. Waiting lets the transaction finish first.
|
|
14
|
+
*
|
|
15
|
+
* Only calls on other clients wait; a client already orders its own writes
|
|
16
|
+
* behind its transactions (see `withClientWriteLock`). A call waits at most
|
|
17
|
+
* `maxWaitMs` (the busy timeout), then goes ahead as it would without the gate,
|
|
18
|
+
* so code that awaits another client from inside its own transaction can't hang.
|
|
19
|
+
* Clients in other processes are unaffected and still rely on `busy_timeout`.
|
|
20
|
+
*/
|
|
21
|
+
export declare function gateLocalFileClient(client: Client, key: string, { maxWaitMs }?: {
|
|
22
|
+
maxWaitMs?: number | undefined;
|
|
23
|
+
}): Client;
|
|
24
|
+
/** Applies {@link gateLocalFileClient} when `url` is a local database file; returns `client` otherwise. */
|
|
25
|
+
export declare function gateIfLocalFile(client: Client, url: string, options?: {
|
|
26
|
+
maxWaitMs?: number;
|
|
27
|
+
}): Client;
|
|
28
|
+
//# sourceMappingURL=file-transaction-gate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-transaction-gate.d.ts","sourceRoot":"","sources":["../../src/shared/file-transaction-gate.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAgC,MAAM,gBAAgB,CAAC;AAU3E,yFAAyF;AACzF,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAIpE;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,SAAiB,EAAE;;CAAK,GAAG,MAAM,CA2HnG;AAED,2GAA2G;AAC3G,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAGrG"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { Client } from '@libsql/client';
|
|
2
|
+
/**
|
|
3
|
+
* Wraps a pooled local `file:` client so a statement refused with `SQLITE_BUSY`
|
|
4
|
+
* doesn't leave its connection unusable.
|
|
5
|
+
*
|
|
6
|
+
* libsql leaves a write statement whose run failed busy in progress until it is
|
|
7
|
+
* garbage collected (tursodatabase/libsql-js#237). Until then no transaction on
|
|
8
|
+
* that connection can commit ("cannot commit transaction - SQL statements in
|
|
9
|
+
* progress"), and an autocommit write on it stays uncommitted while holding the
|
|
10
|
+
* database's write lock. The pool hands the same connection out again, so
|
|
11
|
+
* retrying the write doesn't help.
|
|
12
|
+
*
|
|
13
|
+
* After a busy failure the wrapper reopens the client's connections, which
|
|
14
|
+
* finalizes the stuck statement. Reopening closes every connection, including
|
|
15
|
+
* borrowed ones, so it waits until no call or transaction made through the
|
|
16
|
+
* wrapper is in flight. New calls wait for the reset rather than join the calls
|
|
17
|
+
* it waits for, so a client that is never idle still gets reset. A call made
|
|
18
|
+
* while its caller holds an open transaction, or from inside another call,
|
|
19
|
+
* doesn't wait: the reset waits for what its caller holds, so waiting would
|
|
20
|
+
* deadlock. Reopened connections start from the pool's connection options,
|
|
21
|
+
* so `afterReset` runs right after to restore any per-connection settings
|
|
22
|
+
* applied after opening, and calls that waited for the reset go on once it
|
|
23
|
+
* settles, even if it fails. A call waits at most `maxWaitMs` (default 5s, the
|
|
24
|
+
* busy timeout) so a long-held transaction can't stall every later call; after
|
|
25
|
+
* that it goes ahead on the current pool. A transaction SQLite rolled back on its
|
|
26
|
+
* own is released as soon as the failing call returns. It must use the client it was given, not the
|
|
27
|
+
* wrapper: calls through the wrapper would wait for the reset it is part of.
|
|
28
|
+
* Every other member passes through untouched.
|
|
29
|
+
*/
|
|
30
|
+
export declare function resetConnectionsAfterBusy(client: Client, { afterReset, maxWaitMs }?: {
|
|
31
|
+
afterReset?: () => void | Promise<void>;
|
|
32
|
+
maxWaitMs?: number;
|
|
33
|
+
}): Client;
|
|
34
|
+
//# sourceMappingURL=reset-after-busy-client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reset-after-busy-client.d.ts","sourceRoot":"","sources":["../../src/shared/reset-after-busy-client.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAgC,MAAM,gBAAgB,CAAC;AAoB3E;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,MAAM,EACd,EAAE,UAAU,EAAE,SAAiB,EAAE,GAAE;IAAE,UAAU,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAO,GACtG,MAAM,CAyMR"}
|
|
@@ -1,10 +1,15 @@
|
|
|
1
1
|
import { MastraBase } from '@mastra/core/base';
|
|
2
|
-
import type { TABLE_NAMES, StorageColumn } from '@mastra/core/storage';
|
|
2
|
+
import type { KNOWLEDGE_TABLE_NAME, TABLE_NAMES, TABLE_MEMORY_RUN_FENCES, TABLE_WORKFLOW_RUN_OWNERS, StorageColumn } from '@mastra/core/storage';
|
|
3
3
|
import type { SqliteClient as Client, SqliteInValue as InValue } from './client.js';
|
|
4
|
+
import type { RunFenceCheck } from './run-fencing.js';
|
|
5
|
+
/** Tables retention can prune: the core tables plus the run fencing tables, which aren't in TABLE_NAMES. */
|
|
6
|
+
export type PrunableTable = TABLE_NAMES | typeof TABLE_WORKFLOW_RUN_OWNERS | typeof TABLE_MEMORY_RUN_FENCES;
|
|
4
7
|
/**
|
|
5
8
|
* Base configuration options shared across LibSQL domain configurations
|
|
6
9
|
*/
|
|
7
10
|
export type LibSQLDomainBaseConfig = {
|
|
11
|
+
/** @internal Identifies the physical backend and namespace for keyed Knowledge isolation. */
|
|
12
|
+
storageIsolationKey?: unknown;
|
|
8
13
|
/**
|
|
9
14
|
* Maximum number of retries for write operations if an SQLITE_BUSY error occurs.
|
|
10
15
|
* @default 5
|
|
@@ -92,10 +97,12 @@ export declare class LibSQLDB extends MastraBase {
|
|
|
92
97
|
* @param args - The insert arguments
|
|
93
98
|
* @param args.tableName - The name of the table to insert into
|
|
94
99
|
* @param args.record - The record to insert (key-value pairs)
|
|
100
|
+
* @param args.check - The run fence the insert must carry, if any
|
|
95
101
|
*/
|
|
96
102
|
insert(args: {
|
|
97
103
|
tableName: TABLE_NAMES;
|
|
98
104
|
record: Record<string, any>;
|
|
105
|
+
check?: RunFenceCheck;
|
|
99
106
|
}): Promise<void>;
|
|
100
107
|
/** Inserts a record without replacing an existing primary key. */
|
|
101
108
|
insertOnly(args: {
|
|
@@ -255,10 +262,11 @@ export declare class LibSQLDB extends MastraBase {
|
|
|
255
262
|
* @param args.tableName - The name of the table to create
|
|
256
263
|
* @param args.schema - The schema definition for the table columns
|
|
257
264
|
*/
|
|
258
|
-
createTable({ tableName, schema, compositePrimaryKey, }: {
|
|
259
|
-
tableName: TABLE_NAMES;
|
|
265
|
+
createTable({ tableName, schema, compositePrimaryKey, executor, }: {
|
|
266
|
+
tableName: TABLE_NAMES | KNOWLEDGE_TABLE_NAME;
|
|
260
267
|
schema: Record<string, StorageColumn>;
|
|
261
268
|
compositePrimaryKey?: string[];
|
|
269
|
+
executor?: Pick<Client, 'execute'>;
|
|
262
270
|
}): Promise<void>;
|
|
263
271
|
/**
|
|
264
272
|
* Migrates the spans table schema from OLD_SPAN_SCHEMA to current SPAN_SCHEMA.
|
|
@@ -320,7 +328,7 @@ export declare class LibSQLDB extends MastraBase {
|
|
|
320
328
|
* @param args.ifNotExists - Array of column names to add if they don't exist
|
|
321
329
|
*/
|
|
322
330
|
alterTable({ tableName, schema, ifNotExists, }: {
|
|
323
|
-
tableName: TABLE_NAMES;
|
|
331
|
+
tableName: TABLE_NAMES | KNOWLEDGE_TABLE_NAME;
|
|
324
332
|
schema: Record<string, StorageColumn>;
|
|
325
333
|
ifNotExists: string[];
|
|
326
334
|
}): Promise<void>;
|
|
@@ -344,7 +352,7 @@ export declare class LibSQLDB extends MastraBase {
|
|
|
344
352
|
* `column` to be fast at scale (see ensureIndex).
|
|
345
353
|
*/
|
|
346
354
|
pruneBatch({ tableName, column, cutoff, limit, }: {
|
|
347
|
-
tableName:
|
|
355
|
+
tableName: PrunableTable;
|
|
348
356
|
column: string;
|
|
349
357
|
/**
|
|
350
358
|
* Exclusive upper bound for the anchor column. Must match the column's
|
|
@@ -382,7 +390,7 @@ export declare class LibSQLDB extends MastraBase {
|
|
|
382
390
|
/** Create an index if it does not already exist. */
|
|
383
391
|
ensureIndex({ indexName, tableName, column, }: {
|
|
384
392
|
indexName: string;
|
|
385
|
-
tableName:
|
|
393
|
+
tableName: PrunableTable;
|
|
386
394
|
column: string;
|
|
387
395
|
}): Promise<void>;
|
|
388
396
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/storage/db/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAS/C,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/storage/db/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import type { RunFence } from '@mastra/core/storage';
|
|
2
|
+
import type { SqliteClient, SqliteResultSet, SqliteStatement, SqliteTransaction } from './client.js';
|
|
3
|
+
/** Runs statements against the client, or inside an open transaction. */
|
|
4
|
+
export interface SqliteWriter {
|
|
5
|
+
execute(statement: string | SqliteStatement): Promise<SqliteResultSet>;
|
|
6
|
+
/** Runs `statements` in order, all or nothing. */
|
|
7
|
+
batch(statements: SqliteStatement[]): Promise<SqliteResultSet[]>;
|
|
8
|
+
}
|
|
9
|
+
/** A write's fence, and the table holding the run's current claim to check it against. */
|
|
10
|
+
export interface RunFenceCheck {
|
|
11
|
+
claimsTable: string;
|
|
12
|
+
fence: RunFence;
|
|
13
|
+
operation: string;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Epoch milliseconds on the database clock. `julianday('now')` rather than
|
|
17
|
+
* `unixepoch('subsec')`, which needs SQLite 3.42 on the server.
|
|
18
|
+
*/
|
|
19
|
+
export declare const DB_NOW_MS = "CAST(ROUND((julianday('now') - 2440587.5) * 86400000) AS INTEGER)";
|
|
20
|
+
/**
|
|
21
|
+
* Runs `fn` in a write transaction, behind every other write on `client`.
|
|
22
|
+
* `'write'` opens the transaction with `BEGIN IMMEDIATE`, which takes the
|
|
23
|
+
* database's write lock up front, so nothing written between a read and a
|
|
24
|
+
* write inside `fn` can come from another connection.
|
|
25
|
+
*/
|
|
26
|
+
export declare function inWriteTransaction<T>(client: SqliteClient, fn: (tx: SqliteTransaction) => Promise<T>): Promise<T>;
|
|
27
|
+
/**
|
|
28
|
+
* The check half of a fenced write; call it first inside the write's
|
|
29
|
+
* transaction. The transaction already holds the database's write lock, so
|
|
30
|
+
* a claim can't commit between this check and the write.
|
|
31
|
+
*/
|
|
32
|
+
export declare function assertRunFence(tx: Pick<SqliteTransaction, 'execute'>, { claimsTable, fence, operation }: RunFenceCheck): Promise<void>;
|
|
33
|
+
/**
|
|
34
|
+
* Runs `write` behind the client's write lock: directly when there is no
|
|
35
|
+
* fence to check, or in a write transaction behind the check when there is.
|
|
36
|
+
* `write` must issue every statement through the writer it is given; on a
|
|
37
|
+
* single-connection client, a call on the client itself would wait for the
|
|
38
|
+
* open transaction forever.
|
|
39
|
+
*/
|
|
40
|
+
export declare function withRunFence<T>(client: SqliteClient, check: RunFenceCheck | undefined, write: (writer: SqliteWriter) => Promise<T>): Promise<T>;
|
|
41
|
+
//# sourceMappingURL=run-fencing.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-fencing.d.ts","sourceRoot":"","sources":["../../../src/storage/db/run-fencing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAGlG,yEAAyE;AACzE,MAAM,WAAW,YAAY;IAC3B,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IACvE,kDAAkD;IAClD,KAAK,CAAC,UAAU,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;CAClE;AAED,0FAA0F;AAC1F,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,QAAQ,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,eAAO,MAAM,SAAS,sEAAsE,CAAC;AAE7F;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,iBAAiB,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAcjH;AAED;;;;GAIG;AACH,wBAAsB,cAAc,CAClC,EAAE,EAAE,IAAI,CAAC,iBAAiB,EAAE,SAAS,CAAC,EACtC,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,aAAa,GAC/C,OAAO,CAAC,IAAI,CAAC,CAUf;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAC5B,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,aAAa,GAAG,SAAS,EAChC,KAAK,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,OAAO,CAAC,CAAC,CAAC,GAC1C,OAAO,CAAC,CAAC,CAAC,CAoBZ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/storage/db/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEvE,OAAO,KAAK,EAAE,aAAa,IAAI,OAAO,EAAE,MAAM,UAAU,CAAC;AAOzD;;;;;;;;;GASG;AACH,eAAO,MAAM,aAAa,UAAW,OAAO,KAAG,MAyD9C,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,WAAW,GAAG,MAAM,CAUjE;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAYzF;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAS/C;AAED,wBAAgB,oCAAoC,CAAC,EACnD,MAAM,EACN,UAAU,EACV,gBAAgB,GACjB,EAAE;IACD,MAAM,EAAE,aAAa,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;CAC1B,IACsD,CAAC,eACvC,MAAM,OAAO,CAAC,CAAC,CAAC,wBACP,MAAM,KAC3B,OAAO,CAAC,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/storage/db/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEvE,OAAO,KAAK,EAAE,aAAa,IAAI,OAAO,EAAE,MAAM,UAAU,CAAC;AAOzD;;;;;;;;;GASG;AACH,eAAO,MAAM,aAAa,UAAW,OAAO,KAAG,MAyD9C,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,WAAW,GAAG,MAAM,CAUjE;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAYzF;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAS/C;AAED,wBAAgB,oCAAoC,CAAC,EACnD,MAAM,EACN,UAAU,EACV,gBAAgB,GACjB,EAAE;IACD,MAAM,EAAE,aAAa,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;CAC1B,IACsD,CAAC,eACvC,MAAM,OAAO,CAAC,CAAC,CAAC,wBACP,MAAM,KAC3B,OAAO,CAAC,CAAC,CAAC,CA2Cd;AAED,wBAAgB,gBAAgB,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE;IAAE,SAAS,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAAE,GAAG;IAChH,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,OAAO,EAAE,CAAC;CACjB,CAkCA;AAED,wBAAgB,sBAAsB,CAAC,EACrC,SAAS,EACT,OAAO,EACP,IAAI,GACL,EAAE;IACD,SAAS,EAAE,WAAW,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC7B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC3B,GAAG;IACF,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,OAAO,EAAE,CAAC;CACjB,CA6BA;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,GAAG,EAAE,kBAAkB,GAAE,OAAe,GAAG,OAAO,CAc5F;AAED,wBAAgB,sBAAsB,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE;IAAE,SAAS,EAAE,WAAW,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAAE,GAAG;IAClH,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,OAAO,EAAE,CAAC;CACjB,CAQA;AAED,KAAK,UAAU,GAAG,OAAO,GAAG;IAAE,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAEnE,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,EACnC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,GACpC;IACD,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,OAAO,EAAE,CAAC;CACjB,CAqBA;AA+CD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,EACrC,SAAS,EACT,MAAM,GACP,EAAE;IACD,SAAS,EAAE,WAAW,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC7B,GAAG,CAAC,CA2CJ"}
|
|
@@ -1,11 +1,30 @@
|
|
|
1
|
+
import type { ListKnowledgeScopeMembersInput, ListKnowledgeScopeMembersOutput, ListKnowledgeScopeNodesInput, ListKnowledgeScopeNodesOutput } from '../../../_types/@internal_core/dist/knowledge-compat/index.js';
|
|
1
2
|
import { KnowledgeStorage } from '@mastra/core/storage';
|
|
2
|
-
import type { AppendKnowledgeInput, ClaimKnowledgeSemanticOutboxInput, CreateKnowledgeNodeInput, KnowledgeActivityEvent, KnowledgeCurationCursor, KnowledgeNode, KnowledgeRecord, KnowledgeScope, KnowledgeSemanticOutboxEntry, QueryKnowledgeBySourceInput, QueryKnowledgeInput, QueryKnowledgeOutput,
|
|
3
|
+
import type { AppendKnowledgeInput, ClaimKnowledgeSemanticOutboxInput, CreateKnowledgeNodeInput, KnowledgeActivityEvent, KnowledgeCurationCursor, KnowledgeNode, KnowledgeRecord, KnowledgeScope, KnowledgeStructurePlan, KnowledgeStructureReconcileResult, KnowledgeSemanticOutboxEntry, ListKnowledgeNodesInput, QueryKnowledgeBySourceInput, QueryKnowledgeInput, QueryKnowledgeOutput, SearchKnowledgeInput, SearchKnowledgeResult, UpdateKnowledgeNodeInput } from '@mastra/core/storage';
|
|
3
4
|
import type { LibSQLDomainConfig } from '../../db/index.js';
|
|
5
|
+
import type { SqliteClient as Client } from '../../db/client.js';
|
|
6
|
+
export declare function getLibSQLKnowledgeIsolationKey(config: {
|
|
7
|
+
url?: string;
|
|
8
|
+
client?: Client;
|
|
9
|
+
storageIsolationKey?: unknown;
|
|
10
|
+
}, client?: Client): unknown;
|
|
4
11
|
export declare class KnowledgeLibSQL extends KnowledgeStorage {
|
|
5
12
|
#private;
|
|
6
13
|
constructor(config: LibSQLDomainConfig);
|
|
14
|
+
getCapabilities(): {
|
|
15
|
+
readonly contractVersion: 2;
|
|
16
|
+
readonly schemaVersion: 2;
|
|
17
|
+
readonly supportsV2: true;
|
|
18
|
+
readonly supportsSchemaInspection: true;
|
|
19
|
+
readonly supportsExplicitReset: true;
|
|
20
|
+
};
|
|
21
|
+
inspectSchema(): Promise<import("../../../_types/@internal_core/dist/knowledge-compat/index.js").KnowledgeSchemaInspection>;
|
|
7
22
|
init(): Promise<void>;
|
|
8
23
|
dangerouslyClearAll(): Promise<void>;
|
|
24
|
+
dangerouslyReset(): Promise<void>;
|
|
25
|
+
reconcileStructure(plan: KnowledgeStructurePlan): Promise<KnowledgeStructureReconcileResult>;
|
|
26
|
+
listScopeNodes(input?: ListKnowledgeScopeNodesInput): Promise<ListKnowledgeScopeNodesOutput>;
|
|
27
|
+
listScopeMembers(input: ListKnowledgeScopeMembersInput): Promise<ListKnowledgeScopeMembersOutput>;
|
|
9
28
|
createNode(input: CreateKnowledgeNodeInput): Promise<KnowledgeNode>;
|
|
10
29
|
getNode(id: string): Promise<KnowledgeNode | null>;
|
|
11
30
|
getNodeByName(input: {
|
|
@@ -43,16 +62,20 @@ export declare class KnowledgeLibSQL extends KnowledgeStorage {
|
|
|
43
62
|
id: string;
|
|
44
63
|
scope: KnowledgeScope;
|
|
45
64
|
}): Promise<KnowledgeRecord>;
|
|
46
|
-
raiseKnowledgeCeiling(input: {
|
|
47
|
-
id: string;
|
|
48
|
-
maxScope?: KnowledgeRecord['maxScope'];
|
|
49
|
-
}): Promise<KnowledgeRecord>;
|
|
50
65
|
search(input: SearchKnowledgeInput): Promise<SearchKnowledgeResult[]>;
|
|
51
|
-
|
|
66
|
+
/**
|
|
67
|
+
* @deprecated Curation cursors were removed. Observation-time curate is the only Knowledge writer and needs no
|
|
68
|
+
* cursor. Always throws.
|
|
69
|
+
*/
|
|
70
|
+
getCurationCursor(_input: {
|
|
52
71
|
sourceThreadId: string;
|
|
53
72
|
agent: string;
|
|
54
73
|
}): Promise<KnowledgeCurationCursor | null>;
|
|
55
|
-
|
|
74
|
+
/**
|
|
75
|
+
* @deprecated Curation cursors were removed. Observation-time curate is the only Knowledge writer and needs no
|
|
76
|
+
* cursor. Always throws.
|
|
77
|
+
*/
|
|
78
|
+
advanceCurationCursor(_input: {
|
|
56
79
|
sourceThreadId: string;
|
|
57
80
|
agent: string;
|
|
58
81
|
lastKnowledgeId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/knowledge/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/knowledge/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { MastraMessageContentV2 } from '@mastra/core/agent';
|
|
2
2
|
import type { MastraDBMessage, StorageThreadType } from '@mastra/core/memory';
|
|
3
|
-
import type { StorageResourceType, StorageListMessagesInput, StorageListMessagesByResourceIdInput, StorageListMessagesOutput, StorageListThreadsInput, StorageListThreadsOutput, StorageCloneThreadInput, StorageCopyThreadOutput, ObservationalMemoryRecord, ObservationalMemoryHistoryOptions, CreateObservationalMemoryInput, UpdateActiveObservationsInput, UpdateBufferedObservationsInput, SwapBufferedToActiveInput, SwapBufferedToActiveResult, UpdateBufferedReflectionInput, SwapBufferedReflectionToActiveInput, CreateReflectionGenerationInput, UpdateObservationalMemoryConfigInput, PruneOptions, PruneResult, RetentionTablesDescriptor, TableRetentionPolicy } from '@mastra/core/storage';
|
|
3
|
+
import type { StorageResourceType, StorageListMessagesInput, StorageListMessagesByResourceIdInput, StorageListMessagesOutput, StorageListThreadsInput, StorageListThreadsOutput, StorageCloneThreadInput, StorageCopyThreadOutput, ObservationalMemoryRecord, ObservationalMemoryHistoryOptions, CreateObservationalMemoryInput, UpdateActiveObservationsInput, UpdateBufferedObservationsInput, SwapBufferedToActiveInput, SwapBufferedToActiveResult, UpdateBufferedReflectionInput, SwapBufferedReflectionToActiveInput, CreateReflectionGenerationInput, UpdateObservationalMemoryConfigInput, PruneOptions, PruneResult, RetentionTablesDescriptor, RunFence, TableRetentionPolicy } from '@mastra/core/storage';
|
|
4
4
|
import { MemoryStorage } from '@mastra/core/storage';
|
|
5
5
|
import type { LibSQLDomainConfig } from '../../db/index.js';
|
|
6
6
|
export declare class MemoryLibSQL extends MemoryStorage {
|
|
@@ -12,11 +12,18 @@ export declare class MemoryLibSQL extends MemoryStorage {
|
|
|
12
12
|
* Retention-eligible tables. `threads`, `messages`, and `resources` all anchor
|
|
13
13
|
* on `createdAt` and are indexed for fast batched deletes. Cascade order is
|
|
14
14
|
* enforced in `prune()` (children before threads), not here.
|
|
15
|
+
*
|
|
16
|
+
* Run fences anchor on `retiredAt` (epoch ms), which stays NULL until the
|
|
17
|
+
* execution holding the fence settles, so a running execution's fence is
|
|
18
|
+
* never pruned.
|
|
15
19
|
*/
|
|
16
20
|
static readonly retentionTables: RetentionTablesDescriptor;
|
|
17
21
|
constructor(config: LibSQLDomainConfig);
|
|
18
22
|
init(): Promise<void>;
|
|
19
23
|
dangerouslyClearAll(): Promise<void>;
|
|
24
|
+
supportsRunFencing(): boolean;
|
|
25
|
+
raiseRunFence(fence: RunFence): Promise<boolean>;
|
|
26
|
+
retireRunFence(fence: RunFence): Promise<boolean>;
|
|
20
27
|
/**
|
|
21
28
|
* Delete rows older than each policy's `maxAge`, batched and cancellable.
|
|
22
29
|
*
|
|
@@ -41,12 +48,13 @@ export declare class MemoryLibSQL extends MemoryStorage {
|
|
|
41
48
|
}>;
|
|
42
49
|
listMessages(args: StorageListMessagesInput): Promise<StorageListMessagesOutput>;
|
|
43
50
|
listMessagesByResourceId(args: StorageListMessagesByResourceIdInput): Promise<StorageListMessagesOutput>;
|
|
44
|
-
saveMessages({ messages }: {
|
|
51
|
+
saveMessages({ messages, fence, }: {
|
|
45
52
|
messages: MastraDBMessage[];
|
|
53
|
+
fence?: RunFence;
|
|
46
54
|
}): Promise<{
|
|
47
55
|
messages: MastraDBMessage[];
|
|
48
56
|
}>;
|
|
49
|
-
updateMessages({ messages, }: {
|
|
57
|
+
updateMessages({ messages, fence, }: {
|
|
50
58
|
messages: (Partial<Omit<MastraDBMessage, 'createdAt'>> & {
|
|
51
59
|
id: string;
|
|
52
60
|
content?: {
|
|
@@ -54,18 +62,22 @@ export declare class MemoryLibSQL extends MemoryStorage {
|
|
|
54
62
|
content?: MastraMessageContentV2['content'];
|
|
55
63
|
};
|
|
56
64
|
})[];
|
|
65
|
+
fence?: RunFence;
|
|
57
66
|
}): Promise<MastraDBMessage[]>;
|
|
58
|
-
deleteMessages(messageIds: string[]
|
|
67
|
+
deleteMessages(messageIds: string[], options?: {
|
|
68
|
+
fence?: RunFence;
|
|
69
|
+
}): Promise<void>;
|
|
59
70
|
getResourceById({ resourceId }: {
|
|
60
71
|
resourceId: string;
|
|
61
72
|
}): Promise<StorageResourceType | null>;
|
|
62
73
|
saveResource({ resource }: {
|
|
63
74
|
resource: StorageResourceType;
|
|
64
75
|
}): Promise<StorageResourceType>;
|
|
65
|
-
updateResource({ resourceId, workingMemory, metadata, }: {
|
|
76
|
+
updateResource({ resourceId, workingMemory, metadata, fence, }: {
|
|
66
77
|
resourceId: string;
|
|
67
78
|
workingMemory?: string;
|
|
68
79
|
metadata?: Record<string, unknown>;
|
|
80
|
+
fence?: RunFence;
|
|
69
81
|
}): Promise<StorageResourceType>;
|
|
70
82
|
getThreadById({ threadId, resourceId, }: {
|
|
71
83
|
threadId: string;
|
|
@@ -84,13 +96,15 @@ export declare class MemoryLibSQL extends MemoryStorage {
|
|
|
84
96
|
resourceId: string;
|
|
85
97
|
}): Promise<StorageThreadType>;
|
|
86
98
|
listThreads(args: StorageListThreadsInput): Promise<StorageListThreadsOutput>;
|
|
87
|
-
saveThread({ thread }: {
|
|
99
|
+
saveThread({ thread, fence }: {
|
|
88
100
|
thread: StorageThreadType;
|
|
101
|
+
fence?: RunFence;
|
|
89
102
|
}): Promise<StorageThreadType>;
|
|
90
|
-
updateThread({ id, title, metadata, }: {
|
|
103
|
+
updateThread({ id, title, metadata, fence, }: {
|
|
91
104
|
id: string;
|
|
92
105
|
title?: string;
|
|
93
106
|
metadata?: Record<string, unknown>;
|
|
107
|
+
fence?: RunFence;
|
|
94
108
|
}): Promise<StorageThreadType>;
|
|
95
109
|
deleteThread({ threadId }: {
|
|
96
110
|
threadId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/memory/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAGjE,OAAO,KAAK,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC9E,OAAO,KAAK,EACV,mBAAmB,EACnB,wBAAwB,EACxB,oCAAoC,EACpC,yBAAyB,EAGzB,uBAAuB,EACvB,wBAAwB,EACxB,uBAAuB,EACvB,uBAAuB,EAEvB,yBAAyB,EACzB,iCAAiC,EAEjC,8BAA8B,EAC9B,6BAA6B,EAC7B,+BAA+B,EAC/B,yBAAyB,EACzB,0BAA0B,EAC1B,6BAA6B,EAC7B,mCAAmC,EACnC,+BAA+B,EAC/B,oCAAoC,EACpC,YAAY,EACZ,WAAW,EACX,yBAAyB,EACzB,oBAAoB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/memory/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { WorkflowRun, WorkflowRuns, StorageListWorkflowRunsInput, UpdateWorkflowStateOptions, PruneOptions, PruneResult, RetentionTablesDescriptor, TableRetentionPolicy } from '@mastra/core/storage';
|
|
1
|
+
import type { WorkflowRun, WorkflowRuns, StorageListWorkflowRunsInput, UpdateWorkflowStateOptions, PruneOptions, PruneResult, RetentionTablesDescriptor, TableRetentionPolicy, ClaimRunOwnershipInput, ClaimRunOwnershipResult, RenewRunOwnershipInput, RenewRunOwnershipResult, RunFence, RunOwnershipRecord } from '@mastra/core/storage';
|
|
2
2
|
import { WorkflowsStorage } from '@mastra/core/storage';
|
|
3
3
|
import type { WorkflowRunState, StepResult } from '@mastra/core/workflows';
|
|
4
4
|
import type { LibSQLDomainConfig } from '../../db/index.js';
|
|
@@ -7,6 +7,10 @@ export declare class WorkflowsLibSQL extends WorkflowsStorage {
|
|
|
7
7
|
/**
|
|
8
8
|
* Workflow run snapshots accumulate as runs execute. Anchored on `updatedAt`
|
|
9
9
|
* (last activity) so suspended/long-running runs are not pruned by start age.
|
|
10
|
+
*
|
|
11
|
+
* Run ownership rows are anchored on `updatedAt` (epoch ms), which every
|
|
12
|
+
* claim, renewal and release refreshes, so a live execution's row is never
|
|
13
|
+
* older than its renew interval.
|
|
10
14
|
*/
|
|
11
15
|
static readonly retentionTables: RetentionTablesDescriptor;
|
|
12
16
|
private readonly executeWithRetry;
|
|
@@ -15,29 +19,39 @@ export declare class WorkflowsLibSQL extends WorkflowsStorage {
|
|
|
15
19
|
private parseWorkflowRun;
|
|
16
20
|
init(): Promise<void>;
|
|
17
21
|
dangerouslyClearAll(): Promise<void>;
|
|
18
|
-
|
|
22
|
+
supportsRunFencing(): boolean;
|
|
23
|
+
claimRunOwnership({ runId, ownerId, leaseMs, force, expectedGeneration, }: ClaimRunOwnershipInput): Promise<ClaimRunOwnershipResult>;
|
|
24
|
+
renewRunOwnership({ leaseMs, ...fence }: RenewRunOwnershipInput): Promise<RenewRunOwnershipResult>;
|
|
25
|
+
releaseRunOwnership(fence: RunFence): Promise<boolean>;
|
|
26
|
+
getRunOwnership({ runId }: {
|
|
27
|
+
runId: string;
|
|
28
|
+
}): Promise<RunOwnershipRecord | null>;
|
|
29
|
+
/** Delete workflow run snapshots and run ownership rows older than their policy's `maxAge`, batched. */
|
|
19
30
|
prune(policies: Record<string, TableRetentionPolicy>, options?: PruneOptions): Promise<PruneResult[]>;
|
|
20
31
|
private setupPragmaSettings;
|
|
21
|
-
updateWorkflowResults({ workflowName, runId, stepId, result, requestContext, state, }: {
|
|
32
|
+
updateWorkflowResults({ workflowName, runId, stepId, result, requestContext, state, fence: explicitFence, }: {
|
|
22
33
|
workflowName: string;
|
|
23
34
|
runId: string;
|
|
24
35
|
stepId: string;
|
|
25
36
|
result: StepResult<any, any, any, any>;
|
|
26
37
|
requestContext: Record<string, any>;
|
|
27
38
|
state?: Record<string, any>;
|
|
39
|
+
fence?: RunFence;
|
|
28
40
|
}): Promise<Record<string, StepResult<any, any, any, any>>>;
|
|
29
|
-
updateWorkflowState({ workflowName, runId, opts, }: {
|
|
41
|
+
updateWorkflowState({ workflowName, runId, opts, fence: explicitFence, }: {
|
|
30
42
|
workflowName: string;
|
|
31
43
|
runId: string;
|
|
32
44
|
opts: UpdateWorkflowStateOptions;
|
|
45
|
+
fence?: RunFence;
|
|
33
46
|
}): Promise<WorkflowRunState | undefined>;
|
|
34
|
-
persistWorkflowSnapshot({ workflowName, runId, resourceId, snapshot, createdAt, updatedAt, }: {
|
|
47
|
+
persistWorkflowSnapshot({ workflowName, runId, resourceId, snapshot, createdAt, updatedAt, fence, }: {
|
|
35
48
|
workflowName: string;
|
|
36
49
|
runId: string;
|
|
37
50
|
resourceId?: string;
|
|
38
51
|
snapshot: WorkflowRunState;
|
|
39
52
|
createdAt?: Date;
|
|
40
53
|
updatedAt?: Date;
|
|
54
|
+
fence?: RunFence;
|
|
41
55
|
}): Promise<void>;
|
|
42
56
|
loadWorkflowSnapshot({ workflowName, runId, }: {
|
|
43
57
|
workflowName: string;
|
|
@@ -47,9 +61,10 @@ export declare class WorkflowsLibSQL extends WorkflowsStorage {
|
|
|
47
61
|
runId: string;
|
|
48
62
|
workflowName?: string;
|
|
49
63
|
}): Promise<WorkflowRun | null>;
|
|
50
|
-
deleteWorkflowRunById({ runId, workflowName }: {
|
|
64
|
+
deleteWorkflowRunById({ runId, workflowName, fence, }: {
|
|
51
65
|
runId: string;
|
|
52
66
|
workflowName: string;
|
|
67
|
+
fence?: RunFence;
|
|
53
68
|
}): Promise<void>;
|
|
54
69
|
listWorkflowRuns({ workflowName, fromDate, toDate, page, perPage, resourceId, threadId, status, summary, }?: StorageListWorkflowRunsInput): Promise<WorkflowRuns>;
|
|
55
70
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/workflows/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EACZ,4BAA4B,EAC5B,0BAA0B,EAC1B,YAAY,EACZ,WAAW,EACX,yBAAyB,EACzB,oBAAoB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/workflows/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory-storage.d.ts","sourceRoot":"","sources":["../../src/storage/factory-storage.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAwB,MAAM,sBAAsB,CAAC;AAC5E,OAAO,KAAK,EAGV,gBAAgB,EAGhB,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,eAAe,EAChB,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"factory-storage.d.ts","sourceRoot":"","sources":["../../src/storage/factory-storage.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAwB,MAAM,sBAAsB,CAAC;AAC5E,OAAO,KAAK,EAGV,gBAAgB,EAGhB,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,eAAe,EAChB,MAAM,sBAAsB,CAAC;AAU9B,MAAM,WAAW,0BAA0B;IACzC,iFAAiF;IACjF,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,8EAA8E;IAC9E,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,qEAAqE;IACrE,SAAS,CAAC,EAAE,eAAe,CAAC;CAC7B;AA8YD;;;;GAIG;AACH,qBAAa,oBAAqB,SAAQ,cAAc;;IACtD,QAAQ,CAAC,GAAG,EAAE,iBAAiB,CAAC;IAOhC,YAAY,MAAM,EAAE,0BAA0B,EAiB7C;IAED,gBAAgB,IAAI,oBAAoB,CAOvC;IAED,UAAgB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAE3C;IAEK,eAAe,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAiB/E;IAEK,iBAAiB,CAAC,OAAO,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAOlE;IAEK,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAE3B;IAED,YAAY,IAAI,mBAAmB,CAElC;CA6FF"}
|
package/dist/storage/index.d.ts
CHANGED
|
@@ -48,6 +48,12 @@ export type LibSQLLocalPragmaOptions = {
|
|
|
48
48
|
*/
|
|
49
49
|
export type LibSQLBaseConfig = {
|
|
50
50
|
id: string;
|
|
51
|
+
/**
|
|
52
|
+
* Identifies the database this store's Knowledge tables live in. `Mastra` rejects two Knowledge
|
|
53
|
+
* runtimes with the same key. Set it when two stores reach different databases that Mastra
|
|
54
|
+
* cannot tell apart, or the same database through different connection settings.
|
|
55
|
+
*/
|
|
56
|
+
storageIsolationKey?: string;
|
|
51
57
|
/**
|
|
52
58
|
* Maximum number of retries for write operations if an SQLITE_BUSY error occurs.
|
|
53
59
|
* @default 5
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/storage/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/storage/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { runRetentionBatches } from '@mastra/core/storage';
|
|
2
|
-
import type {
|
|
3
|
-
import type { LibSQLDB } from './db/index.js';
|
|
4
|
-
export type PruneTarget = RetentionPruneTarget<
|
|
2
|
+
import type { PruneOptions, PruneResult, RetentionPruneTarget, TableRetentionPolicy } from '@mastra/core/storage';
|
|
3
|
+
import type { LibSQLDB, PrunableTable } from './db/index.js';
|
|
4
|
+
export type PruneTarget = RetentionPruneTarget<PrunableTable>;
|
|
5
5
|
export declare function cutoffFor(policy: TableRetentionPolicy, anchorType: 'timestamp' | 'epoch-ms', now?: number): string | number;
|
|
6
6
|
export declare const runBatchedDelete: typeof runRetentionBatches;
|
|
7
7
|
export declare function runPrune({ db, domain, targets, options, logger, }: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"retention.d.ts","sourceRoot":"","sources":["../../src/storage/retention.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,mBAAmB,EACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"retention.d.ts","sourceRoot":"","sources":["../../src/storage/retention.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,mBAAmB,EACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAClH,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,MAAM,CAAC;AAEpD,MAAM,MAAM,WAAW,GAAG,oBAAoB,CAAC,aAAa,CAAC,CAAC;AAmB9D,wBAAgB,SAAS,CAAC,MAAM,EAAE,oBAAoB,EAAE,UAAU,EAAE,WAAW,GAAG,UAAU,EAAE,GAAG,SAAa,mBAG7G;AAED,eAAO,MAAM,gBAAgB,4BAAsB,CAAC;AAEpD,wBAAgB,QAAQ,CAAC,EACvB,EAAE,EACF,MAAM,EACN,OAAO,EACP,OAAO,EACP,MAAM,GACP,EAAE;IACD,EAAE,EAAE,QAAQ,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,MAAM,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,KAAK,IAAI,CAAA;KAAE,CAAC;CAC1D,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAUzB;AAED,wBAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,UAAU,EACV,KAAK,GACN,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;IAC/C,UAAU,EAAE,MAAM,CAChB,MAAM,EACN;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAC;QAAC,UAAU,CAAC,EAAE,WAAW,GAAG,UAAU,CAAA;KAAE,CAC3F,CAAC;IACF,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB,GAAG,WAAW,EAAE,CAEhB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vector/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAAqC,MAAM,qBAAqB,CAAC;AACtF,OAAO,KAAK,EACV,UAAU,EACV,WAAW,EACX,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vector/index.ts"],"names":[],"mappings":"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"}
|