Как выбрать лимит газа для повторной доставки сообщения CCIP

Сообщение CCIP не исполнилось в цепочке назначения. До повтора выясните, где закончился газ: внутри callback получателя или во внешней транзакции исполнения.

Разберите сбой в цепочке назначения

Проверьте ID сообщения, состояние исполнения и вызов, на котором произошла ошибка. Для описанного режима ручного исполнения нулевой override сохраняет исходный лимит callback. Ненулевой должен быть не меньше исходного. В примере при исходных 180 000 значение 150 000 недопустимо.

const original = 180000;
for (const override of [0, 150000, 250000])
  console.log(override === 0 ? original : override >= original ? override : "invalid");

Повторите исполнение того же сообщения

При нехватке газа в callback оцените его потребность по текущему состоянию получателя. Если исчерпан общий газ внешней транзакции, корректируйте бюджет этой транзакции. Отказ из-за неизвестного отправителя одним повышением лимита не исправить. После повтора сверяйте состояние по прежнему ID: новая отправка из исходной сети создаст дополнительную операцию.

docs.chain.link CCIP manual execution