Кто-то отправил отчет об ошибке в ваш репозиторий. Вы исправляете ошибку. Вы закрываете отчет об ошибке. Стоп. Это неправильно. Вы не должны закрывать его. Вместо этого вам следует попросить автора просмотреть вашу правку. Затем, возможно, они закроют тикет. Если они этого не сделают, вы вносите еще одну правку, пока они этого не сделают.
Согласно Joel Spolsky, «единственный человек, который может закрыть ошибку, это тот, кто ее изначально открыл». Но почему? Почему вы не можете закрыть ее, когда очевидно, что ошибка исправлена? Есть по крайней мере три причины.
Во-первых, это оскорбительно и демотивирует. Зачем я сообщаю об ошибке или предлагаю функцию? Потому что я не доволен вашим кодом в его текущем состоянии. Что-то сломано или не работает ожидаемым образом. Я хочу, чтобы вы исправили это, чтобы я был счастлив. Я хочу, чтобы вы подтвердили со мной, сделала ли вас счастливым ваша правка. Если вы не спрашиваете и просто закрываете тикет, я чувствую, что меня игнорируют. Зачем мне беспокоиться о том, чтобы сообщить о другой ошибке или запросе функции?
Во-вторых, это угроза качества. Качество всегда является продуктом конфликта. Самый продуктивный конфликт - это тот, который происходит между программистами и тестировщиками. Тестировщики пытаются доказать, что программное обеспечение плохое, отправляя отчеты об ошибках. Программисты стараются доказать, что программное обеспечение хорошее, покрывая его тестами. Если вы закрываете без подтверждения от автора, вы не даете им шанс поспорить с вами. Конечно, они могут пожать плечами и снова открыть тикет. Однако не все сделают это, пытаясь избежать непочтительности или просто не имея достаточных прав. В конце концов, без формального приема - нет качества.
В-третьих, это приводит к дублированию тикетов. Большинство авторов ошибок не будут спорить, когда вы закроете их тикеты, не спросив их разрешения. Вместо этого они будут открывать новые тикеты с точно таким же или похожим описанием. Самые дисциплинированные будут ссылаться на оригинальный тикет. Другие будут заполнять бэклог дубликатами, что делает его запутанным.
Есть несколько исключений, однако. Если билет очевидно дублируется, вы закрываете его сразу же. Нет необходимости запрашивать разрешение у его автора. Если это вопрос - а не отчет об ошибке - вы закрываете его с ответом. Кроме того, если вы не планируете исправлять его, прикрепите к нему значок “не будет исправлено” и закройте.
Translated by ChatGPT gpt-3.5-turbo/42 on 2025-04-25 at 07:10