ZF Engineering update: 2024 Sprint 14 (July 2nd - July 15th)

Hi everyone,

This is the Zcash Foundation’s Engineering update for Sprint 14 (July 2nd - July 15th.)

During the first half of the sprint, the majority of the Zebra team was on vacation. Regardless, we made some progress on ensuring that Zebra can act as a replacement for zcashd, this time with a focus on the indexer piece of the new architecture for a replacement for the zcashd built-in wallet. To that effect, we worked on the infrastructure needed to notify clients of changes to Zebra’s best chain tip or mempool.

We also started looking into what it would take for Zebra to work with a zcash block explorer, experimenting with running the Zcash Block Explorer locally to test our work. We have now forked Nighthawk’s Zcash block explorer to the Zcash Foundation’s GitHub repo and have updated the README with instructions for running it locally. We also started working on updating some of our RPC responses to be compatible with zcashd responses and ensure they will work with Nighthawk’s Zcash block explorer.

Finally, we tied up some loose ends on the work to have a standalone zebra-scanner, by moving the integration tests related to the scanner out of zebrad and updating the Zebra documentation on how to use the new zebra-scan binary with zebrad.

The FROST team started Sprint 14 with the fantastic news that the FROST IRFT Informational RFC was published as RFC 9591. As such, we took the opportunity to update our documentation of the FROST reference implementation to point to this final version. We also worked on some other updates to the FROST documentation to update the instructions for running the demo with the new method to select ciphersuites and improve the DKG documentation after some user feedback. Thank you @pacu!

Work on the frost server continued with an implementation of user registration and authentication for the frost-server as well as design work to define a new architecture for the frost-server which will make it easier to transition to a P2P architecture for FROST, without the need for a centralized FROST server, at some point in the future. We also introduced another small breaking change ahead of the FROST 2.0.0 stable release, which makes it easier to handle errors generically.

On the devops side we created a new dev project on GCP to test deployments before deploying to production and finished the monitoring solution for ZFs production services, including the DNS seeders and website. We also started experimenting with documenting some of our decisions in Architectural Decision Records (ADR), starting with the rationale behind the choice of monitoring solution for ZFs production services.

Thank you for reading!

13 Likes

Zcash Block Explorer running locally with zcashd is working :heart_eyes: :zebra:

5 Likes