diff --git a/packages/opencode/src/cli/cmd/run/subagent-data.ts b/packages/opencode/src/cli/cmd/run/subagent-data.ts index c1093b1799..a8e92e17bb 100644 --- a/packages/opencode/src/cli/cmd/run/subagent-data.ts +++ b/packages/opencode/src/cli/cmd/run/subagent-data.ts @@ -518,27 +518,28 @@ function snapshotQueues(data: SubagentData) { } } -export function snapshotSubagentData(data: SubagentData): FooterSubagentState { +function snapshotState(data: SubagentData, details: FooterSubagentState["details"]): FooterSubagentState { return { tabs: listSubagentTabs(data), - details: Object.fromEntries( - [...data.details.entries()].map(([sessionID, detail]) => [sessionID, snapshotDetail(detail)]), - ), + details, ...snapshotQueues(data), } } +export function snapshotSubagentData(data: SubagentData): FooterSubagentState { + return snapshotState( + data, + Object.fromEntries([...data.details.entries()].map(([sessionID, detail]) => [sessionID, snapshotDetail(detail)])), + ) +} + export function snapshotSelectedSubagentData( data: SubagentData, selectedSessionID: string | undefined, ): FooterSubagentState { const detail = selectedSessionID ? data.details.get(selectedSessionID) : undefined - return { - tabs: listSubagentTabs(data), - details: detail ? { [detail.sessionID]: snapshotDetail(detail) } : {}, - ...snapshotQueues(data), - } + return snapshotState(data, detail ? { [detail.sessionID]: snapshotDetail(detail) } : {}) } export function bootstrapSubagentData(input: BootstrapSubagentInput) {