- Dois problemas foram causados por um bug de carregamento de gás que provocou falhas nos validadores quando transações mal-sucedidas acionaram erros de saldo.
- Um bug separado no estado de aleatoriedade causou a terceira interrupção ao impedir que validadores fechassem corretamente um epoch da rede.
- Sui disse que nenhum fundo de usuário foi afetado, implementou correções e adicionou salvaguardas para melhorar a resiliência da rede.
A Sui Foundation, no domingo, detalhou as causas das três interrupções do mainnet que perturbaram as operações da rede na quinta e na sexta-feira, atribuindo os incidentes a dois bugs distintos introduzidos na atualização de software v1.72. As interrupções ocorreram enquanto validadores trabalhavam para resolver problemas relacionados ao recurso de saldos de endereços novo e a um problema separado de estado de aleatoriedade. Segundo a fundação, nenhum fundo de usuário esteve em risco e nenhuma transação comprometida foi revertida durante a recuperação.
Bug de carregamento de gás desencadeou as duas primeiras interrupções
A primeira interrupção começou por volta das 7h PT na quinta-feira e durou até cerca de 13h30 PT. No entanto, uma segunda interrupção ocorreu na manhã de sexta-feira após os validadores implementarem uma correção provisória.
De acordo com Sui Foundation, ambas as interrupções originaram-se de uma falha envolvendo a cobrança de gás e o recurso recém-introduzido de saldos de endereço. O problema apareceu quando transações concorrendo pelos mesmos fundos acionaram o erro InsufficientFundsForWithdraw.
Embora a transação tenha sido cancelada, etapas subsequentes de processamento de gás tentaram gastar o mesmo saldo novamente. Como resultado, os validadores encontraram um saldo negativo durante o assentamento, causando a falha dos nodes.
Para restaurar as operações rapidamente, a equipe Sui Core propôs uma solução temporária na quinta-feira. No entanto, a equipe reconheceu que um risco conhecido de baixa probabilidade ainda persistia nessa solução temporária.
Consequentemente, a rede enfrentou uma variação do mesmo problema na manhã de sexta-feira, levando à segunda interrupção antes dos validadores implementarem uma correção mais abrangente.
Bug de aleatoriedade causou a terceira interrupção
Após a segunda recuperação, a rede operou normalmente até a próxima mudança de epoch programada para a tarde de sexta-feira. Nesse momento, um bug separado acionou a terceira interrupção.
De acordo com a fundação, validadores reiniciaram a instalação da correção de sexta-feira, mas não atingiram os requisitos de participação para a geração distribuída de chaves. Conforme projetado, o processo desativou a aleatoriedade para a época.
No entanto, um bug latente impediu os validadores de manter esse status entre reinícios. Consequentemente, as transações dependentes de aleatoriedade permaneceram não resolvidas, causando um acúmulo na fila que impediu o encerramento da época.
A interrupção durou de aproximadamente 13:30 PT até 19:20 PT na sexta-feira.
Fundação Descreve Correções e Lições
Após os incidentes, os validadores corrigiram ambos os bugs de cobrança de gás e de estado de aleatoriedade. Além disso, a fundação introduziu um mecanismo que permite aos validadores encerrar forçadamente uma época travada quando necessário.
O relatório também destacou áreas para melhoria, incluindo lógica de cobrança de gás, resiliência ao final do epoch e contenção de falhas. Além disso, Sui Foundation disse que agentes de IA ajudaram engenheiros a diagnosticar os incidentes mais rapidamente, analisando logs de validadores, dados de produção e métricas de rede durante as interrupções.


