Summary
The Braintrust Java SDK does not instrument the official Agent2Agent (A2A) Protocol Java SDK (org.a2aproject.sdk, repository a2aproject/a2a-java). A2A is an open, Linux-Foundation-adjacent protocol (backed by Google and 50+ partners, including LangChain) for agent-to-agent task execution and interoperability, with client and server support over JSON-RPC, gRPC, and REST. It has its own agent-run/task-execution API surface that is distinct from every model-provider SDK and framework this repo currently instruments.
What is missing
The a2a-java SDK provides these execution-oriented surfaces, none of which are instrumented:
| API surface |
Description |
A2AClient.sendMessage() / sendMessageStreaming() |
Sends a task/message to a remote agent and executes the A2A request-response (or streaming) exchange |
TaskStore / task lifecycle callbacks |
Tracks a remote agent task's execution through its states (submitted → working → completed/failed) |
AgentExecutor (server side) |
Executes incoming A2A tasks when this JVM hosts an A2A-compliant agent |
| Agent Card discovery |
Resolves a remote agent's declared skills/capabilities before invocation |
There is no reference to a2a-java, a2aproject, Agent2Agent, or A2AClient anywhere in this repository — no instrumentation module, wrapper, test, example, or dependency.
Why existing instrumentation does not cover this
A2A execution is orthogonal to all currently instrumented libraries: it does not go through com.openai:openai-java, com.anthropic:anthropic-java, com.google.genai, software.amazon.awssdk:bedrockruntime, LangChain4j, or Spring AI's HTTP transports. A2A tasks can wrap agents built on any of those frameworks internally, but the inter-agent request/response exchange itself — the part this SDK executes — uses its own JSON-RPC/gRPC/REST transport with no existing hook in this repo.
Braintrust docs status
Upstream sources
Local files inspected
settings.gradle (lines 28–33) — lists all instrumentation modules (openai_2_15_0, anthropic_2_2_0, genai_1_18_0, langchain_1_8_0, springai_1_0_0, aws_bedrock_2_30_0); no A2A module present
braintrust-sdk/instrumentation/ — no A2A directory
- Full-repo grep for
a2aproject, a2a-java, Agent2Agent, A2AClient — zero matches
Summary
The Braintrust Java SDK does not instrument the official Agent2Agent (A2A) Protocol Java SDK (
org.a2aproject.sdk, repositorya2aproject/a2a-java). A2A is an open, Linux-Foundation-adjacent protocol (backed by Google and 50+ partners, including LangChain) for agent-to-agent task execution and interoperability, with client and server support over JSON-RPC, gRPC, and REST. It has its own agent-run/task-execution API surface that is distinct from every model-provider SDK and framework this repo currently instruments.What is missing
The
a2a-javaSDK provides these execution-oriented surfaces, none of which are instrumented:A2AClient.sendMessage()/sendMessageStreaming()TaskStore/ task lifecycle callbacksAgentExecutor(server side)There is no reference to
a2a-java,a2aproject,Agent2Agent, orA2AClientanywhere in this repository — no instrumentation module, wrapper, test, example, or dependency.Why existing instrumentation does not cover this
A2A execution is orthogonal to all currently instrumented libraries: it does not go through
com.openai:openai-java,com.anthropic:anthropic-java,com.google.genai,software.amazon.awssdk:bedrockruntime, LangChain4j, or Spring AI's HTTP transports. A2A tasks can wrap agents built on any of those frameworks internally, but the inter-agent request/response exchange itself — the part this SDK executes — uses its own JSON-RPC/gRPC/REST transport with no existing hook in this repo.Braintrust docs status
Upstream sources
org.a2aproject.sdk(migrated from the earlierio.github.a2asdkcoordinates), requires Java 17+, actively released with reference implementations for JSON-RPC, gRPC, and REST transportsLocal files inspected
settings.gradle(lines 28–33) — lists all instrumentation modules (openai_2_15_0,anthropic_2_2_0,genai_1_18_0,langchain_1_8_0,springai_1_0_0,aws_bedrock_2_30_0); no A2A module presentbraintrust-sdk/instrumentation/— no A2A directorya2aproject,a2a-java,Agent2Agent,A2AClient— zero matches