-
Notifications
You must be signed in to change notification settings - Fork 2.7k
feat: Add centralized HTTP client configuration for Bedrock proxy/SSL support #10443
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
feat: Add centralized HTTP client configuration for Bedrock proxy/SSL support #10443
Conversation
Introduces a new `utils/http-client.ts` module to manage proxy, CA, and SSL settings consistently across the application. This includes updates to various providers and fetchers to utilize the new configuration. Co-authored-by: patrickat4.8 <patrickat4.8@gmail.com>
Co-authored-by: patrickat4.8 <patrickat4.8@gmail.com>
Co-authored-by: patrickat4.8 <patrickat4.8@gmail.com>
Review complete. No issues found. The implementation correctly introduces a centralized HTTP client configuration utility for Bedrock proxy and SSL support. The code properly handles proxy URLs, NO_PROXY bypass logic, custom CA certificates, and SSL verification settings. The integration with both the Bedrock provider and embedder is sound. Mention @roomote in a comment to request specific changes to this pull request or fix all unresolved issues. |
Related GitHub Issue
Closes: #4446 and #8184
Description
This PR introduces a centralized HTTP client configuration utility to resolve proxy and SSL certificate verification issues with the AWS Bedrock provider.
Key Changes:
New Centralized HTTP Client Utility (
src/utils/http-client.ts):HTTPS_PROXY/HTTP_PROXY/ALL_PROXYenv vars and VS Code settings)NODE_EXTRA_CA_CERTS,AWS_CA_BUNDLE)http.proxyStrictSSL)NO_PROXYpatternsBedrock Provider Integration:
src/api/providers/bedrock.tsto usegetRooNodeHttpHandler()src/services/code-index/embedders/bedrock.tsfor consistent behaviorDesign Decisions:
requestHandlerconfiguration to ensure consistent behavior across all Bedrock operationsrequestTimeout: 0to avoid SDK timeouts conflicting with application-level timeout handlingWhat This PR Does NOT Change:
Test Procedure
Manual Testing:
Unit Test Coverage:
Environment Tested:
Pre-Submission Checklist
Get in Touch
Discord: pattywaggon
Important
Introduces centralized HTTP client configuration for proxy and SSL settings, updating Bedrock provider to use this utility for consistent request handling.
http-client.ts):HTTPS_PROXY,HTTP_PROXY,ALL_PROXY, and VS Code settings.NODE_EXTRA_CA_CERTSandAWS_CA_BUNDLE.http.proxyStrictSSL.NodeHttpHandlerfor AWS SDK v3.NO_PROXYpatterns.bedrock.tsandembedders/bedrock.tsto usegetRooNodeHttpHandler().@smithy/node-http-handlerandproxy-agenttopackage.json.This description was created by
for 1f14849. You can customize this summary. It will automatically update as commits are pushed.