Hi phroi:
Sorry for the late reply—I was in a remote rural area with poor internet after the Spring Festival due to work.
Let me clarify your questions. First, Haoyang misunderstood you earlier. There are actually two whitelists in the DAO system: one for the voting you mentioned, and another we added during testing to prevent regular users from accidentally accessing it. Haoyang was referring to the latter, which will be removed upon official launch.
Back to your questions:
- Why do voters need a whitelist?
DAO voting is permission-based, not open to everyone. Only users with staked assets in Nervos DAO have voting rights.
The old system was Web2-based, so it didn’t use an explicit whitelist—it checked voting eligibility (staking status) in real-time when users cast votes, which required network access.
In the new DAO system, we moved to on-chain voting for decentralization and verifiability. The voting system runs as a contract on CKB. Contracts obviously can’t access external networks to verify eligibility at voting time. Hence, we need an explicit whitelist in the new system.
For technical details, see the link: ccfdao docs: Vote System and vote contract design ckb-dao-vote/docs/ckb-dao-vote.md at main · CCF-DAO1-1/ckb-dao-vote - Why do we update the whitelist at midnight daily?
The update frequency is adjustable. We set it very short during testing for convenience, but that was with minimal users.
Based on our tests, at scale—even in extreme cases where all stakers vote—whitelist generation could take hours and consume massive resources. To mitigate this, we implemented two measures:
a. Filter for actual voters: Users must log into the DAO system at leatest onece to be added to the whitelist.
b. Reduce refresh frequency: Daily updates strike the right balance. - How can community users verify this?
We currently lack a user-friendly interface (e.g., intuitive UI) for average users to verify these elements. However, every step in our technical design is verifiable—that was a core priority when building the new DAO system.
Moving forward, we’ll work with community members to build independent verification tools separate from the DAO system. ckb-dao-watchdog/dao-v1.0/metaforo_watchdog_cn.py at main · CKBFansDAO/ckb-dao-watchdog That said, some technical background will likely still be required to complete verification.
That covers all the questions I’ve seen so far. If I missed anything, feel free to reply here and I’ll do my best to address the technical aspects.