Repository navigation
fix: prevent proxied stream crashes and normalize Groq reasoning - #15357
Merged
diegosouzapw merged 2 commits intoOct 6, 2026
Merged
diegosouzapw merged 2 commits into
diegosouzapw merged 2 commits into
Conversation
The custom SOCKS connect function bypasses Agent.allowH2, and undici's buildConnector defaults allowH2 to true, so ALPN still negotiated h2 over SOCKS proxies. Pass allowH2: false to the inner buildConnector as well. Verified in production: a SOCKS TLS hop to an h2-capable origin negotiated h2 before the change and http/1.1 after it, and ERR_HTTP2_STREAM_ERROR stopped.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
These fixes were found while running the gateway in production under load.
PROXY_REQUEST_FAILEDcould terminate the gateway and cut unrelated in-flight streams → classify it as a recoverable upstream network error while preserving fatal handling for genuine programming errors.reasoning/output_configenvelopes and forcednonecaused invalid requests → strip foreign envelopes and map forcednone/lowtolowforopenai/gpt-oss-20b, preserving ordinary model defaults.Validation: Node v26.8.1, dependencies installed with the upstream lockfile (
npm ci --ignore-scripts --no-audit --no-fund --maxsockets=4). Eight focused upstream unit suites passed: 39 tests, zero failures or skips. Regression assertions fail against the unchanged upstream source and pass with this patch. ESLint and the repository commit hooks passed. Gitleaks and private-data pattern scans passed for the contribution.https://claude.ai/code/session_01BsVwQEhCy4c35aK8tjA9A6