@mastra/core 0.24.3 → 0.24.4

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 (71) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/dist/agent/index.cjs +13 -13
  3. package/dist/agent/index.js +2 -2
  4. package/dist/agent/input-processor/index.cjs +6 -6
  5. package/dist/agent/input-processor/index.js +1 -1
  6. package/dist/agent/message-list/index.d.ts +2 -0
  7. package/dist/agent/message-list/index.d.ts.map +1 -1
  8. package/dist/{chunk-QLMC3LCY.cjs → chunk-4DI4ZWYE.cjs} +4 -4
  9. package/dist/{chunk-QLMC3LCY.cjs.map → chunk-4DI4ZWYE.cjs.map} +1 -1
  10. package/dist/{chunk-DBVX3GFJ.js → chunk-4GIAJPIS.js} +75 -14
  11. package/dist/chunk-4GIAJPIS.js.map +1 -0
  12. package/dist/{chunk-7EIL5M37.cjs → chunk-4H3E2PRY.cjs} +9 -9
  13. package/dist/{chunk-7EIL5M37.cjs.map → chunk-4H3E2PRY.cjs.map} +1 -1
  14. package/dist/{chunk-OE6QDWAX.cjs → chunk-6FDOL2WM.cjs} +4 -4
  15. package/dist/{chunk-OE6QDWAX.cjs.map → chunk-6FDOL2WM.cjs.map} +1 -1
  16. package/dist/{chunk-NKENPWUR.cjs → chunk-ATGWEV75.cjs} +22 -21
  17. package/dist/chunk-ATGWEV75.cjs.map +1 -0
  18. package/dist/{chunk-2SILT3DE.js → chunk-CIL4QW62.js} +6 -5
  19. package/dist/chunk-CIL4QW62.js.map +1 -0
  20. package/dist/{chunk-RHZQQQZ4.cjs → chunk-JMO24AJV.cjs} +75 -14
  21. package/dist/chunk-JMO24AJV.cjs.map +1 -0
  22. package/dist/{chunk-QJSHWTRV.js → chunk-JOLHUIXW.js} +3 -3
  23. package/dist/{chunk-QJSHWTRV.js.map → chunk-JOLHUIXW.js.map} +1 -1
  24. package/dist/{chunk-GR2BKWE6.js → chunk-PRLUP5OT.js} +3 -3
  25. package/dist/{chunk-GR2BKWE6.js.map → chunk-PRLUP5OT.js.map} +1 -1
  26. package/dist/{chunk-XMV6JYFI.cjs → chunk-SHOIGYEF.cjs} +12 -12
  27. package/dist/{chunk-XMV6JYFI.cjs.map → chunk-SHOIGYEF.cjs.map} +1 -1
  28. package/dist/{chunk-JNGVTFY3.cjs → chunk-UZQNDZHR.cjs} +4 -4
  29. package/dist/{chunk-JNGVTFY3.cjs.map → chunk-UZQNDZHR.cjs.map} +1 -1
  30. package/dist/{chunk-CYCSKGXO.js → chunk-X6XI63IN.js} +3 -3
  31. package/dist/{chunk-CYCSKGXO.js.map → chunk-X6XI63IN.js.map} +1 -1
  32. package/dist/{chunk-CDR257RR.js → chunk-Y72KA2DE.js} +3 -3
  33. package/dist/{chunk-CDR257RR.js.map → chunk-Y72KA2DE.js.map} +1 -1
  34. package/dist/{chunk-5JRSGYGM.js → chunk-YWG7MZHO.js} +3 -3
  35. package/dist/{chunk-5JRSGYGM.js.map → chunk-YWG7MZHO.js.map} +1 -1
  36. package/dist/index.cjs +25 -25
  37. package/dist/index.js +6 -6
  38. package/dist/loop/index.cjs +2 -2
  39. package/dist/loop/index.js +1 -1
  40. package/dist/loop/test-utils/generateText.d.ts.map +1 -1
  41. package/dist/loop/test-utils/resultObject.d.ts.map +1 -1
  42. package/dist/loop/test-utils/streamObject.d.ts.map +1 -1
  43. package/dist/loop/workflows/agentic-execution/llm-execution-step.d.ts.map +1 -1
  44. package/dist/loop/workflows/agentic-execution/llm-mapping-step.d.ts.map +1 -1
  45. package/dist/mastra/index.cjs +2 -2
  46. package/dist/mastra/index.js +1 -1
  47. package/dist/memory/index.cjs +4 -4
  48. package/dist/memory/index.js +1 -1
  49. package/dist/processors/index.cjs +11 -11
  50. package/dist/processors/index.js +1 -1
  51. package/dist/relevance/index.cjs +4 -4
  52. package/dist/relevance/index.js +1 -1
  53. package/dist/scores/index.cjs +4 -4
  54. package/dist/scores/index.js +1 -1
  55. package/dist/scores/scoreTraces/index.cjs +6 -6
  56. package/dist/scores/scoreTraces/index.js +2 -2
  57. package/dist/storage/index.cjs +3 -3
  58. package/dist/storage/index.js +1 -1
  59. package/dist/stream/index.cjs +11 -11
  60. package/dist/stream/index.js +2 -2
  61. package/dist/workflows/evented/index.cjs +10 -10
  62. package/dist/workflows/evented/index.js +1 -1
  63. package/dist/workflows/index.cjs +14 -14
  64. package/dist/workflows/index.js +1 -1
  65. package/dist/workflows/legacy/index.cjs +22 -22
  66. package/dist/workflows/legacy/index.js +1 -1
  67. package/package.json +5 -5
  68. package/dist/chunk-2SILT3DE.js.map +0 -1
  69. package/dist/chunk-DBVX3GFJ.js.map +0 -1
  70. package/dist/chunk-NKENPWUR.cjs.map +0 -1
  71. package/dist/chunk-RHZQQQZ4.cjs.map +0 -1
@@ -1796,6 +1796,12 @@ var MessageList = class _MessageList {
1796
1796
  }
1797
1797
  hydrateMastraMessageV2Fields(message) {
1798
1798
  if (!(message.createdAt instanceof Date)) message.createdAt = new Date(message.createdAt);
1799
+ if (!message.threadId && this.memoryInfo?.threadId) {
1800
+ message.threadId = this.memoryInfo.threadId;
1801
+ }
1802
+ if (!message.resourceId && this.memoryInfo?.resourceId) {
1803
+ message.resourceId = this.memoryInfo.resourceId;
1804
+ }
1799
1805
  if (message.content.toolInvocations && message.content.parts) {
1800
1806
  message.content.toolInvocations = message.content.toolInvocations.map((ti) => {
1801
1807
  if (!ti.args || Object.keys(ti.args).length === 0) {
@@ -1825,6 +1831,9 @@ var MessageList = class _MessageList {
1825
1831
  if ("metadata" in message && message.metadata !== null && message.metadata !== void 0) {
1826
1832
  content.metadata = message.metadata;
1827
1833
  }
1834
+ if ("providerMetadata" in message && message.providerMetadata !== null && message.providerMetadata !== void 0) {
1835
+ content.providerMetadata = message.providerMetadata;
1836
+ }
1828
1837
  return {
1829
1838
  id: message.id || this.newMessageId(),
1830
1839
  role: _MessageList.getRole(message),
@@ -1868,8 +1877,8 @@ var MessageList = class _MessageList {
1868
1877
  ...Object.keys(mergedProviderMetadata).length > 0 ? { providerMetadata: mergedProviderMetadata } : {}
1869
1878
  });
1870
1879
  break;
1871
- case "tool-call":
1872
- parts.push({
1880
+ case "tool-call": {
1881
+ const toolCallPart = {
1873
1882
  type: "tool-invocation",
1874
1883
  toolInvocation: {
1875
1884
  state: "call",
@@ -1877,8 +1886,13 @@ var MessageList = class _MessageList {
1877
1886
  toolName: part.toolName,
1878
1887
  args: part.args
1879
1888
  }
1880
- });
1889
+ };
1890
+ if ("providerOptions" in part && part.providerOptions) {
1891
+ toolCallPart.providerMetadata = part.providerOptions;
1892
+ }
1893
+ parts.push(toolCallPart);
1881
1894
  break;
1895
+ }
1882
1896
  case "tool-result":
1883
1897
  let toolArgs = {};
1884
1898
  const toolCallInSameMsg = coreMessage.content.find(
@@ -1910,20 +1924,29 @@ var MessageList = class _MessageList {
1910
1924
  args: toolArgs
1911
1925
  // Use the args from the corresponding tool-call
1912
1926
  };
1913
- parts.push({
1927
+ const toolResultPart = {
1914
1928
  type: "tool-invocation",
1915
1929
  toolInvocation: invocation
1916
- });
1930
+ };
1931
+ if ("providerOptions" in part && part.providerOptions) {
1932
+ toolResultPart.providerMetadata = part.providerOptions;
1933
+ }
1934
+ parts.push(toolResultPart);
1917
1935
  toolInvocations.push(invocation);
1918
1936
  break;
1919
- case "reasoning":
1920
- parts.push({
1937
+ case "reasoning": {
1938
+ const reasoningPart = {
1921
1939
  type: "reasoning",
1922
1940
  reasoning: "",
1923
1941
  // leave this blank so we aren't double storing it in the db along with details
1924
1942
  details: [{ type: "text", text: part.text, signature: part.signature }]
1925
- });
1943
+ };
1944
+ if ("providerOptions" in part && part.providerOptions) {
1945
+ reasoningPart.providerMetadata = part.providerOptions;
1946
+ }
1947
+ parts.push(reasoningPart);
1926
1948
  break;
1949
+ }
1927
1950
  case "redacted-reasoning":
1928
1951
  parts.push({
1929
1952
  type: "reasoning",
@@ -2530,6 +2553,9 @@ var MessageList = class _MessageList {
2530
2553
  if (v2Msg.content.metadata) {
2531
2554
  v3Msg.content.metadata = { ...v2Msg.content.metadata };
2532
2555
  }
2556
+ if (v2Msg.content.providerMetadata) {
2557
+ v3Msg.content.providerMetadata = v2Msg.content.providerMetadata;
2558
+ }
2533
2559
  if (v2Msg.content.content !== void 0) {
2534
2560
  v3Msg.content.metadata = {
2535
2561
  ...v3Msg.content.metadata || {},
@@ -2560,12 +2586,16 @@ var MessageList = class _MessageList {
2560
2586
  callProviderMetadata: part.providerMetadata
2561
2587
  });
2562
2588
  } else {
2563
- parts.push({
2589
+ const toolPart = {
2564
2590
  type: `tool-${part.toolInvocation.toolName}`,
2565
2591
  toolCallId: part.toolInvocation.toolCallId,
2566
2592
  state: part.toolInvocation.state === `call` ? `input-available` : `input-streaming`,
2567
2593
  input: part.toolInvocation.args
2568
- });
2594
+ };
2595
+ if (part.providerMetadata) {
2596
+ toolPart.callProviderMetadata = part.providerMetadata;
2597
+ }
2598
+ parts.push(toolPart);
2569
2599
  }
2570
2600
  break;
2571
2601
  case "source":
@@ -2661,9 +2691,39 @@ var MessageList = class _MessageList {
2661
2691
  return v3Msg;
2662
2692
  }
2663
2693
  aiV5UIMessagesToAIV5ModelMessages(messages) {
2664
- const preprocessed = this.addStartStepPartsForAIV5(this.sanitizeV5UIMessages(messages));
2694
+ const sanitized = this.sanitizeV5UIMessages(messages);
2695
+ const preprocessed = this.addStartStepPartsForAIV5(sanitized);
2665
2696
  const result = AIV5.convertToModelMessages(preprocessed);
2666
- return result;
2697
+ const finalResult = result.map((modelMsg, index) => {
2698
+ const uiMsg = preprocessed[index];
2699
+ let updatedMsg = modelMsg;
2700
+ if (uiMsg?.metadata && typeof uiMsg.metadata === "object" && "providerMetadata" in uiMsg.metadata && uiMsg.metadata.providerMetadata) {
2701
+ updatedMsg = {
2702
+ ...updatedMsg,
2703
+ providerOptions: uiMsg.metadata.providerMetadata
2704
+ };
2705
+ }
2706
+ if (updatedMsg.role === "assistant" && Array.isArray(updatedMsg.content)) {
2707
+ const updatedContent = updatedMsg.content.map((part, partIndex) => {
2708
+ if (part.type === "tool-call") {
2709
+ const uiPart = uiMsg?.parts[partIndex];
2710
+ if (uiPart && "callProviderMetadata" in uiPart && uiPart.callProviderMetadata) {
2711
+ return {
2712
+ ...part,
2713
+ providerMetadata: uiPart.callProviderMetadata
2714
+ };
2715
+ }
2716
+ }
2717
+ return part;
2718
+ });
2719
+ return {
2720
+ ...updatedMsg,
2721
+ content: updatedContent
2722
+ };
2723
+ }
2724
+ return updatedMsg;
2725
+ });
2726
+ return finalResult;
2667
2727
  }
2668
2728
  addStartStepPartsForAIV5(messages) {
2669
2729
  for (const message of messages) {
@@ -2708,6 +2768,7 @@ var MessageList = class _MessageList {
2708
2768
  if (m.createdAt) metadata.createdAt = m.createdAt;
2709
2769
  if (m.threadId) metadata.threadId = m.threadId;
2710
2770
  if (m.resourceId) metadata.resourceId = m.resourceId;
2771
+ if (m.content.providerMetadata) metadata.providerMetadata = m.content.providerMetadata;
2711
2772
  const filteredParts = m.content.parts;
2712
2773
  return {
2713
2774
  id: m.id,
@@ -3057,5 +3118,5 @@ function convertMessages(messages) {
3057
3118
  }
3058
3119
 
3059
3120
  export { DefaultGeneratedFile, DefaultGeneratedFileWithType, MessageList, convertMessages };
3060
- //# sourceMappingURL=chunk-DBVX3GFJ.js.map
3061
- //# sourceMappingURL=chunk-DBVX3GFJ.js.map
3121
+ //# sourceMappingURL=chunk-4GIAJPIS.js.map
3122
+ //# sourceMappingURL=chunk-4GIAJPIS.js.map