Eu estava pensando sobre o que acontece quando uma transação chega ao Dusk.

No começo, parece que existe apenas uma pergunta:

**“A rede deve aceitar isso?”**

Mas olhando com mais atenção, na verdade existem duas perguntas diferentes.

Primeiro, a transação segue as regras do protocolo?

Então, assumindo que sim, os participantes concordam sobre o estado que resulta dela?

Essa distinção é fácil de ignorar porque, do lado de fora, as duas etapas levam ao mesmo resultado: um estado aceito.

Mas, arquiteturalmente, são trabalhos diferentes.

Se algo der errado, separá-las facilita perguntar o que realmente falhou. A transação era inválida? Ou era válida, mas os participantes discordaram sobre o estado resultante?

Acho que essa separação é uma escolha de design forte.

Mas ela também cria uma nova pergunta.

Cada limite entre responsabilidades é outra transferência. E cada transferência precisa se comportar corretamente quando algo inesperado acontece.

Então eu continuo voltando a isso:

**Separar validade de consenso torna o Dusk mais fácil de raciocinar sob falhas, ou cada limite adicional cria outro lugar onde o sistema pode quebrar?**

#Dusk @Dusk $DUSK
Easier to isolate failures
0%
Clearer system boundaries
0%
More coordination risks
0%
Both equally
0%
0 Votos • Votação encerrada