feat: replay 9 upstream features from closed-not-merged PRs#693
feat: replay 9 upstream features from closed-not-merged PRs#693KooshaPari merged 12 commits intomainfrom
Conversation
|
Caution Review failedThe pull request is closed. ℹ️ Recent review infoConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Pro 📒 Files selected for processing (25)
📝 WalkthroughWalkthroughThis PR introduces sticky round-robin routing strategy with session-based stickiness, implements request-level caching for antigravity models with fallback behavior, enhances IFlow executor with retry logic and request signing, adds auth fallback mechanisms with concurrency controls, and expands translation pipelines to propagate web-search annotations and citations across Claude, Gemini, and OpenAI formats. Changes
Estimated code review effort🎯 4 (Complex) | ⏱️ ~75 minutes Possibly related PRs
Poem
✨ Finishing Touches
🧪 Generate unit tests (beta)
Warning There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure. 🔧 golangci-lint (2.5.0)Error: can't load config: the Go language version (go1.25) used to build golangci-lint is lower than the targeted Go version (1.26.0) Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
…rs in function output Cherry-pick of upstream PR router-for-me#1672. Adds containsLiteralControlChars guard to prevent sjson.SetRaw from corrupting the JSON tree when function outputs contain literal control characters. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Cherry-pick of upstream PR router-for-me#1686. Reduces refresh check interval to 5s and adds refreshMaxConcurrency=16 constant (semaphore already in main). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Cherry-pick of upstream PR router-for-me#1648. Renames parametersJsonSchema to parameters for Gemini API compatibility. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Cherry-pick of upstream PR router-for-me#1233. Adds build-termux job that builds inside a Termux container for aarch64 support. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…iders Cherry-pick of upstream PR router-for-me#1579. Fixes duplicate/empty tool_use blocks in OpenAI->Claude streaming translation. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…ormats Cherry-pick of upstream PR router-for-me#1539. Adds url_citation/annotation passthrough from OpenAI web search to Gemini and Claude response formats. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Cherry-pick of upstream PR router-for-me#1673. Adds StickyRoundRobinSelector that routes requests with the same X-Session-Key to consistent auth credentials. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Follow-up for sticky-round-robin (upstream PR router-for-me#1673). Uses partial eviction (evict half) instead of full map reset for better stickiness. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Cherry-pick of upstream PR router-for-me#1699. Caches successful model fetches and falls back to cached list when fetches fail, preventing empty model lists. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Cherry-pick of upstream PR router-for-me#1699 (part 2). Ensures cached model metadata is deep-copied to prevent mutation across concurrent requests. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
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 integrates several previously unmerged upstream features, enhancing the API's robustness, performance, and compatibility across various LLM providers. Key improvements include better handling of JSON data integrity, optimized resource management for auto-refresh, standardized API parameter naming, and more intelligent routing and error recovery mechanisms. These changes collectively improve the stability and feature parity of the system. Highlights
Changelog
Ignored Files
Activity
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. 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
|
Cherry-pick of upstream PR router-for-me#1650. Improves iflow executor with 406 retry handling, stream stability fixes, and better auth availability checks. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Follow-up for upstream PR router-for-me#1650. Addresses review feedback on iflow executor body read handling and session ID extraction. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
5741ea1 to
02fd192
Compare
There was a problem hiding this comment.
Code Review
This pull request integrates a significant number of features from previously unmerged pull requests, enhancing functionality across various components. Key improvements include the introduction of a 'sticky-round-robin' routing strategy, caching for antigravity models to improve resilience, and more robust error handling and retry logic in the iFlow executor. The translation layers have also been updated to handle annotations and improve compatibility. While the changes are substantial and largely beneficial, I've identified a few critical bugs in the openai_claude_response.go translator that will cause compilation errors due to variable re-declarations and type mismatches. These issues need to be addressed to ensure the stability of the new features.
Summary
Replays 9 upstream features from closed-not-merged PRs that were never integrated into main:
Not included (needs further work)
Already in main (verified)
Test plan
kooshapari/cliproxyapi-plusplus🤖 Generated with Claude Code
Summary by CodeRabbit
Release Notes
New Features
Improvements
Reliability