Skip to content

symfonic.core.capabilities.protocols

protocols

External capability protocols -- fetch and search.

FetchCapability

Bases: Protocol

Protocol for fetching web content.

SearchCapability

Bases: Protocol

Protocol for web search.

validate_query

validate_query(query: str) -> None

Validate search query. Raises ValueError if invalid.

Source code in src/symfonic/core/capabilities/protocols.py
def validate_query(query: str) -> None:
    """Validate search query. Raises ValueError if invalid."""
    if not query or not query.strip():
        raise ValueError("Search query must not be empty")

validate_url

validate_url(url: str) -> None

Validate URL format. Raises ValueError if invalid.

Source code in src/symfonic/core/capabilities/protocols.py
def validate_url(url: str) -> None:
    """Validate URL format. Raises ValueError if invalid."""
    if not url or not url.strip():
        raise ValueError("URL must not be empty")
    if not url.startswith(("http://", "https://")):
        raise ValueError(
            f"URL must start with http:// or https://, got: {url}"
        )