Обычный вывод (фактический результат запуска программы) должен продолжаться stdout
, такие вещи, как вы упомянули (например, диагностика, уведомление, предупреждение, ошибка) на stderr
.
Если нет «обычного вывода», я бы сказал, что не имеет значения, какой вы выберете. Вы можете утверждать, что логирование является единственным выходом, поэтому следует перейти к stdout
. Или вы можете утверждать, что это все еще «исключительная информация», которая должна идти к stderr
.