




















@@ -18,6 +18,24 @@ const hoisted = vi.hoisted(() => ({
1818},
1919}));
202021+function firstRegisteredSubagentRun(): {
22+requesterOrigin?: { channel?: string; accountId?: string; to?: string };
23+expectsCompletionMessage?: boolean;
24+spawnMode?: string;
25+} {
26+const call = hoisted.registerSubagentRunMock.mock.calls[0]?.[0] as
27+| {
28+requesterOrigin?: { channel?: string; accountId?: string; to?: string };
29+expectsCompletionMessage?: boolean;
30+spawnMode?: string;
31+}
32+| undefined;
33+if (!call) {
34+throw new Error("expected registered subagent run");
35+}
36+return call;
37+}
38+2139describe("spawnSubagentDirect thread binding delivery", () => {
2240type SpawnModule = Awaited<ReturnType<typeof loadSubagentSpawnModuleForTest>>;
2341type SessionBindingService = NonNullable<
@@ -161,13 +179,7 @@ describe("spawnSubagentDirect thread binding delivery", () => {
161179expect(agentCall?.params?.to).toBe(`room:${boundRoom}`);
162180expect(agentCall?.params?.threadId).toBe("$thread-root");
163181expect(agentCall?.params?.deliver).toBe(true);
164-const registeredRun = hoisted.registerSubagentRunMock.mock.calls.at(0)?.[0] as
165-| {
166-requesterOrigin?: { channel?: string; accountId?: string; to?: string };
167-expectsCompletionMessage?: boolean;
168-spawnMode?: string;
169-}
170-| undefined;
182+const registeredRun = firstRegisteredSubagentRun();
171183expect(registeredRun?.requesterOrigin?.channel).toBe("matrix");
172184expect(registeredRun?.requesterOrigin?.accountId).toBe("bot-beta");
173185expect(registeredRun?.requesterOrigin?.to).toBe(`room:${boundRoom}`);
@@ -222,12 +234,7 @@ describe("spawnSubagentDirect thread binding delivery", () => {
222234expect(agentCall?.params?.accountId).toBe("sut");
223235expect(agentCall?.params?.to).toBe("room:!parent:example");
224236expect(agentCall?.params?.deliver).toBe(false);
225-const registeredRun = hoisted.registerSubagentRunMock.mock.calls.at(0)?.[0] as
226-| {
227-requesterOrigin?: { channel?: string; accountId?: string; to?: string };
228-expectsCompletionMessage?: boolean;
229-}
230-| undefined;
237+const registeredRun = firstRegisteredSubagentRun();
231238expect(registeredRun?.expectsCompletionMessage).toBe(true);
232239expect(registeredRun?.requesterOrigin?.channel).toBe("matrix");
233240expect(registeredRun?.requesterOrigin?.accountId).toBe("sut");
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。