from .constants import Capability, EntityType, JobName, Reason, Status
from .enforcement_asset import EnforcementAsset


class BotModelDomainSync(EnforcementAsset):
    def __init__(self):
        super().__init__(
            name=JobName.BOT_MODEL_DOMAIN_SYNC,
            description="Apply degraded gens to confirmed bot domains",
            entity_type=EntityType.DOMAIN,
            capability=Capability.GENERATE,
            status=Status.DEGRADED,
            reason=Reason.BOT.value,
            schedule="0,30 * * * *",
            query_file="queries/blocked_email_domain_sync.sql",
            max_entities_per_run=100,
        )


# Create the asset
asset = BotModelDomainSync()
