"""Product-scope orchestration (step 3).

Connects the Navigator's fact-gate to the existing reasoning `discover_scope`:
decide regulatory scope only once the minimum (P0) facts are present, otherwise
return the missing facts. Reuses discover_scope unchanged — no new scope logic.
"""

from __future__ import annotations

from .orchestrator import resolve_product_scope
from .schemas import (
    ProductScopeRequest,
    ProductScopeResponse,
    RegulatoryScopeResult,
    ScopeStatus,
    UnsupportedDomain,
)

__all__ = [
    "resolve_product_scope",
    "ProductScopeRequest",
    "ProductScopeResponse",
    "RegulatoryScopeResult",
    "UnsupportedDomain",
    "ScopeStatus",
]
