Keep agent web_search on runtime provider resolution#88684
Conversation
|
Codex review: needs real behavior proof before merge. Reviewed June 24, 2026, 8:02 AM ET / 12:02 UTC. Summary PR surface: Source -4, Tests -22. Total -26 across 3 files. Reproducibility: yes. at source level: current main can set preferRuntimeProviders false for a manifest-owned configured search provider, and createWebSearchTool forwards that into runWebSearch. I did not live-reproduce the multi-hour gateway uptime failure. Review metrics: 1 noteworthy metric.
Stored data model Root-cause cluster Members:
Proposal only: this assessment does not dispatch repair, suppress jobs, mutate sibling items, close, or merge anything. Merge readiness Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch. Rank-up moves:
Proof guidance:
Risk before merge
Maintainer options:
Next step before merge
Security Review detailsBest possible solution: Land this narrow runtime-first search fix after provider/runtime owner review, redacted real behavior proof, and coordination with the broader explicit-provider routing PR; keep web_fetch's bundled-owner gate intact. Do we have a high-confidence way to reproduce the issue? Yes, at source level: current main can set preferRuntimeProviders false for a manifest-owned configured search provider, and createWebSearchTool forwards that into runWebSearch. I did not live-reproduce the multi-hour gateway uptime failure. Is this the best way to solve the issue? Yes, this looks like the narrowest maintainable fix shape: keep agent web_search runtime-first and leave search manifest-owner scoping to runWebSearch, while preserving web_fetch's bundled-owner path. The remaining blockers are proof, owner confirmation, and coordination with the overlapping routing PR. AGENTS.md: found and applied where relevant. Codex review notes: model internal, reasoning high; reviewed against 2a484a3ff10d. Label changesLabel justifications:
Evidence reviewedPR surface: Source -4, Tests -22. Total -26 across 3 files. View PR surface stats
What I checked:
Likely related people:
What the crustacean ranks mean
Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics. How this review workflow works
|
|
This direction makes sense to me. Search is much more sensitive to the live runtime registry than fetch, so keeping The main thing I’d want maintainers to sanity-check is whether there are any scenarios where a configured search provider is intentionally not supposed to use an already-loaded runtime instance. If the answer is “no,” then dropping the early manifest-owner lookup here seems like the cleanest way to bring agent |
df9990d to
3d604b7
Compare
3d604b7 to
1068c9e
Compare
1068c9e to
50ef096
Compare
50ef096 to
b02543f
Compare
|
Fixes #87347 What Problem This SolvesFixes an issue where agent-side Why This Change Was MadeThe agent tool was making a manifest-owner decision before User ImpactConfigured manifest-owned search providers remain available to agent-side Evidence
|
b02543f to
20ea078
Compare
|
rebased again because
The diff remains the same three-file owner-boundary fix. |
|
Maintainer update: the merge guard caught relevant mainline drift. I rebased the maintainer-editable branch onto the exact current The PR remains the same three-file web-search owner-boundary fix. Fresh exact-head hosted checks are running before the guarded merge retry. |
|
Maintainer update: |
|
Merged via squash.
Thanks @alexzhu0! |
Fixes #87347
What Problem This Solves
Fixes an issue where agent-side
web_searchcould report that no provider wasavailable even when the configured provider was loaded in the live runtime.
Why This Change Was Made
The agent tool was making a manifest-owner decision before
runWebSearchcoulduse the active runtime provider registry. Search now stays runtime-first at the
agent boundary;
runWebSearchremains responsible for downstream providerscoping.
web_fetchkeeps its existing bundled-owner behavior.User Impact
Configured manifest-owned search providers remain available to agent-side
web_searchwhen their plugin is loaded in the current runtime.Evidence
main:4d034639adfdcfd58ac8d793fdea625c88897428oxlint: passedgit diff --check: passedpreferRuntimeProviders=true; bundled fetchfalse