Zcash Foundation - Atualizações de Engenharia: Sprint 18 (27 de Agosto - 9 de Setembro)
Esse artigo refere-se as últimas atualizações de engenharia da Zcash Foundation para o Sprint 18 (27 de Agosto - 9 de Setembro) envolvendo seus principais desenvolvimentos no ZEBRA, FROST & DevOps.
Durante este sprint, a ZF lançou o Zebra 1.9.0 para ativar com sucesso a NU6 na testnet, junto com um lançamento equivalente do zcashd. A equipe estará monitorando seus nodes da testnet para ficarem atentos a quaisquer possíveis mudanças necessárias antes da ativação da NU6 na mainnet, que está atualmente no caminho certo para acontecer em algum momento durante novembro, no próximo Halving.
Com a ativação da NU6 no caminho certo, a equipe mudou o foco de volta para o trabalho de desligamento do zcashd, e para que isso aconteça, começaram a analisar o conjunto de testes RPC do zcashd para ajudar encontrar inconsistências entre os nodes zcashd & zebrad. Uma migração para esta estrutura de teste para o zebra foi feita, assim como a implementação de dois novos métodos RPC: Generate & Stop para dar suporte a isso.
Os engenheiros continuaram a refinar a arquitetura proposta para uma carteira de substituição do zcashd, participando de uma série de debates focados na funcionalidade de indexação e atualizações na arquitetura propostas como resultado.
Também foram feito correções para um problema com o método RPC sendrawtransaction, relatado por Hahn (yWallet), em que o zebrad estava falhando em adicionar transações a sua mempool ou retornando um erro descrevendo por que as transações não foram adicionadas a mempool.
Atualmente a equipe está retornando uma mensagem de erro específica quando as transações falham na verificação no método RPC senddrawtransaction
O trabalho no FROST durante este sprint incluiu testar a Stack Wallet que implementa o suporte FROST para Bitcoin e coletar feedback de usabilidade do FROST durante uma chamada com a equipe da Stack Wallet. A equipe também trabalhou em um design para gerenciar informações de chave pública de outros participantes (para criptografar e autenticar mensagens) em uma carteira FROST compartilhada.
Também foram feitos progressos em uma ferramenta de linha de comando chamada frost-client, implementando o gerenciamento de contato mencionado anteriormente.
O trabalho de DevOps incluiu migrar as regras de proteção de tags para conjuntos de regras do GitHub antes do desligamento desse recurso pelo mesmo.
Relacionado a isso, a equipe está revisando sua usabilidade do Mergify para ver se ele pode ser substituído pelas próprias filas de mesclagem do GitHub, já que o Mergify não oferece suporte ao uso de conjuntos de regras do GitHub no momento. Caso isso aconteça, isso poderá economizar custos monetários de assinaturas do Mergify.
Para melhorar a saúde geral da testnet e monitorar o zebra, a ZF está analisando a implantação de alguns zebra nodes de longa duração na testnet e melhorando o uso, persistindo estados em chace no disco.
Foi concluído o trabalho para melhorar o cache de dependências Rust da ZF na CI. Isso permitirá a equipe pular algumas reconstruções e uma melhora já foi notada de 36% nos tempos de construção. A equipe também compartilhou suas experiências com a comunidade Rust na esperança de que ajude outras pessoas que enfrentam desafios semelhantes.