






















@@ -247,9 +247,11 @@ async function deliverTelegramDirectMessageCompletion(params: {
247247sendMessage?: typeof runtimeSendMessage;
248248internalEvents?: AgentInternalEvent[];
249249isActive?: boolean;
250+requesterSessionId?: string | null;
250251queueEmbeddedPiMessageWithOutcome?: QueueEmbeddedPiMessageWithOutcome;
251252requesterSessionKey?: string;
252253sourceTool?: string;
254+runtimeConfig?: Record<string, unknown>;
253255origin?: {
254256channel: "telegram";
255257to: string;
@@ -266,10 +268,13 @@ async function deliverTelegramDirectMessageCompletion(params: {
266268testing.setDepsForTest({
267269callGateway: params.callGateway,
268270getRequesterSessionActivity: () => ({
269-sessionId: "requester-session-telegram",
271+sessionId:
272+params.requesterSessionId === null
273+ ? undefined
274+ : (params.requesterSessionId ?? "requester-session-telegram"),
270275isActive: params.isActive === true,
271276}),
272-getRuntimeConfig: () => ({}) as never,
277+getRuntimeConfig: () => (params.runtimeConfig ?? {}) as never,
273278sendMessage: params.sendMessage ?? runtimeSendMessage,
274279 ...(params.queueEmbeddedPiMessageWithOutcome
275280 ? { queueEmbeddedPiMessageWithOutcome: params.queueEmbeddedPiMessageWithOutcome }
@@ -1416,13 +1421,35 @@ describe("deliverSubagentAnnouncement completion delivery", () => {
14161421});
1417142214181423it("reports failure for Telegram DMs when announce-agent delivery fails", async () => {
1419-const callGateway = vi.fn(async () => {
1420-throw new Error("UNAVAILABLE: requester wake failed");
1421-}) as unknown as typeof runtimeCallGateway;
1424+const callGateway = createGatewayMock({
1425+result: {
1426+deliveryStatus: {
1427+status: "failed",
1428+errorMessage: "requester wake failed",
1429+},
1430+},
1431+});
14221432const sendMessage = createSendMessageMock();
14231433const result = await deliverTelegramDirectMessageCompletion({
14241434 callGateway,
14251435 sendMessage,
1436+queueEmbeddedPiMessageWithOutcome: createQueueOutcomeMock(false),
1437+requesterSessionId: null,
1438+requesterSessionKey: "agent:main:telegram:direct:123456789",
1439+origin: {
1440+channel: "telegram",
1441+to: "direct:123456789",
1442+accountId: "bot-1",
1443+},
1444+runtimeConfig: {
1445+agents: {
1446+defaults: {
1447+subagents: {
1448+announceTimeoutMs: 10,
1449+},
1450+},
1451+},
1452+},
14261453internalEvents: [
14271454{
14281455type: "task_completion",
@@ -1442,7 +1469,7 @@ describe("deliverSubagentAnnouncement completion delivery", () => {
14421469expectRecordFields(result, {
14431470delivered: false,
14441471path: "direct",
1445-error: "UNAVAILABLE: requester wake failed",
1472+error: "requester wake failed",
14461473});
14471474expect(sendMessage).not.toHaveBeenCalled();
14481475});
@@ -1460,6 +1487,15 @@ describe("deliverSubagentAnnouncement completion delivery", () => {
14601487 sendMessage,
14611488isActive: true,
14621489 queueEmbeddedPiMessageWithOutcome,
1490+runtimeConfig: {
1491+agents: {
1492+defaults: {
1493+subagents: {
1494+announceTimeoutMs: 10,
1495+},
1496+},
1497+},
1498+},
14631499internalEvents: [
14641500{
14651501type: "task_completion",
@@ -1496,7 +1532,7 @@ describe("deliverSubagentAnnouncement completion delivery", () => {
14961532steeringMode: "all",
14971533debounceMs: 500,
14981534waitForTranscriptCommit: true,
1499-deliveryTimeoutMs: 120_000,
1535+deliveryTimeoutMs: 10,
15001536},
15011537);
15021538expect(callGateway).toHaveBeenCalledTimes(1);
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。