Hi @Shawn.
Is it Zingo Specific?
TL;DR
No.
The work described in the grant is not Zingo specific. The RPCs that need to be implemented are necessary for a fully functional zcashd
replacement. The intention is that they would be implemented in a way that allows anyone to easily include them in their Rust project.
For example we anticipate that zebrad
would use these implementations, by adding a dependency on a zingo-indexer-grpc
crate.
Zingo-Indexer itself is a generally useful tool, as it will replace lightwalletd
.
If this is granted could it remove all blockers from Zcashd deprecation?
TL;DR
No.
In my opinion, the actual work necessary to deprecate zcashd
is not fully specified.
There’s a snapshot of roughly what needs to be done in this zcashd deprecation graph, but as many of the issue names clearly indicate some investigation and design work remains.
The work in this grant proposal contributes to this graph via issue #1395, by implementing some of the listed necessary services.
Taking a slightly broader perspective Zingo Lab Cyan intends to refine the definition of, and complete the implementation of, much of the indexer service in the course of implementing the full functionality necessary to replace lightwalletd
. Defining and implementing the indexer service is necessary for zcashd
deprecation.
Is there a list of tools that need to be replaced?
I don’t have a complete answer to that question, see above links for what I am aware of.
I do know that these services need to be implemented in Rust to deprecate zcashd
this is work we need to do anyway to offer the ecosystem a Rust alternative to lightwalletd
. Our proposal, if funded, would mean that these gRPCs are implemented a single time and used throughout the ecosystem. It would also be a step towards distributing responsibility for this critical community resource.
The time and scope is a key feature.
If this work is funded, it will provide useful insight into the rate Zingo Lab Cyan
is contributing to Zcashd Deprecation, and to the overall rate at which deprecation is happening. This is an intentional feature of the small-fast-concrete structure of the grant. If we can get this work done in less than 6 weeks, that will provide useful information… if we can’t… that will provide other useful (and cheaper) information.
Our intention is to follow this work with more contributions to the effort (like the work we contributed to zebrad regtest mode) hopefully calibrated to offer even more precise timing information.