Skip to content

Commit 9a57bdf

Browse files
committed
fix(regression): preserve session tool event metadata
1 parent 86d8b06 commit 9a57bdf

2 files changed

Lines changed: 30 additions & 1 deletion

File tree

src/gateway/server-chat.agent-events.test.ts

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -655,6 +655,21 @@ describe("agent event handler", () => {
655655
resolveSessionKeyForRun: () => "session-1",
656656
});
657657

658+
vi.mocked(loadGatewaySessionRow).mockReturnValue({
659+
key: "session-1",
660+
kind: "direct",
661+
spawnedBy: "agent:main:main",
662+
spawnedWorkspaceDir: "/tmp/subagent",
663+
forkedFromParent: true,
664+
spawnDepth: 2,
665+
subagentRole: "orchestrator",
666+
subagentControlScope: "children",
667+
lastThreadId: 42,
668+
fastMode: true,
669+
verboseLevel: "on",
670+
updatedAt: 1_200,
671+
});
672+
658673
registerAgentRunContext("run-session-tool", { sessionKey: "session-1", verboseLevel: "off" });
659674
sessionEventSubscribers.subscribe("conn-session");
660675

@@ -677,6 +692,15 @@ describe("agent event handler", () => {
677692
expect.objectContaining({
678693
runId: "run-session-tool",
679694
sessionKey: "session-1",
695+
spawnedBy: "agent:main:main",
696+
spawnedWorkspaceDir: "/tmp/subagent",
697+
forkedFromParent: true,
698+
spawnDepth: 2,
699+
subagentRole: "orchestrator",
700+
subagentControlScope: "children",
701+
lastThreadId: 42,
702+
fastMode: true,
703+
verboseLevel: "on",
680704
stream: "tool",
681705
ts: 1_234,
682706
data: expect.objectContaining({

src/gateway/server-chat.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -780,7 +780,12 @@ export function createAgentEventHandler({
780780
if (sessionKey) {
781781
const sessionSubscribers = sessionEventSubscribers.getAll();
782782
if (sessionSubscribers.size > 0) {
783-
broadcastToConnIds("session.tool", toolPayload, sessionSubscribers, { dropIfSlow: true });
783+
broadcastToConnIds(
784+
"session.tool",
785+
{ ...toolPayload, ...buildSessionEventSnapshot(sessionKey) },
786+
sessionSubscribers,
787+
{ dropIfSlow: true },
788+
);
784789
}
785790
}
786791
} else {

0 commit comments

Comments
 (0)