`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