@mastra/core 1.15.0 → 1.16.0-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.
Files changed (170) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/dist/_types/@internal_core/dist/index.d.ts +7 -0
  3. package/dist/agent/index.cjs +8 -8
  4. package/dist/agent/index.js +1 -1
  5. package/dist/agent/workflows/prepare-stream/index.d.ts +1 -1
  6. package/dist/agent/workflows/prepare-stream/index.d.ts.map +1 -1
  7. package/dist/agent/workflows/prepare-stream/map-results-step.d.ts +1 -1
  8. package/dist/agent/workflows/prepare-stream/map-results-step.d.ts.map +1 -1
  9. package/dist/agent/workflows/prepare-stream/prepare-tools-step.d.ts +1 -1
  10. package/dist/agent/workflows/prepare-stream/prepare-tools-step.d.ts.map +1 -1
  11. package/dist/{chunk-SEXK27FJ.js → chunk-2PSKFARX.js} +5 -5
  12. package/dist/{chunk-SEXK27FJ.js.map → chunk-2PSKFARX.js.map} +1 -1
  13. package/dist/{chunk-WAPASC33.js → chunk-3IACFBML.js} +4 -4
  14. package/dist/{chunk-WAPASC33.js.map → chunk-3IACFBML.js.map} +1 -1
  15. package/dist/{chunk-LFMJYWJ7.js → chunk-3SDR4BWW.js} +10 -3
  16. package/dist/chunk-3SDR4BWW.js.map +1 -0
  17. package/dist/{chunk-JUL4UHWQ.cjs → chunk-4SE5WPZS.cjs} +6 -3
  18. package/dist/chunk-4SE5WPZS.cjs.map +1 -0
  19. package/dist/{chunk-YVFFNB2F.cjs → chunk-542IIQM4.cjs} +9 -9
  20. package/dist/{chunk-YVFFNB2F.cjs.map → chunk-542IIQM4.cjs.map} +1 -1
  21. package/dist/{chunk-ZHWQKPUV.cjs → chunk-57NZ23ZE.cjs} +39 -32
  22. package/dist/chunk-57NZ23ZE.cjs.map +1 -0
  23. package/dist/{chunk-Y6DV2OT2.js → chunk-5QV7Z7XH.js} +32 -5
  24. package/dist/chunk-5QV7Z7XH.js.map +1 -0
  25. package/dist/{chunk-FYQXIWRH.cjs → chunk-64L4MPSZ.cjs} +13 -13
  26. package/dist/{chunk-FYQXIWRH.cjs.map → chunk-64L4MPSZ.cjs.map} +1 -1
  27. package/dist/{chunk-P2PWEGRW.cjs → chunk-6W6AOWKN.cjs} +83 -83
  28. package/dist/{chunk-P2PWEGRW.cjs.map → chunk-6W6AOWKN.cjs.map} +1 -1
  29. package/dist/{chunk-H4QQ6U2N.js → chunk-7QYYD3UW.js} +8 -8
  30. package/dist/{chunk-H4QQ6U2N.js.map → chunk-7QYYD3UW.js.map} +1 -1
  31. package/dist/{chunk-P4GCK6VL.js → chunk-A5LEVLFM.js} +15 -7
  32. package/dist/chunk-A5LEVLFM.js.map +1 -0
  33. package/dist/{chunk-6JLJTBF7.js → chunk-DQDA2GAF.js} +3 -3
  34. package/dist/chunk-DQDA2GAF.js.map +1 -0
  35. package/dist/{chunk-XIQD3JK4.cjs → chunk-H2KIHE4I.cjs} +47 -9
  36. package/dist/chunk-H2KIHE4I.cjs.map +1 -0
  37. package/dist/{chunk-Z6IJWMIL.js → chunk-HQH3FILI.js} +4 -4
  38. package/dist/{chunk-Z6IJWMIL.js.map → chunk-HQH3FILI.js.map} +1 -1
  39. package/dist/{chunk-Q37F6PBO.cjs → chunk-LHNUJEV5.cjs} +23 -23
  40. package/dist/chunk-LHNUJEV5.cjs.map +1 -0
  41. package/dist/{chunk-3A2WQ6XL.js → chunk-NMVEVERK.js} +3 -3
  42. package/dist/{chunk-3A2WQ6XL.js.map → chunk-NMVEVERK.js.map} +1 -1
  43. package/dist/{chunk-U37AM3YI.cjs → chunk-P3Z47LFL.cjs} +13 -13
  44. package/dist/{chunk-U37AM3YI.cjs.map → chunk-P3Z47LFL.cjs.map} +1 -1
  45. package/dist/{chunk-WRHDZMKQ.js → chunk-PQWKSCWD.js} +11 -4
  46. package/dist/chunk-PQWKSCWD.js.map +1 -0
  47. package/dist/{chunk-2YN2UNSQ.cjs → chunk-QKZGMKBV.cjs} +13 -6
  48. package/dist/chunk-QKZGMKBV.cjs.map +1 -0
  49. package/dist/{chunk-5JO4UOHA.cjs → chunk-R5IZY5AI.cjs} +185 -185
  50. package/dist/{chunk-5JO4UOHA.cjs.map → chunk-R5IZY5AI.cjs.map} +1 -1
  51. package/dist/{chunk-PJTQ3KPM.cjs → chunk-RAPHSIIS.cjs} +68 -68
  52. package/dist/{chunk-PJTQ3KPM.cjs.map → chunk-RAPHSIIS.cjs.map} +1 -1
  53. package/dist/{chunk-K636CQJK.js → chunk-TE3EH746.js} +3 -3
  54. package/dist/{chunk-K636CQJK.js.map → chunk-TE3EH746.js.map} +1 -1
  55. package/dist/{chunk-RTQZRDV7.js → chunk-VAPRBIHM.js} +46 -8
  56. package/dist/chunk-VAPRBIHM.js.map +1 -0
  57. package/dist/{chunk-3PUUIEVX.js → chunk-VBVVGBJJ.js} +6 -3
  58. package/dist/chunk-VBVVGBJJ.js.map +1 -0
  59. package/dist/{chunk-VSGRSX3N.cjs → chunk-XAFCD3W2.cjs} +49 -22
  60. package/dist/chunk-XAFCD3W2.cjs.map +1 -0
  61. package/dist/{chunk-EHC3R2MJ.js → chunk-XHXYXSH7.js} +5 -5
  62. package/dist/{chunk-EHC3R2MJ.js.map → chunk-XHXYXSH7.js.map} +1 -1
  63. package/dist/{chunk-EB6WWMRH.cjs → chunk-XIC3EDT4.cjs} +3 -3
  64. package/dist/chunk-XIC3EDT4.cjs.map +1 -0
  65. package/dist/{chunk-BXSSIONK.cjs → chunk-XZE2N5VH.cjs} +178 -170
  66. package/dist/chunk-XZE2N5VH.cjs.map +1 -0
  67. package/dist/{chunk-JEAJVWXB.js → chunk-YQECYE7N.js} +12 -12
  68. package/dist/chunk-YQECYE7N.js.map +1 -0
  69. package/dist/{chunk-BVFFFLMD.cjs → chunk-YVVZSL6J.cjs} +7 -7
  70. package/dist/{chunk-BVFFFLMD.cjs.map → chunk-YVVZSL6J.cjs.map} +1 -1
  71. package/dist/{chunk-EYLPPZIF.js → chunk-YZZRYFTN.js} +4 -4
  72. package/dist/{chunk-EYLPPZIF.js.map → chunk-YZZRYFTN.js.map} +1 -1
  73. package/dist/{chunk-NI5Q26SA.cjs → chunk-Z6SLUMEY.cjs} +10 -10
  74. package/dist/{chunk-NI5Q26SA.cjs.map → chunk-Z6SLUMEY.cjs.map} +1 -1
  75. package/dist/datasets/dataset.d.ts +8 -1
  76. package/dist/datasets/dataset.d.ts.map +1 -1
  77. package/dist/datasets/index.cjs +17 -17
  78. package/dist/datasets/index.js +2 -2
  79. package/dist/datasets/manager.d.ts +3 -0
  80. package/dist/datasets/manager.d.ts.map +1 -1
  81. package/dist/docs/SKILL.md +1 -1
  82. package/dist/docs/assets/SOURCE_MAP.json +456 -456
  83. package/dist/evals/index.cjs +20 -20
  84. package/dist/evals/index.js +3 -3
  85. package/dist/evals/scoreTraces/index.cjs +7 -7
  86. package/dist/evals/scoreTraces/index.js +3 -3
  87. package/dist/harness/index.cjs +7 -7
  88. package/dist/harness/index.js +5 -5
  89. package/dist/index.cjs +2 -2
  90. package/dist/index.js +1 -1
  91. package/dist/llm/index.cjs +16 -16
  92. package/dist/llm/index.js +5 -5
  93. package/dist/llm/model/provider-types.generated.d.ts +20 -1
  94. package/dist/loop/index.cjs +14 -14
  95. package/dist/loop/index.js +1 -1
  96. package/dist/mastra/index.cjs +2 -2
  97. package/dist/mastra/index.js +1 -1
  98. package/dist/memory/index.cjs +14 -14
  99. package/dist/memory/index.js +1 -1
  100. package/dist/models-dev-46T4RYCV.js +3 -0
  101. package/dist/{models-dev-MYQ5DG6M.js.map → models-dev-46T4RYCV.js.map} +1 -1
  102. package/dist/models-dev-IXRDPMYE.cjs +12 -0
  103. package/dist/{models-dev-U7CZOMQF.cjs.map → models-dev-IXRDPMYE.cjs.map} +1 -1
  104. package/dist/netlify-A25PHNK2.js +3 -0
  105. package/dist/{netlify-MUGFMWEG.js.map → netlify-A25PHNK2.js.map} +1 -1
  106. package/dist/netlify-AERELDDR.cjs +12 -0
  107. package/dist/{netlify-GCMZMVMD.cjs.map → netlify-AERELDDR.cjs.map} +1 -1
  108. package/dist/observability/index.cjs +18 -18
  109. package/dist/observability/index.js +1 -1
  110. package/dist/processor-provider/index.cjs +10 -10
  111. package/dist/processor-provider/index.js +1 -1
  112. package/dist/processors/index.cjs +42 -42
  113. package/dist/processors/index.js +1 -1
  114. package/dist/provider-registry-6T2HS3XM.cjs +40 -0
  115. package/dist/{provider-registry-QXHI4DMY.cjs.map → provider-registry-6T2HS3XM.cjs.map} +1 -1
  116. package/dist/provider-registry-FE4XSUID.js +3 -0
  117. package/dist/{provider-registry-3BGGCZ2Y.js.map → provider-registry-FE4XSUID.js.map} +1 -1
  118. package/dist/provider-registry.json +42 -4
  119. package/dist/relevance/index.cjs +3 -3
  120. package/dist/relevance/index.js +1 -1
  121. package/dist/storage/constants.cjs +56 -56
  122. package/dist/storage/constants.d.ts.map +1 -1
  123. package/dist/storage/constants.js +1 -1
  124. package/dist/storage/domains/datasets/inmemory.d.ts.map +1 -1
  125. package/dist/storage/domains/experiments/base.d.ts +2 -1
  126. package/dist/storage/domains/experiments/base.d.ts.map +1 -1
  127. package/dist/storage/domains/experiments/inmemory.d.ts +2 -1
  128. package/dist/storage/domains/experiments/inmemory.d.ts.map +1 -1
  129. package/dist/storage/index.cjs +264 -264
  130. package/dist/storage/index.js +3 -3
  131. package/dist/storage/types.d.ts +30 -0
  132. package/dist/storage/types.d.ts.map +1 -1
  133. package/dist/stream/index.cjs +8 -8
  134. package/dist/stream/index.js +1 -1
  135. package/dist/test-utils/llm-mock.cjs +4 -4
  136. package/dist/test-utils/llm-mock.js +1 -1
  137. package/dist/tool-loop-agent/index.cjs +4 -4
  138. package/dist/tool-loop-agent/index.js +1 -1
  139. package/dist/utils.cjs +23 -23
  140. package/dist/utils.js +1 -1
  141. package/dist/vector/index.cjs +7 -7
  142. package/dist/vector/index.js +1 -1
  143. package/dist/workflows/evented/index.cjs +10 -10
  144. package/dist/workflows/evented/index.js +1 -1
  145. package/dist/workflows/index.cjs +24 -24
  146. package/dist/workflows/index.js +1 -1
  147. package/package.json +4 -4
  148. package/src/llm/model/provider-types.generated.d.ts +20 -1
  149. package/dist/chunk-2YN2UNSQ.cjs.map +0 -1
  150. package/dist/chunk-3PUUIEVX.js.map +0 -1
  151. package/dist/chunk-6JLJTBF7.js.map +0 -1
  152. package/dist/chunk-BXSSIONK.cjs.map +0 -1
  153. package/dist/chunk-EB6WWMRH.cjs.map +0 -1
  154. package/dist/chunk-JEAJVWXB.js.map +0 -1
  155. package/dist/chunk-JUL4UHWQ.cjs.map +0 -1
  156. package/dist/chunk-LFMJYWJ7.js.map +0 -1
  157. package/dist/chunk-P4GCK6VL.js.map +0 -1
  158. package/dist/chunk-Q37F6PBO.cjs.map +0 -1
  159. package/dist/chunk-RTQZRDV7.js.map +0 -1
  160. package/dist/chunk-VSGRSX3N.cjs.map +0 -1
  161. package/dist/chunk-WRHDZMKQ.js.map +0 -1
  162. package/dist/chunk-XIQD3JK4.cjs.map +0 -1
  163. package/dist/chunk-Y6DV2OT2.js.map +0 -1
  164. package/dist/chunk-ZHWQKPUV.cjs.map +0 -1
  165. package/dist/models-dev-MYQ5DG6M.js +0 -3
  166. package/dist/models-dev-U7CZOMQF.cjs +0 -12
  167. package/dist/netlify-GCMZMVMD.cjs +0 -12
  168. package/dist/netlify-MUGFMWEG.js +0 -3
  169. package/dist/provider-registry-3BGGCZ2Y.js +0 -3
  170. package/dist/provider-registry-QXHI4DMY.cjs +0 -40
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
3
  var chunkO6O5MD7Q_cjs = require('./chunk-O6O5MD7Q.cjs');
4
- var chunkZHWQKPUV_cjs = require('./chunk-ZHWQKPUV.cjs');
5
- var chunkYVFFNB2F_cjs = require('./chunk-YVFFNB2F.cjs');
6
- var chunkJUL4UHWQ_cjs = require('./chunk-JUL4UHWQ.cjs');
4
+ var chunk57NZ23ZE_cjs = require('./chunk-57NZ23ZE.cjs');
5
+ var chunk542IIQM4_cjs = require('./chunk-542IIQM4.cjs');
6
+ var chunk4SE5WPZS_cjs = require('./chunk-4SE5WPZS.cjs');
7
7
  var chunk4U7ZLI36_cjs = require('./chunk-4U7ZLI36.cjs');
8
8
  var chunkRO47SMI7_cjs = require('./chunk-RO47SMI7.cjs');
9
9
  var jsonToZod = require('@mastra/schema-compat/json-to-zod');
@@ -539,7 +539,7 @@ function safelyParseJSON(input) {
539
539
  }
540
540
  function transformRow(row, tableName, options = {}) {
541
541
  const { preferredTimestampFields = {}, convertTimestamps = false, nullValuePattern, fieldMappings = {} } = options;
542
- const tableSchema = chunkZHWQKPUV_cjs.TABLE_SCHEMAS[tableName];
542
+ const tableSchema = chunk57NZ23ZE_cjs.TABLE_SCHEMAS[tableName];
543
543
  const result = {};
544
544
  for (const [key, columnSchema] of Object.entries(tableSchema)) {
545
545
  const sourceKey = fieldMappings[key] ?? key;
@@ -570,7 +570,7 @@ function transformRow(row, tableName, options = {}) {
570
570
  return result;
571
571
  }
572
572
  function transformScoreRow(row, options = {}) {
573
- return transformRow(row, chunkZHWQKPUV_cjs.TABLE_SCORERS, options);
573
+ return transformRow(row, chunk57NZ23ZE_cjs.TABLE_SCORERS, options);
574
574
  }
575
575
  function toUpperSnakeCase(str) {
576
576
  return str.replace(/([a-z])([A-Z])/g, "$1_$2").replace(/([A-Z])([A-Z][a-z])/g, "$1_$2").toUpperCase().replace(/[^A-Z0-9]+/g, "_").replace(/^_+|_+$/g, "");
@@ -822,7 +822,7 @@ var ObservabilityInMemory = class extends ObservabilityStorage {
822
822
  };
823
823
  }
824
824
  async listTraces(args) {
825
- const { filters, pagination, orderBy } = chunkZHWQKPUV_cjs.listTracesArgsSchema.parse(args);
825
+ const { filters, pagination, orderBy } = chunk57NZ23ZE_cjs.listTracesArgsSchema.parse(args);
826
826
  const matchingRootSpans = [];
827
827
  for (const [, traceEntry] of this.db.traces) {
828
828
  if (!traceEntry.rootSpan) continue;
@@ -851,7 +851,7 @@ var ObservabilityInMemory = class extends ObservabilityStorage {
851
851
  const end = start + perPage;
852
852
  const paged = matchingRootSpans.slice(start, end);
853
853
  return {
854
- spans: chunkZHWQKPUV_cjs.toTraceSpans(paged),
854
+ spans: chunk57NZ23ZE_cjs.toTraceSpans(paged),
855
855
  pagination: { total, page, perPage, hasMore: end < total }
856
856
  };
857
857
  }
@@ -1237,7 +1237,7 @@ var ObservabilityInMemory = class extends ObservabilityStorage {
1237
1237
  return { values };
1238
1238
  }
1239
1239
  async getEntityTypes(_args) {
1240
- const validTypes = new Set(Object.values(chunkJUL4UHWQ_cjs.EntityType));
1240
+ const validTypes = new Set(Object.values(chunk4SE5WPZS_cjs.EntityType));
1241
1241
  const typeSet = /* @__PURE__ */ new Set();
1242
1242
  for (const [, traceEntry] of this.db.traces) {
1243
1243
  for (const span of Object.values(traceEntry.spans)) {
@@ -1299,7 +1299,7 @@ var ObservabilityInMemory = class extends ObservabilityStorage {
1299
1299
  }
1300
1300
  }
1301
1301
  async listLogs(args) {
1302
- const { filters, pagination, orderBy } = chunkJUL4UHWQ_cjs.listLogsArgsSchema.parse(args);
1302
+ const { filters, pagination, orderBy } = chunk4SE5WPZS_cjs.listLogsArgsSchema.parse(args);
1303
1303
  let matching = this.db.logRecords.filter((log) => this.logMatchesFilters(log, filters));
1304
1304
  const dir = orderBy.direction === "DESC" ? -1 : 1;
1305
1305
  matching.sort((a, b) => dir * (a.timestamp.getTime() - b.timestamp.getTime()));
@@ -1354,7 +1354,7 @@ var ObservabilityInMemory = class extends ObservabilityStorage {
1354
1354
  }
1355
1355
  }
1356
1356
  async listScores(args) {
1357
- const { filters, pagination, orderBy } = chunkJUL4UHWQ_cjs.listScoresArgsSchema.parse(args);
1357
+ const { filters, pagination, orderBy } = chunk4SE5WPZS_cjs.listScoresArgsSchema.parse(args);
1358
1358
  let matching = this.db.scoreRecords.filter((score) => this.scoreMatchesFilters(score, filters));
1359
1359
  const dir = orderBy.direction === "DESC" ? -1 : 1;
1360
1360
  if (orderBy.field === "score") {
@@ -1398,7 +1398,7 @@ var ObservabilityInMemory = class extends ObservabilityStorage {
1398
1398
  }
1399
1399
  }
1400
1400
  async listFeedback(args) {
1401
- const { filters, pagination, orderBy } = chunkJUL4UHWQ_cjs.listFeedbackArgsSchema.parse(args);
1401
+ const { filters, pagination, orderBy } = chunk4SE5WPZS_cjs.listFeedbackArgsSchema.parse(args);
1402
1402
  let matching = this.db.feedbackRecords.filter((fb) => this.feedbackMatchesFilters(fb, filters));
1403
1403
  const dir = orderBy.direction === "DESC" ? -1 : 1;
1404
1404
  matching.sort((a, b) => dir * (a.timestamp.getTime() - b.timestamp.getTime()));
@@ -1431,7 +1431,7 @@ var ObservabilityInMemory = class extends ObservabilityStorage {
1431
1431
  };
1432
1432
 
1433
1433
  // src/storage/domains/observability/record-builders.ts
1434
- var entityTypeValues = new Set(Object.values(chunkJUL4UHWQ_cjs.EntityType));
1434
+ var entityTypeValues = new Set(Object.values(chunk4SE5WPZS_cjs.EntityType));
1435
1435
  function toEntityType(value) {
1436
1436
  if (value && entityTypeValues.has(value)) {
1437
1437
  return value;
@@ -1836,7 +1836,7 @@ var InMemoryAgentsStorage = class extends AgentsStorage {
1836
1836
  if (metadata && Object.keys(metadata).length > 0) {
1837
1837
  agents = agents.filter((agent) => {
1838
1838
  if (!agent.metadata) return false;
1839
- return Object.entries(metadata).every(([key, value]) => chunkYVFFNB2F_cjs.deepEqual(agent.metadata[key], value));
1839
+ return Object.entries(metadata).every(([key, value]) => chunk542IIQM4_cjs.deepEqual(agent.metadata[key], value));
1840
1840
  });
1841
1841
  }
1842
1842
  const sortedAgents = this.sortAgents(agents, field, direction);
@@ -2283,6 +2283,7 @@ function toDatasetItem(row) {
2283
2283
  groundTruth: row.groundTruth,
2284
2284
  requestContext: row.requestContext,
2285
2285
  metadata: row.metadata,
2286
+ source: row.source,
2286
2287
  createdAt: row.createdAt,
2287
2288
  updatedAt: row.updatedAt
2288
2289
  };
@@ -2318,6 +2319,8 @@ var DatasetsInMemory = class extends DatasetsStorage {
2318
2319
  inputSchema: input.inputSchema,
2319
2320
  groundTruthSchema: input.groundTruthSchema,
2320
2321
  requestContextSchema: input.requestContextSchema,
2322
+ targetType: input.targetType,
2323
+ targetIds: input.targetIds,
2321
2324
  version: 0,
2322
2325
  createdAt: now,
2323
2326
  updatedAt: now
@@ -2342,6 +2345,9 @@ var DatasetsInMemory = class extends DatasetsStorage {
2342
2345
  inputSchema: args.inputSchema !== void 0 ? args.inputSchema : existing.inputSchema,
2343
2346
  groundTruthSchema: args.groundTruthSchema !== void 0 ? args.groundTruthSchema : existing.groundTruthSchema,
2344
2347
  requestContextSchema: args.requestContextSchema !== void 0 ? args.requestContextSchema : existing.requestContextSchema,
2348
+ tags: args.tags !== void 0 ? args.tags : existing.tags,
2349
+ targetType: args.targetType !== void 0 ? args.targetType : existing.targetType,
2350
+ targetIds: args.targetIds !== void 0 ? args.targetIds : existing.targetIds,
2345
2351
  updatedAt: /* @__PURE__ */ new Date()
2346
2352
  };
2347
2353
  this.db.datasets.set(args.id, updated);
@@ -2402,6 +2408,7 @@ var DatasetsInMemory = class extends DatasetsStorage {
2402
2408
  groundTruth: args.groundTruth,
2403
2409
  requestContext: args.requestContext,
2404
2410
  metadata: args.metadata,
2411
+ source: args.source,
2405
2412
  createdAt: now,
2406
2413
  updatedAt: now
2407
2414
  };
@@ -2439,6 +2446,7 @@ var DatasetsInMemory = class extends DatasetsStorage {
2439
2446
  groundTruth: args.groundTruth ?? currentRow.groundTruth,
2440
2447
  requestContext: args.requestContext ?? currentRow.requestContext,
2441
2448
  metadata: args.metadata ?? currentRow.metadata,
2449
+ source: args.source ?? currentRow.source,
2442
2450
  createdAt: currentRow.createdAt,
2443
2451
  updatedAt: now
2444
2452
  };
@@ -2604,6 +2612,7 @@ var DatasetsInMemory = class extends DatasetsStorage {
2604
2612
  groundTruth: itemInput.groundTruth,
2605
2613
  requestContext: itemInput.requestContext,
2606
2614
  metadata: itemInput.metadata,
2615
+ source: itemInput.source,
2607
2616
  createdAt: now,
2608
2617
  updatedAt: now
2609
2618
  };
@@ -2762,11 +2771,29 @@ var ExperimentsInMemory = class extends ExperimentsStorage {
2762
2771
  completedAt: input.completedAt,
2763
2772
  retryCount: input.retryCount,
2764
2773
  traceId: input.traceId ?? null,
2774
+ status: input.status ?? null,
2775
+ tags: input.tags ?? null,
2765
2776
  createdAt: now
2766
2777
  };
2767
2778
  this.db.experimentResults.set(result.id, result);
2768
2779
  return result;
2769
2780
  }
2781
+ async updateExperimentResult(input) {
2782
+ const existing = this.db.experimentResults.get(input.id);
2783
+ if (!existing) {
2784
+ throw new Error(`Experiment result not found: ${input.id}`);
2785
+ }
2786
+ if (input.experimentId && existing.experimentId !== input.experimentId) {
2787
+ throw new Error(`Experiment result ${input.id} does not belong to experiment ${input.experimentId}`);
2788
+ }
2789
+ const updated = {
2790
+ ...existing,
2791
+ status: input.status !== void 0 ? input.status : existing.status,
2792
+ tags: input.tags !== void 0 ? input.tags : existing.tags
2793
+ };
2794
+ this.db.experimentResults.set(input.id, updated);
2795
+ return updated;
2796
+ }
2770
2797
  async getExperimentResultById(args) {
2771
2798
  return this.db.experimentResults.get(args.id) ?? null;
2772
2799
  }
@@ -2984,7 +3011,7 @@ var InMemoryMCPClientsStorage = class extends MCPClientsStorage {
2984
3011
  if (metadata && Object.keys(metadata).length > 0) {
2985
3012
  configs = configs.filter((config) => {
2986
3013
  if (!config.metadata) return false;
2987
- return Object.entries(metadata).every(([key, value]) => chunkYVFFNB2F_cjs.deepEqual(config.metadata[key], value));
3014
+ return Object.entries(metadata).every(([key, value]) => chunk542IIQM4_cjs.deepEqual(config.metadata[key], value));
2988
3015
  });
2989
3016
  }
2990
3017
  const sortedConfigs = this.sortConfigs(configs, field, direction);
@@ -3252,7 +3279,7 @@ var InMemoryMCPServersStorage = class extends MCPServersStorage {
3252
3279
  if (metadata && Object.keys(metadata).length > 0) {
3253
3280
  configs = configs.filter((config) => {
3254
3281
  if (!config.metadata) return false;
3255
- return Object.entries(metadata).every(([key, value]) => chunkYVFFNB2F_cjs.deepEqual(config.metadata[key], value));
3282
+ return Object.entries(metadata).every(([key, value]) => chunk542IIQM4_cjs.deepEqual(config.metadata[key], value));
3256
3283
  });
3257
3284
  }
3258
3285
  const sortedConfigs = this.sortConfigs(configs, field, direction);
@@ -4717,7 +4744,7 @@ var InMemoryPromptBlocksStorage = class extends PromptBlocksStorage {
4717
4744
  if (metadata && Object.keys(metadata).length > 0) {
4718
4745
  blocks = blocks.filter((block) => {
4719
4746
  if (!block.metadata) return false;
4720
- return Object.entries(metadata).every(([key, value]) => chunkYVFFNB2F_cjs.deepEqual(block.metadata[key], value));
4747
+ return Object.entries(metadata).every(([key, value]) => chunk542IIQM4_cjs.deepEqual(block.metadata[key], value));
4721
4748
  });
4722
4749
  }
4723
4750
  const sortedBlocks = this.sortBlocks(blocks, field, direction);
@@ -4983,7 +5010,7 @@ var InMemoryScorerDefinitionsStorage = class extends ScorerDefinitionsStorage {
4983
5010
  if (metadata && Object.keys(metadata).length > 0) {
4984
5011
  scorers = scorers.filter((scorer) => {
4985
5012
  if (!scorer.metadata) return false;
4986
- return Object.entries(metadata).every(([key, value]) => chunkYVFFNB2F_cjs.deepEqual(scorer.metadata[key], value));
5013
+ return Object.entries(metadata).every(([key, value]) => chunk542IIQM4_cjs.deepEqual(scorer.metadata[key], value));
4987
5014
  });
4988
5015
  }
4989
5016
  const sortedScorers = this.sortScorers(scorers, field, direction);
@@ -6031,7 +6058,7 @@ var InMemoryWorkspacesStorage = class extends WorkspacesStorage {
6031
6058
  if (metadata && Object.keys(metadata).length > 0) {
6032
6059
  configs = configs.filter((config) => {
6033
6060
  if (!config.metadata) return false;
6034
- return Object.entries(metadata).every(([key, value]) => chunkYVFFNB2F_cjs.deepEqual(config.metadata[key], value));
6061
+ return Object.entries(metadata).every(([key, value]) => chunk542IIQM4_cjs.deepEqual(config.metadata[key], value));
6035
6062
  });
6036
6063
  }
6037
6064
  const sortedConfigs = this.sortConfigs(configs, field, direction);
@@ -7871,7 +7898,7 @@ var StoreOperationsInMemory = class extends StoreOperations {
7871
7898
  async insert({ tableName, record }) {
7872
7899
  const table = this.data[tableName];
7873
7900
  let key = record.id;
7874
- if ([chunkZHWQKPUV_cjs.TABLE_WORKFLOW_SNAPSHOT].includes(tableName) && !record.id && record.run_id) {
7901
+ if ([chunk57NZ23ZE_cjs.TABLE_WORKFLOW_SNAPSHOT].includes(tableName) && !record.id && record.run_id) {
7875
7902
  key = record.workflow_name ? `${record.workflow_name}-${record.run_id}` : record.run_id;
7876
7903
  record.id = key;
7877
7904
  } else if (!record.id) {
@@ -7884,7 +7911,7 @@ var StoreOperationsInMemory = class extends StoreOperations {
7884
7911
  const table = this.data[tableName];
7885
7912
  for (const record of records) {
7886
7913
  let key = record.id;
7887
- if ([chunkZHWQKPUV_cjs.TABLE_WORKFLOW_SNAPSHOT].includes(tableName) && !record.id && record.run_id) {
7914
+ if ([chunk57NZ23ZE_cjs.TABLE_WORKFLOW_SNAPSHOT].includes(tableName) && !record.id && record.run_id) {
7888
7915
  key = record.run_id;
7889
7916
  record.id = key;
7890
7917
  } else if (!record.id) {
@@ -8006,5 +8033,5 @@ exports.serializeSpanAttributes = serializeSpanAttributes;
8006
8033
  exports.toEntityType = toEntityType;
8007
8034
  exports.transformRow = transformRow;
8008
8035
  exports.transformScoreRow = transformScoreRow;
8009
- //# sourceMappingURL=chunk-VSGRSX3N.cjs.map
8010
- //# sourceMappingURL=chunk-VSGRSX3N.cjs.map
8036
+ //# sourceMappingURL=chunk-XAFCD3W2.cjs.map
8037
+ //# sourceMappingURL=chunk-XAFCD3W2.cjs.map