[Bug]: outdated / mismatched a2a.proto on grpc spec for compat-0.3

Open Beginner friendly
#1,158 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
82/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Active
Tech stack
java
Domain
api

Research direction

Start with compat-0.3/spec-grpc/src/main/proto/a2a.proto and inspect the Part message alongside the referenced Python definition at src/a2a/compat/v0_3/a2a_v0_3.proto. Confirm how the optional metadata field is represented and update the Java protocol definition so responses containing it are parsed; done means the schemas are compatible and the relevant parsing behavior is covered by the existing test suite.

Written by the indexing model from the issue text.

Description

This is the Part definition in compat-0.3/spec-grpc/src/main/proto/a2a.proto. It seems to be missing the optional metadata field, according to python's a2a sdk for compat-0.3 there is a

java (compat-0.3/spec-grpc/src/main/proto/a2a.proto)
message Part {
oneof part {
string text = 1;
FilePart file = 2;
DataPart data = 3;
}
}

python (src/a2a/compat/v0_3/a2a_v0_3.proto)
message Part {
oneof part {
string text = 1;
FilePart file = 2;
DataPart data = 3;
}
// Optional metadata associated with this part.
google.protobuf.Struct metadata = 4;
}

This results in the SDK failing to parse the metadata field from responses that includes it.

Dominant language
Java
Stars
495
Forks
174
Avg merge
1d 18h
Merged PRs (30d)
48

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from a2aproject/a2a-java

All issues in a2aproject/a2a-java

Similar issues

More Java issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.