Как воспроизвести отказ supply cap Aave v3 в правильных единицах

В эталонной конфигурации Aave v3 лимит предложения указан в целых токенах. Прямое сравнение этого поля с минимальными единицами способно преждевременно сообщить превышение на много порядков.

Переведите лимит до проверки доступного объёма

Получите конфигурацию резерва, decimals и входы расчёта на момент транзакции. Умножьте ненулевой cap на 10 в степени decimals. В эталонной проверке к масштабированному предложению прибавляются начисленные казначейству единицы, затем применяется следующий индекс ликвидности и добавляется новая сумма.

configured supply cap = 1000 whole tokens
underlying decimals = 6
cap in raw units = 1000000000

Если перед внесением учтено 999 900 000 минимальных единиц, вклад 150 000 превысит лимит примера на 50 000. Сумма только пользовательских балансов может пропустить долю, начисленную казначейству.

Сверьте развёрнутую проверку

Нулевой cap в эталонной реализации отключает именно этот предел. Пауза, заморозка и условия актива тоже могут отклонять внесение. Восстановите состояние до транзакции и версию кода за прокси пула. github.com ValidationLogic.sol