"""Pure rule-engine algorithms (no I/O, no LLM, no clock).

Every module here is deterministic: same input → same output. Inputs are
typed via Pydantic models, outputs likewise. The orchestrator in
:mod:`cerbero_bite.runtime` is the only layer allowed to bring in real
data and call these functions.
"""
