@mastra/server 1.77.0-alpha.0 → 1.77.0-alpha.2

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 (46) hide show
  1. package/dist/{datasets-C2aXB8At.cjs → datasets-BdD8JWhx.cjs} +64 -7
  2. package/dist/datasets-BdD8JWhx.cjs.map +1 -0
  3. package/dist/{datasets-CDQDQxos.js → datasets-CKwh-k4I.js} +53 -8
  4. package/dist/datasets-CKwh-k4I.js.map +1 -0
  5. package/dist/{dist-BmwOhJTG.js → dist-C6Y74AMV.js} +31 -12
  6. package/dist/dist-C6Y74AMV.js.map +1 -0
  7. package/dist/{dist-BOW7V2e6.cjs → dist-D0yst49-.cjs} +31 -12
  8. package/dist/dist-D0yst49-.cjs.map +1 -0
  9. package/dist/docs/SKILL.md +1 -1
  10. package/dist/docs/assets/SOURCE_MAP.json +1 -1
  11. package/dist/docs/references/docs-server-custom-adapters.md +1 -1
  12. package/dist/docs/references/reference-server-create-route.md +1 -1
  13. package/dist/docs/references/reference-server-routes.md +1 -1
  14. package/dist/server/handlers/agent-builder.cjs +1 -1
  15. package/dist/server/handlers/agent-builder.js +1 -1
  16. package/dist/server/handlers/agent-controller.cjs +5 -5
  17. package/dist/server/handlers/agent-controller.cjs.map +1 -1
  18. package/dist/server/handlers/agent-controller.d.ts +2 -0
  19. package/dist/server/handlers/agent-controller.d.ts.map +1 -1
  20. package/dist/server/handlers/agent-controller.js +5 -5
  21. package/dist/server/handlers/agent-controller.js.map +1 -1
  22. package/dist/server/handlers/datasets.cjs +27 -15
  23. package/dist/server/handlers/datasets.cjs.map +1 -1
  24. package/dist/server/handlers/datasets.d.ts +1032 -38
  25. package/dist/server/handlers/datasets.d.ts.map +1 -1
  26. package/dist/server/handlers/datasets.js +27 -15
  27. package/dist/server/handlers/datasets.js.map +1 -1
  28. package/dist/server/handlers/workflows.cjs +8 -0
  29. package/dist/server/handlers/workflows.cjs.map +1 -1
  30. package/dist/server/handlers/workflows.d.ts +8 -0
  31. package/dist/server/handlers/workflows.d.ts.map +1 -1
  32. package/dist/server/handlers/workflows.js +8 -0
  33. package/dist/server/handlers/workflows.js.map +1 -1
  34. package/dist/server/schemas/datasets.d.ts +430 -11
  35. package/dist/server/schemas/datasets.d.ts.map +1 -1
  36. package/dist/server/schemas/index.cjs +3 -1
  37. package/dist/server/schemas/index.js +2 -2
  38. package/dist/server/server-adapter/routes/datasets.d.ts +1032 -38
  39. package/dist/server/server-adapter/routes/datasets.d.ts.map +1 -1
  40. package/dist/server/server-adapter/routes/workflows.d.ts +2 -0
  41. package/dist/server/server-adapter/routes/workflows.d.ts.map +1 -1
  42. package/package.json +4 -4
  43. package/dist/datasets-C2aXB8At.cjs.map +0 -1
  44. package/dist/datasets-CDQDQxos.js.map +0 -1
  45. package/dist/dist-BOW7V2e6.cjs.map +0 -1
  46. package/dist/dist-BmwOhJTG.js.map +0 -1
@@ -4637,7 +4637,7 @@ function splitLines(text) {
4637
4637
  return result;
4638
4638
  }
4639
4639
  //#endregion
4640
- //#region ../memory/dist/src-ThciS3vu.js
4640
+ //#region ../memory/dist/src-CYkACM_1.js
4641
4641
  var __defProp$3 = Object.defineProperty;
4642
4642
  var __exportAll = (all, no_symbols) => {
4643
4643
  let target = {};
@@ -23752,8 +23752,12 @@ function formatOmError(error) {
23752
23752
  function isAbortError$5(error, abortSignal) {
23753
23753
  return abortSignal?.aborted === true || hasAbortInChain(error);
23754
23754
  }
23755
+ function hasEmptyObjectValue(object, extractor) {
23756
+ const value = object[extractor.slug];
23757
+ return typeof value === "object" && value !== null && !Array.isArray(value) && Object.keys(value).length === 0;
23758
+ }
23755
23759
  function shouldRetryEmptyStructuredObject(object, extractors) {
23756
- return Object.keys(object).length === 0 && extractors.some((extractor) => extractor.retryStructuredExtractionOnEmptyObject);
23760
+ return extractors.some((extractor) => extractor.retryStructuredExtractionOnEmptyObject && (Object.keys(object).length === 0 || hasEmptyObjectValue(object, extractor)));
23757
23761
  }
23758
23762
  async function extractStructuredValues(opts) {
23759
23763
  const structuredExtractors = (opts.extractors ?? []).filter((extractor) => extractor.mode === "structured");
@@ -23827,17 +23831,28 @@ ${extractorInstructions}${priorLines.length > 0 ? `\n\n## Prior Extracted Values
23827
23831
  }
23828
23832
  }
23829
23833
  if (retryEmptyObject) try {
23830
- object = await streamWithStructuredOutput(coreFeatures.has("json-prompt-injection:inline") ? "inline" : true);
23834
+ const fallbackJsonPromptInjection = coreFeatures.has("json-prompt-injection:inline") ? "inline" : true;
23835
+ object = {
23836
+ ...object,
23837
+ ...await streamWithStructuredOutput(fallbackJsonPromptInjection)
23838
+ };
23831
23839
  } catch (fallbackError) {
23832
23840
  if (isAbortError$5(fallbackError, opts.abortSignal)) throw fallbackError;
23833
23841
  const message = fallbackError instanceof Error ? fallbackError.message : String(fallbackError);
23834
- return {
23842
+ if (Object.keys(object).length === 0) return {
23835
23843
  values,
23836
23844
  failures: structuredExtractors.map((extractor) => ({
23837
23845
  slug: extractor.slug,
23838
23846
  error: message
23839
23847
  }))
23840
23848
  };
23849
+ for (const extractor of structuredExtractors) if (extractor.retryStructuredExtractionOnEmptyObject && hasEmptyObjectValue(object, extractor)) {
23850
+ failures.push({
23851
+ slug: extractor.slug,
23852
+ error: message
23853
+ });
23854
+ delete object[extractor.slug];
23855
+ }
23841
23856
  }
23842
23857
  for (const extractor of structuredExtractors) {
23843
23858
  const value = object[extractor.slug];
@@ -28629,6 +28644,9 @@ async function validateAgainstConfiguredSchema(schema, value) {
28629
28644
  }).join("; ");
28630
28645
  throw new Error(`Working memory update does not match the configured schema, so it was not saved: ${details}`);
28631
28646
  }
28647
+ function isEmptyPlainObject(value) {
28648
+ return typeof value === "object" && value !== null && !Array.isArray(value) && Object.keys(value).length === 0;
28649
+ }
28632
28650
  async function getWorkingMemoryDetails(context) {
28633
28651
  const memory = context.memory;
28634
28652
  const memoryConfig = parseMemoryRequestContext(context.requestContext)?.memoryConfig;
@@ -28676,8 +28694,9 @@ var WorkingMemoryExtractor = class extends Extractor {
28676
28694
  const configuredSchema = memory.getMergedThreadConfig(memoryConfig ?? {}).workingMemory?.schema;
28677
28695
  let document = current;
28678
28696
  if (configuredSchema) {
28679
- if (current === null) return;
28697
+ if (current === null || isEmptyPlainObject(current)) return;
28680
28698
  document = await validateAgainstConfiguredSchema(configuredSchema, current);
28699
+ if (document === null || isEmptyPlainObject(document)) return;
28681
28700
  }
28682
28701
  const workingMemory = typeof document === "string" ? document : JSON.stringify(document) ?? "";
28683
28702
  if (!workingMemory.trim()) return;
@@ -28862,10 +28881,10 @@ function filterObservedMessages(opts) {
28862
28881
  const msg = allMessages[i];
28863
28882
  if (msg?.id && msg.id !== "om-continuation" && !preserveMessageIds.has(msg.id) && !hasPendingToolResultPair(msg, pendingToolResultIds)) messagesToRemove.push(msg.id);
28864
28883
  }
28865
- if (messagesToRemove.length > 0) messageList.removeByIds(messagesToRemove);
28884
+ if (messagesToRemove.length > 0) messageList.removeByIds(messagesToRemove, { pruned: true });
28866
28885
  const unobserved = getUnobservedPartsPreservingToolCallPairs(markerMessage);
28867
28886
  if (unobserved.length === 0) {
28868
- if (markerMessage.id) messageList.removeByIds([markerMessage.id]);
28887
+ if (markerMessage.id) messageList.removeByIds([markerMessage.id], { pruned: true });
28869
28888
  } else if (unobserved.length < (markerMessage.content?.parts?.length ?? 0)) markerMessage.content.parts = unobserved;
28870
28889
  } else if (record) {
28871
28890
  const pendingToolResultIds = collectPendingToolResultIds(allMessages, observedIds);
@@ -28892,7 +28911,7 @@ function filterObservedMessages(opts) {
28892
28911
  }
28893
28912
  }
28894
28913
  }
28895
- if (messagesToRemove.length > 0) messageList.removeByIds(messagesToRemove);
28914
+ if (messagesToRemove.length > 0) messageList.removeByIds(messagesToRemove, { pruned: true });
28896
28915
  }
28897
28916
  }
28898
28917
  function getBufferedChunks(record) {
@@ -33268,7 +33287,7 @@ var ObservationStep = class {
33268
33287
  this.turn.setRecord(activation.record);
33269
33288
  if (activation.activated) {
33270
33289
  activated = true;
33271
- if (activation.activatedMessageIds?.length) messageList.removeByIds(activation.activatedMessageIds);
33290
+ if (activation.activatedMessageIds?.length) messageList.removeByIds(activation.activatedMessageIds, { pruned: true });
33272
33291
  await om.resetBufferingState({
33273
33292
  threadId,
33274
33293
  resourceId,
@@ -36853,7 +36872,7 @@ ${formattedMessages}
36853
36872
  preserveMessageIds
36854
36873
  });
36855
36874
  if (messageList) {
36856
- if (idsToRemoveList.length > 0) messageList.removeByIds(idsToRemoveList);
36875
+ if (idsToRemoveList.length > 0) messageList.removeByIds(idsToRemoveList, { pruned: true });
36857
36876
  return messageList.get.all.db();
36858
36877
  }
36859
36878
  this.removeIdsFromArray(allMsgs, idsToRemoveList);
@@ -36878,7 +36897,7 @@ ${formattedMessages}
36878
36897
  } else if (unobservedParts.length < (markerMsg.content?.parts?.length ?? 0)) markerMsg.content.parts = unobservedParts;
36879
36898
  }
36880
36899
  if (messageList) {
36881
- if (idsToRemove.length > 0) messageList.removeByIds(idsToRemove);
36900
+ if (idsToRemove.length > 0) messageList.removeByIds(idsToRemove, { pruned: true });
36882
36901
  if (messagesToSave.length > 0) await this.persistMessages(messagesToSave, threadId, resourceId);
36883
36902
  omDebug(`[OM:cleanupMarker] removed ${idsToRemove.length} messages, saved ${messagesToSave.length}`);
36884
36903
  return messageList.get.all.db();
@@ -51736,4 +51755,4 @@ const agentBuilderWorkflows = {
51736
51755
  //#endregion
51737
51756
  export { agentBuilderWorkflows };
51738
51757
 
51739
- //# sourceMappingURL=dist-BmwOhJTG.js.map
51758
+ //# sourceMappingURL=dist-C6Y74AMV.js.map