% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/shared__helpers.R
\name{.resolve_webpage_reader_settings}
\alias{.resolve_webpage_reader_settings}
\title{Resolve Webpage Reader Settings}
\usage{
.resolve_webpage_reader_settings(
  config_search = NULL,
  allow_read_webpages = NULL,
  webpage_relevance_mode = NULL,
  webpage_heuristic_profile = NULL,
  webpage_embedding_provider = NULL,
  webpage_embedding_model = NULL,
  webpage_timeout = NULL,
  webpage_max_bytes = NULL,
  webpage_max_chars = NULL,
  webpage_max_chunks = NULL,
  webpage_chunk_chars = NULL,
  webpage_embedding_api_base = NULL,
  webpage_prefilter_k = NULL,
  webpage_use_mmr = NULL,
  webpage_mmr_lambda = NULL,
  webpage_cache_enabled = NULL,
  webpage_cache_max_entries = NULL,
  webpage_cache_max_text_chars = NULL,
  webpage_blocked_cache_ttl_sec = NULL,
  webpage_blocked_cache_max_entries = NULL,
  webpage_blocked_probe_bytes = NULL,
  webpage_blocked_detect_on_200 = NULL,
  webpage_blocked_body_scan_bytes = NULL,
  webpage_pdf_enabled = NULL,
  webpage_pdf_timeout = NULL,
  webpage_pdf_max_bytes = NULL,
  webpage_pdf_max_pages = NULL,
  webpage_pdf_max_text_chars = NULL,
  webpage_user_agent = NULL
)
}
\arguments{
\item{config_search}{asa_search object or list of search settings}

\item{allow_read_webpages}{TRUE/FALSE/NULL}

\item{webpage_relevance_mode}{"auto", "lexical", "embeddings", or NULL}

\item{webpage_heuristic_profile}{"generic" or NULL}

\item{webpage_embedding_provider}{"auto", "openai", "sentence_transformers", or NULL}

\item{webpage_embedding_model}{Embedding model identifier or NULL}

\item{webpage_timeout}{OpenWebpage timeout in seconds, or NULL to use the
Python default.}

\item{webpage_max_bytes}{OpenWebpage download cap in bytes, or NULL to use
the Python default.}

\item{webpage_max_chars}{OpenWebpage output cap in characters, or NULL to use
the Python default.}

\item{webpage_max_chunks}{Max relevant excerpts to return, or NULL to use the
Python default.}

\item{webpage_chunk_chars}{Approximate chunk size (characters), or NULL to
use the Python default.}

\item{webpage_embedding_api_base}{OpenAI-compatible base URL for embeddings,
or NULL to use the Python default.}

\item{webpage_prefilter_k}{Optional lexical prefilter size before embedding
selection.}

\item{webpage_use_mmr}{Whether to apply maximal marginal relevance (MMR) for
diverse excerpts.}

\item{webpage_mmr_lambda}{MMR tradeoff between relevance (1.0) and diversity (0.0).}

\item{webpage_cache_enabled}{Enable per-run caching, or NULL to use the Python
default.}

\item{webpage_cache_max_entries}{Max cached entries per run, or NULL.}

\item{webpage_cache_max_text_chars}{Max extracted text chars to cache per page,
or NULL.}

\item{webpage_blocked_cache_ttl_sec}{TTL in seconds for blocked URL cache.}

\item{webpage_blocked_cache_max_entries}{Max blocked cache entries.}

\item{webpage_blocked_probe_bytes}{Max bytes inspected for blocked-marker detection.}

\item{webpage_blocked_detect_on_200}{Detect anti-bot interstitial pages served
with HTTP 200 and classify them as blocked.}

\item{webpage_blocked_body_scan_bytes}{Max bytes scanned for blocked markers on
HTTP 200 pages.}

\item{webpage_pdf_enabled}{Enable PDF extraction via pdftotext.}

\item{webpage_pdf_timeout}{Timeout in seconds for pdftotext.}

\item{webpage_pdf_max_bytes}{Max bytes to download per PDF.}

\item{webpage_pdf_max_pages}{Max pages to extract from PDF.}

\item{webpage_pdf_max_text_chars}{Max PDF text chars retained before ranking.}

\item{webpage_user_agent}{User-Agent string for webpage fetches, or NULL.}
}
\value{
List with resolved settings
}
\description{
Internal helper that merges per-call webpage reader options with defaults
from config$search.
}
\keyword{internal}
