Если на стороне диалога есть некая проблема, т.е. будет ответ от Алисы "Диалог не отвечает", то счетчик message_id не увеличивается.
Пример:
- запускаем навык, получаем "message_id": 0
- провоцируем проблему на стороне навыка
- отправляем навыку команду и получаем законный ответ Алисы "Диалог не отвечает"
- убираем проблему на стороне навыка
- отправляем навыку команду получаем "message_id": 1
Мне кажется, что в описанной выше ситуации message_id должен быть равен двум, а не единице. Ведь по факту со стороны диалогов в сторону навыка было отправлено 3 запроса к диалогу, а не 2 как говорит счетчик.
Если бы счетчик увеличивался и в случае ошибки, то так можно было бы вылавливать проблемы с "провалами" в ответах навыка на стороне навыка.
А при текущей реализации по логам навыка будет всё хорошо - сколько запросов получил столько и ответил. Ну а что там по факту у юзера было уже не скажешь. Может навык через раз отвечал. Никакой статистики по работе навыка не предоставляется и соответственно разработчик навыка может и не знать о проблеме. А если бы счетчик увеличивался, то подобные ситуации можно было бы отслеживать на стороне навыка и запускать процесс траблшута или обращению в тех поддержку.