mirror of
https://github.com/fabro-sh/fabro.git
synced 2026-08-28 05:27:41 +00:00
## Summary Adds the Phase 1 settings surface for gateway-backed LLM providers. This was prompted by @haroldolivieri's Portkey/Bedrock field report on PR #207, which showed that gateway auth and routing often live in custom headers rather than the adapter's primary API-key header. This PR is schema and seam work only. It does not make settings-defined providers runnable yet; later phases still own ProviderId migration, catalog construction, auth resolution, and production adapter registration. ## Changes - add typed `extra_headers` values to `[llm.providers.<id>]` - support explicit `literal`, `env`, and `credential` header value forms while rejecting bare strings, empty values, ambiguous tables, and unknown keys - cover whole-map header merge behavior and adapter header pass-through tests - update the settings-driven LLM plan with the Phase 1 gateway header attribution and completion notes ## Non-goals - does not make settings-defined providers runnable yet - does not migrate ProviderId/OpenAPI/auth resolver/runtime catalog plumbing - does not route Codex OAuth through custom provider settings ## Tests - `cargo nextest run -p fabro-config -p fabro-llm` - `cargo +nightly-2026-04-14 fmt --check --all` - `cargo +nightly-2026-04-14 clippy -p fabro-config -p fabro-llm --all-targets -- -D warnings` - `git diff --check origin/main...HEAD` ## Post-Deploy Monitoring & Validation No additional operational monitoring required. This is schema and adapter-seam coverage only; production provider registration and runtime credential/header resolution remain deferred. ## Attribution Motivated by @haroldolivieri's Portkey/Bedrock report on PR #207: https://github.com/fabro-sh/fabro/pull/207#issuecomment-4377929769 Commits include `Co-authored-by: Haroldo Olivieri <6575718+haroldolivieri@users.noreply.github.com>`. --- Compound Engineered: Codex, `ce:work`. --------- Co-authored-by: Haroldo Olivieri <6575718+haroldolivieri@users.noreply.github.com> |
||
|---|---|---|
| .. | ||
| plans | ||
| specs | ||