fix(desktop,runtime-host): omit WebSearch from tool surface when unavailable - #2167
fix(desktop,runtime-host): omit WebSearch from tool surface when unavailable#2167cat0825 wants to merge 1 commit into
Conversation
…ailable Filter WebSearch out of effective model tool lists when disabled, unconfigured, or privacy mode is active. Refresh idle Desktop backends for webSearch/privacy settings changes while retaining call-time fail-closed guards. Closes apache#2085
|
Thanks for picking this up — this PR identifies and addresses two real gaps that remain important: hiding Tavily-backed I think we should hold this PR until #2152 lands, though. #2152 changes the authoritative WebSearch routing model by introducing provider-native search alongside Tavily. Rebasing this implementation as-is would create both textual conflicts and a semantic conflict: the current boolean availability check requires Tavily readiness, which would also hide valid provider-native WebSearch paths that do not need a Tavily key. Once #2152 is merged, could you please rebase and reshape this into a narrower follow-up on top of its The intended rules would be:
I would keep the Desktop backend refresh work from this PR, but fold credential readiness into the unified router rather than retaining separate Desktop/Host boolean filters. It would also be valuable to add one lifecycle-level test showing that an existing idle backend’s effective tool surface changes after a settings update. One small edge case to cover during the rebase: a whitespace-only saved Tavily key currently passes the surface check but is rejected after trimming at execution time. So my recommendation is to wait for #2152, then rebase and preserve the useful incremental pieces here. This should reduce the conflict surface and leave WebSearch with one authoritative routing path. |
|
Closing per maintainer decision. |
Summary
WebSearchfrom the effective model tool surface when WebSearch is disabled, unconfigured, or privacy/incognito mode is activewebSearchorprivacysettings changeVerification
npm --workspace @maka/desktop run build:mainnpm --workspace @maka/runtime-host run buildweb-search-tool.test.js: 3/3 passedexecution-model-composition.test.js: 19/19 passednpx biome check <11 touched files>git diff --checkCloses #2085