← Назад в Нелепотеку

изменение согласовано; ответственность не найдена

Инспекция временного кода

Проверяет код, который пережил авторов, документацию и три попытки заменить его аккуратно.

Учреждение готово принять первое действие.

Ноутбук, зелёная программная ошибка и старая дискета на светлом музейном фоне
временный модуль: введён ненадолго, обслуживается постоянно

структура учреждения

Состав инспекции

Управление временных решений

Регистрирует обходные пути, которые используются дольше системы, для которой их придумали.

Отдел осторожных переименований

Меняет названия переменных только после письменного подтверждения от всех неизвестных потребителей.

Архив первоначальных причин

Ищет, зачем условие было добавлено, и выдаёт наиболее правдоподобную версию вместо утраченной.

Бюро продления временности

Подтверждает, что замена временного модуля требует ещё одного подготовительного периода.

оперативная проверка

Экспертиза подозрительного фрагмента

Выберите улику из репозитория. Инспекция определит допустимую глубину вмешательства.

Улика не выбрана. Код считается понятным до первого открытия файла.

Порядок безопасного изменения

§1

Сначала прочитать историю

Изучить коммиты вокруг строки, не доверяя сообщению «мелкая правка».

§2

Зафиксировать текущее странное поведение

Написать тест на то, что система делает сейчас, даже если никто не заказывал именно это.

§3

Изменить одну вещь

Не совмещать исправление ошибки с переездом каталогов и улучшением названий.

§4

Проверить единственный сервер

Повторить изменение на машине, где локаль, время и библиотека шрифтов отличаются от остальных.

§5

Оставить объяснение

Написать комментарий о причине решения, а не пересказать соседнюю строку другими словами.

Стоимость инженерной уверенности

День небольшого исправления

  1. 09:20

    Ошибка воспроизведена локально только после смены даты и языка системы.

  2. 10:45

    Найдено условие, добавленное без описания восемь лет назад.

  3. 13:10

    Подготовлена правка в две строки и тест в сорок семь строк.

  4. 16:35

    Сборка прошла. На единственном сервере исчезла кнопка печати.

  5. 18:12

    Правка отложена. Добавлен комментарий, почему к этому месту следует вернуться осторожно.

Заключения специалистов

«Удалил одну проверку, которую считал лишней. Узнал о трёх клиентах, двух интеграциях и празднике в другой стране.»
Евгений, инженер сопровождения
«Документации не было, зато имена переменных складывались в тревожный, но последовательный рассказ.»
Лейла, аналитик репозитория
«Мы переписали модуль с нуля и получили ту же ошибку. Теперь она хотя бы покрыта тестом.»
Павел, руководитель замены

Вопросы перед изменением

Почему этот код никто не переписал

Его переписывали дважды. Обе версии обращаются к нему за редкими исключениями.

Можно удалить закомментированный блок

Можно после проверки документа, где он указан как резервный способ расчёта.

Кто автор функции

Система контроля версий указывает на человека, который переносил файл и никогда не видел функцию целиком.

Почему тест проверяет ошибку

Потому что внешний потребитель отличает ответы именно по этой ошибке.

Когда временное решение станет постоянным

Оно уже стало. Постоянное решение пока проходит оценку рисков.

изменение допускается

Сделайте код понятнее, не лишая его привычной странности

Инспекция разрешает одну аккуратную правку при наличии теста, объяснения и рабочего способа всё вернуть.

Оцените заключение инспекции

Повторное нажатие отзывает голос. Текущий уровень инженерной уверенности: +0.

Предложить дополнение к делу

Опишите новую нелепость. Материал зарегистрируют, перечитают и направят в подходящее учреждение.

Поддержать разработку Нелепотеки

СБП · · ВТБ