@mastra/server 1.50.0-alpha.2 → 1.50.0-alpha.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/dist/{api-schema-manifest-EW55OSKH.js → api-schema-manifest-DOPBJPOJ.js} +3 -3
  3. package/dist/{api-schema-manifest-EW55OSKH.js.map → api-schema-manifest-DOPBJPOJ.js.map} +1 -1
  4. package/dist/{api-schema-manifest-YT3AMGZD.cjs → api-schema-manifest-QEW2UYFB.cjs} +4 -4
  5. package/dist/{api-schema-manifest-YT3AMGZD.cjs.map → api-schema-manifest-QEW2UYFB.cjs.map} +1 -1
  6. package/dist/{chunk-ZAK4IF2O.js → chunk-5HOECS3M.js} +15 -25
  7. package/dist/chunk-5HOECS3M.js.map +1 -0
  8. package/dist/{chunk-6QZTZ5F3.cjs → chunk-5RAMEYIX.cjs} +3 -3
  9. package/dist/{chunk-6QZTZ5F3.cjs.map → chunk-5RAMEYIX.cjs.map} +1 -1
  10. package/dist/{chunk-57BKC4ZW.cjs → chunk-F32IDQGW.cjs} +12 -12
  11. package/dist/chunk-F32IDQGW.cjs.map +1 -0
  12. package/dist/{chunk-4D4HXQZQ.cjs → chunk-F6N7265F.cjs} +3 -3
  13. package/dist/{chunk-4D4HXQZQ.cjs.map → chunk-F6N7265F.cjs.map} +1 -1
  14. package/dist/{chunk-WUUYTMMN.js → chunk-FRVPBGNR.js} +3 -3
  15. package/dist/{chunk-WUUYTMMN.js.map → chunk-FRVPBGNR.js.map} +1 -1
  16. package/dist/{chunk-3PX4QNTY.js → chunk-L755XTYQ.js} +5 -5
  17. package/dist/{chunk-3PX4QNTY.js.map → chunk-L755XTYQ.js.map} +1 -1
  18. package/dist/{chunk-VFTKZ5NN.js → chunk-LXZQ3FLD.js} +3 -3
  19. package/dist/{chunk-VFTKZ5NN.js.map → chunk-LXZQ3FLD.js.map} +1 -1
  20. package/dist/chunk-NNZX6L34.cjs +479 -0
  21. package/dist/chunk-NNZX6L34.cjs.map +1 -0
  22. package/dist/chunk-TMK7RPZE.js +469 -0
  23. package/dist/chunk-TMK7RPZE.js.map +1 -0
  24. package/dist/{chunk-EVRBOCDD.cjs → chunk-TWAGLLIX.cjs} +5 -5
  25. package/dist/{chunk-EVRBOCDD.cjs.map → chunk-TWAGLLIX.cjs.map} +1 -1
  26. package/dist/{chunk-HK4SJHYT.js → chunk-UGL754UC.js} +12 -12
  27. package/dist/chunk-UGL754UC.js.map +1 -0
  28. package/dist/{chunk-5NLRYTA7.cjs → chunk-YF52OTQK.cjs} +70 -80
  29. package/dist/chunk-YF52OTQK.cjs.map +1 -0
  30. package/dist/{dist-GT5SXQBU.cjs → dist-5EULF33F.cjs} +4 -4
  31. package/dist/{dist-GT5SXQBU.cjs.map → dist-5EULF33F.cjs.map} +1 -1
  32. package/dist/{dist-OPQ753KD.js → dist-RCCUYXJR.js} +3 -3
  33. package/dist/{dist-OPQ753KD.js.map → dist-RCCUYXJR.js.map} +1 -1
  34. package/dist/docs/SKILL.md +1 -1
  35. package/dist/docs/assets/SOURCE_MAP.json +1 -1
  36. package/dist/{observational-memory-BTXNITBN-USQTBIPQ.cjs → observational-memory-QL6BKIQX-KHRHK3MH.cjs} +28 -28
  37. package/dist/{observational-memory-BTXNITBN-USQTBIPQ.cjs.map → observational-memory-QL6BKIQX-KHRHK3MH.cjs.map} +1 -1
  38. package/dist/{observational-memory-BTXNITBN-GBTCKQX5.js → observational-memory-QL6BKIQX-XL77IBYW.js} +3 -3
  39. package/dist/{observational-memory-BTXNITBN-GBTCKQX5.js.map → observational-memory-QL6BKIQX-XL77IBYW.js.map} +1 -1
  40. package/dist/server/handlers/agent-builder.cjs +17 -17
  41. package/dist/server/handlers/agent-builder.js +1 -1
  42. package/dist/server/handlers/agent-controller.cjs +35 -35
  43. package/dist/server/handlers/agent-controller.d.ts.map +1 -1
  44. package/dist/server/handlers/agent-controller.js +1 -1
  45. package/dist/server/handlers/schedules-workflows-shim.cjs +32 -7
  46. package/dist/server/handlers/schedules-workflows-shim.cjs.map +1 -1
  47. package/dist/server/handlers/schedules-workflows-shim.js +16 -1
  48. package/dist/server/handlers/schedules-workflows-shim.js.map +1 -1
  49. package/dist/server/handlers/schedules.cjs +22 -6
  50. package/dist/server/handlers/schedules.d.ts +963 -361
  51. package/dist/server/handlers/schedules.d.ts.map +1 -1
  52. package/dist/server/handlers/schedules.js +1 -1
  53. package/dist/server/handlers/system.cjs +3 -3
  54. package/dist/server/handlers/system.js +1 -1
  55. package/dist/server/handlers.cjs +2 -2
  56. package/dist/server/handlers.js +1 -1
  57. package/dist/server/schemas/index.cjs +152 -152
  58. package/dist/server/schemas/index.js +4 -4
  59. package/dist/server/schemas/schedules.d.ts +337 -116
  60. package/dist/server/schemas/schedules.d.ts.map +1 -1
  61. package/dist/server/server-adapter/index.cjs +13 -13
  62. package/dist/server/server-adapter/index.js +2 -2
  63. package/dist/server/server-adapter/routes/index.d.ts.map +1 -1
  64. package/dist/server/server-adapter/routes/schedules.d.ts.map +1 -1
  65. package/package.json +4 -4
  66. package/dist/chunk-4DVFBBKV.js +0 -281
  67. package/dist/chunk-4DVFBBKV.js.map +0 -1
  68. package/dist/chunk-4HFIGLPA.js +0 -142
  69. package/dist/chunk-4HFIGLPA.js.map +0 -1
  70. package/dist/chunk-4WZMR4IW.cjs +0 -150
  71. package/dist/chunk-4WZMR4IW.cjs.map +0 -1
  72. package/dist/chunk-57BKC4ZW.cjs.map +0 -1
  73. package/dist/chunk-5NLRYTA7.cjs.map +0 -1
  74. package/dist/chunk-5XRZSGVP.cjs +0 -42
  75. package/dist/chunk-5XRZSGVP.cjs.map +0 -1
  76. package/dist/chunk-7XZQUQEO.cjs +0 -187
  77. package/dist/chunk-7XZQUQEO.cjs.map +0 -1
  78. package/dist/chunk-HK4SJHYT.js.map +0 -1
  79. package/dist/chunk-RCXVCPAD.js +0 -181
  80. package/dist/chunk-RCXVCPAD.js.map +0 -1
  81. package/dist/chunk-XEXUQSKG.js +0 -19
  82. package/dist/chunk-XEXUQSKG.js.map +0 -1
  83. package/dist/chunk-XTB6XXHH.cjs +0 -290
  84. package/dist/chunk-XTB6XXHH.cjs.map +0 -1
  85. package/dist/chunk-ZAK4IF2O.js.map +0 -1
  86. package/dist/server/handlers/heartbeats.cjs +0 -40
  87. package/dist/server/handlers/heartbeats.cjs.map +0 -1
  88. package/dist/server/handlers/heartbeats.d.ts +0 -769
  89. package/dist/server/handlers/heartbeats.d.ts.map +0 -1
  90. package/dist/server/handlers/heartbeats.js +0 -3
  91. package/dist/server/handlers/heartbeats.js.map +0 -1
  92. package/dist/server/schemas/heartbeats.d.ts +0 -227
  93. package/dist/server/schemas/heartbeats.d.ts.map +0 -1
  94. package/dist/server/server-adapter/routes/heartbeats.d.ts +0 -3
  95. package/dist/server/server-adapter/routes/heartbeats.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"schedules.d.ts","sourceRoot":"","sources":["../../../../src/server/server-adapter/routes/schedules.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,GAAG,CAAC;AAErC,eAAO,MAAM,gBAAgB,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAMxD,CAAC"}
1
+ {"version":3,"file":"schedules.d.ts","sourceRoot":"","sources":["../../../../src/server/server-adapter/routes/schedules.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,GAAG,CAAC;AAErC,eAAO,MAAM,gBAAgB,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAUxD,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mastra/server",
3
- "version": "1.50.0-alpha.2",
3
+ "version": "1.50.0-alpha.4",
4
4
  "description": "",
5
5
  "type": "module",
6
6
  "files": [
@@ -97,7 +97,7 @@
97
97
  "author": "",
98
98
  "license": "Apache-2.0",
99
99
  "peerDependencies": {
100
- "@mastra/core": ">=1.47.0-0 <2.0.0-0",
100
+ "@mastra/core": ">=1.50.0-0 <2.0.0-0",
101
101
  "zod": "^3.25.0 || ^4.0.0"
102
102
  },
103
103
  "devDependencies": {
@@ -120,9 +120,9 @@
120
120
  "@internal/lint": "0.0.111",
121
121
  "@internal/test-utils": "0.0.47",
122
122
  "@internal/voice": "0.0.11",
123
- "@mastra/agent-builder": "1.1.4",
124
123
  "@internal/types-builder": "0.0.86",
125
- "@mastra/core": "1.50.0-alpha.2",
124
+ "@mastra/agent-builder": "1.1.4",
125
+ "@mastra/core": "1.50.0-alpha.4",
126
126
  "@mastra/schema-compat": "1.3.3"
127
127
  },
128
128
  "homepage": "https://mastra.ai",
@@ -1,281 +0,0 @@
1
- import { scheduleRunSummarySchema } from './chunk-4HFIGLPA.js';
2
- import { createRoute } from './chunk-PIKPS6Q6.js';
3
- import { HTTPException } from './chunk-6QWQZI4Q.js';
4
- import { z } from 'zod';
5
-
6
- var signalAttributesSchema = z.record(
7
- z.string(),
8
- z.union([z.string(), z.number(), z.boolean(), z.null()]).optional()
9
- );
10
- var ifActiveSchema = z.object({
11
- behavior: z.enum(["deliver", "persist", "discard"]).optional(),
12
- attributes: signalAttributesSchema.optional()
13
- });
14
- var ifIdleSchema = z.object({
15
- behavior: z.enum(["wake", "persist", "discard"]).optional(),
16
- attributes: signalAttributesSchema.optional(),
17
- streamOptions: z.object({
18
- requestContext: z.record(z.string(), z.unknown()).optional()
19
- }).optional()
20
- });
21
- var heartbeatSchema = z.object({
22
- id: z.string(),
23
- agentId: z.string(),
24
- name: z.string().optional(),
25
- threadId: z.string().optional(),
26
- resourceId: z.string().optional(),
27
- prompt: z.string(),
28
- cron: z.string(),
29
- timezone: z.string().optional(),
30
- status: z.enum(["active", "paused"]),
31
- nextFireAt: z.number(),
32
- lastFireAt: z.number().optional(),
33
- lastRunId: z.string().optional(),
34
- lastRun: scheduleRunSummarySchema.optional(),
35
- signalType: z.string().optional(),
36
- tagName: z.string().optional(),
37
- attributes: signalAttributesSchema.optional(),
38
- ifActive: ifActiveSchema.optional(),
39
- ifIdle: ifIdleSchema.optional(),
40
- providerOptions: z.record(z.string(), z.unknown()).optional(),
41
- metadata: z.record(z.string(), z.unknown()).optional(),
42
- createdAt: z.number(),
43
- updatedAt: z.number()
44
- });
45
- var listHeartbeatsResponseSchema = z.object({
46
- heartbeats: z.array(heartbeatSchema)
47
- });
48
- var listHeartbeatsQuerySchema = z.object({
49
- agentId: z.string().optional(),
50
- threadId: z.string().optional(),
51
- resourceId: z.string().optional(),
52
- name: z.string().optional()
53
- });
54
- var heartbeatPathParams = z.object({
55
- heartbeatId: z.string()
56
- });
57
- var createHeartbeatBodySchema = z.object({
58
- /** Optional stable id; normalized to `hb_<slug>`. A random id is generated when omitted. */
59
- id: z.string().optional(),
60
- agentId: z.string(),
61
- cron: z.string(),
62
- timezone: z.string().optional(),
63
- prompt: z.string(),
64
- name: z.string().optional(),
65
- threadId: z.string().optional(),
66
- resourceId: z.string().optional(),
67
- signalType: z.string().optional(),
68
- tagName: z.string().optional(),
69
- attributes: signalAttributesSchema.optional(),
70
- ifActive: ifActiveSchema.optional(),
71
- ifIdle: ifIdleSchema.optional(),
72
- providerOptions: z.record(z.string(), z.unknown()).optional(),
73
- metadata: z.record(z.string(), z.unknown()).optional()
74
- });
75
- var updateHeartbeatBodySchema = z.object({
76
- cron: z.string().optional(),
77
- timezone: z.string().optional(),
78
- prompt: z.string().optional(),
79
- name: z.string().optional(),
80
- signalType: z.string().optional(),
81
- tagName: z.string().optional(),
82
- attributes: signalAttributesSchema.optional(),
83
- ifActive: ifActiveSchema.optional(),
84
- ifIdle: ifIdleSchema.optional(),
85
- providerOptions: z.record(z.string(), z.unknown()).optional(),
86
- metadata: z.record(z.string(), z.unknown()).optional()
87
- });
88
- var deleteHeartbeatResponseSchema = z.object({
89
- message: z.string()
90
- });
91
- var runHeartbeatResponseSchema = z.object({
92
- scheduleId: z.string(),
93
- claimId: z.string(),
94
- scheduledFireAt: z.number()
95
- });
96
-
97
- // src/server/handlers/heartbeats.ts
98
- function getHeartbeats(mastra) {
99
- const svc = mastra.heartbeats;
100
- if (!svc) {
101
- throw new HTTPException(404, { message: "Heartbeats not supported by this server" });
102
- }
103
- return svc;
104
- }
105
- async function loadHeartbeat(mastra, heartbeatId) {
106
- const heartbeats = getHeartbeats(mastra);
107
- const heartbeat = await heartbeats.get(heartbeatId);
108
- if (!heartbeat) {
109
- throw new HTTPException(404, { message: "Heartbeat not found" });
110
- }
111
- return heartbeat;
112
- }
113
- var LIST_HEARTBEATS_ROUTE = createRoute({
114
- method: "GET",
115
- path: "/heartbeats",
116
- responseType: "json",
117
- queryParamSchema: listHeartbeatsQuerySchema,
118
- responseSchema: listHeartbeatsResponseSchema,
119
- summary: "List heartbeats across all agents",
120
- description: "Returns the configured heartbeats, optionally filtered by agentId/threadId/resourceId/name.",
121
- tags: ["Heartbeats"],
122
- requiresAuth: true,
123
- handler: async ({ mastra, agentId, threadId, resourceId, name }) => {
124
- const heartbeats = getHeartbeats(mastra);
125
- const filter = {};
126
- if (agentId) filter.agentId = agentId;
127
- if (threadId) filter.threadId = threadId;
128
- if (resourceId) filter.resourceId = resourceId;
129
- if (name) filter.name = name;
130
- const rows = await heartbeats.list(filter);
131
- return { heartbeats: rows };
132
- }
133
- });
134
- var GET_HEARTBEAT_ROUTE = createRoute({
135
- method: "GET",
136
- path: "/heartbeats/:heartbeatId",
137
- responseType: "json",
138
- pathParamSchema: heartbeatPathParams,
139
- responseSchema: heartbeatSchema,
140
- summary: "Get a heartbeat by ID",
141
- description: "Returns a single heartbeat by its id.",
142
- tags: ["Heartbeats"],
143
- requiresAuth: true,
144
- handler: async ({ mastra, heartbeatId }) => {
145
- return await loadHeartbeat(mastra, heartbeatId);
146
- }
147
- });
148
- var CREATE_HEARTBEAT_ROUTE = createRoute({
149
- method: "POST",
150
- path: "/heartbeats",
151
- responseType: "json",
152
- bodySchema: createHeartbeatBodySchema,
153
- responseSchema: heartbeatSchema,
154
- summary: "Create a heartbeat",
155
- description: "Creates a new heartbeat owned by the agent named in `agentId`. Multiple heartbeats per agent/thread are supported; each gets a random `hb_<uuid>` id. Use `name` to label distinct heartbeats on the same agent/thread.",
156
- tags: ["Heartbeats"],
157
- requiresAuth: true,
158
- handler: async ({ mastra, agentId, ...body }) => {
159
- try {
160
- mastra.getAgentById(agentId);
161
- } catch {
162
- throw new HTTPException(404, { message: `Agent "${agentId}" not found` });
163
- }
164
- const heartbeats = getHeartbeats(mastra);
165
- return await heartbeats.create({
166
- agentId,
167
- cron: body.cron,
168
- prompt: body.prompt,
169
- ...body.id ? { id: body.id } : {},
170
- ...body.name ? { name: body.name } : {},
171
- ...body.timezone ? { timezone: body.timezone } : {},
172
- ...body.threadId ? { threadId: body.threadId } : {},
173
- ...body.resourceId ? { resourceId: body.resourceId } : {},
174
- ...body.signalType ? { signalType: body.signalType } : {},
175
- ...body.tagName ? { tagName: body.tagName } : {},
176
- ...body.attributes ? { attributes: body.attributes } : {},
177
- ...body.ifActive ? { ifActive: body.ifActive } : {},
178
- ...body.ifIdle ? { ifIdle: body.ifIdle } : {},
179
- ...body.providerOptions ? { providerOptions: body.providerOptions } : {},
180
- ...body.metadata ? { metadata: body.metadata } : {}
181
- });
182
- }
183
- });
184
- var UPDATE_HEARTBEAT_ROUTE = createRoute({
185
- method: "PATCH",
186
- path: "/heartbeats/:heartbeatId",
187
- responseType: "json",
188
- pathParamSchema: heartbeatPathParams,
189
- bodySchema: updateHeartbeatBodySchema,
190
- responseSchema: heartbeatSchema,
191
- summary: "Update a heartbeat",
192
- description: "Partial update of a heartbeat. `threadId` and `resourceId` are part of the heartbeat identity and cannot be changed \u2014 to re-target, delete and recreate. Editing `cron` (or `timezone`) recomputes `nextFireAt`.",
193
- tags: ["Heartbeats"],
194
- requiresAuth: true,
195
- handler: async ({ mastra, heartbeatId, ...body }) => {
196
- await loadHeartbeat(mastra, heartbeatId);
197
- const heartbeats = getHeartbeats(mastra);
198
- return await heartbeats.update(heartbeatId, {
199
- ...body.cron !== void 0 ? { cron: body.cron } : {},
200
- ...body.timezone !== void 0 ? { timezone: body.timezone } : {},
201
- ...body.prompt !== void 0 ? { prompt: body.prompt } : {},
202
- ...body.name !== void 0 ? { name: body.name } : {},
203
- ...body.signalType !== void 0 ? { signalType: body.signalType } : {},
204
- ...body.tagName !== void 0 ? { tagName: body.tagName } : {},
205
- ...body.attributes !== void 0 ? { attributes: body.attributes } : {},
206
- ...body.ifActive !== void 0 ? { ifActive: body.ifActive } : {},
207
- ...body.ifIdle !== void 0 ? { ifIdle: body.ifIdle } : {},
208
- ...body.providerOptions !== void 0 ? { providerOptions: body.providerOptions } : {},
209
- ...body.metadata !== void 0 ? { metadata: body.metadata } : {}
210
- });
211
- }
212
- });
213
- var DELETE_HEARTBEAT_ROUTE = createRoute({
214
- method: "DELETE",
215
- path: "/heartbeats/:heartbeatId",
216
- responseType: "json",
217
- pathParamSchema: heartbeatPathParams,
218
- responseSchema: deleteHeartbeatResponseSchema,
219
- summary: "Delete a heartbeat",
220
- description: "Permanently deletes the heartbeat. 404 when the heartbeat does not exist.",
221
- tags: ["Heartbeats"],
222
- requiresAuth: true,
223
- handler: async ({ mastra, heartbeatId }) => {
224
- await loadHeartbeat(mastra, heartbeatId);
225
- const heartbeats = getHeartbeats(mastra);
226
- await heartbeats.delete(heartbeatId);
227
- return { message: "Heartbeat deleted" };
228
- }
229
- });
230
- var PAUSE_HEARTBEAT_ROUTE = createRoute({
231
- method: "POST",
232
- path: "/heartbeats/:heartbeatId/pause",
233
- responseType: "json",
234
- pathParamSchema: heartbeatPathParams,
235
- responseSchema: heartbeatSchema,
236
- summary: "Pause a heartbeat",
237
- description: "Marks the heartbeat as paused. The scheduler tick loop will skip paused heartbeats. Idempotent.",
238
- tags: ["Heartbeats"],
239
- requiresAuth: true,
240
- handler: async ({ mastra, heartbeatId }) => {
241
- await loadHeartbeat(mastra, heartbeatId);
242
- const heartbeats = getHeartbeats(mastra);
243
- return await heartbeats.pause(heartbeatId);
244
- }
245
- });
246
- var RESUME_HEARTBEAT_ROUTE = createRoute({
247
- method: "POST",
248
- path: "/heartbeats/:heartbeatId/resume",
249
- responseType: "json",
250
- pathParamSchema: heartbeatPathParams,
251
- responseSchema: heartbeatSchema,
252
- summary: "Resume a paused heartbeat",
253
- description: 'Marks the heartbeat as active and recomputes nextFireAt from "now" so a long-paused heartbeat does not fire a backlog. Idempotent.',
254
- tags: ["Heartbeats"],
255
- requiresAuth: true,
256
- handler: async ({ mastra, heartbeatId }) => {
257
- await loadHeartbeat(mastra, heartbeatId);
258
- const heartbeats = getHeartbeats(mastra);
259
- return await heartbeats.resume(heartbeatId);
260
- }
261
- });
262
- var RUN_HEARTBEAT_ROUTE = createRoute({
263
- method: "POST",
264
- path: "/heartbeats/:heartbeatId/run",
265
- responseType: "json",
266
- pathParamSchema: heartbeatPathParams,
267
- responseSchema: runHeartbeatResponseSchema,
268
- summary: "Fire a heartbeat now",
269
- description: 'Manually triggers a single heartbeat run out-of-band from the cron schedule. Records a trigger row with `triggerKind: "manual"`. Does not advance `nextFireAt`.',
270
- tags: ["Heartbeats"],
271
- requiresAuth: true,
272
- handler: async ({ mastra, heartbeatId }) => {
273
- await loadHeartbeat(mastra, heartbeatId);
274
- const heartbeats = getHeartbeats(mastra);
275
- return await heartbeats.run(heartbeatId);
276
- }
277
- });
278
-
279
- export { CREATE_HEARTBEAT_ROUTE, DELETE_HEARTBEAT_ROUTE, GET_HEARTBEAT_ROUTE, LIST_HEARTBEATS_ROUTE, PAUSE_HEARTBEAT_ROUTE, RESUME_HEARTBEAT_ROUTE, RUN_HEARTBEAT_ROUTE, UPDATE_HEARTBEAT_ROUTE };
280
- //# sourceMappingURL=chunk-4DVFBBKV.js.map
281
- //# sourceMappingURL=chunk-4DVFBBKV.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/server/schemas/heartbeats.ts","../src/server/handlers/heartbeats.ts"],"names":[],"mappings":"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","file":"chunk-4DVFBBKV.js","sourcesContent":["import { z } from 'zod';\nimport { scheduleRunSummarySchema } from './schedules';\n\n/** Attributes rendered onto the signal's XML tag. */\nconst signalAttributesSchema = z.record(\n z.string(),\n z.union([z.string(), z.number(), z.boolean(), z.null()]).optional(),\n);\n\n/** Behavior + attributes applied when the thread is already streaming. */\nconst ifActiveSchema = z.object({\n behavior: z.enum(['deliver', 'persist', 'discard']).optional(),\n attributes: signalAttributesSchema.optional(),\n});\n\n/**\n * Behavior + attributes applied when the thread is idle, plus a serializable\n * subset of stream options forwarded to the woken run.\n */\nconst ifIdleSchema = z.object({\n behavior: z.enum(['wake', 'persist', 'discard']).optional(),\n attributes: signalAttributesSchema.optional(),\n streamOptions: z\n .object({\n requestContext: z.record(z.string(), z.unknown()).optional(),\n })\n .optional(),\n});\n\n/**\n * Public Heartbeat view model.\n *\n * Heartbeats are persisted as `Schedule` rows with a dedicated\n * `target.type === 'heartbeat'` variant. The HTTP surface flattens that\n * representation to the fields a user cares about (cron, prompt, threading,\n * status, lifecycle) without exposing the schedule plumbing or internal\n * identifier prefix.\n */\nexport const heartbeatSchema = z.object({\n id: z.string(),\n agentId: z.string(),\n name: z.string().optional(),\n threadId: z.string().optional(),\n resourceId: z.string().optional(),\n prompt: z.string(),\n cron: z.string(),\n timezone: z.string().optional(),\n status: z.enum(['active', 'paused']),\n nextFireAt: z.number(),\n lastFireAt: z.number().optional(),\n lastRunId: z.string().optional(),\n lastRun: scheduleRunSummarySchema.optional(),\n signalType: z.string().optional(),\n tagName: z.string().optional(),\n attributes: signalAttributesSchema.optional(),\n ifActive: ifActiveSchema.optional(),\n ifIdle: ifIdleSchema.optional(),\n providerOptions: z.record(z.string(), z.unknown()).optional(),\n metadata: z.record(z.string(), z.unknown()).optional(),\n createdAt: z.number(),\n updatedAt: z.number(),\n});\n\nexport const listHeartbeatsResponseSchema = z.object({\n heartbeats: z.array(heartbeatSchema),\n});\n\nexport const listHeartbeatsQuerySchema = z.object({\n agentId: z.string().optional(),\n threadId: z.string().optional(),\n resourceId: z.string().optional(),\n name: z.string().optional(),\n});\n\nexport const heartbeatPathParams = z.object({\n heartbeatId: z.string(),\n});\n\n/** Body for POST /heartbeats — creates a heartbeat. */\nexport const createHeartbeatBodySchema = z.object({\n /** Optional stable id; normalized to `hb_<slug>`. A random id is generated when omitted. */\n id: z.string().optional(),\n agentId: z.string(),\n cron: z.string(),\n timezone: z.string().optional(),\n prompt: z.string(),\n name: z.string().optional(),\n threadId: z.string().optional(),\n resourceId: z.string().optional(),\n signalType: z.string().optional(),\n tagName: z.string().optional(),\n attributes: signalAttributesSchema.optional(),\n ifActive: ifActiveSchema.optional(),\n ifIdle: ifIdleSchema.optional(),\n providerOptions: z.record(z.string(), z.unknown()).optional(),\n metadata: z.record(z.string(), z.unknown()).optional(),\n});\n\n/**\n * Body for PATCH /heartbeats/:heartbeatId — partial update.\n *\n * `threadId` / `resourceId` are intentionally not editable; they are part of\n * the heartbeat's identity. To re-target, delete and recreate.\n */\nexport const updateHeartbeatBodySchema = z.object({\n cron: z.string().optional(),\n timezone: z.string().optional(),\n prompt: z.string().optional(),\n name: z.string().optional(),\n signalType: z.string().optional(),\n tagName: z.string().optional(),\n attributes: signalAttributesSchema.optional(),\n ifActive: ifActiveSchema.optional(),\n ifIdle: ifIdleSchema.optional(),\n providerOptions: z.record(z.string(), z.unknown()).optional(),\n metadata: z.record(z.string(), z.unknown()).optional(),\n});\n\nexport const deleteHeartbeatResponseSchema = z.object({\n message: z.string(),\n});\n\n/** Response for POST /heartbeats/:heartbeatId/run. */\nexport const runHeartbeatResponseSchema = z.object({\n scheduleId: z.string(),\n claimId: z.string(),\n scheduledFireAt: z.number(),\n});\n\nexport type HeartbeatResponse = z.infer<typeof heartbeatSchema>;\n","import type { Mastra } from '@mastra/core';\nimport { HTTPException } from '../http-exception';\nimport {\n createHeartbeatBodySchema,\n deleteHeartbeatResponseSchema,\n heartbeatPathParams,\n heartbeatSchema,\n listHeartbeatsQuerySchema,\n listHeartbeatsResponseSchema,\n runHeartbeatResponseSchema,\n updateHeartbeatBodySchema,\n} from '../schemas/heartbeats';\nimport { createRoute } from '../server-adapter/routes/route-builder';\n\n/**\n * Lazily access `mastra.heartbeats`. The Heartbeats service may not exist on\n * older `@mastra/core` versions; in that case the handler returns 404 so\n * older cores degrade gracefully when paired with this `@mastra/server`.\n */\nfunction getHeartbeats(mastra: Mastra): any {\n const svc = (mastra as unknown as { heartbeats?: unknown }).heartbeats;\n if (!svc) {\n throw new HTTPException(404, { message: 'Heartbeats not supported by this server' });\n }\n return svc;\n}\n\n/**\n * Resolve a heartbeat by its globally-unique `hb_<uuid>` id. Returns 404 for\n * missing rows. Heartbeats are addressed by id (consistent with\n * `/schedules/:scheduleId`); the owning `agentId` is a property, not a key.\n */\nasync function loadHeartbeat(mastra: Mastra, heartbeatId: string) {\n const heartbeats = getHeartbeats(mastra);\n const heartbeat = await heartbeats.get(heartbeatId);\n if (!heartbeat) {\n throw new HTTPException(404, { message: 'Heartbeat not found' });\n }\n return heartbeat;\n}\n\nexport const LIST_HEARTBEATS_ROUTE = createRoute({\n method: 'GET',\n path: '/heartbeats',\n responseType: 'json' as const,\n queryParamSchema: listHeartbeatsQuerySchema,\n responseSchema: listHeartbeatsResponseSchema,\n summary: 'List heartbeats across all agents',\n description: 'Returns the configured heartbeats, optionally filtered by agentId/threadId/resourceId/name.',\n tags: ['Heartbeats'],\n requiresAuth: true,\n handler: async ({ mastra, agentId, threadId, resourceId, name }) => {\n const heartbeats = getHeartbeats(mastra);\n const filter: Record<string, string> = {};\n if (agentId) filter.agentId = agentId;\n if (threadId) filter.threadId = threadId;\n if (resourceId) filter.resourceId = resourceId;\n if (name) filter.name = name;\n const rows = await heartbeats.list(filter);\n return { heartbeats: rows };\n },\n});\n\nexport const GET_HEARTBEAT_ROUTE = createRoute({\n method: 'GET',\n path: '/heartbeats/:heartbeatId',\n responseType: 'json' as const,\n pathParamSchema: heartbeatPathParams,\n responseSchema: heartbeatSchema,\n summary: 'Get a heartbeat by ID',\n description: 'Returns a single heartbeat by its id.',\n tags: ['Heartbeats'],\n requiresAuth: true,\n handler: async ({ mastra, heartbeatId }) => {\n return await loadHeartbeat(mastra, heartbeatId);\n },\n});\n\nexport const CREATE_HEARTBEAT_ROUTE = createRoute({\n method: 'POST',\n path: '/heartbeats',\n responseType: 'json' as const,\n bodySchema: createHeartbeatBodySchema,\n responseSchema: heartbeatSchema,\n summary: 'Create a heartbeat',\n description:\n 'Creates a new heartbeat owned by the agent named in `agentId`. Multiple heartbeats per agent/thread are supported; each gets a random `hb_<uuid>` id. Use `name` to label distinct heartbeats on the same agent/thread.',\n tags: ['Heartbeats'],\n requiresAuth: true,\n handler: async ({ mastra, agentId, ...body }) => {\n // getAgentById throws a MastraError (status 404) when the agent is unknown;\n // translate that into a clean HTTP 404 instead of letting it surface as 500.\n try {\n mastra.getAgentById(agentId);\n } catch {\n throw new HTTPException(404, { message: `Agent \"${agentId}\" not found` });\n }\n const heartbeats = getHeartbeats(mastra);\n return await heartbeats.create({\n agentId,\n cron: body.cron,\n prompt: body.prompt,\n ...(body.id ? { id: body.id } : {}),\n ...(body.name ? { name: body.name } : {}),\n ...(body.timezone ? { timezone: body.timezone } : {}),\n ...(body.threadId ? { threadId: body.threadId } : {}),\n ...(body.resourceId ? { resourceId: body.resourceId } : {}),\n ...(body.signalType ? { signalType: body.signalType } : {}),\n ...(body.tagName ? { tagName: body.tagName } : {}),\n ...(body.attributes ? { attributes: body.attributes } : {}),\n ...(body.ifActive ? { ifActive: body.ifActive } : {}),\n ...(body.ifIdle ? { ifIdle: body.ifIdle } : {}),\n ...(body.providerOptions ? { providerOptions: body.providerOptions } : {}),\n ...(body.metadata ? { metadata: body.metadata } : {}),\n });\n },\n});\n\nexport const UPDATE_HEARTBEAT_ROUTE = createRoute({\n method: 'PATCH',\n path: '/heartbeats/:heartbeatId',\n responseType: 'json' as const,\n pathParamSchema: heartbeatPathParams,\n bodySchema: updateHeartbeatBodySchema,\n responseSchema: heartbeatSchema,\n summary: 'Update a heartbeat',\n description:\n 'Partial update of a heartbeat. `threadId` and `resourceId` are part of the heartbeat identity and cannot be changed — to re-target, delete and recreate. Editing `cron` (or `timezone`) recomputes `nextFireAt`.',\n tags: ['Heartbeats'],\n requiresAuth: true,\n handler: async ({ mastra, heartbeatId, ...body }) => {\n await loadHeartbeat(mastra, heartbeatId);\n const heartbeats = getHeartbeats(mastra);\n return await heartbeats.update(heartbeatId, {\n ...(body.cron !== undefined ? { cron: body.cron } : {}),\n ...(body.timezone !== undefined ? { timezone: body.timezone } : {}),\n ...(body.prompt !== undefined ? { prompt: body.prompt } : {}),\n ...(body.name !== undefined ? { name: body.name } : {}),\n ...(body.signalType !== undefined ? { signalType: body.signalType } : {}),\n ...(body.tagName !== undefined ? { tagName: body.tagName } : {}),\n ...(body.attributes !== undefined ? { attributes: body.attributes } : {}),\n ...(body.ifActive !== undefined ? { ifActive: body.ifActive } : {}),\n ...(body.ifIdle !== undefined ? { ifIdle: body.ifIdle } : {}),\n ...(body.providerOptions !== undefined ? { providerOptions: body.providerOptions } : {}),\n ...(body.metadata !== undefined ? { metadata: body.metadata } : {}),\n });\n },\n});\n\nexport const DELETE_HEARTBEAT_ROUTE = createRoute({\n method: 'DELETE',\n path: '/heartbeats/:heartbeatId',\n responseType: 'json' as const,\n pathParamSchema: heartbeatPathParams,\n responseSchema: deleteHeartbeatResponseSchema,\n summary: 'Delete a heartbeat',\n description: 'Permanently deletes the heartbeat. 404 when the heartbeat does not exist.',\n tags: ['Heartbeats'],\n requiresAuth: true,\n handler: async ({ mastra, heartbeatId }) => {\n await loadHeartbeat(mastra, heartbeatId);\n const heartbeats = getHeartbeats(mastra);\n await heartbeats.delete(heartbeatId);\n return { message: 'Heartbeat deleted' };\n },\n});\n\nexport const PAUSE_HEARTBEAT_ROUTE = createRoute({\n method: 'POST',\n path: '/heartbeats/:heartbeatId/pause',\n responseType: 'json' as const,\n pathParamSchema: heartbeatPathParams,\n responseSchema: heartbeatSchema,\n summary: 'Pause a heartbeat',\n description: 'Marks the heartbeat as paused. The scheduler tick loop will skip paused heartbeats. Idempotent.',\n tags: ['Heartbeats'],\n requiresAuth: true,\n handler: async ({ mastra, heartbeatId }) => {\n await loadHeartbeat(mastra, heartbeatId);\n const heartbeats = getHeartbeats(mastra);\n return await heartbeats.pause(heartbeatId);\n },\n});\n\nexport const RESUME_HEARTBEAT_ROUTE = createRoute({\n method: 'POST',\n path: '/heartbeats/:heartbeatId/resume',\n responseType: 'json' as const,\n pathParamSchema: heartbeatPathParams,\n responseSchema: heartbeatSchema,\n summary: 'Resume a paused heartbeat',\n description:\n 'Marks the heartbeat as active and recomputes nextFireAt from \"now\" so a long-paused heartbeat does not fire a backlog. Idempotent.',\n tags: ['Heartbeats'],\n requiresAuth: true,\n handler: async ({ mastra, heartbeatId }) => {\n await loadHeartbeat(mastra, heartbeatId);\n const heartbeats = getHeartbeats(mastra);\n return await heartbeats.resume(heartbeatId);\n },\n});\n\nexport const RUN_HEARTBEAT_ROUTE = createRoute({\n method: 'POST',\n path: '/heartbeats/:heartbeatId/run',\n responseType: 'json' as const,\n pathParamSchema: heartbeatPathParams,\n responseSchema: runHeartbeatResponseSchema,\n summary: 'Fire a heartbeat now',\n description:\n 'Manually triggers a single heartbeat run out-of-band from the cron schedule. Records a trigger row with `triggerKind: \"manual\"`. Does not advance `nextFireAt`.',\n tags: ['Heartbeats'],\n requiresAuth: true,\n handler: async ({ mastra, heartbeatId }) => {\n await loadHeartbeat(mastra, heartbeatId);\n const heartbeats = getHeartbeats(mastra);\n return await heartbeats.run(heartbeatId);\n },\n});\n"]}
@@ -1,142 +0,0 @@
1
- import { z } from 'zod';
2
-
3
- // src/server/schemas/schedules.ts
4
- var scheduleStatusSchema = z.enum(["active", "paused"]);
5
- var workflowScheduleTargetSchema = z.object({
6
- type: z.literal("workflow"),
7
- workflowId: z.string(),
8
- inputData: z.unknown().optional(),
9
- initialState: z.unknown().optional(),
10
- requestContext: z.record(z.string(), z.unknown()).optional()
11
- });
12
- var signalAttributesSchema = z.record(
13
- z.string(),
14
- z.union([z.string(), z.number(), z.boolean(), z.null()]).optional()
15
- );
16
- var ifActiveSchema = z.object({
17
- behavior: z.enum(["deliver", "persist", "discard"]).optional(),
18
- attributes: signalAttributesSchema.optional()
19
- });
20
- var ifIdleSchema = z.object({
21
- behavior: z.enum(["wake", "persist", "discard"]).optional(),
22
- attributes: signalAttributesSchema.optional(),
23
- streamOptions: z.object({
24
- requestContext: z.record(z.string(), z.unknown()).optional()
25
- }).optional()
26
- });
27
- var heartbeatScheduleTargetSchema = z.object({
28
- type: z.literal("heartbeat"),
29
- agentId: z.string(),
30
- prompt: z.string(),
31
- threadId: z.string().optional(),
32
- resourceId: z.string().optional(),
33
- signalType: z.string().optional(),
34
- tagName: z.string().optional(),
35
- attributes: signalAttributesSchema.optional(),
36
- ifActive: ifActiveSchema.optional(),
37
- ifIdle: ifIdleSchema.optional(),
38
- providerOptions: z.record(z.string(), z.unknown()).optional(),
39
- requestContext: z.record(z.string(), z.unknown()).optional()
40
- });
41
- var scheduleTargetSchema = z.discriminatedUnion("type", [
42
- workflowScheduleTargetSchema,
43
- heartbeatScheduleTargetSchema
44
- ]);
45
- var workflowRunStatusSchema = z.enum([
46
- "running",
47
- "success",
48
- "failed",
49
- "tripwire",
50
- "suspended",
51
- "waiting",
52
- "pending",
53
- "canceled",
54
- "bailed",
55
- "paused",
56
- "skipped"
57
- ]);
58
- var scheduleRunSummarySchema = z.object({
59
- status: workflowRunStatusSchema,
60
- startedAt: z.number().optional(),
61
- completedAt: z.number().optional(),
62
- durationMs: z.number().optional(),
63
- error: z.string().optional()
64
- });
65
- var scheduleResponseSchema = z.object({
66
- id: z.string(),
67
- target: scheduleTargetSchema,
68
- cron: z.string(),
69
- timezone: z.string().optional(),
70
- status: scheduleStatusSchema,
71
- nextFireAt: z.number(),
72
- lastFireAt: z.number().optional(),
73
- lastRunId: z.string().optional(),
74
- lastRun: scheduleRunSummarySchema.optional(),
75
- metadata: z.record(z.string(), z.unknown()).optional(),
76
- ownerType: z.string().optional(),
77
- ownerId: z.string().optional(),
78
- createdAt: z.number(),
79
- updatedAt: z.number()
80
- });
81
- var scheduleTriggerOutcomeSchema = z.enum([
82
- "published",
83
- "succeeded",
84
- "delivered",
85
- "persisted",
86
- "discarded",
87
- "skipped",
88
- "aborted",
89
- "failed",
90
- // Legacy queue/notification outcomes — no longer written, but trigger rows
91
- // persisted by older builds may still carry them. Kept readable so the
92
- // response validator does not reject historical rows. Mirrors the core
93
- // ScheduleTriggerOutcome union.
94
- "acked",
95
- "alerted",
96
- "deferred",
97
- "appended-from-queue",
98
- "dropped-stale",
99
- "dropped-superseded",
100
- "dropped-busy"
101
- ]);
102
- var scheduleTriggerKindSchema = z.enum(["schedule-fire", "queue-drain", "manual"]);
103
- var scheduleTriggerResponseSchema = z.object({
104
- id: z.string().optional(),
105
- scheduleId: z.string(),
106
- runId: z.string().nullable(),
107
- scheduledFireAt: z.number(),
108
- actualFireAt: z.number(),
109
- outcome: scheduleTriggerOutcomeSchema,
110
- error: z.string().optional(),
111
- triggerKind: scheduleTriggerKindSchema.optional(),
112
- parentTriggerId: z.string().optional(),
113
- metadata: z.record(z.string(), z.unknown()).optional(),
114
- run: scheduleRunSummarySchema.optional()
115
- });
116
- var listSchedulesQuerySchema = z.object({
117
- workflowId: z.string().optional(),
118
- status: scheduleStatusSchema.optional(),
119
- ownerType: z.string().optional(),
120
- ownerId: z.string().optional()
121
- }).refine((data) => data.ownerId === void 0 || data.ownerType !== void 0, {
122
- message: "ownerId can only be used together with ownerType",
123
- path: ["ownerId"]
124
- });
125
- var listSchedulesResponseSchema = z.object({
126
- schedules: z.array(scheduleResponseSchema)
127
- });
128
- var scheduleIdPathParams = z.object({
129
- scheduleId: z.string()
130
- });
131
- var listScheduleTriggersQuerySchema = z.object({
132
- limit: z.coerce.number().int().positive().optional(),
133
- fromActualFireAt: z.coerce.number().int().nonnegative().optional(),
134
- toActualFireAt: z.coerce.number().int().nonnegative().optional()
135
- });
136
- var listScheduleTriggersResponseSchema = z.object({
137
- triggers: z.array(scheduleTriggerResponseSchema)
138
- });
139
-
140
- export { listScheduleTriggersQuerySchema, listScheduleTriggersResponseSchema, listSchedulesQuerySchema, listSchedulesResponseSchema, scheduleIdPathParams, scheduleResponseSchema, scheduleRunSummarySchema };
141
- //# sourceMappingURL=chunk-4HFIGLPA.js.map
142
- //# sourceMappingURL=chunk-4HFIGLPA.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/server/schemas/schedules.ts"],"names":[],"mappings":"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","file":"chunk-4HFIGLPA.js","sourcesContent":["import { z } from 'zod';\n\nexport const scheduleStatusSchema = z.enum(['active', 'paused']);\n\nconst workflowScheduleTargetSchema = z.object({\n type: z.literal('workflow'),\n workflowId: z.string(),\n inputData: z.unknown().optional(),\n initialState: z.unknown().optional(),\n requestContext: z.record(z.string(), z.unknown()).optional(),\n});\n\nconst signalAttributesSchema = z.record(\n z.string(),\n z.union([z.string(), z.number(), z.boolean(), z.null()]).optional(),\n);\n\nconst ifActiveSchema = z.object({\n behavior: z.enum(['deliver', 'persist', 'discard']).optional(),\n attributes: signalAttributesSchema.optional(),\n});\n\nconst ifIdleSchema = z.object({\n behavior: z.enum(['wake', 'persist', 'discard']).optional(),\n attributes: signalAttributesSchema.optional(),\n streamOptions: z\n .object({\n requestContext: z.record(z.string(), z.unknown()).optional(),\n })\n .optional(),\n});\n\nconst heartbeatScheduleTargetSchema = z.object({\n type: z.literal('heartbeat'),\n agentId: z.string(),\n prompt: z.string(),\n threadId: z.string().optional(),\n resourceId: z.string().optional(),\n signalType: z.string().optional(),\n tagName: z.string().optional(),\n attributes: signalAttributesSchema.optional(),\n ifActive: ifActiveSchema.optional(),\n ifIdle: ifIdleSchema.optional(),\n providerOptions: z.record(z.string(), z.unknown()).optional(),\n requestContext: z.record(z.string(), z.unknown()).optional(),\n});\n\nexport const scheduleTargetSchema = z.discriminatedUnion('type', [\n workflowScheduleTargetSchema,\n heartbeatScheduleTargetSchema,\n]);\n\nexport const workflowRunStatusSchema = z.enum([\n 'running',\n 'success',\n 'failed',\n 'tripwire',\n 'suspended',\n 'waiting',\n 'pending',\n 'canceled',\n 'bailed',\n 'paused',\n 'skipped',\n]);\n\nexport const scheduleRunSummarySchema = z.object({\n status: workflowRunStatusSchema,\n startedAt: z.number().optional(),\n completedAt: z.number().optional(),\n durationMs: z.number().optional(),\n error: z.string().optional(),\n});\n\nexport const scheduleResponseSchema = z.object({\n id: z.string(),\n target: scheduleTargetSchema,\n cron: z.string(),\n timezone: z.string().optional(),\n status: scheduleStatusSchema,\n nextFireAt: z.number(),\n lastFireAt: z.number().optional(),\n lastRunId: z.string().optional(),\n lastRun: scheduleRunSummarySchema.optional(),\n metadata: z.record(z.string(), z.unknown()).optional(),\n ownerType: z.string().optional(),\n ownerId: z.string().optional(),\n createdAt: z.number(),\n updatedAt: z.number(),\n});\n\nexport const scheduleTriggerOutcomeSchema = z.enum([\n 'published',\n 'succeeded',\n 'delivered',\n 'persisted',\n 'discarded',\n 'skipped',\n 'aborted',\n 'failed',\n // Legacy queue/notification outcomes — no longer written, but trigger rows\n // persisted by older builds may still carry them. Kept readable so the\n // response validator does not reject historical rows. Mirrors the core\n // ScheduleTriggerOutcome union.\n 'acked',\n 'alerted',\n 'deferred',\n 'appended-from-queue',\n 'dropped-stale',\n 'dropped-superseded',\n 'dropped-busy',\n]);\n\nexport const scheduleTriggerKindSchema = z.enum(['schedule-fire', 'queue-drain', 'manual']);\n\nexport const scheduleTriggerResponseSchema = z.object({\n id: z.string().optional(),\n scheduleId: z.string(),\n runId: z.string().nullable(),\n scheduledFireAt: z.number(),\n actualFireAt: z.number(),\n outcome: scheduleTriggerOutcomeSchema,\n error: z.string().optional(),\n triggerKind: scheduleTriggerKindSchema.optional(),\n parentTriggerId: z.string().optional(),\n metadata: z.record(z.string(), z.unknown()).optional(),\n run: scheduleRunSummarySchema.optional(),\n});\n\nexport const listSchedulesQuerySchema = z\n .object({\n workflowId: z.string().optional(),\n status: scheduleStatusSchema.optional(),\n ownerType: z.string().optional(),\n ownerId: z.string().optional(),\n })\n .refine(data => data.ownerId === undefined || data.ownerType !== undefined, {\n message: 'ownerId can only be used together with ownerType',\n path: ['ownerId'],\n });\n\nexport const listSchedulesResponseSchema = z.object({\n schedules: z.array(scheduleResponseSchema),\n});\n\nexport const scheduleIdPathParams = z.object({\n scheduleId: z.string(),\n});\n\nexport const listScheduleTriggersQuerySchema = z.object({\n limit: z.coerce.number().int().positive().optional(),\n fromActualFireAt: z.coerce.number().int().nonnegative().optional(),\n toActualFireAt: z.coerce.number().int().nonnegative().optional(),\n});\n\nexport const listScheduleTriggersResponseSchema = z.object({\n triggers: z.array(scheduleTriggerResponseSchema),\n});\n"]}