Building Consensus. ECC Update

Hi Zeeps,

We just finished up ZconVI, hosted by the Zcash Foundation. What a great week! If you missed the presentations, you can catch them all here. By my count, people from seventeen different organizations and over a dozen independent community members from all over the world presented or participated in panel discussions on all sorts of topics. Like the Zcash shielded pool, our community is alive and growing.

In my presentation on the state of ECC, I mentioned that ECC will eventually fork the zebrad (the new consensus node developed by the Zcash Foundation) repo and manage our software version. I didn’t have time to delve deeply into the implications then, so I’ll share more now.

In my conversations and observations, it’s clear that many people are confused about the current state of Zcash governance, specifically the difference between protocol and block reward-based funding governance.

Moving from zcashd to zebrad is going to allow us to build more, faster. And, forking the repo is part of Zcash’s protocol governance. It’s positive, not contentious.

Last year, we moved away from a 2-of-2 multisig protocol governance model that was enforceable by a legal agreement under US law and trademark protections. While we exited legal enforcement, we are still effectively in a 2-of-2 multisig governance model. Josh Cincinnati, former executive director of ZF, presented the legacy governance model at Zcon1 in 2019. If this topic interests you, I highly recommend watching it. It’s a good primer.

At this time, the ZF controls who can make changes to zebrad. The ECC controls what goes into zcashd. To avoid a chain split, the two implement the same consensus rules. How we determine what goes into the consensus rules varies between the two organizations, but we must agree on what we codify into the software. If we don’t, the chain will fork, and node operators must decide which software to run.

As one of the core developers, ECC still intends to play this role in the community. It’s essential for decentralization. I also believe that Shielded Labs, or any other core contributor, should manage their version of the software, and we should work together to get agreement on any consensus changes. Adding another organization with their own version of the repo would move us beyond the current 2 of 2 model. Each organization maintaining a repo must decide what to codify in the consensus rules and work together so to ensure we all agree.

ECC will continue to use user and community feedback, polling, and possibly grant-specific direction to determine what to work on, and polling will be used in collaboration with others when necessary for protocol consensus changes. We will work with the ZF and Shielded Labs to assess community sentiment and merge changes appropriately.

The decision about how the current lockbox and any future block reward-based funding streams are allocated differs from protocol governance. Last week, I spoke with leaders of the core contributors, @Alex_ZF (the newly appointed interim ED at ZF) and @aquietinvestor (the ED of Shielded Labs), about meeting to discuss ideas on possible paths forward, how best to gauge Zcash community sentiment, and establishing a plan for the next steps. We’re going to start on that this coming week, and we’ll share more with you.

I believe we’re entering a new era for Zcash and our community, one marked by collective resolve, collaboration, and execution. I’ve never been so full of hope and optimism! For all of you Zcash thinkers, builders, researchers, educators, and evangelists - thank you. I’m continually in awe of you all.

Here’s our contributions for the week:

Zashi

Zashi 1.4 is live!

Check out the ZconVI presentation on the past and future Zashi!

Zashi Design

  • Multiple iterations of the Zashi Vault mockups
  • Progressing on Shielding, Syncing Progress and Balances redesign
  • Supporting engineering, product and marketing with ad hoc design requests

Q&A and Dev Support

  • Tested 1.4 release candidate builds (iOS, Android, FOSS)
  • Cooperated with ZF on ZCONVI organization and preparation
  • Taking care of user support issues and Discord
  • Supporting Marketing with announcements and socials management

Zashi iOS

Releases:

  • Finished metadata encryption/decryption for bookmarking, annotations and read flags
  • Tested 1.4 release candidate, addressed comments in all PRs and fixed discovered bugs
  • :rocket:Released Zashi 1.4 to production!
  • :rocket:Released Zcash SDK version 2.2.9

Continued Home Screen redesign - implementing navigation changes:

  • Implemented new bottom sheet with access to integrations
  • Rewired the Receive menu to the new navigation and tested all flows

WIP: Scan & Send menu - too many changes and implications need to be addressed

Analytics Update:

  • Unique Installs: 6.79k
  • Total Downloads: 8.09k
  • AppStore Rating: 4.9*

Zashi Android

Releases:

  • :rocket:Released Zashi version 1.4 to Google Play, GitHub Releases, and F-Droid
  • :rocket:Released Zcash SDK version 2.2.8

Zashi:

  • Completed a research spike for the seed phrase local and cloud backup
  • Fixed an issue with the Export Tax File feature on the FOSS version
  • Implemented Home Screen navigation
  • Implemented new bottom sheet with access to integrations

WIP:

  • SDK and Zashi dependency updates
  • Home Screen has been partially redesigned (waiting for final design details)
  • Working on general tech debt

Analytics Update:

  • Total Install Base: 3.72k
  • Total Installs (incl. Open Beta): 15.7k
  • PlayStore Rating: 4.478*

Zcash Core

  • The team were either on ZCon panels or gave talks (or both).
  • Transparent-only wallet recovery functionality was merged to librustzcash and is now ready for testing in internal Zashi builds.
  • Zallet has been updated to rely on the latest librustzcash crate releases.
  • A fee calculation bug that could cause a slightly-larger-than-strictly-necessary fee to be required when attempting to empty a wallet of funds has been fixed.
  • zcash-light-client-ffi has been updated to build with the latest Rust release.
  • A number of minor improvements have been made to zcash-devtool, including new functionality for address rotation.
  • The core team provided support for the latest Zashi releases, including work to ensure that the new local metadata encryption feature is cryptographically secure.
  • PCZT support has been updated to eliminate the need for the Sapling proving parameters to be provided in the case that no Sapling spends or outputs are to be included in the resulting transaction.
  • In-progress: Zallet support for the z_getaddressforaccount and listaddresses RPC methods.

That’s all for this week.

Building consensus,

Onward.

21 Likes

All this is encouraging, thank you for sharing.

If you had to take this vote today @joshs, what would you do?

ZEC holders shall be set to control the dev fund, in a method known as on-chain governance:
- Yea
- Nay

That question is far too vague. I can’t speak for @joshs, but personally I wouldn’t endorse unqualified coin-holder control over the dev fund; the bounds of the authority granted have to be absolutely clear.

2 Likes

Did you take the time to think that maybe it is not? That maybe it is simple on purpose, leaving the implementation details open?

I believe that coin holders should determine if and how dev funds are distributed.

The implementation details matter a great deal: delegation (voting, small grant funding), participation thresholds, the amount of time the coins have been held or lockups, etc.

3 Likes

We’ll make sure to maintain a fork as well.

A new dawn is upon us.

Looking forward to advancing Zcash with you, Shielded Labs and anyone displaying due respect to ZEC holders; we don’t have the easiest job in the world.

ZF, you wake up anytime.

Great update.
Tariff impacts overall.
Looking at the balance sheet ecc is pretty exposed to a down turn in the markets. I think having zcap vote on the lockbox proposal is step one in unlocking some potential funding.

Side note: 2024 DuckDuckGo Charitable Donations: $1.1M to support digital rights, online privacy, and a better Internet ecosystem