Skip to content

Conversation

@lkawka
Copy link
Member

@lkawka lkawka commented Oct 31, 2025

Added protocol_version fields to request objects.

Fixes #1189

@lkawka lkawka requested a review from a team as a code owner October 31, 2025 16:18
@gemini-code-assist
Copy link
Contributor

Summary of Changes

Hello @lkawka, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request implements client-side protocol versioning by integrating a protocol_version field into key request and response payloads. This change is fundamental for managing API evolution and ensuring backward compatibility, allowing clients to explicitly declare the protocol version they are interacting with. The modifications span across gRPC, JSON schema, and TypeScript definitions to provide a consistent and robust versioning mechanism.

Highlights

  • Client-Side Protocol Versioning: Introduced a new protocol_version field to various request and response objects, enabling client-side specification of the A2A protocol version.
  • API Schema Updates: The protocol_version field has been added to the gRPC .proto definitions and the corresponding JSON schema (a2a.json) for consistency across API specifications.
  • TypeScript Type Definitions: Updated TypeScript interfaces to include the optional protocolVersion property, ensuring type safety and developer clarity for client-side implementations.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request adds a protocol_version field to request payloads across gRPC, JSON, and TypeScript specifications to support client-side versioning. The changes are generally consistent. However, I've identified an inconsistency where protocol_version is added to a response object (ListTasksResponse) in the gRPC spec but not in its JSON or TypeScript counterparts. My review comment addresses this to ensure consistency across the API definitions.

lkawka and others added 3 commits October 31, 2025 16:21
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
@lkawka lkawka changed the title [Feat]: Add client-side protocol versioning in payloads feat(spec): Add client-side protocol versioning in payloads Oct 31, 2025
@holtskinner holtskinner added the TSC Review To be reviewed by the Technical Steering Committee label Nov 6, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

TSC Review To be reviewed by the Technical Steering Committee

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feat]: Add client-side protocol versioning in payloads

2 participants