Отчёт не выйдет, пока не сойдутся его собственные числа
Наш аудит сайта не отправится клиенту, пока код не проверит его сам — шесть блокирующих проверок вместо памяти и обещаний.
2026-08-17 · 3 мин чтения
Экспресс-аудит, который вы заказываете за 5 000 ₽, не отправляется вам сразу, как только текст готов. Перед выдачей файл проходит шесть проверок, зашитых в код, — и любая проваленная останавливает отчёт. Не потому что мы не доверяем себе. Потому что один раз мы проверили и оказалось, что доверять на слово — плохая идея, даже себе самим.
Что не сработало 17.08
Мы завели привычку время от времени прогонять собственный сайт через свой же инструмент — тот же аудит, что продаём клиентам, только объект проверки — мы сами. Один такой прогон, 17 августа, за один день нашёл четыре случая, когда правило, которое мы держали в голове, просто не сработало. Не потому что правило было неверным — потому что оно жило в памяти прогона, а не в проверке, которую нельзя пропустить.
Например: было правило «отчёт публикует только те утверждения, которые можно перепроверить». Простое, правильное, всеми разделяемое. И всё равно на сайте нашлось утверждение, которое невозможно было проверить — число, не совпадавшее ни с одним реальным подсчётом. Правило существовало. Просто ничего не мешало его нарушить.
Что изменилось
С этого момента блокирующие проверки перенесены из памяти в код — модуль, который запускается перед каждой выдачей отчёта и физически не даёт файлу выйти, если что-то не сходится. Шесть проверок:
- сходятся ли счётчики находок в шапке отчёта с тем, что реально перечислено в тексте;
- не загрязнён ли замер скорости страницы запросами самого аудита (замер скорости, испорченный собственным же кодом проверки, — отдельный класс ошибки, который легко не заметить);
- не встроен ли CSS отчёта в обход общего каркаса — иначе вёрстка разойдётся незаметно для читающего отчёт;
- нет ли в тексте обещаний позиций в поиске или конкретных сроков — этого аудит не обещает никогда, и проверка следит, чтобы формулировка случайно не проскочила;
- полностью ли заполнены контрольные строки в рабочем журнале прогона — если модуль отработал не до конца, это должно быть видно, а не потеряться;
- виден ли вердикт отчёта на первом экране телефона, без прокрутки — это не про эстетику, а про то, что отчёт делают именно для того, чтобы его прочитали, а не просто получили файлом.
За шесть прогонов после внедрения сверка счётчиков не подвела ни разу. Не потому что мы стали внимательнее. Потому что внимательность больше не зависит от того, вспомнили мы о правиле в моменте или нет — она вынесена из памяти в проверку, которая либо пропускает отчёт, либо нет.
Почему это не про идеальность
Мы не утверждаем, что теперь ошибок не будет — будут, аудит делает и код, и решения по-прежнему принимает не только код. Разница в другом: раньше ошибка, которую никто не заметил вовремя, просто оставалась в отчёте. Теперь часть таких ошибок физически не даёт отчёту выйти — не потому что мы стали честнее, а потому что для части правил честность больше не требует, чтобы мы каждый раз её вспоминали.
Это тот же принцип, на котором строится сам аудит для вас: не «поверьте нам на слово», а «вот что можно проверить». Разница только в том, что на этот раз проверяли не ваш сайт, а свой собственный процесс.