Conversation
Summary of ChangesHello, 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 enhances the Codex integration by enabling the transparent forwarding of several client identity headers from incoming requests to the upstream Codex service. This ensures that crucial client-specific metadata, such as the client's version and request identifiers, is preserved throughout the communication chain, which can aid in debugging, analytics, and service-side processing. The changes also include an update to the default user agent string and robust test cases to confirm the intended behavior. Highlights
🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console. Using Gemini Code AssistThe 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
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 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. Footnotes
|
There was a problem hiding this comment.
Code Review
This pull request updates the Codex client headers, including User-Agent, Version, Originator, X-Codex-Turn-Metadata, and X-Client-Request-Id, and introduces a new codexOriginator constant. The logic for setting the Originator header has been updated to prioritize ginHeaders and use the new constant. Corresponding tests have been added to verify the correct application and passthrough of these headers for both HTTP and WebSocket requests. A minor re-indentation was also made in antigravity_claude_request.go. The review suggests refactoring the duplicated Originator header logic into a shared helper function to improve maintainability.
| if originator := strings.TrimSpace(ginHeaders.Get("Originator")); originator != "" { | ||
| r.Header.Set("Originator", originator) | ||
| } else if !isAPIKey { | ||
| r.Header.Set("Originator", codexOriginator) | ||
| } |
There was a problem hiding this comment.
The logic for setting the Originator header is duplicated in applyCodexWebsocketHeaders. To improve maintainability and reduce code duplication, consider extracting this logic into a shared helper function within the executor package. For example:
func setOriginatorHeader(target http.Header, source http.Header, isAPIKey bool) {
if originator := strings.TrimSpace(source.Get("Originator")); originator != "" {
target.Set("Originator", originator)
} else if !isAPIKey {
target.Set("Originator", codexOriginator)
}
}This function could then be called from both applyCodexHeaders and applyCodexWebsocketHeaders.
No description provided.