feat: Add centralized HTTP client configuration for Bedrock proxy/SSL support #10428
+319
−58
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.
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 AWS Bedrock provider, handling proxy and SSL settings via a new utility in
http-client.ts.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 5a98ad4. You can customize this summary. It will automatically update as commits are pushed.