Lua has a single numerical type, Lua numbers. There is no distinction between integers and floats. So we always convert Lua numbers into integer replies, removing the decimal part of the number if any.
Acontece que não era um problema de arredondamento no script Lua. O script Lua já recebe valores arredondados.
Além disso, não se trata de um problema de arredondamento de forma alguma. Segundos não arredondados podem ser usados, e ainda assim seria possível receber uma resposta 429 com Retry-After: 0.
Aqui está a correção para o problema principal:
E aqui está a correção para um problema adicional que ocasionalmente pode causar o mesmo erro: