Repository navigation
Add explicitly-present web_fetch_enabled request setting - #394
Draft
warp-agent-staging[bot] wants to merge 1 commit into
Draft
warp-agent-staging[bot] wants to merge 1 commit into
warp-agent-staging[bot] wants to merge 1 commit into
Conversation
Contributor
Author
|
This PR was generated with Warp. Comment |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



Description
Adds
Request.Settings.web_fetch_enabledso an Agent Profile can allow Exa web fetch independently of web search. Todayweb_search_enabledgates both built-in web tools.The field uses explicit presence (
[features.field_presence = EXPLICIT]), so the server can tell an old client (unset) from a profile that turns fetch off (explicitfalse). When the field is unset, the server falls back toweb_search_enabled. That keeps existing profiles that disabled web search from gaining fetch.Generated shapes:
web_fetch_enabled: Option<bool>GetWebFetchEnabled,HasWebFetchEnabled,SetWebFetchEnabled,ClearWebFetchEnabled; builder field*boolField number: this uses 37, not the next free number 36, because the open #393 already claims
Settingsfield 36. Either PR can merge first without a renumber. This supersedes the stale #227, which uses field 26 (nowsupports_research_agent).Related PRs: server profile split warpdotdev/warp-server#19137 and Warp client profile toggle warpdotdev/warp#16315. Merge order: this PR → warpdotdev/warp-server#19137 → warpdotdev/warp#16315.
Justification
Requested by the Agent Profile web-fetch toggle work: users want web search without page fetch (or the reverse), and team admins need to control each tool separately.
Sensitive Fields
No new string fields; the only new field is a
bool.Validation
./script/generate -a multi_agent -v v1with protoc 36.0 and protoc-gen-go v1.36.6 (the CI versions): onlyrequest.protoandrequest.pb.gochange.go build ./...inapis/multi_agent: passes.cargo buildandcargo test: pass; the generated Rust has#[prost(bool, optional, tag = "37")] pub web_fetch_enabled: Option<bool>.npm ci && npm run generate:ts: passes; TS haswebFetchEnabled: boolean.There is no UI in this PR. The recordings and screenshots below come from the dependent Warp client PR warpdotdev/warp#16315.
Recordings
End-to-end evidence from the dependent Warp client PR warpdotdev/warp#16315 (real Linux app build). These show the Agent Profile UI and the persisted profile, not this PR's code rendering anything directly.
Screenshots
Before (baseline client build):
After (changed client build):