Zcash Foundation - Atualizações de Engenharia - Sprint 19
Esse artigo refere-se as últimas atualizações de engenharia da Zcash Foundation para o Sprint 19 (10 - 23 de Setembro) envolvendo seus principais desenvolvimentos no ZEBRA, FROST & DevOps.
Durante a primeira metade deste sprint, vários engenheiros da ZF compareceram à RustConf em Montreal. O restante da equipe continuou a se concentrar no desligamento do zcashd e, especificamente, na portabilidade da estrutura de testes RPC do zcashd para permitiar a equipe validar o que podem para corresponder à funcionalidade do zcashd quando ela for desligada.
Neste sprint, a ZF terminou especificamente de portar a estrutura e atualizaram a implementação dos métodos stop e getmininginfo para trabalhar com a estrutura de testes RPC.
A ZF também começou a trabalhar em uma série de problemas relatados, incluindo correções no método RPC getrawtransaction para que seu output corresponda ao zcashd garantindo que o Zebra possa oferecer suporte a transações TEX adicionando suporte para transações orphans.
Por fim, foi corrigido um problema em que fazia o zebra travar durante a mineração na testnet devido à ausência de um parent block.
No FROST, o trabalho continuou no fornecimento de uma estrutura para carteiras para integrar o FROST e, em particular, a ferramenta frost-client.
Durante este Sprint, a equipe concluiu a implementação da funcionalidade de gerenciamento de contatos, que será usada para dar suporte à troca de chaves públicas dos participantes para criptografia e autenticação entre os participantes em uma sessão FROST.
Melhorias adicionais na ferramenta frost-client para integrar os workflows do coordenador e do participante também foram implementadas. Trabalhos foram feitos nas adições ao ZIP-312: FROST para Multiassinaturas de Autorização de Gastos para definir como o randomizador deve ser manipulado em um cenário Zcash.
Uma pequena alteração foi feita para tornar o FROST mais fácil de usar em diferentes cenários.
No lado do DevOps, a equipe terminou de refatorar como poderão reutilizar discos de estado em cache para seus testes de integração contínua (CI) e para quaisquer instâncias de implantação contínua (CD) que queiram implantar sempre que atualizarem o branch principal do zebra. Isso simplifica a busca de estados em cache e concentra a responsabilidade em um único Script & Workflow do GitHub.
Este trabalho estabelece as bases para que a ZF melhore a saúde da rede testnet implantando os testnet nodes de longa duração com endereços IP estáticos.
Para avaliar a saúde de seus zebra nodes e identificar possíveis bugs e problemas, a ZF começou a integrar o Sentry em seus testnet nodes e já estão recebendo algum feedback útil que podem usar para tornar o zebra mais robusto.
Também começaram a analisar a adição de uma sonda de verificação de saúde para que possam monitorar suas instâncias testnets de longa duração quando elas estiverem ativas e em execução.
Para garantir que não haja vulnerabilidades nas imagens do Docker zebra, a equipe adicionou recentemente o Docker Scout a sua CI para serem alertados se algum PR adicionar qualquer pacote com vulnerabilidades conhecidas antes de algum novo lançamento.