@mastra/libsql 1.14.3 → 1.15.0-alpha.1
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 +165 -0
- package/dist/docs/SKILL.md +2 -1
- package/dist/docs/assets/SOURCE_MAP.json +1 -1
- package/dist/docs/references/docs-agent-builder-deploying.md +2 -0
- package/dist/docs/references/docs-agent-builder-overview.md +2 -0
- package/dist/docs/references/docs-agents-agent-approval.md +2 -0
- package/dist/docs/references/docs-agents-networks.md +2 -0
- package/dist/docs/references/docs-memory-memory-processors.md +4 -0
- package/dist/docs/references/docs-memory-message-history.md +2 -0
- package/dist/docs/references/docs-memory-multi-user-threads.md +2 -0
- package/dist/docs/references/docs-memory-overview.md +5 -1
- package/dist/docs/references/docs-memory-semantic-recall.md +8 -0
- package/dist/docs/references/docs-memory-storage.md +6 -0
- package/dist/docs/references/docs-memory-working-memory.md +2 -0
- package/dist/docs/references/docs-rag-retrieval.md +2 -0
- package/dist/docs/references/docs-workflows-snapshots.md +2 -0
- package/dist/docs/references/guides-agent-frameworks-ai-sdk.md +2 -0
- package/dist/docs/references/reference-core-getMemory.md +2 -0
- package/dist/docs/references/reference-core-listMemory.md +2 -0
- package/dist/docs/references/reference-core-mastra-class.md +2 -0
- package/dist/docs/references/reference-memory-memory-class.md +3 -0
- package/dist/docs/references/reference-storage-composite.md +2 -0
- package/dist/docs/references/reference-storage-dynamodb.md +2 -0
- package/dist/docs/references/reference-storage-libsql.md +2 -0
- package/dist/docs/references/reference-storage-retention.md +180 -0
- package/dist/docs/references/reference-vectors-libsql.md +2 -0
- package/dist/index.cjs +578 -61
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +579 -62
- package/dist/index.js.map +1 -1
- package/dist/storage/db/index.d.ts +51 -0
- package/dist/storage/db/index.d.ts.map +1 -1
- package/dist/storage/domains/background-tasks/index.d.ts +9 -0
- package/dist/storage/domains/background-tasks/index.d.ts.map +1 -1
- package/dist/storage/domains/datasets/index.d.ts +7 -7
- package/dist/storage/domains/datasets/index.d.ts.map +1 -1
- package/dist/storage/domains/experiments/index.d.ts +24 -1
- package/dist/storage/domains/experiments/index.d.ts.map +1 -1
- package/dist/storage/domains/harness/index.d.ts +5 -1
- package/dist/storage/domains/harness/index.d.ts.map +1 -1
- package/dist/storage/domains/memory/index.d.ts +15 -1
- package/dist/storage/domains/memory/index.d.ts.map +1 -1
- package/dist/storage/domains/notifications/index.d.ts +5 -1
- package/dist/storage/domains/notifications/index.d.ts.map +1 -1
- package/dist/storage/domains/observability/index.d.ts +8 -1
- package/dist/storage/domains/observability/index.d.ts.map +1 -1
- package/dist/storage/domains/schedules/index.d.ts +9 -1
- package/dist/storage/domains/schedules/index.d.ts.map +1 -1
- package/dist/storage/domains/scores/index.d.ts +15 -5
- package/dist/storage/domains/scores/index.d.ts.map +1 -1
- package/dist/storage/domains/thread-state/index.d.ts +9 -0
- package/dist/storage/domains/thread-state/index.d.ts.map +1 -1
- package/dist/storage/domains/utils.d.ts +34 -0
- package/dist/storage/domains/utils.d.ts.map +1 -0
- package/dist/storage/domains/workflows/index.d.ts +8 -1
- package/dist/storage/domains/workflows/index.d.ts.map +1 -1
- package/dist/storage/index.d.ts +8 -1
- package/dist/storage/index.d.ts.map +1 -1
- package/dist/storage/retention.d.ts +77 -0
- package/dist/storage/retention.d.ts.map +1 -0
- package/package.json +4 -4
|
@@ -329,5 +329,56 @@ export declare class LibSQLDB extends MastraBase {
|
|
|
329
329
|
deleteData({ tableName }: {
|
|
330
330
|
tableName: TABLE_NAMES;
|
|
331
331
|
}): Promise<void>;
|
|
332
|
+
/**
|
|
333
|
+
* Delete up to `limit` of the oldest rows whose `column` timestamp is strictly
|
|
334
|
+
* before `cutoffMs`, in a single bounded statement. Returns the number of rows
|
|
335
|
+
* removed so the caller can decide whether more batches remain.
|
|
336
|
+
*
|
|
337
|
+
* Deletes by `rowid` so the range scan is bounded by LIMIT and the write set
|
|
338
|
+
* stays small — short locks, bounded WAL growth. Requires an index on
|
|
339
|
+
* `column` to be fast at scale (see ensureIndex).
|
|
340
|
+
*/
|
|
341
|
+
pruneBatch({ tableName, column, cutoff, limit, }: {
|
|
342
|
+
tableName: TABLE_NAMES;
|
|
343
|
+
column: string;
|
|
344
|
+
/**
|
|
345
|
+
* Exclusive upper bound for the anchor column. Must match the column's
|
|
346
|
+
* stored type — the memory/observability timestamp anchors are stored as
|
|
347
|
+
* ISO-8601 strings, which sort lexicographically in chronological order, so
|
|
348
|
+
* the caller passes an ISO string cutoff.
|
|
349
|
+
*/
|
|
350
|
+
cutoff: string | number;
|
|
351
|
+
limit: number;
|
|
352
|
+
}): Promise<number>;
|
|
353
|
+
/**
|
|
354
|
+
* Delete up to `limit` aged parent rows *and* their child rows together, in a
|
|
355
|
+
* single transaction. Used for whole-unit (parent-driven) pruning where
|
|
356
|
+
* children must die with their parent (e.g. an aged experiment and its
|
|
357
|
+
* experiment_results) — deleting per unit means a bound or abort between
|
|
358
|
+
* batches never leaves a parent hollow (kept, but with its children gone) or
|
|
359
|
+
* children orphaned.
|
|
360
|
+
*
|
|
361
|
+
* Both deletes target the same parent set via an identical deterministic
|
|
362
|
+
* subquery (`ORDER BY rowid LIMIT ?`); the batch runs as one write
|
|
363
|
+
* transaction, so the set cannot change between the two statements.
|
|
364
|
+
*/
|
|
365
|
+
pruneUnitsBatch({ parentTable, parentKey, parentColumn, childTable, childForeignKey, cutoff, limit, }: {
|
|
366
|
+
parentTable: TABLE_NAMES;
|
|
367
|
+
parentKey: string;
|
|
368
|
+
parentColumn: string;
|
|
369
|
+
childTable: TABLE_NAMES;
|
|
370
|
+
childForeignKey: string;
|
|
371
|
+
cutoff: string | number;
|
|
372
|
+
limit: number;
|
|
373
|
+
}): Promise<{
|
|
374
|
+
parents: number;
|
|
375
|
+
children: number;
|
|
376
|
+
}>;
|
|
377
|
+
/** Create an index if it does not already exist. */
|
|
378
|
+
ensureIndex({ indexName, tableName, column, }: {
|
|
379
|
+
indexName: string;
|
|
380
|
+
tableName: TABLE_NAMES;
|
|
381
|
+
column: string;
|
|
382
|
+
}): Promise<void>;
|
|
332
383
|
}
|
|
333
384
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/storage/db/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAS/C,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAWvE;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;;;;OAOG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,6BAA6B,OAAO,CAAC;AAElD;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAC1B,CAAC,sBAAsB,GAAG;IACxB,2FAA2F;IAC3F,GAAG,EAAE,MAAM,CAAC;IACZ,yDAAyD;IACzD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC,GACF,CAAC,sBAAsB,GAAG;IACxB,yCAAyC;IACzC,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC,CAAC;AAEP;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,CAahE;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/storage/db/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,20 @@
|
|
|
1
1
|
import type { BackgroundTask, TaskFilter, TaskListResult, UpdateBackgroundTask } from '@mastra/core/background-tasks';
|
|
2
2
|
import { BackgroundTasksStorage } from '@mastra/core/storage';
|
|
3
|
+
import type { PruneOptions, PruneResult, RetentionTablesDescriptor, TableRetentionPolicy } from '@mastra/core/storage';
|
|
3
4
|
import type { LibSQLDomainConfig } from '../../db/index.js';
|
|
4
5
|
export declare class BackgroundTasksLibSQL extends BackgroundTasksStorage {
|
|
5
6
|
#private;
|
|
7
|
+
/**
|
|
8
|
+
* Completed/failed task records accumulate. Anchored on `completedAt`, which
|
|
9
|
+
* is NULL while a task is in-flight (pending/running/suspended) — so `completedAt
|
|
10
|
+
* < cutoff` never prunes a live task, no explicit status filter needed.
|
|
11
|
+
*/
|
|
12
|
+
static readonly retentionTables: RetentionTablesDescriptor;
|
|
6
13
|
constructor(config: LibSQLDomainConfig);
|
|
7
14
|
init(): Promise<void>;
|
|
8
15
|
dangerouslyClearAll(): Promise<void>;
|
|
16
|
+
/** Delete completed tasks older than the `backgroundTasks` policy's `maxAge`, batched. */
|
|
17
|
+
prune(policies: Record<string, TableRetentionPolicy>, options?: PruneOptions): Promise<PruneResult[]>;
|
|
9
18
|
createTask(task: BackgroundTask): Promise<void>;
|
|
10
19
|
updateTask(taskId: string, update: UpdateBackgroundTask): Promise<void>;
|
|
11
20
|
getTask(taskId: string): Promise<BackgroundTask | null>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/background-tasks/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,cAAc,EAEd,UAAU,EACV,cAAc,EACd,oBAAoB,EACrB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,sBAAsB,EAAyC,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/background-tasks/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,cAAc,EAEd,UAAU,EACV,cAAc,EACd,oBAAoB,EACrB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,sBAAsB,EAAyC,MAAM,sBAAsB,CAAC;AACrG,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAEvH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AA6CnD,qBAAa,qBAAsB,SAAQ,sBAAsB;;IAC/D;;;;OAIG;IACH,gBAAyB,eAAe,EAAE,yBAAyB,CAEjE;gBAKU,MAAM,EAAE,kBAAkB;IAOhC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAarB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAI1C,0FAA0F;IACpF,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IASrG,UAAU,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IA4B/C,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IA8CvE,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IASvD,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,cAAc,CAAC;IAqFtD,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOzC,WAAW,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IA2C9C,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC;IAQlC,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAO/D"}
|
|
@@ -1,30 +1,30 @@
|
|
|
1
1
|
import { DatasetsStorage } from '@mastra/core/storage';
|
|
2
|
-
import type { DatasetRecord, DatasetItem, DatasetItemRow, DatasetVersion, CreateDatasetInput, UpdateDatasetInput, AddDatasetItemInput, UpdateDatasetItemInput, ListDatasetsInput, ListDatasetsOutput, ListDatasetItemsInput, ListDatasetItemsOutput, ListDatasetVersionsInput, ListDatasetVersionsOutput, BatchInsertItemsInput, BatchDeleteItemsInput } from '@mastra/core/storage';
|
|
2
|
+
import type { DatasetRecord, DatasetItem, DatasetItemRow, DatasetVersion, CreateDatasetInput, UpdateDatasetInput, AddDatasetItemInput, UpdateDatasetItemInput, DeleteDatasetItemInput, ListDatasetsInput, ListDatasetsOutput, ListDatasetItemsInput, ListDatasetItemsOutput, ListDatasetVersionsInput, ListDatasetVersionsOutput, BatchInsertItemsInput, BatchDeleteItemsInput, DatasetTenancyFilters } from '@mastra/core/storage';
|
|
3
3
|
import type { LibSQLDomainConfig } from '../../db/index.js';
|
|
4
4
|
export declare class DatasetsLibSQL extends DatasetsStorage {
|
|
5
5
|
#private;
|
|
6
6
|
constructor(config: LibSQLDomainConfig);
|
|
7
7
|
init(): Promise<void>;
|
|
8
8
|
dangerouslyClearAll(): Promise<void>;
|
|
9
|
+
private experimentTablesExist;
|
|
9
10
|
private transformDatasetRow;
|
|
10
11
|
private transformItemRow;
|
|
11
12
|
private transformItemRowFull;
|
|
12
13
|
private transformDatasetVersionRow;
|
|
13
14
|
createDataset(input: CreateDatasetInput): Promise<DatasetRecord>;
|
|
14
|
-
getDatasetById({ id }: {
|
|
15
|
+
getDatasetById({ id, filters, }: {
|
|
15
16
|
id: string;
|
|
17
|
+
filters?: DatasetTenancyFilters;
|
|
16
18
|
}): Promise<DatasetRecord | null>;
|
|
17
19
|
protected _doUpdateDataset(args: UpdateDatasetInput): Promise<DatasetRecord>;
|
|
18
|
-
deleteDataset({ id }: {
|
|
20
|
+
deleteDataset({ id, filters }: {
|
|
19
21
|
id: string;
|
|
22
|
+
filters?: DatasetTenancyFilters;
|
|
20
23
|
}): Promise<void>;
|
|
21
24
|
listDatasets(args: ListDatasetsInput): Promise<ListDatasetsOutput>;
|
|
22
25
|
protected _doAddItem(args: AddDatasetItemInput): Promise<DatasetItem>;
|
|
23
26
|
protected _doUpdateItem(args: UpdateDatasetItemInput): Promise<DatasetItem>;
|
|
24
|
-
protected _doDeleteItem({ id, datasetId }:
|
|
25
|
-
id: string;
|
|
26
|
-
datasetId: string;
|
|
27
|
-
}): Promise<void>;
|
|
27
|
+
protected _doDeleteItem({ id, datasetId }: DeleteDatasetItemInput): Promise<void>;
|
|
28
28
|
getItemById(args: {
|
|
29
29
|
id: string;
|
|
30
30
|
datasetVersion?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/datasets/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAUL,eAAe,EAKhB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EACV,aAAa,EACb,WAAW,EACX,cAAc,EACd,cAAc,EAEd,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,EACtB,iBAAiB,EACjB,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,EACtB,wBAAwB,EACxB,yBAAyB,EACzB,qBAAqB,EACrB,qBAAqB,EACtB,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/datasets/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAUL,eAAe,EAKhB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EACV,aAAa,EACb,WAAW,EACX,cAAc,EACd,cAAc,EAEd,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,EACtB,sBAAsB,EACtB,iBAAiB,EACjB,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,EACtB,wBAAwB,EACxB,yBAAyB,EACzB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,EACtB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AASnD,qBAAa,cAAe,SAAQ,eAAe;;gBAIrC,MAAM,EAAE,kBAAkB;IAOhC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAsErB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;YAM5B,qBAAqB;IAenC,OAAO,CAAC,mBAAmB;IAuB3B,OAAO,CAAC,gBAAgB;IAmBxB,OAAO,CAAC,oBAAoB;IAqB5B,OAAO,CAAC,0BAA0B;IAW5B,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAAC;IA4DhE,cAAc,CAAC,EACnB,EAAE,EACF,OAAO,GACR,EAAE;QACD,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,CAAC,EAAE,qBAAqB,CAAC;KACjC,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;cAqBjB,gBAAgB,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAAC;IA8F5E,aAAa,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,qBAAqB,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAiD9F,YAAY,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;cAuFxD,UAAU,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAAC,WAAW,CAAC;cA0E3D,aAAa,CAAC,IAAI,EAAE,sBAAsB,GAAG,OAAO,CAAC,WAAW,CAAC;cAwGjE,aAAa,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC;IAqEjF,WAAW,CAAC,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,cAAc,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IA6BvF,iBAAiB,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAqBzG,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAqBzD,SAAS,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAoIvE,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAkCjF,mBAAmB,CAAC,KAAK,EAAE,wBAAwB,GAAG,OAAO,CAAC,yBAAyB,CAAC;cAkD9E,mBAAmB,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;cAuFzE,mBAAmB,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;CAiFjF"}
|
|
@@ -1,30 +1,53 @@
|
|
|
1
1
|
import { ExperimentsStorage } from '@mastra/core/storage';
|
|
2
|
-
import type { Experiment, ExperimentResult, ExperimentReviewCounts, CreateExperimentInput, UpdateExperimentInput, AddExperimentResultInput, UpdateExperimentResultInput, ListExperimentsInput, ListExperimentsOutput, ListExperimentResultsInput, ListExperimentResultsOutput } from '@mastra/core/storage';
|
|
2
|
+
import type { Experiment, ExperimentResult, ExperimentReviewCounts, ExperimentTenancyFilters, CreateExperimentInput, UpdateExperimentInput, AddExperimentResultInput, UpdateExperimentResultInput, ListExperimentsInput, ListExperimentsOutput, ListExperimentResultsInput, ListExperimentResultsOutput, PruneOptions, PruneResult, RetentionTablesDescriptor, TableRetentionPolicy } from '@mastra/core/storage';
|
|
3
3
|
import type { LibSQLDomainConfig } from '../../db/index.js';
|
|
4
4
|
export declare class ExperimentsLibSQL extends ExperimentsStorage {
|
|
5
5
|
#private;
|
|
6
|
+
/**
|
|
7
|
+
* An experiment is pruned as a whole unit: when `experiments.completedAt` is
|
|
8
|
+
* older than the policy, the run and all its `experiment_results` rows are
|
|
9
|
+
* deleted together (results cascade with their parent, matching
|
|
10
|
+
* `deleteExperiment`). Results are not an independent retention key. NULL
|
|
11
|
+
* `completedAt` (still running) is never pruned.
|
|
12
|
+
*/
|
|
13
|
+
static readonly retentionTables: RetentionTablesDescriptor;
|
|
6
14
|
constructor(config: LibSQLDomainConfig);
|
|
7
15
|
init(): Promise<void>;
|
|
8
16
|
dangerouslyClearAll(): Promise<void>;
|
|
17
|
+
/**
|
|
18
|
+
* Prune whole experiments older than the `experiments` policy's `maxAge`.
|
|
19
|
+
*
|
|
20
|
+
* Each batch selects up to `batchSize` aged experiments and deletes their
|
|
21
|
+
* `experiment_results` rows and the experiment rows in one transaction —
|
|
22
|
+
* mirroring `deleteExperiment` — so hitting `maxBatches`/`maxRows` or the
|
|
23
|
+
* abort signal between batches never leaves a run hollow (parent kept,
|
|
24
|
+
* results gone). NULL `completedAt` (still running) is excluded by the
|
|
25
|
+
* `< cutoff` predicate. Bounds count whole experiments, not rows.
|
|
26
|
+
*/
|
|
27
|
+
prune(policies: Record<string, TableRetentionPolicy>, options?: PruneOptions): Promise<PruneResult[]>;
|
|
9
28
|
private transformExperimentRow;
|
|
10
29
|
private transformExperimentResultRow;
|
|
11
30
|
createExperiment(input: CreateExperimentInput): Promise<Experiment>;
|
|
12
31
|
updateExperiment(input: UpdateExperimentInput): Promise<Experiment>;
|
|
13
32
|
getExperimentById(args: {
|
|
14
33
|
id: string;
|
|
34
|
+
filters?: ExperimentTenancyFilters;
|
|
15
35
|
}): Promise<Experiment | null>;
|
|
16
36
|
listExperiments(args: ListExperimentsInput): Promise<ListExperimentsOutput>;
|
|
17
37
|
deleteExperiment(args: {
|
|
18
38
|
id: string;
|
|
39
|
+
filters?: ExperimentTenancyFilters;
|
|
19
40
|
}): Promise<void>;
|
|
20
41
|
addExperimentResult(input: AddExperimentResultInput): Promise<ExperimentResult>;
|
|
21
42
|
updateExperimentResult(input: UpdateExperimentResultInput): Promise<ExperimentResult>;
|
|
22
43
|
getExperimentResultById(args: {
|
|
23
44
|
id: string;
|
|
45
|
+
filters?: ExperimentTenancyFilters;
|
|
24
46
|
}): Promise<ExperimentResult | null>;
|
|
25
47
|
listExperimentResults(args: ListExperimentResultsInput): Promise<ListExperimentResultsOutput>;
|
|
26
48
|
deleteExperimentResults(args: {
|
|
27
49
|
experimentId: string;
|
|
50
|
+
filters?: ExperimentTenancyFilters;
|
|
28
51
|
}): Promise<void>;
|
|
29
52
|
getReviewSummary(): Promise<ExperimentReviewCounts[]>;
|
|
30
53
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/experiments/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAML,kBAAkB,EAKnB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EACV,UAAU,EACV,gBAAgB,EAChB,sBAAsB,EACtB,qBAAqB,EACrB,qBAAqB,EACrB,wBAAwB,EACxB,2BAA2B,EAC3B,oBAAoB,EACpB,qBAAqB,EACrB,0BAA0B,EAC1B,2BAA2B,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/experiments/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAML,kBAAkB,EAKnB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EACV,UAAU,EACV,gBAAgB,EAChB,sBAAsB,EACtB,wBAAwB,EACxB,qBAAqB,EACrB,qBAAqB,EACrB,wBAAwB,EACxB,2BAA2B,EAC3B,oBAAoB,EACpB,qBAAqB,EACrB,0BAA0B,EAC1B,2BAA2B,EAC3B,YAAY,EACZ,WAAW,EACX,yBAAyB,EACzB,oBAAoB,EACrB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAOnD,qBAAa,iBAAkB,SAAQ,kBAAkB;;IACvD;;;;;;OAMG;IACH,gBAAyB,eAAe,EAAE,yBAAyB,CAEjE;gBAKU,MAAM,EAAE,kBAAkB;IAOhC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IA+CrB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAK1C;;;;;;;;;OASG;IACG,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAoD3G,OAAO,CAAC,sBAAsB;IA0B9B,OAAO,CAAC,4BAA4B;IAwB9B,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,UAAU,CAAC;IAkEnE,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,UAAU,CAAC;IAgFnE,iBAAiB,CAAC,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,wBAAwB,CAAA;KAAE,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAoBvG,eAAe,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAuF3E,gBAAgB,CAAC,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,wBAAwB,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IA+BzF,mBAAmB,CAAC,KAAK,EAAE,wBAAwB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IA8D/E,sBAAsB,CAAC,KAAK,EAAE,2BAA2B,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAsErF,uBAAuB,CAAC,IAAI,EAAE;QAClC,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,CAAC,EAAE,wBAAwB,CAAC;KACpC,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAoB9B,qBAAqB,CAAC,IAAI,EAAE,0BAA0B,GAAG,OAAO,CAAC,2BAA2B,CAAC;IA2E7F,uBAAuB,CAAC,IAAI,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,wBAAwB,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IA6B1G,gBAAgB,IAAI,OAAO,CAAC,sBAAsB,EAAE,CAAC;CAgC5D"}
|
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
import { HarnessStorage } from '@mastra/core/storage';
|
|
2
|
-
import type { SessionRecord } from '@mastra/core/storage';
|
|
2
|
+
import type { SessionRecord, PruneOptions, PruneResult, RetentionTablesDescriptor, TableRetentionPolicy } from '@mastra/core/storage';
|
|
3
3
|
import type { LibSQLDomainConfig } from '../../db/index.js';
|
|
4
4
|
export declare class HarnessLibSQL extends HarnessStorage {
|
|
5
5
|
#private;
|
|
6
|
+
/** Session records accumulate over time. Single table, anchored on `createdAt`. */
|
|
7
|
+
static readonly retentionTables: RetentionTablesDescriptor;
|
|
6
8
|
constructor(config: LibSQLDomainConfig);
|
|
7
9
|
init(): Promise<void>;
|
|
8
10
|
dangerouslyClearAll(): Promise<void>;
|
|
11
|
+
/** Delete harness sessions older than the `sessions` policy's `maxAge`, batched. */
|
|
12
|
+
prune(policies: Record<string, TableRetentionPolicy>, options?: PruneOptions): Promise<PruneResult[]>;
|
|
9
13
|
loadSession(sessionId: string): Promise<SessionRecord | null>;
|
|
10
14
|
saveSession(record: SessionRecord): Promise<void>;
|
|
11
15
|
listSessions(): Promise<SessionRecord[]>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/harness/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAyC,MAAM,sBAAsB,CAAC;AAC7F,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/harness/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAyC,MAAM,sBAAsB,CAAC;AAC7F,OAAO,KAAK,EAGV,aAAa,EACb,YAAY,EACZ,WAAW,EACX,yBAAyB,EACzB,oBAAoB,EACrB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAgHnD,qBAAa,aAAc,SAAQ,cAAc;;IAC/C,mFAAmF;IACnF,gBAAyB,eAAe,EAAE,yBAAyB,CAEjE;gBAIU,MAAM,EAAE,kBAAkB;IAMhC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAOrB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAI1C,oFAAoF;IAC9E,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IASrG,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAQ7D,WAAW,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAOjD,YAAY,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;CAO/C"}
|
|
@@ -1,14 +1,28 @@
|
|
|
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, StorageCloneThreadOutput, ObservationalMemoryRecord, ObservationalMemoryHistoryOptions, CreateObservationalMemoryInput, UpdateActiveObservationsInput, UpdateBufferedObservationsInput, SwapBufferedToActiveInput, SwapBufferedToActiveResult, UpdateBufferedReflectionInput, SwapBufferedReflectionToActiveInput, CreateReflectionGenerationInput, UpdateObservationalMemoryConfigInput } from '@mastra/core/storage';
|
|
3
|
+
import type { StorageResourceType, StorageListMessagesInput, StorageListMessagesByResourceIdInput, StorageListMessagesOutput, StorageListThreadsInput, StorageListThreadsOutput, StorageCloneThreadInput, StorageCloneThreadOutput, ObservationalMemoryRecord, ObservationalMemoryHistoryOptions, CreateObservationalMemoryInput, UpdateActiveObservationsInput, UpdateBufferedObservationsInput, SwapBufferedToActiveInput, SwapBufferedToActiveResult, UpdateBufferedReflectionInput, SwapBufferedReflectionToActiveInput, CreateReflectionGenerationInput, UpdateObservationalMemoryConfigInput, PruneOptions, PruneResult, RetentionTablesDescriptor, 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 {
|
|
7
7
|
#private;
|
|
8
8
|
readonly supportsObservationalMemory = true;
|
|
9
|
+
/**
|
|
10
|
+
* Retention-eligible tables. `threads`, `messages`, and `resources` all anchor
|
|
11
|
+
* on `createdAt` and are indexed for fast batched deletes. Cascade order is
|
|
12
|
+
* enforced in `prune()` (children before threads), not here.
|
|
13
|
+
*/
|
|
14
|
+
static readonly retentionTables: RetentionTablesDescriptor;
|
|
9
15
|
constructor(config: LibSQLDomainConfig);
|
|
10
16
|
init(): Promise<void>;
|
|
11
17
|
dangerouslyClearAll(): Promise<void>;
|
|
18
|
+
/**
|
|
19
|
+
* Delete rows older than each policy's `maxAge`, batched and cancellable.
|
|
20
|
+
*
|
|
21
|
+
* Deletes children before parents (messages/resources before threads) so a
|
|
22
|
+
* `threads` policy doesn't strand rows behind a deleted parent — there are no
|
|
23
|
+
* FKs in the LibSQL schema, so cascade ordering is explicit here.
|
|
24
|
+
*/
|
|
25
|
+
prune(policies: Record<string, TableRetentionPolicy>, options?: PruneOptions): Promise<PruneResult[]>;
|
|
12
26
|
private parseRow;
|
|
13
27
|
private _sortMessages;
|
|
14
28
|
private _getIncludedMessages;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/memory/index.ts"],"names":[],"mappings":"AAEA,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,EACzB,uBAAuB,EACvB,wBAAwB,EACxB,uBAAuB,EACvB,wBAAwB,EAExB,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,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/memory/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
import { NotificationsStorage } from '@mastra/core/storage';
|
|
2
|
-
import type { CreateNotificationInput, ListDueNotificationsInput, ListNotificationsInput, NotificationRecord, UpdateNotificationInput } from '@mastra/core/storage';
|
|
2
|
+
import type { CreateNotificationInput, ListDueNotificationsInput, ListNotificationsInput, NotificationRecord, UpdateNotificationInput, PruneOptions, PruneResult, RetentionTablesDescriptor, TableRetentionPolicy } from '@mastra/core/storage';
|
|
3
3
|
import type { LibSQLDomainConfig } from '../../db/index.js';
|
|
4
4
|
export declare class NotificationsLibSQL extends NotificationsStorage {
|
|
5
5
|
#private;
|
|
6
|
+
/** The notification feed grows unbounded. Single table, anchored on `createdAt`. */
|
|
7
|
+
static readonly retentionTables: RetentionTablesDescriptor;
|
|
6
8
|
constructor(config: LibSQLDomainConfig);
|
|
7
9
|
init(): Promise<void>;
|
|
8
10
|
dangerouslyClearAll(): Promise<void>;
|
|
11
|
+
/** Delete notifications older than the `notifications` policy's `maxAge`, batched. */
|
|
12
|
+
prune(policies: Record<string, TableRetentionPolicy>, options?: PruneOptions): Promise<PruneResult[]>;
|
|
9
13
|
createNotification(input: CreateNotificationInput): Promise<NotificationRecord>;
|
|
10
14
|
listNotifications(input: ListNotificationsInput): Promise<NotificationRecord[]>;
|
|
11
15
|
listDueNotifications(input: ListDueNotificationsInput): Promise<NotificationRecord[]>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/notifications/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,oBAAoB,EAAsC,MAAM,sBAAsB,CAAC;AAChG,OAAO,KAAK,EACV,uBAAuB,EACvB,yBAAyB,EACzB,sBAAsB,EAEtB,kBAAkB,EAGlB,uBAAuB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/notifications/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,oBAAoB,EAAsC,MAAM,sBAAsB,CAAC;AAChG,OAAO,KAAK,EACV,uBAAuB,EACvB,yBAAyB,EACzB,sBAAsB,EAEtB,kBAAkB,EAGlB,uBAAuB,EACvB,YAAY,EACZ,WAAW,EACX,yBAAyB,EACzB,oBAAoB,EACrB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AA2EnD,qBAAa,mBAAoB,SAAQ,oBAAoB;;IAC3D,oFAAoF;IACpF,gBAAyB,eAAe,EAAE,yBAAyB,CAEjE;gBAKU,MAAM,EAAE,kBAAkB;IAOhC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAyBrB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAI1C,sFAAsF;IAChF,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IASrG,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA+E/E,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAoC/E,oBAAoB,CAAC,KAAK,EAAE,yBAAyB,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;IA4BrF,eAAe,CAAC,KAAK,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;IAS5F,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,GAAG,OAAO,CAAC,kBAAkB,CAAC;YAiCvE,eAAe;CA6B9B"}
|
|
@@ -1,11 +1,18 @@
|
|
|
1
1
|
import { ObservabilityStorage } from '@mastra/core/storage';
|
|
2
|
-
import type { ListTracesArgs, ListTracesResponse, TracingStorageStrategy, UpdateSpanArgs, BatchDeleteTracesArgs, BatchUpdateSpansArgs, BatchCreateSpansArgs, CreateSpanArgs, GetSpanArgs, GetSpanResponse, GetRootSpanArgs, GetRootSpanResponse, GetTraceArgs, GetTraceResponse, GetTraceLightResponse } from '@mastra/core/storage';
|
|
2
|
+
import type { ListTracesArgs, ListTracesResponse, TracingStorageStrategy, UpdateSpanArgs, BatchDeleteTracesArgs, BatchUpdateSpansArgs, BatchCreateSpansArgs, CreateSpanArgs, GetSpanArgs, GetSpanResponse, GetRootSpanArgs, GetRootSpanResponse, GetTraceArgs, GetTraceResponse, GetTraceLightResponse, PruneOptions, PruneResult, RetentionTablesDescriptor, TableRetentionPolicy } from '@mastra/core/storage';
|
|
3
3
|
import type { LibSQLDomainConfig } from '../../db/index.js';
|
|
4
4
|
export declare class ObservabilityLibSQL extends ObservabilityStorage {
|
|
5
5
|
#private;
|
|
6
|
+
/**
|
|
7
|
+
* Spans are the only physical table; traces are derived from them. Spans
|
|
8
|
+
* anchor on `startedAt` (not `createdAt`), stored as an ISO-8601 string.
|
|
9
|
+
*/
|
|
10
|
+
static readonly retentionTables: RetentionTablesDescriptor;
|
|
6
11
|
constructor(config: LibSQLDomainConfig);
|
|
7
12
|
init(): Promise<void>;
|
|
8
13
|
dangerouslyClearAll(): Promise<void>;
|
|
14
|
+
/** Delete spans older than the `spans` policy's `maxAge`, batched. */
|
|
15
|
+
prune(policies: Record<string, TableRetentionPolicy>, options?: PruneOptions): Promise<PruneResult[]>;
|
|
9
16
|
/**
|
|
10
17
|
* Manually run the spans migration to deduplicate and add the unique constraint.
|
|
11
18
|
* This is intended to be called from the CLI when duplicates are detected.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/observability/index.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,oBAAoB,EAKrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAEV,cAAc,EACd,kBAAkB,EAClB,sBAAsB,EACtB,cAAc,EACd,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,EACpB,cAAc,EACd,WAAW,EACX,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,YAAY,EACZ,gBAAgB,EAChB,qBAAqB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/observability/index.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,oBAAoB,EAKrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAEV,cAAc,EACd,kBAAkB,EAClB,sBAAsB,EACtB,cAAc,EACd,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,EACpB,cAAc,EACd,WAAW,EACX,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,YAAY,EACZ,gBAAgB,EAChB,qBAAqB,EAErB,YAAY,EACZ,WAAW,EACX,yBAAyB,EACzB,oBAAoB,EACrB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAInD,qBAAa,mBAAoB,SAAQ,oBAAoB;;IAC3D;;;OAGG;IACH,gBAAyB,eAAe,EAAE,yBAAyB,CAEjE;gBAIU,MAAM,EAAE,kBAAkB;IAMhC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAUrB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAI1C,sEAAsE;IAChE,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAS3G;;;;;OAKG;IACG,YAAY,IAAI,OAAO,CAAC;QAC5B,OAAO,EAAE,OAAO,CAAC;QACjB,eAAe,EAAE,OAAO,CAAC;QACzB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IAIF;;;OAGG;IACG,yBAAyB,IAAI,OAAO,CAAC;QACzC,cAAc,EAAE,OAAO,CAAC;QACxB,aAAa,EAAE,OAAO,CAAC;QACvB,cAAc,EAAE,MAAM,CAAC;QACvB,gBAAgB,EAAE,OAAO,CAAC;QAC1B,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IAIF,IAAoB,eAAe,IAAI;QACrC,SAAS,EAAE,sBAAsB,CAAC;QAClC,SAAS,EAAE,sBAAsB,EAAE,CAAC;KACrC,CAKA;IAEK,UAAU,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAiC/C,OAAO,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IA6B3D,WAAW,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC;IA6BvE,QAAQ,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAgC9D,aAAa,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC;IAoCxE,UAAU,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAiC/C,UAAU,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAuP7D,gBAAgB,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAgC3D,gBAAgB,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAkC3D,iBAAiB,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;CAkBpE"}
|
|
@@ -1,11 +1,19 @@
|
|
|
1
|
-
import type { Schedule, ScheduleFilter, ScheduleTrigger, ScheduleTriggerListOptions, ScheduleUpdate } from '@mastra/core/storage';
|
|
1
|
+
import type { Schedule, ScheduleFilter, ScheduleTrigger, ScheduleTriggerListOptions, ScheduleUpdate, PruneOptions, PruneResult, RetentionTablesDescriptor, TableRetentionPolicy } from '@mastra/core/storage';
|
|
2
2
|
import { SchedulesStorage } from '@mastra/core/storage';
|
|
3
3
|
import type { LibSQLDomainConfig } from '../../db/index.js';
|
|
4
4
|
export declare class SchedulesLibSQL extends SchedulesStorage {
|
|
5
5
|
#private;
|
|
6
|
+
/**
|
|
7
|
+
* The fire/run history (`schedule_triggers`, one row per fire) is the growth
|
|
8
|
+
* table; schedule definitions are config and excluded. Anchored on
|
|
9
|
+
* `actual_fire_at`, a bigint epoch-ms column (numeric comparison, not ISO).
|
|
10
|
+
*/
|
|
11
|
+
static readonly retentionTables: RetentionTablesDescriptor;
|
|
6
12
|
constructor(config: LibSQLDomainConfig);
|
|
7
13
|
init(): Promise<void>;
|
|
8
14
|
dangerouslyClearAll(): Promise<void>;
|
|
15
|
+
/** Delete schedule fire history older than the `triggers` policy's `maxAge`, batched. */
|
|
16
|
+
prune(policies: Record<string, TableRetentionPolicy>, options?: PruneOptions): Promise<PruneResult[]>;
|
|
9
17
|
createSchedule(schedule: Schedule): Promise<Schedule>;
|
|
10
18
|
getSchedule(id: string): Promise<Schedule | null>;
|
|
11
19
|
listSchedules(filter?: ScheduleFilter): Promise<Schedule[]>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/schedules/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,QAAQ,EACR,cAAc,EACd,eAAe,EACf,0BAA0B,EAG1B,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/schedules/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,QAAQ,EACR,cAAc,EACd,eAAe,EACf,0BAA0B,EAG1B,cAAc,EACd,YAAY,EACZ,WAAW,EACX,yBAAyB,EACzB,oBAAoB,EACrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,gBAAgB,EAA2D,MAAM,sBAAsB,CAAC;AAEjH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AA+DnD,qBAAa,eAAgB,SAAQ,gBAAgB;;IACnD;;;;OAIG;IACH,gBAAyB,eAAe,EAAE,yBAAyB,CAEjE;gBAKU,MAAM,EAAE,kBAAkB;IAOhC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAyBrB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAK1C,yFAAyF;IACnF,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IASrG,cAAc,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IA0BrD,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IASjD,aAAa,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAsC3D,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAYlE,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,QAAQ,CAAC;IA0DpE,sBAAsB,CAC1B,EAAE,EAAE,MAAM,EACV,kBAAkB,EAAE,MAAM,EAC1B,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,OAAO,CAAC;IAUb,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWzC,aAAa,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBtD,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,0BAA0B,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;CAuBtG"}
|
|
@@ -1,22 +1,30 @@
|
|
|
1
1
|
import type { ListScoresResponse, SaveScorePayload, ScoreRowData, ScoringSource } from '@mastra/core/evals';
|
|
2
2
|
import { ScoresStorage } from '@mastra/core/storage';
|
|
3
|
-
import type { StoragePagination } from '@mastra/core/storage';
|
|
3
|
+
import type { PruneOptions, PruneResult, RetentionTablesDescriptor, ScoreTenancyFilters, StoragePagination, TableRetentionPolicy } from '@mastra/core/storage';
|
|
4
4
|
import type { LibSQLDomainConfig } from '../../db/index.js';
|
|
5
5
|
export declare class ScoresLibSQL extends ScoresStorage {
|
|
6
6
|
#private;
|
|
7
|
+
/**
|
|
8
|
+
* Scorer results accumulate as evals run. Single table, anchored on `createdAt`.
|
|
9
|
+
*/
|
|
10
|
+
static readonly retentionTables: RetentionTablesDescriptor;
|
|
7
11
|
constructor(config: LibSQLDomainConfig);
|
|
8
12
|
init(): Promise<void>;
|
|
9
13
|
dangerouslyClearAll(): Promise<void>;
|
|
10
|
-
|
|
14
|
+
/** Delete scorer results older than the `scorers` policy's `maxAge`, batched. */
|
|
15
|
+
prune(policies: Record<string, TableRetentionPolicy>, options?: PruneOptions): Promise<PruneResult[]>;
|
|
16
|
+
listScoresByRunId({ runId, pagination, filters, }: {
|
|
11
17
|
runId: string;
|
|
12
18
|
pagination: StoragePagination;
|
|
19
|
+
filters?: ScoreTenancyFilters;
|
|
13
20
|
}): Promise<ListScoresResponse>;
|
|
14
|
-
listScoresByScorerId({ scorerId, entityId, entityType, source, pagination, }: {
|
|
21
|
+
listScoresByScorerId({ scorerId, entityId, entityType, source, pagination, filters, }: {
|
|
15
22
|
scorerId: string;
|
|
16
23
|
entityId?: string;
|
|
17
24
|
entityType?: string;
|
|
18
25
|
source?: ScoringSource;
|
|
19
26
|
pagination: StoragePagination;
|
|
27
|
+
filters?: ScoreTenancyFilters;
|
|
20
28
|
}): Promise<ListScoresResponse>;
|
|
21
29
|
/**
|
|
22
30
|
* LibSQL-specific score row transformation.
|
|
@@ -28,15 +36,17 @@ export declare class ScoresLibSQL extends ScoresStorage {
|
|
|
28
36
|
saveScore(score: SaveScorePayload): Promise<{
|
|
29
37
|
score: ScoreRowData;
|
|
30
38
|
}>;
|
|
31
|
-
listScoresByEntityId({ entityId, entityType, pagination, }: {
|
|
39
|
+
listScoresByEntityId({ entityId, entityType, pagination, filters, }: {
|
|
32
40
|
pagination: StoragePagination;
|
|
33
41
|
entityId: string;
|
|
34
42
|
entityType: string;
|
|
43
|
+
filters?: ScoreTenancyFilters;
|
|
35
44
|
}): Promise<ListScoresResponse>;
|
|
36
|
-
listScoresBySpan({ traceId, spanId, pagination, }: {
|
|
45
|
+
listScoresBySpan({ traceId, spanId, pagination, filters, }: {
|
|
37
46
|
traceId: string;
|
|
38
47
|
spanId: string;
|
|
39
48
|
pagination: StoragePagination;
|
|
49
|
+
filters?: ScoreTenancyFilters;
|
|
40
50
|
}): Promise<ListScoresResponse>;
|
|
41
51
|
}
|
|
42
52
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/scores/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAC5G,OAAO,EAIL,aAAa,EAId,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/scores/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAC5G,OAAO,EAIL,aAAa,EAId,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EACV,YAAY,EACZ,WAAW,EACX,yBAAyB,EACzB,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACrB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAgBnD,qBAAa,YAAa,SAAQ,aAAa;;IAC7C;;OAEG;IACH,gBAAyB,eAAe,EAAE,yBAAyB,CAEjE;gBAKU,MAAM,EAAE,kBAAkB;IAOhC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAUrB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAI1C,iFAAiF;IAC3E,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IASrG,iBAAiB,CAAC,EACtB,KAAK,EACL,UAAU,EACV,OAAO,GACR,EAAE;QACD,KAAK,EAAE,MAAM,CAAC;QACd,UAAU,EAAE,iBAAiB,CAAC;QAC9B,OAAO,CAAC,EAAE,mBAAmB,CAAC;KAC/B,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA4DzB,oBAAoB,CAAC,EACzB,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,MAAM,EACN,UAAU,EACV,OAAO,GACR,EAAE;QACD,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,MAAM,CAAC,EAAE,aAAa,CAAC;QACvB,UAAU,EAAE,iBAAiB,CAAC;QAC9B,OAAO,CAAC,EAAE,mBAAmB,CAAC;KAC/B,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAmF/B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAInB,YAAY,CAAC,EAAE,EAAE,EAAE,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAQlE,SAAS,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,YAAY,CAAA;KAAE,CAAC;IAiDpE,oBAAoB,CAAC,EACzB,QAAQ,EACR,UAAU,EACV,UAAU,EACV,OAAO,GACR,EAAE;QACD,UAAU,EAAE,iBAAiB,CAAC;QAC9B,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,mBAAmB,CAAC;KAC/B,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA6DzB,gBAAgB,CAAC,EACrB,OAAO,EACP,MAAM,EACN,UAAU,EACV,OAAO,GACR,EAAE;QACD,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,iBAAiB,CAAC;QAC9B,OAAO,CAAC,EAAE,mBAAmB,CAAC;KAC/B,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAgDhC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { ThreadStateStorage } from '@mastra/core/storage';
|
|
2
|
+
import type { PruneOptions, PruneResult, RetentionTablesDescriptor, TableRetentionPolicy } from '@mastra/core/storage';
|
|
2
3
|
import type { LibSQLDomainConfig } from '../../db/index.js';
|
|
3
4
|
/**
|
|
4
5
|
* LibSQL implementation of {@link ThreadStateStorage}.
|
|
@@ -9,8 +10,16 @@ import type { LibSQLDomainConfig } from '../../db/index.js';
|
|
|
9
10
|
*/
|
|
10
11
|
export declare class ThreadStateLibSQL extends ThreadStateStorage {
|
|
11
12
|
#private;
|
|
13
|
+
/**
|
|
14
|
+
* `thread_state` grows as a side effect of thread activity (one row per
|
|
15
|
+
* thread per state type). It anchors on `updatedAt` (last activity), so state
|
|
16
|
+
* for a thread that is still being appended to is not pruned by creation age.
|
|
17
|
+
*/
|
|
18
|
+
static readonly retentionTables: RetentionTablesDescriptor;
|
|
12
19
|
constructor(config: LibSQLDomainConfig);
|
|
13
20
|
init(): Promise<void>;
|
|
21
|
+
/** Delete thread state older than the `threadState` policy's `maxAge`, batched. */
|
|
22
|
+
prune(policies: Record<string, TableRetentionPolicy>, options?: PruneOptions): Promise<PruneResult[]>;
|
|
14
23
|
dangerouslyClearAll(): Promise<void>;
|
|
15
24
|
getState<T = unknown>({ threadId, type }: {
|
|
16
25
|
threadId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/thread-state/index.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,kBAAkB,EAInB,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/thread-state/index.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,kBAAkB,EAInB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAGvH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAGnD;;;;;;GAMG;AACH,qBAAa,iBAAkB,SAAQ,kBAAkB;;IACvD;;;;OAIG;IACH,MAAM,CAAC,QAAQ,CAAC,eAAe,EAAE,yBAAyB,CAExD;gBAKU,MAAM,EAAE,kBAAkB;IAOhC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ3B,mFAAmF;IAC7E,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IASrG,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAepC,QAAQ,CAAC,CAAC,GAAG,OAAO,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAsBrG,QAAQ,CAAC,CAAC,GAAG,OAAO,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,CAAC,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAwB7G,WAAW,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAkBzF"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { InValue } from '@libsql/client';
|
|
2
|
+
import type { DatasetTenancyFilters, ExperimentTenancyFilters } from '@mastra/core/storage';
|
|
3
|
+
/**
|
|
4
|
+
* Tenancy scope shape shared by domains that carry `organizationId` / `projectId`
|
|
5
|
+
* columns (datasets, experiments, ...). Aliases the core tenancy filter types so
|
|
6
|
+
* this helper stays in sync if the core shape ever changes.
|
|
7
|
+
*/
|
|
8
|
+
export type TenancyScope = DatasetTenancyFilters | ExperimentTenancyFilters;
|
|
9
|
+
/**
|
|
10
|
+
* Build additional `AND col = ?` conditions for a tenancy read-scope filter.
|
|
11
|
+
* Returned in the shape expected by libsql's parameterized SQL builders.
|
|
12
|
+
* When `filters` is undefined or empty, returns empty arrays (no scoping).
|
|
13
|
+
*
|
|
14
|
+
* Shared across domains (datasets, experiments, ...) so tenancy predicates stay
|
|
15
|
+
* consistent and cross-tenant reads/deletes do not leak.
|
|
16
|
+
*/
|
|
17
|
+
export declare function tenancyWhere(filters?: TenancyScope): {
|
|
18
|
+
conditions: string[];
|
|
19
|
+
params: InValue[];
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Build a WHERE clause that scopes a query to `<idColumn> = ?` plus any tenancy
|
|
23
|
+
* predicates. Small DRY helper on top of {@link tenancyWhere} for the common
|
|
24
|
+
* pattern used by tenancy-aware getters and deletes.
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* const { sql, args } = buildScopedWhere('id', args.id, args.filters);
|
|
28
|
+
* await client.execute({ sql: `SELECT * FROM t WHERE ${sql}`, args });
|
|
29
|
+
*/
|
|
30
|
+
export declare function buildScopedWhere(idColumn: string, idValue: InValue, filters?: TenancyScope): {
|
|
31
|
+
sql: string;
|
|
32
|
+
args: InValue[];
|
|
33
|
+
};
|
|
34
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/storage/domains/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAE5F;;;;GAIG;AACH,MAAM,MAAM,YAAY,GAAG,qBAAqB,GAAG,wBAAwB,CAAC;AAE5E;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG;IAAE,UAAU,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,EAAE,OAAO,EAAE,CAAA;CAAE,CAYhG;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE,YAAY,GACrB;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,OAAO,EAAE,CAAA;CAAE,CAMlC"}
|
|
@@ -1,15 +1,22 @@
|
|
|
1
|
-
import type { WorkflowRun, WorkflowRuns, StorageListWorkflowRunsInput, UpdateWorkflowStateOptions } from '@mastra/core/storage';
|
|
1
|
+
import type { WorkflowRun, WorkflowRuns, StorageListWorkflowRunsInput, UpdateWorkflowStateOptions, PruneOptions, PruneResult, RetentionTablesDescriptor, TableRetentionPolicy } 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';
|
|
5
5
|
export declare class WorkflowsLibSQL extends WorkflowsStorage {
|
|
6
6
|
#private;
|
|
7
|
+
/**
|
|
8
|
+
* Workflow run snapshots accumulate as runs execute. Anchored on `updatedAt`
|
|
9
|
+
* (last activity) so suspended/long-running runs are not pruned by start age.
|
|
10
|
+
*/
|
|
11
|
+
static readonly retentionTables: RetentionTablesDescriptor;
|
|
7
12
|
private readonly executeWithRetry;
|
|
8
13
|
constructor(config: LibSQLDomainConfig);
|
|
9
14
|
supportsConcurrentUpdates(): boolean;
|
|
10
15
|
private parseWorkflowRun;
|
|
11
16
|
init(): Promise<void>;
|
|
12
17
|
dangerouslyClearAll(): Promise<void>;
|
|
18
|
+
/** Delete workflow snapshots older than the `workflowSnapshot` policy's `maxAge`, batched. */
|
|
19
|
+
prune(policies: Record<string, TableRetentionPolicy>, options?: PruneOptions): Promise<PruneResult[]>;
|
|
13
20
|
private setupPragmaSettings;
|
|
14
21
|
updateWorkflowResults({ workflowName, runId, stepId, result, requestContext, }: {
|
|
15
22
|
workflowName: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/workflows/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EACZ,4BAA4B,EAC5B,0BAA0B,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/workflows/index.ts"],"names":[],"mappings":"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"}
|
package/dist/storage/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Client } from '@libsql/client';
|
|
2
|
-
import type { StorageDomains } from '@mastra/core/storage';
|
|
2
|
+
import type { RetentionConfig, StorageDomains } from '@mastra/core/storage';
|
|
3
3
|
import { MastraCompositeStore } from '@mastra/core/storage';
|
|
4
4
|
import { AgentsLibSQL } from './domains/agents/index.js';
|
|
5
5
|
import { BackgroundTasksLibSQL } from './domains/background-tasks/index.js';
|
|
@@ -93,6 +93,13 @@ export type LibSQLBaseConfig = {
|
|
|
93
93
|
* // No auto-init, tables must already exist
|
|
94
94
|
*/
|
|
95
95
|
disableInit?: boolean;
|
|
96
|
+
/**
|
|
97
|
+
* Opt-in, table-granular, age-based retention policies. Declare per-table
|
|
98
|
+
* `maxAge` per domain (e.g. `{ memory: { messages: { maxAge: '30d' } } }`);
|
|
99
|
+
* unset tables are kept forever. Wire `storage.prune()` to your own cron to
|
|
100
|
+
* apply them. See {@link RetentionConfig}.
|
|
101
|
+
*/
|
|
102
|
+
retention?: RetentionConfig;
|
|
96
103
|
};
|
|
97
104
|
export type LibSQLConfig = (LibSQLBaseConfig & {
|
|
98
105
|
url: string;
|