"""Тексты причин для результатов анализа индикаторов."""

ABUSEIPDB_CDN_REASON = "Является CDN"
ABUSEIPDB_PRIVATE_REASON = "IP непубличный по данным AbuseIPDB"
ABUSEIPDB_NOT_WHITELISTED_REASON = "IP не в белом списке AbuseIPDB"
ABUSEIPDB_PUBLIC_REASON = "IP публичный по данным AbuseIPDB"
ABUSEIPDB_WHITELISTED_REASON = "IP разрешён или не заблокирован в AbuseIPDB"
ABUSEIPDB_NOT_CDN_REASON = "IP не определяется как CDN в AbuseIPDB"
ASRANK_TOP_REASON = "Топ-100 по ASN"
ASRANK_RANK_REASON_TEMPLATE = "Ранг ASRank для ASN {asn}: {rank}"
ASRANK_RANK_UNKNOWN_REASON_TEMPLATE = "Ранг ASRank для ASN {asn} недоступен"
NO_ASN_REASON = "ASN для IP не найден в DBIP"
OTX_NO_PASSIVE_DNS_BLOCK_REASON = " Нет доменов за IP"
OTX_NO_PASSIVE_DNS_MONITOR_REASON = OTX_NO_PASSIVE_DNS_BLOCK_REASON
PASSIVE_DNS_FOUND_REASON = "Найдены записи passive DNS за IP"
PASSIVE_DNS_HAS_TOP1M_REASON = "Есть домены из топ-1М за IP"
TOP1M_PASSIVE_TOP_REASON = "Домен за IP в топ-100k"
PASSIVE_POPULAR_ZONES_REASON = ">50 популярных доменов за IP"
PASSIVE_POPULAR_ZONES_SAFE_REASON_TEMPLATE = (
    "Популярных доменов за IP меньше 50 (найдено {count})"
)
NO_PASSIVE_DOMAINS_REASON = "За IP только непопулярные домены"
PASSIVE_DNS_NO_TOP1M_REASON = "Нет доменов из топ-1М за IP"
TOP1M_SHORT_LIVED_REASON = "Есть домен из топ-1М, срок регистрации <2 лет. Блокировка"
NO_TOP1M_SHORT_LIVED_BLOCK_REASON = (
    "Нет доменов из топ-1М, срок регистрации <2 лет. Блокировка"
)
SHORT_LIVED_MONITOR_REASON = (
    "Нет доменов из топ-1М, срок регистрации <2 лет. Мониторинг"
)
PASSIVE_DNS_LONG_LIVED_REASON = (
    "Найдены домены с длительным сроком регистрации, оставляем без реакции"
)
KASPERSKY_BLOCK_REASON = "Зона Kaspersky не Green"
KASPERSKY_MONITOR_REASON = KASPERSKY_BLOCK_REASON
KASPERSKY_OK_REASON = "Зона Kaspersky Green"

KASPERSKY_URL_BLOCK_REASON = KASPERSKY_BLOCK_REASON
KASPERSKY_URL_MONITOR_REASON = KASPERSKY_BLOCK_REASON
KASPERSKY_URL_OK_REASON = KASPERSKY_OK_REASON

KASPERSKY_HASH_BLOCK_REASON = KASPERSKY_BLOCK_REASON
KASPERSKY_HASH_MONITOR_REASON = KASPERSKY_BLOCK_REASON
KASPERSKY_HASH_OK_REASON = KASPERSKY_OK_REASON

IP_ANALYSIS_OK_REASON = "Условий для блокировки IP не найдено"

TOP1M_TOP_100K_REASON_TEMPLATE = "Домен в топ-100к (ранг {rank})"
TOP1M_RANK_ABOVE_THRESHOLD_REASON_TEMPLATE = "Ранг домена вне топ-100к: {rank}"
TOP1M_RANK_MISSING_REASON = "Ранг домена в топ-1М отсутствует"
MODEL_PROBABILITY_REASON_TEMPLATE = (
    "Оценка модели: {probability:.3f} при пороге {threshold:.3f}"
)
TOP1M_REASON = "Домен присутствует в топ-1M"
NO_TOP1M_REASON = "Домен отсутствует в топ-1M"
CDN_SUBSTRING_REASON = "В имени обнаружена подстрока cdn"
CDN_SUBSTRING_MISSING_REASON = "Надёжных признаков CDN в имени не найдено"
MANUAL_TLD_BLOCK_REASON_TEMPLATE = "Домен имеет TLD из ручного блоклиста: {tld}"
DOMAIN_WHITELIST_REASON = "Домен входит в белый список"

ANALYSIS_NOT_IMPLEMENTED_REASON = "Анализ не реализован"
ANALYSIS_ERROR_REASON_TEMPLATE = "Анализ завершился ошибкой: {error}"
ANALYSIS_EMPTY_VERDICT_REASON = "Анализ не вернул вердикты, используем дефолтный вердикт"
