fix(gke): pin proven Vertex tool loop - #124
Merged
Merged
Conversation
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.
What
Pin the optional GKE/Vertex path to
gemini-3.5-flashand add a fail-closed live acceptance smoke for the exact source, image, gateway, model, synthetic tool-result turn, and read-only A2A/MCP retrieval path.Why
The current pinned agentgateway release adds an empty text part beside Vertex function responses. Gemini 3.6 rejects that translated follow-up request even though a one-turn text probe succeeds; Gemini 3.5 completes the same tool loop. Without a two-turn acceptance boundary, the optional cloud lab can appear healthy while its core agent path is broken.
How
mise run gke:smoke, which rejects dirty or mismatched source/live state, proves the exact deployed image and gateway pair, exercises a forced two-turn function response, then verifies one stable-seedget_incidentcall through A2A and the gateway metric delta.Test Plan
mise run formatmise run checkmise run test— 630 passed; 95.53% branch coveragemise run scan— gitleaks and Trivy cleanKUBECONFIG=<isolated-config> mise run gke:smokeagainst the exact merged main commit before release.Screenshots
Not applicable; rendered documentation is covered by the Zensical build and convention checks.