Skip to content

fix: name provider instances in responses, drop the empty auth-user header, type plugin errors - #957

Open
SantiagoDePolonia wants to merge 4 commits into
mainfrom
fix/gateway-prerelease-polish
Open

fix: name provider instances in responses, drop the empty auth-user header, type plugin errors#957
SantiagoDePolonia wants to merge 4 commits into
mainfrom
fix/gateway-prerelease-polish

Conversation

@SantiagoDePolonia

@SantiagoDePolonia SantiagoDePolonia commented Sep 11, 2026

Copy link
Copy Markdown
Contributor

Four small pre-release fixes.

Provider instance names in responses. The provider field on /v1/responses and /v1/chat/completions (streamed and not) now names the configured provider instance instead of the provider type, so two instances of one type are distinguishable — an instance named mockds of type deepseek reports "provider": "mockds". This follows #946: the gateway stamps the instance name from the execution metadata, and the OpenAI-compatible adapters plus the providers that translate Responses through chat (cohere, gemini, vertex, bedrock, groq, chutes, minimax, bailian, ollama, opencode-go) carry opts.ClientName(...) the same way the HTTP clients already do. The audit log is unchanged — provider stays the type that drives routing and filters, provider_name is the instance — and the dashboard workflow chart's provider node now reads provider_name. Scope: this covers the provider field GoModel itself authors. A chat stream from an OpenAI-compatible upstream is relayed byte for byte, so on the rare upstream that self-reports a provider member in its own SSE payload (OpenRouter-style) that value still passes through unchanged, as it did before this PR.

Empty X-Gomodel-Auth-User response header. Every authenticated request emitted the header with an empty value when the credential had no user path (including master-key requests). It is now removed instead of set empty; the middleware still clears an identity installed by outer extension middleware.

Plugin failure error type. A fail-closed plugin returned HTTP 500 with type provider_error although no provider was called. It now returns type internal_error (code plugin_failure and the status are unchanged), as does a guardrail block with a 5xx status.

.dockerignore. A local docker build baked the developer's gitignored config/config.yaml into the image, where /app/config/config.yaml is a default config search path. config/config.yaml is now excluded; config.example.yaml and flow.yaml still ship.

Also fixes two internal/server version-handler tests that compared a UTC-derived cookie date against the local date and failed for runs made after midnight in a UTC+ timezone.

Tested: go test ./... and go test -race on the touched packages, make lint, make test-dashboard (670 pass). Live against a gateway with two deepseek instances (deepseek and mockds): /v1/responses and /v1/chat/completions, buffered and streamed, report the instance that served the request; the audit entry keeps provider: deepseek with provider_name: mockds; no X-Gomodel-Auth-User header on master-key responses. .dockerignore verified by inspecting the build context of a docker build before and after.

@mintlify

mintlify Bot commented Sep 11, 2026

Copy link
Copy Markdown

Preview deployment for your docs. Learn more about Mintlify Previews.

Project Status Preview Updated
gomodel 🟢 Ready View Preview Sep 12, 2026, 8:44 AM

💡 Tip: Enable Automations to automatically generate PRs for you.

@coderabbitai

coderabbitai Bot commented Sep 11, 2026

Copy link
Copy Markdown
Contributor

Warning

Review limit reached

Next included review available in 16 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used all 4 included reviews currently available.

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Learn how review limits work.

Review configuration:

⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Advanced

Run ID: e47752cd-7d8b-4c0c-b0d8-05fdb380928b

📥 Commits

Reviewing files that changed from the base of the PR and between ac672ad and 4161f16.

📒 Files selected for processing (32)
  • .dockerignore
  • docs/advanced/guardrails.mdx
  • docs/advanced/responses-api.mdx
  • internal/core/errors.go
  • internal/gateway/inference_execute.go
  • internal/gateway/inference_orchestrator_test.go
  • internal/plugins/decision.go
  • internal/plugins/run_test.go
  • internal/providers/anthropic/anthropic.go
  • internal/providers/anthropic/anthropic_test.go
  • internal/providers/anthropic/chat_stream.go
  • internal/providers/anthropic/responses.go
  • internal/providers/bailian/bailian.go
  • internal/providers/bedrock/bedrock.go
  • internal/providers/bedrock/bedrock_test.go
  • internal/providers/bedrock/chat_stream.go
  • internal/providers/chutes/chutes.go
  • internal/providers/cohere/cohere.go
  • internal/providers/gemini/gemini.go
  • internal/providers/groq/groq.go
  • internal/providers/minimax/minimax.go
  • internal/providers/ollama/ollama.go
  • internal/providers/openai/chat_compatible.go
  • internal/providers/openai/compatible_provider.go
  • internal/providers/openai/openai_test.go
  • internal/providers/opencodego/opencodego.go
  • internal/providers/vertex/vertex.go
  • internal/server/auth.go
  • internal/server/auth_test.go
  • internal/server/version_handler_test.go
  • web/dashboard/src/pages/workflows/workflowChartLogic.js
  • web/dashboard/tests/workflows.test.js

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@codecov-commenter

Copy link
Copy Markdown

⚠️ Please install the 'codecov app svg image' to ensure uploads and comments are reliably processed by Codecov.

Codecov Report

❌ Patch coverage is 67.74194% with 20 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
internal/core/errors.go 0.00% 5 Missing ⚠️
internal/providers/bedrock/bedrock.go 16.66% 5 Missing ⚠️
internal/providers/cohere/cohere.go 40.00% 3 Missing ⚠️
internal/gateway/inference_execute.go 84.61% 2 Missing ⚠️
internal/providers/minimax/minimax.go 0.00% 2 Missing ⚠️
internal/providers/vertex/vertex.go 60.00% 2 Missing ⚠️
internal/providers/opencodego/opencodego.go 50.00% 1 Missing ⚠️

📢 Thoughts on this report? Let us know!

@greptile-apps

greptile-apps Bot commented Sep 11, 2026

Copy link
Copy Markdown

RetriggerConfidence Score: 5/5

Safe to merge.

Reviews (2) · Last reviewed commit: "docs(openai): note that chat SSE relays ..."

Comment thread internal/gateway/inference_execute.go
@SantiagoDePolonia

Copy link
Copy Markdown
Contributor Author

@coderabbitai review

@SantiagoDePolonia

Copy link
Copy Markdown
Contributor Author

@greptileai review

@coderabbitai

coderabbitai Bot commented Sep 12, 2026

Copy link
Copy Markdown
Contributor
⚠️ Action not completed

Review rate limited.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@SantiagoDePolonia

Copy link
Copy Markdown
Contributor Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Sep 12, 2026

Copy link
Copy Markdown
Contributor

Rate Limit Exceeded

@SantiagoDePolonia have exceeded the limit for the number of chat messages per hour. Please wait 11 minutes and 8 seconds before sending another message.

@SantiagoDePolonia

Copy link
Copy Markdown
Contributor Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Sep 12, 2026

Copy link
Copy Markdown
Contributor
⚠️ Action not completed

Review rate limited.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants