migrate #1302: Feat(vertex): add prefix field#487
migrate #1302: Feat(vertex): add prefix field#487KooshaPari wants to merge 2848 commits intomainfrom
Conversation
Merge recover-all branch into main
…idation Consolidate config types across internal/pkg/sdk layers: - Update sdk/config to alias pkg/llmproxy/config (canonical location) - Move SDKConfig/StreamingConfig definitions to pkg/llmproxy/config - Update all internal/auth packages to use pkg/llmproxy/config - Fix sdk/cliproxy and examples to use consistent config types Import cleanup: - Replace internal/translator imports with pkg/llmproxy/translator - Replace internal/runtime imports with pkg/llmproxy/runtime - Replace internal/api imports with pkg/llmproxy/api - Replace internal/wsrelay imports with pkg/llmproxy/wsrelay - Update all auth, executor, and handler imports Add missing CloseExecutionSession methods: - MyExecutor in examples/custom-provider/main.go - EchoExecutor in examples/http-request/main.go - shouldCloak helper function in internal/runtime/executor/claude_executor.go Remove duplicate type definitions in kiro translator. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
… kiro websearch dedup, geminicli import paths - sdk/config now aliases pkg/llmproxy/config.Config (was internal/config.Config) - Removed duplicate McpRequest/GetWebSearchDescription/ParseSearchResults from kiro_websearch_handler.go - Fixed geminicli import paths: pkg/llmproxy/runtime/geminicli -> internal/runtime/geminicli - Added CloseExecutionSession() no-op to EchoExecutor and MyExecutor (examples) - Added shouldCloak() to internal/runtime/executor/cloak_utils.go - Fixed bad //go:build skip lines with literal \n in 3 pkg/llmproxy/config test files - Fixed sdkconfig.SDKConfig -> config.SDKConfig in reconcile.go - Removed unused sdkconfig import from reconcile.go go build ./... now exits 0. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
The convertChatCompletionsStreamChunkToCompletions function was including usage information in all stream chunks, but should drop usage when a chunk has a finish_reason (terminal chunk). Only preserve usage for usage-only chunks (empty choices array). Fixes TestConvertChatCompletionsStreamChunkToCompletions_DropsUsageOnTerminalFinishChunk by tracking hasFinishReason flag and conditionally including usage based on: 1. NOT being a terminal finish chunk, OR 2. Being a usage-only chunk (no choices) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Removes ~23K LOC of duplicate executor code - Server builds successfully
- Add api/openapi.yaml with core endpoints - Add .github/workflows/generate-sdks.yaml for Python/TypeScript SDK generation - Enables SDK generation from OpenAPI spec
- Add cliproxy/client.py - Python client for API - Add cliproxy/__init__.py - SDK init - Generated from OpenAPI spec
Root cause: Multiple config type aliases (sdk/config.SDKConfig vs pkg/llmproxy/config.SDKConfig vs internal/config.SDKConfig) were treated as different types by Go despite aliasing to the same underlying type. Similarly, ErrorMessage types in different packages were duplicated. Changes: 1. Fixed sdk/config/config.go to import from internal/config instead of pkg/llmproxy/config, establishing correct import hierarchy 2. Updated all util functions (SetProxy, NewAnthropicHttpClient) to import from internal/config for canonical type identity 3. Made pkg/llmproxy/config re-export sdk/config types as aliases 4. Made pkg/llmproxy/interfaces/ErrorMessage an alias to internal version 5. Made pkg/llmproxy/access/config_access/provider.go accept sdk/config.SDKConfig 6. Added necessary type aliases and methods to pkg/llmproxy/config.go Result: All config and interface types now have unified identity throughout the codebase. Type mismatches in SetProxy, NewAnthropicHttpClient, configaccess.Register, and interfaces.ErrorMessage are resolved. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Remove duplicate type definitions in kiro_websearch_handler.go (McpRequest, McpParams, etc already in kiro_websearch.go) - Define SDKConfig as struct in pkg/llmproxy/config instead of alias to avoid circular import - Add Wave Batch 7 (CPB-0910..CPB-0920) to troubleshooting.md - Clean up merge conflict markers in troubleshooting.md
This commit fixes the following test failures:
1. pkg/llmproxy/registry [setup failed]
- Fixed syntax error in registry_coverage_test.go (missing comma in assertion)
- Removed unused time import
2. pkg/llmproxy/api::TestServer_StartupSmokeEndpoints_UserAgentVariants
- Fixed test expectations to accept different response formats from different handlers
- OpenAI handler returns {object: "list", data: [...]}
- Claude handler returns {data: [...], has_more: false, first_id: "...", last_id: "..."}
- Tests now check for data field presence instead of rigid format expectations
3. pkg/llmproxy/auth/copilot::TestDeviceFlowClient_PollForToken
- Test was already passing; no changes needed
4. pkg/llmproxy/config::TestSanitizeOAuthModelAlias_AllowsSameAliasForDifferentNames
- Fixed deduplication logic to dedupe by (name, alias) pair instead of alias only
- Allows same alias to map to different models within a channel
- Example: both model-a and model-b can use shared-alias
5. pkg/llmproxy/config::TestSanitizeOAuthModelAlias_InjectsDefaultKiroWhenEmpty
- Expanded defaultGitHubCopilotAliases() to include both Opus and Sonnet models
- Updated test expectations to verify both aliases are present
Root causes:
- Syntax errors in test files
- Incorrect test expectations for handler response formats
- Deduplication logic considering only alias field, not name+alias pair
- Missing default model aliases
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- API: handle different response formats from OpenAI vs Claude handlers - Config: fix OAuth model alias deduplication to key by (name,alias) pair - Config: expand default GitHub Copilot aliases to include Sonnet model - Config: update test expectations for new default aliases Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add SDK types to pkg/llmproxy/config - Remove sdk_config.go (was causing type conflicts) - Add air.toml for hot reload development - Build succeeds with unified types
fix: layer 2 — unify internal and pkg/llmproxy config types
fix: layer 1 — add code scanning suppressions for acceptable patterns
Enhances the AMP model mapping functionality to support fallback mechanisms using . This change allows the system to attempt alternative models (aliases) if the primary mapped model fails due to issues like quota exhaustion. It updates the model mapper to load and utilize the configuration, enabling provider lookup via aliases. It also introduces context keys to pass fallback model names between handlers. Additionally, this change introduces a fix to prevent ReverseProxy from panicking by swallowing ErrAbortHandler panics. Amp-Thread-ID: https://ampcode.com/threads/T-019c0cd1-9e59-722b-83f0-e0582aba6914 Co-authored-by: Amp <amp@ampcode.com>
|
Warning You have reached your daily quota limit. Please wait up to 24 hours and I will start processing your requests again! |
|
Warning Rate limit exceeded
⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. 📒 Files selected for processing (7)
✨ Finishing Touches🧪 Generate unit tests (beta)
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 |
…migrate-conflict-1302
|
Superseded by layered CI-fix PR flow. Continuing in ci/fix branch PR #501. |
…conflict-1302 ci: fix workflow required-check names for feature/koosh-migrate-conflict-1302
Migrated from router-for-me#1302 via PR migration lane.