feat(search): add provider-native web search - #2152
Merged
Merged
Conversation
hqhq1025
force-pushed
the
codex/provider-native-web-search
branch
from
August 4, 2026 14:13
c5d7abf to
5ffc1ed
Compare
hqhq1025
marked this pull request as ready for review
August 4, 2026 14:13
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.
Summary
WebSearchrouting layer that selects either the current model provider or explicit Tavily executionweb_searchand Anthropic Messagesweb_search_20250305, including durable provider call/result replay and citation metadataweb_researchchild availability from the selected session model and search policyVerification
npm run build:testnpm run typechecknpm run lintnpm run format:checkserver_tool_use+web_search_tool_resultand Responses item-reference replayEarlier live DeepSeek smoke runs completed on both Responses and Anthropic-compatible wires across CLI and Headless. A later review rerun timed out before either endpoint returned its first model event; deterministic provider-wire coverage remains green and no later live result is claimed.
Review focus
Provider-native results deliberately keep a normalized
resultfor UI/read models and opaqueproviderOutputfor protocol replay. The raw replay payload is counted by context budgeting, is never partially archived, and is dropped from fallback replay when unavailable rather than being reconstructed from the display projection.