@mastra/pg 1.0.0-beta.9 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +1404 -0
- package/dist/docs/README.md +36 -0
- package/dist/docs/SKILL.md +37 -0
- package/dist/docs/SOURCE_MAP.json +6 -0
- package/dist/docs/memory/01-storage.md +233 -0
- package/dist/docs/memory/02-working-memory.md +390 -0
- package/dist/docs/memory/03-semantic-recall.md +233 -0
- package/dist/docs/memory/04-reference.md +133 -0
- package/dist/docs/processors/01-reference.md +297 -0
- package/dist/docs/rag/01-overview.md +74 -0
- package/dist/docs/rag/02-vector-databases.md +643 -0
- package/dist/docs/rag/03-retrieval.md +548 -0
- package/dist/docs/rag/04-reference.md +369 -0
- package/dist/docs/storage/01-reference.md +828 -0
- package/dist/docs/tools/01-reference.md +440 -0
- package/dist/docs/vectors/01-reference.md +307 -0
- package/dist/index.cjs +1003 -223
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1000 -225
- package/dist/index.js.map +1 -1
- package/dist/shared/config.d.ts +61 -66
- package/dist/shared/config.d.ts.map +1 -1
- package/dist/storage/client.d.ts +91 -0
- package/dist/storage/client.d.ts.map +1 -0
- package/dist/storage/db/index.d.ts +82 -17
- package/dist/storage/db/index.d.ts.map +1 -1
- package/dist/storage/domains/memory/index.d.ts +3 -2
- package/dist/storage/domains/memory/index.d.ts.map +1 -1
- package/dist/storage/domains/observability/index.d.ts +23 -0
- package/dist/storage/domains/observability/index.d.ts.map +1 -1
- package/dist/storage/domains/scores/index.d.ts.map +1 -1
- package/dist/storage/domains/workflows/index.d.ts +1 -0
- package/dist/storage/domains/workflows/index.d.ts.map +1 -1
- package/dist/storage/index.d.ts +44 -17
- package/dist/storage/index.d.ts.map +1 -1
- package/dist/storage/test-utils.d.ts.map +1 -1
- package/dist/vector/index.d.ts.map +1 -1
- package/dist/vector/sql-builder.d.ts.map +1 -1
- package/package.json +11 -11
package/dist/storage/index.d.ts
CHANGED
|
@@ -1,39 +1,66 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import type { StorageDomains
|
|
3
|
-
import
|
|
1
|
+
import { MastraCompositeStore } from '@mastra/core/storage';
|
|
2
|
+
import type { StorageDomains } from '@mastra/core/storage';
|
|
3
|
+
import { Pool } from 'pg';
|
|
4
4
|
import type { PostgresStoreConfig } from '../shared/config.js';
|
|
5
|
+
import type { DbClient } from './client.js';
|
|
6
|
+
import { AgentsPG } from './domains/agents/index.js';
|
|
7
|
+
import { MemoryPG } from './domains/memory/index.js';
|
|
8
|
+
import { ObservabilityPG } from './domains/observability/index.js';
|
|
9
|
+
import { ScoresPG } from './domains/scores/index.js';
|
|
10
|
+
import { WorkflowsPG } from './domains/workflows/index.js';
|
|
11
|
+
export { exportSchemas } from './db/index.js';
|
|
12
|
+
export { AgentsPG, MemoryPG, ObservabilityPG, ScoresPG, WorkflowsPG };
|
|
13
|
+
export { PoolAdapter } from './client.js';
|
|
14
|
+
export type { DbClient, TxClient, QueryValues, Pool, PoolClient, QueryResult } from './client.js';
|
|
15
|
+
export type { PgDomainConfig, PgDomainClientConfig, PgDomainPoolConfig, PgDomainRestConfig } from './db/index.js';
|
|
5
16
|
/**
|
|
6
17
|
* PostgreSQL storage adapter for Mastra.
|
|
7
18
|
*
|
|
8
|
-
* Access domain-specific storage via `getStore()`:
|
|
9
|
-
*
|
|
10
19
|
* @example
|
|
11
20
|
* ```typescript
|
|
12
|
-
*
|
|
21
|
+
* // Option 1: Connection string
|
|
22
|
+
* const store = new PostgresStore({
|
|
23
|
+
* id: 'my-store',
|
|
24
|
+
* connectionString: 'postgresql://...',
|
|
25
|
+
* });
|
|
26
|
+
*
|
|
27
|
+
* // Option 2: Pre-configured pool
|
|
28
|
+
* const pool = new Pool({ connectionString: 'postgresql://...' });
|
|
29
|
+
* const store = new PostgresStore({ id: 'my-store', pool });
|
|
13
30
|
*
|
|
14
|
-
* // Access
|
|
15
|
-
* const memory = await
|
|
31
|
+
* // Access domain storage
|
|
32
|
+
* const memory = await store.getStore('memory');
|
|
16
33
|
* await memory?.saveThread({ thread });
|
|
17
34
|
*
|
|
18
|
-
* //
|
|
19
|
-
* const
|
|
20
|
-
* await workflows?.persistWorkflowSnapshot({ workflowName, runId, snapshot });
|
|
35
|
+
* // Execute custom queries
|
|
36
|
+
* const rows = await store.db.any('SELECT * FROM my_table');
|
|
21
37
|
* ```
|
|
22
38
|
*/
|
|
23
|
-
export declare class PostgresStore extends
|
|
39
|
+
export declare class PostgresStore extends MastraCompositeStore {
|
|
24
40
|
#private;
|
|
25
41
|
private schema;
|
|
26
42
|
private isInitialized;
|
|
27
43
|
stores: StorageDomains;
|
|
28
44
|
constructor(config: PostgresStoreConfig);
|
|
45
|
+
private createPool;
|
|
29
46
|
init(): Promise<void>;
|
|
30
|
-
get db(): pgPromise.IDatabase<{}, import("pg-promise/typescript/pg-subset").IClient>;
|
|
31
|
-
get pgp(): pgPromise.IMain<{}, import("pg-promise/typescript/pg-subset").IClient>;
|
|
32
|
-
get supports(): StorageSupports;
|
|
33
47
|
/**
|
|
34
|
-
*
|
|
48
|
+
* Database client for executing queries.
|
|
35
49
|
*
|
|
36
|
-
*
|
|
50
|
+
* @example
|
|
51
|
+
* ```typescript
|
|
52
|
+
* const rows = await store.db.any('SELECT * FROM users WHERE active = $1', [true]);
|
|
53
|
+
* const user = await store.db.one('SELECT * FROM users WHERE id = $1', [userId]);
|
|
54
|
+
* ```
|
|
55
|
+
*/
|
|
56
|
+
get db(): DbClient;
|
|
57
|
+
/**
|
|
58
|
+
* The underlying pg.Pool for direct database access or ORM integration.
|
|
59
|
+
*/
|
|
60
|
+
get pool(): Pool;
|
|
61
|
+
/**
|
|
62
|
+
* Closes the connection pool if it was created by this store.
|
|
63
|
+
* If a pool was passed in via config, it will not be closed.
|
|
37
64
|
*/
|
|
38
65
|
close(): Promise<void>;
|
|
39
66
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/storage/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAwB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/storage/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAwB,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAClF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAQ1B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAE5D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAOlD,OAAO,EAAE,aAAa,EAAE,MAAM,MAAM,CAAC;AAErC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC/F,YAAY,EAAE,cAAc,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,MAAM,CAAC;AAEzG;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,aAAc,SAAQ,oBAAoB;;IAIrD,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,aAAa,CAAkB;IAEvC,MAAM,EAAE,cAAc,CAAC;gBAEX,MAAM,EAAE,mBAAmB;IA2CvC,OAAO,CAAC,UAAU;IA8BZ,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAyB3B;;;;;;;;OAQG;IACH,IAAW,EAAE,IAAI,QAAQ,CAExB;IAED;;OAEG;IACH,IAAW,IAAI,IAAI,IAAI,CAEtB;IAED;;;OAGG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAK7B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-utils.d.ts","sourceRoot":"","sources":["../../src/storage/test-utils.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAK5D,eAAO,MAAM,WAAW,EAAE,mBAOF,CAAC;AAEzB,eAAO,MAAM,gBAAgB,QAA0K,CAAC;AAExM,wBAAgB,OAAO,
|
|
1
|
+
{"version":3,"file":"test-utils.d.ts","sourceRoot":"","sources":["../../src/storage/test-utils.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAK5D,eAAO,MAAM,WAAW,EAAE,mBAOF,CAAC;AAEzB,eAAO,MAAM,gBAAgB,QAA0K,CAAC;AAExM,wBAAgB,OAAO,SAgyBtB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vector/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vector/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sql-builder.d.ts","sourceRoot":"","sources":["../../src/vector/sql-builder.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"sql-builder.d.ts","sourceRoot":"","sources":["../../src/vector/sql-builder.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AA2P/C,UAAU,YAAY;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,GAAG,EAAE,CAAC;CACf;AAWD;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,cAAc,GAAG,YAAY,CA6J3E;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,YAAY,CA6JrG"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mastra/pg",
|
|
3
|
-
"version": "1.0.0
|
|
3
|
+
"version": "1.0.0",
|
|
4
4
|
"description": "Postgres provider for Mastra - includes both vector and db storage capabilities",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -22,22 +22,21 @@
|
|
|
22
22
|
"dependencies": {
|
|
23
23
|
"async-mutex": "^0.5.0",
|
|
24
24
|
"pg": "^8.16.3",
|
|
25
|
-
"pg-promise": "^11.15.0",
|
|
26
25
|
"xxhash-wasm": "^1.1.0"
|
|
27
26
|
},
|
|
28
27
|
"devDependencies": {
|
|
29
28
|
"@types/node": "22.13.17",
|
|
30
|
-
"@types/pg": "^8.
|
|
29
|
+
"@types/pg": "^8.16.0",
|
|
31
30
|
"@vitest/coverage-v8": "4.0.12",
|
|
32
31
|
"@vitest/ui": "4.0.12",
|
|
33
32
|
"eslint": "^9.37.0",
|
|
34
33
|
"tsup": "^8.5.0",
|
|
35
|
-
"typescript": "^5.
|
|
36
|
-
"vitest": "4.0.
|
|
37
|
-
"@internal/lint": "0.0.
|
|
38
|
-
"@internal/
|
|
39
|
-
"@
|
|
40
|
-
"@
|
|
34
|
+
"typescript": "^5.9.3",
|
|
35
|
+
"vitest": "4.0.16",
|
|
36
|
+
"@internal/lint": "0.0.54",
|
|
37
|
+
"@internal/types-builder": "0.0.29",
|
|
38
|
+
"@mastra/core": "1.0.0",
|
|
39
|
+
"@internal/storage-test-utils": "0.0.50"
|
|
41
40
|
},
|
|
42
41
|
"peerDependencies": {
|
|
43
42
|
"@mastra/core": ">=1.0.0-0 <2.0.0-0"
|
|
@@ -59,8 +58,9 @@
|
|
|
59
58
|
"node": ">=22.13.0"
|
|
60
59
|
},
|
|
61
60
|
"scripts": {
|
|
62
|
-
"build": "tsup --silent --config tsup.config.ts",
|
|
63
|
-
"build:
|
|
61
|
+
"build:lib": "tsup --silent --config tsup.config.ts",
|
|
62
|
+
"build:docs": "pnpx tsx ../../scripts/generate-package-docs.ts stores/pg",
|
|
63
|
+
"build:watch": "pnpm build:lib --watch",
|
|
64
64
|
"pretest": "docker compose up -d && (for i in $(seq 1 30); do docker compose exec -T db pg_isready -U postgres && break || (sleep 1; [ $i -eq 30 ] && exit 1); done)",
|
|
65
65
|
"test": "vitest run",
|
|
66
66
|
"pretest:perf": "docker compose -f docker-compose.perf.yaml up -d && (for i in $(seq 1 30); do docker compose -f docker-compose.perf.yaml exec -T db pg_isready -U postgres && break || (sleep 1; [ $i -eq 30 ] && exit 1); done)",
|