От адреса сайта до исправленного сайта
1. Обход и слепок
Обходим страницы, включая типовые адреса политики, оферты, контактов и вакансий. Сохраняем HTML, заголовки ответа, cookie, формы с полями, подключённые скрипты, кадры и изображения, определяем адреса и страны внешних хостов. Слепок сериализуется и хешируется: состояние сайта зафиксировано на дату проверки, и при следующей проверке видно, что изменилось.
2. Правила
Каждое правило — это проверяемое утверждение с нормой и санкцией: форма с полем телефона без отметки согласия, счётчик до согласия, цена в долларах, иностранное слово в сведениях для потребителя, отсутствие политики. Находка без доказательства не выпускается.
3. ИИ-агент с нормативной базой
Агент получает выжимку слепка и подборку норм из нашей базы. Он обязан ссылаться на идентификаторы норм. Он отсеивает ложные срабатывания — например, когда «design» является частью товарного знака, — и добавляет отраслевые требования. Работает в изолированном контейнере: текст чужого сайта не должен получать доступ к нашей системе.
4. Самостоятельный поиск
Если нормы в базе не хватает, агент формулирует запрос. Отдельное задание выполняет поиск в официальных источниках с разрешёнными инструментами чтения из сети. Найденное не попадает в базу автоматически — оно становится предложением, которое проверяет человек.
5. Техническое задание
Перечень работ с оценкой в часах, привязка к странице и селектору, примеры кода, требования к журналу согласий и чек-лист приёмки. Документ можно отдать подрядчику без пояснений.
6. Скрипт-надстройка
Одна строка в шаблоне сайта. Скрипт блокирует счётчики до согласия, показывает баннер cookie с категориями, добавляет согласия в формы, заменяет иностранные слова, выводит реквизиты и ведёт журнал согласий на нашей стороне.
Почему очередь, а не проверка «на лету»
Обход сайта и работа агента занимают минуты и потребляют память. Если запускать их прямо в обработчике запроса, сервис ляжет на десятке одновременных проверок. Поэтому любая проверка — это задание в очереди: рабочие процессы разбирают её с ограниченным параллелизмом, число одновременно работающих агентов ограничено отдельно, аренда задания продлевается, а зависшее задание возвращается в очередь и повторяется с нарастающей задержкой.