Zcash Z3 updates (formerly Zcashd Deprecation)

January 10th

Hello fellow Zebras! Another week, another Zcashd Deprecation update!

Outreach (@pili @decentralistdan @pacu):

* Status: on track
We are awaiting feedback from Coinbase, HTX, Coinbase and others.

Zebra

Marek from ZF reported in January 9th Arborist Call that they’ve addressed some issues on Zebra Regtest reported by Zingo Labs which will help in Zaino development.

Zaino (ZingoLabs)

  • status: on track

Project Board

Zaino devs continue to work on Zaino. This tutorial from ZecHub shows how to run Zaino and Zebra. We encourage everyone to give it a go and report any issues you come into.

We still are delving into these two regtest environment bumps
Zebrad Regtest findings:

But this doesn’t stop Zingoistas from making progress and they are close to be on-par with lightwalletd functionality soon.

Also, let’s take a moment to play with Zaino and Regtest just ‘for the LuLz”. Help us find gaps in documentation and request features you’d like to have in out testing infrastructure.

PRs needing review:

In-Memory backend wrap up

- status: on track

This has been falling through the cracks a bit, we still need to provide reviews to this PR https://github.com/zcash/librustzcash/pull/1634

“Zallet” (that’s pronounced Zallè, like ballet) formerly Zcash Wallet CLI

  • Status: on track

This is scheduled to be completed by the end of January! This timeline is TIGHT!

tracking work on this repository.

ECC Folks continue to work on the zcash-devtool towards creating the production CLI wallet (Zallet).

Wallet Export format

  • Status: On track,

There has been significant progress on the Survey part of the grant from Dorian from @ZingoLabs.

@BC-Shannon is organizing a call on January 24th. More details here.

Work is already starting. If you want to provide input to the ZeWIF folks. Don’t hesitate! Act now!

Enjoy your weekend!

8 Likes

January 17th

Hello fellow Zebras! Another week, another Zcashd Deprecation update! This last week has been struck by many people within the ecosystem being on the move due to Z|ECC, but there are still updates to report.

Outreach (@pili @decentralistdan @pacu):

* Status: on track
We got feedback from Gate.io, f2pool and we are chatting with coinbase about their infrastructure needs

Zebra

The team is working on a new jsonRPC server. Also looking into Zaino #145 issue.

Zaino (ZingoLabs)

  • status: Milestone 2 off-track :warning:

Project Board

Zaino devs continue to work on Zaino and they are reporting being close to having a replacement for lightwalletd functionality in the next few days.

We still are delving into these two regtest environment bumps, recently Zebra engineers have also jumped into these two issues.

Zebrad Regtest findings:

In-Memory backend wrap up

- status: pending review :warning:

This has been falling through the cracks a bit, we still need to provide reviews to this PR https://github.com/zcash/librustzcash/pull/1634

“Zallet” (that’s pronounced Zallè, like ballet) formerly Zcash Wallet CLI

  • Status: delayed :warning:

ECC has notified a deviation of 2 months from the original schedule.

tracking work on this repository.

ECC Folks continue to work on the zcash-devtool towards creating the production CLI wallet (Zallet). Givent that ECC has prioritized Keystone integration

Wallet Export format

  • Status: Ahead of Schedule

Important event: call on January 24th. More details here.

There has been significant progress on the Survey part of the grant from Dorian from @ZingoLabs.

Work is already starting. If you want to provide input to the ZeWIF folks. Don’t hesitate! Act now!

Enjoy your weekend!

13 Likes

With regards to being off track for our original Zaino timeline, I’d like to high-light 4 things:

  1. Three developers that have been “spinning up” are now contributing to zaino efforts with full onboard scheduled for completion by February 8.
  2. @idky137 has been incredibly productive and all slippage is inspite of their phenomenal efforts
  3. we are on track to complete in Mid-May with over two months remaining for “live test” prior to the optimistic NU7 activation date
  4. Obviously, we won’t get paid until we deliver.
8 Likes

January 24th

Hello fellow Zebras! Another week, another Zcashd Deprecation update! We have important updates to cover today. Not everything is good news. Sometimes there are no good or bad decisions, only trade-offs.

Outreach (pili decentralistdan pacu):

* Status: on track

The outreach is about to change a bit. As we are approaching having alpha infrastructure the communications will shift towards a more “hands-on” approach. How’s that? Currently we were warning about the upcoming Zcashd deprecation and asked some questions to the recipients of the emails and surveys. But on Z|ECC summit, @str4d had a great idea that will help us get concrete feedback from exchanges, miners and API providers. As soon as we have an RPC capable Zallet, we will start shipping extremely alpha, “testing testing 123” infrastructure builds and utilities so that DevOps teams form the various partners we are in contact with can integrate to their testing environment and see what breaks in a “safe-to-try” fashion. For the time being we will still continue nudging and pinging people and we will start to work with @elecriccoinco @emersonian and @zcashfoundation engineering teams to create this testing infrastructure.

Zebra

The team is working on a new jsonRPC server, bug fixes and new unit test suites. @0xarbitrage has already put substantial work on migrating Zcashd python tests into Zebra and there is probably more work to do on that front. Also, Arya is looking into Zaino #145 issue.

FROST full demo with server capabilities is about to be published and a code walkthrough will be scheduled by the first week of February where Conrado and Nathalie will show us around all the goodies they’ve built. After that, Pili decided that the FROST team will start focusing more on Zebra towards NU7.

Zaino (ZingoLabs)

  • status: off-track :warning:

Project Board

@zancas communicated a slippage on milestone completion dates on this post. We previously communicated and started to outline a plan to catch up as new developers join the Zaino efforts.

Zaino devs continue to work on Zaino and they are reporting being close to having a replacement for lightwalletd functionality soon.

We still are delving into these two regtest environment bumps, recently Zebra engineers have also jumped into these two issues.

Zebrad Regtest findings:

In-Memory backend wrap up

  • status: pending review :warning:

This has been falling through the cracks a bit, we still need to provide reviews to this PR https://github.com/zcash/librustzcash/pull/1634

“Zallet” (that’s pronounced Zallè, like ballet) formerly Zcash Wallet CLI

  • Status: delayed :warning:

ECC has notified a deviation of 2 months from the original schedule.

tracking work on this repository.

As @joshs recently communicated, there is a 2 month delay on the optimistic timeline that ZIP Editors had drafted back in October 2024 for a full-node wallet to be implemented.

In January 23rd Arborist Call this was explained in more detail. You can watch the whole section here.

This is how the same Gantt chart looks like factoring in the keystone integration work overhead.

Credits: Str4d - Electric Coin Company

Zallèt will be supporting light-wallet functionality already available on Zashi through Zaino as a first important milestone of the project and then will continue to add RPCs related to full node functionality. As explained in the outreach section there will be early builds of the Z^3 stack (Zebra * Zaino * Zallet) to partners to provide API feedback hands on.

Wallet Export format

  • Status: Ahead of schedule (*)

(*) I consider that this is ahead of schedule because ZExCavator work already started and it was scheduled for later milestones.

First ZeWIF call was held! More details here.

Blockchain Commons’ gordian developers and @ZingoLabs are crushing it. The first ZeWiF call was a blast and a lot of progress was shown. Zcash developers could also add feedback to make the most of this new format that is being born.

Huge shout out to @dorianvp from Zingo Labs who’s carrying out the wallet format survey excellently with spectacular results. He carried out a lot of “not pleasant” scavenging with high levels of motivation and energy.

Dorian joined Zingo Labs at Crecimiento, the PopUp city event held in Buenos Aires. Zingo pushed really hard to make the most out of it, investing time and resources to spread out the Zcash mission and cypherpunk ethos. @Zancas and team remind us the value of engaging with community activities. Onward!

Enjoy your weekend!

13 Likes

I can make an even stronger statement.

The critical work being done both on wallet interchange standardization and the zaino indexer is being led by new contributors to the movement!

It humbling to work with such bright and principled folks, who are building new zcash technologies for the right reasons… because they understand that to live in a future where humans have compassion and dignity, we must build that future.

I am grateful for the privilege of working for that future with these people.

7 Likes

January 31st

Hello fellow Zebras! Just like that the first month of 2025 has gone by. I’m rubber ducking myself to come up with ideas to make this update a bit less transactional. A few days ago I was going through my “followed” accounts on X and I saw “Documenting Zcash”. I sadly noticed that it was not active any more. Does anyone know that zebra? I’d love to meet with that person.

What other things would you like to see in these updates? Quotes from devs? Deep Dives? Insights from the different teams? Leave a comment with your suggestions.

Outreach (@pili @decentralistdan @pacu):

* Status: on track

We are back and nudging, pinging and chasing people to get their feedback. Also we got terrific news from the Zaino and Zallet team. In a matter of a few week we might be able to start working on what I introduced last update: Alpha integration builds of Z3 builds. “Z cube” is something that @zechub came up with on their videos: Zebra x Zaino x Zallet. What do you think of it? I like it, although it is hard to write that on a Keyboard. Maybe Z3?
We updated the public spreadsheet with the methods used by the surveyed entities. And we are continuing to pursue the remaining ones. If you’d like us to ping someone, let us know!

Zebra

Zaino integration continues to uncover features that need a bit of polishing and the Zebra team is responding to those issues. Fortunately only testing features are currently falling behind. There are differences between what developers accustomed to Zcashd expect from Regtest mode and what they actually get on Zebra.

What is regtest?

Well nobody has a definition, that’s the root of the problem. Regtest is a testing mode inherited from the Bitcoin node. It is a way to have a consensus node on a local network with a private state that a developer can drive at its will to reproduce certain situations deterministically and see how the code reacts to them. Regtest is like a “testnet” but without miners and peers. At least that is what it is currently on Zcashd.

Things work differently on Zebra. Not better or worse, just different. The existing issues were mostly caused not by different design concepts, just mere pending items that were not anticipated as important. Zebra regtest is implemented as a configurable testnet and regtest is one of those configurations. Zebra doesn’t connect to any peers while Zcashd actually connects to local networks.The catch is that there are a lot of tests that we could bring over from Zcashd to Zebra that we already know are super userful and that currently they wouldn’t work. So We will have to work this out.

We started a document on HackMD. I can’t Invite more than 3 editors because I’m on the free version :(. Suggestions of other similar tools (that arent google docs) are welcome. Zcash Regtest ZIP definition - HackMD

RPC Tests

Zebra engineers will start porting tests from Zcashd onto Zebra. This is a much needed work in order to have a baseline of both progress and functionality. This was not originally scope but Core Developers agree there’s substantial value in doing this.

Zaino (ZingoLabs)

  • status: off-track :warning:

Project Board

@zancas communicated a slippage on milestone completion dates on this post. We previously communicated and started to outline a plan to catch up as new developers join the Zaino efforts.

Zaino devs continue to work on Zaino and they are reporting being close to having a replacement for lightwalletd, in fact it mostly depends on these two PRs:

The next big thing Zaino devs are working is consuming the “ReadStateService” from Zebra and serving it to its clients. This service provides data of the different chains that Zebra tracks. This will unblock a lot of work in Zallet.

In-Memory backend wrap up

- status: pending review :warning:

This has been falling through the cracks a bit, we still need to provide reviews to this PR https://github.com/zcash/librustzcash/pull/1634

“Zallet” (that’s pronounced Zallè, like ballet) formerly Zcash Wallet CLI

  • Status: delayed :warning: (but rapidly catching up)

ECC has notified a deviation of 2 months from the original schedule.

tracking work on this repository.

Yesterday the ECC team presented incredible progress on Zallè. The wallet can respond to most RPC methods (with errors in the majority of cases) which is a good progress towards creating these testing builds that I mentioned before. Also, there’s a discussion on how to deal with key material in this new full-node wallet. Please check it out here. Zallet team is looking forward to connect to Zaino as soon as Lightwallet functionality is available.

Wallet Export format

  • Status: Ahead of schedule

As we shared last week the first ZeWiF meeting was held. They are putting together a final report on the wallet survey. We asked ourselves if https://github.com/zcash/zcash/issues/6873 could be closed with what we have here https://github.com/zingolabs/zcash-wallet-formats/blob/master/zcashd/README.md and the answer is YES! So we keep crossing out items of the Zcashd deprecation DAG.

Thank you for reading.

Enjoy your weekend!

11 Likes

Fileverse Portal | Notion Alternative | Web3 Collaboration maybe?

2 Likes

February 7th

Hello fellow Zebras! I want to start this update with an amendment to last week’s update. RPC tests port has not been scoped yet by the Zebra team. Although they expressed their interest in doing so given the advantages that were discussed at the Zcashd Deprecation meeting. This work will be scoped and prioritized accordingly by the Zebra team following their engineering processes.

Outreach (@pili @decentralistdan @pacu):

* Status: on track

We are expecting feedback from a couple of exchanges. Thanks to the survey suggestion from @alchemydc we have captured deployment scenarios which will be very useful for what’s to come. (Check the Zallet section for more details()

Zebra

Project Roadmap board
Priority board

In case you’ve missed it, there’s an engineering update from ZF. Specifically on Zcashd Deprecation, Zebra engineers are working on some “score and drop” mechanism for misbehaving peer connections. In terms of RPC work, getrawmempool, getblocktemplate, getpeerinfo and getblockchaininfo are getting some updates and improvements. Getblocktemplate specifically will enable shielded coinbase to orchard UAs, which was something that Zaino folks are requesting for their regtest infrastructure.

Zaino (ZingoLabs)

  • status: off-track :warning:

Project Board

Milestone 2 work is progressing and the team is catching up to the previously announced delay.
The team is close to nail the “Lightwalletd replacement” feature set which is depending on these PRs

Attention to all devs! There are PRs that need review.

In-Memory backend wrap up

- status: pending review :warning:

This has been falling through the cracks a bit, we still need to provide reviews to this PR https://github.com/zcash/librustzcash/pull/1634

“Zallet” (that’s pronounced Zallè, like ballet) formerly Zcash Wallet CLI

  • Status: delayed :warning: (but rapidly catching up)

ECC has notified a deviation of 2 months from the original schedule.

tracking work on this repository.

Zallet added RPC responses (mostly errors) last week. Now is progressing by returning actual results in some of them (this means that Zallet still returns errors for many RPCs that will have to be implemented). Kudos @str4d! This takes us a bit further to one important milestone that is an alpha build that we can send to partners so they test how Zallet integrates into their current stack. We will do so also with the information produced by the outreach where we are asking partners to voice out their preferred software distribution methods. There is also substantial progress on transparent Zcash support by the gap limit implementation that @nuttycom has done that will allow zcashers to recover funds from any wallet of theirs that used transparent ZEC and followed Bitcoin account and address management conventions.

Go Zallet!

Wallet Export format

  • Status: Ahead of schedule

We asked ourselves if https://github.com/zcash/zcash/issues/6873 could be closed with what we have here

I have the pleasure to announce that issue 6873 has been closed. Here’s the Phase 1 completion announcement. Together, we keep crossing out items of the Zcashd deprecation DAG. Congratulations to Blockchain Commons and ZingoLabs for this great milestone.

Shannon, Wolf and Christopher from Blockchain Commons are already working on phase 2 of the grant, as well as @dorianvp from @zingolabs who’s implementing a reference parser which is preliminary work needed for ZeWIF

A brief recap on Phase 2:

  • Interchange specification (BC)
  • Attachment best practices (BC)
  • Review of howto and example implementation (ZingoLabs)

Thank you for reading.

Enjoy your weekend!

10 Likes

February 14th

Hello fellow Zebras! Today is Valentine’s Day for those who celebrate. What a great opportunity to tell the whole world about that special someone in your life, your everything, posting a love note on ZecPages! If it is just a love declaration even better!

Outreach (@pili @decentralistdan @pacu):

* Status: on track

We are currently focusing on Tier-1 contacts only to try to get as much of those as possible.

Zebra

Project Roadmap board
Priority board

Zebra engineers keep rocking it and several things that we announced as in development a few days ago now are “In Review/QA”:

Other things brought up in the last update are Done!

Also ZF engineers are on top of requests form Zaino devs regarding Regtest features they need to accelerate their work. Thank you Pili and team for always being receptive to these requests!

Zaino (ZingoLabs)

  • status: off-track :warning: (but catching up!!)

Project Board

Milestone 2 work is progressing and the team is catching up to the previously announced delay.
The team is close to nail the “Lightwalletd replacement” feature set which is depending on these PRs

Attention to all devs! There are PRs that need review.

Wallet and Block Explorer operators please check:

This Issue is tracking the indices that Zaino devs are identifying as necessary. If anything that you rely on is not here please reach out by commenting on the issue.

In-Memory backend wrap up

- status: pending review :warning:

This has been falling through the cracks a bit, we still need to provide reviews to this PR https://github.com/zcash/librustzcash/pull/1634

“Zallet” (that’s pronounced Zallè, like ballet) formerly Zcash Wallet CLI

  • Status: delayed :warning: (but rapidly catching up)

ECC has notified a deviation of 2 months from the original schedule.

tracking work on this repository.

Last wednesday @nuttycom did an awesome and very necessary Librustzcash crate walkthrough. There is much more than it meets the eye. Substantial work went into preparing this masterpiece of how to show a codebase to others. In the first sections of it you Kris goes over some of the changes that were done to the repository to make Zcash libraries more modular and easier to work with by decoupling dependencies, favoring “dep-free” imports for cases like front-ends needing specific functionalities or WASM cross compilation.

We expect that this material can help encourage devs to contribute eagerly to librustzcash. At the end of the call there are a few calls to action for newcomers.

Wallet Export format

  • Status: Ahead of schedule

New repository appeared!!! Say hello to zmigrate.

https://github.com/BlockchainCommons/zmigrate

Wolf McNally from BC has started working on this framework to create the in-memory representation of the ZeWIF specification. It’s focused on importing from zcashd at the moment.

@BC-Shannon has two important Calls to Action!

TESTING TESTING!

WE NEED YOUR HELP! (I) TESTING

Please take a look at the repo. Try to import wallet data. Report out issues or problems you see to Wolf as Issues. Or, equally feel free to correct them as PRs. This is where you can privately parse your own wallet and see how it does. We need real-world examples/testing of this sort!

Tests with shielded transactions, address books, or other user-provided metadata would be particularly helpful.

WALLET FILES NEEDED

WE NEED YOUR HELP! (II) WALLET FILES

We need robust examples of wallet files (or database dumps) from a variety of wallets showing a variety of activities.

Wolf has wallet.dat files from zcashd, but they are sparse and simplistic, with coinbase transactions and no shielded transactions. If you can help with real-life zcashd wallet.data files that actually have shielded transactions they’d be a big boon.

We also need wallet.dat files (or database dumps or whatever) for other wallets, as we don’t have any of those currently, just the raw documents that @Dorianvp and @BC-Shannon put together.

This is quickly becoming CRITICAL PATH, so anything you can do to help Wolf push forward: testing, advice, comments, and wallet files would be greatly appreciated.

Regtest? What is that?

  • Status: On track

Well isn’t that what everybody is wondering these days? Well not really, but it’s an important question to answer for developers.

At a high level, there’s Mainnet, the network you use everyday. Testnet is a testing version of ZEC, which is called TAZ. (TAZ does not have a trading value. Don’t get excited.)

New features go into Testnet first before going to Mainnet. But what if you need your own local copy of a small piece of the blockchain to test this something you are working on? Well… that’s what regtest is for… or something like that… that’s what we are defining!

Originally Zcashd inherited Regtest from Bitcoin. It’s time to decide how we want it to be from now on since Zebra will be the home of Regtest mode too.

After some differences in behavior expectations between Zcashd and Zabrad Regtest modes we decided that we need to write a ZIP for it so everyone is on the same page on what are the features of Regtest and how it differs from Testnet.

I started a HackMD document that will convert into a draft-ZIP soon. Please leave your comments!

Thank you for reading.

Enjoy your weekend!

12 Likes

Thanks for putting these together pacu, very helpful!

7 Likes

February 21st

Hello fellow Zebras! I want to start this update with a gesture of appreciation for @decentralistdan, @nuttycom, @zancas and @pili and others that covered for me on my public commitments last Thursday. It’s been one of those ugly moments when you have to drop everything you are doing to attend an emergency and my Zcash colleagues were there. As you may notice this is not being published Friday evening as usual and for that, I apologize.

Outreach (@pili @decentralistdan @pacu):

* Status: on track

We are currently focusing on Tier-1 contacts only to try to get as much of those as possible. Special thanks to core developers who groomed some timelines to aid us respond to inquiries from exchanges and mining pools regarding timing of the events towards NU7.

Zebra

Project Roadmap board
Priority board

In case you haven’t seen it, Pili put together another Engineering Update a few days ago. There’s a lot going on at the Zcash Foundation. You may have attended the FROST server demo by Natalie and Conrado. What does this have to do with Zcashd deprecation? Now that the FROST team has developed the FROST server, ZF is pausing further development on FROST for the time being all of its resources are dedicated to Zcashd deprecation and it shows on their board. From a total of 46 agile points of the current sprint, 42 are Zcashd deprecation items. @dodger wrote up a post about a possible path towards NU7 you should check it out.

Zaino (ZingoLabs)

  • status: off-track :warning: (but catching up!!)

Project Board

Milestone 2 work is progressing and the team is catching up to the previously announced delay.
The team is close to wrapping up milestone 2. Currently there are 2 outstanding items

Attention to all devs! There are PRs that need review.

Wallet and Block Explorer operators please check:

This Issue is tracking the indices that Zaino devs are identifying as necessary. If anything that you rely on is not here please reach out by commenting on the issue.

In-Memory backend wrap up

- status: pending review :warning:

This has been falling through the cracks a bit, we still need to provide reviews to this PR https://github.com/zcash/librustzcash/pull/1634

“Zallet” (that’s pronounced Zallè, like ballet) formerly Zcash Wallet CLI

  • Status: delayed :warning: (but rapidly catching up)

ECC has notified a deviation of 2 months from the original schedule.

tracking work on this repository.

As it was announced by @joshs on this weekly update librustzcash has been updated and a new release version of all of its crates has been created.

This is important because it lays an important foundation for the ecosystem. We encourage all developers that maintain their own forks of librustzcash to use this version as a milestone to update them.

In a previous update I mentioned the gap limit work that ECC had been working on as an important milestone for Zallet and also wallets that use zcash_client_backend crates.

> There is also substantial progress on transparent Zcash support by the gap limit implementation that nuttycom has done that will allow zcashers to recover funds from any wallet of theirs that used transparent ZEC and followed Bitcoin account and address management conventions.

This work was cut out of this latest release, long story short, I’ll put it in Nuttycom’s own words: “the gap limit stuff is a large enough change that we thought it should go in a release on its own”.

Wallet Export format

  • Status: Ahead of schedule

One of the pieces of the ZeWIF format is the ZIP documents how the Zcashd wallet.dat format was defined on each released version of Zcashd. @dorianvp has proposed a set of changes that @daira has reviewed and you can see them here.

Dorian is all over the place when it comes to wallet information stored on files and looking to collaborate on how the librustzcash sqlite crates store that information and how it would it fit ZeWIF.

TESTING TESTING!

I forward you a message from Wolf McNally from Blockchain Commons

I’d be happy to test against any drained wallets provided, and would obviously keep them in confidence unless explicit permission to release them publicly were granted. Also, I don’t even have to know the identity of the provider, as that’s immaterial to ensuring compatibility. Obviously in that case there would be no way to identify the submitter and therefore no way for the submitter to grant permission for release, so any anonymously-submitted wallets would have to remain permanently confidential. I’m also fine with pledging to sequester them on separate storage, and destroy all copies once the work is complete.

This is quickly becoming CRITICAL PATH, so anything you can do to help Wolf push forward: testing, advice, comments, and wallet files would be greatly appreciated.

Regtest? What is that?

  • Status: On track

Well isn’t that what everybody is wondering these days? Well not really, but it’s an important question to answer for developers.

I progressed on the HackMD document that will convert into a draft-ZIP in the next hours.

Thank you for reading.

Enjoy your weekend!

11 Likes

February 28th

Hello! Another week, another Zcashd Deprecation update. Although we are all preparing for the Zcon VIrtual of next week things keep moving and we are one week closer to deprecate Zcashd.

Outreach (@pili @pacu):

  • Status: on track

In terms of the optimistic timeline we are only 6 months away from Q4 2025 and we will be introducing changes to our outreach approach.

Zebra

Project Roadmap board

Priority board

The Zebra team is on fire :fire: according to this board, block explorer support on Zebra is almost a few tasks away. This is a great milestone that will let grantees like @emersonian and @cacho start working on their block explorers to move away from Zcashd and also lead the way for the rest of the Ecosystem

Zaino (ZingoLabs)

  • status: off-track :warning: (but catching up!!)

Project Board

Milestone 2 work is progressing and the team is catching up to the previously announced delay.

The team is close to wrapping up milestone 2. Currently there is ONE outstanding item

Attention to all devs! There are PRs that need review.

Zec Rocks adds a Zaino endpoint

@emersonian just announced that he had deployed some Zaino containers for you all to test on. Check his post here

Kudos to The Bug Hound

I wanted to dedicate a paragraph to @Edicksonjga, who is constantly testing out Zingo wallets and bringing up bugs as he finds them. Some days ago, I noticed that he had opened this issue in github about “ghost transactions” disappearing from the history of his Zingo wallet when they were in the mempool. A couple of Zingoistas and myself recalled that there was a Zebra release not long ago so we wondered if there were any servers not running the latest version and asked Edickson to reproduce the bug on both while others went to track the Zebra github repo to see any possible changes. Zingo folks are in the process of researching the possible sources of the problem and Edickson opened this issue on the Zebra repo to start the conversation.

This whole situation tells us two things.

  1. Edickson, you are in fact a fearless hound when it comes to testing. Thanks for reporting this! It’s hard to be the bearer of bad news when it comes to an annoying bug that your team has battled with and it seems to be coming back. Kudos.
  2. We are still very short on testing infrastructure. We need to keep collaborating to create tooling and end-to-end tests.

About 1, I encourage everyone to get in touch with Sheyla and send some cookies to Edickson’s house. And about point number 2, regardless this in fact ends up revealing as a regression from a change upstream or not, we need to be mindful of how we can test our possible regressions across the whole stack and act accordingly.

Wallet and Block Explorer operators please check:

This Issue is tracking the indices that Zaino devs are identifying as necessary. If anything that you rely on is not here please reach out by commenting on the issue.

In-Memory backend wrap up

- status: pending review :warning:

This has been falling through the cracks a bit, we still need to provide reviews to this PR https://github.com/zcash/librustzcash/pull/1634

“Zallet” (that’s pronounced Zallè, like ballet) formerly Zcash Wallet CLI

  • Status: delayed :warning: (but rapidly catching up)

ECC has notified a deviation of 2 months from the original schedule.

tracking work on this repository.

Transparent gap limit work continues. This is part of the work that was left outside the last release train of librustzcash. This work and @sellout’s transparent script work continue towards the goal of supporting the import of seed phrases from transparent addresses which is fundamental for Zcashd wallet deprecation

NU7 constants about to land in librustzcash

This is a milestone of the various timelines you’ve seen on NU7 deployment. It’s a stepping stone and we celebrate it! zcash_protocol: Add constants for the NU7 Network Upgrade

Commitment tree fixes on their way

@aarnott and other wallet devs have reported some users being affected by this issue that @nuttycom has been chasing and has been working on a fix for quite some time. zcash_client_sqlite: Add methods for fixing broken note commitment trees. by nuttycom · Pull Request #1709 · zcash/librustzcash · GitHub

Wallet Export format

  • Status: On-track

@dorian and Wolf from Blockchain Commons started to work in the Milestone two of the grant which is the “WALLET INTERCHANGE SPECIFICATION DESIGN”. But they realized that given the manual nature of the whole process they were having to implement part of the tooling that was planned for milestone three of this grant, so they are making some changes to the grant spec while keeping the delivery dates unaffected. Shannon explains this himself here.
We still need swept wallet.dat files that people can donate to make. Read the call for action below.

TESTING TESTING!

I forward you a message from Wolf McNally from Blockchain Commons

I’d be happy to test against any drained wallets provided, and would obviously keep them in confidence unless explicit permission to release them publicly were granted. Also, I don’t even have to know the identity of the provider, as that’s immaterial to ensuring compatibility. Obviously in that case there would be no way to identify the submitter and therefore no way for the submitter to grant permission for release, so any anonymously-submitted wallets would have to remain permanently confidential. I’m also fine with pledging to sequester them on separate storage, and destroy all copies once the work is complete.

This is quickly becoming CRITICAL PATH, so anything you can do to help Wolf push forward: testing, advice, comments, and wallet files would be greatly appreciated.

Regtest? What is that?

  • Status: In review

As you may have seen in the forums, I created a ZIP draft according to the ZIP process to address this undefinition problem we’ve faced. https://github.com/zcash/zips/pull/986

Thank you for reading.

Enjoy your weekend!

9 Likes

Thanks for the mention, Pacu, and also for the new nickname. :laughing:

Glad to be able to collaborate so that the bugs found are fixed and we keep as stable as possible the functioning of Zcash and all its ecosystem. :sunglasses::+1:

@pacu These updates are great. Are you up for also mentioning whether each project’s CI tests are passing as another high-level view of our ecosystem’s code health?

Perhaps a table showing each project’s CI build status and how many days have passed since their last release/tag.

3 Likes

Thank you! We are preparing something of this sort.

1 Like

March 7th

Hello! This is a special update given that most development teams are participating on ZconVI.

I’ll take this opportunity to share a couple of reflections about ZconVI, how Zcashd Deprecation is going and the steps that we have ahead of us.

A lot of important topics for the future of Zcash were discussed during ZconVI. Staring by Scaling Zcash with @ebfull, a technical roadmap with ZingoLabs, ZF, ECC, QEDIT and Shielded Labs, Proof-of-Stake featuring Vitalik from ETH and Henry De Valence from Penumbra and Crosslink authors (@shielded-nate and @daira) and the future of ZSAs with Constance Beguier from QEDIT.

Let’s face it

None of these things will happen if we don’t deprecate Zcashd.

As I had been anticipating it on this free2z update there is still a list of things that need to happen before NU7 can be activated and it’s not short

  • Deprecate/Disable Zcashd RPCs
  • MVP of full-node CLI (Zallet)
  • Get Zallet talking to Zaino
  • A test version of the Zcash stack that can be shipped to different partners for integration testing purposes and detailed hands-on feedback

And I can add to the list the following critical items:

  • A functional Block Explorer deployment that uses Zaino and Zebra that is a Proof of concept for other block explorers to adopt. Ship infrastructure that 3xlp, blockexplorer.one, trezor and others that run block explorers can deploy.

The optimistic timeline above -which was presented at Z|ECC and published by Josh-, shows that we are around 6 months away from the hypothetical “all things go very well almost ideally” Q4 2025 NU7 activation. We need to stop for a second, check our surroundings and reassess how we move forward. Zcashd is the most important thing, but we can’t ignore that there are HUGE ecosystem governance decisions to make like the funding mechanisms.

The ECC dilemma

As some X/Twitter ANON posted, unless generosity rains from somewhere, like from the market that ECC basically made materially possible by deploying ZkProof in real life, this team will cease to have funds to function.

This is both a huge operational and philosophical problem because, in the way I see it, ECC can’t afford work on a governance mechanism and deprecate Zcashd at the same time as it was stated by it’s CEO during ZconVI, it can barely afford working at their current affairs roughly for another year. As I understood it, this Gordian knot means ECC can’t continue to work without a funding stream and at the same time if it shifts its focus to work on governance mechanisms, it will not be able to work on the highest priority task that the ecosystem is demanding which is deprecating Zcashd. This is mostly why I believe ECC can’t get itself out of this dilemma and the rest of the ecosystem will have to take action somehow.

Things that are on my plate

Outreach

The ecosystem update is drying out. We need artifacts that we can show to the people we contact so they can have actionable, tangible and measurable (to them) results from it. Give or take we know more or less what RPC methods are used by block explorers, exchanges and miners, but we need more information, and that information is sensitive and they would probably not disclose it to us and we should assume they won’t.

Outreach Phase 2 is the second best approach we can take. We will continue to bug business developers with our campaign, yes, but we will shift our approach to send them these working deployment scenarios with alpha software and have them respond “yes, this works for me” or “no, we need this thing other way instead”.

I already met with @joshs from ECC, Jason from Shielded Labs and I’ll be meeting leaders of ZF and Zingo and infrastructure experts like Yasser and @emersonian to start coordinating how “Z cube” (Zebra, Zaino and Zallet) will be deployed and adopted by the ecosystem. This will also need a lot of surgical precision because at this moment, ZEC is not anyones’ top priority operationally speaking. When a DevOps worker from Company A gets a ticket to work on ZEC stuff, they triage it and categorize its urgency based on how important Zcash is to their daily operations. By making our outreach more actionable we can appeal to this DevOps’ interest as well.

Helping Getting Things Done. Cross our t’s, dot our i’s

One of the problems I see in our current state is that we have too many things in flight. We need to start wrapping up tasks. This means to start shipping software that starts tilting the scale towards shutting down our dear Zcashd forever.

The most innocuous deployment of our new stack is block explorer support. We need to prioritize getting that to the finish line. By innocuous I mean that for 99% of its use cases a block explorer that is not 100% fail-proof it’s highly tolerable. It’s the best first use case that we can safely address and start shipping to ecosystem partners to test. Partners can try the new block explorer support infrastructure safely since they can still rely on the current stack (Zcashd + explorer features). Let’s do it!

Zcashd Deprecation Dashboard (ZDD)

I’m working with ZecHub folks to create a dashboard that can provide quick access to progress, blockers and next steps of the Zcashd deprecation efforts at a high level to anyone that wants to know it. This won’t be simple because there’s a lot of unstructured information that I carefully gather personally and pour into these reports.

Now let’s go through the usual updates

Zebra

Project Roadmap board
Priority board

ZF has been mostly engaged with ZconVI which was a great success

Zaino (ZingoLabs)

  • Status: almost back on track!

Project Board

As @zancas has announced here, Milestone 2 is complete!!

In-Memory backend wrap up

- status: pending review :warning:

This has been falling through the cracks a bit, we still need to provide reviews to this PR https://github.com/zcash/librustzcash/pull/1634

“Zallet” (that’s pronounced Zallè, like ballet) formerly Zcash Wallet CLI

  • Status: delayed :warning: (but rapidly catching up)

ECC has notified a deviation of 2 months from the original schedule.

tracking work on this repository.

Transparent gap limit work continues. Also working on wallet RPCs

Wallet Export format

  • Status: On-track

Milestone 1 is completed and the ZingoLabs and Blockchain Commons teams are working on milestones 2 and 3 to be delivered together within the originally proposed timeline.

TESTING TESTING!

I forward you a message from Wolf McNally from Blockchain Commons

I’d be happy to test against any drained wallets provided, and would obviously keep them in confidence unless explicit permission to release them publicly were granted. Also, I don’t even have to know the identity of the provider, as that’s immaterial to ensuring compatibility. Obviously in that case there would be no way to identify the submitter and therefore no way for the submitter to grant permission for release, so any anonymously-submitted wallets would have to remain permanently confidential. I’m also fine with pledging to sequester them on separate storage, and destroy all copies once the work is complete.

This is quickly becoming CRITICAL PATH, so anything you can do to help Wolf push forward: testing, advice, comments, and wallet files would be greatly appreciated.

Regtest? What is that?

  • Status: In review

As you may have seen in the forums, I created a ZIP draft according to the ZIP process to address this undefinition problem we’ve faced. https://github.com/zcash/zips/pull/986

Things you shouldn’t miss from ZconVI

As you may know I was honored to co-host the ZconVI Recap event. For that I watched all the sessions live. It was exhausting because the amount of information, FACTs and HARD TRUTH enunciated in those talks felt like drinking directly from the fire hose.

The state of ZF was the traditional inaugural session. @dodger announced he will step down from his ED role and Alex Bornstein will be stepping in as interim ED. As I’ve said personally in private and publicly, the “one more thing” announcement took me by surprise and felt like a sour note for a conference that was just starting. Dodger has been involved in Zcash since its inception. His presence in this (now) ecosystem predates most of us first as a member of the “Zerocoin Electric Coin Company” and then as ED of Zcash Foundation. Regardless of whether one would agree with his takes or not, I think that Dodger always conducted himself with an intellectual honesty and integrity defending his ideas and staying true to his beliefs even if that would put him in a sour position from a “public relations” point of view. That’s something that I have high respect for and I hope that his departure from ZF doesn’t imply losing his points of view, thoughts, ideas and counter-argumenting stakes that we have been accustomed to. Don’t be a stranger Dodger!

The Zcash Foundation will soon become the maintainer of the Zcash consensus software. Bold text intended. This poses new challenges operationally speaking as the Zebra team will be receiving the majority of consensus changing code changes for review and approval.

Legally speaking, as announced by ZF former ED, ZF holds the trademark of Zcash and in the case of hard forks, it can legally claim which of the forks can claim the Zcash brand (within the US bound entities). Josh’s post Building Consensus. ECC Update briefly touches on this topic as well. This a seemingly small change but yet a huge one. Brutally speaking, few people would be “crazy” enough to fork a C++ 2015 fork of bitcoin-core with ZkProof capabilities and maintain their own fork. That dynamic will be completely different for the case of a modern, well-organized, mostly-tech-debt-free codebase like Zebra. It can be the case that human disagreements will materialize in code which is something that did not happen often (they did happen when Ycash, ARRR, Zcoin and other Zcash forks were created). Regardless of whether ZF can trademark-slash US-based entities into calling “Zcash” their fork, PoW consensus clearly dictates who actually is the winning hard-fork. Here you can find a quick primer about this dynamic in general (not specific to Zcash PoW)

The Electric Coin Company talked about their point of view of the ecosystem and the state of the company itself.

Zaki Manian, suggested a different way for Zcash development teams to approach the tasks at hand. Nuttycom presented the zcash-devtool and gave a great walkthrough. Bridges and DEXs are closer than ever with redbridge (@mrkit2u) and Maya (Aaluxx Myth). A post-quantum ZEC lecture by Daira-Emma. A panel about how to expand Zcash use cases with various ecosystem partners, and a demo of the first Zcash web wallet . Hanh explained Coin Holder voting 2.0 and Zancas warned us about using tools that serve other masters and presented a new product from Zingo Labs. A great decentralization panel with great takes from @aarnott, Matthew Green and Andrew Miller. And finally an AMA with @ZCG.

I suggest watching all the community talks! But more specially the Zcash Nigeria one.

Thank you for reading.

Onward!

Edit: thanks to Zancas for proofreading of this post. :pray:
Edit 2: clarified the source of the timeline that is being feature on this post. Thanks Daira-Emma

10 Likes

The timeline diagram in your post is not updated from the one published by the ZIP Editors in October. No updated diagram has yet been published.

Thank for bringing this up. I just edited the source of the timeline and how it’s referenced

March 14th

Hello! This is an update that will shape future updates. Last week I told you I was working with people from ZecHub to create a Zcashd Deprecation Dashboard. And we are doing so. I know that many people love to read these detailed updates in the forums to get a grasp on what’s going on around Zcashd deprecation and I appreciate every single one of you. I love that you enjoy reading them as much as I enjoy writing them. It’s a lot of effort to both write and read.

Although, we also need to have abbreviated sources that we can consult and use as quick reference to others. That’s why I resumed efforts on a project that I had started as a side-quest last year: ZecDev.

(re) Introducing ZecDev

ZecDev is powered by a Nextra Blog and hosted as a static website on GitHub and continuously deployed with GitHub Actions on every update. This means that everyone, yes! I really mean ALL OF YOU can contribute to make ZecDev more informative, clear and useful.

I invite you to access the quote on quote “dashboard” (in development) https://zecdev.github.io/zcash-z3/dashboard

The dashboard will also have more projects and information like NU7 info, NSM, ZSAs and probably many other things more that come up from your feedback.

Help me create the best ZecDev Docs blog we can have.

Zcashd deprecation is now called Z3 (Zebra x Zaino x Zallet)

“Zee Three” or “Zee to the Three” is an original idea from Zancas (ZingoLabs) that you can read more about here

Thank you for reading.

Onward!

16 Likes

Nice work. I very much appreciate the summaries that you write. I recognize (via my reading) the value the writing process brings.

3 Likes