fix(cron): pass agent identity through delivery path (#16218) (#16242)

* fix(cron): pass agent identity through delivery path

Cron delivery messages now include agent identity (name, avatar) in
outbound messages. Identity fields are passed best-effort for Slack
(graceful fallback if chat:write.customize scope is missing).

Fixes #16218

* fix: fix Slack cron delivery identity (#16242) (thanks @robbyczgw-cla)

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
This commit is contained in:
Robby
2026-02-14 16:08:51 +01:00
committed by GitHub
parent 497b060e49
commit 09e1cbc35d
8 changed files with 222 additions and 23 deletions

View File

@@ -85,6 +85,9 @@ async function createChannelHandler(params: {
accountId?: string;
replyToId?: string | null;
threadId?: string | number | null;
username?: string;
icon_url?: string;
icon_emoji?: string;
deps?: OutboundSendDeps;
gifPlayback?: boolean;
silent?: boolean;
@@ -101,6 +104,9 @@ async function createChannelHandler(params: {
accountId: params.accountId,
replyToId: params.replyToId,
threadId: params.threadId,
username: params.username,
icon_url: params.icon_url,
icon_emoji: params.icon_emoji,
deps: params.deps,
gifPlayback: params.gifPlayback,
silent: params.silent,
@@ -119,6 +125,9 @@ function createPluginHandler(params: {
accountId?: string;
replyToId?: string | null;
threadId?: string | number | null;
username?: string;
icon_url?: string;
icon_emoji?: string;
deps?: OutboundSendDeps;
gifPlayback?: boolean;
silent?: boolean;
@@ -145,6 +154,9 @@ function createPluginHandler(params: {
accountId: params.accountId,
replyToId: params.replyToId,
threadId: params.threadId,
username: params.username,
icon_url: params.icon_url,
icon_emoji: params.icon_emoji,
gifPlayback: params.gifPlayback,
deps: params.deps,
silent: params.silent,
@@ -159,6 +171,9 @@ function createPluginHandler(params: {
accountId: params.accountId,
replyToId: params.replyToId,
threadId: params.threadId,
username: params.username,
icon_url: params.icon_url,
icon_emoji: params.icon_emoji,
gifPlayback: params.gifPlayback,
deps: params.deps,
silent: params.silent,
@@ -172,6 +187,9 @@ function createPluginHandler(params: {
accountId: params.accountId,
replyToId: params.replyToId,
threadId: params.threadId,
username: params.username,
icon_url: params.icon_url,
icon_emoji: params.icon_emoji,
gifPlayback: params.gifPlayback,
deps: params.deps,
silent: params.silent,
@@ -189,6 +207,9 @@ export async function deliverOutboundPayloads(params: {
payloads: ReplyPayload[];
replyToId?: string | null;
threadId?: string | number | null;
username?: string;
icon_url?: string;
icon_emoji?: string;
deps?: OutboundSendDeps;
gifPlayback?: boolean;
abortSignal?: AbortSignal;
@@ -271,6 +292,9 @@ async function deliverOutboundPayloadsCore(params: {
payloads: ReplyPayload[];
replyToId?: string | null;
threadId?: string | number | null;
username?: string;
icon_url?: string;
icon_emoji?: string;
deps?: OutboundSendDeps;
gifPlayback?: boolean;
abortSignal?: AbortSignal;
@@ -299,6 +323,9 @@ async function deliverOutboundPayloadsCore(params: {
accountId,
replyToId: params.replyToId,
threadId: params.threadId,
username: params.username,
icon_url: params.icon_url,
icon_emoji: params.icon_emoji,
gifPlayback: params.gifPlayback,
silent: params.silent,
});