@mastra/libsql 1.7.1 → 1.7.2-alpha.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 +13 -0
- package/dist/docs/SKILL.md +2 -4
- package/dist/docs/assets/SOURCE_MAP.json +1 -1
- package/dist/docs/references/docs-agents-agent-approval.md +114 -193
- package/dist/docs/references/docs-agents-networks.md +88 -205
- package/dist/docs/references/docs-memory-overview.md +219 -24
- package/dist/docs/references/docs-memory-semantic-recall.md +1 -1
- package/dist/docs/references/docs-memory-storage.md +4 -4
- package/dist/docs/references/docs-memory-working-memory.md +1 -1
- package/dist/docs/references/docs-observability-overview.md +1 -1
- package/dist/docs/references/reference-core-getMemory.md +1 -2
- package/dist/docs/references/reference-core-listMemory.md +1 -2
- package/dist/index.cjs +112 -5
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +112 -5
- package/dist/index.js.map +1 -1
- package/dist/storage/domains/datasets/index.d.ts.map +1 -1
- package/dist/storage/domains/experiments/index.d.ts +2 -1
- package/dist/storage/domains/experiments/index.d.ts.map +1 -1
- package/package.json +5 -5
- package/dist/docs/references/docs-agents-agent-memory.md +0 -209
- package/dist/docs/references/docs-agents-network-approval.md +0 -278
|
@@ -100,7 +100,7 @@ This is useful when different types of data have different performance or operat
|
|
|
100
100
|
|
|
101
101
|
### Agent-level storage
|
|
102
102
|
|
|
103
|
-
Agent-level storage overrides storage configured at the instance level. Add storage to a specific agent when you need data
|
|
103
|
+
Agent-level storage overrides storage configured at the instance level. Add storage to a specific agent when you need to keep data separate or use different providers per agent.
|
|
104
104
|
|
|
105
105
|
```typescript
|
|
106
106
|
import { Agent } from '@mastra/core/agent'
|
|
@@ -118,14 +118,14 @@ export const agent = new Agent({
|
|
|
118
118
|
})
|
|
119
119
|
```
|
|
120
120
|
|
|
121
|
-
> **Warning:** [Mastra Cloud Store](https://mastra.ai/docs/mastra-cloud/deployment) doesn't
|
|
121
|
+
> **Warning:** Agent-level storage isn't supported when using [Mastra Cloud Store](https://mastra.ai/docs/mastra-cloud/deployment). If you use Mastra Cloud Store, configure storage on the Mastra instance instead. This limitation doesn't apply if you bring your own database.
|
|
122
122
|
|
|
123
123
|
## Threads and resources
|
|
124
124
|
|
|
125
125
|
Mastra organizes conversations using two identifiers:
|
|
126
126
|
|
|
127
|
-
- **Thread
|
|
128
|
-
- **Resource
|
|
127
|
+
- **Thread**: A conversation session containing a sequence of messages.
|
|
128
|
+
- **Resource**: The entity that owns the thread, such as a user, organization, project, or any other domain entity in your application.
|
|
129
129
|
|
|
130
130
|
Both identifiers are required for agents to store information:
|
|
131
131
|
|
|
@@ -13,7 +13,7 @@ Working memory can persist at two different scopes:
|
|
|
13
13
|
|
|
14
14
|
**Important:** Switching between scopes means the agent won't see memory from the other scope - thread-scoped memory is completely separate from resource-scoped memory.
|
|
15
15
|
|
|
16
|
-
##
|
|
16
|
+
## Quickstart
|
|
17
17
|
|
|
18
18
|
Here's a minimal example of setting up an agent with working memory:
|
|
19
19
|
|
|
@@ -19,7 +19,7 @@ The `DefaultExporter` persists traces to your configured storage backend. Not al
|
|
|
19
19
|
|
|
20
20
|
For production environments with high traffic, we recommend using **ClickHouse** for the observability domain via [composite storage](https://mastra.ai/reference/storage/composite). See [Production Recommendations](https://mastra.ai/docs/observability/tracing/exporters/default) for details.
|
|
21
21
|
|
|
22
|
-
##
|
|
22
|
+
## Quickstart
|
|
23
23
|
|
|
24
24
|
Configure Observability in your Mastra instance:
|
|
25
25
|
|
|
@@ -46,5 +46,4 @@ const memory = mastra.getMemory('conversationMemory')
|
|
|
46
46
|
## Related
|
|
47
47
|
|
|
48
48
|
- [Mastra.listMemory()](https://mastra.ai/reference/core/listMemory)
|
|
49
|
-
- [Memory overview](https://mastra.ai/docs/memory/overview)
|
|
50
|
-
- [Agent Memory](https://mastra.ai/docs/agents/agent-memory)
|
|
49
|
+
- [Memory overview](https://mastra.ai/docs/memory/overview)
|
|
@@ -52,5 +52,4 @@ console.log(Object.keys(allMemory)) // ["conversationMemory", "analyticsMemory"]
|
|
|
52
52
|
## Related
|
|
53
53
|
|
|
54
54
|
- [Mastra.getMemory()](https://mastra.ai/reference/core/getMemory)
|
|
55
|
-
- [Memory overview](https://mastra.ai/docs/memory/overview)
|
|
56
|
-
- [Agent Memory](https://mastra.ai/docs/agents/agent-memory)
|
|
55
|
+
- [Memory overview](https://mastra.ai/docs/memory/overview)
|
package/dist/index.cjs
CHANGED
|
@@ -2987,7 +2987,11 @@ var DatasetsLibSQL = class extends storage.DatasetsStorage {
|
|
|
2987
2987
|
await this.#db.createTable({ tableName: storage.TABLE_DATASET_ITEMS, schema: storage.DATASET_ITEMS_SCHEMA });
|
|
2988
2988
|
await this.#db.createTable({ tableName: storage.TABLE_DATASET_VERSIONS, schema: storage.DATASET_VERSIONS_SCHEMA });
|
|
2989
2989
|
await this.#addColumnIfNotExists(storage.TABLE_DATASETS, "requestContextSchema", "TEXT");
|
|
2990
|
+
await this.#addColumnIfNotExists(storage.TABLE_DATASETS, "tags", "TEXT");
|
|
2991
|
+
await this.#addColumnIfNotExists(storage.TABLE_DATASETS, "targetType", "TEXT");
|
|
2992
|
+
await this.#addColumnIfNotExists(storage.TABLE_DATASETS, "targetIds", "TEXT");
|
|
2990
2993
|
await this.#addColumnIfNotExists(storage.TABLE_DATASET_ITEMS, "requestContext", "TEXT");
|
|
2994
|
+
await this.#addColumnIfNotExists(storage.TABLE_DATASET_ITEMS, "source", "TEXT");
|
|
2991
2995
|
await this.#client.execute({
|
|
2992
2996
|
sql: `CREATE INDEX IF NOT EXISTS idx_dataset_items_dataset_validto ON "${storage.TABLE_DATASET_ITEMS}" ("datasetId", "validTo")`,
|
|
2993
2997
|
args: []
|
|
@@ -3030,6 +3034,9 @@ var DatasetsLibSQL = class extends storage.DatasetsStorage {
|
|
|
3030
3034
|
inputSchema: row.inputSchema ? storage.safelyParseJSON(row.inputSchema) : void 0,
|
|
3031
3035
|
groundTruthSchema: row.groundTruthSchema ? storage.safelyParseJSON(row.groundTruthSchema) : void 0,
|
|
3032
3036
|
requestContextSchema: row.requestContextSchema ? storage.safelyParseJSON(row.requestContextSchema) : void 0,
|
|
3037
|
+
tags: row.tags ? storage.safelyParseJSON(row.tags) : void 0,
|
|
3038
|
+
targetType: row.targetType || void 0,
|
|
3039
|
+
targetIds: row.targetIds ? storage.safelyParseJSON(row.targetIds) : void 0,
|
|
3033
3040
|
version: row.version,
|
|
3034
3041
|
createdAt: storage.ensureDate(row.createdAt),
|
|
3035
3042
|
updatedAt: storage.ensureDate(row.updatedAt)
|
|
@@ -3044,6 +3051,7 @@ var DatasetsLibSQL = class extends storage.DatasetsStorage {
|
|
|
3044
3051
|
groundTruth: row.groundTruth ? storage.safelyParseJSON(row.groundTruth) : void 0,
|
|
3045
3052
|
requestContext: row.requestContext ? storage.safelyParseJSON(row.requestContext) : void 0,
|
|
3046
3053
|
metadata: row.metadata ? storage.safelyParseJSON(row.metadata) : void 0,
|
|
3054
|
+
source: row.source ? storage.safelyParseJSON(row.source) : void 0,
|
|
3047
3055
|
createdAt: storage.ensureDate(row.createdAt),
|
|
3048
3056
|
updatedAt: storage.ensureDate(row.updatedAt)
|
|
3049
3057
|
};
|
|
@@ -3059,6 +3067,7 @@ var DatasetsLibSQL = class extends storage.DatasetsStorage {
|
|
|
3059
3067
|
groundTruth: row.groundTruth ? storage.safelyParseJSON(row.groundTruth) : void 0,
|
|
3060
3068
|
requestContext: row.requestContext ? storage.safelyParseJSON(row.requestContext) : void 0,
|
|
3061
3069
|
metadata: row.metadata ? storage.safelyParseJSON(row.metadata) : void 0,
|
|
3070
|
+
source: row.source ? storage.safelyParseJSON(row.source) : void 0,
|
|
3062
3071
|
createdAt: storage.ensureDate(row.createdAt),
|
|
3063
3072
|
updatedAt: storage.ensureDate(row.updatedAt)
|
|
3064
3073
|
};
|
|
@@ -3087,6 +3096,8 @@ var DatasetsLibSQL = class extends storage.DatasetsStorage {
|
|
|
3087
3096
|
inputSchema: input.inputSchema ?? null,
|
|
3088
3097
|
groundTruthSchema: input.groundTruthSchema ?? null,
|
|
3089
3098
|
requestContextSchema: input.requestContextSchema ?? null,
|
|
3099
|
+
targetType: input.targetType ?? null,
|
|
3100
|
+
targetIds: input.targetIds ? JSON.stringify(input.targetIds) : null,
|
|
3090
3101
|
version: 0,
|
|
3091
3102
|
createdAt: nowIso,
|
|
3092
3103
|
updatedAt: nowIso
|
|
@@ -3100,6 +3111,8 @@ var DatasetsLibSQL = class extends storage.DatasetsStorage {
|
|
|
3100
3111
|
inputSchema: input.inputSchema ?? void 0,
|
|
3101
3112
|
groundTruthSchema: input.groundTruthSchema ?? void 0,
|
|
3102
3113
|
requestContextSchema: input.requestContextSchema ?? void 0,
|
|
3114
|
+
targetType: input.targetType ?? void 0,
|
|
3115
|
+
targetIds: input.targetIds ?? void 0,
|
|
3103
3116
|
version: 0,
|
|
3104
3117
|
createdAt: now,
|
|
3105
3118
|
updatedAt: now
|
|
@@ -3171,6 +3184,18 @@ var DatasetsLibSQL = class extends storage.DatasetsStorage {
|
|
|
3171
3184
|
updates.push("requestContextSchema = ?");
|
|
3172
3185
|
values.push(args.requestContextSchema === null ? null : JSON.stringify(args.requestContextSchema));
|
|
3173
3186
|
}
|
|
3187
|
+
if (args.tags !== void 0) {
|
|
3188
|
+
updates.push("tags = ?");
|
|
3189
|
+
values.push(args.tags === null ? null : JSON.stringify(args.tags));
|
|
3190
|
+
}
|
|
3191
|
+
if (args.targetType !== void 0) {
|
|
3192
|
+
updates.push("targetType = ?");
|
|
3193
|
+
values.push(args.targetType === null ? null : args.targetType);
|
|
3194
|
+
}
|
|
3195
|
+
if (args.targetIds !== void 0) {
|
|
3196
|
+
updates.push("targetIds = ?");
|
|
3197
|
+
values.push(args.targetIds === null ? null : JSON.stringify(args.targetIds));
|
|
3198
|
+
}
|
|
3174
3199
|
values.push(args.id);
|
|
3175
3200
|
await this.#client.execute({
|
|
3176
3201
|
sql: `UPDATE ${storage.TABLE_DATASETS} SET ${updates.join(", ")} WHERE id = ?`,
|
|
@@ -3184,6 +3209,9 @@ var DatasetsLibSQL = class extends storage.DatasetsStorage {
|
|
|
3184
3209
|
inputSchema: (args.inputSchema !== void 0 ? args.inputSchema : existing.inputSchema) ?? void 0,
|
|
3185
3210
|
groundTruthSchema: (args.groundTruthSchema !== void 0 ? args.groundTruthSchema : existing.groundTruthSchema) ?? void 0,
|
|
3186
3211
|
requestContextSchema: (args.requestContextSchema !== void 0 ? args.requestContextSchema : existing.requestContextSchema) ?? void 0,
|
|
3212
|
+
tags: (args.tags !== void 0 ? args.tags : existing.tags) ?? void 0,
|
|
3213
|
+
targetType: (args.targetType !== void 0 ? args.targetType : existing.targetType) ?? void 0,
|
|
3214
|
+
targetIds: (args.targetIds !== void 0 ? args.targetIds : existing.targetIds) ?? void 0,
|
|
3187
3215
|
updatedAt: new Date(now)
|
|
3188
3216
|
};
|
|
3189
3217
|
} catch (error$1) {
|
|
@@ -3289,7 +3317,7 @@ var DatasetsLibSQL = class extends storage.DatasetsStorage {
|
|
|
3289
3317
|
args: [args.datasetId]
|
|
3290
3318
|
},
|
|
3291
3319
|
{
|
|
3292
|
-
sql: `INSERT INTO ${storage.TABLE_DATASET_ITEMS} (id, datasetId, datasetVersion, validTo, isDeleted, input, groundTruth, requestContext, metadata, createdAt, updatedAt) VALUES (?, ?, (SELECT version FROM ${storage.TABLE_DATASETS} WHERE id = ?), NULL, 0, jsonb(?), jsonb(?), jsonb(?), jsonb(?), ?, ?)`,
|
|
3320
|
+
sql: `INSERT INTO ${storage.TABLE_DATASET_ITEMS} (id, datasetId, datasetVersion, validTo, isDeleted, input, groundTruth, requestContext, metadata, source, createdAt, updatedAt) VALUES (?, ?, (SELECT version FROM ${storage.TABLE_DATASETS} WHERE id = ?), NULL, 0, jsonb(?), jsonb(?), jsonb(?), jsonb(?), jsonb(?), ?, ?)`,
|
|
3293
3321
|
args: [
|
|
3294
3322
|
id,
|
|
3295
3323
|
args.datasetId,
|
|
@@ -3298,6 +3326,7 @@ var DatasetsLibSQL = class extends storage.DatasetsStorage {
|
|
|
3298
3326
|
jsonbArg(args.groundTruth),
|
|
3299
3327
|
jsonbArg(args.requestContext),
|
|
3300
3328
|
jsonbArg(args.metadata),
|
|
3329
|
+
jsonbArg(args.source),
|
|
3301
3330
|
nowIso,
|
|
3302
3331
|
nowIso
|
|
3303
3332
|
]
|
|
@@ -3318,6 +3347,7 @@ var DatasetsLibSQL = class extends storage.DatasetsStorage {
|
|
|
3318
3347
|
groundTruth: args.groundTruth,
|
|
3319
3348
|
requestContext: args.requestContext,
|
|
3320
3349
|
metadata: args.metadata,
|
|
3350
|
+
source: args.source,
|
|
3321
3351
|
createdAt: now,
|
|
3322
3352
|
updatedAt: now
|
|
3323
3353
|
};
|
|
@@ -3359,6 +3389,7 @@ var DatasetsLibSQL = class extends storage.DatasetsStorage {
|
|
|
3359
3389
|
const mergedGroundTruth = args.groundTruth ?? existing.groundTruth;
|
|
3360
3390
|
const mergedRequestContext = args.requestContext ?? existing.requestContext;
|
|
3361
3391
|
const mergedMetadata = args.metadata ?? existing.metadata;
|
|
3392
|
+
const mergedSource = args.source ?? existing.source;
|
|
3362
3393
|
const results = await this.#client.batch(
|
|
3363
3394
|
[
|
|
3364
3395
|
{
|
|
@@ -3370,7 +3401,7 @@ var DatasetsLibSQL = class extends storage.DatasetsStorage {
|
|
|
3370
3401
|
args: [args.datasetId, args.id]
|
|
3371
3402
|
},
|
|
3372
3403
|
{
|
|
3373
|
-
sql: `INSERT INTO ${storage.TABLE_DATASET_ITEMS} (id, datasetId, datasetVersion, validTo, isDeleted, input, groundTruth, requestContext, metadata, createdAt, updatedAt) VALUES (?, ?, (SELECT version FROM ${storage.TABLE_DATASETS} WHERE id = ?), NULL, 0, jsonb(?), jsonb(?), jsonb(?), jsonb(?), ?, ?)`,
|
|
3404
|
+
sql: `INSERT INTO ${storage.TABLE_DATASET_ITEMS} (id, datasetId, datasetVersion, validTo, isDeleted, input, groundTruth, requestContext, metadata, source, createdAt, updatedAt) VALUES (?, ?, (SELECT version FROM ${storage.TABLE_DATASETS} WHERE id = ?), NULL, 0, jsonb(?), jsonb(?), jsonb(?), jsonb(?), jsonb(?), ?, ?)`,
|
|
3374
3405
|
args: [
|
|
3375
3406
|
args.id,
|
|
3376
3407
|
args.datasetId,
|
|
@@ -3379,6 +3410,7 @@ var DatasetsLibSQL = class extends storage.DatasetsStorage {
|
|
|
3379
3410
|
jsonbArg(mergedGroundTruth),
|
|
3380
3411
|
jsonbArg(mergedRequestContext),
|
|
3381
3412
|
jsonbArg(mergedMetadata),
|
|
3413
|
+
jsonbArg(mergedSource),
|
|
3382
3414
|
existing.createdAt.toISOString(),
|
|
3383
3415
|
nowIso
|
|
3384
3416
|
]
|
|
@@ -3398,6 +3430,7 @@ var DatasetsLibSQL = class extends storage.DatasetsStorage {
|
|
|
3398
3430
|
groundTruth: mergedGroundTruth,
|
|
3399
3431
|
requestContext: mergedRequestContext,
|
|
3400
3432
|
metadata: mergedMetadata,
|
|
3433
|
+
source: mergedSource,
|
|
3401
3434
|
updatedAt: now
|
|
3402
3435
|
};
|
|
3403
3436
|
} catch (error$1) {
|
|
@@ -3437,7 +3470,7 @@ var DatasetsLibSQL = class extends storage.DatasetsStorage {
|
|
|
3437
3470
|
args: [datasetId, id]
|
|
3438
3471
|
},
|
|
3439
3472
|
{
|
|
3440
|
-
sql: `INSERT INTO ${storage.TABLE_DATASET_ITEMS} (id, datasetId, datasetVersion, validTo, isDeleted, input, groundTruth, requestContext, metadata, createdAt, updatedAt) VALUES (?, ?, (SELECT version FROM ${storage.TABLE_DATASETS} WHERE id = ?), NULL, 1, jsonb(?), jsonb(?), jsonb(?), jsonb(?), ?, ?)`,
|
|
3473
|
+
sql: `INSERT INTO ${storage.TABLE_DATASET_ITEMS} (id, datasetId, datasetVersion, validTo, isDeleted, input, groundTruth, requestContext, metadata, source, createdAt, updatedAt) VALUES (?, ?, (SELECT version FROM ${storage.TABLE_DATASETS} WHERE id = ?), NULL, 1, jsonb(?), jsonb(?), jsonb(?), jsonb(?), jsonb(?), ?, ?)`,
|
|
3441
3474
|
args: [
|
|
3442
3475
|
id,
|
|
3443
3476
|
datasetId,
|
|
@@ -3446,6 +3479,7 @@ var DatasetsLibSQL = class extends storage.DatasetsStorage {
|
|
|
3446
3479
|
jsonbArg(existing.groundTruth),
|
|
3447
3480
|
jsonbArg(existing.requestContext),
|
|
3448
3481
|
jsonbArg(existing.metadata),
|
|
3482
|
+
jsonbArg(existing.source),
|
|
3449
3483
|
existing.createdAt.toISOString(),
|
|
3450
3484
|
nowIso
|
|
3451
3485
|
]
|
|
@@ -3725,7 +3759,7 @@ var DatasetsLibSQL = class extends storage.DatasetsStorage {
|
|
|
3725
3759
|
const id = crypto.randomUUID();
|
|
3726
3760
|
items.push({ id, input: itemInput });
|
|
3727
3761
|
statements.push({
|
|
3728
|
-
sql: `INSERT INTO ${storage.TABLE_DATASET_ITEMS} (id, datasetId, datasetVersion, validTo, isDeleted, input, groundTruth, requestContext, metadata, createdAt, updatedAt) VALUES (?, ?, (SELECT version FROM ${storage.TABLE_DATASETS} WHERE id = ?), NULL, 0, jsonb(?), jsonb(?), jsonb(?), jsonb(?), ?, ?)`,
|
|
3762
|
+
sql: `INSERT INTO ${storage.TABLE_DATASET_ITEMS} (id, datasetId, datasetVersion, validTo, isDeleted, input, groundTruth, requestContext, metadata, source, createdAt, updatedAt) VALUES (?, ?, (SELECT version FROM ${storage.TABLE_DATASETS} WHERE id = ?), NULL, 0, jsonb(?), jsonb(?), jsonb(?), jsonb(?), jsonb(?), ?, ?)`,
|
|
3729
3763
|
args: [
|
|
3730
3764
|
id,
|
|
3731
3765
|
input.datasetId,
|
|
@@ -3734,6 +3768,7 @@ var DatasetsLibSQL = class extends storage.DatasetsStorage {
|
|
|
3734
3768
|
jsonbArg(itemInput.groundTruth),
|
|
3735
3769
|
jsonbArg(itemInput.requestContext),
|
|
3736
3770
|
jsonbArg(itemInput.metadata),
|
|
3771
|
+
jsonbArg(itemInput.source),
|
|
3737
3772
|
nowIso,
|
|
3738
3773
|
nowIso
|
|
3739
3774
|
]
|
|
@@ -3753,6 +3788,7 @@ var DatasetsLibSQL = class extends storage.DatasetsStorage {
|
|
|
3753
3788
|
groundTruth: itemInput.groundTruth,
|
|
3754
3789
|
requestContext: itemInput.requestContext,
|
|
3755
3790
|
metadata: itemInput.metadata,
|
|
3791
|
+
source: itemInput.source,
|
|
3756
3792
|
createdAt: now,
|
|
3757
3793
|
updatedAt: now
|
|
3758
3794
|
}));
|
|
@@ -3801,7 +3837,7 @@ var DatasetsLibSQL = class extends storage.DatasetsStorage {
|
|
|
3801
3837
|
args: [input.datasetId, item.id]
|
|
3802
3838
|
});
|
|
3803
3839
|
statements.push({
|
|
3804
|
-
sql: `INSERT INTO ${storage.TABLE_DATASET_ITEMS} (id, datasetId, datasetVersion, validTo, isDeleted, input, groundTruth, requestContext, metadata, createdAt, updatedAt) VALUES (?, ?, (SELECT version FROM ${storage.TABLE_DATASETS} WHERE id = ?), NULL, 1, jsonb(?), jsonb(?), jsonb(?), jsonb(?), ?, ?)`,
|
|
3840
|
+
sql: `INSERT INTO ${storage.TABLE_DATASET_ITEMS} (id, datasetId, datasetVersion, validTo, isDeleted, input, groundTruth, requestContext, metadata, source, createdAt, updatedAt) VALUES (?, ?, (SELECT version FROM ${storage.TABLE_DATASETS} WHERE id = ?), NULL, 1, jsonb(?), jsonb(?), jsonb(?), jsonb(?), jsonb(?), ?, ?)`,
|
|
3805
3841
|
args: [
|
|
3806
3842
|
item.id,
|
|
3807
3843
|
input.datasetId,
|
|
@@ -3810,6 +3846,7 @@ var DatasetsLibSQL = class extends storage.DatasetsStorage {
|
|
|
3810
3846
|
jsonbArg(item.groundTruth),
|
|
3811
3847
|
jsonbArg(item.requestContext),
|
|
3812
3848
|
jsonbArg(item.metadata),
|
|
3849
|
+
jsonbArg(item.source),
|
|
3813
3850
|
item.createdAt.toISOString(),
|
|
3814
3851
|
nowIso
|
|
3815
3852
|
]
|
|
@@ -3902,6 +3939,8 @@ var ExperimentsLibSQL = class extends storage.ExperimentsStorage {
|
|
|
3902
3939
|
completedAt: storage.ensureDate(row.completedAt),
|
|
3903
3940
|
retryCount: row.retryCount,
|
|
3904
3941
|
traceId: row.traceId ?? null,
|
|
3942
|
+
status: row.status ?? null,
|
|
3943
|
+
tags: row.tags ? storage.safelyParseJSON(row.tags) : null,
|
|
3905
3944
|
createdAt: storage.ensureDate(row.createdAt)
|
|
3906
3945
|
};
|
|
3907
3946
|
}
|
|
@@ -4145,6 +4184,8 @@ var ExperimentsLibSQL = class extends storage.ExperimentsStorage {
|
|
|
4145
4184
|
completedAt: input.completedAt.toISOString(),
|
|
4146
4185
|
retryCount: input.retryCount,
|
|
4147
4186
|
traceId: input.traceId ?? null,
|
|
4187
|
+
status: input.status ?? null,
|
|
4188
|
+
tags: input.tags !== void 0 && input.tags !== null ? JSON.stringify(input.tags) : null,
|
|
4148
4189
|
createdAt: nowIso
|
|
4149
4190
|
}
|
|
4150
4191
|
});
|
|
@@ -4161,6 +4202,8 @@ var ExperimentsLibSQL = class extends storage.ExperimentsStorage {
|
|
|
4161
4202
|
completedAt: input.completedAt,
|
|
4162
4203
|
retryCount: input.retryCount,
|
|
4163
4204
|
traceId: input.traceId ?? null,
|
|
4205
|
+
status: input.status ?? null,
|
|
4206
|
+
tags: input.tags ?? null,
|
|
4164
4207
|
createdAt: now
|
|
4165
4208
|
};
|
|
4166
4209
|
} catch (error$1) {
|
|
@@ -4174,6 +4217,70 @@ var ExperimentsLibSQL = class extends storage.ExperimentsStorage {
|
|
|
4174
4217
|
);
|
|
4175
4218
|
}
|
|
4176
4219
|
}
|
|
4220
|
+
async updateExperimentResult(input) {
|
|
4221
|
+
try {
|
|
4222
|
+
const setClauses = [];
|
|
4223
|
+
const values = [];
|
|
4224
|
+
if (input.status !== void 0) {
|
|
4225
|
+
setClauses.push(`"status" = ?`);
|
|
4226
|
+
values.push(input.status);
|
|
4227
|
+
}
|
|
4228
|
+
if (input.tags !== void 0) {
|
|
4229
|
+
setClauses.push(`"tags" = ?`);
|
|
4230
|
+
values.push(JSON.stringify(input.tags));
|
|
4231
|
+
}
|
|
4232
|
+
if (setClauses.length === 0) {
|
|
4233
|
+
const existing = await this.getExperimentResultById({ id: input.id });
|
|
4234
|
+
if (!existing) {
|
|
4235
|
+
throw new error.MastraError({
|
|
4236
|
+
id: storage.createStorageErrorId("LIBSQL", "UPDATE_EXPERIMENT_RESULT", "NOT_FOUND"),
|
|
4237
|
+
domain: error.ErrorDomain.STORAGE,
|
|
4238
|
+
category: error.ErrorCategory.USER,
|
|
4239
|
+
details: { resultId: input.id }
|
|
4240
|
+
});
|
|
4241
|
+
}
|
|
4242
|
+
return existing;
|
|
4243
|
+
}
|
|
4244
|
+
values.push(input.id);
|
|
4245
|
+
let whereClause = `"id" = ?`;
|
|
4246
|
+
if (input.experimentId) {
|
|
4247
|
+
values.push(input.experimentId);
|
|
4248
|
+
whereClause += ` AND "experimentId" = ?`;
|
|
4249
|
+
}
|
|
4250
|
+
const updateResult = await this.#client.execute({
|
|
4251
|
+
sql: `UPDATE ${storage.TABLE_EXPERIMENT_RESULTS} SET ${setClauses.join(", ")} WHERE ${whereClause}`,
|
|
4252
|
+
args: values
|
|
4253
|
+
});
|
|
4254
|
+
if (updateResult.rowsAffected === 0) {
|
|
4255
|
+
throw new error.MastraError({
|
|
4256
|
+
id: storage.createStorageErrorId("LIBSQL", "UPDATE_EXPERIMENT_RESULT", "NOT_FOUND"),
|
|
4257
|
+
domain: error.ErrorDomain.STORAGE,
|
|
4258
|
+
category: error.ErrorCategory.USER,
|
|
4259
|
+
details: { resultId: input.id, ...input.experimentId ? { experimentId: input.experimentId } : {} }
|
|
4260
|
+
});
|
|
4261
|
+
}
|
|
4262
|
+
const result = await this.getExperimentResultById({ id: input.id });
|
|
4263
|
+
if (!result) {
|
|
4264
|
+
throw new error.MastraError({
|
|
4265
|
+
id: storage.createStorageErrorId("LIBSQL", "UPDATE_EXPERIMENT_RESULT", "NOT_FOUND"),
|
|
4266
|
+
domain: error.ErrorDomain.STORAGE,
|
|
4267
|
+
category: error.ErrorCategory.USER,
|
|
4268
|
+
details: { resultId: input.id }
|
|
4269
|
+
});
|
|
4270
|
+
}
|
|
4271
|
+
return result;
|
|
4272
|
+
} catch (error$1) {
|
|
4273
|
+
if (error$1 instanceof error.MastraError) throw error$1;
|
|
4274
|
+
throw new error.MastraError(
|
|
4275
|
+
{
|
|
4276
|
+
id: storage.createStorageErrorId("LIBSQL", "UPDATE_EXPERIMENT_RESULT", "FAILED"),
|
|
4277
|
+
domain: error.ErrorDomain.STORAGE,
|
|
4278
|
+
category: error.ErrorCategory.THIRD_PARTY
|
|
4279
|
+
},
|
|
4280
|
+
error$1
|
|
4281
|
+
);
|
|
4282
|
+
}
|
|
4283
|
+
}
|
|
4177
4284
|
async getExperimentResultById(args) {
|
|
4178
4285
|
try {
|
|
4179
4286
|
const result = await this.#client.execute({
|