katlog.orgжурнал разработки Демо-каталогДемо
ПР003
Задание для ИИ3 мин чтения

22 исправления в три этапа: как не сломать работающую систему

Пока мы снимали скриншоты для этого журнала, накопился список из 22 недочётов. Отдать его агенту одним заданием было бы самым надёжным способом что-нибудь сломать. Как мы разложили работу.

Каждый скриншот для журнала — это внимательный взгляд на один экран. Почти на каждом нашлась мелочь: неверная вкладка, растянутый ярлык, «3 заявок» вместо «3 заявки». Но были и серьёзные вещи: повторный импорт падал с ошибкой, а треть фонда нельзя было выдать (об этом «Код 02»). Мы не отправляли каждую находку сразу, а собирали их в отдельный файл. К концу съёмки в нём было 22 пункта.

Три этапа вместо одного задания

  1. Самое важное — 6 пунктовПовторный импорт, коды статусов Aleph, фонды, форма новой записи, безопасный режим импорта, сообщение о блокировке входа.
  2. Правильность каталога — 7 пунктовФильтр фондов, языки, редкие издания, тома многотомников, статистика.
  3. Интерфейс — 10 пунктовШапка, кабинеты, ярлык шифра, оформление, страница входа, выбор языка.

Следующий этап уходил агенту только после того, как предыдущий был проверен.

Правила на каждом этапе

  • Резервная копия базы до изменений — и проверка, что из неё действительно всё восстанавливается.
  • Только пункты этапа. Ничего «попутно»; если нужно больше — остановиться и спросить.
  • Изменения структуры базы — только добавляющие: ничего не удалять и не переименовывать.
  • Правовые тексты, cookies и настройки безопасности не трогать.
  • Опасные проверки — только на копии базы.
  • Ничего не публиковать без решения автора.

Быстро или надёжно

На первом этапе агент после каждого пункта проходил все восемь основных сценариев — поиск, карточку, весь путь заказа, удаление и корзину, вход, ISBN, правовые страницы. Это было надёжно, но долго. Со второго этапа мы изменили правило: после пункта проверяется только то, что он затрагивает, а полная проверка — один раз в конце. Безопасность не пострадала, время сократилось заметно.

Что агент поймал сам

При пробном повторном импорте на копии базы появились 958 лишних экземпляров. Агент нашёл причину и исправил её до того, как ошибка добралась до рабочей базы. Ради таких находок и нужны копии. А ещё он не стал подгонять результат под наши ожидания: мы писали «около 20 языков», он честно насчитал 15.

1 275 → 0сомнительных записей при повторном импорте
37 → 15«языков» в фильтре
22 / 22пункта выполнено

Код и данные — разные вещи

Последний урок пришёл при подготовке публикации. Публикация переносит на сайт программу и структуру базы — но не данные, исправленные в разработке. Снятая ложная «бронь», новые коды фондов, нормализованные языки остаются там, где их исправили. Для рабочего каталога это потребовало бы отдельного осторожного шага. На нашем сайте данные тестовые, поэтому мы решили не строить для них отдельный инструмент, а позже просто начать с чистой загрузки каталога.

Шаблон для большого спискаСобирать находки в файл, а не отправлять по одной. Делить на этапы по важности. Перед каждым этапом — резервная копия. Только добавляющие изменения базы. Опасное — на копии. Полная проверка — в конце этапа. И помнить: публикация переносит программу, а не исправленные данные.