@Dusk_Foundation Я смотрел транзакцию Phoenix, где лимит газа был с запасом выше того, что реально потребовалось для выполнения, и интересным было не столько само вознаграждение. Интересно было то, что случилось с DUSK, который так и не был израсходован.

Сначала я воспринимал это как обычный оставшийся газ. Ничего особенного. Потом я задумался о пути возврата. Phoenix всё равно должна доказать, что транзакция могла позволить себе максимальную стоимость выполнения: дать ВМ потребить ровно то, что ей нужно, а затем вернуть оставшееся значение законному владельцу. Вот эта последняя часть и делает дизайн менее тривиальным.

Возврат — это не просто «отправить разницу обратно». Арифметика должна оставаться согласованной, оставшееся значение не может превышать то, что было обоснованно зарезервировано, а сам адрес назначения возврата должен быть защищён. Изменения AEGIS в Dusk сделали это понятнее, сильнее связав между собой лимит газа, цену газа, максимальную комиссию и скрытный адрес для возврата.

Странность в том, что небольшая ошибка в учёте здесь вовсе не бывает «маленькой». Она может превратиться в проблему сохранения стоимости (value-conservation), в проблему владения (ownership) или даже в проблему выполнения (execution).

В основном я наблюдаю, что происходит по мере того, как транзакции Phoenix становятся сложнее. Простые переводы — это одно. Выполнение с упором на контракты будет лучшей проверкой того, останется ли эта модель возврата предсказуемой под давлением.

#dusk
$DUSK
$ACE
$ROBO