Fix: Bump google.golang.org/grpc to 1.82.1 in cross-language Go test backend - #685
Open
AmaadMartin wants to merge 1 commit into
Open
Fix: Bump google.golang.org/grpc to 1.82.1 in cross-language Go test backend#685AmaadMartin wants to merge 1 commit into
AmaadMartin wants to merge 1 commit into
Conversation
The cross-language Go test backend pinned grpc v1.79.3, which is inside the vulnerable range of GHSA-hrxh-6v49-42gf (HIGH). Version 1.82.1 is the first patched release. The sibling module tests/cross_language/a2a/go_ts/go_client already runs 1.82.1. This restores lockstep between the two Go test modules. The otel and genproto moves are transitive consequences of grpc's own requirements.
7 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Please ensure you have read the contribution guide before creating a pull request.
Link to Issue or Description of Change
Link to an existing issue (if applicable):
N/A — Dependabot security alert, no public issue.
Or, if no issue exists, describe the change:
Problem: The Go test backend at
tests/cross_language/a2a/ts_go/go_backend/go.modpinsgoogle.golang.org/grpcatv1.79.3. That version is inside the vulnerable range of GHSA-hrxh-6v49-42gf (HIGH, "gRPC-Go: xDS RBAC and HTTP/2 Vulnerabilities", vulnerable< 1.82.1, first patched1.82.1). The alert is in a Go module, not in the npm tree. The sibling moduletests/cross_language/a2a/go_ts/go_clientalready runs1.82.1after google#530, so the two Go test modules are out of lockstep.Solution: I ran
go get google.golang.org/grpc@v1.82.1 && go mod tidyingo_backend. This produces a six-line change to the indirect require block. I used the pinned@v1.82.1form rather thango get -u, because-ualso upgrades every transitive dependency and makes the diff unreviewable. The otel and genproto moves are transitive consequences of the grpc requirement; the same set already landed on the sibling module.google.golang.org/grpcv1.79.3v1.82.1google.golang.org/genproto/googleapis/apiv0.0.0-20260128011058-8636f8732409v0.0.0-20260414002931-afd174a4e478google.golang.org/genproto/googleapis/rpcv0.0.0-20260128011058-8636f8732409v0.0.0-20260414002931-afd174a4e478go.opentelemetry.io/otelv1.41.0v1.43.0go.opentelemetry.io/otel/metricv1.41.0v1.43.0go.opentelemetry.io/otel/tracev1.41.0v1.43.0All six stay
// indirect. The module never imports grpc directly, so no API surface changes. Thego 1.25.0directive is unchanged and notoolchainline was added.go.sumis git-ignored, so the pull request contains exactly one file.Collision check: I scanned all 582 open pull requests on the fork and the open pull requests upstream. No other pull request touches
go_backend/go.mod. Four adjacent branches (#648, #427, #393, #306) change only.github/workflows/cross-language-integration.yml, and #629 changes only the vitest project config.Testing Plan
Please describe the tests that you ran to verify your changes. This is required for all PRs that are not small documentation or typo fixes.
Unit Tests:
[x] N/A — this change adds no executable line of Go or TypeScript. A test that asserts on the contents of
go.modwould be a change-detector test.[x] All unit tests pass locally. (See the cross-language run below.)
Proof the verification is load-bearing. A dependency bump has no test to mutate, so I checked the resolved build graph instead of the file text. With the previous
go.modrestored,go list -m google.golang.org/grpcreportsv1.79.3. With this change, it reportsv1.82.1:Cross-language suite (
npm ci && npm run build, then):Manual End-to-End (E2E) Tests:
From
tests/cross_language/a2a/ts_go/go_backend:The agent card returned
{"capabilities":{"streaming":true},...,"name":"go_test_agent",...}. The backend needs no API key:basic_agent.gouses an in-process mock model.After the bump, the indirect require block of
go_backend/go.moddiffers fromgo_client/go.modby one entry only —github.com/a2aproject/a2a-go, which is a direct require ingo_backend.Checklist
[x] I have read the CONTRIBUTING.md document.
[x] I have performed a self-review of my own code.
[x] I have commented my code, particularly in hard-to-understand areas.
[ ] I have added tests that prove my fix is effective or that my feature works. — N/A, no new code. The existing cross-language suite exercises the bumped module.
[x] New and existing unit tests pass locally with my changes.