From 1c815efedcf1f279f0061babdd25f36c49d57ce0 Mon Sep 17 00:00:00 2001 From: Brian Love Date: Wed, 2 Sep 2026 10:03:35 -0700 Subject: [PATCH 1/6] docs(runtimes): mastra delegation wire capture and hook findings Co-Authored-By: Claude Fable 5 --- .../angular/docs/wire-capture-subagents.md | 181 ++++++++++++++++++ 1 file changed, 181 insertions(+) create mode 100644 cockpit/runtimes/mastra/angular/docs/wire-capture-subagents.md diff --git a/cockpit/runtimes/mastra/angular/docs/wire-capture-subagents.md b/cockpit/runtimes/mastra/angular/docs/wire-capture-subagents.md new file mode 100644 index 000000000..177ba6dd3 --- /dev/null +++ b/cockpit/runtimes/mastra/angular/docs/wire-capture-subagents.md @@ -0,0 +1,181 @@ +# Mastra sub-agents: installed-API findings and delegation wire capture + +Task 0 spike evidence for the Mastra subagent PRs. Captured 2026-09-02 against +the live `deployments/ag-ui-mastra` service (`@mastra/core@1.63.2`, +`@ag-ui/mastra@1.1.2`) with a scratch `weather_forecaster` child agent +registered on the camping-trip supervisor. The scratch changes were reverted; +this document is the only artifact. + +## Verdict summary + +| Question | Answer | +| --- | --- | +| Sub-agents API present at installed `@mastra/core@1.63.2`? | **Yes** — no version bump needed. | +| Child registration | `agents: { weather_forecaster: childAgent }` on the supervisor's `Agent` config. | +| Delegation hooks | `delegation: { onDelegationStart, onDelegationComplete }` in stream options; works via the supervisor's `defaultOptions` (verified live — both hooks fired). | +| Delegation on the AG-UI wire today | An ordinary backend tool call named `agent-`: `TOOL_CALL_START` → one `TOOL_CALL_ARGS` blob → `TOOL_CALL_END` → `TOOL_CALL_RESULT` whose `content` is JSON `{text, subAgentThreadId, subAgentResourceId, subAgentToolResults}`. | +| Does child text stream incrementally anywhere? | **In-process yes, on the wire no.** The parent `fullStream` carries every child chunk wrapped as `tool-output` (`payload: {output: , toolCallId, toolName}`) — 82 inner `text-delta` chunks in the raw tap — but `@ag-ui/mastra`'s chunk processor drops them (`case "tool-output": break`). Only the final text reaches AG-UI, inside `TOOL_CALL_RESULT`. | +| Delegation tool-call id (for `parentToolCallId`) | The LLM's tool-call id (e.g. `call_aUfV9K0RCDZdZK3NWt9dRDKx`). Identical across `TOOL_CALL_START/ARGS/END/RESULT` and both hooks' `toolCallId`. | + +## Installed-API details (`node_modules/@mastra/core/dist`) + +- **Registration** — `agent/types.d.ts:656` (AgentConfig): + `agents?: DynamicArgument>>` — + "Sub-Agents that the agent can access." A plain `Agent` instance satisfies + `SubAgent` (`agent/subagent.d.ts:42`). Give the child a `description`; it + becomes the delegation tool's description. +- **Tool naming** — compiled `agent-B8m3ps7U.js:34916/35498/35513`: each child + becomes a tool `agent-${agentName}` where `agentName` is the key in the + `agents` record. Its input schema is + `{prompt, threadId, resourceId, instructions, maxSteps, suspendedToolRunId, resumeData}`. +- **Hook config site** — `agent/agent.types.d.ts` (~line 671 in + `AgentExecutionOptionsBase`): `delegation?: DelegationConfig` is a + **per-invocation stream/generate option**, not an `Agent` constructor field. + Since the AG-UI bridge calls `agent.stream()` without it, set it via the + supervisor's `defaultOptions: { delegation: {...} }` — verified live that + the merged defaults fire both hooks. `DelegationConfig` + (`agent.types.d.ts:294-344`) also offers `messageFilter`, + `includeSubAgentToolResultsInModelContext`, `hookErrorStrategy`. +- **Hook signatures** (`agent.types.d.ts:61-207`): + - `onDelegationStart(ctx: DelegationStartContext)` — `primitiveId`, + `primitiveType: 'agent'|'workflow'`, `prompt`, `params{threadId, resourceId, + instructions, maxSteps}`, `iteration`, `runId` (the PARENT run id), + `threadId`, `resourceId`, `parentAgentId`, `parentAgentName`, + **`toolCallId`** (the LLM tool-call id), `messages`, `requestContext`. + May return `{proceed, rejectionReason, modifiedPrompt, modifiedInstructions, + modifiedMaxSteps}`. + - `onDelegationComplete(ctx: DelegationCompleteContext)` — same identity + fields plus `result{text, subAgentThreadId, subAgentResourceId, + finishReason, subAgentToolResults[], usage}`, `duration`, `success`, + `error?`, `bail()`. May return `{feedback, resultText}`. + - **Neither hook exposes a child run id.** The only child-run identifiers are + `subAgentThreadId`/`subAgentResourceId` in the complete-hook result — a + synthesized `subagentRunId` (`-sub` or `-sub`) is + required. +- **Parent stream chunks during delegation** (`stream/types.d.ts:313-319, 904`): + every child chunk is forwarded to the parent stream as + `{type: 'tool-output', payload: {output: , toolCallId, toolName}}` + (compiled subagent tool execute, `agent-B8m3ps7U.js:35290-35300`: + `for await (chunk of streamResult.fullStream) context.writer.write(chunk)`). + The inner `start` chunk even carries the child agent id: + `output.payload = {id: 'weather_forecaster', messageId: ...}`. + The `agent-execution-*` / `routing-agent-*` chunk types belong to the + deprecated AgentNetwork path and never appeared; do not use `.network()`. + +## Raw parent-stream tap (direct `agent.stream()`, chunk types observed) + +``` +start, step-start, +tool-call-input-streaming-start/delta/end (name agent-weather_forecaster), +tool-call toolName=agent-weather_forecaster toolCallId=call_… +tool-output x266 payload.output.type ∈ {start, step-start, text-start, + text-delta(x82), text-end, tool-call, tool-call-delta, + tool-call-input-streaming-*, tool-result, step-finish, + finish} ← the ENTIRE child stream, incrementally +tool-result toolName=agent-weather_forecaster (same toolCallId) +step-start, text-start, text-delta(x43), text-end, step-finish, finish +``` + +So incremental child text exists at the Mastra layer, keyed to the delegation +`toolCallId` — it is `@ag-ui/mastra` that discards it. + +## Live AG-UI SSE capture (scrubbed, capture-2) + +Request: `POST /agent/mastra` with +`{"threadId":"t-spike-2","runId":"r-spike-2","messages":[{"role":"user","content":"Plan a trip to Bear Lake this weekend — what will the weather be?"}], ...}`. +Delegated on the first attempt in both runs. + +``` +data: {"type":"RUN_STARTED","threadId":"t-spike-2","runId":"r-spike-2"} +data: {"type":"TOOL_CALL_START","parentMessageId":"4aca0872-…","toolCallId":"call_aUfV9K0RCDZdZK3NWt9dRDKx","toolCallName":"agent-weather_forecaster"} +data: {"type":"TOOL_CALL_ARGS","toolCallId":"call_aUfV9K0RCDZdZK3NWt9dRDKx","delta":"{\"prompt\":\"What will the weather be like at Bear Lake this weekend?\",\"threadId\":null,\"resourceId\":null,\"instructions\":null,\"maxSteps\":5,\"suspendedToolRunId\":null,\"resumeData\":null}"} +data: {"type":"TOOL_CALL_END","toolCallId":"call_aUfV9K0RCDZdZK3NWt9dRDKx"} +data: {"type":"TOOL_CALL_RESULT","toolCallId":"call_aUfV9K0RCDZdZK3NWt9dRDKx","content":"{\"text\":\"Here's the weather forecast for Bear Lake this weekend:\\n\\n- **Friday**: Mostly sunny…\",\"subAgentThreadId\":\"t-spike-2-f50a7c26-…\",\"subAgentResourceId\":\"t-spike-2-weather_forecaster\",\"subAgentToolResults\":[{\"toolName\":\"updateWorkingMemory\",\"toolCallId\":\"call_rSLW…\",\"result\":{\"success\":true},…}]}","messageId":"70b04476-…","role":"tool"} +data: {"type":"STATE_SNAPSHOT","snapshot":{}} +data: {"type":"STATE_DELTA","delta":[{"op":"add","path":"/packing_list","value":{}}]} (x3 — child inherited working memory and wrote to it) +data: {"type":"TEXT_MESSAGE_CHUNK","role":"assistant","messageId":"4aca0872-…-agui-text","delta":"The"} (x26 — the PARENT's own summary, streamed) +… +data: {"type":"STATE_SNAPSHOT","snapshot":{"packing_list":{"title":"","items":[]}}} +data: {"type":"RUN_FINISHED","threadId":"t-spike-2","runId":"r-spike-2","usage":[{…}]} +``` + +Event-type totals for the run: 1 RUN_STARTED, 1 each TOOL_CALL_START/ARGS/END/ +RESULT, 2 STATE_SNAPSHOT, 3 STATE_DELTA, 26 TEXT_MESSAGE_CHUNK, 1 RUN_FINISHED. +Notes: + +- `TOOL_CALL_ARGS` arrives as ONE blob, not deltas — the bridge buffers backend + `tool-call` chunks and flushes start+args+end together. The child's `prompt` + is therefore readable on the wire before the result. +- The child's final text is embedded in `TOOL_CALL_RESULT.content` (JSON + string) — no child TEXT_MESSAGE events of any kind today. +- Working-memory injection: with no memory of its own the child inherits the + supervisor's working-memory tooling (`injectSupervisorMemory`), so it called + `updateWorkingMemory`; those nested calls appear only in + `subAgentToolResults`, never as top-level TOOL_CALL_* events. + +## Hook payloads (stderr, capture-1 run — same shape every run) + +``` +[HOOK onDelegationStart] {"primitiveId":"weather_forecaster","primitiveType":"agent", + "prompt":"What will the weather be like at Bear Lake this weekend?", + "params":{"threadId":"t-spike-1","resourceId":"t-spike-1","maxSteps":5}, + "iteration":1,"runId":"r-spike-1","threadId":"t-spike-1","resourceId":"t-spike-1", + "parentAgentId":"mastra","parentAgentName":"mastra", + "toolCallId":"call_cmS8mH1Up9o5MxKyMmTsYCPU","messages":"<1 messages>"} +[HOOK onDelegationComplete] {"primitiveId":"weather_forecaster","primitiveType":"agent", + "result":{"text":"Here's the weather forecast…","finishReason":"stop", + "subAgentThreadId":"t-spike-1-e80e0b3d-…","subAgentResourceId":"t-spike-1-weather_forecaster", + "subAgentToolResults":[…],"usage":{"inputTokens":1066,"outputTokens":127,…}}, + "duration":4987,"success":true,"iteration":1,"runId":"r-spike-1", + "toolCallId":"call_cmS8mH1Up9o5MxKyMmTsYCPU",…} +``` + +The `toolCallId` in both hooks equals the wire tool-call id exactly. + +## Emitter wiring decision + +Inject the SUBAGENT_* events in **`deployments/ag-ui-mastra/server.mjs`'s +translation loop** — the `sub.run(input).subscribe({ next })` handler +(server.mjs:111-126) — keyed off the AG-UI events themselves, NOT off the +delegation hooks: + +1. On `TOOL_CALL_START` with `toolCallName.startsWith('agent-')`: emit + `SUBAGENT_STARTED { subagentRunId: `${toolCallId}-sub`, name: + toolCallName.slice('agent-'.length), parentToolCallId: toolCallId }` + before forwarding the frame, and remember the toolCallId → name mapping. +2. On `TOOL_CALL_RESULT` for a remembered toolCallId: parse `content` JSON, + emit an attributed `TEXT_MESSAGE_CHUNK` (single final chunk — that is all + the wire has) carrying `result.text` under the subagent identity, then + `SUBAGENT_FINISHED { subagentRunId, parentToolCallId }`, then forward (or + suppress) the TOOL_CALL_RESULT per the target contract. + +Rationale: + +- The bridge gives the server only the AG-UI Observable; the Mastra chunk + stream (where `tool-output` child deltas live) is consumed inside + `@ag-ui/mastra` and dropped there. Recovering incremental child text would + mean bypassing/forking the bridge (subscribe to `agent.stream()` ourselves + and re-implement its ~800-line chunk processor) — not worth it for Task 0's + single-final-chunk contract, but the data provably exists if a later PR + wants real streaming. +- The delegation hooks (via `defaultOptions` in `agents.mjs`) fire in a + different async context than the Observable events, with no ordering + guarantee relative to `res.write` frames — unsafe as the primary emitter + trigger. They remain available for metadata enrichment (prompt, duration, + usage, `subAgentToolResults`) if SUBAGENT_FINISHED wants a payload beyond + ids. +- Everything needed for the target contract is already deterministic on the + wire: the `agent-` name prefix, the stable `toolCallId`, and the final text + in `TOOL_CALL_RESULT.content.text`. + +## Scratch setup used (reverted) + +- Child: `new Agent({ id/name: 'weather_forecaster', description: 'Forecasts + weather for a campsite and date range…', instructions: '…3-bullet forecast + summary…', model: 'openai/gpt-4o-mini' })`. +- Supervisor additions: `agents: { weather_forecaster }`, + `defaultOptions: { delegation: { onDelegationStart, onDelegationComplete } }` + (hooks logging to stderr), and one instruction line changed to "For questions + about weather forecasts you MUST delegate to the weather_forecaster agent" + (the stock instructions force `check_conditions` for weather, which would + have fought delegation). From 93caf7be529396ade6f8ee7a4d93dd9809941150 Mon Sep 17 00:00:00 2001 From: Brian Love Date: Wed, 2 Sep 2026 10:06:38 -0700 Subject: [PATCH 2/6] feat(runtimes): mastra camping demo delegates forecasting; SUBAGENT_* injection in the bridge Co-Authored-By: Claude Fable 5 --- deployments/ag-ui-mastra/agents.mjs | 20 ++- deployments/ag-ui-mastra/server.mjs | 11 +- deployments/ag-ui-mastra/subagent-emitter.mjs | 125 ++++++++++++++ .../test/subagent-emitter.test.mjs | 157 ++++++++++++++++++ 4 files changed, 308 insertions(+), 5 deletions(-) create mode 100644 deployments/ag-ui-mastra/subagent-emitter.mjs create mode 100644 deployments/ag-ui-mastra/test/subagent-emitter.test.mjs diff --git a/deployments/ag-ui-mastra/agents.mjs b/deployments/ag-ui-mastra/agents.mjs index 2334e54b6..ef604f39a 100644 --- a/deployments/ag-ui-mastra/agents.mjs +++ b/deployments/ag-ui-mastra/agents.mjs @@ -96,12 +96,29 @@ const reserveCampsiteTool = createTool({ export function createMastra(dbUrl) { const store = (id) => new LibSQLStore({ id, url: dbUrl }); + /** + * Sub-agent (spike: wire-capture-subagents.md). Registered on the + * supervisor via `agents:`; Mastra surfaces it as a backend tool named + * `agent-weather_forecaster` whose TOOL_CALL_RESULT carries the child's + * final text — server.mjs's subagent emitter turns that into SUBAGENT_* + * frames. The `description` becomes the delegation tool's description. + */ + const weatherForecaster = new Agent({ + id: 'weather_forecaster', + name: 'weather_forecaster', + description: 'Forecasts weather for a campsite and date range. Use for any weather question.', + instructions: + 'You are a weather forecaster. Given a campsite and dates, give a 3-bullet forecast summary. Be concise.', + model: MODEL, + }); + const tripAgent = new Agent({ id: 'mastra', name: 'mastra', instructions: `You are a terse camping trip planner. The packing list in working memory is the user's shared state: whenever the user adds, removes, or changes items (or starts a list), update working memory to match. 'items' is an array of {name, qty}. Never mention memory or the list mechanics. -For questions about weather or trail conditions you MUST call check_conditions. +For questions about trail conditions you MUST call check_conditions. +For questions about weather forecasts you MUST delegate to the weather_forecaster agent. When the user asks to reserve or book a campsite you MUST call reserve_campsite; after it resumes, confirm the outcome. Always answer in one short sentence.`, model: MODEL, @@ -109,6 +126,7 @@ Always answer in one short sentence.`, check_conditions: checkConditionsTool, reserve_campsite: reserveCampsiteTool, }, + agents: { weather_forecaster: weatherForecaster }, memory: new Memory({ storage: store('mastra-topic-memory'), options: { diff --git a/deployments/ag-ui-mastra/server.mjs b/deployments/ag-ui-mastra/server.mjs index a3caa4dd3..8987db394 100644 --- a/deployments/ag-ui-mastra/server.mjs +++ b/deployments/ag-ui-mastra/server.mjs @@ -22,6 +22,7 @@ import { pathToFileURL } from 'node:url'; import { dirname, resolve } from 'node:path'; import { MastraAgent } from '@ag-ui/mastra'; import { createMastra } from './agents.mjs'; +import { createSubagentInjector } from './subagent-emitter.mjs'; const AG_UI_INTERNAL_TOKEN = process.env.AG_UI_INTERNAL_TOKEN; if (!AG_UI_INTERNAL_TOKEN) { @@ -108,16 +109,18 @@ export function createAgUiServer() { resourceId: input.threadId, }); + // One injector per run: turns delegation tool calls (`agent-`) + // into SUBAGENT_* frames around the events the bridge already emits. + const injector = createSubagentInjector(); const sub = bridge.run(input).subscribe({ next: (event) => { - res.write(sseFrame(event)); + for (const e of injector.eventsFor(event)) res.write(sseFrame(e)); }, error: (err) => { // Map failures into the protocol instead of killing the socket: // the client finalizes the run as an error rather than hanging. - res.write( - sseFrame({ type: 'RUN_ERROR', message: String(err?.message ?? err) }), - ); + const runError = { type: 'RUN_ERROR', message: String(err?.message ?? err) }; + for (const e of injector.eventsFor(runError)) res.write(sseFrame(e)); res.end(); }, complete: () => { diff --git a/deployments/ag-ui-mastra/subagent-emitter.mjs b/deployments/ag-ui-mastra/subagent-emitter.mjs new file mode 100644 index 000000000..24ab9fd9c --- /dev/null +++ b/deployments/ag-ui-mastra/subagent-emitter.mjs @@ -0,0 +1,125 @@ +// SPDX-License-Identifier: MIT +// SUBAGENT_* injection for Mastra delegation tool calls. +// +// Mastra surfaces a registered sub-agent as an ordinary backend tool named +// `agent-`: TOOL_CALL_START → TOOL_CALL_ARGS → TOOL_CALL_END → +// TOOL_CALL_RESULT whose `content` is JSON `{text, subAgentThreadId, ...}` +// (measured: cockpit/runtimes/mastra/angular/docs/wire-capture-subagents.md). +// The upstream @ag-ui/mastra bridge drops the in-process child deltas +// (`case "tool-output": break`), so the honest wire contract here is a +// single final text chunk per delegation. +// +// This module is a pure transform over the outbound AG-UI event stream — +// keyed off the events themselves, NOT the Mastra delegation hooks, which +// fire in a different async context with no ordering guarantee relative to +// the Observable frames. +// +// Injected sequence per delegation tool call (child key = tool name +// minus the `agent-` prefix, subagentRunId = `-sub`): +// - AFTER TOOL_CALL_START: SUBAGENT_STARTED {subagentRunId, name, +// parentToolCallId} +// - BEFORE TOOL_CALL_RESULT (success): TEXT_MESSAGE_START/CONTENT/END +// carrying the child's final text under the subagent identity, then +// SUBAGENT_FINISHED {outcome:{type:'success'}} +// - BEFORE TOOL_CALL_RESULT (failure — parsed content says success:false +// or finishReason:'error'): SUBAGENT_ERROR {subagentRunId, message} +// - Terminal cleanup: a RUN_ERROR or RUN_FINISHED arriving while +// delegations are still pending (no TOOL_CALL_RESULT seen — e.g. the +// Observable errored mid-delegation) closes each pending card with +// SUBAGENT_ERROR before the terminal frame, so no card is left spinning. +// In the measured captures the RESULT always precedes the terminal frame, +// so this path is defensive only. + +const AGENT_TOOL_PREFIX = 'agent-'; + +/** + * Create a per-run injector. + * + * @returns {{ eventsFor(event: object): object[] }} — for each outbound + * AG-UI event, the ordered list of frames to write (injections plus the + * original event). Non-delegation events pass through as `[event]`. + */ +export function createSubagentInjector() { + /** @type {Map} pending delegations by toolCallId */ + const pending = new Map(); + + return { + eventsFor(event) { + switch (event.type) { + case 'TOOL_CALL_START': { + const name = event.toolCallName ?? ''; + if (!name.startsWith(AGENT_TOOL_PREFIX)) return [event]; + const entry = { + subagentRunId: `${event.toolCallId}-sub`, + name: name.slice(AGENT_TOOL_PREFIX.length), + }; + pending.set(event.toolCallId, entry); + return [ + event, + { + type: 'SUBAGENT_STARTED', + subagentRunId: entry.subagentRunId, + name: entry.name, + parentToolCallId: event.toolCallId, + }, + ]; + } + + case 'TOOL_CALL_RESULT': { + const entry = pending.get(event.toolCallId); + if (!entry) return [event]; // not a delegation (or unmatched) — pass through + pending.delete(event.toolCallId); + const { subagentRunId } = entry; + + const raw = typeof event.content === 'string' ? event.content : JSON.stringify(event.content); + let parsed; + try { + parsed = JSON.parse(raw); + } catch { + parsed = undefined; + } + const failed = + parsed !== undefined && + typeof parsed === 'object' && + parsed !== null && + (parsed.success === false || parsed.finishReason === 'error'); + if (failed) { + return [ + { + type: 'SUBAGENT_ERROR', + subagentRunId, + message: String(parsed.error ?? parsed.text ?? 'sub-agent delegation failed'), + }, + event, + ]; + } + + const text = typeof parsed?.text === 'string' ? parsed.text : raw; + const messageId = `${event.toolCallId}-sub-m1`; + return [ + { type: 'TEXT_MESSAGE_START', messageId, role: 'assistant', subagentRunId }, + { type: 'TEXT_MESSAGE_CONTENT', messageId, delta: text, subagentRunId }, + { type: 'TEXT_MESSAGE_END', messageId, subagentRunId }, + { type: 'SUBAGENT_FINISHED', subagentRunId, outcome: { type: 'success' } }, + event, + ]; + } + + case 'RUN_ERROR': + case 'RUN_FINISHED': { + if (pending.size === 0) return [event]; + const cleanup = [...pending.values()].map(({ subagentRunId }) => ({ + type: 'SUBAGENT_ERROR', + subagentRunId, + message: 'delegation did not complete before the run terminated', + })); + pending.clear(); + return [...cleanup, event]; + } + + default: + return [event]; + } + }, + }; +} diff --git a/deployments/ag-ui-mastra/test/subagent-emitter.test.mjs b/deployments/ag-ui-mastra/test/subagent-emitter.test.mjs new file mode 100644 index 000000000..5cedb98fd --- /dev/null +++ b/deployments/ag-ui-mastra/test/subagent-emitter.test.mjs @@ -0,0 +1,157 @@ +// SPDX-License-Identifier: MIT +// Unit tests for the SUBAGENT_* injector — synthetic AG-UI event sequences, +// exact injected ordering asserted field-for-field against the contract in +// cockpit/runtimes/mastra/angular/docs/wire-capture-subagents.md. +import { test } from 'node:test'; +import assert from 'node:assert/strict'; +import { createSubagentInjector } from '../subagent-emitter.mjs'; + +const TID = 'call_aUfV9K0RCDZdZK3NWt9dRDKx'; + +function delegationStart(tid = TID) { + return { + type: 'TOOL_CALL_START', + parentMessageId: 'pm-1', + toolCallId: tid, + toolCallName: 'agent-weather_forecaster', + }; +} + +function delegationResult(content, tid = TID) { + return { + type: 'TOOL_CALL_RESULT', + toolCallId: tid, + content, + messageId: 'tm-1', + role: 'tool', + }; +} + +/** Run a whole sequence through one injector, collecting the output frames. */ +function transform(events) { + const injector = createSubagentInjector(); + return events.flatMap((e) => injector.eventsFor(e)); +} + +test('success path: exact injected sequence, field-for-field', () => { + const resultContent = JSON.stringify({ + text: 'Here is the forecast:\n- Fri sunny\n- Sat cloudy\n- Sun rain', + subAgentThreadId: 't-1-abc', + subAgentResourceId: 't-1-weather_forecaster', + subAgentToolResults: [], + }); + const start = delegationStart(); + const args = { type: 'TOOL_CALL_ARGS', toolCallId: TID, delta: '{"prompt":"weather?"}' }; + const end = { type: 'TOOL_CALL_END', toolCallId: TID }; + const result = delegationResult(resultContent); + const finished = { type: 'RUN_FINISHED', threadId: 't-1', runId: 'r-1' }; + + const out = transform([start, args, end, result, finished]); + + assert.deepEqual(out, [ + start, + { + type: 'SUBAGENT_STARTED', + subagentRunId: `${TID}-sub`, + name: 'weather_forecaster', + parentToolCallId: TID, + }, + args, + end, + { + type: 'TEXT_MESSAGE_START', + messageId: `${TID}-sub-m1`, + role: 'assistant', + subagentRunId: `${TID}-sub`, + }, + { + type: 'TEXT_MESSAGE_CONTENT', + messageId: `${TID}-sub-m1`, + delta: 'Here is the forecast:\n- Fri sunny\n- Sat cloudy\n- Sun rain', + subagentRunId: `${TID}-sub`, + }, + { + type: 'TEXT_MESSAGE_END', + messageId: `${TID}-sub-m1`, + subagentRunId: `${TID}-sub`, + }, + { + type: 'SUBAGENT_FINISHED', + subagentRunId: `${TID}-sub`, + outcome: { type: 'success' }, + }, + result, + finished, + ]); +}); + +test('error result (success:false) → SUBAGENT_ERROR instead of text+finished', () => { + const result = delegationResult(JSON.stringify({ success: false, error: 'model refused' })); + const out = transform([delegationStart(), result]); + assert.deepEqual(out.slice(2), [ + { type: 'SUBAGENT_ERROR', subagentRunId: `${TID}-sub`, message: 'model refused' }, + result, + ]); + assert.ok(!out.some((e) => e.type === 'SUBAGENT_FINISHED')); + assert.ok(!out.some((e) => e.type.startsWith('TEXT_MESSAGE'))); +}); + +test("error result (finishReason:'error') → SUBAGENT_ERROR", () => { + const result = delegationResult(JSON.stringify({ text: 'partial', finishReason: 'error' })); + const out = transform([delegationStart(), result]); + assert.deepEqual(out.slice(2), [ + { type: 'SUBAGENT_ERROR', subagentRunId: `${TID}-sub`, message: 'partial' }, + result, + ]); +}); + +test('non-JSON result content falls back to the raw string as the delta', () => { + const result = delegationResult('plain text answer'); + const out = transform([delegationStart(), result]); + const content = out.find((e) => e.type === 'TEXT_MESSAGE_CONTENT'); + assert.equal(content.delta, 'plain text answer'); + assert.ok(out.some((e) => e.type === 'SUBAGENT_FINISHED')); +}); + +test('non-delegation tool calls pass through untouched', () => { + const events = [ + { type: 'RUN_STARTED', threadId: 't', runId: 'r' }, + { type: 'TOOL_CALL_START', toolCallId: 'c1', toolCallName: 'check_conditions' }, + { type: 'TOOL_CALL_ARGS', toolCallId: 'c1', delta: '{}' }, + { type: 'TOOL_CALL_END', toolCallId: 'c1' }, + { type: 'TOOL_CALL_RESULT', toolCallId: 'c1', content: '{"forecast":"clear"}' }, + { type: 'TEXT_MESSAGE_CHUNK', messageId: 'm', delta: 'ok' }, + { type: 'RUN_FINISHED', threadId: 't', runId: 'r' }, + ]; + assert.deepEqual(transform(events), events); +}); + +test('unmatched TOOL_CALL_RESULT (no prior delegation start) is ignored', () => { + const result = delegationResult('{"text":"orphan"}', 'call_never_started'); + assert.deepEqual(transform([result]), [result]); +}); + +test('pending delegation at RUN_FINISHED → SUBAGENT_ERROR cleanup before the terminal frame', () => { + const finished = { type: 'RUN_FINISHED', threadId: 't', runId: 'r' }; + const out = transform([delegationStart(), finished]); + assert.deepEqual(out.slice(2), [ + { + type: 'SUBAGENT_ERROR', + subagentRunId: `${TID}-sub`, + message: 'delegation did not complete before the run terminated', + }, + finished, + ]); +}); + +test('pending delegation at RUN_ERROR → SUBAGENT_ERROR cleanup, then no double-cleanup', () => { + const injector = createSubagentInjector(); + const out = [ + ...injector.eventsFor(delegationStart()), + ...injector.eventsFor({ type: 'RUN_ERROR', message: 'boom' }), + ]; + assert.equal(out.filter((e) => e.type === 'SUBAGENT_ERROR').length, 1); + assert.equal(out.at(-1).type, 'RUN_ERROR'); + // A second terminal frame injects nothing more. + assert.deepEqual(injector.eventsFor({ type: 'RUN_FINISHED' }), [{ type: 'RUN_FINISHED' }]); +}); From f2825364c69ef72a407230269b11cd35aba9c810 Mon Sep 17 00:00:00 2001 From: Brian Love Date: Wed, 2 Sep 2026 10:07:37 -0700 Subject: [PATCH 3/6] docs(runtimes): mastra post-emitter wire capture Co-Authored-By: Claude Fable 5 --- .../angular/docs/wire-capture-subagents.md | 41 +++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/cockpit/runtimes/mastra/angular/docs/wire-capture-subagents.md b/cockpit/runtimes/mastra/angular/docs/wire-capture-subagents.md index 177ba6dd3..7dc904506 100644 --- a/cockpit/runtimes/mastra/angular/docs/wire-capture-subagents.md +++ b/cockpit/runtimes/mastra/angular/docs/wire-capture-subagents.md @@ -179,3 +179,44 @@ Rationale: about weather forecasts you MUST delegate to the weather_forecaster agent" (the stock instructions force `check_conditions` for weather, which would have fought delegation). + +## After the emitter + +Live smoke against the committed emitter (`deployments/ag-ui-mastra/subagent-emitter.mjs` +wired into `server.mjs`'s translation loop), 2026-09-02. Request: +`POST /agent/mastra` with `{"threadId":"t-post-emitter-1","runId":"r-post-emitter-1", +"messages":[{"role":"user","content":"Plan a trip to Bear Lake this weekend — what +will the weather be?"}], ...}`. Delegated on the first attempt; the injected +sequence appeared exactly once, ids consistent throughout (scrubbed): + +``` +data: {"type":"RUN_STARTED","threadId":"t-post-emitter-1","runId":"r-post-emitter-1"} +data: {"type":"TOOL_CALL_START","parentMessageId":"28f84e1d-…","toolCallId":"call_1W2Rmq…","toolCallName":"agent-weather_forecaster"} +data: {"type":"SUBAGENT_STARTED","subagentRunId":"call_1W2Rmq…-sub","name":"weather_forecaster","parentToolCallId":"call_1W2Rmq…"} +data: {"type":"TOOL_CALL_ARGS","toolCallId":"call_1W2Rmq…","delta":"{\"prompt\":\"What will the weather be like at Bear Lake this weekend?\",…}"} +data: {"type":"TOOL_CALL_END","toolCallId":"call_1W2Rmq…"} +data: {"type":"TEXT_MESSAGE_START","messageId":"call_1W2Rmq…-sub-m1","role":"assistant","subagentRunId":"call_1W2Rmq…-sub"} +data: {"type":"TEXT_MESSAGE_CONTENT","messageId":"call_1W2Rmq…-sub-m1","delta":"Here's the weather forecast for Bear Lake this weekend:\n\n- **Saturday**: Mostly sunny…","subagentRunId":"call_1W2Rmq…-sub"} +data: {"type":"TEXT_MESSAGE_END","messageId":"call_1W2Rmq…-sub-m1","subagentRunId":"call_1W2Rmq…-sub"} +data: {"type":"SUBAGENT_FINISHED","subagentRunId":"call_1W2Rmq…-sub","outcome":{"type":"success"}} +data: {"type":"TOOL_CALL_RESULT","toolCallId":"call_1W2Rmq…","content":"{\"text\":\"Here's the weather forecast…\",\"subAgentThreadId\":…}","messageId":"…","role":"tool"} +data: {"type":"STATE_SNAPSHOT","snapshot":{}} +data: {"type":"STATE_DELTA","delta":[…]} (x3) +data: {"type":"TEXT_MESSAGE_CHUNK","role":"assistant","messageId":"28f84e1d-…-agui-text","delta":"…"} (x31 — the parent's own summary) +data: {"type":"STATE_SNAPSHOT","snapshot":{"packing_list":…}} +data: {"type":"RUN_FINISHED","threadId":"t-post-emitter-1","runId":"r-post-emitter-1","usage":[…]} +``` + +Event-type totals: 1 each RUN_STARTED / TOOL_CALL_START / SUBAGENT_STARTED / +TOOL_CALL_ARGS / TOOL_CALL_END / TEXT_MESSAGE_START / TEXT_MESSAGE_CONTENT / +TEXT_MESSAGE_END / SUBAGENT_FINISHED / TOOL_CALL_RESULT / RUN_FINISHED, +2 STATE_SNAPSHOT, 3 STATE_DELTA, 31 TEXT_MESSAGE_CHUNK. + +Notes: + +- SUBAGENT_STARTED is injected immediately after TOOL_CALL_START, which on + this bridge lands BEFORE the buffered TOOL_CALL_ARGS/END flush — the card + therefore exists before the delegation prompt is readable. +- Child deltas: single final chunk — bridge drops tool-output upstream + (`case "tool-output": break` in @ag-ui/mastra), so the one + TEXT_MESSAGE_CONTENT carries the child's entire final text. From 5da6963f0737d5010ba3da802677e41874121320 Mon Sep 17 00:00:00 2001 From: Brian Love Date: Wed, 2 Sep 2026 10:09:57 -0700 Subject: [PATCH 4/6] =?UTF-8?q?test(runtimes):=20mastra=20delegation=20e2e?= =?UTF-8?q?=20=E2=80=94=20subagent=20card=20via=20fixture=20replay?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Fable 5 --- .../mastra/angular/e2e/fixtures/mastra.json | 31 +++++++++++++++++++ .../mastra/angular/e2e/mastra.spec.ts | 13 ++++++++ .../angular/src/app/mastra.component.ts | 7 +++-- 3 files changed, 49 insertions(+), 2 deletions(-) diff --git a/cockpit/runtimes/mastra/angular/e2e/fixtures/mastra.json b/cockpit/runtimes/mastra/angular/e2e/fixtures/mastra.json index 40d9a3791..a06e26920 100644 --- a/cockpit/runtimes/mastra/angular/e2e/fixtures/mastra.json +++ b/cockpit/runtimes/mastra/angular/e2e/fixtures/mastra.json @@ -18,6 +18,18 @@ "content": "North Pines is reserved for 2 nights — confirmation TP-0288." } }, + { + "match": { "userMessage": "Bear Lake", "hasToolResult": true }, + "response": { + "content": "Expect a sunny, mild weekend at Bear Lake — great weather for camping." + } + }, + { + "match": { "systemMessage": "You are a weather forecaster" }, + "response": { + "content": "Here's the Bear Lake weekend forecast:\n\n- Saturday: sunny, high 24°C\n- Sunday: partly cloudy, high 22°C\n- Overall: mild with light winds" + } + }, { "match": { "userMessage": "packing list" }, "response": { @@ -60,6 +72,25 @@ } ] } + }, + { + "match": { "userMessage": "Bear Lake" }, + "response": { + "toolCalls": [ + { + "name": "agent-weather_forecaster", + "arguments": { + "prompt": "What will the weather be like at Bear Lake this weekend?", + "threadId": null, + "resourceId": null, + "instructions": null, + "maxSteps": 5, + "suspendedToolRunId": null, + "resumeData": null + } + } + ] + } } ] } diff --git a/cockpit/runtimes/mastra/angular/e2e/mastra.spec.ts b/cockpit/runtimes/mastra/angular/e2e/mastra.spec.ts index 978954613..de2316629 100644 --- a/cockpit/runtimes/mastra/angular/e2e/mastra.spec.ts +++ b/cockpit/runtimes/mastra/angular/e2e/mastra.spec.ts @@ -1,5 +1,6 @@ // SPDX-License-Identifier: MIT import { test, expect } from '@playwright/test'; +import { submitAndWaitForResponse } from '@threadplane-internal/e2e-harness'; // First cockpit e2e whose backend is neither LangGraph nor Python: the // rt-mastra topic runs against the deployments/ag-ui-mastra Node service @@ -43,4 +44,16 @@ test.describe('cockpit runtimes/mastra: camping trip planner', () => { await dialog.getByRole('button', { name: 'Approve' }).click(); await expect(page.getByText(/reserved for 2 nights/i)).toBeVisible({ timeout: 30_000 }); }); + + // Delegation: the supervisor calls the registered weather_forecaster + // sub-agent (wire tool `agent-weather_forecaster`); the server-side + // emitter (deployments/ag-ui-mastra/subagent-emitter.mjs) injects + // SUBAGENT_STARTED + attributed TEXT_MESSAGE_* + SUBAGENT_FINISHED, which + // the adapter reduces into a subagent card on the tool-call group. + test('rt-mastra: delegated forecast renders a subagent card with the final text', async ({ page }) => { + const bubble = await submitAndWaitForResponse(page, 'Plan a trip to Bear Lake this weekend — what will the weather be?'); + await expect(page.locator('chat-subagent-card')).toHaveCount(1); + await expect(page.locator('chat-subagent-card')).toContainText('weather_forecaster'); + await expect(bubble).toContainText(/forecast|weather/i); + }); }); diff --git a/cockpit/runtimes/mastra/angular/src/app/mastra.component.ts b/cockpit/runtimes/mastra/angular/src/app/mastra.component.ts index bcbde3c33..9b358a327 100644 --- a/cockpit/runtimes/mastra/angular/src/app/mastra.component.ts +++ b/cockpit/runtimes/mastra/angular/src/app/mastra.component.ts @@ -56,8 +56,11 @@ interface PackingList { * `submit({ resume })` goes out as * `forwardedProps.command = { resume, interruptEvent: { toolCallId, runId } }` * — exactly what the Mastra bridge requires to resume the suspended run. - * - NO subagents surface here: Mastra reserves ACTIVITY_* for background - * tasks, a measured red cell in the matrix. + * - Sub-agent delegation (weather_forecaster) reaches the wire as a + * `agent-` tool call; the Node service's subagent emitter turns it + * into SUBAGENT_* + attributed TEXT_MESSAGE_* frames, so the standard + * chat-subagent-card renders with zero code in this component + * (docs/wire-capture-subagents.md). */ @Component({ selector: 'app-mastra', From a21201a44aa7e715c2b1d00df86d47d682739a0e Mon Sep 17 00:00:00 2001 From: Brian Love Date: Wed, 2 Sep 2026 10:13:38 -0700 Subject: [PATCH 5/6] docs(runtimes): mastra live browser verification Co-Authored-By: Claude Fable 5 --- .../angular/docs/wire-capture-subagents.md | 24 ++++++++++++++++++ .../angular/e2e/manual/subagent-card-live.png | Bin 0 -> 36929 bytes 2 files changed, 24 insertions(+) create mode 100644 cockpit/runtimes/mastra/angular/e2e/manual/subagent-card-live.png diff --git a/cockpit/runtimes/mastra/angular/docs/wire-capture-subagents.md b/cockpit/runtimes/mastra/angular/docs/wire-capture-subagents.md index 7dc904506..da27af630 100644 --- a/cockpit/runtimes/mastra/angular/docs/wire-capture-subagents.md +++ b/cockpit/runtimes/mastra/angular/docs/wire-capture-subagents.md @@ -220,3 +220,27 @@ Notes: - Child deltas: single final chunk — bridge drops tool-output upstream (`case "tool-output": break` in @ag-ui/mastra), so the one TEXT_MESSAGE_CONTENT carries the child's entire final text. + +## Browser verification + +Live check 2026-09-02: real-key `deployments/ag-ui-mastra` on the topic port + +`npx nx serve cockpit-runtimes-mastra-angular`, driving "Plan a trip to Bear +Lake this weekend - what will the weather be?" in the real UI. Screenshot of +the completed, expanded card: `e2e/manual/subagent-card-live.png`. + +- The card renders from the injected events with ZERO component code: + `chat-tool-calls` groups on `parentToolCallId` and mounts + `chat-subagent-card` — header `weather_forecaster` + the delegation + toolCallId + a `complete` pill + "1 message(s)"; expanding shows the + child's full 3-bullet forecast; the parent's own summary streams below. +- Honest timing note: the card does NOT visibly pass through a + running/empty-body phase on this runtime. A timestamped SSE probe through + the dev proxy shows the bridge withholds `TOOL_CALL_START` until the + delegation resolves — RUN_STARTED at t=0, then a ~5s silent gap while the + child runs, then TOOL_CALL_START → SUBAGENT_STARTED → … → + SUBAGENT_FINISHED → TOOL_CALL_RESULT all inside ~40ms. STARTED→FINISHED + are ~35ms apart on the wire, so the card mounts effectively already + complete (a Playwright observer that awaited card attachment read + `data-state="done"` on first sight). The emitter is not the limiter; + @ag-ui/mastra's buffered tool-call flush is (same upstream drop/buffer + behavior documented above). diff --git a/cockpit/runtimes/mastra/angular/e2e/manual/subagent-card-live.png b/cockpit/runtimes/mastra/angular/e2e/manual/subagent-card-live.png new file mode 100644 index 0000000000000000000000000000000000000000..bbf5a2259421227c93c68cfc405390adb63e3717 GIT binary patch literal 36929 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
Rzr1fyv?~Wkwz3FDMnL5h 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


Rzr1fyv?~Wkwz3FDMnL5h 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 literal 0 HcmV?d00001 From 81c901359bf9830926ce00f3ce59ab0a2f317187 Mon Sep 17 00:00:00 2001 From: Brian Love Date: Wed, 2 Sep 2026 10:14:55 -0700 Subject: [PATCH 6/6] docs(runtimes): retake mastra live subagent-card screenshot with completed expanded body Co-Authored-By: Claude Fable 5 --- .../angular/e2e/manual/subagent-card-live.png | Bin 36929 -> 77840 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/cockpit/runtimes/mastra/angular/e2e/manual/subagent-card-live.png b/cockpit/runtimes/mastra/angular/e2e/manual/subagent-card-live.png index bbf5a2259421227c93c68cfc405390adb63e3717..fac129361f819bc5e3d7c7f8cdcd7941aacfb9b6 100644 GIT binary patch literal 77840 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%0AO2NGojadoRtAa4!)Uvh<^>;lhG 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