A equipe @1shotapi encontrou um modo de falha interessante ao experimentar o $PYUSD de @PayPal para pagamentos x402, o que, em retrospectiva, pode ter sido óbvio. Ao contrário do $USDC, o PYUSD (que é uma implementação @Paxos) não reverte ao chamar 'transferWithAuthorization' com um nonce usado. Portanto, se a lógica do facilitador/validação verificar explicitamente um onchain nonce usado, o facilitador dirá ao servidor que o tx é válido e '/settle' gastará gás processando uma transação que não transfere PYUSD, mas simplesmente emite um evento 'AuthorizationAlreadyUsed', que permitiria que um cliente usasse a API com paywall gratuitamente, a menos que o facilitador esteja inspecionando os eventos emitidos. Isso também apresenta um caso potencial para casos de uso de alta taxa de transferência para esse tipo de implementação, onde um usuário mal-intencionado pode enviar um grande volume de pagamentos x402 com o mesmo nonce para um servidor, todos os quais verificariam mesmo se fizessem uma leitura onchain, e o facilitador acabaria pagando o gás por txs ruins que não transferirão PYUSD e também não serão revertidos antes da inclusão em um bloco. A única maneira de um facilitador se proteger contra isso é manter um registro offchain dos nonces enviados E verificar se um evento de 'Transferência' foi emitido na liquidação final para que as APIs com paywall não sejam contornadas. Estaríamos interessados aqui dos colaboradores do protocolo x402 sobre isso.