feat(cron): include delivery channel/to in finished event
When a cron job with agentTurn payload completes, include the delivery target fields (channel and to) in the cron.finished event. This enables gateway clients to deliver cron messages to specific channels instead of broadcasting to all user platforms. Use case: When an agent schedules a reminder like "Remind me on Discord: ...", the external gateway can now deliver the message only to Discord instead of all channels. Changes: - Add channel/to fields to CronEvent type - Add channel/to fields to CronRunLogEntrySchema - Include channel/to from job.payload when emitting finished event Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
parent
c8063bdcd8
commit
5de932ba26
@ -10,6 +10,10 @@ export type CronEvent = {
|
||||
error?: string;
|
||||
summary?: string;
|
||||
nextRunAtMs?: number;
|
||||
/** Delivery channel from the job payload (for agentTurn jobs). */
|
||||
channel?: string;
|
||||
/** Delivery target from the job payload (for agentTurn jobs). */
|
||||
to?: string;
|
||||
};
|
||||
|
||||
export type Logger = {
|
||||
|
||||
@ -103,6 +103,9 @@ export async function executeJob(
|
||||
runAtMs: startedAt,
|
||||
durationMs: job.state.lastDurationMs,
|
||||
nextRunAtMs: job.state.nextRunAtMs,
|
||||
// Include delivery target from payload for agentTurn jobs
|
||||
channel: job.payload.kind === "agentTurn" ? job.payload.channel : undefined,
|
||||
to: job.payload.kind === "agentTurn" ? job.payload.to : undefined,
|
||||
});
|
||||
|
||||
if (shouldDelete && state.store) {
|
||||
|
||||
@ -240,6 +240,10 @@ export const CronRunLogEntrySchema = Type.Object(
|
||||
runAtMs: Type.Optional(Type.Integer({ minimum: 0 })),
|
||||
durationMs: Type.Optional(Type.Integer({ minimum: 0 })),
|
||||
nextRunAtMs: Type.Optional(Type.Integer({ minimum: 0 })),
|
||||
/** Delivery channel from the job payload (for agentTurn jobs). */
|
||||
channel: Type.Optional(Type.String()),
|
||||
/** Delivery target from the job payload (for agentTurn jobs). */
|
||||
to: Type.Optional(Type.String()),
|
||||
},
|
||||
{ additionalProperties: false },
|
||||
);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user