@mastra/mongodb 1.0.0-beta.8 → 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 +1058 -0
- package/README.md +18 -0
- package/dist/docs/README.md +34 -0
- package/dist/docs/SKILL.md +35 -0
- package/dist/docs/SOURCE_MAP.json +6 -0
- package/dist/docs/memory/01-working-memory.md +390 -0
- package/dist/docs/rag/01-vector-databases.md +643 -0
- package/dist/docs/rag/02-retrieval.md +548 -0
- package/dist/docs/storage/01-reference.md +243 -0
- package/dist/docs/vectors/01-reference.md +201 -0
- package/dist/index.cjs +310 -59
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +308 -62
- package/dist/index.js.map +1 -1
- package/dist/storage/db/index.d.ts.map +1 -1
- package/dist/storage/domains/memory/index.d.ts +2 -2
- package/dist/storage/domains/memory/index.d.ts.map +1 -1
- package/dist/storage/domains/observability/index.d.ts +46 -0
- package/dist/storage/domains/observability/index.d.ts.map +1 -1
- package/dist/storage/index.d.ts +10 -4
- package/dist/storage/index.d.ts.map +1 -1
- package/dist/storage/types.d.ts +14 -2
- package/dist/storage/types.d.ts.map +1 -1
- package/dist/vector/index.d.ts +17 -6
- package/dist/vector/index.d.ts.map +1 -1
- package/package.json +11 -10
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/storage/db/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAGnE,YAAY,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAElE;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,aAAa,GAAG,mBAAmB,GAAG,gBAAgB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/storage/db/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAGnE,YAAY,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAElE;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,aAAa,GAAG,mBAAmB,GAAG,gBAAgB,CAqDlG"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { MastraMessageContentV2 } from '@mastra/core/agent';
|
|
2
2
|
import type { MastraDBMessage, StorageThreadType } from '@mastra/core/memory';
|
|
3
3
|
import { MemoryStorage } from '@mastra/core/storage';
|
|
4
|
-
import type { StorageResourceType, StorageListMessagesInput, StorageListMessagesOutput,
|
|
4
|
+
import type { StorageResourceType, StorageListMessagesInput, StorageListMessagesOutput, StorageListThreadsInput, StorageListThreadsOutput } from '@mastra/core/storage';
|
|
5
5
|
import type { MongoDBDomainConfig, MongoDBIndexConfig } from '../../types.js';
|
|
6
6
|
export declare class MemoryStorageMongoDB extends MemoryStorage {
|
|
7
7
|
#private;
|
|
@@ -59,7 +59,7 @@ export declare class MemoryStorageMongoDB extends MemoryStorage {
|
|
|
59
59
|
getThreadById({ threadId }: {
|
|
60
60
|
threadId: string;
|
|
61
61
|
}): Promise<StorageThreadType | null>;
|
|
62
|
-
|
|
62
|
+
listThreads(args: StorageListThreadsInput): Promise<StorageListThreadsOutput>;
|
|
63
63
|
saveThread({ thread }: {
|
|
64
64
|
thread: StorageThreadType;
|
|
65
65
|
}): Promise<StorageThreadType>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/memory/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAEjE,OAAO,KAAK,EAAmB,eAAe,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC/F,OAAO,EAEL,aAAa,EAOd,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EACV,mBAAmB,EACnB,wBAAwB,EACxB,yBAAyB,EACzB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/memory/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,6 +18,52 @@ export declare class ObservabilityMongoDB extends ObservabilityStorage {
|
|
|
18
18
|
*/
|
|
19
19
|
createCustomIndexes(): Promise<void>;
|
|
20
20
|
init(): Promise<void>;
|
|
21
|
+
/**
|
|
22
|
+
* Checks if the unique index on (spanId, traceId) already exists on the spans collection.
|
|
23
|
+
* Used to skip deduplication when the index already exists (migration already complete).
|
|
24
|
+
*/
|
|
25
|
+
private spansUniqueIndexExists;
|
|
26
|
+
/**
|
|
27
|
+
* Checks for duplicate (traceId, spanId) combinations in the spans collection.
|
|
28
|
+
* Returns information about duplicates for logging/CLI purposes.
|
|
29
|
+
*/
|
|
30
|
+
private checkForDuplicateSpans;
|
|
31
|
+
/**
|
|
32
|
+
* Manually run the spans migration to deduplicate and add the unique index.
|
|
33
|
+
* This is intended to be called from the CLI when duplicates are detected.
|
|
34
|
+
*
|
|
35
|
+
* @returns Migration result with status and details
|
|
36
|
+
*/
|
|
37
|
+
migrateSpans(): Promise<{
|
|
38
|
+
success: boolean;
|
|
39
|
+
alreadyMigrated: boolean;
|
|
40
|
+
duplicatesRemoved: number;
|
|
41
|
+
message: string;
|
|
42
|
+
}>;
|
|
43
|
+
/**
|
|
44
|
+
* Check migration status for the spans collection.
|
|
45
|
+
* Returns information about whether migration is needed.
|
|
46
|
+
*/
|
|
47
|
+
checkSpansMigrationStatus(): Promise<{
|
|
48
|
+
needsMigration: boolean;
|
|
49
|
+
hasDuplicates: boolean;
|
|
50
|
+
duplicateCount: number;
|
|
51
|
+
constraintExists: boolean;
|
|
52
|
+
tableName: string;
|
|
53
|
+
}>;
|
|
54
|
+
/**
|
|
55
|
+
* Deduplicates spans with the same (traceId, spanId) combination.
|
|
56
|
+
* This is needed for databases that existed before the unique constraint was added.
|
|
57
|
+
*
|
|
58
|
+
* Priority for keeping spans:
|
|
59
|
+
* 1. Completed spans (endedAt IS NOT NULL) over incomplete spans
|
|
60
|
+
* 2. Most recent updatedAt
|
|
61
|
+
* 3. Most recent createdAt (as tiebreaker)
|
|
62
|
+
*
|
|
63
|
+
* Note: This prioritizes migration completion over perfect data preservation.
|
|
64
|
+
* Old trace data may be lost, which is acceptable for this use case.
|
|
65
|
+
*/
|
|
66
|
+
private deduplicateSpans;
|
|
21
67
|
dangerouslyClearAll(): Promise<void>;
|
|
22
68
|
get tracingStrategy(): {
|
|
23
69
|
preferred: TracingStorageStrategy;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/observability/index.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,oBAAoB,EAGrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EACV,UAAU,EAEV,cAAc,EACd,cAAc,EACd,sBAAsB,EACtB,cAAc,EACd,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,EACpB,cAAc,EACd,WAAW,EACX,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,YAAY,EACZ,gBAAgB,EACjB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAE3E,qBAAa,oBAAqB,SAAQ,oBAAoB;;IAK5D,yCAAyC;IACzC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,+BAA0B;gBAEjD,MAAM,EAAE,mBAAmB;YAUzB,aAAa;IAI3B;;;OAGG;IACH,0BAA0B,IAAI,kBAAkB,EAAE;IAW5C,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;IAe3C;;OAEG;IACG,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAepC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/observability/index.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,oBAAoB,EAGrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EACV,UAAU,EAEV,cAAc,EACd,cAAc,EACd,sBAAsB,EACtB,cAAc,EACd,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,EACpB,cAAc,EACd,WAAW,EACX,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,YAAY,EACZ,gBAAgB,EACjB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAE3E,qBAAa,oBAAqB,SAAQ,oBAAoB;;IAK5D,yCAAyC;IACzC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,+BAA0B;gBAEjD,MAAM,EAAE,mBAAmB;YAUzB,aAAa;IAI3B;;;OAGG;IACH,0BAA0B,IAAI,kBAAkB,EAAE;IAW5C,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;IAe3C;;OAEG;IACG,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAepC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IA2C3B;;;OAGG;YACW,sBAAsB;IAYpC;;;OAGG;YACW,sBAAsB;IAiCpC;;;;;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;IAwCF;;;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;IAuBF;;;;;;;;;;;OAWG;YACW,gBAAgB;IAqFxB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAK1C,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;IAkC/C,OAAO,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IA0B3D,WAAW,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC;IA0BvE,QAAQ,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IA8B9D,UAAU,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAmC/C,UAAU,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC;QAAE,UAAU,EAAE,cAAc,CAAC;QAAC,KAAK,EAAE,UAAU,EAAE,CAAA;KAAE,CAAC;IAyS9F,gBAAgB,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IA+B3D,gBAAgB,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IA4C3D,iBAAiB,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBnE;;OAEG;IACH,OAAO,CAAC,sBAAsB;CAoB/B"}
|
package/dist/storage/index.d.ts
CHANGED
|
@@ -1,6 +1,13 @@
|
|
|
1
|
-
import type { StorageDomains
|
|
2
|
-
import {
|
|
1
|
+
import type { StorageDomains } from '@mastra/core/storage';
|
|
2
|
+
import { MastraCompositeStore } from '@mastra/core/storage';
|
|
3
|
+
import { MongoDBAgentsStorage } from './domains/agents/index.js';
|
|
4
|
+
import { MemoryStorageMongoDB } from './domains/memory/index.js';
|
|
5
|
+
import { ObservabilityMongoDB } from './domains/observability/index.js';
|
|
6
|
+
import { ScoresStorageMongoDB } from './domains/scores/index.js';
|
|
7
|
+
import { WorkflowsStorageMongoDB } from './domains/workflows/index.js';
|
|
3
8
|
import type { MongoDBConfig } from './types.js';
|
|
9
|
+
export { MongoDBAgentsStorage, MemoryStorageMongoDB, ObservabilityMongoDB, ScoresStorageMongoDB, WorkflowsStorageMongoDB, };
|
|
10
|
+
export type { MongoDBDomainConfig } from './db/index.js';
|
|
4
11
|
/**
|
|
5
12
|
* MongoDB storage adapter for Mastra.
|
|
6
13
|
*
|
|
@@ -19,10 +26,9 @@ import type { MongoDBConfig } from './types.js';
|
|
|
19
26
|
* await workflows?.persistWorkflowSnapshot({ workflowName, runId, snapshot });
|
|
20
27
|
* ```
|
|
21
28
|
*/
|
|
22
|
-
export declare class MongoDBStore extends
|
|
29
|
+
export declare class MongoDBStore extends MastraCompositeStore {
|
|
23
30
|
#private;
|
|
24
31
|
stores: StorageDomains;
|
|
25
|
-
get supports(): StorageSupports;
|
|
26
32
|
constructor(config: MongoDBConfig);
|
|
27
33
|
/**
|
|
28
34
|
* Closes the MongoDB client connection.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/storage/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/storage/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAwB,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAGlF,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAG7C,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,uBAAuB,GACxB,CAAC;AACF,YAAY,EAAE,mBAAmB,EAAE,MAAM,MAAM,CAAC;AAEhD;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,YAAa,SAAQ,oBAAoB;;IAGpD,MAAM,EAAE,cAAc,CAAC;gBAEX,MAAM,EAAE,aAAa;IA8BjC;;;;OAIG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAc7B"}
|
package/dist/storage/types.d.ts
CHANGED
|
@@ -61,7 +61,13 @@ export type MongoDBConfig = DatabaseConfig | (MongoDBBaseConfig & {
|
|
|
61
61
|
connectorHandler: ConnectorHandler;
|
|
62
62
|
});
|
|
63
63
|
export type DatabaseConfig = MongoDBBaseConfig & {
|
|
64
|
-
|
|
64
|
+
/** MongoDB connection string */
|
|
65
|
+
uri?: string;
|
|
66
|
+
/**
|
|
67
|
+
* MongoDB connection string
|
|
68
|
+
* @deprecated Use `uri` instead
|
|
69
|
+
*/
|
|
70
|
+
url?: string;
|
|
65
71
|
dbName: string;
|
|
66
72
|
options?: MongoClientOptions;
|
|
67
73
|
};
|
|
@@ -82,7 +88,13 @@ export type MongoDBDomainConfig = {
|
|
|
82
88
|
skipDefaultIndexes?: boolean;
|
|
83
89
|
indexes?: MongoDBIndexConfig[];
|
|
84
90
|
} | {
|
|
85
|
-
|
|
91
|
+
/** MongoDB connection string */
|
|
92
|
+
uri?: string;
|
|
93
|
+
/**
|
|
94
|
+
* MongoDB connection string
|
|
95
|
+
* @deprecated Use `uri` instead
|
|
96
|
+
*/
|
|
97
|
+
url?: string;
|
|
86
98
|
dbName: string;
|
|
87
99
|
options?: MongoClientOptions;
|
|
88
100
|
disableInit?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/storage/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAC5F,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAEtE;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX;;;;;;;;;;;;;;;;;;OAkBG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;;;;OAQG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;;;;;;;;;;;;;;;;;;OAkBG;IACH,OAAO,CAAC,EAAE,kBAAkB,EAAE,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,aAAa,GACrB,cAAc,GACd,CAAC,iBAAiB,GAAG;IACnB,gBAAgB,EAAE,gBAAgB,CAAC;CACpC,CAAC,CAAC;AAEP,MAAM,MAAM,cAAc,GAAG,iBAAiB,GAAG;IAC/C,GAAG,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/storage/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAC5F,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAEtE;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX;;;;;;;;;;;;;;;;;;OAkBG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;;;;OAQG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;;;;;;;;;;;;;;;;;;OAkBG;IACH,OAAO,CAAC,EAAE,kBAAkB,EAAE,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,aAAa,GACrB,cAAc,GACd,CAAC,iBAAiB,GAAG;IACnB,gBAAgB,EAAE,gBAAgB,CAAC;CACpC,CAAC,CAAC;AAEP,MAAM,MAAM,cAAc,GAAG,iBAAiB,GAAG;IAC/C,gCAAgC;IAChC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,kBAAkB,CAAC;CAC9B,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,mBAAmB,GAC3B;IAAE,SAAS,EAAE,gBAAgB,CAAC;IAAC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,kBAAkB,EAAE,CAAA;CAAE,GAC7F;IACE,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,OAAO,CAAC,EAAE,kBAAkB,EAAE,CAAC;CAChC,GACD;IACE,gCAAgC;IAChC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,OAAO,CAAC,EAAE,kBAAkB,EAAE,CAAC;CAChC,CAAC;AAEN;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,sBAAsB;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,+EAA+E;IAC/E,IAAI,EAAE,kBAAkB,CAAC;IACzB,6CAA6C;IAC7C,OAAO,CAAC,EAAE,oBAAoB,CAAC;CAChC"}
|
package/dist/vector/index.d.ts
CHANGED
|
@@ -8,6 +8,22 @@ export interface MongoDBUpsertVectorParams extends UpsertVectorParams {
|
|
|
8
8
|
interface MongoDBQueryVectorParams extends QueryVectorParams<MongoDBVectorFilter> {
|
|
9
9
|
documentFilter?: MongoDBVectorFilter;
|
|
10
10
|
}
|
|
11
|
+
export interface MongoDBVectorConfig {
|
|
12
|
+
/** Unique identifier for this vector store instance */
|
|
13
|
+
id: string;
|
|
14
|
+
/** MongoDB connection string */
|
|
15
|
+
uri: string;
|
|
16
|
+
/** Name of the MongoDB database to use */
|
|
17
|
+
dbName: string;
|
|
18
|
+
/** Optional MongoDB client options */
|
|
19
|
+
options?: MongoClientOptions;
|
|
20
|
+
/**
|
|
21
|
+
* Path to the field that stores vector embeddings.
|
|
22
|
+
* Supports nested paths using dot notation (e.g., 'text.contentEmbedding').
|
|
23
|
+
* @default 'embedding'
|
|
24
|
+
*/
|
|
25
|
+
embeddingFieldPath?: string;
|
|
26
|
+
}
|
|
11
27
|
export interface MongoDBIndexReadyParams {
|
|
12
28
|
indexName: string;
|
|
13
29
|
timeoutMs?: number;
|
|
@@ -22,12 +38,7 @@ export declare class MongoDBVector extends MastraVector<MongoDBVectorFilter> {
|
|
|
22
38
|
private readonly documentFieldName;
|
|
23
39
|
private collectionForValidation;
|
|
24
40
|
private mongoMetricMap;
|
|
25
|
-
constructor({ id, uri, dbName, options }:
|
|
26
|
-
id: string;
|
|
27
|
-
uri: string;
|
|
28
|
-
dbName: string;
|
|
29
|
-
options?: MongoClientOptions;
|
|
30
|
-
});
|
|
41
|
+
constructor({ id, uri, dbName, options, embeddingFieldPath }: MongoDBVectorConfig);
|
|
31
42
|
connect(): Promise<void>;
|
|
32
43
|
disconnect(): Promise<void>;
|
|
33
44
|
createIndex({ indexName, dimension, metric }: CreateIndexParams): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vector/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vector/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mastra/mongodb",
|
|
3
|
-
"version": "1.0.0
|
|
3
|
+
"version": "1.0.0",
|
|
4
4
|
"description": "MongoDB provider for Mastra - includes vector store capabilities",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -21,8 +21,8 @@
|
|
|
21
21
|
"dependencies": {
|
|
22
22
|
"@types/mongodb": "^4.0.7",
|
|
23
23
|
"cloudflare": "^4.5.0",
|
|
24
|
-
"mongodb": "^
|
|
25
|
-
"uuid": "^
|
|
24
|
+
"mongodb": "^7.0.0",
|
|
25
|
+
"uuid": "^13.0.0"
|
|
26
26
|
},
|
|
27
27
|
"devDependencies": {
|
|
28
28
|
"@types/node": "22.13.17",
|
|
@@ -30,12 +30,12 @@
|
|
|
30
30
|
"@vitest/ui": "4.0.12",
|
|
31
31
|
"eslint": "^9.37.0",
|
|
32
32
|
"tsup": "^8.5.0",
|
|
33
|
-
"typescript": "^5.
|
|
34
|
-
"vitest": "4.0.
|
|
35
|
-
"@internal/
|
|
36
|
-
"@internal/
|
|
37
|
-
"@
|
|
38
|
-
"@
|
|
33
|
+
"typescript": "^5.9.3",
|
|
34
|
+
"vitest": "4.0.16",
|
|
35
|
+
"@internal/lint": "0.0.54",
|
|
36
|
+
"@internal/storage-test-utils": "0.0.50",
|
|
37
|
+
"@internal/types-builder": "0.0.29",
|
|
38
|
+
"@mastra/core": "1.0.0"
|
|
39
39
|
},
|
|
40
40
|
"peerDependencies": {
|
|
41
41
|
"@mastra/core": ">=1.0.0-0 <2.0.0-0"
|
|
@@ -57,7 +57,8 @@
|
|
|
57
57
|
"node": ">=22.13.0"
|
|
58
58
|
},
|
|
59
59
|
"scripts": {
|
|
60
|
-
"build": "tsup --silent --config tsup.config.ts",
|
|
60
|
+
"build:lib": "tsup --silent --config tsup.config.ts",
|
|
61
|
+
"build:docs": "pnpx tsx ../../scripts/generate-package-docs.ts stores/mongodb",
|
|
61
62
|
"build:watch": "tsup --watch --silent --config tsup.config.ts",
|
|
62
63
|
"pretest": "docker compose up -d --wait",
|
|
63
64
|
"test": "vitest run",
|