Skip to content

fix: agent streaming - #2880

Open
tevanburen wants to merge 8 commits into
devfrom
agent-streaming
Open

fix: agent streaming#2880
tevanburen wants to merge 8 commits into
devfrom
agent-streaming

Conversation

@tevanburen

@tevanburen tevanburen commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

Description

Small set of fixes to the agent-run harness and subagent infrastructure, surfaced while wiring up Playground's subagent UI.

Changes Made

  • AgentRuntimeManager.getRun: always populate pendingActions (empty by default) instead of only when the run is INPUT_REQUIRED, so consumers get a consistent field on every response.
  • SemossAgentHarness / HarnessToolExecutor: reattach _meta (including execution mode) to subagent tool calls (spawn/named/check/wait) — previously they had none, since they're not backed by room/workspace MCP metadata — and stop suppressing their tool-item stream events, so they render like ordinary tool calls instead of being hidden from the client.
  • SubAgentToolSynthesizer: explicitly declare SMSS_MCP_EXECUTION=auto on all subagent tool definitions. Without it, reattaching _meta caused MCPUtility.getValidMcpExecution to default them to ask, which incorrectly paused every spawn/check/wait call for user approval.
  • ModelInferenceLogsUtils.getUserConversations: exclude rooms with a non-null PARENT_ROOM_ID from GetPlaygroundRooms — every subagent spawn creates a real Room row, and these were leaking into the playground room list as if they were user-initiated conversations.

How to Test

  1. In a room in agent mode, ask the model to spawn a subagent — spawn/wait/check should execute immediately, not pause for approval.
  2. Fetch the persisted message via GetPlaygroundMessages — the SpawnSubAgent/WaitForSubAgent tool call should carry _meta.SMSS_TOOL_KIND and _meta.SMSS_MCP_EXECUTION="auto".
  3. After a subagent spawn, check GetPlaygroundRooms — the subagent's own room should not appear in the list.
  4. Call GetAgentRun on a run that isn't paused — pendingActions should be an empty array, not missing.

Notes

  • Companion to the SemossWeb agent-streaming PR — Playground's subagent tool-card/stream rendering depends on the _meta/execution-mode fix here.

@snyk-io

snyk-io Bot commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

Snyk checks have passed. No issues have been found so far.

Status Scan Engine Critical High Medium Low Total (0)
Open Source Security 0 0 0 0 0 issues

💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse.

@tevanburen tevanburen self-assigned this Aug 14, 2026
@tevanburen
tevanburen marked this pull request as ready for review August 14, 2026 20:40
@tevanburen
tevanburen requested a review from a team as a code owner August 14, 2026 20:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants