@mastra/oracledb 0.5.2-alpha.0 → 0.5.2-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/dist/docs/SKILL.md +1 -1
- package/dist/docs/assets/SOURCE_MAP.json +1 -1
- package/dist/index.cjs +334 -60
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +335 -61
- package/dist/index.js.map +1 -1
- package/dist/storage/db/run-fencing.d.ts +32 -0
- package/dist/storage/db/run-fencing.d.ts.map +1 -0
- package/dist/storage/domains/memory/index.d.ts +18 -8
- package/dist/storage/domains/memory/index.d.ts.map +1 -1
- package/dist/storage/domains/memory/messages.d.ts +6 -4
- package/dist/storage/domains/memory/messages.d.ts.map +1 -1
- package/dist/storage/domains/memory/observational-buffering.d.ts +5 -5
- package/dist/storage/domains/memory/observational-buffering.d.ts.map +1 -1
- package/dist/storage/domains/memory/observational.d.ts +3 -3
- package/dist/storage/domains/memory/observational.d.ts.map +1 -1
- package/dist/storage/domains/memory/resources.d.ts +3 -2
- package/dist/storage/domains/memory/resources.d.ts.map +1 -1
- package/dist/storage/domains/memory/threads.d.ts +5 -3
- package/dist/storage/domains/memory/threads.d.ts.map +1 -1
- package/dist/storage/domains/memory/utils.d.ts +7 -1
- package/dist/storage/domains/memory/utils.d.ts.map +1 -1
- package/dist/storage/domains/workflows/index.d.ts +19 -6
- package/dist/storage/domains/workflows/index.d.ts.map +1 -1
- package/package.json +5 -5
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { RunFence } from '@mastra/core/storage';
|
|
2
|
+
import type { OracleDB, OracleTxClient } from './index.js';
|
|
3
|
+
/**
|
|
4
|
+
* Epoch milliseconds on the database clock. Oracle evaluates `SYSTIMESTAMP`
|
|
5
|
+
* once per statement, so every reference here reads the same instant, and a
|
|
6
|
+
* statement that waits on a lock compares against the time it started. That
|
|
7
|
+
* error only makes an existing lease look longer and a new lease shorter.
|
|
8
|
+
*/
|
|
9
|
+
export declare const DB_NOW_MS = "(EXTRACT(DAY FROM (SYS_EXTRACT_UTC(SYSTIMESTAMP) - TIMESTAMP '1970-01-01 00:00:00')) * 86400000 + EXTRACT(HOUR FROM (SYS_EXTRACT_UTC(SYSTIMESTAMP) - TIMESTAMP '1970-01-01 00:00:00')) * 3600000 + EXTRACT(MINUTE FROM (SYS_EXTRACT_UTC(SYSTIMESTAMP) - TIMESTAMP '1970-01-01 00:00:00')) * 60000 + FLOOR(EXTRACT(SECOND FROM (SYS_EXTRACT_UTC(SYSTIMESTAMP) - TIMESTAMP '1970-01-01 00:00:00')) * 1000))";
|
|
10
|
+
/**
|
|
11
|
+
* The check half of a fenced write; call it first inside the write's
|
|
12
|
+
* transaction. Oracle has no shared row lock, so this takes the claim row
|
|
13
|
+
* `FOR UPDATE`: a claim that updates the row waits for the write to commit,
|
|
14
|
+
* and a write queued behind a claim re-reads the row once the claim commits
|
|
15
|
+
* and sees the new generation. Writes from one run serialize on its row,
|
|
16
|
+
* which they mostly do anyway.
|
|
17
|
+
*/
|
|
18
|
+
export declare function assertRunFence(client: OracleTxClient, claimsTable: string, fence: RunFence, operation: string): Promise<void>;
|
|
19
|
+
/**
|
|
20
|
+
* Runs `write` in a transaction, behind the fence check when it carries a
|
|
21
|
+
* fence.
|
|
22
|
+
*/
|
|
23
|
+
export declare function withRunFence<T>(db: OracleDB, claimsTable: string, fence: RunFence | undefined, operation: string, write: (client: OracleTxClient) => Promise<T>): Promise<T>;
|
|
24
|
+
/**
|
|
25
|
+
* Runs a transaction that creates or updates a run's claim row, retrying when
|
|
26
|
+
* two first claims race to insert it. `FOR UPDATE` locks nothing while the row
|
|
27
|
+
* is missing, so racing first claims both insert; the second waits on the
|
|
28
|
+
* primary key and fails once the first commits. On retry the row exists and
|
|
29
|
+
* the claim serializes behind its row lock. A deadlock is retried too.
|
|
30
|
+
*/
|
|
31
|
+
export declare function claimTransaction<T>(db: OracleDB, fn: (client: OracleTxClient) => Promise<T>): Promise<T>;
|
|
32
|
+
//# 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;AAIrD,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAIxD;;;;;GAKG;AACH,eAAO,MAAM,SAAS,8YAAkM,CAAC;AAMzN;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAClC,MAAM,EAAE,cAAc,EACtB,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,QAAQ,EACf,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC,CASf;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAC5B,EAAE,EAAE,QAAQ,EACZ,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,QAAQ,GAAG,SAAS,EAC3B,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,OAAO,CAAC,CAAC,CAAC,GAC5C,OAAO,CAAC,CAAC,CAAC,CAKZ;AAED;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CAAC,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAS9G"}
|
|
@@ -2,13 +2,13 @@ import { type UpdateActiveObservationsResult, type UpdateBufferedObservationsRes
|
|
|
2
2
|
import type { MastraMessageContentV2 } from '@mastra/core/agent';
|
|
3
3
|
import type { MastraDBMessage, StorageThreadType } from '@mastra/core/memory';
|
|
4
4
|
import { MemoryStorage } from '@mastra/core/storage';
|
|
5
|
-
import type { CreateObservationalMemoryInput, CreateReflectionGenerationInput, ObservationalMemoryHistoryOptions, ObservationalMemoryRecord, StorageCloneThreadInput, StorageCloneThreadOutput, StorageListMessagesByResourceIdInput, StorageListMessagesInput, StorageListMessagesOutput, StorageListThreadsInput, StorageListThreadsOutput, StorageResourceType, SwapBufferedReflectionToActiveInput, SwapBufferedToActiveInput, SwapBufferedToActiveResult, UpdateActiveObservationsInput, UpdateBufferedObservationsInput, UpdateBufferedReflectionInput, UpdateObservationalMemoryConfigInput } from '@mastra/core/storage';
|
|
5
|
+
import type { CreateObservationalMemoryInput, CreateReflectionGenerationInput, ObservationalMemoryHistoryOptions, ObservationalMemoryRecord, RunFence, StorageCloneThreadInput, StorageCloneThreadOutput, StorageListMessagesByResourceIdInput, StorageListMessagesInput, StorageListMessagesOutput, StorageListThreadsInput, StorageListThreadsOutput, StorageResourceType, SwapBufferedReflectionToActiveInput, SwapBufferedToActiveInput, SwapBufferedToActiveResult, UpdateActiveObservationsInput, UpdateBufferedObservationsInput, UpdateBufferedReflectionInput, UpdateObservationalMemoryConfigInput } from '@mastra/core/storage';
|
|
6
6
|
import type { OracleDomainConfig } from '../../types.js';
|
|
7
7
|
export declare class MemoryOracle extends MemoryStorage {
|
|
8
8
|
readonly supportsPartialThreadUpdate = true;
|
|
9
9
|
readonly supportsObservationalMemory = true;
|
|
10
10
|
readonly supportsObservationalMemoryHistorySearch = true;
|
|
11
|
-
static readonly MANAGED_TABLES: readonly ["mastra_threads", "mastra_messages", "mastra_resources", "mastra_observational_memory"];
|
|
11
|
+
static readonly MANAGED_TABLES: readonly ["mastra_threads", "mastra_messages", "mastra_resources", "mastra_observational_memory", "mastra_memory_run_fences"];
|
|
12
12
|
private readonly db;
|
|
13
13
|
private readonly schemaName?;
|
|
14
14
|
private readonly messageBatchSize;
|
|
@@ -26,17 +26,22 @@ export declare class MemoryOracle extends MemoryStorage {
|
|
|
26
26
|
*/
|
|
27
27
|
backfillObservationalMemorySupersededBy(): Promise<void>;
|
|
28
28
|
dangerouslyClearAll(): Promise<void>;
|
|
29
|
+
supportsRunFencing(): boolean;
|
|
30
|
+
raiseRunFence(fence: RunFence): Promise<boolean>;
|
|
31
|
+
retireRunFence(fence: RunFence): Promise<boolean>;
|
|
29
32
|
getThreadById(args: {
|
|
30
33
|
threadId: string;
|
|
31
34
|
resourceId?: string;
|
|
32
35
|
}): Promise<StorageThreadType | null>;
|
|
33
|
-
saveThread(args: {
|
|
36
|
+
saveThread({ fence, ...args }: {
|
|
34
37
|
thread: StorageThreadType;
|
|
38
|
+
fence?: RunFence;
|
|
35
39
|
}): Promise<StorageThreadType>;
|
|
36
|
-
updateThread(args: {
|
|
40
|
+
updateThread({ fence, ...args }: {
|
|
37
41
|
id: string;
|
|
38
42
|
title?: string;
|
|
39
43
|
metadata?: Record<string, unknown>;
|
|
44
|
+
fence?: RunFence;
|
|
40
45
|
}): Promise<StorageThreadType>;
|
|
41
46
|
deleteThread(args: {
|
|
42
47
|
threadId: string;
|
|
@@ -53,12 +58,13 @@ export declare class MemoryOracle extends MemoryStorage {
|
|
|
53
58
|
}>;
|
|
54
59
|
listMessages(args: StorageListMessagesInput): Promise<StorageListMessagesOutput>;
|
|
55
60
|
listMessagesByResourceId(args: StorageListMessagesByResourceIdInput): Promise<StorageListMessagesOutput>;
|
|
56
|
-
saveMessages(args: {
|
|
61
|
+
saveMessages({ fence, ...args }: {
|
|
57
62
|
messages: MastraDBMessage[];
|
|
63
|
+
fence?: RunFence;
|
|
58
64
|
}): Promise<{
|
|
59
65
|
messages: MastraDBMessage[];
|
|
60
66
|
}>;
|
|
61
|
-
updateMessages(args: {
|
|
67
|
+
updateMessages({ fence, ...args }: {
|
|
62
68
|
messages: (Partial<Omit<MastraDBMessage, 'createdAt'>> & {
|
|
63
69
|
id: string;
|
|
64
70
|
content?: {
|
|
@@ -66,18 +72,22 @@ export declare class MemoryOracle extends MemoryStorage {
|
|
|
66
72
|
content?: MastraMessageContentV2['content'];
|
|
67
73
|
};
|
|
68
74
|
})[];
|
|
75
|
+
fence?: RunFence;
|
|
69
76
|
}): Promise<MastraDBMessage[]>;
|
|
70
|
-
deleteMessages(messageIds: string[]
|
|
77
|
+
deleteMessages(messageIds: string[], options?: {
|
|
78
|
+
fence?: RunFence;
|
|
79
|
+
}): Promise<void>;
|
|
71
80
|
getResourceById(args: {
|
|
72
81
|
resourceId: string;
|
|
73
82
|
}): Promise<StorageResourceType | null>;
|
|
74
83
|
saveResource(args: {
|
|
75
84
|
resource: StorageResourceType;
|
|
76
85
|
}): Promise<StorageResourceType>;
|
|
77
|
-
updateResource(args: {
|
|
86
|
+
updateResource({ fence, ...args }: {
|
|
78
87
|
resourceId: string;
|
|
79
88
|
workingMemory?: string;
|
|
80
89
|
metadata?: Record<string, unknown>;
|
|
90
|
+
fence?: RunFence;
|
|
81
91
|
}): Promise<StorageResourceType>;
|
|
82
92
|
cloneThread(args: StorageCloneThreadInput): Promise<StorageCloneThreadOutput>;
|
|
83
93
|
private messagesForClone;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/memory/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,8BAA8B,EACnC,KAAK,gCAAgC,EACtC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAEjE,OAAO,KAAK,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC9E,OAAO,EACL,aAAa,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/memory/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 } from '@mastra/core/memory';
|
|
3
|
-
import type { StorageListMessagesByResourceIdInput, StorageListMessagesInput, StorageListMessagesOutput } from '@mastra/core/storage';
|
|
3
|
+
import type { RunFence, StorageListMessagesByResourceIdInput, StorageListMessagesInput, StorageListMessagesOutput } from '@mastra/core/storage';
|
|
4
4
|
import type { OracleTxClient } from '../../db/index.js';
|
|
5
5
|
import type { MemoryContext } from './utils.js';
|
|
6
6
|
export declare function listMessagesById(ctx: MemoryContext, { messageIds }: {
|
|
@@ -10,8 +10,9 @@ export declare function listMessagesById(ctx: MemoryContext, { messageIds }: {
|
|
|
10
10
|
}>;
|
|
11
11
|
export declare function listMessages(ctx: MemoryContext, args: StorageListMessagesInput): Promise<StorageListMessagesOutput>;
|
|
12
12
|
export declare function listMessagesByResourceId(ctx: MemoryContext, args: StorageListMessagesByResourceIdInput): Promise<StorageListMessagesOutput>;
|
|
13
|
-
export declare function saveMessages(ctx: MemoryContext, { messages }: {
|
|
13
|
+
export declare function saveMessages(ctx: MemoryContext, { messages, fence }: {
|
|
14
14
|
messages: MastraDBMessage[];
|
|
15
|
+
fence?: RunFence;
|
|
15
16
|
}): Promise<{
|
|
16
17
|
messages: MastraDBMessage[];
|
|
17
18
|
}>;
|
|
@@ -24,7 +25,7 @@ export declare function saveMessages(ctx: MemoryContext, { messages }: {
|
|
|
24
25
|
* thread exists; `saveMessages` checks that before opening its transaction.
|
|
25
26
|
*/
|
|
26
27
|
export declare function insertMessageBatch(ctx: MemoryContext, client: OracleTxClient, messages: MastraDBMessage[]): Promise<void>;
|
|
27
|
-
export declare function updateMessages(ctx: MemoryContext, { messages, }: {
|
|
28
|
+
export declare function updateMessages(ctx: MemoryContext, { messages, fence, }: {
|
|
28
29
|
messages: (Partial<Omit<MastraDBMessage, 'createdAt'>> & {
|
|
29
30
|
id: string;
|
|
30
31
|
content?: {
|
|
@@ -32,6 +33,7 @@ export declare function updateMessages(ctx: MemoryContext, { messages, }: {
|
|
|
32
33
|
content?: MastraMessageContentV2['content'];
|
|
33
34
|
};
|
|
34
35
|
})[];
|
|
36
|
+
fence?: RunFence;
|
|
35
37
|
}): Promise<MastraDBMessage[]>;
|
|
36
|
-
export declare function deleteMessages(ctx: MemoryContext, messageIds: string[]): Promise<void>;
|
|
38
|
+
export declare function deleteMessages(ctx: MemoryContext, messageIds: string[], fence?: RunFence): Promise<void>;
|
|
37
39
|
//# sourceMappingURL=messages.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/memory/messages.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAEjE,OAAO,KAAK,EAAE,eAAe,EAAmB,MAAM,qBAAqB,CAAC;AAS5E,OAAO,KAAK,EACV,oCAAoC,EACpC,wBAAwB,EACxB,yBAAyB,EAC1B,MAAM,sBAAsB,CAAC;AAO9B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/memory/messages.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAEjE,OAAO,KAAK,EAAE,eAAe,EAAmB,MAAM,qBAAqB,CAAC;AAS5E,OAAO,KAAK,EACV,QAAQ,EACR,oCAAoC,EACpC,wBAAwB,EACxB,yBAAyB,EAC1B,MAAM,sBAAsB,CAAC;AAO9B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAY/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AA0B7C,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,aAAa,EAClB,EAAE,UAAU,EAAE,EAAE;IAAE,UAAU,EAAE,MAAM,EAAE,CAAA;CAAE,GACvC,OAAO,CAAC;IAAE,QAAQ,EAAE,eAAe,EAAE,CAAA;CAAE,CAAC,CA0B1C;AAED,wBAAsB,YAAY,CAChC,GAAG,EAAE,aAAa,EAClB,IAAI,EAAE,wBAAwB,GAC7B,OAAO,CAAC,yBAAyB,CAAC,CAyBpC;AAED,wBAAsB,wBAAwB,CAC5C,GAAG,EAAE,aAAa,EAClB,IAAI,EAAE,oCAAoC,GACzC,OAAO,CAAC,yBAAyB,CAAC,CAqBpC;AAED,wBAAsB,YAAY,CAChC,GAAG,EAAE,aAAa,EAClB,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE;IAAE,QAAQ,EAAE,eAAe,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,QAAQ,CAAA;CAAE,GACrE,OAAO,CAAC;IAAE,QAAQ,EAAE,eAAe,EAAE,CAAA;CAAE,CAAC,CA2C1C;AAED;;;;;;;GAOG;AACH,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,aAAa,EAClB,MAAM,EAAE,cAAc,EACtB,QAAQ,EAAE,eAAe,EAAE,GAC1B,OAAO,CAAC,IAAI,CAAC,CA4Df;AAED,wBAAsB,cAAc,CAClC,GAAG,EAAE,aAAa,EAClB,EACE,QAAQ,EACR,KAAK,GACN,EAAE;IACD,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC,GAAG;QACvD,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,CAAC,EAAE;YAAE,QAAQ,CAAC,EAAE,sBAAsB,CAAC,UAAU,CAAC,CAAC;YAAC,OAAO,CAAC,EAAE,sBAAsB,CAAC,SAAS,CAAC,CAAA;SAAE,CAAC;KAC1G,CAAC,EAAE,CAAC;IACL,KAAK,CAAC,EAAE,QAAQ,CAAC;CAClB,GACA,OAAO,CAAC,eAAe,EAAE,CAAC,CAwF5B;AAED,wBAAsB,cAAc,CAAC,GAAG,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,KAAK,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAgC9G"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { type UpdateBufferedObservationsResult } from '../../../_types/@internal_core/dist/memory/index.js';
|
|
2
|
-
import type { ObservationalMemoryRecord, SwapBufferedReflectionToActiveInput, SwapBufferedToActiveInput, SwapBufferedToActiveResult, UpdateBufferedObservationsInput, UpdateBufferedReflectionInput } from '@mastra/core/storage';
|
|
2
|
+
import type { ObservationalMemoryRecord, RunFence, SwapBufferedReflectionToActiveInput, SwapBufferedToActiveInput, SwapBufferedToActiveResult, UpdateBufferedObservationsInput, UpdateBufferedReflectionInput } from '@mastra/core/storage';
|
|
3
3
|
import type { MemoryContext } from './utils.js';
|
|
4
|
-
export declare function updateBufferedObservations(ctx: MemoryContext, input: UpdateBufferedObservationsInput): Promise<UpdateBufferedObservationsResult>;
|
|
5
|
-
export declare function swapBufferedToActive(ctx: MemoryContext, input: SwapBufferedToActiveInput): Promise<SwapBufferedToActiveResult>;
|
|
6
|
-
export declare function updateBufferedReflection(ctx: MemoryContext, input: UpdateBufferedReflectionInput): Promise<void>;
|
|
7
|
-
export declare function swapBufferedReflectionToActive(ctx: MemoryContext, input: SwapBufferedReflectionToActiveInput): Promise<ObservationalMemoryRecord>;
|
|
4
|
+
export declare function updateBufferedObservations(ctx: MemoryContext, input: UpdateBufferedObservationsInput, fence?: RunFence): Promise<UpdateBufferedObservationsResult>;
|
|
5
|
+
export declare function swapBufferedToActive(ctx: MemoryContext, input: SwapBufferedToActiveInput, fence?: RunFence): Promise<SwapBufferedToActiveResult>;
|
|
6
|
+
export declare function updateBufferedReflection(ctx: MemoryContext, input: UpdateBufferedReflectionInput, fence?: RunFence): Promise<void>;
|
|
7
|
+
export declare function swapBufferedReflectionToActive(ctx: MemoryContext, input: SwapBufferedReflectionToActiveInput, fence?: RunFence): Promise<ObservationalMemoryRecord>;
|
|
8
8
|
//# sourceMappingURL=observational-buffering.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observational-buffering.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/memory/observational-buffering.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,gCAAgC,EACtC,MAAM,uBAAuB,CAAC;AAG/B,OAAO,KAAK,EAEV,yBAAyB,EACzB,mCAAmC,EACnC,yBAAyB,EACzB,0BAA0B,EAC1B,+BAA+B,EAC/B,6BAA6B,EAC9B,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"observational-buffering.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/memory/observational-buffering.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,gCAAgC,EACtC,MAAM,uBAAuB,CAAC;AAG/B,OAAO,KAAK,EAEV,yBAAyB,EACzB,QAAQ,EACR,mCAAmC,EACnC,yBAAyB,EACzB,0BAA0B,EAC1B,+BAA+B,EAC/B,6BAA6B,EAC9B,MAAM,sBAAsB,CAAC;AA4B9B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAM7C,wBAAsB,0BAA0B,CAC9C,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,+BAA+B,EACtC,KAAK,CAAC,EAAE,QAAQ,GACf,OAAO,CAAC,gCAAgC,CAAC,CAyD3C;AAED,wBAAsB,oBAAoB,CACxC,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,yBAAyB,EAChC,KAAK,CAAC,EAAE,QAAQ,GACf,OAAO,CAAC,0BAA0B,CAAC,CAiErC;AAED,wBAAsB,wBAAwB,CAC5C,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,6BAA6B,EACpC,KAAK,CAAC,EAAE,QAAQ,GACf,OAAO,CAAC,IAAI,CAAC,CA+Bf;AAED,wBAAsB,8BAA8B,CAClD,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,mCAAmC,EAC1C,KAAK,CAAC,EAAE,QAAQ,GACf,OAAO,CAAC,yBAAyB,CAAC,CA0DpC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type UpdateActiveObservationsResult } from '../../../_types/@internal_core/dist/memory/index.js';
|
|
2
|
-
import type { CreateObservationalMemoryInput, CreateReflectionGenerationInput, ObservationalMemoryHistoryOptions, ObservationalMemoryRecord, UpdateActiveObservationsInput, UpdateObservationalMemoryConfigInput } from '@mastra/core/storage';
|
|
2
|
+
import type { CreateObservationalMemoryInput, CreateReflectionGenerationInput, ObservationalMemoryHistoryOptions, ObservationalMemoryRecord, RunFence, UpdateActiveObservationsInput, UpdateObservationalMemoryConfigInput } from '@mastra/core/storage';
|
|
3
3
|
import type { Connection } from 'oracledb';
|
|
4
4
|
import type { MemoryContext } from './utils.js';
|
|
5
5
|
export type ObservationalMemoryRow = {
|
|
@@ -43,8 +43,8 @@ export declare function getObservationalMemory(ctx: MemoryContext, threadId: str
|
|
|
43
43
|
export declare function getObservationalMemoryHistory(ctx: MemoryContext, threadId: string | null, resourceId: string, limit?: number, options?: ObservationalMemoryHistoryOptions): Promise<ObservationalMemoryRecord[]>;
|
|
44
44
|
export declare function initializeObservationalMemory(ctx: MemoryContext, input: CreateObservationalMemoryInput): Promise<ObservationalMemoryRecord>;
|
|
45
45
|
export declare function insertObservationalMemoryRecord(ctx: MemoryContext, record: ObservationalMemoryRecord): Promise<void>;
|
|
46
|
-
export declare function updateActiveObservations(ctx: MemoryContext, input: UpdateActiveObservationsInput): Promise<UpdateActiveObservationsResult>;
|
|
47
|
-
export declare function createReflectionGeneration(ctx: MemoryContext, input: CreateReflectionGenerationInput): Promise<ObservationalMemoryRecord>;
|
|
46
|
+
export declare function updateActiveObservations(ctx: MemoryContext, input: UpdateActiveObservationsInput, fence?: RunFence): Promise<UpdateActiveObservationsResult>;
|
|
47
|
+
export declare function createReflectionGeneration(ctx: MemoryContext, input: CreateReflectionGenerationInput, fence?: RunFence): Promise<ObservationalMemoryRecord>;
|
|
48
48
|
/**
|
|
49
49
|
* Create the next generation from the stored (live, row-locked) record and retire it in the
|
|
50
50
|
* same transaction. Buffered chunks move to the new generation; the cursor, buffering markers,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observational.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/memory/observational.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,8BAA8B,EACpC,MAAM,uBAAuB,CAAC;AAG/B,OAAO,KAAK,EACV,8BAA8B,EAC9B,+BAA+B,EAC/B,iCAAiC,EACjC,yBAAyB,EACzB,6BAA6B,EAC7B,oCAAoC,EACrC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"observational.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/memory/observational.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { StorageResourceType } from '@mastra/core/storage';
|
|
1
|
+
import type { RunFence, StorageResourceType } from '@mastra/core/storage';
|
|
2
2
|
import type { MemoryContext } from './utils.js';
|
|
3
3
|
export declare function getResourceById(ctx: MemoryContext, { resourceId }: {
|
|
4
4
|
resourceId: string;
|
|
@@ -6,9 +6,10 @@ export declare function getResourceById(ctx: MemoryContext, { resourceId }: {
|
|
|
6
6
|
export declare function saveResource(ctx: MemoryContext, { resource }: {
|
|
7
7
|
resource: StorageResourceType;
|
|
8
8
|
}): Promise<StorageResourceType>;
|
|
9
|
-
export declare function updateResource(ctx: MemoryContext, { resourceId, workingMemory, metadata, }: {
|
|
9
|
+
export declare function updateResource(ctx: MemoryContext, { resourceId, workingMemory, metadata, fence, }: {
|
|
10
10
|
resourceId: string;
|
|
11
11
|
workingMemory?: string;
|
|
12
12
|
metadata?: Record<string, unknown>;
|
|
13
|
+
fence?: RunFence;
|
|
13
14
|
}): Promise<StorageResourceType>;
|
|
14
15
|
//# sourceMappingURL=resources.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resources.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/memory/resources.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"resources.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/memory/resources.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAgB1E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAa7C,wBAAsB,eAAe,CACnC,GAAG,EAAE,aAAa,EAClB,EAAE,UAAU,EAAE,EAAE;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,GACrC,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAcrC;AAED,wBAAsB,YAAY,CAChC,GAAG,EAAE,aAAa,EAClB,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,mBAAmB,CAAA;CAAE,GAC9C,OAAO,CAAC,mBAAmB,CAAC,CA4C9B;AAED,wBAAsB,cAAc,CAClC,GAAG,EAAE,aAAa,EAClB,EACE,UAAU,EACV,aAAa,EACb,QAAQ,EACR,KAAK,GACN,EAAE;IACD,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,KAAK,CAAC,EAAE,QAAQ,CAAC;CAClB,GACA,OAAO,CAAC,mBAAmB,CAAC,CA8C9B"}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import type { StorageThreadType } from '@mastra/core/memory';
|
|
2
|
-
import type { StorageListThreadsInput, StorageListThreadsOutput } from '@mastra/core/storage';
|
|
2
|
+
import type { RunFence, StorageListThreadsInput, StorageListThreadsOutput } from '@mastra/core/storage';
|
|
3
3
|
import type { OracleTxClient } from '../../db/index.js';
|
|
4
4
|
import type { MemoryContext } from './utils.js';
|
|
5
5
|
export declare function getThreadById(ctx: MemoryContext, { threadId, resourceId }: {
|
|
6
6
|
threadId: string;
|
|
7
7
|
resourceId?: string;
|
|
8
8
|
}): Promise<StorageThreadType | null>;
|
|
9
|
-
export declare function saveThread(ctx: MemoryContext, { thread }: {
|
|
9
|
+
export declare function saveThread(ctx: MemoryContext, { thread, fence }: {
|
|
10
10
|
thread: StorageThreadType;
|
|
11
|
+
fence?: RunFence;
|
|
11
12
|
}): Promise<StorageThreadType>;
|
|
12
13
|
/**
|
|
13
14
|
* Upserts one thread row against the given client. Only `saveThread` may
|
|
@@ -25,10 +26,11 @@ export declare function mergeThreadRow(ctx: Pick<MemoryContext, 'schemaName'>, c
|
|
|
25
26
|
* partway through rolls back the whole clone.
|
|
26
27
|
*/
|
|
27
28
|
export declare function insertThreadRow(ctx: Pick<MemoryContext, 'schemaName'>, client: Pick<OracleTxClient, 'none'>, thread: StorageThreadType): Promise<void>;
|
|
28
|
-
export declare function updateThread(ctx: MemoryContext, { id, title, metadata, }: {
|
|
29
|
+
export declare function updateThread(ctx: MemoryContext, { id, title, metadata, fence, }: {
|
|
29
30
|
id: string;
|
|
30
31
|
title?: string;
|
|
31
32
|
metadata?: Record<string, unknown>;
|
|
33
|
+
fence?: RunFence;
|
|
32
34
|
}): Promise<StorageThreadType>;
|
|
33
35
|
export declare function deleteThread(ctx: MemoryContext, { threadId }: {
|
|
34
36
|
threadId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"threads.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/memory/threads.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAE7D,OAAO,KAAK,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"threads.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/memory/threads.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAE7D,OAAO,KAAK,EAAE,QAAQ,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAKxG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAa/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAc7C,wBAAsB,aAAa,CACjC,GAAG,EAAE,aAAa,EAClB,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,GAClE,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAqBnC;AAED,wBAAsB,UAAU,CAC9B,GAAG,EAAE,aAAa,EAClB,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;IAAE,MAAM,EAAE,iBAAiB,CAAC;IAAC,KAAK,CAAC,EAAE,QAAQ,CAAA;CAAE,GACjE,OAAO,CAAC,iBAAiB,CAAC,CAW5B;AAED;;;;;GAKG;AACH,wBAAsB,cAAc,CAClC,GAAG,EAAE,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC,EACtC,MAAM,EAAE,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,EACpC,MAAM,EAAE,iBAAiB,GACxB,OAAO,CAAC,IAAI,CAAC,CA8Cf;AAED;;;;;;;GAOG;AACH,wBAAsB,eAAe,CACnC,GAAG,EAAE,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC,EACtC,MAAM,EAAE,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,EACpC,MAAM,EAAE,iBAAiB,GACxB,OAAO,CAAC,IAAI,CAAC,CA2Bf;AAED,wBAAsB,YAAY,CAChC,GAAG,EAAE,aAAa,EAClB,EACE,EAAE,EACF,KAAK,EACL,QAAQ,EACR,KAAK,GACN,EAAE;IACD,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,KAAK,CAAC,EAAE,QAAQ,CAAC;CAClB,GACA,OAAO,CAAC,iBAAiB,CAAC,CAgD5B;AAED,wBAAsB,YAAY,CAAC,GAAG,EAAE,aAAa,EAAE,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAYxG;AAED,wBAAsB,sBAAsB,CAC1C,GAAG,EAAE,aAAa,EAClB,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GACjE,OAAO,CAAC,iBAAiB,CAAC,CAoC5B;AAED,wBAAsB,WAAW,CAC/B,GAAG,EAAE,aAAa,EAClB,IAAI,EAAE,uBAAuB,GAC5B,OAAO,CAAC,wBAAwB,CAAC,CAkDnC"}
|
|
@@ -2,7 +2,7 @@ import type { MastraError } from '@mastra/core/error';
|
|
|
2
2
|
import { ErrorCategory } from '@mastra/core/error';
|
|
3
3
|
import type { IMastraLogger } from '@mastra/core/logger';
|
|
4
4
|
import type { MastraDBMessage, StorageThreadType } from '@mastra/core/memory';
|
|
5
|
-
import type { BufferedObservationChunk, StorageResourceType, ThreadOrderBy, ThreadSortDirection, StorageOrderBy } from '@mastra/core/storage';
|
|
5
|
+
import type { BufferedObservationChunk, RunFence, StorageResourceType, ThreadOrderBy, ThreadSortDirection, StorageOrderBy } from '@mastra/core/storage';
|
|
6
6
|
import oracledb from 'oracledb';
|
|
7
7
|
import type { OracleDB, OracleCreateIndexOptions, OracleTxClient } from '../../db/index.js';
|
|
8
8
|
export declare const ORACLE_IN_LIMIT = 900;
|
|
@@ -45,6 +45,12 @@ export interface MemoryContext {
|
|
|
45
45
|
}): Promise<StorageResourceType>;
|
|
46
46
|
}
|
|
47
47
|
export declare function table(ctx: Pick<MemoryContext, 'schemaName'>, tableName: string): string;
|
|
48
|
+
/**
|
|
49
|
+
* The fence check for a memory write; call it first inside the write's
|
|
50
|
+
* transaction. `fence` is the one `MemoryOracle` already resolved against the
|
|
51
|
+
* run fence scope, so an unfenced write skips the check.
|
|
52
|
+
*/
|
|
53
|
+
export declare function assertMemoryFence(ctx: Pick<MemoryContext, 'schemaName'>, client: OracleTxClient, fence: RunFence | undefined, operation: string): Promise<void>;
|
|
48
54
|
export declare function storageError(operation: string, reason: string, details: Record<string, string | number | boolean | undefined>, cause: unknown, category?: ErrorCategory): MastraError;
|
|
49
55
|
export declare function assertRowsAffected(rowsAffected: number | undefined, operation: string, id: string): void;
|
|
50
56
|
export declare function inClause(prefix: string, values: readonly string[]): {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/memory/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/memory/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAE9E,OAAO,KAAK,EACV,wBAAwB,EACxB,QAAQ,EACR,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACnB,cAAc,EACf,MAAM,sBAAsB,CAAC;AAE9B,OAAO,QAAQ,MAAM,UAAU,CAAC;AAIhC,OAAO,KAAK,EAAE,QAAQ,EAAE,wBAAwB,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AASnF,eAAO,MAAM,eAAe,MAAM,CAAC;AACnC,eAAO,MAAM,qBAAqB,mCAAmC,CAAC;AACtE,eAAO,MAAM,6BAA6B,8BAA8B,CAAC;AAEzE;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,QAAQ,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,uBAAuB,EAAE,MAAM,CAAC;IAChC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,OAAO,EAAE,wBAAwB,EAAE,CAAC;IACpC,MAAM,EAAE,aAAa,CAAC;IACtB,uBAAuB,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,KAAK,GAAG,IAAI,CAAC;IAC1E,oBAAoB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,IAAI,CAAC;IAC1E,YAAY,CACV,OAAO,CAAC,EAAE,cAAc,EACxB,gBAAgB,CAAC,EAAE,mBAAmB,GACrC;QAAE,KAAK,EAAE,aAAa,CAAC;QAAC,SAAS,EAAE,mBAAmB,CAAA;KAAE,CAAC;IAC5D,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAO3G,aAAa,CAAC,IAAI,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAAC;IAClG,gBAAgB,CAAC,IAAI,EAAE;QAAE,UAAU,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,QAAQ,EAAE,eAAe,EAAE,CAAA;KAAE,CAAC,CAAC;IAC3F,eAAe,CAAC,IAAI,EAAE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAAC;IACnF,YAAY,CAAC,IAAI,EAAE;QAAE,QAAQ,EAAE,mBAAmB,CAAA;KAAE,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;CACrF;AAED,wBAAgB,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAEvF;AAED;;;;GAIG;AACH,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC,EACtC,MAAM,EAAE,cAAc,EACtB,KAAK,EAAE,QAAQ,GAAG,SAAS,EAC3B,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC,CAEf;AAED,wBAAgB,YAAY,CAC1B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC,EAC9D,KAAK,EAAE,OAAO,EACd,QAAQ,GAAE,aAAyC,GAClD,WAAW,CAEb;AAED,wBAAgB,kBAAkB,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CASxG;AAED,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CAQnH;AAED,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,IAAI,SAAkB,GAAG,CAAC,EAAE,EAAE,CAMzE;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,IAAI,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,QAAQ,CAAC,aAAa,GAAG,IAAI,CAEpG;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAE/D;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAEjD;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAKnD;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAGjE;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAGpD;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAGnE;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAOlF;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,iCAGtE;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAQtE;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAMjE;AAED,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAGlH;AAID,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,wBAAwB,EAAE,CAqB9E;AAuBD,wBAAsB,2BAA2B,CAC/C,GAAG,EAAE,IAAI,CAAC,aAAa,EAAE,YAAY,GAAG,yBAAyB,CAAC,EAClE,MAAM,EAAE,cAAc,EACtB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC,CAcf;AAED,wBAAsB,uCAAuC,CAC3D,GAAG,EAAE,IAAI,CAAC,aAAa,EAAE,YAAY,GAAG,yBAAyB,CAAC,EAClE,MAAM,EAAE,cAAc,EACtB,UAAU,EAAE,SAAS,MAAM,EAAE,GAC5B,OAAO,CAAC,IAAI,CAAC,CAiBf"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { WorkflowsStorage } from '@mastra/core/storage';
|
|
2
|
-
import type { StorageListWorkflowRunsInput, UpdateWorkflowStateOptions, WorkflowRun, WorkflowRuns } from '@mastra/core/storage';
|
|
2
|
+
import type { ClaimRunOwnershipInput, ClaimRunOwnershipResult, RenewRunOwnershipInput, RenewRunOwnershipResult, RunFence, RunOwnershipRecord, StorageListWorkflowRunsInput, UpdateWorkflowStateOptions, WorkflowRun, WorkflowRuns } from '@mastra/core/storage';
|
|
3
3
|
import type { StepResult, WorkflowRunState } from '@mastra/core/workflows';
|
|
4
4
|
import type { OracleDomainConfig } from '../../types.js';
|
|
5
5
|
export declare class WorkflowsOracle extends WorkflowsStorage {
|
|
6
|
-
static readonly MANAGED_TABLES: readonly ["mastra_workflow_snapshot"];
|
|
6
|
+
static readonly MANAGED_TABLES: readonly ["mastra_workflow_snapshot", "mastra_workflow_run_owners"];
|
|
7
7
|
private readonly db;
|
|
8
8
|
private readonly schemaName?;
|
|
9
9
|
private readonly skipDefaultIndexes?;
|
|
@@ -12,26 +12,37 @@ export declare class WorkflowsOracle extends WorkflowsStorage {
|
|
|
12
12
|
supportsConcurrentUpdates(): boolean;
|
|
13
13
|
init(): Promise<void>;
|
|
14
14
|
dangerouslyClearAll(): Promise<void>;
|
|
15
|
-
|
|
15
|
+
supportsRunFencing(): boolean;
|
|
16
|
+
claimRunOwnership({ runId, ownerId, leaseMs, force, expectedGeneration, }: ClaimRunOwnershipInput): Promise<ClaimRunOwnershipResult>;
|
|
17
|
+
renewRunOwnership({ leaseMs, ...fence }: RenewRunOwnershipInput): Promise<RenewRunOwnershipResult>;
|
|
18
|
+
releaseRunOwnership(fence: RunFence): Promise<boolean>;
|
|
19
|
+
getRunOwnership({ runId }: {
|
|
20
|
+
runId: string;
|
|
21
|
+
}): Promise<RunOwnershipRecord | null>;
|
|
22
|
+
private readRunOwner;
|
|
23
|
+
updateWorkflowResults({ workflowName, runId, stepId, result, requestContext, state, fence: explicitFence, }: {
|
|
16
24
|
workflowName: string;
|
|
17
25
|
runId: string;
|
|
18
26
|
stepId: string;
|
|
19
27
|
result: StepResult<any, any, any, any>;
|
|
20
28
|
requestContext: Record<string, any>;
|
|
21
29
|
state?: Record<string, any>;
|
|
30
|
+
fence?: RunFence;
|
|
22
31
|
}): Promise<Record<string, StepResult<any, any, any, any>>>;
|
|
23
|
-
updateWorkflowState({ workflowName, runId, opts, }: {
|
|
32
|
+
updateWorkflowState({ workflowName, runId, opts, fence: explicitFence, }: {
|
|
24
33
|
workflowName: string;
|
|
25
34
|
runId: string;
|
|
26
35
|
opts: UpdateWorkflowStateOptions;
|
|
36
|
+
fence?: RunFence;
|
|
27
37
|
}): Promise<WorkflowRunState | undefined>;
|
|
28
|
-
persistWorkflowSnapshot({ workflowName, runId, resourceId, snapshot, createdAt, updatedAt, }: {
|
|
38
|
+
persistWorkflowSnapshot({ workflowName, runId, resourceId, snapshot, createdAt, updatedAt, fence, }: {
|
|
29
39
|
workflowName: string;
|
|
30
40
|
runId: string;
|
|
31
41
|
resourceId?: string;
|
|
32
42
|
snapshot: WorkflowRunState;
|
|
33
43
|
createdAt?: Date;
|
|
34
44
|
updatedAt?: Date;
|
|
45
|
+
fence?: RunFence;
|
|
35
46
|
}): Promise<void>;
|
|
36
47
|
loadWorkflowSnapshot({ workflowName, runId, }: {
|
|
37
48
|
workflowName: string;
|
|
@@ -42,9 +53,10 @@ export declare class WorkflowsOracle extends WorkflowsStorage {
|
|
|
42
53
|
runId: string;
|
|
43
54
|
workflowName?: string;
|
|
44
55
|
}): Promise<WorkflowRun | null>;
|
|
45
|
-
deleteWorkflowRunById({ runId, workflowName }: {
|
|
56
|
+
deleteWorkflowRunById({ runId, workflowName, fence, }: {
|
|
46
57
|
runId: string;
|
|
47
58
|
workflowName: string;
|
|
59
|
+
fence?: RunFence;
|
|
48
60
|
}): Promise<void>;
|
|
49
61
|
private createTables;
|
|
50
62
|
private createIndexes;
|
|
@@ -55,6 +67,7 @@ export declare class WorkflowsOracle extends WorkflowsStorage {
|
|
|
55
67
|
private workflowSelect;
|
|
56
68
|
private parseWorkflowRun;
|
|
57
69
|
private table;
|
|
70
|
+
private runOwnersTable;
|
|
58
71
|
private indexName;
|
|
59
72
|
private constraint;
|
|
60
73
|
private storageError;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/workflows/index.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/domains/workflows/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mastra/oracledb",
|
|
3
|
-
"version": "0.5.2-alpha.
|
|
3
|
+
"version": "0.5.2-alpha.1",
|
|
4
4
|
"description": "Oracle Database provider for Mastra storage and vector retrieval",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -32,13 +32,13 @@
|
|
|
32
32
|
"tsx": "^4.23.1",
|
|
33
33
|
"typescript": "^7.0.2",
|
|
34
34
|
"vitest": "4.1.11",
|
|
35
|
-
"@internal/lint": "0.0.142",
|
|
36
35
|
"@internal/core": "0.1.2",
|
|
36
|
+
"@internal/lint": "0.0.142",
|
|
37
37
|
"@internal/types-builder": "0.0.117",
|
|
38
|
-
"@mastra/core": "1.77.0-alpha.
|
|
38
|
+
"@mastra/core": "1.77.0-alpha.4"
|
|
39
39
|
},
|
|
40
40
|
"peerDependencies": {
|
|
41
|
-
"@mastra/core": ">=1.
|
|
41
|
+
"@mastra/core": ">=1.76.0-0 <2.0.0-0"
|
|
42
42
|
},
|
|
43
43
|
"files": [
|
|
44
44
|
"dist"
|
|
@@ -66,6 +66,6 @@
|
|
|
66
66
|
"typecheck": "tsc --noEmit",
|
|
67
67
|
"lint": "eslint .",
|
|
68
68
|
"test:vector-integration": "RUN_ORACLE_VECTOR_INTEGRATION=true vitest run src/vector/index.integration.test.ts",
|
|
69
|
-
"test:storage-integration": "RUN_ORACLE_STORAGE_INTEGRATION=true vitest run --fileParallelism=false src/storage/index.test.ts src/storage/index.integration.test.ts"
|
|
69
|
+
"test:storage-integration": "RUN_ORACLE_STORAGE_INTEGRATION=true vitest run --fileParallelism=false src/storage/index.test.ts src/storage/index.integration.test.ts src/storage/db/run-fencing.integration.test.ts"
|
|
70
70
|
}
|
|
71
71
|
}
|