mirror of
https://github.com/fabro-sh/fabro.git
synced 2026-08-28 05:27:41 +00:00
Follow-up cleanup on the profile-builder refactor. AgentProfileBuilder::build now borrows instead of consuming, removing the builder.clone().build() dance at all seven call sites. Deletes with_command_timeouts, which had no caller but its own test, and the with_summarizer constructors on all three profiles, whose only remaining caller was each profile's own new(). Replaces the fifth copy of the profile-kind match (guardrails.rs) with the builder, and swaps the parity matrix's hand-maintained provider list for Catalog::effective_agent_profile so a new catalog provider cannot silently skip the matrix. Collapses web_search_provider_test! into a secrets = arm on provider_test! and uses EnvVars::BRAVE_SEARCH_API_KEY over a literal. Drops the Brave key from the Ask Fabro session: AskFabroToolAccessPolicy denies web_search, and both tools() and the prompt are filtered through that policy, so the vault read only registered an uncallable tool. Makes NativeToolOptions::for_profile match exhaustively so a new profile kind must state its timeout, restores Anthropic's borrowed prompt sections and Gemini's static prompt (placeholder substitution rather than format! over 110 lines with doubled braces), and introduces WEB_SEARCH_TOOL_NAME for the registry lookups that keep tool availability and prompt guidance in sync. Updates the product docs, which still described web_search as always registered and as erroring at call time when unconfigured. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| apps | ||
| components | ||
| foundation | ||
| packages/fabro-api-client | ||