Мессенджер показывает «Не отправлено» на файле — баг или нет?
В мессенджере пользователь открывает чат, отправляет файл и видит сообщение «Не отправлено...». Нужно решить, дефект ли это для заведения.
Действие: открыть чат -> прикрепить файл -> отправить
Наблюдается: «Не отправлено...»
Неизвестно: состояние сети, размер/тип файла, статус сервера, валидность сессии,
показана ли причина, предложен ли повтор
Изложите, при каких условиях это не баг, а когда это баг. Определите причину.
Это не баг, если отказ — корректная обработка реального условия — нет сети, файл слишком большой или неподдерживаемого типа, сервер недоступен, истёкшая сессия — и пользователю ясно сказано почему и он может повторить. Это баг, если отказ при валидных условиях, без причины, без повтора или сообщение неверное либо вводит в заблуждение. Проверка — ожидаемое против фактического плюс корректная деградация.
- ✗Заводить любое сообщение об ошибке как баг без проверки условия
- ✗Игнорировать, показаны ли причина и повтор
- ✗Пропускать суждение ожидаемое против фактического
- →Что превратит корректный отказ в баг для заведения?
- →Почему ясная причина плюс повтор — граница между багом и не-багом здесь?
Ловушка — заводить дефект на каждую видимую ошибку. Решает не текст на экране, а условие под ним и то, как приложение о нём сообщает.
НЕ баг -> реальный отказ, ясная причина, есть повтор:
нет сети / офлайн
файл слишком большой или неподдерживаемого типа
сервер недоступен / 5xx
истёкшая сессия
БАГ -> отказ при валидных условиях
причина не показана
повтор не предложен
сообщение неверное или вводит в заблуждение
Метод: воспроизводите, контролируя каждую переменную (включите и выключите сеть, меняйте размер и тип файла, проверьте статус сервера, обновите сессию). Если все условия валидны, а отправка всё равно падает — или сообщение неверное, отсутствует, или не даёт пути к восстановлению — это баг. Корректная деградация (сказать пользователю почему и дать повторить) и есть разделительная линия.