Files
openclaw/src
SidQin-cyber 8591217c5c fix(model): propagate custom provider headers to model objects
`buildInlineProviderModels()` reads `baseUrl` and `api` from provider
config but silently drops `headers`.  Separately, `resolveModel()` returns
built-in registry models without applying any provider-level `baseUrl` or
`headers` overrides from `openclaw.json`.

This causes custom HTTP headers (e.g. auth tokens, custom User-Agent)
configured in `models.providers.<name>.headers` to never reach the
upstream API, resulting in silent 403 errors for providers that require
specific headers.

Fix both paths:
- `buildInlineProviderModels`: merge provider-level and model-level
  `headers` (model takes precedence).
- `resolveModel`: after registry lookup, overlay provider config
  `baseUrl` and `headers` onto the resolved model.

Add 5 test cases covering header propagation, absence, and provider
override for registry-found models.

Closes #15682
Ref #24285
2026-03-04 15:51:26 +00:00
..