mirror of
https://github.com/fabro-sh/fabro.git
synced 2026-10-03 02:24:33 +00:00
## Summary This lays the groundwork for settings-driven LLM providers and models without switching production routing yet. The new schemas and shared vocabulary let later catalog construction treat provider/model identity as data while keeping adapter behavior and control values Rust-owned. ## What changed - Added `[llm.providers]` and `[llm.models]` settings layers with sparse per-entry merging, whole-array replacement for credential/alias/control lists, TOML date support for `knowledge_cutoff`, and typed `credential:` / `env:` references that reject literal secrets. - Added `ProviderId`, `ModelId`, and a shared `ReasoningEffort` enum in `fabro-model`, plus adapter metadata for `anthropic`, `openai`, `gemini`, and `openai_compatible`. - Added a matching `fabro-llm` adapter factory registry with parity tests to keep metadata keys and factory keys in sync. - Added `[run.model.controls]` defaults through config resolution and runtime settings types. - Added a workspace policy test to prevent future `bootstrap_catalog` use outside install/test-support paths. ### Plan Summary - This is the foundation slice of the settings-driven catalog plan. - Production still uses the existing `Provider` enum and `Catalog::builtin()` call paths. - ProviderId routing, OpenAPI regeneration, auth resolver changes, resolved `Arc<Catalog>` injection, typed request speed, and per-speed billing are deferred follow-ups. ⚒️ Generated with [Fabro](https://fabro.sh) --------- Co-authored-by: Fabro <noreply@fabro.sh> Co-authored-by: fabro-bot <fabro-bot@fabro.sh> Co-authored-by: Bryan Helmkamp <bryan@brynary.com> |
||
|---|---|---|
| .. | ||
| build-support | ||
| fabro-acp | ||
| fabro-agent | ||
| fabro-api | ||
| fabro-auth | ||
| fabro-checkpoint | ||
| fabro-cli | ||
| fabro-client | ||
| fabro-config | ||
| fabro-core | ||
| fabro-dev | ||
| fabro-devcontainer | ||
| fabro-dump | ||
| fabro-github | ||
| fabro-graphviz | ||
| fabro-hooks | ||
| fabro-http | ||
| fabro-install | ||
| fabro-interview | ||
| fabro-llm | ||
| fabro-macros | ||
| fabro-manifest | ||
| fabro-mcp | ||
| fabro-mcp-server | ||
| fabro-model | ||
| fabro-oauth | ||
| fabro-options-metadata | ||
| fabro-proc | ||
| fabro-redact | ||
| fabro-sandbox | ||
| fabro-server | ||
| fabro-slack | ||
| fabro-spa | ||
| fabro-static | ||
| fabro-store | ||
| fabro-telemetry | ||
| fabro-template | ||
| fabro-test | ||
| fabro-tracker | ||
| fabro-types | ||
| fabro-util | ||
| fabro-validate | ||
| fabro-vault | ||
| fabro-workflow | ||