@mastra/server 1.23.0-alpha.7 → 1.23.0-alpha.9

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 (112) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/dist/_types/@internal_core/dist/index.d.ts +3 -1
  3. package/dist/{chunk-VMA5TY4H.cjs → chunk-2KF7EWOT.cjs} +314 -190
  4. package/dist/chunk-2KF7EWOT.cjs.map +1 -0
  5. package/dist/{chunk-VDHLJ6OD.cjs → chunk-3D2IBKF6.cjs} +4 -4
  6. package/dist/{chunk-VDHLJ6OD.cjs.map → chunk-3D2IBKF6.cjs.map} +1 -1
  7. package/dist/{chunk-B2OFZDJQ.cjs → chunk-4HHL4C6V.cjs} +13 -13
  8. package/dist/{chunk-B2OFZDJQ.cjs.map → chunk-4HHL4C6V.cjs.map} +1 -1
  9. package/dist/{chunk-QBXHK27Z.js → chunk-52JPWUPI.js} +3 -3
  10. package/dist/{chunk-QBXHK27Z.js.map → chunk-52JPWUPI.js.map} +1 -1
  11. package/dist/{chunk-VXBTV6LH.js → chunk-6MMZVEFC.js} +8 -3
  12. package/dist/chunk-6MMZVEFC.js.map +1 -0
  13. package/dist/{chunk-4EA2CJG4.js → chunk-A7BSSXDD.js} +3 -3
  14. package/dist/{chunk-4EA2CJG4.js.map → chunk-A7BSSXDD.js.map} +1 -1
  15. package/dist/{chunk-LRJ4LQBR.cjs → chunk-F4TKO2VD.cjs} +6 -6
  16. package/dist/{chunk-LRJ4LQBR.cjs.map → chunk-F4TKO2VD.cjs.map} +1 -1
  17. package/dist/{chunk-ZVSNY6VT.js → chunk-GMZFJZO4.js} +4 -3
  18. package/dist/chunk-GMZFJZO4.js.map +1 -0
  19. package/dist/{chunk-INKHQLVW.js → chunk-HKALCAKJ.js} +3 -3
  20. package/dist/{chunk-INKHQLVW.js.map → chunk-HKALCAKJ.js.map} +1 -1
  21. package/dist/{chunk-VOCNBP5Q.cjs → chunk-HUWHY7SC.cjs} +4 -3
  22. package/dist/chunk-HUWHY7SC.cjs.map +1 -0
  23. package/dist/{chunk-U6CWJTHH.cjs → chunk-I5FEAHJM.cjs} +29 -29
  24. package/dist/{chunk-U6CWJTHH.cjs.map → chunk-I5FEAHJM.cjs.map} +1 -1
  25. package/dist/{chunk-UVK6YXEL.cjs → chunk-IOGPYY6Z.cjs} +77 -75
  26. package/dist/chunk-IOGPYY6Z.cjs.map +1 -0
  27. package/dist/{chunk-5C535ZJO.cjs → chunk-KG5RK6PO.cjs} +4 -4
  28. package/dist/{chunk-5C535ZJO.cjs.map → chunk-KG5RK6PO.cjs.map} +1 -1
  29. package/dist/{chunk-AS6EW5BK.js → chunk-KYVNA2EN.js} +3 -3
  30. package/dist/{chunk-AS6EW5BK.js.map → chunk-KYVNA2EN.js.map} +1 -1
  31. package/dist/{chunk-FLGIOJA5.js → chunk-MO3ZKWYY.js} +80 -10
  32. package/dist/chunk-MO3ZKWYY.js.map +1 -0
  33. package/dist/{chunk-6Q6OH2XV.js → chunk-OOZYQF4U.js} +3 -2
  34. package/dist/chunk-OOZYQF4U.js.map +1 -0
  35. package/dist/{chunk-IFEMVRLI.cjs → chunk-OV2TAONK.cjs} +3 -2
  36. package/dist/chunk-OV2TAONK.cjs.map +1 -0
  37. package/dist/{chunk-DALTY2FC.js → chunk-P72YX3EY.js} +3 -3
  38. package/dist/{chunk-DALTY2FC.js.map → chunk-P72YX3EY.js.map} +1 -1
  39. package/dist/{chunk-SE5M6GC6.js → chunk-T4RZ3X4I.js} +4 -4
  40. package/dist/{chunk-SE5M6GC6.js.map → chunk-T4RZ3X4I.js.map} +1 -1
  41. package/dist/{chunk-XUIA3SIB.js → chunk-TBJHTT7B.js} +6 -4
  42. package/dist/chunk-TBJHTT7B.js.map +1 -0
  43. package/dist/{chunk-SZ2FSVP5.js → chunk-TX3IIDZN.js} +301 -177
  44. package/dist/chunk-TX3IIDZN.js.map +1 -0
  45. package/dist/{chunk-PNCR2M6Y.cjs → chunk-UHWF2UKO.cjs} +80 -10
  46. package/dist/chunk-UHWF2UKO.cjs.map +1 -0
  47. package/dist/{chunk-HHGZGERI.cjs → chunk-UI3SS2JO.cjs} +4 -4
  48. package/dist/{chunk-HHGZGERI.cjs.map → chunk-UI3SS2JO.cjs.map} +1 -1
  49. package/dist/{chunk-RNC7VEI6.cjs → chunk-WKBMLKBC.cjs} +8 -3
  50. package/dist/chunk-WKBMLKBC.cjs.map +1 -0
  51. package/dist/{chunk-SHWDJY3O.js → chunk-WZ6XPWVK.js} +3 -3
  52. package/dist/{chunk-SHWDJY3O.js.map → chunk-WZ6XPWVK.js.map} +1 -1
  53. package/dist/{chunk-SCEPRIRF.cjs → chunk-X2IFWP5E.cjs} +5 -5
  54. package/dist/{chunk-SCEPRIRF.cjs.map → chunk-X2IFWP5E.cjs.map} +1 -1
  55. package/dist/{chunk-DGS7O6Q7.js → chunk-XO5PXSFC.js} +3 -3
  56. package/dist/{chunk-DGS7O6Q7.js.map → chunk-XO5PXSFC.js.map} +1 -1
  57. package/dist/{chunk-LV4FV46S.cjs → chunk-ZWKZK4WO.cjs} +6 -6
  58. package/dist/{chunk-LV4FV46S.cjs.map → chunk-ZWKZK4WO.cjs.map} +1 -1
  59. package/dist/docs/SKILL.md +1 -1
  60. package/dist/docs/assets/SOURCE_MAP.json +1 -1
  61. package/dist/{observational-memory-JQ34KLFS-CNLSTXO3.cjs → observational-memory-OVRHDQRG-OCHV6RZ7.cjs} +26 -26
  62. package/dist/{observational-memory-JQ34KLFS-CNLSTXO3.cjs.map → observational-memory-OVRHDQRG-OCHV6RZ7.cjs.map} +1 -1
  63. package/dist/{observational-memory-JQ34KLFS-KLWGOGP4.js → observational-memory-OVRHDQRG-RC3PRA65.js} +3 -3
  64. package/dist/{observational-memory-JQ34KLFS-KLWGOGP4.js.map → observational-memory-OVRHDQRG-RC3PRA65.js.map} +1 -1
  65. package/dist/server/handlers/a2a.cjs +9 -9
  66. package/dist/server/handlers/a2a.js +1 -1
  67. package/dist/server/handlers/agent-builder.cjs +16 -16
  68. package/dist/server/handlers/agent-builder.js +1 -1
  69. package/dist/server/handlers/agents.cjs +35 -35
  70. package/dist/server/handlers/agents.d.ts.map +1 -1
  71. package/dist/server/handlers/agents.js +1 -1
  72. package/dist/server/handlers/conversations.cjs +5 -5
  73. package/dist/server/handlers/conversations.js +1 -1
  74. package/dist/server/handlers/memory.cjs +27 -27
  75. package/dist/server/handlers/memory.d.ts +4 -0
  76. package/dist/server/handlers/memory.d.ts.map +1 -1
  77. package/dist/server/handlers/memory.js +1 -1
  78. package/dist/server/handlers/observability-new-endpoints.cjs +27 -27
  79. package/dist/server/handlers/observability-new-endpoints.js +1 -1
  80. package/dist/server/handlers/observability.cjs +33 -33
  81. package/dist/server/handlers/observability.js +2 -2
  82. package/dist/server/handlers/responses.cjs +4 -4
  83. package/dist/server/handlers/responses.js +1 -1
  84. package/dist/server/handlers/scores.cjs +7 -7
  85. package/dist/server/handlers/scores.js +1 -1
  86. package/dist/server/handlers/tools.cjs +6 -6
  87. package/dist/server/handlers/tools.js +1 -1
  88. package/dist/server/handlers/voice.cjs +8 -8
  89. package/dist/server/handlers/voice.js +1 -1
  90. package/dist/server/handlers.cjs +20 -20
  91. package/dist/server/handlers.js +10 -10
  92. package/dist/server/schemas/index.cjs +50 -50
  93. package/dist/server/schemas/index.js +2 -2
  94. package/dist/server/schemas/memory.d.ts +2 -0
  95. package/dist/server/schemas/memory.d.ts.map +1 -1
  96. package/dist/server/server-adapter/index.cjs +129 -129
  97. package/dist/server/server-adapter/index.js +11 -11
  98. package/dist/server/server-adapter/routes/memory.d.ts +4 -0
  99. package/dist/server/server-adapter/routes/memory.d.ts.map +1 -1
  100. package/package.json +5 -5
  101. package/dist/chunk-6Q6OH2XV.js.map +0 -1
  102. package/dist/chunk-FLGIOJA5.js.map +0 -1
  103. package/dist/chunk-IFEMVRLI.cjs.map +0 -1
  104. package/dist/chunk-PNCR2M6Y.cjs.map +0 -1
  105. package/dist/chunk-RNC7VEI6.cjs.map +0 -1
  106. package/dist/chunk-SZ2FSVP5.js.map +0 -1
  107. package/dist/chunk-UVK6YXEL.cjs.map +0 -1
  108. package/dist/chunk-VMA5TY4H.cjs.map +0 -1
  109. package/dist/chunk-VOCNBP5Q.cjs.map +0 -1
  110. package/dist/chunk-VXBTV6LH.js.map +0 -1
  111. package/dist/chunk-XUIA3SIB.js.map +0 -1
  112. package/dist/chunk-ZVSNY6VT.js.map +0 -1
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var chunkGNVZDFY5_cjs = require('./chunk-GNVZDFY5.cjs');
4
- var chunkRNC7VEI6_cjs = require('./chunk-RNC7VEI6.cjs');
4
+ var chunkWKBMLKBC_cjs = require('./chunk-WKBMLKBC.cjs');
5
5
  var z = require('zod');
6
6
 
7
7
  function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
@@ -21,7 +21,7 @@ var createConversationBodySchema = z__default.default.object({
21
21
  var conversationObjectSchema = z__default.default.object({
22
22
  id: z__default.default.string(),
23
23
  object: z__default.default.literal("conversation"),
24
- thread: chunkRNC7VEI6_cjs.getThreadByIdResponseSchema
24
+ thread: chunkWKBMLKBC_cjs.getThreadByIdResponseSchema
25
25
  });
26
26
  var conversationDeletedSchema = z__default.default.object({
27
27
  id: z__default.default.string(),
@@ -41,5 +41,5 @@ exports.conversationIdPathParams = conversationIdPathParams;
41
41
  exports.conversationItemsListSchema = conversationItemsListSchema;
42
42
  exports.conversationObjectSchema = conversationObjectSchema;
43
43
  exports.createConversationBodySchema = createConversationBodySchema;
44
- //# sourceMappingURL=chunk-HHGZGERI.cjs.map
45
- //# sourceMappingURL=chunk-HHGZGERI.cjs.map
44
+ //# sourceMappingURL=chunk-UI3SS2JO.cjs.map
45
+ //# sourceMappingURL=chunk-UI3SS2JO.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/server/schemas/conversations.ts"],"names":["z","getThreadByIdResponseSchema","conversationItemSchema"],"mappings":";;;;;;;;;;AAIO,IAAM,wBAAA,GAA2BA,mBAAE,MAAA,CAAO;AAAA,EAC/C,cAAA,EAAgBA,kBAAA,CAAE,MAAA,EAAO,CAAE,SAAS,+CAA+C;AACrF,CAAC;AAEM,IAAM,4BAAA,GAA+BA,mBAAE,MAAA,CAAO;AAAA,EACnD,QAAA,EAAUA,kBAAA,CAAE,MAAA,EAAO,CAAE,SAAS,wDAAwD,CAAA;AAAA,EACtF,iBAAiBA,kBAAA,CAAE,MAAA,GAAS,QAAA,EAAS,CAAE,SAAS,qDAAqD,CAAA;AAAA,EACrG,aAAaA,kBAAA,CAAE,MAAA,GAAS,QAAA,EAAS,CAAE,SAAS,yDAAyD,CAAA;AAAA,EACrG,KAAA,EAAOA,kBAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EAC3B,QAAA,EAAUA,kBAAA,CAAE,MAAA,CAAOA,kBAAA,CAAE,MAAA,IAAUA,kBAAA,CAAE,OAAA,EAAS,CAAA,CAAE,QAAA;AAC9C,CAAC;AAIM,IAAM,wBAAA,GAA2BA,mBAAE,MAAA,CAAO;AAAA,EAC/C,EAAA,EAAIA,mBAAE,MAAA,EAAO;AAAA,EACb,MAAA,EAAQA,kBAAA,CAAE,OAAA,CAAQ,cAAc,CAAA;AAAA,EAChC,MAAA,EAAQC;AACV,CAAC;AAEM,IAAM,yBAAA,GAA4BD,mBAAE,MAAA,CAAO;AAAA,EAChD,EAAA,EAAIA,mBAAE,MAAA,EAAO;AAAA,EACb,MAAA,EAAQA,kBAAA,CAAE,OAAA,CAAQ,sBAAsB,CAAA;AAAA,EACxC,OAAA,EAASA,kBAAA,CAAE,OAAA,CAAQ,IAAI;AACzB,CAAC;AAEM,IAAM,2BAAA,GAA8BA,mBAAE,MAAA,CAAO;AAAA,EAClD,MAAA,EAAQA,kBAAA,CAAE,OAAA,CAAQ,MAAM,CAAA;AAAA,EACxB,IAAA,EAAMA,kBAAA,CAAE,KAAA,CAAME,wCAAsB,CAAA;AAAA,EACpC,QAAA,EAAUF,kBAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EAC9B,OAAA,EAASA,kBAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EAC7B,QAAA,EAAUA,mBAAE,OAAA;AACd,CAAC","file":"chunk-HHGZGERI.cjs","sourcesContent":["import z from 'zod';\nimport { getThreadByIdResponseSchema } from './memory';\nimport { conversationItemSchema } from './responses';\n\nexport const conversationIdPathParams = z.object({\n conversationId: z.string().describe('Unique identifier for the conversation thread'),\n});\n\nexport const createConversationBodySchema = z.object({\n agent_id: z.string().describe('Mastra agent ID used to create the conversation thread'),\n conversation_id: z.string().optional().describe('Optional conversation ID to use as the raw threadId'),\n resource_id: z.string().optional().describe('Optional resource ID to associate with the conversation'),\n title: z.string().optional(),\n metadata: z.record(z.string(), z.unknown()).optional(),\n});\n\nexport type CreateConversationBody = z.infer<typeof createConversationBodySchema>;\n\nexport const conversationObjectSchema = z.object({\n id: z.string(),\n object: z.literal('conversation'),\n thread: getThreadByIdResponseSchema,\n});\n\nexport const conversationDeletedSchema = z.object({\n id: z.string(),\n object: z.literal('conversation.deleted'),\n deleted: z.literal(true),\n});\n\nexport const conversationItemsListSchema = z.object({\n object: z.literal('list'),\n data: z.array(conversationItemSchema),\n first_id: z.string().nullable(),\n last_id: z.string().nullable(),\n has_more: z.boolean(),\n});\n\nexport type ConversationObject = z.infer<typeof conversationObjectSchema>;\nexport type ConversationItemsList = z.infer<typeof conversationItemsListSchema>;\nexport type ConversationDeleted = z.infer<typeof conversationDeletedSchema>;\n"]}
1
+ {"version":3,"sources":["../src/server/schemas/conversations.ts"],"names":["z","getThreadByIdResponseSchema","conversationItemSchema"],"mappings":";;;;;;;;;;AAIO,IAAM,wBAAA,GAA2BA,mBAAE,MAAA,CAAO;AAAA,EAC/C,cAAA,EAAgBA,kBAAA,CAAE,MAAA,EAAO,CAAE,SAAS,+CAA+C;AACrF,CAAC;AAEM,IAAM,4BAAA,GAA+BA,mBAAE,MAAA,CAAO;AAAA,EACnD,QAAA,EAAUA,kBAAA,CAAE,MAAA,EAAO,CAAE,SAAS,wDAAwD,CAAA;AAAA,EACtF,iBAAiBA,kBAAA,CAAE,MAAA,GAAS,QAAA,EAAS,CAAE,SAAS,qDAAqD,CAAA;AAAA,EACrG,aAAaA,kBAAA,CAAE,MAAA,GAAS,QAAA,EAAS,CAAE,SAAS,yDAAyD,CAAA;AAAA,EACrG,KAAA,EAAOA,kBAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EAC3B,QAAA,EAAUA,kBAAA,CAAE,MAAA,CAAOA,kBAAA,CAAE,MAAA,IAAUA,kBAAA,CAAE,OAAA,EAAS,CAAA,CAAE,QAAA;AAC9C,CAAC;AAIM,IAAM,wBAAA,GAA2BA,mBAAE,MAAA,CAAO;AAAA,EAC/C,EAAA,EAAIA,mBAAE,MAAA,EAAO;AAAA,EACb,MAAA,EAAQA,kBAAA,CAAE,OAAA,CAAQ,cAAc,CAAA;AAAA,EAChC,MAAA,EAAQC;AACV,CAAC;AAEM,IAAM,yBAAA,GAA4BD,mBAAE,MAAA,CAAO;AAAA,EAChD,EAAA,EAAIA,mBAAE,MAAA,EAAO;AAAA,EACb,MAAA,EAAQA,kBAAA,CAAE,OAAA,CAAQ,sBAAsB,CAAA;AAAA,EACxC,OAAA,EAASA,kBAAA,CAAE,OAAA,CAAQ,IAAI;AACzB,CAAC;AAEM,IAAM,2BAAA,GAA8BA,mBAAE,MAAA,CAAO;AAAA,EAClD,MAAA,EAAQA,kBAAA,CAAE,OAAA,CAAQ,MAAM,CAAA;AAAA,EACxB,IAAA,EAAMA,kBAAA,CAAE,KAAA,CAAME,wCAAsB,CAAA;AAAA,EACpC,QAAA,EAAUF,kBAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EAC9B,OAAA,EAASA,kBAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EAC7B,QAAA,EAAUA,mBAAE,OAAA;AACd,CAAC","file":"chunk-UI3SS2JO.cjs","sourcesContent":["import z from 'zod';\nimport { getThreadByIdResponseSchema } from './memory';\nimport { conversationItemSchema } from './responses';\n\nexport const conversationIdPathParams = z.object({\n conversationId: z.string().describe('Unique identifier for the conversation thread'),\n});\n\nexport const createConversationBodySchema = z.object({\n agent_id: z.string().describe('Mastra agent ID used to create the conversation thread'),\n conversation_id: z.string().optional().describe('Optional conversation ID to use as the raw threadId'),\n resource_id: z.string().optional().describe('Optional resource ID to associate with the conversation'),\n title: z.string().optional(),\n metadata: z.record(z.string(), z.unknown()).optional(),\n});\n\nexport type CreateConversationBody = z.infer<typeof createConversationBodySchema>;\n\nexport const conversationObjectSchema = z.object({\n id: z.string(),\n object: z.literal('conversation'),\n thread: getThreadByIdResponseSchema,\n});\n\nexport const conversationDeletedSchema = z.object({\n id: z.string(),\n object: z.literal('conversation.deleted'),\n deleted: z.literal(true),\n});\n\nexport const conversationItemsListSchema = z.object({\n object: z.literal('list'),\n data: z.array(conversationItemSchema),\n first_id: z.string().nullable(),\n last_id: z.string().nullable(),\n has_more: z.boolean(),\n});\n\nexport type ConversationObject = z.infer<typeof conversationObjectSchema>;\nexport type ConversationItemsList = z.infer<typeof conversationItemsListSchema>;\nexport type ConversationDeleted = z.infer<typeof conversationDeletedSchema>;\n"]}
@@ -135,7 +135,12 @@ var listMessagesQuerySchema = chunkEES2ZZGL_cjs.createPagePaginationSchema(40).e
135
135
  resourceId: v4.z.string().optional(),
136
136
  orderBy: messageOrderBySchema,
137
137
  include: includeSchema,
138
- filter: filterSchema
138
+ filter: filterSchema,
139
+ includeSystemReminders: v4.z.preprocess((val) => {
140
+ if (val === "true") return true;
141
+ if (val === "false") return false;
142
+ return val;
143
+ }, v4.z.boolean().optional())
139
144
  });
140
145
  var getWorkingMemoryQuerySchema = v4.z.object({
141
146
  agentId: v4.z.string(),
@@ -399,5 +404,5 @@ exports.updateThreadBodySchema = updateThreadBodySchema;
399
404
  exports.updateThreadNetworkQuerySchema = updateThreadNetworkQuerySchema;
400
405
  exports.updateWorkingMemoryBodySchema = updateWorkingMemoryBodySchema;
401
406
  exports.updateWorkingMemoryResponseSchema = updateWorkingMemoryResponseSchema;
402
- //# sourceMappingURL=chunk-RNC7VEI6.cjs.map
403
- //# sourceMappingURL=chunk-RNC7VEI6.cjs.map
407
+ //# sourceMappingURL=chunk-WKBMLKBC.cjs.map
408
+ //# sourceMappingURL=chunk-WKBMLKBC.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/server/schemas/memory.ts"],"names":["z","createPagePaginationSchema","paginationInfoSchema","successResponseSchema"],"mappings":"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","file":"chunk-WKBMLKBC.cjs","sourcesContent":["import { z } from 'zod/v4';\nimport { paginationInfoSchema, createPagePaginationSchema, successResponseSchema } from './common';\n\n// Path parameter schemas\nexport const threadIdPathParams = z.object({\n threadId: z.string().describe('Unique identifier for the conversation thread'),\n});\n\n/**\n * Common query parameter: required agent ID\n */\nexport const agentIdQuerySchema = z.object({\n agentId: z.string(),\n});\n\n/**\n * Common query parameter: optional agent ID\n * Used for read operations that can fall back to storage when agentId is not provided\n */\nexport const optionalAgentIdQuerySchema = z.object({\n agentId: z.string().optional(),\n});\n\n/**\n * Storage order by configuration for threads and agents (have both createdAt and updatedAt)\n * Handles JSON parsing from query strings\n */\nconst storageOrderBySchema = z.preprocess(\n val => {\n if (typeof val === 'string') {\n try {\n return JSON.parse(val);\n } catch {\n return undefined;\n }\n }\n return val;\n },\n z\n .object({\n field: z.enum(['createdAt', 'updatedAt']).optional(),\n direction: z.enum(['ASC', 'DESC']).optional(),\n })\n .optional(),\n);\n\n/**\n * Storage order by configuration for messages (only have createdAt)\n * Handles JSON parsing from query strings\n */\nconst messageOrderBySchema = z.preprocess(\n val => {\n if (typeof val === 'string') {\n try {\n return JSON.parse(val);\n } catch {\n return undefined;\n }\n }\n return val;\n },\n z\n .object({\n field: z.enum(['createdAt']).optional(),\n direction: z.enum(['ASC', 'DESC']).optional(),\n })\n .optional(),\n);\n\n/**\n * Include schema for message listing - handles JSON parsing from query strings\n */\nconst includeSchema = z.preprocess(\n val => {\n if (typeof val === 'string') {\n try {\n return JSON.parse(val);\n } catch {\n // Return invalid string to fail validation (z.array will reject string type)\n return val;\n }\n }\n return val;\n },\n z\n .array(\n z.object({\n id: z.string(),\n threadId: z.string().optional(),\n withPreviousMessages: z.number().optional(),\n withNextMessages: z.number().optional(),\n }),\n )\n .optional(),\n);\n\n/**\n * Filter schema for message listing - handles JSON parsing from query strings\n */\nconst filterSchema = z.preprocess(\n val => {\n if (typeof val === 'string') {\n try {\n return JSON.parse(val);\n } catch {\n // Return invalid string to fail validation (z.object will reject string type)\n return val;\n }\n }\n return val;\n },\n z\n .object({\n dateRange: z\n .object({\n start: z.coerce.date().optional(),\n end: z.coerce.date().optional(),\n startExclusive: z.boolean().optional(),\n endExclusive: z.boolean().optional(),\n })\n .optional(),\n roles: z.array(z.string()).optional(),\n })\n .optional(),\n);\n\n/**\n * Memory config schema - handles JSON parsing from query strings\n */\nconst memoryConfigSchema = z.preprocess(val => {\n if (typeof val === 'string') {\n try {\n return JSON.parse(val);\n } catch {\n // Return invalid string to fail validation (z.record will reject string type)\n return val;\n }\n }\n return val;\n}, z.record(z.string(), z.unknown()).optional());\n\n/**\n * Thread object structure\n */\nconst threadSchema = z.object({\n id: z.string(),\n title: z.string().optional(),\n resourceId: z.string(),\n createdAt: z.date(),\n updatedAt: z.date(),\n metadata: z.record(z.string(), z.unknown()).optional(),\n});\n\n/**\n * Message structure for storage\n * Extends coreMessageSchema with storage-specific fields\n */\nconst messageSchema = z.any();\n// const messageSchema = coreMessageSchema.extend({\n// id: z.string(),\n// createdAt: z.coerce.date(),\n// threadId: z.string().optional(),\n// resourceId: z.string().optional(),\n// });\n\n// ============================================================================\n// Query Parameter Schemas\n// ============================================================================\n\n/**\n * GET /api/memory/status\n * Includes optional resourceId and threadId for OM status lookup\n */\nexport const getMemoryStatusQuerySchema = agentIdQuerySchema.extend({\n resourceId: z.string().optional(),\n threadId: z.string().optional(),\n});\n\n/**\n * GET /memory/config\n */\nexport const getMemoryConfigQuerySchema = agentIdQuerySchema;\n\n/**\n * GET /memory/threads\n * agentId is optional - can use storage fallback when not provided\n * resourceId is optional - when omitted, returns all threads\n * metadata is optional - filters threads by metadata key-value pairs (AND logic)\n */\nexport const listThreadsQuerySchema = createPagePaginationSchema(100).extend({\n agentId: z.string().optional(),\n resourceId: z.string().optional(),\n metadata: z.preprocess(\n val => {\n if (typeof val === 'string') {\n try {\n return JSON.parse(val);\n } catch {\n // Return invalid string to fail validation (z.record will reject string type)\n return val;\n }\n }\n return val;\n },\n z.optional(z.record(z.string(), z.any())),\n ),\n orderBy: storageOrderBySchema,\n});\n\n/**\n * GET /memory/threads/:threadId\n * agentId is optional - can use storage fallback when not provided\n * resourceId is optional - used for ownership validation fallback when not set via middleware\n */\nexport const getThreadByIdQuerySchema = optionalAgentIdQuerySchema.extend({\n resourceId: z.string().optional(),\n});\n\n/**\n * GET /memory/threads/:threadId/messages\n * agentId is optional - can use storage fallback when not provided\n */\nexport const listMessagesQuerySchema = createPagePaginationSchema(40).extend({\n agentId: z.string().optional(),\n resourceId: z.string().optional(),\n orderBy: messageOrderBySchema,\n include: includeSchema,\n filter: filterSchema,\n includeSystemReminders: z.preprocess(val => {\n if (val === 'true') return true;\n if (val === 'false') return false;\n return val;\n }, z.boolean().optional()),\n});\n\n/**\n * GET /memory/threads/:threadId/working-memory\n */\nexport const getWorkingMemoryQuerySchema = z.object({\n agentId: z.string(),\n resourceId: z.string().optional(),\n memoryConfig: memoryConfigSchema,\n});\n\n/**\n * DELETE /memory/threads/:threadId\n * agentId is required\n * resourceId is optional - used for ownership validation fallback when not set via middleware\n */\nexport const deleteThreadQuerySchema = agentIdQuerySchema.extend({\n resourceId: z.string().optional(),\n});\n\n/**\n * POST /memory/messages/delete\n * agentId is required\n * resourceId is optional - used for ownership validation fallback when not set via middleware\n */\nexport const deleteMessagesQuerySchema = agentIdQuerySchema.extend({\n resourceId: z.string().optional(),\n});\n\n// ============================================================================\n// Legacy /network Query Parameter Schemas (backward compatibility)\n// ============================================================================\n\n/**\n * GET /memory/network/status\n */\nexport const getMemoryStatusNetworkQuerySchema = agentIdQuerySchema;\n\n/**\n * GET /memory/network/threads\n * agentId is optional - can use storage fallback when not provided\n * resourceId is optional - when omitted, returns all threads\n * metadata is optional - filters threads by metadata key-value pairs (AND logic)\n */\nexport const listThreadsNetworkQuerySchema = createPagePaginationSchema(100).extend({\n agentId: z.string().optional(),\n resourceId: z.string().optional(),\n metadata: z.preprocess(\n val => {\n if (typeof val === 'string') {\n try {\n return JSON.parse(val);\n } catch {\n // Return invalid string to fail validation (z.record will reject string type)\n return val;\n }\n }\n return val;\n },\n z.optional(z.record(z.string(), z.any())),\n ),\n orderBy: storageOrderBySchema,\n});\n\n/**\n * GET /memory/network/threads/:threadId\n * agentId is optional - can use storage fallback when not provided\n * resourceId is optional - used for ownership validation fallback when not set via middleware\n */\nexport const getThreadByIdNetworkQuerySchema = optionalAgentIdQuerySchema.extend({\n resourceId: z.string().optional(),\n});\n\n/**\n * GET /memory/network/threads/:threadId/messages\n * agentId is optional - can use storage fallback when not provided\n */\nexport const listMessagesNetworkQuerySchema = createPagePaginationSchema(40).extend({\n agentId: z.string().optional(),\n resourceId: z.string().optional(),\n orderBy: messageOrderBySchema,\n include: includeSchema,\n filter: filterSchema,\n});\n\n/**\n * POST /memory/network/save-messages\n */\nexport const saveMessagesNetworkQuerySchema = agentIdQuerySchema;\n\n/**\n * POST /memory/network/threads\n */\nexport const createThreadNetworkQuerySchema = agentIdQuerySchema;\n\n/**\n * PATCH /memory/network/threads/:threadId\n */\nexport const updateThreadNetworkQuerySchema = agentIdQuerySchema;\n\n/**\n * DELETE /memory/network/threads/:threadId\n * resourceId is optional - used for ownership validation fallback when not set via middleware\n */\nexport const deleteThreadNetworkQuerySchema = agentIdQuerySchema.extend({\n resourceId: z.string().optional(),\n});\n\n/**\n * POST /memory/network/messages/delete\n * resourceId is optional - used for ownership validation fallback when not set via middleware\n */\nexport const deleteMessagesNetworkQuerySchema = agentIdQuerySchema.extend({\n resourceId: z.string().optional(),\n});\n\n// ============================================================================\n// Response Schemas\n// ============================================================================\n\n/**\n * Response for GET /memory/status\n */\nexport const memoryStatusResponseSchema = z.object({\n result: z.boolean(),\n memoryType: z.enum(['local', 'gateway']).optional(),\n observationalMemory: z\n .object({\n enabled: z.boolean(),\n hasRecord: z.boolean().optional(),\n originType: z.string().optional(),\n lastObservedAt: z.date().optional(),\n tokenCount: z.number().optional(),\n observationTokenCount: z.number().optional(),\n isObserving: z.boolean().optional(),\n isReflecting: z.boolean().optional(),\n })\n .optional(),\n});\n\n/**\n * Observational Memory config schema for API responses\n */\nconst observationalMemoryModelRoutingSchema = z.array(\n z.object({\n upTo: z.number(),\n model: z.string(),\n }),\n);\n\nconst observationalMemoryConfigSchema = z.object({\n enabled: z.boolean(),\n scope: z.enum(['thread', 'resource']).optional(),\n shareTokenBudget: z.boolean().optional(),\n messageTokens: z.union([z.number(), z.object({ min: z.number(), max: z.number() })]).optional(),\n observationTokens: z.union([z.number(), z.object({ min: z.number(), max: z.number() })]).optional(),\n observationModel: z.string().optional(),\n reflectionModel: z.string().optional(),\n observationModelRouting: observationalMemoryModelRoutingSchema.optional(),\n reflectionModelRouting: observationalMemoryModelRoutingSchema.optional(),\n});\n\n/**\n * Response for GET /memory/config\n * MemoryConfig is complex with many optional fields - using passthrough\n */\nexport const memoryConfigResponseSchema = z.object({\n memoryType: z.enum(['local', 'gateway']).optional(),\n config: z\n .object({\n lastMessages: z.union([z.number(), z.literal(false)]).optional(),\n semanticRecall: z.union([z.boolean(), z.any()]).optional(),\n workingMemory: z.any().optional(),\n observationalMemory: observationalMemoryConfigSchema.optional(),\n })\n .nullable(),\n});\n\n/**\n * Response for GET /memory/threads\n */\nexport const listThreadsResponseSchema = paginationInfoSchema.extend({\n threads: z.array(threadSchema),\n});\n\n/**\n * Response for GET /memory/threads/:threadId\n */\nexport const getThreadByIdResponseSchema = threadSchema;\n\n/**\n * Response for GET /memory/threads/:threadId/messages\n */\nexport const listMessagesResponseSchema = z.object({\n messages: z.array(messageSchema),\n uiMessages: z.unknown(), // Converted messages in UI format\n});\n\n/**\n * Response for GET /memory/threads/:threadId/working-memory\n */\nexport const getWorkingMemoryResponseSchema = z.object({\n workingMemory: z.unknown(), // Can be string or structured object depending on template\n source: z.enum(['thread', 'resource']),\n workingMemoryTemplate: z.unknown(), // Template structure varies\n threadExists: z.boolean(),\n});\n\n// ============================================================================\n// Body Parameter Schemas for POST/PUT/DELETE\n// ============================================================================\n\n/**\n * Body schema for POST /memory/messages\n */\nexport const saveMessagesBodySchema = z.object({\n messages: z.array(messageSchema),\n});\n\n/**\n * Body schema for POST /memory/threads\n */\nexport const createThreadBodySchema = z.object({\n resourceId: z.string(),\n title: z.string().optional(),\n metadata: z.record(z.string(), z.unknown()).optional(),\n threadId: z.string().optional(),\n});\n\n/**\n * Body schema for PUT /memory/threads/:threadId\n */\nexport const updateThreadBodySchema = z.object({\n title: z.string().optional(),\n metadata: z.record(z.string(), z.unknown()).optional(),\n resourceId: z.string().optional(),\n});\n\n/**\n * Body schema for PUT /memory/threads/:threadId/working-memory\n */\nexport const updateWorkingMemoryBodySchema = z.object({\n workingMemory: z.string(),\n resourceId: z.string().optional(),\n memoryConfig: z.record(z.string(), z.unknown()).optional(),\n});\n\n/**\n * Body schema for POST /memory/messages/delete\n * Accepts: string | string[] | { id: string } | { id: string }[]\n */\nexport const deleteMessagesBodySchema = z.object({\n messageIds: z.union([\n z.string(),\n z.array(z.string()),\n z.object({ id: z.string() }),\n z.array(z.object({ id: z.string() })),\n ]),\n});\n\n/**\n * Query schema for GET /memory/search\n */\nexport const searchMemoryQuerySchema = z.object({\n agentId: z.string(),\n searchQuery: z.string(),\n resourceId: z.string(),\n threadId: z.string().optional(),\n limit: z.coerce.number().optional().default(20),\n memoryConfig: memoryConfigSchema,\n});\n\n/**\n * Response schemas\n */\nexport const saveMessagesResponseSchema = z.object({\n messages: z.array(messageSchema),\n});\n\nexport const deleteThreadResponseSchema = z.object({\n result: z.string(),\n});\n\nexport const updateWorkingMemoryResponseSchema = successResponseSchema;\n\nexport const deleteMessagesResponseSchema = successResponseSchema.extend({\n message: z.string(),\n});\n\nexport const searchMemoryResponseSchema = z.object({\n results: z.array(z.unknown()),\n count: z.number(),\n query: z.string(),\n searchScope: z.string().optional(),\n searchType: z.string().optional(),\n});\n\n/**\n * Body schema for POST /memory/threads/:threadId/clone\n */\nexport const cloneThreadBodySchema = z.object({\n newThreadId: z.string().optional(),\n resourceId: z.string().optional(),\n title: z.string().optional(),\n metadata: z.record(z.string(), z.unknown()).optional(),\n options: z\n .object({\n messageLimit: z.number().optional(),\n messageFilter: z\n .object({\n startDate: z.coerce.date().optional(),\n endDate: z.coerce.date().optional(),\n messageIds: z.array(z.string()).optional(),\n })\n .optional(),\n })\n .optional(),\n});\n\n/**\n * Response schema for POST /memory/threads/:threadId/clone\n */\nexport const cloneThreadResponseSchema = z.object({\n thread: threadSchema,\n clonedMessages: z.array(messageSchema),\n});\n\n// ============================================================================\n// Observational Memory Schemas\n// ============================================================================\n\n/**\n * Query schema for GET /api/memory/observational-memory\n */\nexport const getObservationalMemoryQuerySchema = z.object({\n agentId: z.string(),\n resourceId: z.string().optional(),\n threadId: z.string().optional(),\n from: z.coerce.date().optional(),\n to: z.coerce.date().optional(),\n offset: z.coerce.number().int().min(0).optional(),\n limit: z.coerce.number().int().min(1).optional(),\n});\n\n/**\n * Observational Memory record schema for API responses\n * Matches the ObservationalMemoryRecord type from @mastra/core/storage\n */\nconst observationalMemoryRecordSchema = z.object({\n id: z.string(),\n scope: z.enum(['thread', 'resource']),\n resourceId: z.string(),\n threadId: z.string().nullable(),\n activeObservations: z.string(),\n bufferedObservations: z.string().optional(),\n bufferedReflection: z.string().optional(),\n originType: z.enum(['initial', 'observation', 'reflection']),\n generationCount: z.number(),\n lastObservedAt: z.date().optional(),\n totalTokensObserved: z.number(),\n observationTokenCount: z.number(),\n pendingMessageTokens: z.number(),\n isObserving: z.boolean(),\n isReflecting: z.boolean(),\n config: z.record(z.string(), z.unknown()),\n metadata: z.record(z.string(), z.unknown()).optional(),\n createdAt: z.date(),\n updatedAt: z.date(),\n});\n\n/**\n * Response schema for GET /api/memory/observational-memory\n */\nexport const getObservationalMemoryResponseSchema = z.object({\n record: observationalMemoryRecordSchema.nullable(),\n history: z.array(observationalMemoryRecordSchema).optional(),\n});\n\n/**\n * Body schema for POST /api/memory/observational-memory/buffer-status\n */\nexport const awaitBufferStatusBodySchema = z.object({\n agentId: z.string(),\n resourceId: z.string().optional(),\n threadId: z.string().optional(),\n});\n\n/**\n * Response schema for POST /api/memory/observational-memory/buffer-status\n */\nexport const awaitBufferStatusResponseSchema = z.object({\n record: observationalMemoryRecordSchema.nullable(),\n});\n"]}
@@ -1,7 +1,7 @@
1
1
  import { responseObjectSchema, createResponseBodySchema, responseIdPathParams, deleteResponseSchema } from './chunk-7TKB6WYH.js';
2
2
  import { mapResponseTurnRecordToResponse, mapResponseInputToExecutionMessages, mapMastraToolsToResponseTools, createMessageId, buildCompletedResponse, buildInProgressResponse, createOutputTextPart, extractTextDelta, toResponseUsage, toResponseStatus, formatSseEvent } from './chunk-AJYJ4H7P.js';
3
3
  import { findResponseTurnRecordAcrossAgents, deleteResponseTurnRecord, findResponseTurnRecord, resolveResponseTurnMessagesForStorage, getAgentMemoryStore, persistResponseTurnRecord } from './chunk-BNI76TPM.js';
4
- import { getAgentFromSystem } from './chunk-ZVSNY6VT.js';
4
+ import { getAgentFromSystem } from './chunk-GMZFJZO4.js';
5
5
  import { getEffectiveThreadId, getEffectiveResourceId, validateThreadOwnership } from './chunk-USR6JK77.js';
6
6
  import { createRoute } from './chunk-NMS2SC2B.js';
7
7
  import { handleError } from './chunk-P23KBWKB.js';
@@ -703,5 +703,5 @@ var DELETE_RESPONSE_ROUTE = createRoute({
703
703
  });
704
704
 
705
705
  export { CREATE_RESPONSE_ROUTE, DELETE_RESPONSE_ROUTE, GET_RESPONSE_ROUTE, responses_exports };
706
- //# sourceMappingURL=chunk-SHWDJY3O.js.map
707
- //# sourceMappingURL=chunk-SHWDJY3O.js.map
706
+ //# sourceMappingURL=chunk-WZ6XPWVK.js.map
707
+ //# sourceMappingURL=chunk-WZ6XPWVK.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/server/handlers/responses.ts"],"names":["existingThread","threadId","createdThread"],"mappings":"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","file":"chunk-SHWDJY3O.js","sourcesContent":["import { randomUUID } from 'node:crypto';\nimport type { Agent, MastraDBMessage } from '@mastra/core/agent';\nimport type { Mastra } from '@mastra/core/mastra';\nimport type { RequestContext } from '@mastra/core/request-context';\nimport type { MemoryStorage } from '@mastra/core/storage';\nimport { HTTPException } from '../http-exception';\nimport {\n createResponseBodySchema,\n deleteResponseSchema,\n responseIdPathParams,\n responseObjectSchema,\n} from '../schemas/responses';\nimport type { CreateResponseBody, DeleteResponse, ResponseObject } from '../schemas/responses';\nimport { createRoute } from '../server-adapter/routes/route-builder';\nimport { getAgentFromSystem } from './agents';\nimport { handleError } from './error';\nimport {\n buildCompletedResponse,\n buildInProgressResponse,\n createMessageId,\n createOutputTextPart,\n extractTextDelta,\n formatSseEvent,\n mapMastraToolsToResponseTools,\n mapResponseInputToExecutionMessages,\n mapResponseTurnRecordToResponse,\n toResponseStatus,\n toResponseUsage,\n} from './responses.adapter';\nimport {\n deleteResponseTurnRecord,\n findResponseTurnRecord,\n findResponseTurnRecordAcrossAgents,\n getAgentMemoryStore,\n persistResponseTurnRecord,\n resolveResponseTurnMessagesForStorage,\n} from './responses.storage';\nimport type {\n ProviderMetadataLike,\n ResponseTurnRecord,\n ResponseTurnRecordMetadata,\n ThreadExecutionContext,\n UsageLike,\n} from './responses.storage';\nimport { getEffectiveResourceId, getEffectiveThreadId, validateThreadOwnership } from './utils';\n\ntype AgentExecutionInput = Parameters<Agent['generate']>[0];\n\ntype ResponseExecutionResult = {\n text?: string;\n finishReason?: string;\n totalUsage?: UsageLike | Promise<UsageLike>;\n usage?: UsageLike | Promise<UsageLike>;\n providerMetadata?: ProviderMetadataLike | Promise<ProviderMetadataLike>;\n response?: {\n id?: string;\n dbMessages?: MastraDBMessage[];\n };\n};\n\ntype ResponseStreamResult = {\n fullStream: ReadableStream<unknown> | Promise<ReadableStream<unknown>>;\n text: Promise<string> | string;\n finishReason: Promise<string | undefined> | string | undefined;\n totalUsage?: Promise<UsageLike> | UsageLike;\n usage?: Promise<UsageLike> | UsageLike;\n providerMetadata?: Promise<ProviderMetadataLike> | ProviderMetadataLike;\n response?:\n | Promise<{\n id?: string;\n dbMessages?: MastraDBMessage[];\n }>\n | {\n id?: string;\n dbMessages?: MastraDBMessage[];\n };\n};\n\ntype CompletedResponseState = {\n completedAt: number;\n status: ResponseObject['status'];\n text: string;\n usage: UsageLike;\n usageDetails: ResponseObject['usage'];\n providerOptions: ProviderMetadataLike;\n};\n\ntype FinalizedResponse = {\n completedState: CompletedResponseState;\n response: ResponseObject;\n responseMessages: MastraDBMessage[];\n};\n\ntype PreparedCreateResponseRequest = {\n agent: Agent<any, any, any, any>;\n agentMemoryStore: MemoryStorage | null;\n configuredTools: ReturnType<typeof mapMastraToolsToResponseTools>;\n createdAt: number;\n didStore: boolean;\n executionInput: AgentExecutionInput;\n previousResponseTurnRecord: ResponseTurnRecord | null;\n responseId: string;\n responseMetadata: Omit<\n ResponseTurnRecordMetadata,\n 'completedAt' | 'status' | 'usage' | 'providerOptions' | 'messageIds'\n >;\n threadContext: ThreadExecutionContext | null;\n};\n\nconst JSON_OBJECT_RESPONSE_SCHEMA = {\n type: 'object',\n additionalProperties: true,\n} as const;\n\nfunction jsonResponse(data: ResponseObject, status: number = 200): Response {\n return new Response(JSON.stringify(data), {\n status,\n headers: {\n 'Content-Type': 'application/json',\n },\n });\n}\n\nfunction createStructuredOutput(text: CreateResponseBody['text']) {\n if (!text) {\n return undefined;\n }\n\n switch (text.format.type) {\n case 'json_object':\n return {\n schema: JSON_OBJECT_RESPONSE_SCHEMA,\n jsonPromptInjection: true,\n };\n case 'json_schema':\n return {\n schema: text.format.schema,\n };\n default:\n return undefined;\n }\n}\n\nfunction getStreamedMessageOutputItem(response: ResponseObject, responseId: string) {\n return (\n response.output.find(\n (item): item is Extract<ResponseObject['output'][number], { type: 'message' }> =>\n item.type === 'message' && item.id === responseId,\n ) ??\n response.output.find(\n (item): item is Extract<ResponseObject['output'][number], { type: 'message' }> => item.type === 'message',\n ) ??\n null\n );\n}\n\n/**\n * Resolves the memory thread that should back the current response request.\n *\n * If `previous_response_id` is present, the request continues on that stored thread.\n * Otherwise, the route only creates or reuses a thread when the caller asked to store\n * the response and the resolved agent actually has memory configured.\n */\nasync function resolveThreadExecutionContext({\n agent,\n store,\n conversationId,\n previousResponseTurnRecord,\n requestContext,\n}: {\n agent: Agent<any, any, any, any>;\n store: boolean;\n conversationId?: string;\n previousResponseTurnRecord: ResponseTurnRecord | null;\n requestContext: RequestContext;\n}): Promise<ThreadExecutionContext | null> {\n if (conversationId && previousResponseTurnRecord && previousResponseTurnRecord.thread.id !== conversationId) {\n throw new HTTPException(400, {\n message:\n 'conversation_id and previous_response_id must reference the same conversation thread when both are provided',\n });\n }\n\n if (previousResponseTurnRecord) {\n return {\n threadId: previousResponseTurnRecord.thread.id,\n resourceId: previousResponseTurnRecord.thread.resourceId,\n };\n }\n\n const effectiveThreadId = getEffectiveThreadId(requestContext, undefined);\n const effectiveResourceId = getEffectiveResourceId(requestContext, undefined);\n\n if (!store && !conversationId && !effectiveThreadId) {\n return null;\n }\n\n const memory = await agent.getMemory({ requestContext });\n if (!memory) {\n if (conversationId) {\n throw new HTTPException(400, {\n message: 'conversation_id requires the target agent to have memory configured',\n });\n }\n\n return null;\n }\n\n if (conversationId) {\n const existingThread = await memory.getThreadById({ threadId: conversationId });\n if (!existingThread) {\n throw new HTTPException(404, { message: `Conversation ${conversationId} was not found` });\n }\n\n await validateThreadOwnership(existingThread, effectiveResourceId);\n return {\n threadId: existingThread.id,\n resourceId: effectiveResourceId ?? existingThread.resourceId,\n };\n }\n\n if (!effectiveThreadId) {\n if (!store) {\n return null;\n }\n\n const threadId = randomUUID();\n const createdThread = await memory.createThread({\n threadId,\n resourceId: effectiveResourceId ?? threadId,\n });\n\n return {\n threadId: createdThread.id,\n resourceId: createdThread.resourceId,\n };\n }\n\n const threadId = effectiveThreadId;\n const existingThread = await memory.getThreadById({ threadId });\n if (existingThread) {\n await validateThreadOwnership(existingThread, effectiveResourceId);\n return {\n threadId: existingThread.id,\n resourceId: effectiveResourceId ?? existingThread.resourceId,\n };\n }\n\n if (!store) {\n return null;\n }\n\n const resourceId = effectiveResourceId ?? threadId;\n const createdThread = await memory.createThread({\n threadId,\n resourceId,\n });\n\n return {\n threadId: createdThread.id,\n resourceId: createdThread.resourceId,\n };\n}\n\nfunction createExecutionMemory(threadContext: ThreadExecutionContext | null) {\n if (!threadContext) {\n return undefined;\n }\n\n return {\n memory: {\n thread: threadContext.threadId,\n resource: threadContext.resourceId,\n },\n } as const;\n}\n\n/**\n * Resolves the registered Mastra agent that owns the response request.\n */\nasync function resolveResponseAgent({\n mastra,\n agentId,\n}: {\n mastra: Mastra | undefined;\n agentId?: string;\n}): Promise<Agent<any, any, any, any>> {\n if (!agentId) {\n throw new HTTPException(400, {\n message: 'Responses requests require an agent_id',\n });\n }\n\n if (!mastra) {\n throw new HTTPException(500, { message: 'Mastra instance is required for agent-backed responses' });\n }\n\n return getAgentFromSystem({ mastra, agentId });\n}\n\nasync function resolveAgentMemoryStore({\n agent,\n requestContext,\n errorMessage,\n}: {\n agent: Agent<any, any, any, any>;\n requestContext: RequestContext;\n errorMessage: string;\n}): Promise<MemoryStorage> {\n const agentMemoryStore = await getAgentMemoryStore({ agent, requestContext });\n if (!agentMemoryStore) {\n throw new HTTPException(400, { message: errorMessage });\n }\n\n return agentMemoryStore;\n}\n\n/**\n * Executes a non-streaming Responses API request through the resolved Mastra agent.\n */\nasync function executeGenerate({\n agent,\n model,\n instructions,\n text,\n providerOptions,\n input,\n requestContext,\n abortSignal,\n threadContext,\n}: {\n agent: Agent;\n model: string;\n instructions: string | undefined;\n text: CreateResponseBody['text'];\n providerOptions: CreateResponseBody['providerOptions'];\n input: AgentExecutionInput;\n requestContext: RequestContext;\n abortSignal: AbortSignal;\n threadContext: ThreadExecutionContext | null;\n}) {\n const executionMemory = createExecutionMemory(threadContext);\n const structuredOutput = createStructuredOutput(text);\n const commonOptions = {\n instructions,\n requestContext,\n abortSignal,\n model,\n structuredOutput,\n providerOptions,\n ...(executionMemory ?? {}),\n };\n const resolvedModel = await agent.getModel({ requestContext, modelConfig: model });\n\n if (resolvedModel.specificationVersion === 'v1') {\n if (threadContext) {\n return (await agent.generateLegacy(input, {\n instructions,\n requestContext,\n abortSignal,\n model,\n output: structuredOutput?.schema,\n providerOptions,\n resourceId: threadContext.resourceId,\n threadId: threadContext.threadId,\n } as never)) as ResponseExecutionResult;\n }\n\n return (await agent.generateLegacy(input, {\n instructions,\n requestContext,\n abortSignal,\n model,\n output: structuredOutput?.schema,\n providerOptions,\n } as never)) as ResponseExecutionResult;\n }\n\n return (await agent.generate(input, commonOptions as never)) as ResponseExecutionResult;\n}\n\n/**\n * Executes a streaming Responses API request through the resolved Mastra agent.\n */\nasync function executeStream({\n agent,\n model,\n instructions,\n text,\n providerOptions,\n input,\n requestContext,\n abortSignal,\n threadContext,\n}: {\n agent: Agent;\n model: string;\n instructions: string | undefined;\n text: CreateResponseBody['text'];\n providerOptions: CreateResponseBody['providerOptions'];\n input: AgentExecutionInput;\n requestContext: RequestContext;\n abortSignal: AbortSignal;\n threadContext: ThreadExecutionContext | null;\n}) {\n const executionMemory = createExecutionMemory(threadContext);\n const structuredOutput = createStructuredOutput(text);\n const commonOptions = {\n instructions,\n requestContext,\n abortSignal,\n model,\n structuredOutput,\n providerOptions,\n ...(executionMemory ?? {}),\n };\n const resolvedModel = await agent.getModel({ requestContext, modelConfig: model });\n\n if (resolvedModel.specificationVersion === 'v1') {\n if (threadContext) {\n return (await agent.streamLegacy(input, {\n instructions,\n requestContext,\n abortSignal,\n model,\n output: structuredOutput?.schema,\n providerOptions,\n resourceId: threadContext.resourceId,\n threadId: threadContext.threadId,\n } as never)) as ResponseStreamResult;\n }\n\n return (await agent.streamLegacy(input, {\n instructions,\n requestContext,\n abortSignal,\n model,\n output: structuredOutput?.schema,\n providerOptions,\n } as never)) as ResponseStreamResult;\n }\n\n return (await agent.stream(input, commonOptions as never)) as ResponseStreamResult;\n}\n\nasync function resolveUsage(result: ResponseExecutionResult | ResponseStreamResult): Promise<UsageLike> {\n return (await (result.totalUsage ?? result.usage ?? null)) as UsageLike;\n}\n\nasync function resolveProviderMetadata(\n result: ResponseExecutionResult | ResponseStreamResult,\n): Promise<ProviderMetadataLike> {\n return (await (result.providerMetadata ?? undefined)) as ProviderMetadataLike;\n}\n\nasync function resolveFinishReason(\n result: ResponseExecutionResult | ResponseStreamResult,\n): Promise<string | undefined> {\n return (await result.finishReason) ?? undefined;\n}\n\nasync function resolveText(result: ResponseExecutionResult | ResponseStreamResult): Promise<string> {\n return (await result.text) ?? '';\n}\n\n/**\n * Resolves the final response state shared by streaming and non-streaming flows.\n */\nasync function resolveCompletedResponseState(\n result: ResponseExecutionResult | ResponseStreamResult,\n fallbackText: string,\n): Promise<CompletedResponseState> {\n const usage = await resolveUsage(result);\n\n return {\n completedAt: Math.floor(Date.now() / 1000),\n status: toResponseStatus(await resolveFinishReason(result)),\n text: (await resolveText(result)) || fallbackText,\n usage,\n usageDetails: toResponseUsage(usage),\n providerOptions: await resolveProviderMetadata(result),\n };\n}\n\n/**\n * Stores the completed response when the request opted into memory-backed persistence.\n */\nasync function storeCompletedResponse({\n agentMemoryStore,\n didStore,\n threadContext,\n responseId,\n metadata,\n completedState,\n messages,\n}: {\n agentMemoryStore: MemoryStorage | null;\n didStore: boolean;\n threadContext: ThreadExecutionContext | null;\n responseId: string;\n metadata: Omit<ResponseTurnRecordMetadata, 'completedAt' | 'status' | 'usage' | 'providerOptions' | 'messageIds'>;\n completedState: CompletedResponseState;\n messages: MastraDBMessage[];\n}): Promise<void> {\n if (!didStore || !threadContext) {\n return;\n }\n\n await persistResponseTurnRecord({\n memoryStore: agentMemoryStore,\n responseId,\n metadata: {\n ...metadata,\n completedAt: completedState.completedAt,\n status: completedState.status,\n usage: completedState.usageDetails,\n providerOptions: completedState.providerOptions,\n messageIds: [],\n },\n threadContext,\n messages,\n });\n}\n\n/**\n * Resolves the final response object and persists the stored response turn when needed.\n */\nasync function finalizeResponse({\n agentMemoryStore,\n didStore,\n threadContext,\n result,\n responseId,\n createdAt,\n model,\n instructions,\n previousResponseId,\n conversationId,\n configuredTools,\n responseMetadata,\n fallbackText,\n}: {\n agentMemoryStore: MemoryStorage | null;\n didStore: boolean;\n threadContext: ThreadExecutionContext | null;\n result: ResponseExecutionResult | ResponseStreamResult;\n responseId: string;\n createdAt: number;\n model: string;\n instructions: string | undefined;\n previousResponseId?: string;\n conversationId?: string;\n configuredTools: ReturnType<typeof mapMastraToolsToResponseTools>;\n responseMetadata: Omit<\n ResponseTurnRecordMetadata,\n 'completedAt' | 'status' | 'usage' | 'providerOptions' | 'messageIds'\n >;\n fallbackText: string;\n}): Promise<FinalizedResponse> {\n const completedState = await resolveCompletedResponseState(result, fallbackText);\n const responseMessages = await resolveResponseTurnMessagesForStorage({\n result,\n responseId,\n text: completedState.text,\n threadContext,\n });\n const response = buildCompletedResponse({\n responseId,\n outputMessageId: responseId,\n model,\n createdAt,\n completedAt: completedState.completedAt,\n status: completedState.status,\n text: completedState.text,\n usage: completedState.usage,\n instructions,\n textConfig: responseMetadata.text,\n previousResponseId,\n conversationId,\n providerOptions: completedState.providerOptions,\n tools: configuredTools,\n messages: responseMessages,\n store: didStore,\n });\n\n await storeCompletedResponse({\n agentMemoryStore,\n didStore,\n threadContext,\n responseId,\n metadata: responseMetadata,\n completedState,\n messages: responseMessages,\n });\n\n return { completedState, response, responseMessages };\n}\n\n/**\n * Resolves all request-scoped Mastra primitives needed to execute a Responses create\n * call: the owning agent, the memory thread context, the normalized execution input,\n * and the response-turn metadata that may be persisted later.\n */\nasync function prepareCreateResponseRequest({\n body,\n mastra,\n requestContext,\n}: {\n body: CreateResponseBody;\n mastra: Mastra | undefined;\n requestContext: RequestContext;\n}): Promise<PreparedCreateResponseRequest> {\n const executionInput = mapResponseInputToExecutionMessages(body.input) as AgentExecutionInput;\n const agent = await resolveResponseAgent({\n mastra,\n agentId: body.agent_id,\n });\n const shouldStore = body.store ?? false;\n const needsMemoryStore = shouldStore || Boolean(body.conversation_id) || Boolean(body.previous_response_id);\n const agentMemoryStore = needsMemoryStore\n ? await resolveAgentMemoryStore({\n agent,\n requestContext,\n errorMessage: body.previous_response_id\n ? 'previous_response_id requires the target agent to have memory storage configured'\n : shouldStore\n ? 'Stored responses require the target agent to have memory storage configured'\n : 'conversation_id requires the target agent to have memory storage configured',\n })\n : null;\n const previousResponseTurnRecord = body.previous_response_id\n ? await findResponseTurnRecord({ agent, responseId: body.previous_response_id, requestContext })\n : null;\n\n if (body.previous_response_id && !previousResponseTurnRecord) {\n throw new HTTPException(404, { message: `Stored response ${body.previous_response_id} was not found` });\n }\n\n const configuredTools = mapMastraToolsToResponseTools(\n (await Promise.resolve(agent.listTools({ requestContext }))) as Record<string, unknown>,\n );\n\n const responseId = createMessageId();\n const createdAt = Math.floor(Date.now() / 1000);\n const threadContext = await resolveThreadExecutionContext({\n agent,\n store: shouldStore,\n conversationId: body.conversation_id,\n previousResponseTurnRecord,\n requestContext,\n });\n\n if (shouldStore && !threadContext) {\n throw new HTTPException(400, {\n message: 'Stored responses require the target agent to have memory configured',\n });\n }\n\n const didStore = shouldStore && Boolean(threadContext);\n\n return {\n agent,\n agentMemoryStore,\n configuredTools,\n createdAt,\n didStore,\n executionInput,\n previousResponseTurnRecord,\n responseId,\n responseMetadata: {\n agentId: agent.id,\n model: body.model,\n createdAt,\n instructions: body.instructions,\n text: body.text,\n previousResponseId: previousResponseTurnRecord?.message.id ?? body.previous_response_id,\n tools: configuredTools,\n store: didStore,\n },\n threadContext,\n };\n}\n\n/**\n * Bridges a Mastra agent stream into OpenAI-style Responses SSE events and completes\n * the stored response-turn record when the stream finishes.\n */\nfunction createResponseEventStream({\n agentMemoryStore,\n body,\n configuredTools,\n createdAt,\n didStore,\n previousResponseTurnRecord,\n responseId,\n responseMetadata,\n streamResult,\n threadContext,\n}: {\n agentMemoryStore: MemoryStorage | null;\n body: CreateResponseBody;\n configuredTools: ReturnType<typeof mapMastraToolsToResponseTools>;\n createdAt: number;\n didStore: boolean;\n previousResponseTurnRecord: ResponseTurnRecord | null;\n responseId: string;\n responseMetadata: Omit<\n ResponseTurnRecordMetadata,\n 'completedAt' | 'status' | 'usage' | 'providerOptions' | 'messageIds'\n >;\n streamResult: ResponseStreamResult;\n threadContext: ThreadExecutionContext | null;\n}) {\n const createdResponse = buildInProgressResponse({\n responseId,\n model: body.model,\n createdAt,\n instructions: body.instructions,\n textConfig: body.text,\n previousResponseId: body.previous_response_id,\n conversationId: threadContext?.threadId ?? body.conversation_id,\n tools: configuredTools,\n store: didStore,\n });\n\n return new ReadableStream<Uint8Array>({\n async start(controller) {\n let sequenceNumber = 1;\n const enqueueEvent = (eventName: string, payload: Record<string, unknown>) => {\n controller.enqueue(\n formatSseEvent(eventName, {\n ...payload,\n sequence_number: sequenceNumber++,\n }),\n );\n };\n\n enqueueEvent('response.created', {\n type: 'response.created',\n response: createdResponse,\n });\n enqueueEvent('response.in_progress', {\n type: 'response.in_progress',\n response: createdResponse,\n });\n enqueueEvent('response.output_item.added', {\n type: 'response.output_item.added',\n output_index: 0,\n item: {\n id: responseId,\n type: 'message',\n role: 'assistant',\n status: 'in_progress',\n content: [],\n },\n });\n enqueueEvent('response.content_part.added', {\n type: 'response.content_part.added',\n output_index: 0,\n content_index: 0,\n item_id: responseId,\n part: createOutputTextPart(''),\n });\n\n let text = '';\n const fullStream = await streamResult.fullStream;\n const reader = fullStream.getReader();\n\n try {\n while (true) {\n const { done, value } = await reader.read();\n if (done) {\n break;\n }\n\n const delta = extractTextDelta(value);\n if (delta) {\n text += delta;\n enqueueEvent('response.output_text.delta', {\n type: 'response.output_text.delta',\n output_index: 0,\n content_index: 0,\n item_id: responseId,\n delta,\n });\n }\n }\n\n const { completedState, response } = await finalizeResponse({\n agentMemoryStore,\n didStore,\n threadContext,\n result: streamResult,\n responseId,\n createdAt,\n model: body.model,\n instructions: body.instructions,\n previousResponseId: previousResponseTurnRecord?.message.id ?? body.previous_response_id,\n conversationId: threadContext?.threadId ?? body.conversation_id,\n configuredTools,\n responseMetadata,\n fallbackText: text,\n });\n enqueueEvent('response.output_text.done', {\n type: 'response.output_text.done',\n output_index: 0,\n content_index: 0,\n item_id: responseId,\n text: completedState.text,\n });\n\n const completedItem = getStreamedMessageOutputItem(response, responseId) ?? {\n id: responseId,\n type: 'message' as const,\n role: 'assistant' as const,\n status: 'completed' as const,\n content: [createOutputTextPart(completedState.text)],\n };\n\n enqueueEvent('response.content_part.done', {\n type: 'response.content_part.done',\n output_index: 0,\n content_index: 0,\n item_id: responseId,\n part: createOutputTextPart(completedState.text),\n });\n enqueueEvent('response.output_item.done', {\n type: 'response.output_item.done',\n output_index: 0,\n item: completedItem,\n });\n enqueueEvent('response.completed', {\n type: 'response.completed',\n response,\n });\n controller.close();\n } catch (error) {\n controller.error(error);\n } finally {\n reader.releaseLock();\n }\n },\n });\n}\n\nexport const CREATE_RESPONSE_ROUTE = createRoute({\n method: 'POST',\n path: '/v1/responses',\n responseType: 'datastream-response',\n bodySchema: createResponseBodySchema,\n responseSchema: responseObjectSchema,\n summary: 'Create a response',\n description: 'Creates a response through a Mastra-hosted Responses API-compatible route',\n tags: ['Responses'],\n requiresAuth: true,\n requiresPermission: 'agents:execute',\n handler: async ({ mastra, requestContext, abortSignal, ...body }) => {\n try {\n const {\n agent,\n agentMemoryStore,\n configuredTools,\n createdAt,\n didStore,\n executionInput,\n previousResponseTurnRecord,\n responseId,\n responseMetadata,\n threadContext,\n } = await prepareCreateResponseRequest({ body, mastra, requestContext });\n\n if (!body.stream) {\n const result = await executeGenerate({\n agent,\n model: body.model,\n instructions: body.instructions,\n text: body.text,\n providerOptions: body.providerOptions,\n input: executionInput,\n requestContext,\n abortSignal,\n threadContext,\n });\n\n const { response } = await finalizeResponse({\n agentMemoryStore,\n didStore,\n threadContext,\n result,\n responseId,\n createdAt,\n model: body.model,\n instructions: body.instructions,\n previousResponseId: previousResponseTurnRecord?.message.id ?? body.previous_response_id,\n conversationId: threadContext?.threadId ?? body.conversation_id,\n configuredTools,\n responseMetadata,\n fallbackText: '',\n });\n\n return jsonResponse(response);\n }\n\n const streamResult = await executeStream({\n agent,\n model: body.model,\n instructions: body.instructions,\n text: body.text,\n providerOptions: body.providerOptions,\n input: executionInput,\n requestContext,\n abortSignal,\n threadContext,\n });\n\n const stream = createResponseEventStream({\n agentMemoryStore,\n body,\n configuredTools,\n createdAt,\n didStore,\n previousResponseTurnRecord,\n responseId,\n responseMetadata,\n streamResult,\n threadContext,\n });\n\n return new Response(stream, {\n headers: {\n 'Content-Type': 'text/event-stream; charset=utf-8',\n 'Cache-Control': 'no-cache',\n Connection: 'keep-alive',\n 'X-Accel-Buffering': 'no',\n },\n });\n } catch (error) {\n return handleError(error, 'Error creating response');\n }\n },\n});\n\nexport const GET_RESPONSE_ROUTE = createRoute({\n method: 'GET',\n path: '/v1/responses/:responseId',\n responseType: 'json',\n pathParamSchema: responseIdPathParams,\n responseSchema: responseObjectSchema,\n summary: 'Retrieve a stored response',\n description: 'Returns a previously stored response object',\n tags: ['Responses'],\n requiresAuth: true,\n requiresPermission: 'agents:read',\n handler: async ({ mastra, requestContext, responseId }) => {\n try {\n const responseTurnRecord = await findResponseTurnRecordAcrossAgents({ mastra, responseId, requestContext });\n if (!responseTurnRecord) {\n throw new HTTPException(404, { message: `Stored response ${responseId} was not found` });\n }\n\n return mapResponseTurnRecordToResponse(responseTurnRecord);\n } catch (error) {\n return handleError(error, 'Error retrieving response');\n }\n },\n});\n\nexport const DELETE_RESPONSE_ROUTE = createRoute({\n method: 'DELETE',\n path: '/v1/responses/:responseId',\n responseType: 'json',\n pathParamSchema: responseIdPathParams,\n responseSchema: deleteResponseSchema,\n summary: 'Delete a stored response',\n description: 'Deletes a stored response so it can no longer be retrieved or chained',\n tags: ['Responses'],\n requiresAuth: true,\n requiresPermission: 'agents:delete',\n handler: async ({ mastra, requestContext, responseId }) => {\n try {\n const responseTurnRecord = await findResponseTurnRecordAcrossAgents({ mastra, responseId, requestContext });\n if (!responseTurnRecord) {\n throw new HTTPException(404, { message: `Stored response ${responseId} was not found` });\n }\n\n await deleteResponseTurnRecord({ responseTurnRecord });\n\n const response: DeleteResponse = {\n id: responseId,\n object: 'response',\n deleted: true,\n };\n\n return response;\n } catch (error) {\n return handleError(error, 'Error deleting response');\n }\n },\n});\n"]}
1
+ {"version":3,"sources":["../src/server/handlers/responses.ts"],"names":["existingThread","threadId","createdThread"],"mappings":"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","file":"chunk-WZ6XPWVK.js","sourcesContent":["import { randomUUID } from 'node:crypto';\nimport type { Agent, MastraDBMessage } from '@mastra/core/agent';\nimport type { Mastra } from '@mastra/core/mastra';\nimport type { RequestContext } from '@mastra/core/request-context';\nimport type { MemoryStorage } from '@mastra/core/storage';\nimport { HTTPException } from '../http-exception';\nimport {\n createResponseBodySchema,\n deleteResponseSchema,\n responseIdPathParams,\n responseObjectSchema,\n} from '../schemas/responses';\nimport type { CreateResponseBody, DeleteResponse, ResponseObject } from '../schemas/responses';\nimport { createRoute } from '../server-adapter/routes/route-builder';\nimport { getAgentFromSystem } from './agents';\nimport { handleError } from './error';\nimport {\n buildCompletedResponse,\n buildInProgressResponse,\n createMessageId,\n createOutputTextPart,\n extractTextDelta,\n formatSseEvent,\n mapMastraToolsToResponseTools,\n mapResponseInputToExecutionMessages,\n mapResponseTurnRecordToResponse,\n toResponseStatus,\n toResponseUsage,\n} from './responses.adapter';\nimport {\n deleteResponseTurnRecord,\n findResponseTurnRecord,\n findResponseTurnRecordAcrossAgents,\n getAgentMemoryStore,\n persistResponseTurnRecord,\n resolveResponseTurnMessagesForStorage,\n} from './responses.storage';\nimport type {\n ProviderMetadataLike,\n ResponseTurnRecord,\n ResponseTurnRecordMetadata,\n ThreadExecutionContext,\n UsageLike,\n} from './responses.storage';\nimport { getEffectiveResourceId, getEffectiveThreadId, validateThreadOwnership } from './utils';\n\ntype AgentExecutionInput = Parameters<Agent['generate']>[0];\n\ntype ResponseExecutionResult = {\n text?: string;\n finishReason?: string;\n totalUsage?: UsageLike | Promise<UsageLike>;\n usage?: UsageLike | Promise<UsageLike>;\n providerMetadata?: ProviderMetadataLike | Promise<ProviderMetadataLike>;\n response?: {\n id?: string;\n dbMessages?: MastraDBMessage[];\n };\n};\n\ntype ResponseStreamResult = {\n fullStream: ReadableStream<unknown> | Promise<ReadableStream<unknown>>;\n text: Promise<string> | string;\n finishReason: Promise<string | undefined> | string | undefined;\n totalUsage?: Promise<UsageLike> | UsageLike;\n usage?: Promise<UsageLike> | UsageLike;\n providerMetadata?: Promise<ProviderMetadataLike> | ProviderMetadataLike;\n response?:\n | Promise<{\n id?: string;\n dbMessages?: MastraDBMessage[];\n }>\n | {\n id?: string;\n dbMessages?: MastraDBMessage[];\n };\n};\n\ntype CompletedResponseState = {\n completedAt: number;\n status: ResponseObject['status'];\n text: string;\n usage: UsageLike;\n usageDetails: ResponseObject['usage'];\n providerOptions: ProviderMetadataLike;\n};\n\ntype FinalizedResponse = {\n completedState: CompletedResponseState;\n response: ResponseObject;\n responseMessages: MastraDBMessage[];\n};\n\ntype PreparedCreateResponseRequest = {\n agent: Agent<any, any, any, any>;\n agentMemoryStore: MemoryStorage | null;\n configuredTools: ReturnType<typeof mapMastraToolsToResponseTools>;\n createdAt: number;\n didStore: boolean;\n executionInput: AgentExecutionInput;\n previousResponseTurnRecord: ResponseTurnRecord | null;\n responseId: string;\n responseMetadata: Omit<\n ResponseTurnRecordMetadata,\n 'completedAt' | 'status' | 'usage' | 'providerOptions' | 'messageIds'\n >;\n threadContext: ThreadExecutionContext | null;\n};\n\nconst JSON_OBJECT_RESPONSE_SCHEMA = {\n type: 'object',\n additionalProperties: true,\n} as const;\n\nfunction jsonResponse(data: ResponseObject, status: number = 200): Response {\n return new Response(JSON.stringify(data), {\n status,\n headers: {\n 'Content-Type': 'application/json',\n },\n });\n}\n\nfunction createStructuredOutput(text: CreateResponseBody['text']) {\n if (!text) {\n return undefined;\n }\n\n switch (text.format.type) {\n case 'json_object':\n return {\n schema: JSON_OBJECT_RESPONSE_SCHEMA,\n jsonPromptInjection: true,\n };\n case 'json_schema':\n return {\n schema: text.format.schema,\n };\n default:\n return undefined;\n }\n}\n\nfunction getStreamedMessageOutputItem(response: ResponseObject, responseId: string) {\n return (\n response.output.find(\n (item): item is Extract<ResponseObject['output'][number], { type: 'message' }> =>\n item.type === 'message' && item.id === responseId,\n ) ??\n response.output.find(\n (item): item is Extract<ResponseObject['output'][number], { type: 'message' }> => item.type === 'message',\n ) ??\n null\n );\n}\n\n/**\n * Resolves the memory thread that should back the current response request.\n *\n * If `previous_response_id` is present, the request continues on that stored thread.\n * Otherwise, the route only creates or reuses a thread when the caller asked to store\n * the response and the resolved agent actually has memory configured.\n */\nasync function resolveThreadExecutionContext({\n agent,\n store,\n conversationId,\n previousResponseTurnRecord,\n requestContext,\n}: {\n agent: Agent<any, any, any, any>;\n store: boolean;\n conversationId?: string;\n previousResponseTurnRecord: ResponseTurnRecord | null;\n requestContext: RequestContext;\n}): Promise<ThreadExecutionContext | null> {\n if (conversationId && previousResponseTurnRecord && previousResponseTurnRecord.thread.id !== conversationId) {\n throw new HTTPException(400, {\n message:\n 'conversation_id and previous_response_id must reference the same conversation thread when both are provided',\n });\n }\n\n if (previousResponseTurnRecord) {\n return {\n threadId: previousResponseTurnRecord.thread.id,\n resourceId: previousResponseTurnRecord.thread.resourceId,\n };\n }\n\n const effectiveThreadId = getEffectiveThreadId(requestContext, undefined);\n const effectiveResourceId = getEffectiveResourceId(requestContext, undefined);\n\n if (!store && !conversationId && !effectiveThreadId) {\n return null;\n }\n\n const memory = await agent.getMemory({ requestContext });\n if (!memory) {\n if (conversationId) {\n throw new HTTPException(400, {\n message: 'conversation_id requires the target agent to have memory configured',\n });\n }\n\n return null;\n }\n\n if (conversationId) {\n const existingThread = await memory.getThreadById({ threadId: conversationId });\n if (!existingThread) {\n throw new HTTPException(404, { message: `Conversation ${conversationId} was not found` });\n }\n\n await validateThreadOwnership(existingThread, effectiveResourceId);\n return {\n threadId: existingThread.id,\n resourceId: effectiveResourceId ?? existingThread.resourceId,\n };\n }\n\n if (!effectiveThreadId) {\n if (!store) {\n return null;\n }\n\n const threadId = randomUUID();\n const createdThread = await memory.createThread({\n threadId,\n resourceId: effectiveResourceId ?? threadId,\n });\n\n return {\n threadId: createdThread.id,\n resourceId: createdThread.resourceId,\n };\n }\n\n const threadId = effectiveThreadId;\n const existingThread = await memory.getThreadById({ threadId });\n if (existingThread) {\n await validateThreadOwnership(existingThread, effectiveResourceId);\n return {\n threadId: existingThread.id,\n resourceId: effectiveResourceId ?? existingThread.resourceId,\n };\n }\n\n if (!store) {\n return null;\n }\n\n const resourceId = effectiveResourceId ?? threadId;\n const createdThread = await memory.createThread({\n threadId,\n resourceId,\n });\n\n return {\n threadId: createdThread.id,\n resourceId: createdThread.resourceId,\n };\n}\n\nfunction createExecutionMemory(threadContext: ThreadExecutionContext | null) {\n if (!threadContext) {\n return undefined;\n }\n\n return {\n memory: {\n thread: threadContext.threadId,\n resource: threadContext.resourceId,\n },\n } as const;\n}\n\n/**\n * Resolves the registered Mastra agent that owns the response request.\n */\nasync function resolveResponseAgent({\n mastra,\n agentId,\n}: {\n mastra: Mastra | undefined;\n agentId?: string;\n}): Promise<Agent<any, any, any, any>> {\n if (!agentId) {\n throw new HTTPException(400, {\n message: 'Responses requests require an agent_id',\n });\n }\n\n if (!mastra) {\n throw new HTTPException(500, { message: 'Mastra instance is required for agent-backed responses' });\n }\n\n return getAgentFromSystem({ mastra, agentId });\n}\n\nasync function resolveAgentMemoryStore({\n agent,\n requestContext,\n errorMessage,\n}: {\n agent: Agent<any, any, any, any>;\n requestContext: RequestContext;\n errorMessage: string;\n}): Promise<MemoryStorage> {\n const agentMemoryStore = await getAgentMemoryStore({ agent, requestContext });\n if (!agentMemoryStore) {\n throw new HTTPException(400, { message: errorMessage });\n }\n\n return agentMemoryStore;\n}\n\n/**\n * Executes a non-streaming Responses API request through the resolved Mastra agent.\n */\nasync function executeGenerate({\n agent,\n model,\n instructions,\n text,\n providerOptions,\n input,\n requestContext,\n abortSignal,\n threadContext,\n}: {\n agent: Agent;\n model: string;\n instructions: string | undefined;\n text: CreateResponseBody['text'];\n providerOptions: CreateResponseBody['providerOptions'];\n input: AgentExecutionInput;\n requestContext: RequestContext;\n abortSignal: AbortSignal;\n threadContext: ThreadExecutionContext | null;\n}) {\n const executionMemory = createExecutionMemory(threadContext);\n const structuredOutput = createStructuredOutput(text);\n const commonOptions = {\n instructions,\n requestContext,\n abortSignal,\n model,\n structuredOutput,\n providerOptions,\n ...(executionMemory ?? {}),\n };\n const resolvedModel = await agent.getModel({ requestContext, modelConfig: model });\n\n if (resolvedModel.specificationVersion === 'v1') {\n if (threadContext) {\n return (await agent.generateLegacy(input, {\n instructions,\n requestContext,\n abortSignal,\n model,\n output: structuredOutput?.schema,\n providerOptions,\n resourceId: threadContext.resourceId,\n threadId: threadContext.threadId,\n } as never)) as ResponseExecutionResult;\n }\n\n return (await agent.generateLegacy(input, {\n instructions,\n requestContext,\n abortSignal,\n model,\n output: structuredOutput?.schema,\n providerOptions,\n } as never)) as ResponseExecutionResult;\n }\n\n return (await agent.generate(input, commonOptions as never)) as ResponseExecutionResult;\n}\n\n/**\n * Executes a streaming Responses API request through the resolved Mastra agent.\n */\nasync function executeStream({\n agent,\n model,\n instructions,\n text,\n providerOptions,\n input,\n requestContext,\n abortSignal,\n threadContext,\n}: {\n agent: Agent;\n model: string;\n instructions: string | undefined;\n text: CreateResponseBody['text'];\n providerOptions: CreateResponseBody['providerOptions'];\n input: AgentExecutionInput;\n requestContext: RequestContext;\n abortSignal: AbortSignal;\n threadContext: ThreadExecutionContext | null;\n}) {\n const executionMemory = createExecutionMemory(threadContext);\n const structuredOutput = createStructuredOutput(text);\n const commonOptions = {\n instructions,\n requestContext,\n abortSignal,\n model,\n structuredOutput,\n providerOptions,\n ...(executionMemory ?? {}),\n };\n const resolvedModel = await agent.getModel({ requestContext, modelConfig: model });\n\n if (resolvedModel.specificationVersion === 'v1') {\n if (threadContext) {\n return (await agent.streamLegacy(input, {\n instructions,\n requestContext,\n abortSignal,\n model,\n output: structuredOutput?.schema,\n providerOptions,\n resourceId: threadContext.resourceId,\n threadId: threadContext.threadId,\n } as never)) as ResponseStreamResult;\n }\n\n return (await agent.streamLegacy(input, {\n instructions,\n requestContext,\n abortSignal,\n model,\n output: structuredOutput?.schema,\n providerOptions,\n } as never)) as ResponseStreamResult;\n }\n\n return (await agent.stream(input, commonOptions as never)) as ResponseStreamResult;\n}\n\nasync function resolveUsage(result: ResponseExecutionResult | ResponseStreamResult): Promise<UsageLike> {\n return (await (result.totalUsage ?? result.usage ?? null)) as UsageLike;\n}\n\nasync function resolveProviderMetadata(\n result: ResponseExecutionResult | ResponseStreamResult,\n): Promise<ProviderMetadataLike> {\n return (await (result.providerMetadata ?? undefined)) as ProviderMetadataLike;\n}\n\nasync function resolveFinishReason(\n result: ResponseExecutionResult | ResponseStreamResult,\n): Promise<string | undefined> {\n return (await result.finishReason) ?? undefined;\n}\n\nasync function resolveText(result: ResponseExecutionResult | ResponseStreamResult): Promise<string> {\n return (await result.text) ?? '';\n}\n\n/**\n * Resolves the final response state shared by streaming and non-streaming flows.\n */\nasync function resolveCompletedResponseState(\n result: ResponseExecutionResult | ResponseStreamResult,\n fallbackText: string,\n): Promise<CompletedResponseState> {\n const usage = await resolveUsage(result);\n\n return {\n completedAt: Math.floor(Date.now() / 1000),\n status: toResponseStatus(await resolveFinishReason(result)),\n text: (await resolveText(result)) || fallbackText,\n usage,\n usageDetails: toResponseUsage(usage),\n providerOptions: await resolveProviderMetadata(result),\n };\n}\n\n/**\n * Stores the completed response when the request opted into memory-backed persistence.\n */\nasync function storeCompletedResponse({\n agentMemoryStore,\n didStore,\n threadContext,\n responseId,\n metadata,\n completedState,\n messages,\n}: {\n agentMemoryStore: MemoryStorage | null;\n didStore: boolean;\n threadContext: ThreadExecutionContext | null;\n responseId: string;\n metadata: Omit<ResponseTurnRecordMetadata, 'completedAt' | 'status' | 'usage' | 'providerOptions' | 'messageIds'>;\n completedState: CompletedResponseState;\n messages: MastraDBMessage[];\n}): Promise<void> {\n if (!didStore || !threadContext) {\n return;\n }\n\n await persistResponseTurnRecord({\n memoryStore: agentMemoryStore,\n responseId,\n metadata: {\n ...metadata,\n completedAt: completedState.completedAt,\n status: completedState.status,\n usage: completedState.usageDetails,\n providerOptions: completedState.providerOptions,\n messageIds: [],\n },\n threadContext,\n messages,\n });\n}\n\n/**\n * Resolves the final response object and persists the stored response turn when needed.\n */\nasync function finalizeResponse({\n agentMemoryStore,\n didStore,\n threadContext,\n result,\n responseId,\n createdAt,\n model,\n instructions,\n previousResponseId,\n conversationId,\n configuredTools,\n responseMetadata,\n fallbackText,\n}: {\n agentMemoryStore: MemoryStorage | null;\n didStore: boolean;\n threadContext: ThreadExecutionContext | null;\n result: ResponseExecutionResult | ResponseStreamResult;\n responseId: string;\n createdAt: number;\n model: string;\n instructions: string | undefined;\n previousResponseId?: string;\n conversationId?: string;\n configuredTools: ReturnType<typeof mapMastraToolsToResponseTools>;\n responseMetadata: Omit<\n ResponseTurnRecordMetadata,\n 'completedAt' | 'status' | 'usage' | 'providerOptions' | 'messageIds'\n >;\n fallbackText: string;\n}): Promise<FinalizedResponse> {\n const completedState = await resolveCompletedResponseState(result, fallbackText);\n const responseMessages = await resolveResponseTurnMessagesForStorage({\n result,\n responseId,\n text: completedState.text,\n threadContext,\n });\n const response = buildCompletedResponse({\n responseId,\n outputMessageId: responseId,\n model,\n createdAt,\n completedAt: completedState.completedAt,\n status: completedState.status,\n text: completedState.text,\n usage: completedState.usage,\n instructions,\n textConfig: responseMetadata.text,\n previousResponseId,\n conversationId,\n providerOptions: completedState.providerOptions,\n tools: configuredTools,\n messages: responseMessages,\n store: didStore,\n });\n\n await storeCompletedResponse({\n agentMemoryStore,\n didStore,\n threadContext,\n responseId,\n metadata: responseMetadata,\n completedState,\n messages: responseMessages,\n });\n\n return { completedState, response, responseMessages };\n}\n\n/**\n * Resolves all request-scoped Mastra primitives needed to execute a Responses create\n * call: the owning agent, the memory thread context, the normalized execution input,\n * and the response-turn metadata that may be persisted later.\n */\nasync function prepareCreateResponseRequest({\n body,\n mastra,\n requestContext,\n}: {\n body: CreateResponseBody;\n mastra: Mastra | undefined;\n requestContext: RequestContext;\n}): Promise<PreparedCreateResponseRequest> {\n const executionInput = mapResponseInputToExecutionMessages(body.input) as AgentExecutionInput;\n const agent = await resolveResponseAgent({\n mastra,\n agentId: body.agent_id,\n });\n const shouldStore = body.store ?? false;\n const needsMemoryStore = shouldStore || Boolean(body.conversation_id) || Boolean(body.previous_response_id);\n const agentMemoryStore = needsMemoryStore\n ? await resolveAgentMemoryStore({\n agent,\n requestContext,\n errorMessage: body.previous_response_id\n ? 'previous_response_id requires the target agent to have memory storage configured'\n : shouldStore\n ? 'Stored responses require the target agent to have memory storage configured'\n : 'conversation_id requires the target agent to have memory storage configured',\n })\n : null;\n const previousResponseTurnRecord = body.previous_response_id\n ? await findResponseTurnRecord({ agent, responseId: body.previous_response_id, requestContext })\n : null;\n\n if (body.previous_response_id && !previousResponseTurnRecord) {\n throw new HTTPException(404, { message: `Stored response ${body.previous_response_id} was not found` });\n }\n\n const configuredTools = mapMastraToolsToResponseTools(\n (await Promise.resolve(agent.listTools({ requestContext }))) as Record<string, unknown>,\n );\n\n const responseId = createMessageId();\n const createdAt = Math.floor(Date.now() / 1000);\n const threadContext = await resolveThreadExecutionContext({\n agent,\n store: shouldStore,\n conversationId: body.conversation_id,\n previousResponseTurnRecord,\n requestContext,\n });\n\n if (shouldStore && !threadContext) {\n throw new HTTPException(400, {\n message: 'Stored responses require the target agent to have memory configured',\n });\n }\n\n const didStore = shouldStore && Boolean(threadContext);\n\n return {\n agent,\n agentMemoryStore,\n configuredTools,\n createdAt,\n didStore,\n executionInput,\n previousResponseTurnRecord,\n responseId,\n responseMetadata: {\n agentId: agent.id,\n model: body.model,\n createdAt,\n instructions: body.instructions,\n text: body.text,\n previousResponseId: previousResponseTurnRecord?.message.id ?? body.previous_response_id,\n tools: configuredTools,\n store: didStore,\n },\n threadContext,\n };\n}\n\n/**\n * Bridges a Mastra agent stream into OpenAI-style Responses SSE events and completes\n * the stored response-turn record when the stream finishes.\n */\nfunction createResponseEventStream({\n agentMemoryStore,\n body,\n configuredTools,\n createdAt,\n didStore,\n previousResponseTurnRecord,\n responseId,\n responseMetadata,\n streamResult,\n threadContext,\n}: {\n agentMemoryStore: MemoryStorage | null;\n body: CreateResponseBody;\n configuredTools: ReturnType<typeof mapMastraToolsToResponseTools>;\n createdAt: number;\n didStore: boolean;\n previousResponseTurnRecord: ResponseTurnRecord | null;\n responseId: string;\n responseMetadata: Omit<\n ResponseTurnRecordMetadata,\n 'completedAt' | 'status' | 'usage' | 'providerOptions' | 'messageIds'\n >;\n streamResult: ResponseStreamResult;\n threadContext: ThreadExecutionContext | null;\n}) {\n const createdResponse = buildInProgressResponse({\n responseId,\n model: body.model,\n createdAt,\n instructions: body.instructions,\n textConfig: body.text,\n previousResponseId: body.previous_response_id,\n conversationId: threadContext?.threadId ?? body.conversation_id,\n tools: configuredTools,\n store: didStore,\n });\n\n return new ReadableStream<Uint8Array>({\n async start(controller) {\n let sequenceNumber = 1;\n const enqueueEvent = (eventName: string, payload: Record<string, unknown>) => {\n controller.enqueue(\n formatSseEvent(eventName, {\n ...payload,\n sequence_number: sequenceNumber++,\n }),\n );\n };\n\n enqueueEvent('response.created', {\n type: 'response.created',\n response: createdResponse,\n });\n enqueueEvent('response.in_progress', {\n type: 'response.in_progress',\n response: createdResponse,\n });\n enqueueEvent('response.output_item.added', {\n type: 'response.output_item.added',\n output_index: 0,\n item: {\n id: responseId,\n type: 'message',\n role: 'assistant',\n status: 'in_progress',\n content: [],\n },\n });\n enqueueEvent('response.content_part.added', {\n type: 'response.content_part.added',\n output_index: 0,\n content_index: 0,\n item_id: responseId,\n part: createOutputTextPart(''),\n });\n\n let text = '';\n const fullStream = await streamResult.fullStream;\n const reader = fullStream.getReader();\n\n try {\n while (true) {\n const { done, value } = await reader.read();\n if (done) {\n break;\n }\n\n const delta = extractTextDelta(value);\n if (delta) {\n text += delta;\n enqueueEvent('response.output_text.delta', {\n type: 'response.output_text.delta',\n output_index: 0,\n content_index: 0,\n item_id: responseId,\n delta,\n });\n }\n }\n\n const { completedState, response } = await finalizeResponse({\n agentMemoryStore,\n didStore,\n threadContext,\n result: streamResult,\n responseId,\n createdAt,\n model: body.model,\n instructions: body.instructions,\n previousResponseId: previousResponseTurnRecord?.message.id ?? body.previous_response_id,\n conversationId: threadContext?.threadId ?? body.conversation_id,\n configuredTools,\n responseMetadata,\n fallbackText: text,\n });\n enqueueEvent('response.output_text.done', {\n type: 'response.output_text.done',\n output_index: 0,\n content_index: 0,\n item_id: responseId,\n text: completedState.text,\n });\n\n const completedItem = getStreamedMessageOutputItem(response, responseId) ?? {\n id: responseId,\n type: 'message' as const,\n role: 'assistant' as const,\n status: 'completed' as const,\n content: [createOutputTextPart(completedState.text)],\n };\n\n enqueueEvent('response.content_part.done', {\n type: 'response.content_part.done',\n output_index: 0,\n content_index: 0,\n item_id: responseId,\n part: createOutputTextPart(completedState.text),\n });\n enqueueEvent('response.output_item.done', {\n type: 'response.output_item.done',\n output_index: 0,\n item: completedItem,\n });\n enqueueEvent('response.completed', {\n type: 'response.completed',\n response,\n });\n controller.close();\n } catch (error) {\n controller.error(error);\n } finally {\n reader.releaseLock();\n }\n },\n });\n}\n\nexport const CREATE_RESPONSE_ROUTE = createRoute({\n method: 'POST',\n path: '/v1/responses',\n responseType: 'datastream-response',\n bodySchema: createResponseBodySchema,\n responseSchema: responseObjectSchema,\n summary: 'Create a response',\n description: 'Creates a response through a Mastra-hosted Responses API-compatible route',\n tags: ['Responses'],\n requiresAuth: true,\n requiresPermission: 'agents:execute',\n handler: async ({ mastra, requestContext, abortSignal, ...body }) => {\n try {\n const {\n agent,\n agentMemoryStore,\n configuredTools,\n createdAt,\n didStore,\n executionInput,\n previousResponseTurnRecord,\n responseId,\n responseMetadata,\n threadContext,\n } = await prepareCreateResponseRequest({ body, mastra, requestContext });\n\n if (!body.stream) {\n const result = await executeGenerate({\n agent,\n model: body.model,\n instructions: body.instructions,\n text: body.text,\n providerOptions: body.providerOptions,\n input: executionInput,\n requestContext,\n abortSignal,\n threadContext,\n });\n\n const { response } = await finalizeResponse({\n agentMemoryStore,\n didStore,\n threadContext,\n result,\n responseId,\n createdAt,\n model: body.model,\n instructions: body.instructions,\n previousResponseId: previousResponseTurnRecord?.message.id ?? body.previous_response_id,\n conversationId: threadContext?.threadId ?? body.conversation_id,\n configuredTools,\n responseMetadata,\n fallbackText: '',\n });\n\n return jsonResponse(response);\n }\n\n const streamResult = await executeStream({\n agent,\n model: body.model,\n instructions: body.instructions,\n text: body.text,\n providerOptions: body.providerOptions,\n input: executionInput,\n requestContext,\n abortSignal,\n threadContext,\n });\n\n const stream = createResponseEventStream({\n agentMemoryStore,\n body,\n configuredTools,\n createdAt,\n didStore,\n previousResponseTurnRecord,\n responseId,\n responseMetadata,\n streamResult,\n threadContext,\n });\n\n return new Response(stream, {\n headers: {\n 'Content-Type': 'text/event-stream; charset=utf-8',\n 'Cache-Control': 'no-cache',\n Connection: 'keep-alive',\n 'X-Accel-Buffering': 'no',\n },\n });\n } catch (error) {\n return handleError(error, 'Error creating response');\n }\n },\n});\n\nexport const GET_RESPONSE_ROUTE = createRoute({\n method: 'GET',\n path: '/v1/responses/:responseId',\n responseType: 'json',\n pathParamSchema: responseIdPathParams,\n responseSchema: responseObjectSchema,\n summary: 'Retrieve a stored response',\n description: 'Returns a previously stored response object',\n tags: ['Responses'],\n requiresAuth: true,\n requiresPermission: 'agents:read',\n handler: async ({ mastra, requestContext, responseId }) => {\n try {\n const responseTurnRecord = await findResponseTurnRecordAcrossAgents({ mastra, responseId, requestContext });\n if (!responseTurnRecord) {\n throw new HTTPException(404, { message: `Stored response ${responseId} was not found` });\n }\n\n return mapResponseTurnRecordToResponse(responseTurnRecord);\n } catch (error) {\n return handleError(error, 'Error retrieving response');\n }\n },\n});\n\nexport const DELETE_RESPONSE_ROUTE = createRoute({\n method: 'DELETE',\n path: '/v1/responses/:responseId',\n responseType: 'json',\n pathParamSchema: responseIdPathParams,\n responseSchema: deleteResponseSchema,\n summary: 'Delete a stored response',\n description: 'Deletes a stored response so it can no longer be retrieved or chained',\n tags: ['Responses'],\n requiresAuth: true,\n requiresPermission: 'agents:delete',\n handler: async ({ mastra, requestContext, responseId }) => {\n try {\n const responseTurnRecord = await findResponseTurnRecordAcrossAgents({ mastra, responseId, requestContext });\n if (!responseTurnRecord) {\n throw new HTTPException(404, { message: `Stored response ${responseId} was not found` });\n }\n\n await deleteResponseTurnRecord({ responseTurnRecord });\n\n const response: DeleteResponse = {\n id: responseId,\n object: 'response',\n deleted: true,\n };\n\n return response;\n } catch (error) {\n return handleError(error, 'Error deleting response');\n }\n },\n});\n"]}
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkVOCNBP5Q_cjs = require('./chunk-VOCNBP5Q.cjs');
3
+ var chunkHUWHY7SC_cjs = require('./chunk-HUWHY7SC.cjs');
4
4
  var chunkVTPTMQFA_cjs = require('./chunk-VTPTMQFA.cjs');
5
5
  var chunkWC4OPIB4_cjs = require('./chunk-WC4OPIB4.cjs');
6
6
  var chunkZKMVCV4G_cjs = require('./chunk-ZKMVCV4G.cjs');
@@ -176,7 +176,7 @@ var GET_AGENT_TOOL_ROUTE = chunkEGSCXVMR_cjs.createRoute({
176
176
  if (!agentId) {
177
177
  throw new chunk64ITUOXI_cjs.HTTPException(400, { message: "Agent ID is required" });
178
178
  }
179
- const agent = await chunkVOCNBP5Q_cjs.getAgentFromSystem({ mastra, agentId });
179
+ const agent = await chunkHUWHY7SC_cjs.getAgentFromSystem({ mastra, agentId });
180
180
  const agentTools = await agent.listTools({ requestContext });
181
181
  const tool = Object.values(agentTools || {}).find((tool2) => tool2.id === toolId);
182
182
  if (!tool) {
@@ -204,7 +204,7 @@ var EXECUTE_AGENT_TOOL_ROUTE = chunkEGSCXVMR_cjs.createRoute({
204
204
  if (!agentId) {
205
205
  throw new chunk64ITUOXI_cjs.HTTPException(400, { message: "Agent ID is required" });
206
206
  }
207
- const agent = await chunkVOCNBP5Q_cjs.getAgentFromSystem({ mastra, agentId });
207
+ const agent = await chunkHUWHY7SC_cjs.getAgentFromSystem({ mastra, agentId });
208
208
  const agentTools = await agent.listTools({ requestContext });
209
209
  const tool = Object.values(agentTools || {}).find((tool2) => tool2.id === toolId);
210
210
  if (!tool) {
@@ -232,5 +232,5 @@ exports.GET_AGENT_TOOL_ROUTE = GET_AGENT_TOOL_ROUTE;
232
232
  exports.GET_TOOL_BY_ID_ROUTE = GET_TOOL_BY_ID_ROUTE;
233
233
  exports.LIST_TOOLS_ROUTE = LIST_TOOLS_ROUTE;
234
234
  exports.tools_exports = tools_exports;
235
- //# sourceMappingURL=chunk-SCEPRIRF.cjs.map
236
- //# sourceMappingURL=chunk-SCEPRIRF.cjs.map
235
+ //# sourceMappingURL=chunk-X2IFWP5E.cjs.map
236
+ //# sourceMappingURL=chunk-X2IFWP5E.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/server/handlers/tools.ts"],"names":["__export","standardSchemaToJSONSchema","toStandardSchema5","stringify","isProviderDefinedTool","createRoute","listToolsResponseSchema","handleError","toolIdPathParams","serializedToolSchema","HTTPException","optionalRunIdSchema","executeToolContextBodySchema","executeToolResponseSchema","validateBody","isVercelTool","agentToolPathParams","getAgentFromSystem","tool","executeToolBodySchema"],"mappings":";;;;;;;;;;;;;;AAAA,IAAA,aAAA,GAAA;AAAAA,0BAAA,CAAA,aAAA,EAAA;AAAA,EAAA,wBAAA,EAAA,MAAA,wBAAA;AAAA,EAAA,kBAAA,EAAA,MAAA,kBAAA;AAAA,EAAA,oBAAA,EAAA,MAAA,oBAAA;AAAA,EAAA,oBAAA,EAAA,MAAA,oBAAA;AAAA,EAAA,gBAAA,EAAA,MAAA;AAAA,CAAA,CAAA;AAyBA,SAAS,kBAAkB,MAAA,EAA0B;AACnD,EAAA,IAAI,OAAO,WAAW,UAAA,EAAY;AAChC,IAAA,OAAO,iBAAA,CAAkB,QAAQ,CAAA;AAAA,EACnC;AACA,EAAA,OAAO,MAAA;AACT;AAEA,SAAS,mBAAmB,MAAA,EAA2C;AACrE,EAAA,IAAI,CAAC,MAAA,EAAQ;AACX,IAAA,OAAO,MAAA;AAAA,EACT;AAEA,EAAA,OAAOC,6CAA2BC,mCAAA,CAAiB,MAAM,GAAG,EAAE,MAAA,EAAQ,iBAAiB,CAAA;AACzF;AAEA,SAAS,gBAAgB,MAAA,EAAqC;AAC5D,EAAA,MAAM,UAAA,GAAa,kBAAA,CAAmB,iBAAA,CAAkB,MAAM,CAAsC,CAAA;AACpG,EAAA,IAAI,UAAA,KAAe,QAAW,OAAO,MAAA;AACrC,EAAA,OAAOC,4BAAU,UAAU,CAAA;AAC7B;AAMA,SAAS,cAAc,IAAA,EAAgB;AAIrC,EAAA,IAAIC,2BAAA,CAAsB,IAAI,CAAA,EAAG;AAC/B,IAAA,MAAM,aAAA,GAAgB,iBAAA,CAAkB,IAAA,CAAK,WAAW,CAAA;AACxD,IAAA,MAAM,cAAA,GAAiB,iBAAA,CAAkB,IAAA,CAAK,YAAY,CAAA;AAC1D,IAAA,OAAO;AAAA,MACL,GAAG,IAAA;AAAA,MACH,WAAA,EACE,aAAA,IAAiB,OAAO,aAAA,KAAkB,QAAA,IAAY,gBAAgB,aAAA,GAClED,2BAAA,CAAU,aAAA,CAAc,UAAU,CAAA,GAClC,MAAA;AAAA,MACN,YAAA,EACE,cAAA,IAAkB,OAAO,cAAA,KAAmB,QAAA,IAAY,gBAAgB,cAAA,GACpEA,2BAAA,CAAU,cAAA,CAAe,UAAU,CAAA,GACnC;AAAA,KACR;AAAA,EACF;AAEA,EAAA,OAAO;AAAA,IACL,GAAG,IAAA;AAAA,IACH,WAAA,EAAa,eAAA,CAAgB,IAAA,CAAK,WAAW,CAAA;AAAA,IAC7C,YAAA,EAAc,eAAA,CAAgB,IAAA,CAAK,YAAY,CAAA;AAAA,IAC/C,oBAAA,EAAsB,eAAA,CAAgB,IAAA,CAAK,oBAAoB;AAAA,GACjE;AACF;AAMO,IAAM,mBAAmBE,6BAAA,CAAY;AAAA,EAC1C,MAAA,EAAQ,KAAA;AAAA,EACR,IAAA,EAAM,QAAA;AAAA,EACN,YAAA,EAAc,MAAA;AAAA,EACd,cAAA,EAAgBC,yCAAA;AAAA,EAChB,OAAA,EAAS,gBAAA;AAAA,EACT,WAAA,EAAa,qDAAA;AAAA,EACb,IAAA,EAAM,CAAC,OAAO,CAAA;AAAA,EACd,YAAA,EAAc,IAAA;AAAA,EACd,OAAA,EAAS,OAAO,EAAE,MAAA,EAAQ,iBAAgB,KAAM;AAC9C,IAAA,IAAI;AACF,MAAA,MAAM,QAAA,GACJ,eAAA,IAAmB,MAAA,CAAO,IAAA,CAAK,eAAe,CAAA,CAAE,MAAA,GAAS,CAAA,GAAI,eAAA,GAAkB,MAAA,CAAO,SAAA,EAAU,IAAK,EAAC;AAExG,MAAA,MAAM,eAAA,GAAkB,MAAA,CAAO,OAAA,CAAQ,QAAQ,CAAA,CAAE,MAAA;AAAA,QAC/C,CAAC,GAAA,EAAK,CAAC,EAAA,EAAI,KAAK,CAAA,KAAM;AACpB,UAAA,GAAA,CAAI,EAAE,CAAA,GAAI,aAAA,CAAc,KAAK,CAAA;AAC7B,UAAA,OAAO,GAAA;AAAA,QACT,CAAA;AAAA,QACA;AAAC,OACH;AAEA,MAAA,OAAO,eAAA;AAAA,IACT,SAAS,KAAA,EAAO;AACd,MAAA,OAAOC,6BAAA,CAAY,OAAO,qBAAqB,CAAA;AAAA,IACjD;AAAA,EACF;AACF,CAAC;AAEM,IAAM,uBAAuBF,6BAAA,CAAY;AAAA,EAC9C,MAAA,EAAQ,KAAA;AAAA,EACR,IAAA,EAAM,gBAAA;AAAA,EACN,YAAA,EAAc,MAAA;AAAA,EACd,eAAA,EAAiBG,kCAAA;AAAA,EACjB,cAAA,EAAgBC,sCAAA;AAAA,EAChB,OAAA,EAAS,gBAAA;AAAA,EACT,WAAA,EAAa,4EAAA;AAAA,EACb,IAAA,EAAM,CAAC,OAAO,CAAA;AAAA,EACd,YAAA,EAAc,IAAA;AAAA,EACd,SAAS,OAAO,EAAE,MAAA,EAAQ,eAAA,EAAiB,QAAO,KAAM;AACtD,IAAA,IAAI;AACF,MAAA,IAAI,IAAA;AAGJ,MAAA,IAAI,mBAAmB,MAAA,CAAO,IAAA,CAAK,eAAe,CAAA,CAAE,SAAS,CAAA,EAAG;AAC9D,QAAA,IAAA,GAAO,MAAA,CAAO,OAAO,eAAe,CAAA,CAAE,KAAK,CAAC,CAAA,KAAW,CAAA,CAAE,EAAA,KAAO,MAAM,CAAA;AAAA,MACxE,CAAA,MAAO;AACL,QAAA,IAAA,GAAO,MAAA,CAAO,YAAY,MAAM,CAAA;AAAA,MAClC;AAEA,MAAA,IAAI,CAAC,IAAA,EAAM;AACT,QAAA,MAAM,IAAIC,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,kBAAkB,CAAA;AAAA,MAC5D;AAEA,MAAA,OAAO,cAAc,IAAI,CAAA;AAAA,IAC3B,SAAS,KAAA,EAAO;AACd,MAAA,OAAOH,6BAAA,CAAY,OAAO,oBAAoB,CAAA;AAAA,IAChD;AAAA,EACF;AACF,CAAC;AAEM,IAAM,qBAAqBF,6BAAA,CAAY;AAAA,EAC5C,MAAA,EAAQ,MAAA;AAAA,EACR,IAAA,EAAM,wBAAA;AAAA,EACN,YAAA,EAAc,MAAA;AAAA,EACd,eAAA,EAAiBG,kCAAA;AAAA,EACjB,gBAAA,EAAkBG,qCAAA;AAAA,EAClB,UAAA,EAAYC,8CAAA;AAAA,EACZ,cAAA,EAAgBC,2CAAA;AAAA,EAChB,OAAA,EAAS,cAAA;AAAA,EACT,WAAA,EAAa,uDAAA;AAAA,EACb,IAAA,EAAM,CAAC,OAAO,CAAA;AAAA,EACd,YAAA,EAAc,IAAA;AAAA,EACd,OAAA,EAAS,OAAO,EAAE,MAAA,EAAQ,KAAA,EAAO,QAAQ,eAAA,EAAiB,cAAA,EAAgB,GAAG,UAAA,EAAW,KAAM;AAC5F,IAAA,IAAI;AACF,MAAA,IAAI,CAAC,MAAA,EAAQ;AACX,QAAA,MAAM,IAAIH,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,uBAAuB,CAAA;AAAA,MACjE;AAEA,MAAA,IAAI,IAAA;AAGJ,MAAA,IAAI,mBAAmB,MAAA,CAAO,IAAA,CAAK,eAAe,CAAA,CAAE,SAAS,CAAA,EAAG;AAC9D,QAAA,IAAA,GAAO,MAAA,CAAO,OAAO,eAAe,CAAA,CAAE,KAAK,CAAC,CAAA,KAAW,CAAA,CAAE,EAAA,KAAO,MAAM,CAAA;AAAA,MACxE,CAAA,MAAO;AACL,QAAA,IAAA,GAAO,MAAA,CAAO,YAAY,MAAM,CAAA;AAAA,MAClC;AAEA,MAAA,IAAI,CAAC,IAAA,EAAM;AACT,QAAA,MAAM,IAAIA,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,kBAAkB,CAAA;AAAA,MAC5D;AAEA,MAAA,IAAI,CAAC,MAAM,OAAA,EAAS;AAClB,QAAA,MAAM,IAAIA,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,0BAA0B,CAAA;AAAA,MACpE;AAEA,MAAA,MAAM,EAAE,MAAK,GAAI,UAAA;AAEjB,MAAAI,8BAAA,CAAa,EAAE,MAAM,CAAA;AAErB,MAAA,IAAI,MAAA;AACJ,MAAA,IAAIC,kBAAA,CAAa,IAAI,CAAA,EAAG;AACtB,QAAA,MAAA,GAAS,MAAO,IAAA,CAAa,OAAA,CAAQ,IAAI,CAAA;AAAA,MAC3C,CAAA,MAAO;AACL,QAAA,MAAA,GAAS,MAAM,IAAA,CAAK,OAAA,CAAQ,IAAA,EAAO;AAAA,UACjC,MAAA;AAAA,UACA,cAAA;AAAA;AAAA,UAEA,cAAA,EAAgB,EAAE,WAAA,EAAa,MAAA,EAAU;AAAA,UACzC,GAAI,KAAA,GACA;AAAA,YACE,QAAA,EAAU;AAAA,cACR,KAAA;AAAA,cACA,SAAS,YAAY;AAAA,cAAC;AAAA;AACxB,cAEF;AAAC,SACN,CAAA;AAAA,MACH;AAEA,MAAA,OAAO,MAAA;AAAA,IACT,SAAS,KAAA,EAAO;AACd,MAAA,OAAOR,6BAAA,CAAY,OAAO,sBAAsB,CAAA;AAAA,IAClD;AAAA,EACF;AACF,CAAC;AAMM,IAAM,uBAAuBF,6BAAA,CAAY;AAAA,EAC9C,MAAA,EAAQ,KAAA;AAAA,EACR,IAAA,EAAM,gCAAA;AAAA,EACN,YAAA,EAAc,MAAA;AAAA,EACd,eAAA,EAAiBW,qCAAA;AAAA,EACjB,cAAA,EAAgBP,sCAAA;AAAA,EAChB,OAAA,EAAS,gBAAA;AAAA,EACT,WAAA,EAAa,2DAAA;AAAA,EACb,IAAA,EAAM,CAAC,QAAA,EAAU,OAAO,CAAA;AAAA,EACxB,YAAA,EAAc,IAAA;AAAA,EACd,SAAS,OAAO,EAAE,QAAQ,OAAA,EAAS,MAAA,EAAQ,gBAAe,KAAM;AAC9D,IAAA,IAAI;AACF,MAAA,IAAI,CAAC,OAAA,EAAS;AACZ,QAAA,MAAM,IAAIC,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,wBAAwB,CAAA;AAAA,MAClE;AACA,MAAA,MAAM,QAAQ,MAAMO,oCAAA,CAAmB,EAAE,MAAA,EAAQ,SAAS,CAAA;AAE1D,MAAA,MAAM,aAAa,MAAM,KAAA,CAAM,SAAA,CAAU,EAAE,gBAAgB,CAAA;AAE3D,MAAA,MAAM,IAAA,GAAO,MAAA,CAAO,MAAA,CAAO,UAAA,IAAc,EAAE,CAAA,CAAE,IAAA,CAAK,CAACC,KAAAA,KAAcA,KAAAA,CAAK,EAAA,KAAO,MAAM,CAAA;AAEnF,MAAA,IAAI,CAAC,IAAA,EAAM;AACT,QAAA,MAAM,IAAIR,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,kBAAkB,CAAA;AAAA,MAC5D;AAEA,MAAA,OAAO,cAAc,IAAI,CAAA;AAAA,IAC3B,SAAS,KAAA,EAAO;AACd,MAAA,OAAOH,6BAAA,CAAY,OAAO,0BAA0B,CAAA;AAAA,IACtD;AAAA,EACF;AACF,CAAC;AAEM,IAAM,2BAA2BF,6BAAA,CAAY;AAAA,EAClD,MAAA,EAAQ,MAAA;AAAA,EACR,IAAA,EAAM,wCAAA;AAAA,EACN,YAAA,EAAc,MAAA;AAAA,EACd,eAAA,EAAiBW,qCAAA;AAAA,EACjB,UAAA,EAAYG,uCAAA;AAAA,EACZ,cAAA,EAAgBN,2CAAA;AAAA,EAChB,OAAA,EAAS,oBAAA;AAAA,EACT,WAAA,EAAa,6EAAA;AAAA,EACb,IAAA,EAAM,CAAC,QAAA,EAAU,OAAO,CAAA;AAAA,EACxB,YAAA,EAAc,IAAA;AAAA,EACd,OAAA,EAAS,OAAO,EAAE,MAAA,EAAQ,SAAS,MAAA,EAAQ,IAAA,EAAM,gBAAe,KAAM;AACpE,IAAA,IAAI;AACF,MAAA,IAAI,CAAC,OAAA,EAAS;AACZ,QAAA,MAAM,IAAIH,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,wBAAwB,CAAA;AAAA,MAClE;AACA,MAAA,MAAM,QAAQ,MAAMO,oCAAA,CAAmB,EAAE,MAAA,EAAQ,SAAS,CAAA;AAE1D,MAAA,MAAM,aAAa,MAAM,KAAA,CAAM,SAAA,CAAU,EAAE,gBAAgB,CAAA;AAE3D,MAAA,MAAM,IAAA,GAAO,MAAA,CAAO,MAAA,CAAO,UAAA,IAAc,EAAE,CAAA,CAAE,IAAA,CAAK,CAACC,KAAAA,KAAcA,KAAAA,CAAK,EAAA,KAAO,MAAM,CAAA;AAEnF,MAAA,IAAI,CAAC,IAAA,EAAM;AACT,QAAA,MAAM,IAAIR,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,kBAAkB,CAAA;AAAA,MAC5D;AAEA,MAAA,IAAI,CAAC,MAAM,OAAA,EAAS;AAClB,QAAA,MAAM,IAAIA,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,0BAA0B,CAAA;AAAA,MACpE;AAEA,MAAA,MAAM,MAAA,GAAS,MAAM,IAAA,CAAK,OAAA,CAAQ,IAAA,EAAM;AAAA,QACtC,MAAA;AAAA,QACA,cAAA;AAAA;AAAA,QAEA,cAAA,EAAgB,EAAE,WAAA,EAAa,MAAA;AAAU,OAC1C,CAAA;AAED,MAAA,OAAO,MAAA;AAAA,IACT,SAAS,KAAA,EAAO;AACd,MAAA,OAAOH,6BAAA,CAAY,OAAO,4BAA4B,CAAA;AAAA,IACxD;AAAA,EACF;AACF,CAAC","file":"chunk-SCEPRIRF.cjs","sourcesContent":["import { isVercelTool, isProviderDefinedTool } from '@mastra/core/tools';\nimport { toStandardSchema, standardSchemaToJSONSchema } from '@mastra/schema-compat/schema';\nimport type { PublicSchema } from '@mastra/schema-compat/schema';\nimport { stringify } from 'superjson';\nimport { HTTPException } from '../http-exception';\nimport {\n executeToolContextBodySchema,\n executeToolResponseSchema,\n listToolsResponseSchema,\n serializedToolSchema,\n toolIdPathParams,\n agentToolPathParams,\n executeToolBodySchema,\n} from '../schemas/agents';\nimport { optionalRunIdSchema } from '../schemas/common';\nimport { createRoute } from '../server-adapter/routes/route-builder';\n\nimport { getAgentFromSystem } from './agents';\nimport { handleError } from './error';\nimport { validateBody } from './utils';\n\n/**\n * Resolves a schema that may be a lazy function (e.g. AI SDK provider tools).\n * Recursively resolves until a non-function value is returned.\n */\nfunction resolveLazySchema(schema: unknown): unknown {\n if (typeof schema === 'function') {\n return resolveLazySchema(schema());\n }\n return schema;\n}\n\nfunction schemaToJsonSchema(schema: PublicSchema<unknown> | undefined) {\n if (!schema) {\n return undefined;\n }\n\n return standardSchemaToJSONSchema(toStandardSchema(schema), { target: 'draft-2020-12' });\n}\n\nfunction serializeSchema(schema: unknown): string | undefined {\n const jsonSchema = schemaToJsonSchema(resolveLazySchema(schema) as PublicSchema<unknown> | undefined);\n if (jsonSchema === undefined) return undefined;\n return stringify(jsonSchema);\n}\n\n/**\n * Serializes a tool for API responses, handling both regular tools (with Zod schemas)\n * and provider-defined tools (with AI SDK lazy schemas).\n */\nfunction serializeTool(tool: any): any {\n // Provider-defined tools (e.g. google.tools.googleSearch(), openai.tools.webSearch())\n // have lazy inputSchema functions that return AI SDK Schema objects, not Zod schemas.\n // We resolve them and use the jsonSchema property directly.\n if (isProviderDefinedTool(tool)) {\n const resolvedInput = resolveLazySchema(tool.inputSchema);\n const resolvedOutput = resolveLazySchema(tool.outputSchema);\n return {\n ...tool,\n inputSchema:\n resolvedInput && typeof resolvedInput === 'object' && 'jsonSchema' in resolvedInput\n ? stringify(resolvedInput.jsonSchema)\n : undefined,\n outputSchema:\n resolvedOutput && typeof resolvedOutput === 'object' && 'jsonSchema' in resolvedOutput\n ? stringify(resolvedOutput.jsonSchema)\n : undefined,\n };\n }\n\n return {\n ...tool,\n inputSchema: serializeSchema(tool.inputSchema),\n outputSchema: serializeSchema(tool.outputSchema),\n requestContextSchema: serializeSchema(tool.requestContextSchema),\n };\n}\n\n// ============================================================================\n// Route Definitions (new pattern - handlers defined inline with createRoute)\n// ============================================================================\n\nexport const LIST_TOOLS_ROUTE = createRoute({\n method: 'GET',\n path: '/tools',\n responseType: 'json',\n responseSchema: listToolsResponseSchema,\n summary: 'List all tools',\n description: 'Returns a list of all available tools in the system',\n tags: ['Tools'],\n requiresAuth: true,\n handler: async ({ mastra, registeredTools }) => {\n try {\n const allTools =\n registeredTools && Object.keys(registeredTools).length > 0 ? registeredTools : mastra.listTools() || {};\n\n const serializedTools = Object.entries(allTools).reduce(\n (acc, [id, _tool]) => {\n acc[id] = serializeTool(_tool);\n return acc;\n },\n {} as Record<string, any>,\n );\n\n return serializedTools;\n } catch (error) {\n return handleError(error, 'Error getting tools');\n }\n },\n});\n\nexport const GET_TOOL_BY_ID_ROUTE = createRoute({\n method: 'GET',\n path: '/tools/:toolId',\n responseType: 'json',\n pathParamSchema: toolIdPathParams,\n responseSchema: serializedToolSchema,\n summary: 'Get tool by ID',\n description: 'Returns details for a specific tool including its schema and configuration',\n tags: ['Tools'],\n requiresAuth: true,\n handler: async ({ mastra, registeredTools, toolId }) => {\n try {\n let tool: any;\n\n // Try explicit registeredTools first, then fallback to mastra\n if (registeredTools && Object.keys(registeredTools).length > 0) {\n tool = Object.values(registeredTools).find((t: any) => t.id === toolId);\n } else {\n tool = mastra.getToolById(toolId);\n }\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n return serializeTool(tool);\n } catch (error) {\n return handleError(error, 'Error getting tool');\n }\n },\n});\n\nexport const EXECUTE_TOOL_ROUTE = createRoute({\n method: 'POST',\n path: '/tools/:toolId/execute',\n responseType: 'json',\n pathParamSchema: toolIdPathParams,\n queryParamSchema: optionalRunIdSchema,\n bodySchema: executeToolContextBodySchema,\n responseSchema: executeToolResponseSchema,\n summary: 'Execute tool',\n description: 'Executes a specific tool with the provided input data',\n tags: ['Tools'],\n requiresAuth: true,\n handler: async ({ mastra, runId, toolId, registeredTools, requestContext, ...bodyParams }) => {\n try {\n if (!toolId) {\n throw new HTTPException(400, { message: 'Tool ID is required' });\n }\n\n let tool: any;\n\n // Try explicit registeredTools first, then fallback to mastra\n if (registeredTools && Object.keys(registeredTools).length > 0) {\n tool = Object.values(registeredTools).find((t: any) => t.id === toolId);\n } else {\n tool = mastra.getToolById(toolId);\n }\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n if (!tool?.execute) {\n throw new HTTPException(400, { message: 'Tool is not executable' });\n }\n\n const { data } = bodyParams;\n\n validateBody({ data });\n\n let result;\n if (isVercelTool(tool)) {\n result = await (tool as any).execute(data);\n } else {\n result = await tool.execute(data!, {\n mastra,\n requestContext,\n // TODO: Pass proper tracing context when server API supports tracing\n tracingContext: { currentSpan: undefined },\n ...(runId\n ? {\n workflow: {\n runId,\n suspend: async () => {},\n },\n }\n : {}),\n });\n }\n\n return result;\n } catch (error) {\n return handleError(error, 'Error executing tool');\n }\n },\n});\n\n// ============================================================================\n// Agent Tool Routes\n// ============================================================================\n\nexport const GET_AGENT_TOOL_ROUTE = createRoute({\n method: 'GET',\n path: '/agents/:agentId/tools/:toolId',\n responseType: 'json',\n pathParamSchema: agentToolPathParams,\n responseSchema: serializedToolSchema,\n summary: 'Get agent tool',\n description: 'Returns details for a specific tool assigned to the agent',\n tags: ['Agents', 'Tools'],\n requiresAuth: true,\n handler: async ({ mastra, agentId, toolId, requestContext }) => {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n const agent = await getAgentFromSystem({ mastra, agentId });\n\n const agentTools = await agent.listTools({ requestContext });\n\n const tool = Object.values(agentTools || {}).find((tool: any) => tool.id === toolId) as any;\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n return serializeTool(tool);\n } catch (error) {\n return handleError(error, 'Error getting agent tool');\n }\n },\n});\n\nexport const EXECUTE_AGENT_TOOL_ROUTE = createRoute({\n method: 'POST',\n path: '/agents/:agentId/tools/:toolId/execute',\n responseType: 'json',\n pathParamSchema: agentToolPathParams,\n bodySchema: executeToolBodySchema,\n responseSchema: executeToolResponseSchema,\n summary: 'Execute agent tool',\n description: 'Executes a specific tool assigned to the agent with the provided input data',\n tags: ['Agents', 'Tools'],\n requiresAuth: true,\n handler: async ({ mastra, agentId, toolId, data, requestContext }) => {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n const agent = await getAgentFromSystem({ mastra, agentId });\n\n const agentTools = await agent.listTools({ requestContext });\n\n const tool = Object.values(agentTools || {}).find((tool: any) => tool.id === toolId) as any;\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n if (!tool?.execute) {\n throw new HTTPException(400, { message: 'Tool is not executable' });\n }\n\n const result = await tool.execute(data, {\n mastra,\n requestContext,\n // TODO: Pass proper tracing context when server API supports tracing\n tracingContext: { currentSpan: undefined },\n });\n\n return result;\n } catch (error) {\n return handleError(error, 'Error executing agent tool');\n }\n },\n});\n"]}
1
+ {"version":3,"sources":["../src/server/handlers/tools.ts"],"names":["__export","standardSchemaToJSONSchema","toStandardSchema5","stringify","isProviderDefinedTool","createRoute","listToolsResponseSchema","handleError","toolIdPathParams","serializedToolSchema","HTTPException","optionalRunIdSchema","executeToolContextBodySchema","executeToolResponseSchema","validateBody","isVercelTool","agentToolPathParams","getAgentFromSystem","tool","executeToolBodySchema"],"mappings":"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","file":"chunk-X2IFWP5E.cjs","sourcesContent":["import { isVercelTool, isProviderDefinedTool } from '@mastra/core/tools';\nimport { toStandardSchema, standardSchemaToJSONSchema } from '@mastra/schema-compat/schema';\nimport type { PublicSchema } from '@mastra/schema-compat/schema';\nimport { stringify } from 'superjson';\nimport { HTTPException } from '../http-exception';\nimport {\n executeToolContextBodySchema,\n executeToolResponseSchema,\n listToolsResponseSchema,\n serializedToolSchema,\n toolIdPathParams,\n agentToolPathParams,\n executeToolBodySchema,\n} from '../schemas/agents';\nimport { optionalRunIdSchema } from '../schemas/common';\nimport { createRoute } from '../server-adapter/routes/route-builder';\n\nimport { getAgentFromSystem } from './agents';\nimport { handleError } from './error';\nimport { validateBody } from './utils';\n\n/**\n * Resolves a schema that may be a lazy function (e.g. AI SDK provider tools).\n * Recursively resolves until a non-function value is returned.\n */\nfunction resolveLazySchema(schema: unknown): unknown {\n if (typeof schema === 'function') {\n return resolveLazySchema(schema());\n }\n return schema;\n}\n\nfunction schemaToJsonSchema(schema: PublicSchema<unknown> | undefined) {\n if (!schema) {\n return undefined;\n }\n\n return standardSchemaToJSONSchema(toStandardSchema(schema), { target: 'draft-2020-12' });\n}\n\nfunction serializeSchema(schema: unknown): string | undefined {\n const jsonSchema = schemaToJsonSchema(resolveLazySchema(schema) as PublicSchema<unknown> | undefined);\n if (jsonSchema === undefined) return undefined;\n return stringify(jsonSchema);\n}\n\n/**\n * Serializes a tool for API responses, handling both regular tools (with Zod schemas)\n * and provider-defined tools (with AI SDK lazy schemas).\n */\nfunction serializeTool(tool: any): any {\n // Provider-defined tools (e.g. google.tools.googleSearch(), openai.tools.webSearch())\n // have lazy inputSchema functions that return AI SDK Schema objects, not Zod schemas.\n // We resolve them and use the jsonSchema property directly.\n if (isProviderDefinedTool(tool)) {\n const resolvedInput = resolveLazySchema(tool.inputSchema);\n const resolvedOutput = resolveLazySchema(tool.outputSchema);\n return {\n ...tool,\n inputSchema:\n resolvedInput && typeof resolvedInput === 'object' && 'jsonSchema' in resolvedInput\n ? stringify(resolvedInput.jsonSchema)\n : undefined,\n outputSchema:\n resolvedOutput && typeof resolvedOutput === 'object' && 'jsonSchema' in resolvedOutput\n ? stringify(resolvedOutput.jsonSchema)\n : undefined,\n };\n }\n\n return {\n ...tool,\n inputSchema: serializeSchema(tool.inputSchema),\n outputSchema: serializeSchema(tool.outputSchema),\n requestContextSchema: serializeSchema(tool.requestContextSchema),\n };\n}\n\n// ============================================================================\n// Route Definitions (new pattern - handlers defined inline with createRoute)\n// ============================================================================\n\nexport const LIST_TOOLS_ROUTE = createRoute({\n method: 'GET',\n path: '/tools',\n responseType: 'json',\n responseSchema: listToolsResponseSchema,\n summary: 'List all tools',\n description: 'Returns a list of all available tools in the system',\n tags: ['Tools'],\n requiresAuth: true,\n handler: async ({ mastra, registeredTools }) => {\n try {\n const allTools =\n registeredTools && Object.keys(registeredTools).length > 0 ? registeredTools : mastra.listTools() || {};\n\n const serializedTools = Object.entries(allTools).reduce(\n (acc, [id, _tool]) => {\n acc[id] = serializeTool(_tool);\n return acc;\n },\n {} as Record<string, any>,\n );\n\n return serializedTools;\n } catch (error) {\n return handleError(error, 'Error getting tools');\n }\n },\n});\n\nexport const GET_TOOL_BY_ID_ROUTE = createRoute({\n method: 'GET',\n path: '/tools/:toolId',\n responseType: 'json',\n pathParamSchema: toolIdPathParams,\n responseSchema: serializedToolSchema,\n summary: 'Get tool by ID',\n description: 'Returns details for a specific tool including its schema and configuration',\n tags: ['Tools'],\n requiresAuth: true,\n handler: async ({ mastra, registeredTools, toolId }) => {\n try {\n let tool: any;\n\n // Try explicit registeredTools first, then fallback to mastra\n if (registeredTools && Object.keys(registeredTools).length > 0) {\n tool = Object.values(registeredTools).find((t: any) => t.id === toolId);\n } else {\n tool = mastra.getToolById(toolId);\n }\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n return serializeTool(tool);\n } catch (error) {\n return handleError(error, 'Error getting tool');\n }\n },\n});\n\nexport const EXECUTE_TOOL_ROUTE = createRoute({\n method: 'POST',\n path: '/tools/:toolId/execute',\n responseType: 'json',\n pathParamSchema: toolIdPathParams,\n queryParamSchema: optionalRunIdSchema,\n bodySchema: executeToolContextBodySchema,\n responseSchema: executeToolResponseSchema,\n summary: 'Execute tool',\n description: 'Executes a specific tool with the provided input data',\n tags: ['Tools'],\n requiresAuth: true,\n handler: async ({ mastra, runId, toolId, registeredTools, requestContext, ...bodyParams }) => {\n try {\n if (!toolId) {\n throw new HTTPException(400, { message: 'Tool ID is required' });\n }\n\n let tool: any;\n\n // Try explicit registeredTools first, then fallback to mastra\n if (registeredTools && Object.keys(registeredTools).length > 0) {\n tool = Object.values(registeredTools).find((t: any) => t.id === toolId);\n } else {\n tool = mastra.getToolById(toolId);\n }\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n if (!tool?.execute) {\n throw new HTTPException(400, { message: 'Tool is not executable' });\n }\n\n const { data } = bodyParams;\n\n validateBody({ data });\n\n let result;\n if (isVercelTool(tool)) {\n result = await (tool as any).execute(data);\n } else {\n result = await tool.execute(data!, {\n mastra,\n requestContext,\n // TODO: Pass proper tracing context when server API supports tracing\n tracingContext: { currentSpan: undefined },\n ...(runId\n ? {\n workflow: {\n runId,\n suspend: async () => {},\n },\n }\n : {}),\n });\n }\n\n return result;\n } catch (error) {\n return handleError(error, 'Error executing tool');\n }\n },\n});\n\n// ============================================================================\n// Agent Tool Routes\n// ============================================================================\n\nexport const GET_AGENT_TOOL_ROUTE = createRoute({\n method: 'GET',\n path: '/agents/:agentId/tools/:toolId',\n responseType: 'json',\n pathParamSchema: agentToolPathParams,\n responseSchema: serializedToolSchema,\n summary: 'Get agent tool',\n description: 'Returns details for a specific tool assigned to the agent',\n tags: ['Agents', 'Tools'],\n requiresAuth: true,\n handler: async ({ mastra, agentId, toolId, requestContext }) => {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n const agent = await getAgentFromSystem({ mastra, agentId });\n\n const agentTools = await agent.listTools({ requestContext });\n\n const tool = Object.values(agentTools || {}).find((tool: any) => tool.id === toolId) as any;\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n return serializeTool(tool);\n } catch (error) {\n return handleError(error, 'Error getting agent tool');\n }\n },\n});\n\nexport const EXECUTE_AGENT_TOOL_ROUTE = createRoute({\n method: 'POST',\n path: '/agents/:agentId/tools/:toolId/execute',\n responseType: 'json',\n pathParamSchema: agentToolPathParams,\n bodySchema: executeToolBodySchema,\n responseSchema: executeToolResponseSchema,\n summary: 'Execute agent tool',\n description: 'Executes a specific tool assigned to the agent with the provided input data',\n tags: ['Agents', 'Tools'],\n requiresAuth: true,\n handler: async ({ mastra, agentId, toolId, data, requestContext }) => {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n const agent = await getAgentFromSystem({ mastra, agentId });\n\n const agentTools = await agent.listTools({ requestContext });\n\n const tool = Object.values(agentTools || {}).find((tool: any) => tool.id === toolId) as any;\n\n if (!tool) {\n throw new HTTPException(404, { message: 'Tool not found' });\n }\n\n if (!tool?.execute) {\n throw new HTTPException(400, { message: 'Tool is not executable' });\n }\n\n const result = await tool.execute(data, {\n mastra,\n requestContext,\n // TODO: Pass proper tracing context when server API supports tracing\n tracingContext: { currentSpan: undefined },\n });\n\n return result;\n } catch (error) {\n return handleError(error, 'Error executing agent tool');\n }\n },\n});\n"]}
@@ -1,5 +1,5 @@
1
1
  import { conversationItemSchema } from './chunk-7TKB6WYH.js';
2
- import { getThreadByIdResponseSchema } from './chunk-VXBTV6LH.js';
2
+ import { getThreadByIdResponseSchema } from './chunk-6MMZVEFC.js';
3
3
  import z from 'zod';
4
4
 
5
5
  var conversationIdPathParams = z.object({
@@ -31,5 +31,5 @@ var conversationItemsListSchema = z.object({
31
31
  });
32
32
 
33
33
  export { conversationDeletedSchema, conversationIdPathParams, conversationItemsListSchema, conversationObjectSchema, createConversationBodySchema };
34
- //# sourceMappingURL=chunk-DGS7O6Q7.js.map
35
- //# sourceMappingURL=chunk-DGS7O6Q7.js.map
34
+ //# sourceMappingURL=chunk-XO5PXSFC.js.map
35
+ //# sourceMappingURL=chunk-XO5PXSFC.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/server/schemas/conversations.ts"],"names":[],"mappings":";;;;AAIO,IAAM,wBAAA,GAA2B,EAAE,MAAA,CAAO;AAAA,EAC/C,cAAA,EAAgB,CAAA,CAAE,MAAA,EAAO,CAAE,SAAS,+CAA+C;AACrF,CAAC;AAEM,IAAM,4BAAA,GAA+B,EAAE,MAAA,CAAO;AAAA,EACnD,QAAA,EAAU,CAAA,CAAE,MAAA,EAAO,CAAE,SAAS,wDAAwD,CAAA;AAAA,EACtF,iBAAiB,CAAA,CAAE,MAAA,GAAS,QAAA,EAAS,CAAE,SAAS,qDAAqD,CAAA;AAAA,EACrG,aAAa,CAAA,CAAE,MAAA,GAAS,QAAA,EAAS,CAAE,SAAS,yDAAyD,CAAA;AAAA,EACrG,KAAA,EAAO,CAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EAC3B,QAAA,EAAU,CAAA,CAAE,MAAA,CAAO,CAAA,CAAE,MAAA,IAAU,CAAA,CAAE,OAAA,EAAS,CAAA,CAAE,QAAA;AAC9C,CAAC;AAIM,IAAM,wBAAA,GAA2B,EAAE,MAAA,CAAO;AAAA,EAC/C,EAAA,EAAI,EAAE,MAAA,EAAO;AAAA,EACb,MAAA,EAAQ,CAAA,CAAE,OAAA,CAAQ,cAAc,CAAA;AAAA,EAChC,MAAA,EAAQ;AACV,CAAC;AAEM,IAAM,yBAAA,GAA4B,EAAE,MAAA,CAAO;AAAA,EAChD,EAAA,EAAI,EAAE,MAAA,EAAO;AAAA,EACb,MAAA,EAAQ,CAAA,CAAE,OAAA,CAAQ,sBAAsB,CAAA;AAAA,EACxC,OAAA,EAAS,CAAA,CAAE,OAAA,CAAQ,IAAI;AACzB,CAAC;AAEM,IAAM,2BAAA,GAA8B,EAAE,MAAA,CAAO;AAAA,EAClD,MAAA,EAAQ,CAAA,CAAE,OAAA,CAAQ,MAAM,CAAA;AAAA,EACxB,IAAA,EAAM,CAAA,CAAE,KAAA,CAAM,sBAAsB,CAAA;AAAA,EACpC,QAAA,EAAU,CAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EAC9B,OAAA,EAAS,CAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EAC7B,QAAA,EAAU,EAAE,OAAA;AACd,CAAC","file":"chunk-DGS7O6Q7.js","sourcesContent":["import z from 'zod';\nimport { getThreadByIdResponseSchema } from './memory';\nimport { conversationItemSchema } from './responses';\n\nexport const conversationIdPathParams = z.object({\n conversationId: z.string().describe('Unique identifier for the conversation thread'),\n});\n\nexport const createConversationBodySchema = z.object({\n agent_id: z.string().describe('Mastra agent ID used to create the conversation thread'),\n conversation_id: z.string().optional().describe('Optional conversation ID to use as the raw threadId'),\n resource_id: z.string().optional().describe('Optional resource ID to associate with the conversation'),\n title: z.string().optional(),\n metadata: z.record(z.string(), z.unknown()).optional(),\n});\n\nexport type CreateConversationBody = z.infer<typeof createConversationBodySchema>;\n\nexport const conversationObjectSchema = z.object({\n id: z.string(),\n object: z.literal('conversation'),\n thread: getThreadByIdResponseSchema,\n});\n\nexport const conversationDeletedSchema = z.object({\n id: z.string(),\n object: z.literal('conversation.deleted'),\n deleted: z.literal(true),\n});\n\nexport const conversationItemsListSchema = z.object({\n object: z.literal('list'),\n data: z.array(conversationItemSchema),\n first_id: z.string().nullable(),\n last_id: z.string().nullable(),\n has_more: z.boolean(),\n});\n\nexport type ConversationObject = z.infer<typeof conversationObjectSchema>;\nexport type ConversationItemsList = z.infer<typeof conversationItemsListSchema>;\nexport type ConversationDeleted = z.infer<typeof conversationDeletedSchema>;\n"]}
1
+ {"version":3,"sources":["../src/server/schemas/conversations.ts"],"names":[],"mappings":";;;;AAIO,IAAM,wBAAA,GAA2B,EAAE,MAAA,CAAO;AAAA,EAC/C,cAAA,EAAgB,CAAA,CAAE,MAAA,EAAO,CAAE,SAAS,+CAA+C;AACrF,CAAC;AAEM,IAAM,4BAAA,GAA+B,EAAE,MAAA,CAAO;AAAA,EACnD,QAAA,EAAU,CAAA,CAAE,MAAA,EAAO,CAAE,SAAS,wDAAwD,CAAA;AAAA,EACtF,iBAAiB,CAAA,CAAE,MAAA,GAAS,QAAA,EAAS,CAAE,SAAS,qDAAqD,CAAA;AAAA,EACrG,aAAa,CAAA,CAAE,MAAA,GAAS,QAAA,EAAS,CAAE,SAAS,yDAAyD,CAAA;AAAA,EACrG,KAAA,EAAO,CAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EAC3B,QAAA,EAAU,CAAA,CAAE,MAAA,CAAO,CAAA,CAAE,MAAA,IAAU,CAAA,CAAE,OAAA,EAAS,CAAA,CAAE,QAAA;AAC9C,CAAC;AAIM,IAAM,wBAAA,GAA2B,EAAE,MAAA,CAAO;AAAA,EAC/C,EAAA,EAAI,EAAE,MAAA,EAAO;AAAA,EACb,MAAA,EAAQ,CAAA,CAAE,OAAA,CAAQ,cAAc,CAAA;AAAA,EAChC,MAAA,EAAQ;AACV,CAAC;AAEM,IAAM,yBAAA,GAA4B,EAAE,MAAA,CAAO;AAAA,EAChD,EAAA,EAAI,EAAE,MAAA,EAAO;AAAA,EACb,MAAA,EAAQ,CAAA,CAAE,OAAA,CAAQ,sBAAsB,CAAA;AAAA,EACxC,OAAA,EAAS,CAAA,CAAE,OAAA,CAAQ,IAAI;AACzB,CAAC;AAEM,IAAM,2BAAA,GAA8B,EAAE,MAAA,CAAO;AAAA,EAClD,MAAA,EAAQ,CAAA,CAAE,OAAA,CAAQ,MAAM,CAAA;AAAA,EACxB,IAAA,EAAM,CAAA,CAAE,KAAA,CAAM,sBAAsB,CAAA;AAAA,EACpC,QAAA,EAAU,CAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EAC9B,OAAA,EAAS,CAAA,CAAE,MAAA,EAAO,CAAE,QAAA,EAAS;AAAA,EAC7B,QAAA,EAAU,EAAE,OAAA;AACd,CAAC","file":"chunk-XO5PXSFC.js","sourcesContent":["import z from 'zod';\nimport { getThreadByIdResponseSchema } from './memory';\nimport { conversationItemSchema } from './responses';\n\nexport const conversationIdPathParams = z.object({\n conversationId: z.string().describe('Unique identifier for the conversation thread'),\n});\n\nexport const createConversationBodySchema = z.object({\n agent_id: z.string().describe('Mastra agent ID used to create the conversation thread'),\n conversation_id: z.string().optional().describe('Optional conversation ID to use as the raw threadId'),\n resource_id: z.string().optional().describe('Optional resource ID to associate with the conversation'),\n title: z.string().optional(),\n metadata: z.record(z.string(), z.unknown()).optional(),\n});\n\nexport type CreateConversationBody = z.infer<typeof createConversationBodySchema>;\n\nexport const conversationObjectSchema = z.object({\n id: z.string(),\n object: z.literal('conversation'),\n thread: getThreadByIdResponseSchema,\n});\n\nexport const conversationDeletedSchema = z.object({\n id: z.string(),\n object: z.literal('conversation.deleted'),\n deleted: z.literal(true),\n});\n\nexport const conversationItemsListSchema = z.object({\n object: z.literal('list'),\n data: z.array(conversationItemSchema),\n first_id: z.string().nullable(),\n last_id: z.string().nullable(),\n has_more: z.boolean(),\n});\n\nexport type ConversationObject = z.infer<typeof conversationObjectSchema>;\nexport type ConversationItemsList = z.infer<typeof conversationItemsListSchema>;\nexport type ConversationDeleted = z.infer<typeof conversationDeletedSchema>;\n"]}
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var chunk6N5NDQVM_cjs = require('./chunk-6N5NDQVM.cjs');
4
- var chunkVOCNBP5Q_cjs = require('./chunk-VOCNBP5Q.cjs');
4
+ var chunkHUWHY7SC_cjs = require('./chunk-HUWHY7SC.cjs');
5
5
  var chunkWC4OPIB4_cjs = require('./chunk-WC4OPIB4.cjs');
6
6
  var chunkEGSCXVMR_cjs = require('./chunk-EGSCXVMR.cjs');
7
7
  var chunkO7I5CWRX_cjs = require('./chunk-O7I5CWRX.cjs');
@@ -216,7 +216,7 @@ async function getAgentCardByIdHandler({
216
216
  version = "1.0",
217
217
  requestContext
218
218
  }) {
219
- const agent = await chunkVOCNBP5Q_cjs.getAgentFromSystem({ mastra, agentId });
219
+ const agent = await chunkHUWHY7SC_cjs.getAgentFromSystem({ mastra, agentId });
220
220
  const [instructions, tools] = await Promise.all([agent.getInstructions({ requestContext }), agent.listTools({ requestContext })]);
221
221
  const agentCard = {
222
222
  name: agent.id || agentId,
@@ -429,7 +429,7 @@ async function getAgentExecutionHandler({
429
429
  taskStore,
430
430
  logger
431
431
  }) {
432
- const agent = await chunkVOCNBP5Q_cjs.getAgentFromSystem({ mastra, agentId });
432
+ const agent = await chunkHUWHY7SC_cjs.getAgentFromSystem({ mastra, agentId });
433
433
  let taskId;
434
434
  try {
435
435
  taskId = "id" in params ? params.id : params.message?.taskId || "No task ID provided";
@@ -500,7 +500,7 @@ var GET_AGENT_CARD_ROUTE = chunkEGSCXVMR_cjs.createRoute({
500
500
  url: "https://mastra.ai"
501
501
  };
502
502
  const version = "1.0";
503
- const agent = await chunkVOCNBP5Q_cjs.getAgentFromSystem({ mastra, agentId });
503
+ const agent = await chunkHUWHY7SC_cjs.getAgentFromSystem({ mastra, agentId });
504
504
  const [instructions, tools] = await Promise.all([agent.getInstructions({ requestContext }), agent.listTools({ requestContext })]);
505
505
  const agentCard = {
506
506
  name: agent.id || agentId,
@@ -559,5 +559,5 @@ exports.handleMessageSend = handleMessageSend;
559
559
  exports.handleMessageStream = handleMessageStream;
560
560
  exports.handleTaskCancel = handleTaskCancel;
561
561
  exports.handleTaskGet = handleTaskGet;
562
- //# sourceMappingURL=chunk-LV4FV46S.cjs.map
563
- //# sourceMappingURL=chunk-LV4FV46S.cjs.map
562
+ //# sourceMappingURL=chunk-ZWKZK4WO.cjs.map
563
+ //# sourceMappingURL=chunk-ZWKZK4WO.cjs.map