fix: strip X-Stainless headers and normalize SDK User-Agent (closes #597) - #656
Open
anuragg-saxenaa wants to merge 1 commit into
Open
anuragg-saxenaa wants to merge 1 commit into
anuragg-saxenaa wants to merge 1 commit into
Conversation
…AI-compatible requests (closes decolua#597)
This was referenced May 1, 2026
diegosouzapw
pushed a commit
to diegosouzapw/OmniRoute
that referenced
this pull request
Jun 26, 2026
…r OpenAI-compatible endpoints OpenAI SDK clients attach X-Stainless-* metadata headers and verbose SDK-derived User-Agent strings. Some upstream gateways 403 on these SDK-identifying headers. Strip them and normalize the User-Agent on the OpenAI-compatible passthrough path (Chat Completions / Responses / openai-compatible-* providers) via pure, unit-tested helpers wired into BaseExecutor.execute(). The isOpenAICompatibleEndpoint guard is kept narrow so Claude / Claude-Code compat paths — which legitimately ADD X-Stainless-* — are untouched. Co-authored-by: Anurag Saxena <anuragg.saxenaa@gmail.com> Inspired-by: decolua/9router#656
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.
Summary
Requests from the official OpenAI Node SDK fail with 403 when routed through 9router, because upstream gateways block requests carrying OpenAI SDK metadata headers.
The fix strips X-Stainless-* headers and normalizes the User-Agent header to a clean browser-like string for OpenAI-compatible endpoints.
What changed
open-sse/executors/base.js
Closes OpenAI-compatible endpoint blocks requests from official OpenAI Node SDK unless SDK metadata headers are suppressed #597