Search backend (e.g. TavilyProvider) for web_search calls
Clear the page buffer and build the self-referential research toolkit
Resets the internal FetchedPage buffer on every call so prior-run content does not leak into a new research pass. Constructs the WebResearchTool on first bind only (toolkit is stateless once built).
Web-backed research source using search + fetch with scratchpad extraction
Wires up BufferingWebSearch and BufferingFetchPage for grounding, and a self-referential WebResearchTool for spawning parallel research sub-agents. Fetched page content is buffered in memory; after research completes, getChunks converts the buffer into Chunk instances via chunkFetchedPages for reranker scoring.