Почему массовая правка по ключу — ловушка
Когда чекер выдаёт список «значение → канон», кажется, что дальше работа механическая: пройти по ключам и привести всё к справочнику. Мы разобрали ключи поимённо и нашли три причины так не делать.
| Что мешает | Что было бы при слепой правке |
|---|---|
| Один ключ — разные услуги. Пять ключей справочника означали не одно и то же в разных местах | верные значения переписались бы на чужие |
| Общее и частное выглядят одинаково. Утверждение про весь парк и утверждение про его часть отличаются только контекстом карточки | правдивое частное утверждение было бы «исправлено» в неправду |
| Справочник противоречит сам себе. По части позиций в нём лежат оба значения как подтверждённые | выбор одного из двух был бы сделан инструментом, а не человеком, который за это отвечает |
Второй пункт стоил нам отдельного разбора. Сначала решили, что часть страниц трогать не нужно — формально утверждение на них не ложно. Потом пересмотрели: карточка говорила «наш парк» и «все машины наши», то есть про целое, а число стояло от части. А вот соседний случай, где речь действительно шла о подпарке, намеренно не тронули — там число правдиво.
Правь источник, а не вывод
Семьсот страниц с одинаковым дефектом почти никогда не означают семьсот ошибок. У нас они означали одну строку в шаблоне, размноженную рендером.
| Подход | Объём работы | Что будет при следующей сборке |
|---|---|---|
| Править собранные страницы | сотни файлов | дефект вернётся — источник не изменился |
| Править источник и пересобрать | одна строка | дефекта нет и не появится |
Тот же счёт в другом нашем разборе: 6489 находок оказались одним шаблоном — восемь карточек и четыре плитки, повторённые на 358 страницах. Одна правка генератора закрывала около 6400 находок.
Проверка результата — не «стало меньше», а разбор дельты поимённо: у нас ушло 929 находок, появилось 16, и по каждой из шестнадцати проверено, что это не регрессия. Формулировка «в целом лучше» здесь не принимается.
Что делать с тем, что чинить нельзя
Часть расхождений не чинится инструментом в принципе — потому что правильного значения никто не называл. У нас в этот список попали позиции, где справочник противоречит сам себе, и позиции, где неясна единица измерения: цена за человека или за бригаду.
Отдельно отмечаем случаи, где значение попало на страницу не по ошибке формата, а по ошибке смысла — например, внутренняя ставка оказалась в поле, которое видит клиент. Такие правятся первыми и не ждут общей сверки.
Порядок, которым мы теперь пользуемся
- Прогнать чекер и получить список «значение → канон». Не править ничего.
- Проверить ключи: означает ли ключ одно и то же во всех местах, где встречается.
- Отделить общее от частного. Число про целое и число про часть выглядят одинаково и правятся по-разному.
- Найти источник. Если дефект на сотнях страниц — почти наверняка это шаблон или генератор.
- Разобрать дельту поимённо после пересборки: что ушло, что появилось, почему.
- Нерешённое пометить и заблокировать, а не додумать.
Честно про состояние. Правки этого разбора сделаны в исходниках и лежат в основной ветке; выкладка на сайт — отдельный шаг, и на момент публикации мы её не подтверждали. По нашему же правилу это значит, что читатель пока не может проверить «стало» — только «как чинили».