From 180a011d5b5b84c076d3c8aff7493d08a8a38f5d Mon Sep 17 00:00:00 2001 From: Dani Zamora <60208642+danielazamorah@users.noreply.github.com> Date: Mon, 17 Aug 2026 12:57:55 -0600 Subject: [PATCH] docs: Known Issues: A2A Workflow Output Schema and Serialization --- ...orkflow-output-schema-and-serialization.md | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 docs/known-issues-a2a-workflow-output-schema-and-serialization.md diff --git a/docs/known-issues-a2a-workflow-output-schema-and-serialization.md b/docs/known-issues-a2a-workflow-output-schema-and-serialization.md new file mode 100644 index 0000000000..7ae71bd260 --- /dev/null +++ b/docs/known-issues-a2a-workflow-output-schema-and-serialization.md @@ -0,0 +1,19 @@ +# Known Issues: A2A Workflow Output Schema and Serialization + +## Discarded Workflow `output_schema` in `to_a2a()` + +When a `Workflow` with a configured `output_schema` is exposed over the Agent-to-Agent (A2A) protocol via `to_a2a()`: +- The final structured object validated against `output_schema` may not be placed into the A2A response artifact. +- Instead, the artifact may only contain the raw text output of the last executed agent node. + +## Schema Validation Serialization Mode + +In `BaseNode._validate_schema`, validated Pydantic `BaseModel` instances are converted using `model_dump()` in Pydantic Python mode rather than JSON mode. Fields containing non-primitive types (such as `Decimal`, `datetime`, or `UUID`) are preserved as Python objects and can cause serialization errors when downstream components attempt standard JSON serialization. + +## Relayed Human-Input Responses + +When a remote agent pauses for user confirmation or input (e.g., `adk_request_confirmation`) and relays the pause to the caller: +- Responding to the pause in `RemoteA2aAgent` may flatten the human response into a plain text message rather than forwarding a `FunctionResponse` matching the tool call name. +- This can prevent the remote paused agent from recognizing completion of the requested confirmation. + +*Note: Maintainer verification is required regarding planned upstream fixes for A2A artifact output mapping and relayed function response preservation.*