"""Upstream release-check providers.

This package is intentionally separate from :mod:`notify_bridge_core.providers`:

* service providers are user-configured entities persisted per-tenant in the DB;
* release providers are admin-level upstream-version probes selected by setting,
  with at most one active provider per installation.

Mixing them in one enum/factory bled responsibilities and complicated future
additions (e.g. a GitHub release provider that has nothing to do with Gitea
service integrations).
"""

from .base import (
    ReleaseErrorCode,
    ReleaseInfo,
    ReleaseProvider,
    ReleaseProviderKind,
    ReleaseTestResult,
    is_valid_repo,
)
from .registry import build_release_provider

__all__ = [
    "ReleaseErrorCode",
    "ReleaseInfo",
    "ReleaseProvider",
    "ReleaseProviderKind",
    "ReleaseTestResult",
    "build_release_provider",
    "is_valid_repo",
]
