


























@@ -450,14 +450,19 @@ describe("registerTelegramNativeCommands — session metadata", () => {
450450await handler(createTelegramPrivateCommandContext());
451451452452expect(sessionMocks.recordSessionMetaFromInbound).toHaveBeenCalledTimes(1);
453+const dispatchCall = (
454+replyMocks.dispatchReplyWithBufferedBlockDispatcher.mock.calls as unknown as Array<
455+[{ ctx?: { CommandTargetSessionKey?: string } }]
456+>
457+)[0]?.[0];
453458const call = (
454459sessionMocks.recordSessionMetaFromInbound.mock.calls as unknown as Array<
455460[{ sessionKey?: string; ctx?: { OriginatingChannel?: string; Provider?: string } }]
456461>
457462)[0]?.[0];
458463expect(call?.ctx?.OriginatingChannel).toBe("telegram");
459464expect(call?.ctx?.Provider).toBe("telegram");
460-expect(call?.sessionKey).toBe("agent:main:telegram:slash:200");
465+expect(call?.sessionKey).toBe(dispatchCall?.ctx?.CommandTargetSessionKey);
461466});
462467463468it("uses the target session model when building native argument menus", async () => {
@@ -749,7 +754,7 @@ describe("registerTelegramNativeCommands — session metadata", () => {
749754[{ sessionKey?: string }]
750755>
751756)[0]?.[0];
752-expect(sessionMetaCall?.sessionKey).toBe("agent:codex:telegram:slash:200");
757+expect(sessionMetaCall?.sessionKey).toBe(boundSessionKey);
753758});
754759755760it("routes Telegram native commands through topic-specific agent sessions", async () => {
@@ -772,6 +777,14 @@ describe("registerTelegramNativeCommands — session metadata", () => {
772777expect(dispatchCall?.ctx?.CommandTargetSessionKey).toBe(
773778"agent:zu:telegram:group:-1001234567890:topic:42",
774779);
780+const sessionMetaCall = (
781+sessionMocks.recordSessionMetaFromInbound.mock.calls as unknown as Array<
782+[{ sessionKey?: string; ctx?: { From?: string; ChatType?: string } }]
783+>
784+)[0]?.[0];
785+expect(sessionMetaCall?.sessionKey).toBe("agent:zu:telegram:group:-1001234567890:topic:42");
786+expect(sessionMetaCall?.ctx?.From).toBe("telegram:group:-1001234567890:topic:42");
787+expect(sessionMetaCall?.ctx?.ChatType).toBe("group");
775788});
776789777790it("routes Telegram native commands through bound topic sessions", async () => {
@@ -798,6 +811,12 @@ describe("registerTelegramNativeCommands — session metadata", () => {
798811>
799812)[0]?.[0];
800813expect(dispatchCall?.ctx?.CommandTargetSessionKey).toBe("agent:codex-acp:session-1");
814+const sessionMetaCall = (
815+sessionMocks.recordSessionMetaFromInbound.mock.calls as unknown as Array<
816+[{ sessionKey?: string }]
817+>
818+)[0]?.[0];
819+expect(sessionMetaCall?.sessionKey).toBe("agent:codex-acp:session-1");
801820expect(sessionBindingMocks.touch).toHaveBeenCalledWith(
802821"default:-1001234567890:topic:42",
803822undefined,
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。